/* Gencler Totem Tabela v1.0.20 - Corporate headings and FAQ refinement.
 * Scopes: inner-page heading/content + homepage FAQ. No content is rewritten.
 */

/* Inner-page hero / breadcrumbs. Preserve the sole semantic H1 and SEO text. */
.pt-inner-hero {
  background:linear-gradient(112deg,#0b1b2d 0%,#142b45 60%,#1c3752 100%);
  border-bottom:1px solid #243a53;
}
.pt-inner-hero::before {
  width:37%;height:145%;right:-5%;top:-25%;transform:skewX(-24deg);
  background:linear-gradient(120deg,transparent 12%,#ffffff0b 50%,#ffffff02 89%);
  border-left:1px solid #ffffff18;
}
.pt-inner-hero::after {height:3px;background:linear-gradient(90deg,var(--red) 0%,var(--red) 70px,#ffffff24 70px,#ffffff00 75%)}
.pt-inner-hero-layout {grid-template-columns:minmax(0,1fr) 190px;gap:30px;min-height:242px;padding-top:31px;padding-bottom:37px}
.pt-inner-hero-copy {padding-left:25px;border-left:3px solid #ed2433}
.pt-inner-hero .pt-breadcrumbs {margin:0 0 23px}
.pt-inner-hero .pt-breadcrumbs ol {font-size:12px;line-height:1.5;color:#b7c8d8;gap:8px}
.pt-inner-hero .pt-breadcrumbs li+li::before {content:'›';font-size:17px;font-weight:400;color:#7996b3;margin-right:8px}
.pt-inner-hero .pt-breadcrumbs a {color:#d3e0ea}
.pt-inner-hero .pt-breadcrumbs li[aria-current] {color:#fff;font-weight:650}
.pt-inner-hero .pt-inner-kicker {color:#c4d7e8;font-size:11px;font-weight:750;letter-spacing:1.75px;gap:12px}
.pt-inner-hero .pt-inner-kicker::after {height:1px;width:45px;background:#c5d5e25c}
.pt-inner-hero h1 {max-width:970px;font-size:clamp(30px,3.2vw,43px);font-weight:800;line-height:1.17;letter-spacing:-.9px;margin:11px 0 0;text-wrap:balance;color:#fff}
.pt-inner-hero p {max-width:720px;color:#d3e0ec;font-size:14px;line-height:1.7;margin-top:13px}
.pt-inner-hero-mark {gap:10px;height:143px;opacity:.48;transform:skew(-8deg);filter:drop-shadow(0 8px 20px #0003)}
.pt-inner-hero-mark span {width:43px;border-color:#c0d7eb3b;background:linear-gradient(180deg,#7594b763,transparent);box-shadow:inset 3px 0 #ffffff24;border-radius:6px 6px 0 0}
.pt-inner-hero-mark span:nth-child(1) {height:96px}
.pt-inner-hero-mark span:nth-child(2) {height:143px;background:linear-gradient(180deg,#9cb8cf8c,transparent)}
.pt-inner-hero-mark span:nth-child(3) {height:115px}

/* Corporate typographic hierarchy within WordPress inner-page content. */
.pt-internal .pt-page-article .pt-editor-content :is(h2,h3,h4) {text-wrap:pretty;overflow-wrap:break-word}
.pt-internal .pt-page-article .pt-editor-content h2:not(.pt-faq-heading) {
  position:relative;display:flow-root;clear:both;
  padding:14px 18px 15px 23px;margin:1.8em 0 .9em;
  font-size:clamp(22px,2vw,28px);line-height:1.31;letter-spacing:-.65px;font-weight:780;
  color:#10253b;background:linear-gradient(90deg,#f3f6f9 0%,#fff 100%);
  border-left:4px solid var(--red);border-radius:0 10px 10px 0;
}
.pt-internal .pt-page-article .pt-editor-content h3:not(.pt-faq-question):not(.pt-faq-heading) {
  position:relative;padding-left:18px;margin:1.65em 0 .7em;
  color:#19334c;font-size:clamp(18px,1.7vw,21px);line-height:1.35;letter-spacing:-.25px;font-weight:750;
}
.pt-internal .pt-page-article .pt-editor-content h3:not(.pt-faq-question):not(.pt-faq-heading)::before {
  content:"";position:absolute;top:.5em;left:0;width:7px;height:7px;border:2px solid var(--red);border-radius:2px;
}
.pt-internal .pt-page-article .pt-editor-content h4 {color:#244059;font-weight:750}
.pt-internal .pt-page-article .pt-editor-content h2 a,
.pt-internal .pt-page-article .pt-editor-content h3 a {color:inherit;text-decoration:none}
.pt-internal .pt-page-article .pt-editor-content :is(h2,h3) a:hover {text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:4px}

/* FAQ section heading: class is added only to recognized FAQ headings, text intact. */
.pt-internal .pt-editor-content .pt-faq-heading {
  position:relative;display:block;clear:both;
  border:0;border-bottom:1px solid #dbe5ee;border-radius:0;
  margin:2.2em 0 21px;padding:0 0 18px 17px;
  color:#0f263f;font-size:clamp(23px,2.2vw,30px);line-height:1.24;
  font-weight:800;letter-spacing:-.7px;background:transparent;
}
.pt-internal .pt-editor-content .pt-faq-heading::before {
  content:"";position:absolute;top:3px;bottom:21px;left:0;width:4px;border-radius:8px;background:var(--red)
}
.pt-internal .pt-editor-content .pt-faq-heading::after {
  content:"";position:absolute;bottom:-1px;left:0;width:88px;height:2px;border-radius:3px;background:#152e48
}
/* Native details + Gutenberg's Details block (accessible without JavaScript). */
.pt-internal .pt-editor-content details:not(.pt-backup) {
  border:1px solid #dee7ef;border-radius:13px;margin:13px 0;
  background:#fff;box-shadow:0 5px 16px #112a4608;overflow:hidden;
  transition:border-color .2s,box-shadow .2s;
}
.pt-internal .pt-editor-content details:not(.pt-backup):hover {border-color:#c6d3e0}
.pt-internal .pt-editor-content details:not(.pt-backup)[open] {border-color:#bdcddd;box-shadow:0 9px 23px #11284014}
.pt-internal .pt-editor-content details:not(.pt-backup) > summary {
  list-style:none;display:block;position:relative;margin:0;cursor:pointer;
  padding:19px 66px 19px 22px;color:#10253c;background:#fff;
  font-size:15px;line-height:1.5;font-weight:740;
}
.pt-internal .pt-editor-content details:not(.pt-backup) > summary::-webkit-details-marker {display:none}
.pt-internal .pt-editor-content details:not(.pt-backup) > summary::before {
  content:"";position:absolute;top:50%;right:19px;transform:translateY(-50%);
  width:33px;height:33px;border-radius:9px;background:#f0f4f8;border:1px solid #dfe7ef
}
.pt-internal .pt-editor-content details:not(.pt-backup) > summary::after {
  content:"";position:absolute;right:31px;top:50%;width:8px;height:8px;
  border-right:2px solid #203b56;border-bottom:2px solid #203b56;
  transform:translateY(-65%) rotate(45deg);transition:transform .2s;
}
.pt-internal .pt-editor-content details:not(.pt-backup)[open] > summary {
  color:#0b2138;background:#f5f8fb;border-bottom:1px solid #e4ebf2
}
.pt-internal .pt-editor-content details:not(.pt-backup)[open] > summary::before {background:#102c47;border-color:#102c47}
.pt-internal .pt-editor-content details:not(.pt-backup)[open] > summary::after {border-color:#fff;transform:translateY(-20%) rotate(225deg)}
.pt-internal .pt-editor-content details:not(.pt-backup) > :not(summary) {
  margin:17px 22px 17px;color:#475a6e;line-height:1.75;
}
.pt-internal .pt-editor-content details:not(.pt-backup) > :last-child {margin-bottom:20px}
.pt-internal .pt-editor-content details:not(.pt-backup) :is(p,li) {font-size:inherit;line-height:1.75}
.pt-internal .pt-editor-content details:not(.pt-backup) > summary:focus-visible,
.faq-premium .faq-item > summary:focus-visible {outline:3px solid #7eadd6;outline-offset:-4px}

/* Yoast SEO FAQ, Rank Math FAQ; leave schema/content ownership to plugins. */
.pt-internal .pt-editor-content :is(.schema-faq-section,.rank-math-list-item) {
  border:1px solid #dee7ef;border-radius:13px;background:#fff;overflow:hidden;
  box-shadow:0 5px 16px #112a4608;margin:13px 0 16px;padding:0;
}
.pt-internal .pt-editor-content :is(.schema-faq-question,.rank-math-question) {
  display:block;position:relative;margin:0;padding:19px 22px;
  color:#132b45;font-size:15px;font-weight:750;line-height:1.5;
  background:#f5f8fb;border-bottom:1px solid #e2eaf1;
}
.pt-internal .pt-editor-content :is(.schema-faq-answer,.rank-math-answer) {
  display:block;margin:0;padding:17px 22px 20px;background:#fff;
  color:#475b6e;font-size:14px;line-height:1.8;
}
.pt-internal .pt-editor-content :is(.schema-faq-answer,.rank-math-answer) p {margin:0 0 .8em}
.pt-internal .pt-editor-content :is(.schema-faq-answer,.rank-math-answer) p:last-child {margin-bottom:0}
/* For editorial Q&A built from H3 + paragraph, alter presentation, not HTML/SEO content. */
.pt-internal .pt-page-article .pt-editor-content .pt-faq-question {
  position:relative;margin:14px 0 0;padding:16px 20px 16px 25px;
  border:1px solid #dbe5ee;border-bottom:0;border-radius:12px 12px 0 0;
  color:#142b44;background:#f3f7fb;font-size:17px;line-height:1.45;font-weight:750;
}
.pt-internal .pt-page-article .pt-editor-content .pt-faq-question::before {
  content:"";position:absolute;left:0;top:16px;bottom:16px;width:3px;border-radius:3px;background:var(--red)
}
.pt-internal .pt-editor-content .pt-faq-answer-text {
  border:1px solid #dbe5ee;border-top:0;border-radius:0 0 12px 12px;
  padding:14px 20px 18px;margin:0 0 14px;background:#fff;color:#42566a;
}

/* Homepage FAQ: calmer corporate palette, balanced card/icon proportions. */
.faq-premium {gap:24px;align-items:start}
.faq-premium::before {background:linear-gradient(135deg,#f6f8fa,#eef3f7 65%,#f9fbfd);box-shadow:inset 0 0 0 1px #e6edf3}
.faq-premium::after {background:radial-gradient(circle,#26465b10 0%,transparent 68%)}
.faq-premium .faq-copy .eyebrow {font-size:11px;letter-spacing:1.9px;color:#36546e}
.faq-premium .faq-copy .eyebrow::after {background:linear-gradient(90deg,#234768,#ffffff00)}
.faq-premium .faq-copy h2 {color:#112b43;line-height:1.22;font-size:clamp(25px,2.6vw,32px);font-weight:800;letter-spacing:-.9px}
.faq-premium .faq-copy>p {color:#536579;font-size:14px;line-height:1.7}
.faq-premium .faq-copy-card {border-radius:13px;border-color:#dce5ed;box-shadow:0 10px 26px #10253d0a;padding:17px}
.faq-premium .faq-copy-mark {background:linear-gradient(160deg,#193a56,#0e263f);border-radius:12px;box-shadow:0 8px 16px #0e263f26}
.faq-premium .faq-copy-card strong {color:#102a43}
.faq-premium .faq-item {border-radius:13px;border-color:#dce6ef;box-shadow:0 8px 23px #0d28400a;margin-bottom:11px}
.faq-premium .faq-item:hover {transform:none;box-shadow:0 12px 25px #0c284017;border-color:#b6cadb}
.faq-premium .faq-item[open] {border-color:#b6c9d9;box-shadow:0 12px 28px #10294014}
.faq-premium .faq-item summary {font-size:14.5px;font-weight:750;line-height:1.5;color:#112a42;padding:18px 63px 18px 20px}
.faq-premium .faq-item summary::before {top:15px;bottom:15px;background:transparent;width:3px}
.faq-premium .faq-item[open] summary::before {background:var(--red)}
.faq-premium .faq-item summary::after {content:"";right:20px;top:50%;width:30px;height:30px;border-radius:8px;
  background:#eff4f8;box-shadow:inset 0 0 0 1px #dae5ee;color:transparent;
  transform:translateY(-50%);
  /* chevron drawn by a small embedded SVG without dependency on icon fonts */
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath d='m3.5 6 4.5 4 4.5-4' fill='none' stroke='%2316314c' stroke-width='1.7' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
  background-size:16px 16px;background-repeat:no-repeat;background-position:center;
}
.faq-premium .faq-item[open] summary::after {content:"";background-color:#102c48;box-shadow:none;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath d='m3.5 10 4.5-4 4.5 4' fill='none' stroke='%23fff' stroke-width='1.7' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E")}
.faq-premium .faq-answer {padding:0 21px 21px}
.faq-premium .faq-answer p {font-size:13.5px;line-height:1.8;color:#4e6073}
.faq-premium .faq-visual {border-radius:17px;box-shadow:0 17px 33px #11253d24}
.faq-premium .faq-visual-badge {border-radius:11px}

@media (max-width:1100px) {
  .faq-premium {gap:20px}
  .pt-inner-hero-layout {grid-template-columns:minmax(0,1fr) 130px;min-height:228px}
  .pt-inner-hero-mark {transform:scale(.82) skew(-8deg)}
}
@media (max-width:800px) {
  .pt-inner-hero-layout {grid-template-columns:1fr;gap:0;min-height:0;padding-top:28px;padding-bottom:32px}
  .pt-inner-hero-mark {display:none}
  .pt-inner-hero-copy {padding-left:18px}
  .pt-inner-hero h1 {font-size:clamp(28px,4.6vw,37px)}
}
@media (max-width:580px) {
  .pt-inner-hero-layout {padding-top:23px;padding-bottom:27px}
  .pt-inner-hero-copy {padding-left:14px;border-left-width:3px}
  .pt-inner-hero .pt-breadcrumbs {margin-bottom:17px}
  .pt-inner-hero .pt-breadcrumbs ol {font-size:11px;gap:5px}
  .pt-inner-hero .pt-breadcrumbs li+li::before {margin-right:5px}
  .pt-inner-hero .pt-inner-kicker {font-size:10px;letter-spacing:1.15px}
  .pt-inner-hero h1 {font-size:27px;letter-spacing:-.45px;line-height:1.21}
  .pt-inner-hero p {font-size:13px;margin-top:11px}
  .pt-internal .pt-page-article .pt-editor-content h2:not(.pt-faq-heading) {font-size:21px;padding:12px 12px 12px 17px;margin:1.6em 0 .8em}
  .pt-internal .pt-page-article .pt-editor-content h3:not(.pt-faq-question):not(.pt-faq-heading) {font-size:18px}
  .pt-internal .pt-editor-content .pt-faq-heading {font-size:22px;padding-left:14px}
  .pt-internal .pt-editor-content details:not(.pt-backup) > summary {font-size:14px;padding:16px 59px 16px 16px}
  .pt-internal .pt-editor-content details:not(.pt-backup) > summary::before {right:13px;width:31px;height:31px}
  .pt-internal .pt-editor-content details:not(.pt-backup) > summary::after {right:24px}
  .pt-internal .pt-editor-content details:not(.pt-backup) > :not(summary) {margin:14px 17px}
  .pt-internal .pt-page-article .pt-editor-content .pt-faq-question {font-size:15px;padding:15px 15px 15px 20px}
  .pt-internal .pt-editor-content .pt-faq-answer-text {padding:12px 15px 16px}
  .faq-premium .faq-copy h2 {font-size:24px}
  .faq-premium .faq-item summary {font-size:14px;padding:16px 54px 16px 17px}
  .faq-premium .faq-item summary::after {right:14px}
  .faq-premium .faq-answer p {font-size:13px}
}
@media (prefers-reduced-motion:reduce) {
  .pt-internal .pt-editor-content details:not(.pt-backup),
  .pt-internal .pt-editor-content details:not(.pt-backup) > summary::after,
  .faq-premium .faq-item,
  .faq-premium .faq-item summary::after {transition:none!important}
}
