/* Landings /imobiliario e /credito: um só pedido de CSS, mesma ordem de cascata das páginas anteriores. */
@layer layout {
dialog{width:min(590px,calc(100% - 28px));max-height:calc(100dvh - 28px);overflow-y:auto;margin:auto;border:1px solid #4b4e42;border-radius:8px;background:#171717;color:var(--text);padding:38px;box-shadow:0 20px 100px #0009}dialog::backdrop{background:#030603c9;backdrop-filter:blur(7px)}body.modal-open{overflow:hidden}.close-dialog{position:absolute;right:17px;top:13px;background:transparent;border:0;font-size:2rem;color:#b7bfa9;width:44px;height:44px;line-height:1}.form-brand{font-size:1.3rem;margin-bottom:35px}.form-progress{display:flex;justify-content:space-between;gap:16px;font-size:.65rem;letter-spacing:.07em;color:var(--muted)}progress{width:100%;height:3px;appearance:none;border:0;display:block;margin:12px 0 26px;background:#3b4033}progress::-webkit-progress-bar{background:#3b4033}progress::-webkit-progress-value{background:var(--orange);transition:width .25s var(--ease-out)}progress::-moz-progress-bar{background:var(--orange)}dialog h2{font-size:1.8rem;letter-spacing:-.045em;line-height:1.2;margin-right:10px}.form-description{color:var(--muted);font-size:.85rem;margin:12px 0 24px}.field{display:block;margin-bottom:18px;font-size:.85rem;font-weight:600}.field input,.field select{display:block;width:100%;min-height:50px;margin-top:8px;border:1px solid #555;border-radius:4px;background:#0c0c0c;padding:12px;color:var(--text);font-size:1rem}.field input::placeholder{color:#849079;font-weight:400}.choices{display:grid;gap:10px}.choice{position:relative;display:flex;gap:12px;align-items:center;border:1px solid #444;padding:14px;border-radius:4px;cursor:pointer;font-size:.875rem;min-height:51px}.choice:has(input:checked){border-color:var(--orange);background:#ff7b2710}.choice input{accent-color:var(--orange);width:18px;height:18px;margin:0;flex-shrink:0}.privacy-check{font-size:.8rem;color:#ccc;display:flex;gap:12px;align-items:flex-start;margin-top:22px}.privacy-check input{margin-top:5px;accent-color:var(--orange);width:18px;height:18px;flex-shrink:0}.privacy-check a{text-decoration:underline}.form-actions{display:flex;justify-content:space-between;gap:16px;margin-top:20px}.form-actions .button{margin-left:auto}.back-button{background:none;border:none;color:var(--muted);padding:10px 0;font-size:.8rem}.form-error{color:#ffb987;font-size:.85rem;margin-top:15px}.form-error:empty{display:none}.form-note{font-size:.7rem;color:#aaa;margin-top:22px}.honey{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}#form-success h2{font-size:2.3rem;margin-top:24px}#form-success p{color:var(--muted);margin:20px 0 28px}.success-icon{font-size:2rem;background:#ff7b2720;color:var(--orange);border-radius:50%;width:60px;height:60px;display:grid;place-items:center}.privacy-page{max-width:850px;padding-block:80px}.privacy-page h1{font-size:3.3rem}.privacy-page h2{font-size:1.6rem;margin:35px 0 15px}.privacy-page p{color:var(--muted);margin:16px 0}.privacy-page a{text-decoration:underline}.privacy-page .notice{padding:20px;border:1px solid var(--orange);color:var(--text)}
/* Compact one-screen lead forms; retain the shared controls and focus styles. */
dialog[data-step="single"] .form-progress,
dialog[data-step="single"] #progress { display:none; }
dialog[data-step="single"] #step-fields { display:grid; grid-template-columns:1fr 1fr; gap:16px; }
dialog[data-step="single"] .field { margin:0; }
dialog[data-step="single"] .field:has([name="name"]),
dialog[data-step="single"] .qualification-field,
dialog[data-step="single"] .privacy-field { grid-column:1/-1; }
dialog[data-step="single"] .privacy-check { margin-top:0; }
dialog[data-step="single"] .form-actions .button { width:100%; justify-content:center; }
@media(max-width:480px) {
  dialog[data-step="single"] #step-fields { grid-template-columns:minmax(0,1fr); gap:14px; }
}

}
@layer layout {
@font-face{font-family:Manrope;src:url('/fonts/manrope-a30ddcd34970.woff2') format('woff2');font-weight:200 800;font-display:swap}
:root{--bg:#090909;--text:#fafafa;--muted:#a6a6a6;--orange:#ff761c;--line:#303030;color-scheme:dark}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:24px}body{margin:0;background:var(--bg);color:var(--text);font:16px/1.65 Manrope,sans-serif}h1,h2,h3,p{margin:0}h1,h2,h3{line-height:1.08;letter-spacing:-.055em}h2{font-size:clamp(32px,3.5vw,52px);font-weight:750}h3{font-size:32px;font-weight:650}a{color:inherit;text-decoration:none}button,input,select{font:inherit}button{cursor:pointer}button:disabled{cursor:wait;opacity:.6}[hidden]{display:none!important}button,a,summary{touch-action:manipulation}a:focus-visible,button:focus-visible,summary:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid var(--orange);outline-offset:5px}.wrap{max-width:1440px;margin:auto;padding-inline:76px}.muted{color:var(--muted)}.accent{color:var(--orange)}.eyebrow{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.25em;margin-bottom:30px}.eyebrow:before{content:'';display:inline-block;width:24px;border-top:3px solid var(--orange);vertical-align:middle;margin-right:16px}.header{height:104px;display:flex;align-items:center;gap:35px;padding-inline:76px;border-bottom:1px solid #242424;max-width:1600px;margin:auto}.wordmark{font-size:34px;line-height:1;font-weight:800;letter-spacing:-.08em}.wordmark span{color:var(--orange)}.header nav{display:flex;gap:38px;margin-left:auto;font-size:14px}.header-actions{margin-left:35px}.crm{display:none}.button{display:inline-flex;align-items:center;justify-content:center;gap:32px;min-height:58px;padding:16px 30px;border:1px solid var(--orange);border-radius:4px;background:var(--orange);color:#080808;font-size:15px;font-weight:750;transition:background 180ms var(--ease-out),transform 180ms var(--ease-out)}.button:hover{background:#ff9148;transform:translateY(-2px)}.button span{font-size:22px;line-height:1}.button.small{min-height:54px}.header a:hover{color:var(--orange)}.menu-toggle,.mobile-menu{display:none}.hero{background:#090909 url('/images/lisbon-hero.png') center center/cover no-repeat;max-width:1600px;margin:auto}.hero-inner{max-width:1440px;margin:auto;padding:90px 76px 62px}.hero h1{font-size:clamp(46px,5.65vw,81px);font-weight:800;line-height:1.06;max-width:880px;letter-spacing:-.06em}.hero h1 span{color:var(--orange)}.hero-description{max-width:665px;font-size:21px;line-height:1.55;margin-top:32px}.hero .button{margin-top:36px}.hero-note{font-size:12px;color:#bbb;margin-top:18px;max-width:580px}.section{padding-block:100px}.system-section{background:#fafafa;color:#111;color-scheme:light}.system-section .eyebrow{margin-bottom:24px}.section-heading{display:flex;justify-content:space-between;align-items:flex-end;gap:60px;margin-bottom:65px}.section-heading>p{max-width:430px;font-size:19px;line-height:1.5;color:#727272}.services{display:grid;grid-template-columns:repeat(3,1fr)}.services article{padding:0 35px;border-left:1px solid #ddd}.services article:first-child{padding-left:0;border:0}.services article:last-child{padding-right:0}.service-number{color:#d85300;font-size:15px;margin-bottom:24px}.services h3{margin-bottom:18px}.services p{color:#6c6c6c;font-size:17px;line-height:1.6}.problem{display:grid;grid-template-columns:1.1fr 1fr;gap:100px}.problem-copy{padding-top:43px;font-size:19px}.problem-copy p+p{margin-top:24px}.method-section{background:#151515;border-block:1px solid var(--line)}.method{display:grid;grid-template-columns:1.1fr 1fr;gap:100px}.method h2{font-size:clamp(32px,3vw,44px)}.method-intro>p:not(.eyebrow){color:var(--muted);margin-top:28px;max-width:380px}.method .button{margin-top:30px}.steps{list-style:none;margin:0;padding:0}.steps li{border-top:1px solid #3a3a3a;display:flex;gap:30px;padding:28px 0}.steps li:last-child{border-bottom:1px solid #3a3a3a}.steps li>span{color:var(--orange);font-size:13px;padding-top:4px}.steps h3{font-size:23px;letter-spacing:-.035em}.steps p{color:var(--muted);margin-top:12px;font-size:16px}.focus-section{background:var(--orange);color:#111;padding-block:85px}.focus-section .eyebrow:before{border-color:#111}.focus-grid{display:grid;grid-template-columns:1.5fr 1fr;gap:24px 90px}.focus-grid .eyebrow{grid-column:1/-1;margin:0}.focus-grid p:last-child{align-self:end;font-size:18px}.faq{display:grid;grid-template-columns:1fr 1.2fr;gap:85px}.faq h2{font-size:40px}.faq-list details{border-bottom:1px solid #333}.faq-list details:first-child{border-top:1px solid #333}summary{list-style:none;cursor:pointer;padding:23px 30px 23px 0;position:relative;font-weight:600;font-size:16px;line-height:1.5}summary::-webkit-details-marker{display:none}summary:after{content:'+';position:absolute;right:0;color:var(--orange);font-size:22px;top:17px}details[open] summary:after{content:'−'}details p{color:var(--muted);padding:0 20px 25px 0;font-size:15px}.final-section{background:#fafafa;color:#111;padding-block:78px}.final-panel h2{font-size:clamp(36px,4.6vw,66px)}.final-bottom{display:flex;justify-content:space-between;align-items:center;gap:35px;margin-top:36px}.final-bottom p{color:#666;font-size:18px}.footer{display:flex;gap:35px;align-items:center;padding-block:38px}.footer .wordmark{font-size:27px}.footer>p{font-size:12px;color:var(--muted)}.footer>div{margin-left:auto;text-align:right;font-size:12px;display:flex;flex-direction:column;gap:6px}.footer small{color:var(--muted);font-size:11px}.preview{background:#202020;color:#ccc;padding:4px 20px;text-align:center;font-size:10px;letter-spacing:.03em}.skip{position:fixed;top:-100px;left:20px;z-index:100;background:var(--orange);color:#111;padding:10px}.skip:focus{top:10px}dialog{font-family:Manrope,sans-serif}.form-error{color:#ffc09b}.close-dialog{color:#ccc}.form-note{color:#aaa}.field input::placeholder{color:#999}progress::-webkit-progress-bar{background:#393939}.privacy-page{max-width:900px;padding-block:70px}.privacy-page h1{font-size:48px}.privacy-page h2{font-size:26px;margin:30px 0 16px}.privacy-page p{margin:16px 0;color:var(--muted)}
@media(min-width:1500px){.hero-inner{padding-block:110px 85px}}
@media(max-width:1150px){.wrap,.header{padding-inline:40px}.header{height:88px;gap:20px}.header nav{gap:22px}.header-actions{margin-left:10px}.wordmark{font-size:29px}.hero-inner{padding:65px 40px 52px}.hero h1{font-size:64px}.hero-description{font-size:18px;max-width:570px}.hero{background-position:56% center}.section{padding-block:75px}.section-heading{gap:45px}.section-heading>p{max-width:310px;font-size:17px}.problem,.method,.faq{gap:50px}.services article{padding-inline:24px}.services p{font-size:16px}.focus-grid{gap:25px 45px}.footer{flex-wrap:wrap}.footer>div{font-size:11px}}
@media(max-width:850px){.header nav{display:none}.header-actions{margin-left:auto}.menu-toggle{display:block;min-height:44px;border:0;background:transparent;color:#fff;padding:10px}.mobile-menu:not([hidden]){display:flex;flex-direction:column;gap:20px;padding:24px 40px;border-bottom:1px solid #333}.hero h1{font-size:57px}.hero-inner{padding-top:60px}.hero-description{max-width:470px;font-size:18px}.hero{background-position:47% center}.hero-note{max-width:370px}.hero .eyebrow{font-size:9px;letter-spacing:.17em}.section-heading{align-items:flex-start;gap:25px}.section-heading h2{font-size:35px}.section-heading>p{max-width:230px}.services h3{font-size:28px}.services p{font-size:15px}.problem,.method,.faq{grid-template-columns:1fr;gap:35px}.problem-copy{padding:0;max-width:650px}.method h2{font-size:42px}.focus-grid{grid-template-columns:1fr;gap:25px}.focus-grid p:last-child{max-width:560px}.final-bottom{align-items:flex-start;flex-direction:column}.footer>p{margin-left:auto}.footer>div{width:100%;margin:0;text-align:left}}
@media(max-width:600px){.wrap,.header{padding-inline:24px}.header{height:78px}.header .wordmark{font-size:28px}.header-actions{display:none}.menu-toggle{margin-left:auto}.mobile-menu:not([hidden]){padding-inline:24px}.hero{background-image:none;position:relative}.hero-inner{padding:44px 24px 0}.hero-inner:after{content:'';display:block;height:245px;margin:32px -24px 0;background:url('/images/lisbon-hero.png') right center/auto 330px no-repeat}.hero .eyebrow{font-size:9px;letter-spacing:.12em;margin-bottom:25px;max-width:320px;line-height:1.8}.eyebrow:before{width:16px;margin-right:9px}.hero h1{font-size:clamp(35px,9.65vw,55px);line-height:1.1;letter-spacing:-.057em}.hero-description{font-size:16px;line-height:1.65;margin-top:24px;max-width:355px}.hero .button{margin-top:25px;min-height:54px}.hero-note{font-size:11px;line-height:1.6;margin-top:14px;max-width:310px}.section{padding-block:58px}.eyebrow{font-size:10px;letter-spacing:.15em;margin-bottom:22px}.section-heading{display:block;margin-bottom:36px}.section-heading h2{font-size:34px}.section-heading>p{max-width:340px;margin-top:24px;font-size:16px}.services{grid-template-columns:1fr;gap:28px}.services article,.services article:first-child,.services article:last-child{padding:24px 0 0;border:0;border-top:1px solid #ddd}.service-number{margin-bottom:16px}.services h3{font-size:30px;margin-bottom:12px}.services p{font-size:16px}.problem h2{font-size:34px}.problem-copy{font-size:17px}.method h2{font-size:32px}.steps li{gap:22px}.steps h3{font-size:21px}.focus-section{padding-block:55px}.focus-grid h2{font-size:36px}.focus-grid p:last-child{font-size:16px}.faq h2{font-size:34px}summary{font-size:15px}.final-section{padding-block:55px}.final-panel h2{font-size:35px}.final-bottom p{font-size:16px}.footer{gap:20px}.footer>p{margin:0;width:100%}.preview{font-size:9px;padding:4px 15px}dialog{padding:28px 22px}dialog h2{font-size:26px}.form-progress span:last-child{display:none}.privacy-check{font-size:13px}.form-note{font-size:11px}.form-brand{margin-bottom:25px}.privacy-page h1{font-size:36px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{transition:none!important}*:not(.brand-track),*::before,*::after{animation:none!important}}
/* Legibilidade da nota sobre a imagem e proporções da primeira dobra. */
.hero-note{width:fit-content;background:#090909;padding:3px 7px;margin-left:-7px}
@media(min-width:1151px) and (max-width:1499px){.hero-inner{padding-top:70px;padding-bottom:48px}.hero h1{font-size:74px}.hero-description{max-width:650px}}
@media(min-width:601px) and (max-width:850px){.hero{background-position:left center}.hero-description{max-width:440px}}

}
@layer layout {
@font-face{font-family:Anton;src:url('/fonts/anton-82014c2baef4.woff2') format('woff2');font-weight:400;font-display:swap}
:root{--orange:#ff681d;--bg:#080808;--muted:#aaa;--header-height:100px;--preview-height:0px}body:has(.preview:not([hidden])){--preview-height:28px}.preview{height:28px;padding:4px 12px;font-size:11px;line-height:20px;text-align:center;background:#222;color:#ccc}.original-logo{width:210px;height:auto;display:block}.header{height:var(--header-height);max-width:1600px;padding-inline:6%;border:0;gap:30px}.header nav{margin-inline:auto;gap:30px}.header-actions{margin:0}.header .button{background:transparent;color:#fff;border-radius:40px;font-size:13px;padding:10px 24px;min-height:48px}.wordmark{flex-shrink:0}.button{border-radius:40px;gap:16px;background:var(--orange);min-height:60px;padding:16px 30px;font-size:17px;white-space:nowrap}.button:hover{background:#ff8a4d}.eyebrow{color:var(--orange);font-size:12px;letter-spacing:.25em;margin-bottom:22px}.eyebrow:before{display:none}
.hero{background:#080808;max-width:none}.hero-inner{height:calc(100svh - var(--header-height) - var(--preview-height));min-height:590px;max-width:1600px;padding:25px 6% 40px;display:flex;flex-direction:column;justify-content:space-between;gap:30px}.hero-message{width:100%;margin-block:auto}.hero h1{font-family:Anton,Impact,sans-serif;font-weight:400;font-size:clamp(70px,min(8.4vw,14.5svh),140px);letter-spacing:-.025em;line-height:1.04;max-width:none}.hero h1 .headline-line{display:block;color:#fafafa}.hero h1 .headline-highlight{color:#080808;background:var(--orange);padding:0 .07em .08em;display:table;margin-top:.045em;line-height:1.12;box-decoration-break:clone;-webkit-box-decoration-break:clone}.hero-bottom{display:flex;justify-content:space-between;align-items:center;gap:50px;margin-top:24px}.hero-description{font-size:clamp(15px,1.3vw,20px);line-height:1.6;max-width:730px;flex:1;margin:0}.hero .button{margin:0}.brand-section{margin:0;padding:0;background:transparent}.brand-section .wrap{padding:0;max-width:none}.brand-section h2{font-family:Manrope,sans-serif;color:#a9a9ad;font-size:10px;font-weight:700;letter-spacing:.16em;text-transform:uppercase;line-height:1.5;margin-bottom:22px}.brand-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:30px;align-items:center;list-style:none;padding:0;margin:0}.brand-grid li{height:48px;display:flex;align-items:center;justify-content:center}.brand-grid li:first-child{justify-content:flex-start}.brand-logo{display:block;max-width:100%;width:135px;height:44px;object-fit:contain;filter:brightness(0) invert(1);opacity:.78}.brand-remax{height:48px;width:160px}.brand-kw{width:78px}.brand-predimed{width:150px}.brand-zome{width:140px}.brand-iad{width:92px}.brand-exp{width:100px;height:49px}
.wrap{max-width:1600px;padding-inline:6%}.section{padding-block:110px}h2{font-family:Anton,Impact,sans-serif;font-weight:400;font-size:clamp(38px,4.5vw,68px);letter-spacing:-.015em;line-height:1.15}.reality{background:#fff;color:#080808}.reality h2{max-width:1200px}.reality-intro{margin-top:26px;font-size:21px}.pain-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:32px;margin-top:65px}.pain-grid article{border-top:2px solid #ff681d;padding-top:22px}.pain-grid h3{font-size:23px;letter-spacing:-.035em;line-height:1.25;margin-bottom:14px}.pain-grid p{font-size:15px;color:#5d5d5d}.system-section{background:#111;color:#fafafa}.section-heading{align-items:start;gap:60px}.section-heading>div{flex:1}.section-heading>p{flex:.65;color:#aaa}.services article{border-color:#333}.services h3{font-size:28px;line-height:1.2}.services p{color:#aaa}.method-section{background:#f5f5f2;color:#111;border:0}.method h2{font-size:clamp(38px,4vw,60px)}.method-intro>p:not(.eyebrow),.steps p{color:#606060}.steps li{border-color:#ccc}.steps h3{font-weight:750}.focus-grid{display:block}.focus-grid h2{max-width:1100px;margin:25px 0}.focus-grid p:last-child{max-width:730px}.focus-section .eyebrow{color:#111}.faq h2{font-size:clamp(36px,4vw,56px)}.final-panel h2{max-width:1100px}.footer .original-logo{width:160px}.form-brand .original-logo{width:140px}.menu-toggle{display:none}.mobile-menu{display:none}.skip:focus{z-index:100}.footer{gap:30px}.footer .wordmark{font-size:24px}
@media(min-width:1600px){.hero-inner,.header,.wrap{padding-inline:96px}}
@media(max-width:1000px){:root{--header-height:84px}.header{gap:18px}.original-logo{width:165px}.header nav{gap:20px;font-size:12px}.header .button{font-size:11px;padding-inline:15px}.hero-inner{padding-top:32px;min-height:570px}.hero h1{font-size:8.3vw}.hero-bottom{gap:25px}.hero-description{font-size:16px}.hero-bottom .button{font-size:14px;padding-inline:20px}.brand-grid{gap:20px}.pain-grid{grid-template-columns:repeat(2,1fr)}.method,.faq{gap:45px}.section-heading{gap:35px}.section{padding-block:75px}}
@media(max-width:700px){:root{--header-height:70px}.header{padding-inline:6%;justify-content:space-between}.original-logo{width:155px}.header nav,.header-actions{display:none}.menu-toggle{display:block;background:none;border:1px solid #555;border-radius:30px;padding:9px 16px;color:#fff;font-size:12px}.mobile-menu:not([hidden]){display:flex;position:absolute;top:calc(var(--header-height) + var(--preview-height));left:0;right:0;z-index:20;flex-direction:column;background:#151515;padding:24px 6%;gap:20px;border-block:1px solid #333}.hero-inner{min-height:560px;height:calc(100svh - var(--header-height) - var(--preview-height));padding:20px 6% 24px;gap:25px}.hero-message{margin-block:auto}.hero .eyebrow{font-size:9px;letter-spacing:.15em;margin-bottom:18px}.hero h1{font-size:11.4vw;line-height:1.08;letter-spacing:-.02em}.hero h1 .headline-highlight{display:inline;line-height:1.25;padding:0 .075em .08em}.hero-bottom{display:flex;flex-direction:column;align-items:stretch;gap:20px;margin-top:22px}.hero-description{font-size:14px;line-height:1.55}.hero .button{min-height:52px;font-size:14px;padding:13px 18px;align-self:stretch}.brand-section h2{font-size:8px;letter-spacing:.1em;text-align:center;margin-bottom:16px}.brand-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:17px 23px}.brand-grid li,.brand-grid li:first-child{height:29px;justify-content:center}.brand-logo{height:28px;width:100%;max-width:100px}.brand-remax{height:31px}.brand-kw{width:48px}.brand-iad{width:62px}.brand-exp{width:64px;height:32px}.brand-predimed{width:95px}.section{padding-block:58px}.section-heading,.method,.faq{display:block}.section-heading>p{margin-top:25px}.services{grid-template-columns:1fr;gap:30px}.services article,.services article:first-child{padding:25px 0 0;border:0;border-top:1px solid #333}.service-number{margin-bottom:12px}.services h3{font-size:26px}.pain-grid{gap:25px 20px;margin-top:35px}.pain-grid h3{font-size:19px}.pain-grid p{font-size:13px}.reality-intro{font-size:17px}.steps{margin-top:40px}.focus-section{padding-block:55px}.focus-grid p:last-child{font-size:16px}.faq-list{margin-top:35px}.final-bottom{display:flex;flex-direction:column;align-items:flex-start;gap:25px}.footer{display:flex;flex-direction:column;align-items:flex-start;padding-block:35px}.footer .original-logo{width:150px}dialog{padding:30px 22px}.form-brand{margin-bottom:25px}dialog h2{font-family:Manrope,sans-serif;font-weight:750;font-size:25px}.final-panel h2{font-size:40px}}
@media(max-width:380px){.hero-inner{min-height:535px;padding-top:12px;padding-bottom:18px;gap:18px}.hero .eyebrow{font-size:8px;margin-bottom:14px}.hero-description{font-size:12px}.hero-bottom{gap:16px;margin-top:18px}.brand-grid{gap:12px 20px}.brand-section h2{margin-bottom:12px}.hero .button{min-height:46px}.pain-grid{grid-template-columns:1fr}}
.hero-inner:after,.hero:before,.hero:after{display:none!important;content:none!important}.brand-section{flex-shrink:0}.preview{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
@media(min-width:701px){.hero h1{font-size:clamp(60px,min(8.4vw,calc((100svh - 430px)/3.4)),140px)}}
@media(max-width:700px){.hero h1{font-size:11.4vw}.hero-message{margin-block:auto}.hero-inner{display:flex}.brand-section{width:100%}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important}*:not(.brand-track),*:before,*:after{animation:none!important}}
.brand-section{position:relative}.brand-section h2{padding-right:65px}.brand-window{overflow:hidden;width:100%}.brand-track{display:flex;width:200%;animation:brand-scroll 32s linear infinite}.brand-track .brand-grid{width:50%;flex:0 0 50%;padding-right:30px;gap:30px;grid-template-columns:repeat(6,minmax(0,1fr))}.brand-track .brand-grid li:first-child{justify-content:center}.brand-remax{filter:grayscale(1) invert(1) brightness(1.4)}.brand-predimed{width:165px;height:52px}
@keyframes brand-scroll{to{transform:translateX(-50%)}}
@media(max-width:700px){.brand-track{width:1440px;animation-duration:28s}.brand-track .brand-grid{width:720px;flex-basis:720px;padding-right:25px;gap:25px}.brand-section h2{text-align:left;margin-bottom:20px}.brand-track .brand-grid li{height:40px}.brand-logo{height:36px}.brand-predimed{height:40px;width:110px}.brand-remax{height:37px}.brand-exp{height:38px}}


}
@layer layout {
/* The established manifesto direction, carried through the whole page. */
.final-section .final-bottom p{color:#d2c6bd}
.hero{background:radial-gradient(ellipse at 100% 20%,#6a280b45,transparent 55%),#080808}.header{background:transparent}.headline-highlight{box-shadow:0 8px 55px #f65f1014}.button{transition:background 180ms var(--ease-out),transform 180ms var(--ease-out),box-shadow 180ms var(--ease-out)}.button:hover{box-shadow:0 5px 30px #ff681d25}.section{padding-block:clamp(72px,8vw,125px)}
.reality{background:#f5f4ef}.reality-heading{display:grid;grid-template-columns:1.6fr 1fr;gap:18px 75px;align-items:end}.reality-heading .eyebrow{grid-column:1/-1;margin-bottom:5px;color:#ae410c}.reality h2{font-size:clamp(40px,4.7vw,72px);max-width:850px}.reality-intro{font-size:18px;line-height:1.7;margin:0;max-width:390px;color:#52514e}.pain-grid{gap:32px;margin-top:65px;counter-reset:pain}.pain-grid article{border-color:#d0cec6;position:relative;padding-top:24px;counter-increment:pain}.pain-grid article:before{content:'0' counter(pain);display:block;font-size:11px;font-weight:800;letter-spacing:.12em;color:#a44113;margin-bottom:24px}.pain-grid h3{font-size:21px;letter-spacing:-.04em}.pain-grid p{font-size:15px;line-height:1.7;color:#5b5954}
.system-section{background:radial-gradient(ellipse at 90% 80%,#6f290e35,transparent 55%),#101010}.system-section .section-heading{align-items:end;margin-bottom:60px}.system-section h2{font-size:clamp(40px,4.8vw,72px)}.section-heading>p{font-size:18px;line-height:1.7;max-width:370px}.services{gap:18px}.services article,.services article:first-child,.services article:last-child{padding:32px;border:1px solid #36312c;border-radius:12px;background:linear-gradient(145deg,#ffffff06,#ffffff01)}.service-number{font-size:10px;letter-spacing:.15em;font-weight:800;color:#ff985f;margin-bottom:46px}.service-signal{font-family:Anton,sans-serif;font-size:clamp(27px,2.4vw,38px);letter-spacing:-.02em;line-height:1.2;max-width:250px;min-height:90px;color:#fff}.services h3{font-family:Manrope,sans-serif;font-size:17px;letter-spacing:-.025em;color:#ffa16d;margin:30px 0 13px}.services p{font-size:15px;line-height:1.75;color:#bcb7b2}.system-handoff{display:flex;align-items:center;justify-content:space-between;gap:35px;margin-top:45px;padding-top:36px;border-top:1px solid #39302a}.system-handoff p{font-size:19px;line-height:1.6;color:#aaa}.system-handoff strong{color:#fff;font-weight:600}.system-handoff .button{font-size:15px}
.method-section{background:#f5f4ef}.method{grid-template-columns:1fr 1fr;gap:100px}.method-intro{align-self:start;position:sticky;top:40px}.method .eyebrow{color:#a44113}.method h2{font-size:clamp(40px,4.5vw,68px)}.method-intro>p:not(.eyebrow){max-width:390px;font-size:17px;line-height:1.7}.steps li{gap:28px;padding:32px 0;border-color:#cfcdc6}.steps li:last-child{border-color:#cfcdc6}.steps li>span{font-family:Anton,sans-serif;font-size:30px;color:#ba480f;padding:0;line-height:1.2}.steps h3{font-size:23px;line-height:1.25;letter-spacing:-.04em}.steps p{font-size:16px;line-height:1.7;margin-top:14px}
.focus-section{background:radial-gradient(ellipse at 100% 0%,#ffc37b,transparent 65%),linear-gradient(125deg,#fd5f13,#fb8b3a);color:#14100d;padding-block:80px}.focus-top{display:flex;align-items:start;justify-content:space-between;margin-bottom:45px}.focus-top .eyebrow{color:#421d09}.focus-kicker{font-size:13px;line-height:1.6;font-weight:650}.focus-section h2{font-size:clamp(52px,6.8vw,102px);line-height:1.08;letter-spacing:-.02em;max-width:1150px}.focus-section h2 span{color:#4a210e}.focus-bottom{display:grid;grid-template-columns:1.3fr 1fr;gap:100px;padding-top:45px;margin-top:45px;border-top:1px solid #55240845}.focus-bottom>p{font-size:19px;line-height:1.7;max-width:620px}.focus-bottom>div{border-left:1px solid #55240845;padding-left:45px}.focus-bottom strong{font-size:22px;letter-spacing:-.04em}.focus-bottom div p{margin-top:12px;line-height:1.7;font-size:15px}
.faq{grid-template-columns:1fr 1.2fr;gap:90px}.faq h2{font-size:clamp(44px,4.5vw,68px)}.faq-intro{margin-top:25px;color:#b5b0ac;font-size:17px;max-width:300px}.faq-list details{border-color:#38332f}.faq-list details:first-child{border-color:#38332f}.faq-list summary{padding-block:26px;font-size:17px}.faq-list details[open]{background:#ffffff04}.faq-list details[open] summary{color:#ff9a62}.faq-list details p{font-size:16px;line-height:1.75;color:#c0bab5}.faq-list summary:after{top:23px}
.final-section{background:radial-gradient(ellipse at 50% 110%,#9a3c1559,transparent 65%),#13100e;color:#fafafa;padding:0 6% 65px}.final-panel{max-width:1408px;padding:75px 6%;border:1px solid #62402c;border-radius:18px;background:linear-gradient(125deg,#ffffff05,transparent);text-align:center}.final-panel .eyebrow{margin-bottom:30px}.final-panel h2{font-size:clamp(56px,7vw,104px);max-width:none;line-height:1.1}.final-panel h2 span{color:#ff8b49}.final-bottom{display:flex;flex-direction:column;align-items:center;gap:25px;margin-top:30px}.final-bottom p{font-size:18px;line-height:1.7;max-width:570px}.final-note{font-size:12px;line-height:1.6;color:#ada49e;max-width:460px;margin:20px auto 0}.footer{padding-block:35px;border:0}.footer p{font-size:13px}.footer small{color:#aaa}
@media(max-width:1000px){.reality-heading{gap:24px 40px}.pain-grid{grid-template-columns:repeat(2,1fr)}.services{gap:12px}.services article,.services article:first-child,.services article:last-child{padding:24px}.service-signal{font-size:28px}.method{gap:50px}.focus-bottom{gap:50px}.faq{gap:40px}}
@media(max-width:700px){.section{padding-block:64px}.hero{background:radial-gradient(ellipse at 100% 20%,#71300e38,transparent 70%),#080808}.hero-description{font-size:15px;line-height:1.6}.hero-bottom{gap:20px}.hero h1{font-size:11.4vw}.hero-inner{min-height:570px}.hero .eyebrow{font-size:10px;letter-spacing:.12em}.brand-section h2{font-size:9px}.menu-toggle{min-height:44px}.mobile-menu a{min-height:44px;display:flex;align-items:center}.reality-heading{display:block}.reality-heading .eyebrow{margin-bottom:22px}.reality h2{font-size:40px;line-height:1.15}.reality-intro{font-size:16px;line-height:1.7;margin-top:25px}.pain-grid{grid-template-columns:1fr;gap:0;margin-top:35px}.pain-grid article{padding:22px 0 22px 38px}.pain-grid article:before{position:absolute;left:0;top:24px;margin:0}.pain-grid h3{font-size:20px;margin-bottom:10px}.pain-grid p{font-size:15px;line-height:1.7}.system-section h2{font-size:41px}.system-section .section-heading{margin-bottom:35px}.section-heading>p{font-size:16px}.services{gap:16px}.services article,.services article:first-child,.services article:last-child{padding:27px;border:1px solid #44382f}.service-number{margin-bottom:25px}.service-signal{font-size:33px;max-width:none;min-height:0}.services h3{margin-top:25px}.services p{font-size:16px;line-height:1.7}.system-handoff{flex-direction:column;align-items:stretch;gap:25px;margin-top:30px;padding-top:30px}.system-handoff p{font-size:17px}.system-handoff .button{font-size:13px;padding-inline:16px;white-space:normal;min-height:54px}.method-intro{position:static}.method h2{font-size:42px}.method-intro>p:not(.eyebrow){font-size:16px}.method .button{width:100%;font-size:15px}.steps{margin-top:38px}.steps li{padding:26px 0;gap:22px}.steps h3{font-size:21px}.steps p{font-size:16px}.focus-section{padding-block:56px}.focus-top{margin-bottom:30px}.focus-top .eyebrow{font-size:10px}.focus-kicker{display:none}.focus-section h2{font-size:48px;line-height:1.13}.focus-bottom{display:block;margin-top:30px;padding-top:28px}.focus-bottom>p{font-size:17px}.focus-bottom>div{border-left:0;border-top:1px solid #55240845;padding:25px 0 0;margin-top:26px}.focus-bottom strong{font-size:21px}.focus-bottom div p{font-size:16px}.faq h2{font-size:44px}.faq-intro{font-size:16px;max-width:320px}.faq-list summary{font-size:16px;padding-block:24px;padding-right:35px}.faq-list details p{font-size:16px;padding-right:10px}.final-section{padding-bottom:35px}.final-panel{padding:45px 20px;border-radius:12px}.final-panel h2{font-size:48px}.final-panel .eyebrow{font-size:9px;margin-bottom:25px}.final-bottom{align-items:stretch;gap:24px}.final-bottom p{font-size:16px}.final-bottom .button{font-size:14px;padding:15px 12px;min-height:54px}.final-note{font-size:12px;margin-top:18px}.footer{gap:22px}.footer div{display:flex;flex-direction:column;gap:14px}.footer small{font-size:11px}.form-actions .button{white-space:normal;min-height:52px;font-size:15px}.field input,.field select{font-size:16px;min-height:52px}.close-dialog{min-width:44px;min-height:44px}}
@media(max-width:380px){.hero-inner{min-height:540px;padding-block:12px 18px;gap:18px}.hero-description{font-size:14px;line-height:1.5}.hero .eyebrow{font-size:8px}.hero-bottom{gap:16px;margin-top:18px}.hero .button{min-height:48px}.reality h2,.system-section h2{font-size:36px}.focus-section h2{font-size:43px}.final-panel h2{font-size:42px}.final-panel{padding-inline:15px}}

}
@layer layout {
/* Clearer progression: promise, problem, mechanism, example, delivery, decision. */
.brand-track .brand-grid li{height:56px;justify-content:center}.brand-track .brand-logo{max-width:100%;height:48px;object-fit:contain;opacity:.8}.brand-track .brand-remax{width:148px}.brand-track .brand-kw{width:70px;height:43px}.brand-track .brand-predimed{width:170px;height:56px}.brand-track .brand-zome{width:130px;height:36px}.brand-track .brand-iad{width:168px;height:40px}.brand-track .brand-exp{width:91px;height:47px}
@media(max-width:700px){.brand-track{width:1800px}.brand-track .brand-grid{width:900px;flex-basis:900px;gap:24px;padding-right:24px}.brand-track .brand-grid li{height:40px}.brand-track .brand-logo{max-width:100%;height:35px}.brand-track .brand-remax{width:110px}.brand-track .brand-kw{width:52px;height:32px}.brand-track .brand-predimed{width:125px;height:40px}.brand-track .brand-zome{width:96px;height:27px}.brand-track .brand-iad{width:124px;height:30px}.brand-track .brand-exp{width:68px;height:35px}}
.closing-sequence{background:radial-gradient(ellipse 68% 39% at 50% 72%,#80351032 0%,#52230e1a 48%,transparent 100%),#080808}.closing-sequence .faq{background:transparent;padding-bottom:60px}.closing-sequence .final-section{background:transparent;padding-top:20px;padding-bottom:85px}.closing-sequence .final-panel{background:transparent;border:0;border-radius:0;padding-top:65px;padding-bottom:65px}.closing-sequence .final-panel h2 span{color:#ff934f}
@media(max-width:700px){.closing-sequence{background:radial-gradient(ellipse 100% 32% at 50% 76%,#80351030 0%,#52230e16 50%,transparent 100%),#080808}.closing-sequence .faq{padding-bottom:35px}.closing-sequence .final-section{padding-top:0;padding-bottom:45px}.closing-sequence .final-panel{padding-top:40px;padding-bottom:35px}}
.closing-sequence .final-panel{border:1px solid #92634455;border-radius:22px;background:linear-gradient(135deg,#ffffff04,transparent 60%),#100d0bb3;box-shadow:0 18px 65px #0000001a}
@media(max-width:700px){.closing-sequence .final-panel{border-radius:16px;padding-inline:22px}}
.hero-action{flex:0 0 auto;max-width:330px}.hero-action>p{font-size:11px;color:#bbb1aa;line-height:1.5;margin-top:12px;max-width:285px}.hero-description{max-width:700px}.pain-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.reality .section{padding-block:90px}.example-section{background:#eae8e1;color:#181714}.example-section>.wrap{display:grid;grid-template-columns:.85fr 1.15fr;gap:70px;align-items:center}.example-intro .eyebrow{color:#a23e10}.example-intro h2{font-size:clamp(40px,4.2vw,63px);line-height:1.15}.example-intro h2 span{color:#79746a}.example-intro>p:last-child{margin-top:26px;max-width:355px;color:#55524b;font-size:17px;line-height:1.7}.example-workspace{min-width:0;background:#faf9f6;border:1px solid #cecac0;border-radius:12px;box-shadow:0 20px 50px #29231a0c;overflow:hidden}.example-caption{display:flex;justify-content:space-between;gap:15px;padding:18px 24px;border-bottom:1px solid #dfdbd3;font-size:10px;line-height:1.5;color:#625d54}.example-caption>span:first-child{font-weight:800;white-space:nowrap}.example-tabs{display:grid;grid-template-columns:repeat(3,1fr);padding:0 24px;border-bottom:1px solid #dfdbd3;gap:12px}.example-tabs button{border:0;border-bottom:3px solid transparent;background:none;color:#716b61;min-height:65px;font-size:12px;padding:16px 0;text-align:left}.example-tabs button span{font-weight:750;margin-left:7px}.example-tabs button[aria-selected=true]{border-color:#d65313;color:#1d1a16}.example-tabs button:hover{color:#a33d0d}.example-panel{padding:32px;min-height:358px}.example-label{text-transform:uppercase;letter-spacing:.12em;font-size:10px;font-weight:800;color:#a43f10;margin-bottom:24px}.example-panel h3{font-family:Manrope,sans-serif;font-weight:750;letter-spacing:-.045em;font-size:28px;line-height:1.25;margin-bottom:20px}.example-panel>p:not(.example-label){font-size:15px;line-height:1.75;color:#625c53}.example-summary{border-top:1px solid #d9d3c8;padding-top:19px;margin-top:24px}.example-summary span{display:block;text-transform:uppercase;font-size:9px;letter-spacing:.12em;color:#756b5f;margin-bottom:8px}.example-summary strong{font-size:14px;line-height:1.6;font-weight:700}.example-facts{margin:0}.example-facts>div{display:flex;justify-content:space-between;gap:20px;padding:10px 0;border-bottom:1px solid #e1dcd3;font-size:13px}.example-facts dt{color:#756c60}.example-facts dd{margin:0;text-align:right;font-weight:650}.method-section{border-top:1px solid #d5d1c6}.method .steps{counter-reset:none}.focus-section h2{font-size:clamp(46px,6.2vw,92px)}.demo-agenda{display:flex;justify-content:center;gap:15px 30px;list-style:none;padding:0;margin:35px 0 0;counter-reset:agenda}.demo-agenda li{font-size:12px;color:#d3c7be;counter-increment:agenda}.demo-agenda li:before{content:'0' counter(agenda);color:#ff9e68;margin-right:10px;font-size:10px;font-weight:800}.final-panel h2{font-size:clamp(48px,6.6vw,94px)}.final-note{color:#c7b9ad}.system-section .service-signal{min-height:85px}.button:focus-visible,.example-tabs button:focus-visible{outline:3px solid #ffb086;outline-offset:5px}
@media(max-width:1050px){.example-section>.wrap{gap:35px;grid-template-columns:.8fr 1.2fr}.example-panel{padding:25px}.example-tabs{padding:0 20px;gap:8px}.example-tabs button{font-size:11px}.example-tabs button span{margin-left:3px}.example-caption{padding:16px 20px}.demo-agenda{gap:16px}.hero-action{max-width:280px}}
@media(max-width:700px){.hero-action{max-width:none;width:100%}.hero-action .button{width:100%}.hero-action>p{text-align:center;max-width:none;font-size:10px;margin-top:9px}.hero-description{font-size:15px;line-height:1.6}.hero-inner{gap:18px}.hero-bottom{gap:16px}.pain-grid{grid-template-columns:1fr}.reality-heading h2 br{display:none}.example-section>.wrap{display:block}.example-intro h2{font-size:40px}.example-intro>p:last-child{font-size:16px;margin-top:22px;max-width:none}.example-workspace{margin-top:30px;border-radius:10px}.example-caption{display:block;padding:14px 19px;font-size:10px}.example-caption>span{display:block}.example-caption>span+span{margin-top:4px}.example-tabs{padding:0 15px;gap:8px}.example-tabs button{display:flex;flex-direction:column;gap:6px;padding:15px 0;min-height:68px;font-size:10px}.example-tabs button span{margin:0;font-size:12px}.example-panel{padding:25px 20px;min-height:365px}.example-panel h3{font-size:25px;line-height:1.3}.example-panel h3 br{display:none}.example-panel>p:not(.example-label){font-size:15px}.example-summary strong{font-size:14px}.example-facts>div{font-size:12px;gap:12px;line-height:1.6}.example-facts dd{max-width:175px}.focus-section h2{font-size:44px}.demo-agenda{display:flex;flex-direction:column;align-items:flex-start;gap:15px;margin-top:28px;padding-block:20px;border-block:1px solid #ffffff20;text-align:left}.demo-agenda li{font-size:13px;line-height:1.5}.final-panel h2{font-size:44px}.final-panel h2 br{display:none}.final-panel .final-bottom{margin-top:24px}.system-section .service-signal{min-height:0}.brand-section h2{font-size:8px}.method h2{font-size:39px}}
@media(max-width:380px){.hero-description{font-size:14px;line-height:1.5}.hero .eyebrow{margin-bottom:12px}.hero-bottom{margin-top:16px;gap:13px}.hero-inner{min-height:540px;gap:12px}.hero-action>p{font-size:9px}.example-tabs button span{font-size:11px}.example-panel{padding-inline:18px}.example-intro h2{font-size:36px}.focus-section h2{font-size:40px}.final-panel h2{font-size:39px}}

}
@layer layout {
/* Section art direction. The approved hero is intentionally outside this scope. */
.authority-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:40px 48px;list-style:none;padding:0;margin:55px 0 0}.authority-grid li{border-top:1px solid #54250f55;padding:25px 0 0 22px;position:relative}.authority-grid li:before{content:'';position:absolute;left:0;top:33px;width:6px;height:6px;border-radius:50%;background:#48200d}.authority-grid h3{font-family:Manrope,sans-serif;font-size:22px;font-weight:800;letter-spacing:-.035em;line-height:1.3;margin:0 0 13px;color:#24140d}.authority-grid p{font-size:16px;line-height:1.7;color:#3a210f;max-width:360px}
@media(max-width:1000px){.authority-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:32px}}
@media(max-width:700px){.authority-grid{grid-template-columns:1fr;gap:25px;margin-top:35px}.authority-grid li{padding-top:23px}.authority-grid h3{font-size:21px;margin-bottom:10px}.authority-grid p{font-size:16px;max-width:none}.authority-grid li:before{top:32px}}
.results-section{background:radial-gradient(ellipse at 90% 90%,#7c351a25,transparent 65%),#0c0c0c;color:#fafafa}.results-heading{display:grid;grid-template-columns:1.4fr 1fr;gap:70px;align-items:end}.results-heading h2{font-size:clamp(44px,5vw,76px);line-height:1.12}.results-heading>p{max-width:380px;color:#bcb4ac;font-size:18px;line-height:1.7}.results-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:42px;margin-top:65px}.results-grid article{border-top:1px solid #65503c;padding-top:28px}.result-range{font-family:Anton,sans-serif;font-size:clamp(70px,8vw,120px);color:#ff853e;letter-spacing:-.035em;line-height:1.15;margin-bottom:24px}.results-grid h3{font-size:22px;line-height:1.3;letter-spacing:-.035em;margin-bottom:10px}.result-detail{font-size:14px;color:#bcb4ac}.results-note{font-size:12px;color:#b0a79e;line-height:1.7;max-width:770px;margin-top:42px}
@media(min-width:701px) and (max-width:1050px){.header nav{gap:16px}.header{gap:20px}.results-grid{gap:25px}.results-grid h3{font-size:19px}}
@media(max-width:700px){.results-heading{display:block}.results-heading h2{font-size:43px}.results-heading>p{margin-top:25px;font-size:16px}.results-grid{grid-template-columns:1fr;margin-top:35px;gap:26px}.results-grid article{padding-top:24px}.result-range{font-size:78px;margin-bottom:14px}.results-grid h3{font-size:22px}.result-detail{font-size:15px}.results-note{font-size:12px;margin-top:30px}}
.reality h2,.system-section h2,.example-intro h2,.method h2,.focus-section h2,.faq h2,.final-panel h2{text-wrap:balance}
.steps li>span{height:42px;align-self:flex-start}
.reality,.example-section{background:#f3f2ed}
.reality-heading{grid-template-columns:1.55fr 1fr;align-items:end;gap:24px 90px}.reality h2{font-size:clamp(44px,5.1vw,78px);line-height:1.1;letter-spacing:-.02em}.reality-intro{max-width:360px;font-size:18px}.pain-grid{margin-top:65px;gap:45px}.pain-grid article{padding-top:23px;border-top:1px solid #b9b5ac}.pain-grid article:before{font-family:Anton,sans-serif;font-size:38px;line-height:1;color:#b44817;margin-bottom:28px;letter-spacing:0}.pain-grid h3{font-size:22px}.pain-grid p{font-size:16px;line-height:1.7}
.system-section{background:radial-gradient(ellipse at 95% 65%,#73320f28,transparent 60%),#0c0c0c}.system-section .section-heading{margin-bottom:55px}.system-section h2{font-size:clamp(44px,5vw,76px);line-height:1.12}.services{display:block;border-top:1px solid #40352d}.services article,.services article:first-child,.services article:last-child{display:grid;grid-template-columns:125px 1fr 1fr;column-gap:40px;padding:35px 0;border:0;border-bottom:1px solid #40352d;border-radius:0;background:none}.service-number{grid-column:1;grid-row:1/3;margin:6px 0 0;font-size:11px;line-height:1.7;max-width:85px}.system-section .service-signal{grid-column:2;grid-row:1/3;min-height:0;max-width:350px;font-size:clamp(32px,3vw,47px);line-height:1.15;align-self:center}.services h3{grid-column:3;margin:0 0 12px;font-size:16px}.services p{grid-column:3;font-size:16px;line-height:1.7;max-width:430px}.system-handoff{border:0;padding-top:0;margin-top:42px}.system-handoff p{font-size:17px}.system-handoff .button{min-height:56px}
.example-section>.wrap{grid-template-columns:.85fr 1.15fr;gap:75px}.example-intro h2{font-size:clamp(43px,4.6vw,70px);line-height:1.12}.example-intro h2 span{color:#787269}.example-workspace{border:1px solid #38332d;background:#141311;color:#f9f6f1;box-shadow:0 28px 65px #24201818;border-radius:16px}.example-caption{color:#b5ada2;border-color:#36312a;padding:20px 28px}.example-caption>span:first-child{color:#f5e9dc}.example-tabs{border-color:#36312a;padding-inline:28px}.example-tabs button{color:#bbb2a7;transition:color 180ms var(--ease-out),border-color 180ms var(--ease-out)}.example-tabs button[aria-selected=true]{color:#ffac77;border-color:#ff7c32}.example-tabs button:hover{color:#fff}.example-panel{padding:34px;min-height:375px}.example-label{color:#ffa36c;font-size:10px}.example-panel h3{color:#faf5ee;font-size:30px}.example-panel>p:not(.example-label){color:#c1b9ae;font-size:16px}.example-summary{border-color:#3c352c}.example-summary span{color:#b2a494}.example-summary strong{color:#f4e1d0}.example-facts>div{border-color:#383128;font-size:14px}.example-facts dt{color:#b2a494}.example-facts dd{color:#f5eade}
.method-section{background:#f3f2ed;border-top:1px solid #c9c5bb}.method{grid-template-columns:1fr 1fr;gap:100px}.method h2{font-size:clamp(44px,4.8vw,72px);line-height:1.12}.steps{position:relative}.steps li,.steps li:last-child{border:0;position:relative;padding:0 0 42px;gap:28px}.steps li:last-child{padding-bottom:0}.steps li>span{position:relative;z-index:1;background:#f3f2ed;font-family:Manrope,sans-serif;font-weight:800;font-size:12px;line-height:42px;width:42px;flex:0 0 42px;text-align:center;border:1px solid #bb6b43;border-radius:50%;color:#9c3a0d}.steps li:not(:last-child):after{content:'';position:absolute;left:20px;top:42px;bottom:0;border-left:1px solid #cec3b6}.steps li>div{padding-top:8px}.steps h3{font-size:23px}.steps p{margin-top:12px;max-width:410px;line-height:1.7}
.focus-section{background:radial-gradient(ellipse at 100% 0%,#ffa456,transparent 68%),#fa6a22;padding-block:95px}.focus-section h2{font-size:clamp(50px,6.4vw,98px);line-height:1.08;letter-spacing:-.015em}.focus-section h2 span{color:#33190e}.focus-top .eyebrow{font-weight:800}.focus-bottom{border-color:#5a290d55;gap:70px}.focus-bottom>div{border-color:#5a290d55}.focus-bottom p{color:#3a210f}.focus-bottom strong{font-size:24px;line-height:1.3}
.faq{grid-template-columns:.9fr 1.1fr}.faq h2{font-size:clamp(45px,4.8vw,72px);line-height:1.12}.faq-list details[open]{background:transparent}.faq-list summary{padding-block:26px;font-size:17px;font-weight:600}.faq-list details{transition:border-color 180ms var(--ease-out)}.faq-list details[open]{border-color:#8a4b29}.faq-list details p{max-width:570px;padding-bottom:28px}.faq-list summary:after{width:25px;height:25px;border:1px solid #6a4935;border-radius:50%;display:grid;place-items:center;font-size:18px;top:25px;line-height:1}.closing-sequence .final-panel{border-radius:16px;border-color:#85573570;padding-block:75px}.final-panel h2{line-height:1.1}.demo-agenda{gap:30px}.demo-agenda li{line-height:1.6}.footer{padding-block:40px}
@media(max-width:1050px){.reality-heading{gap:25px 40px}.services article,.services article:first-child,.services article:last-child{grid-template-columns:85px 1fr 1fr;column-gap:25px}.example-section>.wrap{gap:35px}.example-panel{padding:27px}.method{gap:50px}.pain-grid{gap:25px}.focus-bottom{gap:45px}}
@media(max-width:700px){.reality-heading{display:block}.reality h2{font-size:41px}.reality-intro{font-size:16px}.pain-grid{margin-top:35px;gap:0}.pain-grid article{padding:25px 0 25px 45px}.pain-grid article:before{font-size:25px;top:28px;margin:0}.pain-grid h3{font-size:20px}.pain-grid p{font-size:15px}.system-section h2{font-size:40px}.system-section .section-heading{margin-bottom:35px}.services article,.services article:first-child,.services article:last-child{display:grid;grid-template-columns:1fr;padding:28px 0;gap:0}.service-number{grid-column:1;grid-row:auto;max-width:none;margin:0 0 18px;font-size:10px}.system-section .service-signal{grid-column:1;grid-row:auto;font-size:34px;max-width:none;margin-bottom:23px}.services h3{grid-column:1;font-size:16px;margin-bottom:10px}.services p{grid-column:1;font-size:16px}.system-handoff{margin-top:30px}.example-section>.wrap{display:block}.example-intro h2{font-size:40px}.example-workspace{border-radius:12px}.example-caption{padding:17px 20px}.example-tabs{padding-inline:20px}.example-panel{padding:26px 22px;min-height:400px}.example-panel h3{font-size:26px}.example-panel>p:not(.example-label){font-size:15px}.example-facts>div{font-size:12px}.method h2{font-size:40px}.steps{margin-top:40px}.steps li,.steps li:last-child{gap:20px}.steps h3{font-size:20px}.steps p{font-size:15px}.steps li:not(:last-child){padding-bottom:32px}.focus-section{padding-block:60px}.focus-section h2{font-size:45px}.focus-bottom strong{font-size:22px}.focus-bottom{display:block}.faq h2{font-size:43px}.faq-list summary{font-size:16px;padding-right:42px;padding-block:24px}.faq-list summary:after{top:25px}.closing-sequence .final-panel{padding:45px 22px;border-radius:14px}.final-panel h2{font-size:44px}.demo-agenda{gap:14px}.footer{padding-block:30px}}
@media(max-width:380px){.reality h2,.system-section h2,.example-intro h2,.method h2{font-size:36px}.focus-section h2{font-size:40px}.example-panel{padding-inline:18px}.example-tabs{padding-inline:16px}.example-panel h3{font-size:24px}.closing-sequence .final-panel{padding-inline:18px}.final-panel h2{font-size:39px}}

.focus-section .focus-bottom{grid-column:1/-1;grid-row:3;margin-top:45px;padding-top:32px}
.focus-section>.wrap{display:grid;grid-template-columns:.9fr 1.1fr;column-gap:85px;align-items:start}.focus-top{grid-column:1/-1;margin-bottom:42px}.focus-section h2{grid-column:1;font-size:clamp(45px,4.9vw,74px);line-height:1.13;position:sticky;top:45px;max-width:520px}.focus-section .authority-grid{grid-column:2;grid-row:2;grid-template-columns:repeat(2,minmax(0,1fr));gap:34px 30px;margin:0}.focus-section .authority-grid li{border-top:1px solid #5d270e70;padding:22px 0 0;counter-increment:authority}.focus-section .authority-grid{counter-reset:authority}.focus-section .authority-grid li:before{content:'0' counter(authority);position:static;display:block;width:auto;height:auto;border-radius:0;background:none;font-family:Anton,sans-serif;font-size:28px;line-height:1;color:#6a2c10;margin-bottom:20px}.focus-section .authority-grid h3{font-size:21px;margin-bottom:12px}.focus-section .authority-grid p{font-size:15px;line-height:1.7}.focus-section .authority-grid li:last-child{background:#24160d;color:#fff;border:0;border-radius:10px;padding:22px 23px;margin-top:0}.focus-section .authority-grid li:last-child:before{color:#ffb277}.focus-section .authority-grid li:last-child h3{color:#fff}.focus-section .authority-grid li:last-child p{color:#ebd5c4}
@media(max-width:1050px){.focus-section>.wrap{column-gap:45px;grid-template-columns:.85fr 1.15fr}.focus-section .authority-grid{gap:28px 23px}.focus-section h2{font-size:52px}}
@media(max-width:700px){.focus-section>.wrap{display:block}.focus-section .focus-top{margin-bottom:28px}.focus-section h2{position:static;font-size:44px;max-width:440px}.focus-section .authority-grid{display:grid;grid-template-columns:1fr;gap:0;margin-top:38px}.focus-section .authority-grid li{display:grid;grid-template-columns:30px 1fr;gap:0 18px;padding:24px 0}.focus-section .authority-grid li:before{grid-column:1;grid-row:1/3;font-size:23px;margin:3px 0 0}.focus-section .authority-grid h3{grid-column:2;font-size:21px;margin:0 0 10px}.focus-section .authority-grid p{grid-column:2;font-size:16px}.focus-section .authority-grid li:last-child{padding:24px 21px;margin-top:8px}.focus-section .authority-grid li:last-child:before{font-size:23px}}

}
@layer layout {
/* Responsive and accessibility corrections for the production copy. */
.wrap > *, .hero-bottom > *, .section-heading > *, .services article > * { min-width: 0; }
.header { height: var(--header-height); }
.header nav a, .mobile-menu a { display: flex; align-items: center; min-height: 44px; }
.menu-toggle, .back-button { min-height: 44px; }
.menu-toggle { min-width: 74px; }

.button { white-space: normal; text-align: center; }
.button > span { flex-shrink: 0; }
.hero-inner { height: auto; min-height: max(590px, calc(100svh - var(--header-height) - var(--preview-height))); }
.hero-action { flex-shrink: 0; width: max-content; min-width: 295px; }
.hero-action .button { white-space: nowrap; }
.hero-description { max-width: 740px; }
@media (min-width: 701px) and (max-width: 1100px) {
  .brand-track { width: 2000px; }
  .brand-track .brand-grid { width: 1000px; flex-basis: 1000px; }
}
.reality .eyebrow, .example-section .eyebrow, .method-section .eyebrow { color: #a73b0a; }
.pain-grid { grid-template-columns: repeat(4, minmax(0, 1fr)); }
.reality h2 { font-size: clamp(38px, 4.1vw, 65px); }
.system-section h2 { font-size: clamp(38px, 4.3vw, 68px); }
.results-heading { display: block; }
.results-heading h2 { max-width: 1000px; font-size: clamp(39px, 4.5vw, 70px); text-wrap: balance; }
.focus-section h2 { font-size: clamp(38px, 3.7vw, 57px); position: static; }
.focus-section .focus-bottom { display: block; margin-top: 34px; }
.focus-section .focus-bottom p { max-width: 760px; }
.final-panel h2 { max-width: 1040px; margin-inline: auto; font-size: clamp(39px, 5.2vw, 78px); }
.closing-sequence .final-panel { width: min(1408px, 88%); }
.faq-list summary { padding-right: 45px; }
.steps li > span { padding-top: 0; }
.system-section { color-scheme: dark; }
.system-handoff { justify-content: flex-end; }
.reality, .method-section, .example-section, .focus-section { color-scheme: light; }
.reality :focus-visible, .method-section :focus-visible, .example-section :focus-visible,
.focus-section :focus-visible, .button:focus-visible { outline: 3px solid currentColor; outline-offset: 5px; }
dialog { overscroll-behavior: contain; max-height: calc(100vh - 28px); max-height: calc(100dvh - 28px); }
dialog h2 { font-family: Manrope, sans-serif; font-size: 27px; font-weight: 750; line-height: 1.3; }
dialog .button { font-size: 15px; min-height: 52px; padding: 13px 23px; }
.form-brand { padding-right: 35px; }
.field input:focus-visible, .field select:focus-visible { outline-offset: 2px; }
.field [aria-invalid=true] { border-color: #ffb987; }
.choices { border: 0; padding: 0; margin: 0; min-width: 0; }
.privacy-check { min-height: 44px; }
.privacy-page { overflow-wrap: anywhere; }
@media (max-width: 1100px) {
  .header nav { display: none; }
  .header-actions { margin-left: auto; }
  .menu-toggle { display: block; background: transparent; border: 1px solid #555; border-radius: 30px; color: #fff; padding: 9px 16px; }
  .mobile-menu:not([hidden]) { display: flex; position: absolute; top: calc(var(--header-height) + var(--preview-height)); left: 0; right: 0; z-index: 20; flex-direction: column; gap: 5px; padding: 16px 6%; background: #151515; border-block: 1px solid #444; box-shadow: 0 20px 35px #0005; }
  .pain-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .focus-section > .wrap { grid-template-columns: 1fr; }
  .focus-top { margin-bottom: 25px; }
  .focus-section h2 { grid-column: 1; max-width: 790px; font-size: clamp(38px, 5vw, 54px); }
  .focus-section .authority-grid { grid-column: 1; grid-row: 3; margin-top: 40px; }
  .focus-section .focus-bottom { grid-row: 4; }
  .example-section > .wrap { grid-template-columns: 1fr; gap: 36px; }
  .example-intro { max-width: 650px; }
  .example-panel { min-height: 330px; }
  .example-workspace { margin-top: 0; }
  .method, .faq { grid-template-columns: 1fr 1.15fr; gap: 40px; }
}
@media (max-width: 700px) {
  .hero-inner { min-height: max(590px,calc(100svh - var(--header-height) - var(--preview-height))); gap: 28px; }
  .hero-description { font-size: 15px; }
  .hero-action { width: 100%; min-width: 0; }
  .hero-action > p { font-size: 11px; }
  .hero .button { min-height: 52px; }
  .brand-section h2 { font-size: 9px; }
  
  .reality h2, .system-section h2, .method h2, .results-heading h2, .focus-section h2, .faq h2 { font-size: clamp(34px,9.4vw,44px); line-height: 1.17; }
  .pain-grid { grid-template-columns: 1fr; }
  .pain-grid p, .steps p { font-size: 16px; }
  .focus-section > .wrap { display: flex; flex-direction: column; }
  .focus-section h2 { order: 1; }
  .focus-section .authority-grid { order: 2; width: 100%; }
  .focus-section .focus-bottom { order: 3; }
  .focus-section .focus-bottom p { font-size: 16px; }
  .method, .faq { display: block; }
  .example-panel { min-height: 385px; }
  .final-panel h2 { font-size: clamp(35px,10vw,48px); }
  .final-bottom, .final-bottom .button { width: 100%; }
  .closing-sequence .final-panel { padding-inline: 22px; }
  .footer > div { text-align: left; margin-left: 0; }
  .footer a:not(.wordmark) { display: inline-flex; align-items: center; min-height: 44px; }
  dialog { padding: 30px 22px 24px; }
  dialog h2 { font-size: 24px; }
  .form-actions { gap: 12px; }
  .form-actions .button { padding-inline: 20px; }
}
@media (max-width: 380px) {
  .hero-inner { padding-inline: 6%; }
  .hero h1 { font-size: 11.2vw; }
  .hero-description { font-size: 14px; }
  .focus-section .authority-grid li { gap: 0 12px; }
  .focus-section .authority-grid li:last-child { padding-inline: 15px; }
  .closing-sequence .final-panel { padding-inline: 18px; }
  .form-actions .button { padding-inline: 15px; }
}
@media (hover: none) { .button:hover { transform: none; } }
@media (prefers-reduced-motion: reduce) {
  .hero-inner { min-height: max(640px,calc(100svh - var(--header-height) - var(--preview-height))); }
}

/* Shared rhythm below the approved hero. */
:root { --section-space: clamp(72px,7vw,104px); --section-title: clamp(38px,4.25vw,64px); }
.reality.section, .system-section.section, .method.section, .results-section.section,
.focus-section, .closing-sequence .faq { padding-block: var(--section-space); }
.reality h2, .system-section h2, .method h2, .results-heading h2,
.focus-section h2, .faq h2 { font-size: var(--section-title); line-height: 1.13; letter-spacing: -.015em; }
.reality-heading, .system-section .section-heading { gap: 24px 64px; }
.reality-heading { grid-template-columns: 1.65fr 1fr; }
.reality-heading .eyebrow, .section-heading .eyebrow,
.method .eyebrow, .results-heading .eyebrow, .faq .eyebrow { margin-bottom: 22px; }
.reality-intro, .section-heading > p, .method-intro > p:not(.eyebrow) { font-size: 17px; line-height: 1.75; }
.pain-grid { gap: 32px; margin-top: 48px; }
.pain-grid article:before { font-size: 30px; margin-bottom: 22px; }
.pain-grid h3, .steps h3, .results-grid h3, .focus-section .authority-grid h3 { font-size: 21px; line-height: 1.35; }
.pain-grid p, .services p, .steps p, .focus-section .authority-grid p { font-size: 16px; line-height: 1.7; }
.system-section .section-heading { margin-bottom: 48px; }
.services article, .services article:first-child, .services article:last-child { padding-block: 30px; }
.system-section .service-signal { font-size: clamp(30px,3vw,42px); }
.system-handoff { margin-top: 32px; }
.method { gap: 72px; align-items: start; }
.method-intro { position: static; }
.method .button { font-size: 15px; padding-inline: 22px; }
.steps li:not(:last-child) { padding-bottom: 32px; }
.steps p { margin-top: 10px; }
.results-heading h2 { max-width: 900px; }
.results-grid { margin-top: 48px; gap: 32px; }
.result-range { font-size: clamp(70px,7vw,104px); margin-bottom: 18px; }
.results-note { margin-top: 32px; }
.focus-section > .wrap { display: grid; grid-template-columns: 1.65fr 1fr; gap: 0 64px; }
.focus-section .focus-top { grid-column: 1/-1; margin-bottom: 22px; }
.focus-top .eyebrow { margin: 0; }
.focus-section h2 { grid-column: 1; grid-row: 2; max-width: 790px; }
.focus-section .focus-bottom { grid-column: 2; grid-row: 2; align-self: end; border: 0; margin: 0; padding: 0; }
.focus-section .focus-bottom p { max-width: 350px; font-size: 17px; line-height: 1.75; }
.focus-section .authority-grid { grid-column: 1/-1; grid-row: 3; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 32px; margin-top: 48px; }
.focus-section .authority-grid li { padding-top: 24px; }
.focus-section .authority-grid li:before { font-size: 28px; margin-bottom: 18px; }
.focus-section .authority-grid li:last-child { padding: 24px; }
.faq { grid-template-columns: 1fr 1.25fr; gap: 72px; }
.faq h2 { max-width: 450px; }
.faq-list summary { padding-block: 24px; }
.closing-sequence .final-section { padding-top: 0; padding-bottom: var(--section-space); }
.closing-sequence .final-panel { width: min(1408px,88%); padding-block: clamp(48px,5vw,72px); }
.final-panel h2 { font-size: clamp(40px,4.6vw,68px); max-width: 940px; }
.final-panel .eyebrow { margin-bottom: 24px; }
.final-panel .final-bottom { margin-top: 28px; gap: 26px; }
.final-note { margin-top: 20px; }
@media (min-width:701px) and (max-width:1100px) {
  .reality-heading, .focus-section > .wrap { grid-template-columns: 1.4fr 1fr; gap: 24px 36px; }
  .focus-section .focus-top { margin: 0; }
  .focus-section .authority-grid { grid-template-columns: repeat(2,minmax(0,1fr)); margin-top: 16px; }
  .method, .faq { gap: 36px; }
  .results-grid h3 { font-size: 19px; }
}
@media (max-width:700px) {
  :root { --section-space: 64px; --section-title: clamp(33px,9.2vw,43px); }
  .reality-heading, .focus-section > .wrap { display: block; }
  .reality-intro, .section-heading > p, .method-intro > p:not(.eyebrow) { margin-top: 24px; font-size: 16px; }
  .pain-grid, .results-grid { margin-top: 32px; gap: 0; }
  .pain-grid article { padding-block: 24px; }
  .pain-grid article:before { font-size: 25px; margin: 0; }
  .pain-grid article:last-child { padding-bottom: 0; }
  .system-section .section-heading { margin-bottom: 32px; }
  .services article, .services article:first-child, .services article:last-child { padding-block: 26px; }
  .system-section .service-signal { font-size: 30px; margin-bottom: 18px; }
  .system-handoff .button { width: 100%; }
  .method .button { margin-top: 24px; width: 100%; }
  .steps { margin-top: 36px; }
  .steps li:not(:last-child) { padding-bottom: 28px; }
  .results-grid article { display: grid; grid-template-columns: 110px minmax(0,1fr); gap: 5px 22px; padding-block: 24px; align-items: center; }
  .results-grid .result-range { grid-row: 1/3; margin: 0; font-size: 48px; white-space: nowrap; }
  .results-grid h3 { margin: 0; font-size: 19px; }
  .results-grid .result-detail { grid-column: 2; font-size: 13px; }
  .results-grid article:last-child { padding-bottom: 0; }
  .results-note { margin-top: 28px; }
  .focus-section .focus-top { margin-bottom: 22px; }
  .focus-section .focus-bottom { margin-top: 24px; }
  .focus-section .focus-bottom p { font-size: 16px; }
  .focus-section .authority-grid { grid-template-columns: 1fr; margin-top: 32px; gap: 0; }
  .focus-section .authority-grid li { padding-block: 24px; }
  .focus-section .authority-grid li:before { font-size: 23px; margin: 3px 0 0; }
  .focus-section .authority-grid li:last-child { padding: 24px 20px; }
  .faq-list { margin-top: 32px; }
  .faq-list summary { font-size: 16px; padding-block: 22px; }
  .closing-sequence .final-panel { padding-block: 40px; }
  .final-panel h2 { font-size: clamp(34px,9.6vw,44px); }
  .final-panel .final-bottom p { font-size: 16px; }
  .footer { padding-block: 32px; }
}
@media (max-width:380px) {
  .results-grid article { grid-template-columns: 96px minmax(0,1fr); gap: 5px 16px; }
  .results-grid .result-range { font-size: 42px; }
  .results-grid h3 { font-size: 18px; }
}

/* A distinct closing invitation, separated from the FAQ. */
.reality > .wrap { display:grid; grid-template-columns:1fr 1.15fr; gap:72px; align-items:start; }
.reality-heading { display:block; }
.reality h2 { font-size:clamp(38px,3.8vw,58px); }
.reality-intro { margin-top:28px; max-width:390px; }
.pain-grid { grid-template-columns:repeat(2,minmax(0,1fr)); margin:0; gap:32px; }
.pain-grid article { padding-top:24px; }
.pain-grid article:before { color:#a64b25; }
.pain-grid h3 { font-size:20px; }
.system-section .section-heading { align-items:end; }
.services { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:0; border:1px solid #55402f; border-radius:16px; overflow:hidden; background:#17120e; }
.services article,.services article:first-child,.services article:last-child { display:flex; flex-direction:column; padding:32px; border:0; border-right:1px solid #55402f; background:linear-gradient(150deg,#ff9a4d08,transparent 65%); }
.services article:last-child { border-right:0; }
.services .service-number { margin:0 0 44px; max-width:none; font-size:11px; }
.system-section .service-signal { align-self:auto; font-size:clamp(31px,3.2vw,46px); max-width:310px; min-height:110px; margin-bottom:28px; }
.services h3 { margin:0 0 14px; font-size:16px; }
.services p { margin:0; }
.system-handoff { justify-content:center; }
.method { grid-template-columns:1fr 1.1fr; gap:84px; }
.steps { padding:30px 32px; border:1px solid #cdc8bd; border-radius:16px; background:#ffffff50; }
.steps li>span { background:#f8f7f3; border-color:#b85b2d; }
.steps li:not(:last-child):after { border-color:#c9b7a7; }
.steps li:not(:last-child) { padding-bottom:34px; }
.results-section { background:radial-gradient(ellipse at 50% 100%,#7c351a30,transparent 70%),#0c0c0c; }
.results-heading { text-align:center; }
.results-heading h2 { margin-inline:auto; max-width:900px; }
.results-grid { border-block:1px solid #5a4330; padding-block:36px; gap:0; }
.results-grid article { border:0; padding:0 32px; text-align:center; }
.results-grid article+article { border-left:1px solid #5a4330; }
.results-note { text-align:center; margin-inline:auto; }
.focus-section .authority-grid { gap:0 32px; }
.focus-section .authority-grid li { padding:28px 0; }
.focus-section .authority-grid li:before { font-family:Manrope,sans-serif; font-size:12px; font-weight:800; letter-spacing:.08em; }
.focus-section .authority-grid li:last-child { margin-block:0; padding:28px; border-radius:12px; }
.focus-section .authority-grid li:last-child:before { font-size:12px; }
.faq-list { border:1px solid #3c322a; border-radius:14px; overflow:hidden; background:#ffffff02; }
.faq-list details,.faq-list details:first-child { border:0; border-bottom:1px solid #3c322a; }
.faq-list details:last-child { border-bottom:0; }
.faq-list summary { padding:24px 62px 24px 24px; }
.faq-list summary:after { right:24px; }
.faq-list details p { padding:0 62px 24px 24px; }
.faq-list details[open] { background:#ff9b4d08; }
@media(max-width:1100px) {
  .reality > .wrap { gap:40px; grid-template-columns:1fr 1fr; }
  .pain-grid { grid-template-columns:1fr; gap:24px; }
  .pain-grid article:before { float:left; font-size:22px; margin:4px 18px 0 0; }
  .pain-grid article p { margin-top:12px; }
  .services article,.services article:first-child,.services article:last-child { padding:26px 22px; }
  .system-section .service-signal { min-height:108px; font-size:32px; }
  .services h3 { min-height:44px; }
  .method { gap:40px; }
  .steps { padding:26px 22px; }
  .results-grid article { padding-inline:20px; }
}
@media(max-width:700px) {
  .reality > .wrap { display:block; }
  .reality h2 { font-size:var(--section-title); }
  .reality-intro { margin-top:24px; }
  .pain-grid { margin-top:32px; gap:0; }
  .pain-grid article:before { float:none; margin:0; font-size:24px; }
  .services { grid-template-columns:1fr; border-radius:12px; }
  .services article,.services article:first-child,.services article:last-child { padding:28px 24px; border:0; border-bottom:1px solid #55402f; }
  .services article:last-child { border-bottom:0; }
  .services .service-number { margin-bottom:22px; }
  .services h3 { min-height:0; }
  .system-section .service-signal { min-height:0; font-size:32px; margin-bottom:22px; }
  .method { display:block; }
  .steps { padding:26px 22px; margin-top:36px; border-radius:12px; }
  .steps li,.steps li:last-child { gap:16px; }
  .steps h3 { font-size:19px; }
  .steps p { font-size:15px; }
  .results-heading { text-align:left; }
  .results-grid { border:0; padding:0; }
  .results-grid article,.results-grid article+article { text-align:left; border:0; border-top:1px solid #5a4330; padding:24px 0; }
  .results-note { text-align:left; }
  .focus-section .authority-grid li { padding:24px 0; }
  .focus-section .authority-grid li:before,.focus-section .authority-grid li:last-child:before { font-size:12px; margin-top:7px; }
  .focus-section .authority-grid li:last-child { margin-top:8px; padding:24px 20px; }
  .faq-list summary { padding:22px 52px 22px 18px; }
  .faq-list summary:after { right:17px; top:23px; }
  .faq-list details p { padding:0 18px 24px; }
}
.closing-sequence { background: #080808; }
.closing-sequence .faq { padding-bottom: clamp(64px,7vw,100px); }
.closing-sequence .final-section {
  position: relative;
  padding: clamp(48px,5vw,72px) 0 clamp(64px,7vw,100px);
  border-top: 1px solid #ffffff14;
  background: #080808;
}
.closing-sequence .final-panel {
  position: relative;
  overflow: hidden;
  padding: clamp(52px,6vw,84px) clamp(24px,6vw,86px);
  border: 1px solid #373737;
  border-top: 3px solid var(--orange);
  border-radius: 16px;
  background: #101010;
  box-shadow: none;
  text-align: left;
}
.final-panel .eyebrow {
  display: inline-block;
  padding: 0;
  border: 0;
  border-radius: 0;
  color: var(--orange);
  font-size: 12px;
  letter-spacing: .25em;
  margin-bottom: 28px;
}
.final-panel h2 { max-width: 940px; margin-inline: 0; text-wrap: balance; line-height: 1.18; }
.closing-sequence .final-panel h2 .final-highlight { color: #080808; background: var(--orange); padding: 0 .08em .06em; box-decoration-break: clone; -webkit-box-decoration-break: clone; white-space: nowrap; }
.final-panel .final-bottom { gap: 36px; flex-direction: row; justify-content: space-between; align-items: center; }
.final-panel .final-bottom p { max-width: 530px; color: #bcbcbc; }
.final-panel .final-bottom .button { flex-shrink: 0; }
.final-panel .button { min-height: 60px; padding-inline: 32px; }
.final-panel .final-note { color: #aaa; margin: 22px 0 0; max-width: 530px; }
@media (max-width:1000px) { .final-panel .final-bottom { flex-direction:column; align-items:flex-start; } }
@media (max-width:700px) {
  .closing-sequence .faq { padding-bottom: 56px; }
  .closing-sequence .final-section { padding-block: 36px 56px; }
  .closing-sequence .final-panel { padding: 40px 24px; border-radius: 12px; }
  .final-panel .eyebrow { margin-bottom: 24px; font-size: 9px; }
  .final-panel .final-bottom { gap: 24px; }
  .final-panel .button { min-height: 54px; font-size: 15px; padding-inline: 18px; }
}

/* Verified social proof, using type rather than invented portraits or ratings. */
.brand-heading { display:flex; align-items:center; justify-content:space-between; gap:16px; padding-right:68px; margin-bottom:20px; }
.brand-heading h2 { margin:0; padding:0; }
.consultant-proof { font-size:12px; line-height:1.5; color:#bcbcbc; }
.consultant-proof strong { color:#ff9b61; font-weight:800; }
.hero-action .consultant-proof { font-size:12px; color:#ccc; margin-top:14px; line-height:1.5; text-align:center; }
.hero-action .consultant-proof+p { margin-top:5px; }
@media(min-width:701px) and (max-height:800px) {
  .hero-inner { padding-top:18px; padding-bottom:18px; gap:14px; }
  .hero-bottom { margin-top:18px; }
  .brand-heading { margin-bottom:10px; }
}

.final-proof { display:flex; align-items:center; gap:22px; padding-top:26px; margin-top:32px; border-top:1px solid #333; }
.final-proof>strong { font-family:Anton,sans-serif; color:var(--orange); font-size:52px; font-weight:400; letter-spacing:-.025em; line-height:1; }
.final-proof p { font-size:15px; font-weight:700; line-height:1.6; color:#fafafa; }
.final-proof p span { color:#aaa; font-weight:400; }
.final-panel .final-note { font-size:12px; line-height:1.7; max-width:560px; margin-top:20px; }
.services { border-color:#3f3730; background:#121110; }
.services article,.services article:first-child,.services article:last-child { border-color:#3f3730; background:linear-gradient(150deg,#ff9a4d05,transparent 65%); }
.faq-list { background:#101010; border-color:#333; }
.faq-list details,.faq-list details:first-child { border-color:#333; }
.focus-section .authority-grid h3 { letter-spacing:-.025em; }
.results-grid .result-range { font-variant-numeric:tabular-nums; }
@media(max-width:700px) {
  .brand-heading { flex-direction:column; align-items:flex-start; gap:12px; padding-right:0; margin-bottom:16px; }
  .brand-heading .consultant-proof { order:-1; font-size:12px; }
  
  .brand-heading h2 { padding-right:55px; }
  .final-proof { gap:18px; margin-top:28px; padding-top:24px; }
  .final-proof>strong { font-size:46px; }
  .final-proof p { font-size:14px; }
}

}
@layer layout {
/* Shared art direction: warm paper, orange accents and soft light on black. */
:root {
  --sw-dark:#080808; --sw-light:#f7f5ee; --sw-muted:#bdb8af;
  --sw-accent:#ff985f; --sw-accent-ink:#a34118;
  --sw-rule-dark:#ffffff25; --sw-radius:6px;
  --sw-heading:clamp(40px,4.65vw,70px);
}
.wrap,.header,.hero-inner { max-width:1440px; width:100%; margin-inline:auto; padding-inline:clamp(22px,6vw,88px); }
.header { background:var(--sw-dark); }
.hero {
  background:radial-gradient(ellipse at 96% 25%,#ff681d25,transparent 59%),var(--sw-dark);
}
.hero h1 { letter-spacing:-.025em; }
.hero-description { color:var(--sw-light); }
.hero .eyebrow { color:var(--sw-accent); }
.button,.header .button,.hero .button,.redesign .button { border-radius:var(--sw-radius); }
.hero .button,.redesign .button {
  min-height:60px; padding:16px 28px; gap:20px;
  font:400 23px/1.25 Anton,Impact,sans-serif; letter-spacing:.005em;
  border:1px solid var(--orange); background:var(--orange); color:#101010;
  box-shadow:0 3px 0 #963708;
}
.header .button { min-height:46px; font-size:13px; border-color:#a94b22; }
.hero .button>span,.redesign .button>span { font-family:Manrope,sans-serif; }
.menu-toggle { border-radius:var(--sw-radius); }
.hero-action { min-width:300px; }
.hero-action>p:not(.consultant-proof) { margin-top:10px; color:var(--sw-muted); }
.brand-section h2 { color:var(--sw-muted); }
.hero .button:focus-visible,.system-section .button:focus-visible { outline:3px solid #fff; outline-offset:5px; }
@media(max-width:700px) {
  .hero-action { min-width:0; }
  .hero .button,.redesign .button { min-height:56px; font-size:22px; }
  .hero .eyebrow { font-size:9px; letter-spacing:.14em; }
}
.redesign { --paper:#f4f1eb; --ink:#181511; --quiet:#605a51; --rule:#d5cec2; --space:clamp(80px,8vw,120px); }
.redesign.section,.redesign .section { padding-block:var(--space); }
.redesign h2 { font-family:Anton,Impact,sans-serif; font-weight:400; letter-spacing:-.015em; font-size:var(--sw-heading); line-height:1.12; text-wrap:balance; }
.redesign h3 { font-family:Manrope,sans-serif; font-weight:750; letter-spacing:-.035em; line-height:1.3; }
.redesign .eyebrow { font-size:11px; letter-spacing:.2em; line-height:1.6; margin:0 0 26px; }


/* The problem reads as a short editorial, with a precise list alongside it. */
.reality.redesign { background:radial-gradient(ellipse at 0 100%,#ffbe8522,transparent 60%),var(--paper); color:var(--ink); }
.reality.redesign>.wrap { display:grid; grid-template-columns:1.05fr 1fr; gap:clamp(48px,7vw,100px); align-items:start; }
.redesign .reality-heading { display:block; }
.redesign .reality-heading h2 { font-size:var(--sw-heading); }
.redesign .reality-intro { font-size:18px; line-height:1.7; margin-top:28px; max-width:420px; color:var(--quiet); }
.redesign .pain-grid { display:block; margin:0; }
.redesign .pain-grid article { border-top:1px solid var(--rule); display:grid; grid-template-columns:40px 1fr; gap:12px 24px; padding:25px 0; }
.redesign .pain-grid article:first-child { border-top:2px solid var(--ink); }
.redesign .pain-grid article:last-child { border-bottom:1px solid var(--rule); }
.redesign .pain-grid article:before { position:static; float:none; grid-column:1; grid-row:1/3; margin:3px 0 0; font:400 27px/1 Anton,sans-serif; color:var(--sw-accent-ink); }
.redesign .pain-grid h3 { grid-column:2; margin:0; font-size:22px; }
.redesign .pain-grid p { grid-column:2; margin:0; font-size:15px; line-height:1.7; color:var(--quiet); }

/* One open system, three clearly connected stages. */
.system-section.redesign { background:radial-gradient(ellipse at 100% 30%,#ff681d1c,transparent 58%),var(--sw-dark); color:var(--sw-light); }
.redesign .section-heading { display:grid; grid-template-columns:1.45fr 1fr; gap:clamp(48px,7vw,100px); align-items:end; margin-bottom:64px; }
.redesign .section-heading>p { font-size:18px; line-height:1.7; max-width:400px; color:var(--sw-muted); margin:0 0 5px; }
.redesign .services { display:block; border:0; border-radius:0; overflow:visible; background:none; }
.redesign .services article,.redesign .services article:first-child,.redesign .services article:last-child { display:grid; grid-template-columns:110px 1.2fr 1fr; grid-template-rows:auto auto; gap:12px 44px; padding:36px 0; border:0; border-top:1px solid var(--sw-rule-dark); background:none; }
.redesign .services article:last-child { border-bottom:1px solid var(--sw-rule-dark); }
.redesign .services .service-number { grid-column:1; grid-row:1/3; font-size:10px; letter-spacing:.12em; max-width:105px; margin:7px 0 0; color:var(--sw-accent); }
.redesign .services .service-signal { grid-column:2; grid-row:1/3; align-self:center; min-height:0; max-width:380px; font-size:clamp(32px,3.5vw,52px); margin:0; line-height:1.13; }
.redesign .services h3 { grid-column:3; min-height:0; margin:0; font-size:16px; color:var(--sw-accent); }
.redesign .services p { grid-column:3; margin:0; font-size:16px; line-height:1.7; color:var(--sw-muted); }
.redesign .system-handoff { margin-top:36px; padding:0; justify-content:flex-end; }

/* A horizontal four-step route on desktop, a connected list on mobile. */
.method-section.redesign { background:radial-gradient(ellipse at 100% 0,#ffbe8522,transparent 60%),var(--paper); color:var(--ink); border:0; }
.redesign .method { display:block; }
.redesign .method-intro { display:grid; grid-template-columns:1.45fr 1fr; column-gap:clamp(48px,7vw,100px); align-items:end; position:static; }
.redesign .method-intro .eyebrow { grid-column:1/-1; }
.redesign .method-intro h2 { grid-column:1; grid-row:2/4; }
.redesign .method-intro>p:not(.eyebrow) { grid-column:2; margin:0 0 22px; font-size:18px; line-height:1.7; max-width:400px; color:var(--quiet); }
.redesign .method-intro .button { grid-column:2; justify-self:start; width:auto; margin:0; }
.redesign .steps { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:0; padding:0; margin:64px 0 0; border:0; border-radius:0; background:none; }
.redesign .steps li,.redesign .steps li:last-child { display:block; padding:0 28px 0 0; border:0; }
.redesign .steps li:after { display:none; }
.redesign .steps li>span { display:block; position:relative; margin-bottom:27px; width:100%; height:auto; padding:0 0 22px; border:0; border-bottom:1px solid var(--rule); border-radius:0; background:none; font:400 44px/1 Anton,sans-serif; color:var(--sw-accent-ink); text-align:left; }
.redesign .steps li>div { padding:0; }
.redesign .steps h3 { font-size:22px; margin:0; }
.redesign .steps p { margin-top:13px; font-size:15px; line-height:1.7; color:var(--quiet); }

/* Results become the visual punctuation in the middle of the page. */
.results-section.redesign { background:var(--orange); color:#15120f; }
.redesign .results-heading { text-align:left; }
.redesign .results-heading>div { display:grid; grid-template-columns:1fr 2.1fr; gap:44px; }
.redesign .results-heading .eyebrow { color:#44200d; margin-top:8px; }
.redesign .results-heading h2 { max-width:850px; margin:0; font-size:clamp(37px,4.3vw,64px); }
.redesign .results-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:0; border:0; padding:0; margin-top:64px; }
.redesign .results-grid article,.redesign .results-grid article+article { display:block; border:0; border-left:1px solid #59290f66; padding:0 36px; text-align:left; }
.redesign .results-grid article:first-child { padding-left:0; border-left:0; }
.redesign .results-grid article:last-child { padding-right:0; }
.redesign .result-range { font-size:clamp(86px,10.5vw,158px); color:#18120e; line-height:1.1; letter-spacing:-.045em; margin:0 0 24px; white-space:nowrap; }
.redesign .results-grid h3 { font-size:22px; margin:0 0 10px; }
.redesign .result-detail { font-size:14px; color:#3b2415; }
.redesign .results-note { max-width:780px; text-align:left; color:#3b2415; margin:40px 0 0; font-size:12px; }

/* Authority is calm and dark; the guarantee provides the accent. */
.focus-section.redesign { padding-block:var(--space); background:radial-gradient(ellipse at 0 10%,#ff681d1c,transparent 60%),var(--sw-dark); color:var(--sw-light); }
.focus-section.redesign>.wrap { display:grid; grid-template-columns:1.45fr 1fr; gap:0 clamp(48px,7vw,100px); }
.redesign .focus-top { grid-column:1/-1; margin-bottom:26px; }
.redesign .focus-top .eyebrow { color:var(--sw-accent); margin:0; }
.focus-section.redesign h2 { position:static; font-size:var(--sw-heading); max-width:780px; grid-column:1; grid-row:2; }
.redesign .focus-bottom { grid-column:2; grid-row:2; border:0; margin:0; padding:0; align-self:end; }
.redesign .focus-bottom p { font-size:18px; color:var(--sw-muted); line-height:1.7; }
.focus-section.redesign .authority-grid { grid-column:1/-1; grid-row:3; margin-top:60px; grid-template-columns:repeat(3,minmax(0,1fr)); gap:0 36px; }
.focus-section.redesign .authority-grid li { display:block; border-top:1px solid var(--sw-rule-dark); padding:28px 0 36px; }
.focus-section.redesign .authority-grid li:before { position:static; font:700 11px/1.5 Manrope,sans-serif; color:var(--sw-accent); margin:0 0 22px; }
.focus-section.redesign .authority-grid h3 { font-size:22px; color:var(--sw-light); margin:0 0 14px; }
.focus-section.redesign .authority-grid p { font-size:16px; color:var(--sw-muted); line-height:1.7; }
.focus-section.redesign .authority-grid li:last-child { background:none; border-top:1px solid var(--sw-rule-dark); border-radius:0; margin:0; padding:28px 0 36px; }
.focus-section.redesign .authority-grid li:last-child:before,.focus-section.redesign .authority-grid li:last-child h3 { color:var(--sw-accent); }
.focus-section.redesign .authority-grid li:last-child p { color:var(--sw-muted); }

/* FAQ is a quiet paper section before the last invitation. */
.closing-sequence.redesign { background:radial-gradient(ellipse at 0 0,#ffbe8522,transparent 45%),var(--paper); color:var(--ink); }
.redesign .faq { display:grid; grid-template-columns:1fr 1.15fr; gap:clamp(48px,7vw,100px); padding-block:var(--space); background:none; }
.redesign .faq .eyebrow { color:#aa461b; }
.redesign .faq h2 { max-width:430px; }
.redesign .faq-list { border:0; border-radius:0; background:none; }
.redesign .faq-list details,.redesign .faq-list details:first-child { border:0; border-top:1px solid #c6c3b7; border-radius:0; background:none; }
.redesign .faq-list details:last-child { border-bottom:1px solid #c6c3b7; }
.redesign .faq-list summary { color:#22221d; padding:24px 44px 24px 0; font-size:16px; }
.redesign .faq-list summary:after { right:0; top:24px; color:#8b3817; border-color:#aa8f79; }
.redesign .faq-list summary:focus-visible { outline-color:#963915; outline-offset:-3px; }
.redesign .faq-list details[open] summary { color:#a3431b; }
.redesign .faq-list details p { color:#57574f; padding:0 35px 25px 0; line-height:1.75; }
/* A full-width, direct invitation, inspired by King Kong's closing section. */
.redesign .final-section.final-invitation {
  position:relative; isolation:isolate; overflow:clip; border:0;
  padding:clamp(90px,9vw,140px) 0 clamp(78px,7vw,112px);
  background:radial-gradient(ellipse at 50% 115%,#ff681d36,transparent 67%),radial-gradient(ellipse at 100% 0,#ff681d12,transparent 48%),var(--sw-dark);
  color:#f7f5ee; color-scheme:dark;
}

.final-invitation .final-content { position:relative; text-align:center; }
.redesign .final-invitation .eyebrow { color:#d5c8bb; margin:0 0 30px; }
.redesign .final-invitation h2 {
  font-size:clamp(58px,7.4vw,112px); line-height:1.13; letter-spacing:-.025em;
  max-width:1140px; margin:0 auto; text-wrap:balance;
}
.final-heading-line,.final-accent { display:block; }
.final-accent { color:var(--sw-accent); }
.final-invitation .final-description {
  max-width:610px; margin:28px auto 0; font-size:18px; line-height:1.75; color:var(--sw-muted);
}
.final-action { position:relative; max-width:570px; margin:38px auto 0; }
.redesign .final-invitation .button {
  width:100%; min-height:84px; justify-content:center; gap:30px; padding:20px 34px;
  border:1px solid #ff8b47; border-radius:6px; background:var(--orange); color:#101010;
  font:400 clamp(25px,2.5vw,34px)/1.2 Anton,Impact,sans-serif;
  letter-spacing:.005em; box-shadow:0 5px 0 #923509;
  transition:background-color 180ms var(--ease-out),transform 180ms var(--ease-out),box-shadow 180ms var(--ease-out);
}
.final-invitation .button>span { font-family:Manrope,sans-serif; font-size:34px; }
.final-invitation .button:focus-visible { outline:3px solid #fff; outline-offset:7px; }
.final-swoop { position:absolute; width:145px; height:127px; left:calc(100% + 24px); bottom:20px; color:#ff8b47; pointer-events:none; }
.final-invitation .final-trust { display:flex; justify-content:center; align-items:center; gap:12px; margin:32px auto 0; }
.final-trust strong { font:400 36px/1 Anton,Impact,sans-serif; color:#f7f5ee; }
.final-trust span { text-align:left; font-size:12px; line-height:1.5; color:#c7c4bc; }
.final-invitation .final-followup { max-width:540px; margin:24px auto 0; font-size:12px; line-height:1.7; color:#a9a69d; }
@media(hover:hover) and (pointer:fine) {
  .redesign .final-invitation .button:hover { background:#ff874b; transform:translateY(-2px); box-shadow:0 7px 0 #923509; }
}
.redesign .final-invitation .button:active { transform:translateY(3px); box-shadow:0 2px 0 #923509; }
@media(max-width:1100px) { .final-swoop { display:none; } }
@media(max-width:700px) {
  .redesign .final-section.final-invitation { padding-block:72px 64px; }
  .redesign .final-invitation .eyebrow { font-size:9px; margin-bottom:26px; letter-spacing:.15em; }
  .redesign .final-invitation h2 { font-size:clamp(36px,10.4vw,66px); line-height:1.15; }
  .final-invitation .final-description { font-size:16px; line-height:1.7; margin-top:25px; max-width:450px; }
  .final-action { margin-top:30px; max-width:450px; }
  .redesign .final-invitation .button { min-height:72px; padding:18px 20px; gap:20px; font-size:27px; }
  .final-invitation .button>span { font-size:28px; }
  .final-invitation .final-followup { max-width:330px; }
}
@media(max-width:360px) {
  .redesign .final-invitation h2 { font-size:32px; }
  .redesign .final-invitation .button { font-size:24px; gap:16px; }
}
@media(prefers-reduced-motion:reduce) {
  .redesign .final-invitation .button { transition:none; }
}
.footer { border-top:1px solid #292929; padding-block:40px; }

/* Social proof shares the same accent and type as the closing invitation. */
.hero-message { position:relative; }
.hero-action .consultant-proof { display:flex; justify-content:center; align-items:center; gap:12px; text-align:left; font-size:11px; line-height:1.45; margin:12px 0 0; }
.hero-action .consultant-proof strong { font:400 30px/1 Anton,sans-serif; color:var(--sw-accent); }
.hero-action .consultant-proof span { color:var(--sw-muted); }
@media(min-width:1101px) {
  .hero-action .consultant-proof { position:absolute; right:8px; top:10%; display:block; padding-left:20px; border-left:1px solid #71452b; margin:0; }
  .hero-action .consultant-proof strong { display:block; font-size:52px; margin-bottom:8px; }
  .hero-action .consultant-proof span { display:block; font-size:12px; }
}
@media(max-width:1100px) {
  .reality.redesign>.wrap { gap:44px; }
  .redesign .section-heading { gap:36px; }
  .redesign .services article,.redesign .services article:first-child,.redesign .services article:last-child { grid-template-columns:80px 1fr 1fr; gap:12px 28px; }
  .redesign .method-intro { gap:0 40px; }
  .redesign .steps { grid-template-columns:repeat(2,minmax(0,1fr)); gap:36px; }
  .redesign .steps li,.redesign .steps li:last-child { padding:0; }
  .focus-section.redesign>.wrap { column-gap:40px; }
  .focus-section.redesign .authority-grid { grid-template-columns:repeat(2,minmax(0,1fr)); gap:0 28px; }
  .redesign .faq { gap:40px; }
}
@media(min-width:701px) and (max-width:900px) {
  .redesign .method-intro { display:block; }
  .redesign .method-intro h2 { max-width:600px; }
  .redesign .method-intro>p:not(.eyebrow) { max-width:560px; margin:24px 0; }
  .redesign .method-intro .button { width:auto; }
}
@media(max-width:700px) {
  .redesign { --space:64px; }
  .redesign h2,.redesign .reality-heading h2,.redesign .results-heading h2,.focus-section.redesign h2 { font-size:clamp(33px,9.2vw,43px); line-height:1.16; }
  .redesign .eyebrow { font-size:10px; margin-bottom:22px; }
  .reality.redesign>.wrap,.redesign .section-heading,.redesign .method-intro,.redesign .results-heading>div,.focus-section.redesign>.wrap,.redesign .faq { display:block; }
  .redesign .reality-intro,.redesign .section-heading>p,.redesign .method-intro>p:not(.eyebrow) { font-size:16px; margin:24px 0 0; }
  .redesign .pain-grid { margin-top:32px; }
  .redesign .pain-grid article { grid-template-columns:28px 1fr; gap:10px 16px; padding:24px 0; }
  .redesign .pain-grid h3 { font-size:20px; }
  .redesign .pain-grid article:before { font-size:23px; }
  .redesign .section-heading { margin-bottom:36px; }
  .redesign .services article,.redesign .services article:first-child,.redesign .services article:last-child { display:block; padding:28px 0; }
  .redesign .services .service-number { margin:0 0 18px; max-width:none; }
  .redesign .services .service-signal { font-size:34px; margin:0 0 22px; max-width:none; }
  .redesign .services h3 { margin-bottom:10px; }
  .redesign .system-handoff { margin-top:28px; }
  .redesign .method-intro .button { margin-top:26px; width:100%; }
  .redesign .steps { display:block; margin-top:40px; }
  .redesign .steps li,.redesign .steps li:last-child { display:grid; grid-template-columns:44px 1fr; gap:20px; border-top:1px solid var(--rule); padding:24px 0; }
  .redesign .steps li>span { font-size:32px; width:auto; padding:0; margin:0; border:0; }
  .redesign .steps h3 { font-size:21px; }
  .redesign .steps p { margin-top:10px; }
  .redesign .results-heading .eyebrow { margin-top:0; }
  .redesign .results-grid { display:block; margin-top:36px; }
  .redesign .results-grid article,.redesign .results-grid article+article,.redesign .results-grid article:first-child,.redesign .results-grid article:last-child { display:grid; grid-template-columns:115px minmax(0,1fr); gap:8px 20px; padding:25px 0; border:0; border-top:1px solid #6b351950; }
  .redesign .results-grid .result-range { grid-column:1; grid-row:1/3; font-size:55px; margin:0; align-self:center; }
  .redesign .results-grid h3 { grid-column:2; margin:0; font-size:19px; }
  .redesign .result-detail { grid-column:2; font-size:13px; }
  .redesign .results-note { margin-top:22px; }
  .redesign .focus-top { margin-bottom:22px; }
  .redesign .focus-bottom { margin-top:24px; }
  .redesign .focus-bottom p { font-size:16px; }
  .focus-section.redesign .authority-grid { grid-template-columns:1fr; margin-top:36px; gap:0; }
  .focus-section.redesign .authority-grid li { display:grid; grid-template-columns:26px 1fr; gap:10px 18px; padding:24px 0; }
  .focus-section.redesign .authority-grid li:before { grid-column:1; grid-row:1/3; margin:6px 0 0; }
  .focus-section.redesign .authority-grid h3 { grid-column:2; margin:0; font-size:21px; min-height:0; }
  .focus-section.redesign .authority-grid p { grid-column:2; }
  .focus-section.redesign .authority-grid li:last-child { margin:0; padding:24px 0; border-radius:0; }
  .redesign .faq-list { margin-top:32px; }
  .redesign .faq-list summary { padding:22px 40px 22px 0; }
  .redesign .faq-list summary:after { top:23px; }
}
@media(max-width:380px) {
  .redesign .results-grid article,.redesign .results-grid article+article,.redesign .results-grid article:first-child,.redesign .results-grid article:last-child { grid-template-columns:94px minmax(0,1fr); gap:8px 16px; }
  .redesign .results-grid .result-range { font-size:45px; }
  .redesign .results-grid h3 { font-size:18px; }
}

/* Audit refinements: readable columns, stable dialogs and clear input states. */
html { scrollbar-gutter:stable; }
.focus-section.redesign { color-scheme:dark; }
.closing-sequence.redesign { color-scheme:light; }
.redesign .pain-grid p,.redesign .steps p,.focus-section.redesign .authority-grid p { font-size:16px; }

.redesign .faq-list summary { transition:color 180ms var(--ease-out); }
.redesign .faq-list details { padding-inline:16px; margin-inline:-16px; }
.redesign .faq-list summary:after { content:'+' / ''; }
.redesign .faq-list details[open] summary:after { content:'−' / ''; }
.redesign .faq-list details[open] { background:#eae7dd; }
.redesign .faq-list details p { max-width:65ch; }
.redesign .faq-intro { color:#595951; font-size:16px; line-height:1.75; max-width:340px; margin-top:26px; }
.footer a:not(.wordmark) { display:inline-flex; align-items:center; min-height:44px; }
.footer a:not(.wordmark):focus-visible { outline-offset:2px; }
.button:active:not(:disabled) { transform:translateY(1px); }
.menu-toggle[aria-expanded=true] { border-color:var(--sw-accent); background:#ff985f12; }
.mobile-menu a { border-radius:6px; }
@media (hover:hover) and (pointer:fine) {
  .redesign .faq-list summary:hover { color:#a3431b; }
  .footer a:not(.wordmark):hover { color:var(--sw-accent); }
  .mobile-menu a:hover { background:#ffffff08; }
}

dialog { border-color:#46423d; border-radius:16px; background:#141413; padding:40px; }
dialog .form-brand { margin-bottom:32px; }
dialog h2 { letter-spacing:-.04em; }
dialog .form-description { font-size:14px; line-height:1.65; color:#b7b6ae; }
dialog .form-progress { font-size:11px; color:#b7b6ae; }
dialog .form-note { line-height:1.65; font-size:12px; color:#aaa9a3; }
dialog .close-dialog { border-radius:50%; color:#d5d4cc; background:#ffffff08; }
dialog .field label { display:inline-block; }
dialog .field input,dialog .field select { min-height:54px; border-radius:8px; border-color:#62625b; background:#0c0c0b; }
dialog .choice { border-radius:8px; min-height:56px; padding:16px; border-color:#62625b; }
dialog .choice:has(input:checked) { border-color:var(--sw-accent); background:#ff985f12; }
dialog .choice:focus-within { outline:2px solid #ff985f; outline-offset:3px; }
dialog .choice input:focus-visible { outline:none; }
dialog [aria-invalid=true] { border-color:#ffb98d; }
dialog .choice:has([aria-invalid=true]) { border-color:#ffb98d; }
dialog .field-error { color:#ffc6a3; font-size:13px; line-height:1.5; font-weight:500; margin-top:9px; }
dialog .form-error { border-left:2px solid #ff985f; background:#ff985f0a; padding:12px 14px; }
dialog .form-actions { align-items:center; gap:20px; margin-top:26px; }
dialog .back-button { min-width:64px; text-align:left; color:#c6c5bd; }
dialog .form-actions .button { min-width:160px; }
dialog .privacy-check { font-size:13px; line-height:1.6; }
dialog .privacy-check a { text-underline-offset:3px; }
#form-status p { color:#b7b6ae; margin:16px 0 24px; }
@media (hover:hover) and (pointer:fine) {
  dialog .close-dialog:hover { background:#ffffff14; color:#fff; }
  dialog .choice:hover { border-color:#c0a18b; }
  dialog .back-button:hover { color:#fff; }
}

@media(min-width:701px) and (max-width:900px) {
  .reality.redesign>.wrap { grid-template-columns:1fr; gap:40px; }
  .redesign .reality-heading h2 { max-width:660px; }
  .redesign .reality-intro { max-width:560px; }
  .redesign .pain-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:0 32px; }
  .redesign .pain-grid article:nth-child(2) { border-top:2px solid var(--ink); }
  .redesign .pain-grid article:nth-last-child(2) { border-bottom:1px solid var(--rule); }
  .redesign .section-heading { display:block; margin-bottom:44px; }
  .redesign .section-heading>p { max-width:560px; margin:24px 0 0; }
  .redesign .services article,.redesign .services article:first-child,.redesign .services article:last-child { grid-template-columns:1fr 1fr; gap:14px 36px; }
  .redesign .services .service-number { grid-column:1; grid-row:1; max-width:none; margin:0; }
  .redesign .services .service-signal { grid-column:1; grid-row:2; align-self:start; }
  .redesign .services h3 { grid-column:2; grid-row:1; }
  .redesign .services p { grid-column:2; grid-row:2; }
  .focus-section.redesign>.wrap { display:block; }
  .redesign .focus-bottom { margin-top:24px; max-width:560px; }
  .redesign .faq { display:block; }
  .redesign .faq h2 { max-width:600px; }
  .redesign .faq-list { margin-top:36px; }
}
@media(max-width:700px) {
  dialog { padding:30px 22px 26px; max-height:calc(100dvh - 24px - env(safe-area-inset-top) - env(safe-area-inset-bottom)); }
  dialog .form-brand { margin-bottom:26px; }
  dialog .form-actions .button { min-width:0; flex:1; }
  dialog .form-actions { gap:16px; }
  dialog .field { margin-bottom:20px; }
  dialog .close-dialog { right:12px; top:12px; }
  .redesign .faq-list details p { padding-right:15px; }
}

/* Results: the approved orange section, with a clear sequence of indicators. */
.sr-only { position:absolute; width:1px; height:1px; padding:0; margin:-1px; overflow:hidden; clip-path:inset(50%); white-space:nowrap; border:0; }
.results-section.results-story { background:radial-gradient(ellipse at 0 0,#ffc18b55,transparent 68%),var(--orange); color:#17120f; padding-block:var(--space); }
.results-stage { display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1.14fr); gap:0 clamp(40px,6vw,88px); color-scheme:light; }
.results-intro { display:flex; flex-direction:column; align-items:flex-start; padding-top:6px; }
.results-story .eyebrow { color:#3b2415; }
.results-story h2 { font-size:var(--sw-heading); line-height:1.12; text-wrap:initial; letter-spacing:-.018em; max-width:520px; }
.results-story h2 span { display:block; }
.results-description { color:#3b2415; font-size:17px; line-height:1.75; max-width:360px; margin-top:28px; }
.results-context { display:flex; gap:14px; max-width:320px; margin-top:auto; padding-top:48px; font-size:13px; line-height:1.7; color:#3b2415; }
.results-context>span { color:#17120f; font-size:28px; line-height:1; flex-shrink:0; }
.results-period { display:flex; justify-content:space-between; gap:20px; border-bottom:1px solid #17120f80; padding-bottom:20px; font-size:10px; letter-spacing:.12em; text-transform:uppercase; color:#3b2415; }
.results-period>span:last-child { color:#17120f; }
.results-flow { list-style:none; padding:0; margin:0; }
.results-flow>li { display:flex; justify-content:space-between; align-items:center; gap:24px; border-bottom:1px solid #17120f40; padding:26px 0; }
.results-story .result-step { display:block; color:#3b2415; font-size:10px; font-weight:700; letter-spacing:.13em; margin-bottom:12px; }
.results-story .result-label h3 { font-size:20px; line-height:1.35; font-weight:650; letter-spacing:-.025em; }
.results-story .result-value { font:400 clamp(68px,6.4vw,94px)/1 Anton,Impact,sans-serif; letter-spacing:-.035em; color:#17120f; white-space:nowrap; font-variant-numeric:tabular-nums; flex-shrink:0; }
.results-flow>.result-destination { border-bottom:0; }
.result-destination .result-label>p { font-size:11px; color:#3b2415; margin-top:10px; }
.results-story .results-note { grid-column:1/-1; max-width:none; margin:40px 0 0; padding-top:24px; border-top:1px solid #17120f40; color:#3b2415; font-size:12px; line-height:1.8; text-align:left; }
.results-story .results-note strong { font-weight:650; color:#17120f; }
@media(min-width:701px) and (max-width:1100px) {
  .results-stage { grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr); gap:0 36px; }
  .results-story h2 { font-size:clamp(39px,5vw,52px); }
  .results-description { font-size:15px; }
  .results-story .result-value { font-size:62px; }
  .results-story .result-label h3 { font-size:17px; }
  .results-flow>li { gap:16px; }
}
@media(max-width:700px) {
  .results-section.results-story { padding-block:64px; }
  .results-stage { display:block; }
  .results-story h2 { font-size:clamp(36px,10vw,48px); line-height:1.12; }
  .results-description { margin-top:22px; font-size:15px; line-height:1.7; }
  .results-context { display:none; }
  .results-ledger { margin-top:32px; }
  .results-period { font-size:10px; gap:12px; padding-bottom:18px; letter-spacing:.04em; }
  .results-flow>li { padding-block:25px; gap:14px; }
  .results-story .result-step { font-size:9px; letter-spacing:.06em; margin-bottom:9px; }
  .results-story .result-label h3 { font-size:17px; }
  .results-story .result-value { font-size:clamp(47px,14vw,65px); }
  .result-destination .result-label>p { font-size:10px; max-width:150px; }
  .results-story .results-note { font-size:12px; margin-top:28px; padding-top:22px; }
}
@media(max-width:360px) {
  .results-story h2 { font-size:35px; }
  .results-story .result-value { font-size:43px; }
  .results-story .result-label h3 { font-size:15px; }
}

}
@layer layout {
/* Shared by the homepage and booking page. Keep footer styling in one place. */
.footer {
  box-sizing:border-box; display:flex; flex-direction:row; flex-wrap:nowrap;
  align-items:center; gap:30px; width:100%; max-width:1440px;
  margin:0 auto; padding:40px clamp(22px,6vw,88px);
  border:0; border-top:1px solid #292929; background:#080808; color:#fafafa;
  font:400 16px/1.65 Manrope,sans-serif; letter-spacing:normal;
}
.footer .wordmark { flex-shrink:0; font-size:24px; font-weight:800; line-height:1; letter-spacing:-.08em; }
.footer .original-logo { display:block; width:160px; height:auto; }
.footer>p { margin:0; color:#aaa; font-size:13px; }
.footer>div { display:flex; flex-direction:column; gap:6px; margin-left:auto; text-align:right; font-size:12px; }
.footer a { color:inherit; text-decoration:none; }
.footer a:not(.wordmark) { display:inline-flex; align-items:center; min-height:44px; }
.footer small { color:#aaa; font-size:11px; }
.footer a:focus-visible { outline:3px solid #ff985f; outline-offset:4px; }
.footer a:not(.wordmark):focus-visible { outline-offset:2px; }
@media(hover:hover) and (pointer:fine) {
  .footer a:not(.wordmark):hover { color:#ff985f; }
}
@media(max-width:1150px) {
  .footer { flex-wrap:wrap; }
  .footer>div { font-size:11px; }
}
@media(max-width:850px) {
  .footer>p { margin-left:auto; }
  .footer>div { width:100%; margin:0; text-align:left; }
}
@media(max-width:700px) {
  .footer { flex-direction:column; align-items:flex-start; gap:22px; }
  .footer .original-logo { width:150px; }
  .footer>div { gap:14px; }
}
@media(max-width:600px) {
  .footer>p { margin:0; width:100%; }
}

}
@layer layout {
/* FAQ: an editorial introduction and one clearly structured answer panel. */
.redesign .faq.faq-refresh {
  display:grid; grid-template-columns:minmax(0,.8fr) minmax(0,1.25fr);
  align-items:start; gap:clamp(48px,6.4vw,92px); padding-block:var(--space);
}
.faq-refresh .faq-heading { position:sticky; top:40px; padding-top:8px; }
.faq-refresh .faq-heading .eyebrow { display:flex; align-items:center; gap:12px; margin-bottom:24px; color:#98421e; }
.faq-refresh .faq-heading .eyebrow:before { content:''; display:block; width:26px; height:2px; margin:0; border:0; background:#c95c29; }
.redesign .faq-refresh h2 { max-width:450px; font-size:clamp(43px,4.5vw,66px); line-height:1.14; letter-spacing:-.022em; text-wrap:initial; }
.faq-refresh h2 span { display:block; }
.faq-refresh h2 .faq-title-accent { color:#a34720; }
.redesign .faq-refresh .faq-intro { max-width:330px; margin-top:26px; color:#625b51; font-size:16px; line-height:1.8; }
.faq-refresh .faq-list {
  margin:0; overflow:hidden; border:1px solid #d8d0c4; border-radius:10px;
  background:#fffcf7; box-shadow:0 8px 32px #4a2b0c05;
}
.faq-refresh .faq-list details,.faq-refresh .faq-list details:first-child {
  position:relative; margin:0; padding:0; border:0; border-radius:0; background:transparent;
}
.faq-refresh .faq-list details+details { border-top:1px solid #e0d8cc; }
.faq-refresh .faq-list details:last-child { border-bottom:0; }
.faq-refresh .faq-list details[open] { background:linear-gradient(112deg,#ffe6d3 0%,#fff1e6 50%,#fffcf7 100%); }
.faq-refresh .faq-list details[open]:before { content:''; position:absolute; inset:0 auto 0 0; width:3px; background:#e67538; pointer-events:none; }
.faq-refresh .faq-list summary {
  display:grid; grid-template-columns:24px minmax(0,1fr) 38px; align-items:center; gap:18px;
  min-height:88px; padding:22px 25px; color:#29251f;
  font-size:17px; font-weight:650; line-height:1.5; letter-spacing:-.025em;
  cursor:pointer; list-style:none; -webkit-tap-highlight-color:transparent; transition:none;
}
.faq-refresh .faq-list summary::-webkit-details-marker { display:none; }
.faq-refresh .faq-list summary::marker { content:''; }
.faq-refresh .faq-list summary:after,.faq-refresh .faq-list details[open] summary:after { content:none; }
.faq-refresh .faq-number { align-self:start; padding-top:5px; color:#917866; font-size:10px; font-weight:650; line-height:1.5; letter-spacing:.06em; font-variant-numeric:tabular-nums; }
.faq-refresh .faq-number:before { content:attr(data-index); }
.faq-refresh .faq-toggle {
  position:relative; display:block; width:38px; height:38px; border:1px solid #cdc1b1;
  border-radius:6px; background:transparent; color:#635345;
}
.faq-refresh .faq-toggle:before,.faq-refresh .faq-toggle:after { content:''; position:absolute; width:12px; height:1.5px; top:calc(50% - .75px); left:calc(50% - 6px); background:currentColor; }
.faq-refresh .faq-toggle:after { transform:rotate(90deg); transition:transform 180ms var(--ease-out); }
.faq-refresh .faq-list details[open] summary { color:#251c15; }
.faq-refresh .faq-list details[open] .faq-number { color:#93401a; }
.faq-refresh .faq-list details[open] .faq-toggle { color:#281b12; background:#ff985f; border-color:#ef8c50; }
.faq-refresh .faq-list details[open] .faq-toggle:after { transform:rotate(0deg); }
.faq-refresh .faq-list details p {
  max-width:none; margin:0; padding:0 81px 28px 67px;
  color:#625344; font-size:15px; line-height:1.8; letter-spacing:normal;
}
.faq-refresh .faq-list summary:focus-visible { outline:2px solid #a0441d; outline-offset:-5px; border-radius:5px; }
.faq-refresh .faq-list summary:focus-visible .faq-toggle:after { transition:none; }
.faq-refresh .faq-list summary:active .faq-toggle { transform:scale(.96); }
@media(hover:hover) and (pointer:fine) {
  .faq-refresh .faq-list summary:hover { color:#9a401b; }
  .faq-refresh .faq-list summary:hover .faq-toggle { border-color:#a45229; }
}
@media(min-width:901px) and (max-width:1100px) {
  .redesign .faq.faq-refresh { grid-template-columns:minmax(0,.72fr) minmax(0,1.2fr); gap:38px; }
  .redesign .faq-refresh h2 { font-size:49px; }
  .faq-refresh .faq-list summary { padding:21px; gap:14px; font-size:16px; grid-template-columns:20px minmax(0,1fr) 36px; }
  .faq-refresh .faq-toggle { width:36px; height:36px; }
  .faq-refresh .faq-list details p { padding:0 30px 26px 55px; }
}
@media(max-width:900px) {
  .redesign .faq.faq-refresh { display:block; }
  .faq-refresh .faq-heading { position:static; padding:0; margin-bottom:36px; }
  .redesign .faq-refresh h2 { max-width:600px; font-size:clamp(40px,6.2vw,54px); }
  .faq-refresh h2 span { display:inline; }
  .redesign .faq-refresh .faq-intro { max-width:520px; margin-top:22px; }
  .faq-refresh .faq-list { margin-top:0; }
}
@media(max-width:600px) {
  .faq-refresh .faq-heading { margin-bottom:29px; }
  .faq-refresh .faq-heading .eyebrow { margin-bottom:20px; }
  .redesign .faq-refresh h2 { font-size:clamp(35px,10.2vw,43px); line-height:1.16; }
  .redesign .faq-refresh .faq-intro { font-size:15px; line-height:1.75; margin-top:20px; }
  .faq-refresh .faq-list { border-radius:8px; }
  .faq-refresh .faq-list summary { grid-template-columns:18px minmax(0,1fr) 32px; gap:10px; padding:20px 17px; min-height:82px; font-size:15px; line-height:1.55; letter-spacing:-.02em; }
  .faq-refresh .faq-number { font-size:9px; padding-top:5px; }
  .faq-refresh .faq-toggle { width:32px; height:32px; }
  .faq-refresh .faq-list details p { padding:0 20px 24px; font-size:15px; line-height:1.8; }
}
@media(max-width:360px) {
  .faq-refresh .faq-list summary { grid-template-columns:16px minmax(0,1fr) 28px; gap:9px; padding-inline:14px; }
  .faq-refresh .faq-toggle { width:28px; height:28px; }
  .faq-refresh .faq-list details p { padding-inline:17px; }
}
@media(prefers-reduced-motion:reduce) {
  .faq-refresh .faq-toggle:after { transition:none; }
  .faq-refresh .faq-list summary:active .faq-toggle { transform:none; }
}

}
/*
 * Sellwisely: authoritative visual system for ALL pages.
 * Layout imports live in @layer layout. Keep colours, type roles, spacing and
 * control styles here; do not add another section-specific palette/override file.
 */
@font-face { font-family:Manrope; src:url('/fonts/manrope-a30ddcd34970.woff2') format('woff2'); font-weight:200 800; font-display:swap; }
@font-face { font-family:Anton; src:url('/fonts/anton-82014c2baef4.woff2') format('woff2'); font-weight:400; font-display:swap; }
:root {
  --ease-out:cubic-bezier(.2,.65,.3,1); --motion-fast:180ms; --motion-enter:320ms;
  --color-orange:#ff681d;
  --color-orange-hover:#ff813f;
  --color-accent-on-light:#a94309;
  --color-dark:#080808;
  --color-surface:#141414;
  --color-paper:#f4f1eb;
  --color-white:#fafafa;
  --color-ink:#181818;
  --color-muted-dark:#b8b8b4;
  --color-muted-light:#5d5d59;
  --color-rule-dark:#ffffff26;
  --color-rule-light:#18181829;
  --color-orange-soft:#ff681d14;
  --color-error:#ffc2a3;
  --font-display:Anton,Impact,sans-serif;
  --font-body:Manrope,sans-serif;
  --type-section:clamp(48px,4.5vw,64px);
  --type-closing:clamp(60px,6.2vw,92px);
  --type-card:22px;
  --type-intro:18px;
  --type-body:16px;
  --type-small:12px;
  --type-label:11px;
  --type-action:23px;
  --type-page:clamp(44px,5.3vw,76px);
  --type-article:clamp(38px,4.1vw,60px);
  --space-page-intro:clamp(32px,4vw,56px);
  --space-page-detail:clamp(20px,2.4vw,32px);
  --brand-width:210px;
  --header-height:100px;
  --space-section:clamp(80px,7vw,104px);
  --space-grid:clamp(40px,5vw,72px);
  --space-content:56px;
  --gutter:clamp(22px,6vw,88px);
  --radius-control:6px;
  --radius-panel:8px;
  --gradient-dark:radial-gradient(ellipse at 100% 15%,#ff681d1c,transparent 62%),radial-gradient(ellipse at 0 100%,#ff681d08,transparent 55%);
  --gradient-paper:radial-gradient(ellipse at 0 0,#ff681d0a,transparent 65%);
  --action-shadow:0 3px 0 #08080840;
  /* Compatibility aliases keep existing layouts on the shared palette. */
  --orange:var(--color-orange); --bg:var(--color-dark); --text:var(--color-white);
  --paper:var(--color-paper); --ink:var(--color-ink); --muted:var(--color-muted-dark);
  --sw-dark:var(--color-dark); --sw-light:var(--color-white); --sw-muted:var(--color-muted-dark);
  --sw-accent:var(--color-orange); --sw-accent-ink:var(--color-ink);
  --sw-rule-dark:var(--color-rule-dark); --sw-radius:var(--radius-control); --sw-heading:var(--type-section);
}
.redesign {
  --paper:var(--color-paper); --ink:var(--color-ink); --quiet:var(--color-muted-light);
  --rule:var(--color-rule-light); --space:var(--space-section);
}
html { background:var(--color-dark); }
body { background:var(--color-dark); color:var(--color-white); font:400 var(--type-body)/1.7 var(--font-body); }
.wrap,.header,.hero-inner,.shell { width:100%; max-width:1440px; margin-inline:auto; padding-inline:var(--gutter); }
.brand-section .wrap { max-width:none; padding:0; }
.brand-heading,.brand-heading h2 { padding-right:0; }
/* Seven agencies: preserve the existing space per logo and seamless half-track loop. */
.brand-track { width:calc(700% / 3); min-width:2334px; animation-duration:37.333s; }
.brand-track .brand-grid { width:50%; flex-basis:50%; grid-template-columns:repeat(7,minmax(0,1fr)); }
.brand-track .brand-ds { width:162px; height:54px; }
@media(max-width:700px) {
  .brand-track { width:2100px; min-width:0; animation-duration:32.667s; }
  .brand-track .brand-ds { width:120px; height:40px; }
}
.header,.footer { background:var(--color-dark); }
.header,.booking-header { height:var(--header-height); }
.header .original-logo { width:var(--brand-width); height:auto; }
/* One server-rendered navigation and footer for every sector and utility page. */
.site-header { display:flex; align-items:center; justify-content:space-between; gap:28px; position:sticky; top:0; z-index:70; background:#080808f5; backdrop-filter:blur(12px); border-bottom:1px solid var(--color-rule-dark); }
.header.site-header { max-width:none; padding-left:max(var(--gutter),calc((100% - 1440px)/2 + var(--gutter)),env(safe-area-inset-left)); padding-right:max(var(--gutter),calc((100% - 1440px)/2 + var(--gutter)),env(safe-area-inset-right)); }
.site-header .wordmark { display:block; flex-shrink:0; line-height:1; text-decoration:none; }
.site-header .original-logo { display:block; }
.site-header nav { display:flex; align-items:center; gap:28px; margin-inline:auto; }
.site-header nav a,.site-mobile-menu a { color:var(--color-white); text-decoration:none; font:600 13px/1.5 var(--font-body); }
.site-header nav a { display:flex; align-items:center; min-height:44px; border-bottom:2px solid transparent; }
.site-header nav a[aria-current=page] { color:var(--color-orange); border-color:var(--color-orange); }
.site-header .header-actions { display:flex; align-items:center; gap:24px; margin:0; }
.site-header .button { display:inline-flex; align-items:center; justify-content:center; gap:16px; min-height:48px; padding:10px 22px; border:1px solid var(--color-orange); border-radius:var(--radius-control); background:transparent; color:var(--color-white); font:700 13px/1.5 var(--font-body); text-decoration:none; white-space:nowrap; cursor:pointer; }
.site-header .button span { font-size:22px; }
.site-header .header-crm { display:inline-flex; align-items:center; gap:8px; min-height:48px; padding:10px 4px; color:var(--color-muted-dark); font:500 12px/1.5 var(--font-body); text-decoration:none; white-space:nowrap; }
.site-header .header-crm span { font-size:14px; }
.site-header .menu-toggle { display:none; align-items:center; justify-content:center; width:44px; min-width:44px; min-height:44px; flex-shrink:0; padding:10px; border:1px solid var(--color-rule-dark); border-radius:var(--radius-control); background:transparent; color:var(--color-white); cursor:pointer; }
.menu-icon { position:relative; display:block; width:20px; height:16px; }
.menu-icon span { position:absolute; left:0; width:20px; height:2px; border-radius:2px; background:currentColor; transition:transform 180ms var(--ease-out),opacity 180ms var(--ease-out); }
.menu-icon span:nth-child(1) { top:0; }
.menu-icon span:nth-child(2) { top:7px; }
.menu-icon span:nth-child(3) { top:14px; }
.menu-toggle[aria-expanded=true] .menu-icon span:nth-child(1) { transform:translateY(7px) rotate(45deg); }
.menu-toggle[aria-expanded=true] .menu-icon span:nth-child(2) { opacity:0; }
.menu-toggle[aria-expanded=true] .menu-icon span:nth-child(3) { transform:translateY(-7px) rotate(-45deg); }
.site-mobile-menu { position:fixed; top:var(--header-height); left:0; right:0; z-index:69; padding:12px var(--gutter) 20px; margin:0; max-height:calc(100dvh - var(--header-height) - 12px); overflow-y:auto; overscroll-behavior:contain; background:var(--color-surface); border-bottom:1px solid var(--color-rule-dark); box-shadow:0 16px 32px #0005; flex-direction:column; gap:0; }
.site-mobile-menu:not([hidden]) { display:flex; }
.site-mobile-menu { padding-left:max(var(--gutter),env(safe-area-inset-left)); padding-right:max(var(--gutter),env(safe-area-inset-right)); }
.site-mobile-menu a { display:flex; align-items:center; min-height:48px; }
.site-mobile-menu a[aria-current=page] { color:var(--color-orange); }
.site-mobile-menu .mobile-crm { justify-content:space-between; gap:16px; margin-top:12px; padding-top:12px; border-top:1px solid var(--color-rule-dark); color:var(--color-muted-dark); font-weight:500; }
.mobile-menu-cta { margin-top:16px; }
.site-mobile-menu .button { width:100%; min-height:48px; justify-content:space-between; padding:12px 16px; background:var(--color-orange); color:var(--color-dark); font:750 13px/1.5 var(--font-body); }
.site-header a:focus-visible,.site-mobile-menu a:focus-visible,.hero-sectors a:focus-visible { outline:2px solid var(--color-orange); outline-offset:5px; }
.site-footer { display:grid; grid-template-columns:1fr auto; gap:32px 60px; padding-block:48px 24px; align-items:start; }
.site-footer>div { margin:0; width:auto; text-align:left; }
.site-footer .footer-brand { gap:18px; }
.site-footer .footer-brand p { max-width:56ch; color:var(--color-muted-dark); font-size:14px; line-height:1.7; text-wrap:pretty; }
.site-footer .footer-navigation { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:0 40px; font-size:13px; }
.site-footer .footer-navigation a { min-height:44px; gap:8px; }
.site-footer .footer-meta { grid-column:1/-1; flex-direction:row; align-items:center; justify-content:space-between; gap:20px; padding-top:16px; border-top:1px solid var(--color-rule-dark); }
.site-footer .footer-meta a { color:var(--color-muted-dark); font-size:12px; }
.site-footer .footer-legal { display:flex; flex-direction:row; flex-wrap:wrap; align-items:center; justify-content:flex-start; gap:8px 24px; }
.site-footer .footer-legal button { min-height:44px; padding:0; border:0; background:transparent; color:var(--color-muted-dark); font:400 12px/1.6 var(--font-body); text-align:left; cursor:pointer; }
.site-footer .footer-legal button:focus-visible { outline:2px solid var(--color-orange); outline-offset:4px; }
.booking-return { margin-bottom:24px; }
.form-demo-notice { border-left:2px solid var(--color-orange); padding:10px 14px; margin:0 0 24px; background:var(--color-orange-soft); color:var(--color-muted-dark); font-size:12px; line-height:1.6; }
@media(max-width:1100px) {
  .site-header nav { display:none; }
  .site-header .header-actions { margin-left:auto; }
  .site-header .header-crm { display:none; }
  .site-header .menu-toggle { display:inline-flex; }
}
@media(max-width:700px) {
  .site-footer { grid-template-columns:1fr; gap:28px; padding-top:36px; }
  .site-footer .footer-navigation { gap:0 24px; }
  .site-footer .footer-meta { flex-direction:column; align-items:flex-start; gap:4px; }
}
.hero { background:var(--gradient-dark),var(--color-dark); }
.hero-description { color:var(--color-white); }
.hero-action { max-width:none; }
.hero .eyebrow { color:var(--color-orange); }
.brand-section h2,.hero-action>p:not(.client-proof) { color:var(--color-muted-dark); }
/* One trust signature, shared across sectors. The count belongs to Sellwisely,
   not to an individual sector or to the agency logos below it. */
.client-proof,
.hero-action .client-proof,
.focus-bottom .client-proof,
.final-content .client-proof {
  display:flex; align-items:center; justify-content:center; gap:18px;
  width:fit-content; max-width:100%; margin:16px 0 0; padding:14px 22px;
  border:1px solid var(--color-rule-dark); border-radius:var(--radius-panel);
  background:radial-gradient(ellipse at 0 100%,#ff681d1c,transparent 80%),#ffffff03;
  color:var(--color-white); text-align:left;
  font:400 13px/1.5 var(--font-body);
}
.client-proof .client-proof-number {
  display:flex; align-items:flex-start; flex-shrink:0; gap:2px;
  color:var(--color-white); font:400 48px/1 var(--font-display);
  letter-spacing:-.035em; font-variant-numeric:tabular-nums;
}
.client-proof-number>span { margin-top:2px; color:var(--color-orange); font-size:29px; }
.client-proof .client-proof-copy { display:block; padding-left:18px; border-left:1px solid var(--color-rule-dark); }
.client-proof-copy strong { display:block; color:var(--color-white); font:750 13px/1.5 var(--font-body); letter-spacing:0; }
.client-proof-copy>span { display:block; margin-top:2px; color:var(--color-muted-dark); font:400 12px/1.5 var(--font-body); }
.hero-action .client-proof { width:100%; }
.hero-action>.button { width:100%; }
.hero-bottom { align-items:flex-start; }
.focus-bottom .client-proof { margin-top:28px; }
.final-content .client-proof { margin:24px auto 0; }
.hero-sectors { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:36px; flex-shrink:0; }
.hero-sectors a { display:block; padding-top:18px; border-top:1px solid var(--color-rule-dark); color:var(--color-white); text-decoration:none; }
.hero-sectors .sector-index { display:block; margin-bottom:8px; font-size:10px; font-weight:700; letter-spacing:.12em; color:var(--color-orange); }
.hero-sectors a>span:last-child { display:flex; align-items:center; justify-content:space-between; gap:12px; font-size:15px; line-height:1.5; }
.hero-sectors b { font-size:22px; font-weight:400; color:var(--color-orange); }
.hero-process { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:28px; border-top:1px solid var(--color-rule-dark); padding-top:20px; font-size:12px; color:var(--color-muted-dark); flex-shrink:0; }
.hero-process span { display:flex; gap:12px; align-items:baseline; }
.hero-process b { color:var(--color-orange); font-size:10px; }
.solutions-section,.outcomes-section { background:radial-gradient(ellipse at 0 0,#fafafa1f,transparent 65%),var(--color-orange); color:var(--color-ink); }
.solutions-section .eyebrow,.outcomes-section .eyebrow,.solutions-section .section-heading>p,.outcomes-section .section-heading>p { color:var(--color-ink); }
.solution-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:48px; }
.solution-link { display:flex; flex-direction:column; padding:32px 0 0; border-top:1px solid var(--color-rule-light); color:var(--color-ink); text-decoration:none; }
.solution-index,.outcome-index { font-size:var(--type-label); letter-spacing:.09em; font-weight:750; }
.solutions-section .solution-link h3 { font:400 clamp(32px,3.2vw,44px)/1.15 var(--font-display); letter-spacing:-.015em; margin:24px 0 20px; }
.solution-link p { font-size:var(--type-body); line-height:1.75; max-width:470px; }
.solution-link ul { padding:0; margin:24px 0 32px; list-style:none; font-size:14px; line-height:1.6; }
.solution-link li { border-top:1px solid var(--color-rule-light); padding:10px 0; }
.solution-cta { display:flex; align-items:center; justify-content:space-between; gap:16px; min-height:56px; padding:14px 18px; margin-top:auto; border:1px solid var(--color-ink); border-radius:var(--radius-control); font-weight:750; font-size:14px; }
.solution-cta>span { font-size:23px; font-weight:400; }
.solution-link:focus-visible { outline:3px solid var(--color-ink); outline-offset:8px; }
.outcome-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:36px; list-style:none; margin:0; padding:0; }
.outcome-grid li { border-top:1px solid var(--color-rule-light); padding-top:24px; }
.outcome-grid h3 { margin:22px 0 14px; }
.outcome-grid p { font-size:var(--type-body); line-height:1.75; }
.outcomes-note { margin-top:40px; max-width:800px; border-top:1px solid var(--color-rule-light); padding-top:22px; font-size:var(--type-small); line-height:1.75; }
.sector-proof { display:flex; align-items:center; gap:22px; }
.sector-proof strong { font:400 clamp(64px,6vw,88px)/1 var(--font-display); color:var(--color-orange); letter-spacing:-.035em; }
.focus-bottom .sector-proof p { margin:0; font-size:var(--type-body); line-height:1.6; }
@media(hover:hover) and (pointer:fine) {
  .site-header nav a:hover,.site-mobile-menu a:hover,.hero-sectors a:hover>span:last-child { color:var(--color-orange); }
  .solution-link:hover .solution-cta { background:var(--color-ink); color:var(--color-white); }
}
@media(max-width:700px) {
  .hero-sectors { gap:18px; }
  .hero-sectors a { padding-top:14px; }
  .hero-sectors .sector-index { font-size:9px; letter-spacing:.07em; }
  .hero-sectors a>span:last-child { align-items:flex-end; gap:8px; font-size:12px; }
  .hero-process { gap:12px; padding-top:16px; font-size:11px; line-height:1.5; }
  .hero-process span { display:block; }
  .hero-process b { display:block; margin-bottom:6px; }
  .solution-grid,.outcome-grid { grid-template-columns:1fr; gap:36px; }
  .solution-link { padding-top:24px; }
  .solutions-section .solution-link h3 { font-size:32px; }
  .solution-cta { padding-inline:14px; font-size:13px; }
  .sector-proof { margin-top:12px; }
}
.reality,.method-section,.closing-sequence { background:var(--gradient-paper),var(--color-paper); color:var(--color-ink); }
.system-section,.focus-section,.final-section.final-invitation { background:var(--gradient-dark),var(--color-dark); color:var(--color-white); }
.results-section.results-story { background:radial-gradient(ellipse at 0 0,#fafafa1f,transparent 65%),var(--color-orange); color:var(--color-ink); }
.redesign.section,.redesign .section,.focus-section,.final-section.final-invitation { padding-block:var(--space-section); }
.redesign h2 { font:400 var(--type-section)/1.12 var(--font-display); letter-spacing:-.02em; }
.redesign h3 { font-family:var(--font-body); font-size:var(--type-card); line-height:1.35; font-weight:750; letter-spacing:-.03em; }
.redesign .eyebrow,.booking-intro .eyebrow,.panel-heading .eyebrow {
  font-size:var(--type-label); font-weight:700; line-height:1.6; letter-spacing:.16em; margin-bottom:24px;
}
.reality .eyebrow,.method .eyebrow,.faq .eyebrow,.results-story .eyebrow { color:var(--color-ink); }
.system-section .eyebrow,.focus-section .eyebrow,.final-invitation .eyebrow { color:var(--color-orange); }
.redesign .eyebrow:before { display:none; }
.reality-intro,.section-heading>p,.method-intro>p:not(.eyebrow),.focus-bottom p,.faq-intro,.results-description,.final-description {
  font-size:var(--type-intro); line-height:1.75; margin-top:24px;
}
.reality-intro,.method-intro>p:not(.eyebrow),.faq-intro { color:var(--color-muted-light); }
.section-heading>p,.focus-bottom p,.final-description { color:var(--color-muted-dark); }
.pain-grid p,.steps p,.services p,.authority-grid p,.faq-list details p { font-size:var(--type-body); line-height:1.75; }
.pain-grid p,.steps p,.faq-list details p { color:var(--color-muted-light); }
.services p,.authority-grid p { color:var(--color-muted-dark); }
.reality>.wrap,.section-heading,.method-intro,.focus-section>.wrap,.results-stage,.faq.faq-refresh { column-gap:var(--space-grid); }
.section-heading { margin-bottom:var(--space-content); }
.steps,.focus-section .authority-grid { margin-top:var(--space-content); }
.focus-top { margin-bottom:24px; }
.focus-top .eyebrow { margin:0; }
.steps li>span,.authority-grid li:before {
  font:700 var(--type-small)/1.5 var(--font-body); letter-spacing:.08em; font-variant-numeric:tabular-nums;
}
.steps li>span { color:var(--color-muted-light); }
.pain-grid { counter-reset:none; }
.pain-grid article { counter-increment:none; }
.redesign .pain-grid article::before { content:none; }
.pain-grid .pain-icon { grid-column:1; grid-row:1/3; align-self:start; display:block; width:24px; height:24px; margin-top:3px; opacity:.82; }
.pain-grid article:first-child { border-top:1px solid var(--color-rule-light); }
.steps li>span { padding-bottom:24px; margin-bottom:24px; }
.services .service-number,.services h3,.authority-grid li:before { color:var(--color-orange); }
.services .service-number { font-size:var(--type-label); }
.services .service-signal { font-size:clamp(32px,3vw,44px); }
.services h3 { font-size:18px; }
.focus-section .authority-grid h3,.focus-section .authority-grid li:last-child h3 { color:var(--color-white); }
.results-description,.results-context,.results-period,.result-step,.result-destination .result-label>p,.results-story .results-note { color:var(--color-ink); }
.results-period,.results-flow>li,.results-story .results-note { border-color:var(--color-rule-light); }
.results-story .result-label h3 { font-size:var(--type-card); font-weight:750; }
.results-story .result-value,.results-story .results-note strong,.results-period>span:last-child,.results-context>span { color:var(--color-ink); }
.results-story .results-note { font-size:var(--type-small); }
/* Shared marketing CTA. The header is a quieter outlined variant. */
.hero .button,.redesign .button {
  min-height:60px; padding:16px 28px; gap:20px; border:1px solid var(--color-orange);
  border-radius:var(--radius-control); background:var(--color-orange); color:var(--color-dark);
  font:400 var(--type-action)/1.25 var(--font-display); letter-spacing:.005em; box-shadow:var(--action-shadow);
  transition:background-color 180ms var(--ease-out),transform 180ms var(--ease-out);
}
.hero .button>span,.redesign .button>span { font-family:var(--font-body); font-size:24px; }
.header .button { border-color:var(--color-orange); border-radius:var(--radius-control); }
.button:active,.redesign .button:active { transform:translateY(1px); box-shadow:none; }
.button:focus-visible,.primary:focus-visible,.footer a:focus-visible,.menu-toggle:focus-visible,.return-link:focus-visible {
  outline:3px solid currentColor; outline-offset:5px;
}
.hero .button:focus-visible,.system-section .button:focus-visible,.final-invitation .button:focus-visible { outline-color:var(--color-white); }
.method .button:focus-visible { outline-color:var(--color-ink); }
/* FAQ uses the same open, ruled list as the problem and authority sections. */
.faq.faq-refresh { grid-template-columns:minmax(0,1fr) minmax(0,1.2fr); }
.faq-heading { padding-top:0; }
.faq-refresh .faq-heading { top:calc(var(--header-height) + 28px); }
/* A pinned heading must fit below the navigation before it follows the scroll. */
@media(max-height:600px) {
  .faq-refresh .faq-heading { position:static; }
}
.faq-refresh h2 .faq-title-accent { color:inherit; }
.faq-refresh .faq-intro { max-width:360px; }
.faq-refresh .faq-list { border:0; border-radius:0; background:transparent; box-shadow:none; }
.faq-refresh .faq-list details,.faq-refresh .faq-list details:first-child { border-top:1px solid var(--color-rule-light); }
.faq-refresh .faq-list details:last-child { border-bottom:1px solid var(--color-rule-light); }
.faq-refresh .faq-list details[open] { background:linear-gradient(110deg,var(--color-orange-soft),transparent 90%); }
.faq-refresh .faq-list details[open]:before { display:none; }
.faq-refresh .faq-list summary { grid-template-columns:minmax(0,1fr) 38px; padding:24px 16px; min-height:88px; color:var(--color-ink); font-size:var(--type-body); gap:16px; }
.faq-refresh .faq-list details[open] summary { color:var(--color-ink); }
.faq-refresh .faq-toggle { color:var(--color-ink); border-color:var(--color-rule-light); border-radius:var(--radius-control); }
.faq-refresh .faq-list details[open] .faq-toggle { background:var(--color-orange); border-color:var(--color-orange); color:var(--color-dark); }
.faq-refresh .faq-list details p { padding:0 70px 28px 16px; }
.faq-refresh .faq-list summary:focus-visible { outline:2px solid var(--color-ink); outline-offset:-3px; border-radius:var(--radius-control); }
.faq-list p a { color:var(--color-ink); text-decoration:underline; text-underline-offset:3px; text-decoration-thickness:1px; }
.faq-list p a:focus-visible { outline:2px solid var(--color-ink); outline-offset:3px; border-radius:2px; }
/* Larger closing headline requested by the owner; actions keep the shared scale. */
.final-invitation h2 { max-width:1000px; margin-inline:auto; font-size:var(--type-closing); line-height:1.1; }
.final-accent { color:var(--color-orange); }
.final-invitation .final-description { max-width:610px; margin-top:24px; }
.final-action { max-width:360px; margin-top:32px; }
.final-swoop { display:none; }
.final-invitation .final-trust { margin-top:28px; }
.final-trust strong { color:var(--color-orange); font-size:32px; }
.final-trust span,.final-invitation .final-followup { color:var(--color-muted-dark); font-size:var(--type-small); }
.footer { border-color:var(--color-rule-dark); }
.footer>p,.footer small { color:var(--color-muted-dark); }
/* Form and calendar controls share colours, corners, focus and readable body type. */
dialog { --dialog-inset:40px; padding:var(--dialog-inset); border-color:var(--color-rule-dark); border-radius:var(--radius-panel); background:var(--color-surface); color:var(--color-white); }
dialog h2,#form-success h2 { font:750 30px/1.25 var(--font-body); letter-spacing:-.035em; }
dialog .form-description,#form-success p,#form-status p { font-size:var(--type-body); line-height:1.75; color:var(--color-muted-dark); }
dialog .form-progress,dialog .form-note { color:var(--color-muted-dark); font-size:var(--type-small); }
dialog .field input,dialog .field select,dialog .choice { border-radius:var(--radius-control); border-color:#ffffff59; background:var(--color-dark); }
dialog .choice { background:transparent; font-size:15px; }
dialog .choice:has(input:checked) { background:var(--color-orange-soft); border-color:var(--color-orange); }
dialog .choice:focus-within { outline-color:var(--color-orange); }
dialog .field-error,dialog .form-error { color:var(--color-error); }
dialog .form-error { background:var(--color-orange-soft); border-color:var(--color-orange); }
dialog [aria-invalid=true],dialog .choice:has([aria-invalid=true]) { border-color:var(--color-error); }
dialog .button,.primary { min-height:54px; padding:14px 22px; border-radius:var(--radius-control); border-color:var(--color-orange); background:var(--color-orange); color:var(--color-dark); font:750 15px/1.5 var(--font-body); box-shadow:none; }
dialog .button>span { font-size:20px; }
/* A short sector choice opens the existing questionnaire without leaving home. */
.demo-sector-dialog .eyebrow { margin:0 0 12px; color:var(--color-orange); }
#demo-sector-title:focus { outline:none; }
.demo-sector-dialog .form-description { margin:14px 0 24px; }
.demo-sector-options { display:grid; gap:12px; }
.demo-sector-option {
  display:flex; align-items:center; justify-content:space-between; gap:20px;
  width:100%; min-height:96px; padding:20px; text-align:left;
  border:1px solid var(--color-rule-dark); border-radius:var(--radius-control);
  background:var(--gradient-dark),var(--color-dark); color:var(--color-white);
  font-family:var(--font-body); cursor:pointer;
  transition:border-color 180ms var(--ease-out),background-color 180ms var(--ease-out);
}
.demo-sector-option strong { display:block; font-size:20px; line-height:1.4; font-weight:750; }
.demo-sector-option small { display:block; margin-top:6px; color:var(--color-muted-dark); font-size:13px; line-height:1.5; }
.demo-sector-arrow { color:var(--color-orange); font-size:28px; flex-shrink:0; }
.demo-sector-option:focus-visible,.demo-sector-back:focus-visible,.demo-fallback:focus-visible { outline:3px solid var(--color-orange); outline-offset:4px; }
.demo-sector-option:disabled { opacity:.6; cursor:wait; }
.demo-loading { min-height:20px; margin:16px 0 0; color:var(--color-muted-dark); font-size:12px; line-height:1.7; }
/* A call to action that names its sector shows only a brief sector loading state, never the choice. */
.demo-sector-dialog.is-direct > :not(.dialog-heading):not(.demo-loading):not(.demo-error) { display:none; }
body .demo-sector-dialog.is-direct .demo-loading { min-height:120px; margin:0; display:grid; place-items:center; font-size:15px; }
.demo-error { margin:8px 0 0; color:var(--color-error); font-size:14px; line-height:1.7; }
.demo-fallback { color:inherit; text-underline-offset:3px; }
.demo-sector-back { display:block; min-height:44px; margin:-8px 0 16px; padding:8px 0; border:0; background:transparent; color:var(--color-muted-dark); font:650 13px/1.5 var(--font-body); cursor:pointer; }
@media(hover:hover) and (pointer:fine) {
  .demo-sector-option:hover:not(:disabled) { border-color:var(--color-orange); }
  .demo-sector-back:hover { color:var(--color-white); }
}
@media(max-width:380px) {
  .demo-sector-option { padding:16px; gap:12px; }
  .demo-sector-option strong { font-size:18px; }
  .demo-sector-option small { font-size:12px; }
}
/* The longer questionnaire step keeps the same palette and controls. */
dialog[data-step="obstacles"] { width:min(760px,calc(100% - 28px)); padding-bottom:0; scroll-padding-block:16px 100px; }
dialog .obstacle-count {
  position:sticky; top:calc(-1 * var(--dialog-inset)); z-index:2; margin:0; padding:14px 0;
  background:var(--color-surface); color:var(--color-muted-dark); font-size:var(--type-small); line-height:1.6;
}
dialog .obstacle-choices { grid-template-columns:repeat(2,minmax(0,1fr)); gap:10px; }
dialog .obstacle-choices .choice { min-height:72px; padding:14px; font-size:14px; line-height:1.5; }
dialog .obstacle-choices .field-error { grid-column:1/-1; }
dialog[data-step="obstacles"] .form-actions {
  position:sticky; bottom:0; z-index:3; padding:16px 0; margin-top:16px;
  background:var(--color-surface); border-top:1px solid var(--color-rule-dark);
}
dialog[data-step="obstacles"] .form-note { display:none; }
@media(max-width:600px) {
  dialog .obstacle-choices { grid-template-columns:1fr; }
  dialog .obstacle-choices .choice { min-height:56px; }
}
.booking-main { padding-top:48px; padding-bottom:var(--space-section); gap:var(--space-grid); }
body:has(.booking-main) { background:var(--gradient-dark),var(--color-dark); }
.booking-intro h1,.privacy-page h1 { font:400 var(--type-section)/1.12 var(--font-display); letter-spacing:-.02em; }
.booking-intro h1 span { color:var(--color-orange); }
.booking-header { min-height:var(--header-height); }
.booking-header img { width:var(--brand-width); }
.intro-copy { font-size:var(--type-body); color:var(--color-muted-dark); }
.booking-panel { background:var(--color-paper); color:var(--color-ink); border-radius:var(--radius-panel); box-shadow:none; }
.panel-heading .eyebrow { color:var(--color-ink); margin-bottom:12px; }
.panel-heading h2 { font:750 30px/1.25 var(--font-body); letter-spacing:-.035em; }
.panel-heading>p:last-child,.booking-summary p,#booking-complete p,.embed-help { color:var(--color-muted-light); font-size:14px; }
.calendar-layout,.booking-summary,.meeting-topics { border-color:var(--color-rule-light); }
.meeting-topics { border-color:var(--color-rule-dark); }
.return-link,.meeting-topics ul { color:var(--color-muted-dark); }
.month-button,.calendar-days button,.time-slot,iframe { border-radius:var(--radius-control); }
.calendar-days button { background:#1818180a; color:var(--color-ink); }
.calendar-days button:disabled { background:transparent; color:var(--color-muted-light); opacity:.5; }
.calendar-days button[aria-pressed=true] { background:var(--color-orange); color:var(--color-dark); }
.calendar-days .today { box-shadow:inset 0 0 0 1px var(--color-rule-light); }
.time-slot { border-color:var(--color-rule-light); }
.time-slot:has(input:checked) { background:var(--color-orange); border-color:var(--color-orange); color:var(--color-dark); }
.time-slot:has(input:focus-visible),.month-button:focus-visible,.calendar-days button:focus-visible { outline:3px solid var(--color-ink); outline-offset:3px; }
.primary:disabled { border-color:transparent; background:#18181814; color:var(--color-muted-light); }
.weekdays,.timezone,.time-selection>p,.demo-disclaimer { color:var(--color-muted-light); }
.complete-symbol,.success-icon { background:var(--color-orange-soft); color:var(--color-orange); }
.preview-notice { background:var(--color-surface); color:var(--color-muted-dark); }
.privacy-page { max-width:980px; padding-block:var(--space-section); }
.privacy-page h2 { font:750 var(--type-card)/1.35 var(--font-body); margin:40px 0 16px; }
.privacy-page p { font-size:var(--type-body); line-height:1.8; color:var(--color-muted-dark); }
.privacy-page .privacy-updated { font-size:13px; }
.privacy-page ul { padding-left:22px; color:var(--color-muted-dark); font-size:var(--type-body); line-height:1.8; }
.privacy-page li+li { margin-top:14px; }
.privacy-page strong { color:var(--color-white); font-weight:700; }
.privacy-summary { margin:32px 0; padding:24px; border:1px solid var(--color-rule-dark); border-radius:var(--radius-panel); background:var(--gradient-dark); }
.privacy-summary p { margin-top:0; }
.privacy-table-wrap { overflow-x:auto; margin:24px 0; border:1px solid var(--color-rule-dark); border-radius:var(--radius-panel); }
.privacy-table { width:100%; border-collapse:collapse; color:var(--color-muted-dark); font-size:14px; line-height:1.65; }
.privacy-table caption { padding:16px; text-align:left; color:var(--color-white); font-weight:700; }
.privacy-table th,.privacy-table td { padding:16px; text-align:left; vertical-align:top; border-top:1px solid var(--color-rule-dark); }
.privacy-table th { color:var(--color-white); }
.privacy-table code { font-size:12px; overflow-wrap:anywhere; }
/* A distinct light card makes both consent choices easy to find. */
.cookie-banner { position:fixed; z-index:80; inset:auto 20px 20px; display:grid; grid-template-columns:minmax(0,1fr); gap:18px; max-width:440px; margin:0 auto 0 0; padding:22px; border:1px solid #d9d5ce; border-radius:16px; background:var(--color-white); color:var(--color-ink); box-shadow:0 12px 40px #0003,0 2px 8px #0001; max-height:calc(100dvh - 40px); overflow-y:auto; }
.cookie-banner .cookie-banner-title { margin:0 0 8px; color:var(--color-ink); font:800 18px/1.35 var(--font-body); letter-spacing:-.02em; }
.cookie-banner p { margin:0; color:var(--color-muted-light); font:400 14px/1.5 var(--font-body); }
.cookie-banner a,.cookie-noscript a { color:inherit; text-decoration:underline; text-underline-offset:3px; }
.cookie-banner a { color:var(--color-accent-on-light); font-weight:600; }
.cookie-dialog a { color:var(--color-orange); font-weight:600; text-decoration:underline; text-underline-offset:3px; }

.cookie-actions { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); align-items:stretch; gap:10px; }
.cookie-actions [data-cookie-action=reject] { grid-column:1; grid-row:1; }
.cookie-actions [data-cookie-action=accept] { grid-column:2; grid-row:1; }
.cookie-actions .cookie-button,.cookie-dialog-actions .cookie-button { border-radius:var(--radius-control); }
.cookie-dialog-actions { display:grid; grid-template-columns:1fr; gap:8px; }
.cookie-button { display:inline-flex; align-items:center; justify-content:center; min-width:0; min-height:44px; padding:9px 14px; border:1px solid #ffffff66; border-radius:var(--radius-control); background:transparent; color:var(--color-white); font:650 12px/1.4 var(--font-body); text-align:center; cursor:pointer; transition:background 180ms var(--ease-out),border-color 180ms var(--ease-out); }
.cookie-button[data-cookie-action=accept] { background:var(--color-orange); border-color:var(--color-orange); color:var(--color-dark); font-weight:800; }
:is(.cookie-actions,.cookie-dialog-actions) .cookie-button { font-weight:700; }
:is(.cookie-actions,.cookie-dialog-actions) .cookie-button:not([data-cookie-action=accept]):not([data-cookie-action=custom]) { background:#ffffff08; border-color:#ffffff40; }
:is(.cookie-actions,.cookie-dialog-actions) .cookie-button[data-cookie-action=accept] { font-weight:800; box-shadow:0 2px 0 #08080840; }
.cookie-banner .cookie-button { min-height:46px; padding:10px 14px; font-size:14px; }
body .cookie-banner .cookie-actions .cookie-button[data-cookie-action=reject] {
  color:var(--color-ink); background:transparent; border:1px solid #aaa69f; font-weight:700; box-shadow:none;
}
body .cookie-banner .cookie-actions .cookie-button[data-cookie-action=accept] {
  color:var(--color-dark); background:var(--color-orange); border:1px solid var(--color-orange); font-weight:800; box-shadow:none;
}
.cookie-banner :is(.cookie-button,a):focus-visible { outline-color:var(--color-accent-on-light); }
@media(max-width:319px) {
  .cookie-actions { grid-template-columns:1fr; }
  .cookie-actions [data-cookie-action=accept] { grid-column:1; grid-row:2; }
}
.cookie-button:disabled { opacity:.65; cursor:wait; }
.cookie-button:focus-visible,.cookie-close:focus-visible,.cookie-dialog input:focus-visible,.cookie-banner a:focus-visible,.cookie-dialog a:focus-visible { outline:2px solid var(--color-orange); outline-offset:3px; }
.cookie-banner .cookie-status { grid-column:1/-1; }
.cookie-status:empty { display:none; }
.cookie-dialog { box-sizing:border-box; width:min(560px,calc(100% - 24px)); max-width:none; max-height:calc(100dvh - 24px); padding:0; margin:auto; border:1px solid var(--color-rule-dark); border-radius:var(--radius-panel); background:var(--color-surface); color:var(--color-white); overflow:auto; box-shadow:0 20px 100px #0009; }
.cookie-dialog::backdrop { background:#080808b3; backdrop-filter:blur(3px); }
.cookie-dialog-heading { position:sticky; top:0; z-index:2; display:flex; align-items:center; justify-content:space-between; gap:12px; padding:10px 20px; background:var(--color-surface); border-bottom:1px solid #ffffff1a; }
.cookie-dialog h2 { margin:0; font:750 20px/1.3 var(--font-body); letter-spacing:-.035em; }
.cookie-close { flex-shrink:0; display:grid; place-items:center; width:44px; height:44px; padding:0; border:1px solid var(--color-rule-dark); border-radius:var(--radius-control); background:transparent; color:var(--color-white); font:400 26px/1 var(--font-body); cursor:pointer; }
.cookie-dialog-body { padding:16px 20px; }
.cookie-dialog p { padding:0; margin:0 0 12px; color:var(--color-muted-dark); font:400 13px/1.55 var(--font-body); }
.cookie-category { display:flex; align-items:flex-start; justify-content:space-between; gap:16px; padding:12px 0; border-top:0; }
label.cookie-category { cursor:pointer; }
.cookie-category h3,.cookie-category strong { display:block; margin:0 0 4px; font:700 14px/1.4 var(--font-body); letter-spacing:0; color:var(--color-white); }
.cookie-category p,.cookie-description { display:block; margin:0; color:var(--color-muted-dark); font:400 12px/1.55 var(--font-body); }
.cookie-required { flex-shrink:0; padding-top:2px; color:var(--color-muted-dark); font:500 11px/1.8 var(--font-body); }
.cookie-category input { appearance:auto; width:22px; height:22px; margin:2px 0 0; flex-shrink:0; accent-color:var(--color-orange); cursor:pointer; }
.cookie-dialog .cookie-availability { padding:10px 12px; border-left:2px solid var(--color-orange); background:var(--color-orange-soft); font-size:12px; }
.cookie-dialog .cookie-policy-link { margin-bottom:0; font-size:12px; }
.cookie-dialog .cookie-status { margin:18px 0 0; color:var(--color-error); font-size:13px; }
.cookie-dialog-actions { position:sticky; bottom:0; z-index:2; padding:12px 20px; background:var(--color-surface); border-top:0; }
/* t188u: Guardar no modal = mesmo destaque do Aceitar do banner (nunca ghost/muted). */
body .cookie-dialog-actions .cookie-button[data-cookie-action=custom],
body .cookie-dialog-actions .cookie-dialog-save {
  grid-column:1/-1; width:100%; min-height:48px;
  background:var(--color-orange); border-color:var(--color-orange); color:var(--color-dark);
  font-weight:800; box-shadow:none; opacity:1;
}
body .cookie-dialog-actions .cookie-button[data-cookie-action=custom]:hover:not(:disabled),
body .cookie-dialog-actions .cookie-dialog-save:hover:not(:disabled) {
  background:var(--color-orange-hover); border-color:var(--color-orange-hover); color:var(--color-dark);
}
body .cookie-dialog-actions .cookie-button[data-cookie-action=custom]:focus-visible,
body .cookie-dialog-actions .cookie-dialog-save:focus-visible {
  outline:2px solid var(--color-orange); outline-offset:3px;
}
body .cookie-dialog-actions .cookie-button[data-cookie-action=custom]:disabled {
  opacity:1; cursor:wait; /* só durante o pedido; nunca “apagado” por falta de alteração */
}

.cookie-noscript { padding:16px var(--gutter); background:var(--color-surface); font:400 13px/1.7 var(--font-body); }
body:has(.cookie-dialog[open]) { overflow:hidden; }
@media(hover:hover) and (pointer:fine) {
  .cookie-button:hover:not(:disabled),.cookie-close:hover:not(:disabled) { border-color:var(--color-orange); background:var(--color-orange-soft); }
  :is(.cookie-actions,.cookie-dialog-actions) .cookie-button:not([data-cookie-action=accept]):not([data-cookie-action=custom]):hover:not(:disabled) { border-color:#ffffff80; background:#ffffff12; }
  .cookie-button[data-cookie-action=accept]:hover:not(:disabled),
  .cookie-dialog-actions .cookie-dialog-save:hover:not(:disabled) { background:var(--color-orange-hover); border-color:var(--color-orange-hover); }
  body .cookie-banner .cookie-actions .cookie-button[data-cookie-action=reject]:hover:not(:disabled) { border-color:var(--color-ink); background:var(--color-paper); }
  body .cookie-banner .cookie-actions .cookie-button[data-cookie-action=accept]:hover:not(:disabled) { background:var(--color-orange-hover); border-color:var(--color-orange-hover); }
  .cookie-banner a:hover { color:var(--color-ink); }
  .site-footer .footer-legal button:hover { color:var(--color-orange); }
}
@media(max-width:600px) {
  .cookie-dialog-actions { gap:6px; }
  .cookie-button { padding:8px 6px; font-size:12px; }
  .cookie-dialog-heading { padding:8px 16px; }
  .cookie-dialog-body { padding:14px 16px; }
  .cookie-dialog h2 { font-size:19px; }
  .cookie-category { gap:12px; }
  .cookie-required { max-width:55px; text-align:right; }
  .cookie-dialog-actions { padding:12px 16px; }
  .privacy-summary { padding:20px; }
  .privacy-table th,.privacy-table td { padding:12px; min-width:140px; }
}
/* Cartões até 768px: uma só tabela no DOM. No ecrã largo os rótulos ficam
   display:none (fora da árvore de acessibilidade) e o thead é a exposição.
   No telemóvel o thead sai da árvore e cada célula mostra o seu rótulo. */
.privacy-cell-label { display:none; }
@media(max-width:768px) {
  .privacy-table-wrap { overflow:visible; }
  .privacy-table,.privacy-table tbody,.privacy-table tr,.privacy-table caption { display:block; }
  .privacy-table thead { display:none; }
  .privacy-table th,.privacy-table td { display:block; width:auto; min-width:0; overflow-wrap:break-word; }
  .privacy-table tbody td { border-top:0; padding-top:14px; }
  .privacy-table tbody th { padding-bottom:0; }
  .privacy-cell-label { display:block; margin:0 0 4px; font:700 11px/1.4 var(--font-body); letter-spacing:.12em; text-transform:uppercase; }
  body:has(.privacy-page) .privacy-cell-label { color:var(--color-accent-on-light); }
  .privacy-table code { overflow-wrap:break-word; word-break:normal; font-size:14px; }
}
.privacy-header { display:flex; justify-content:space-between; min-height:var(--header-height); }
.privacy-header .original-logo { display:block; width:var(--brand-width); height:auto; }
.privacy-header .text-link { min-height:44px; display:flex; align-items:center; font-size:12px; }
@media(hover:hover) and (pointer:fine) {
  .hero .button:hover,.redesign .button:hover,.primary:hover:not(:disabled),dialog .button:hover { background:var(--color-orange-hover); transform:translateY(-1px); box-shadow:var(--action-shadow); }
  .header .button:hover { background:var(--color-orange); color:var(--color-dark); }
  .site-header .header-crm:hover,.site-mobile-menu .mobile-crm:hover { color:var(--color-white); text-decoration:underline; text-underline-offset:4px; }
  .faq-refresh .faq-list summary:hover { color:var(--color-ink); }
  .faq-refresh .faq-list summary:hover .faq-toggle { border-color:var(--color-orange); }
  .footer a:not(.wordmark):hover { color:var(--color-orange); }
  .calendar-days button:hover:not(:disabled),.month-button:hover:not(:disabled) { background:var(--color-orange-soft); }
  .calendar-days button[aria-pressed=true]:hover { background:var(--color-orange-hover); }
  .time-slot:hover { border-color:var(--color-orange); }
}
@media(max-width:1100px) {
  :root { --type-section:52px; --space-section:80px; --space-grid:40px; --space-content:44px; }
  .results-story .result-label h3 { font-size:20px; }
}
@media(max-width:1000px) {
  :root { --brand-width:165px; --header-height:84px; }
}
@media(max-width:900px) {
  :root { --type-section:48px; }
  .faq.faq-refresh { display:block; }
  .faq-heading { margin-bottom:36px; }
  .focus-section>.wrap { display:block; }
  .focus-bottom { margin-top:24px; }
  .focus-bottom p { max-width:600px; }
  .results-stage { display:block; }
  .results-intro h2,.results-description { max-width:560px; }
  .results-context { display:none; }
  .results-ledger { margin-top:var(--space-content); }
  .booking-main { max-width:760px; padding-top:32px; gap:32px; }
}
@media(max-width:700px) {
  :root { --type-closing:clamp(40px,11.5vw,56px); }
  :root { --type-page:clamp(36px,10.3vw,52px); --type-article:clamp(34px,9.5vw,46px); }
  :root { --type-section:clamp(34px,9.25vw,42px); --type-card:20px; --type-intro:16px; --type-label:11px; --type-action:22px; --space-section:64px; --space-grid:28px; --space-content:36px; --brand-width:155px; --header-height:70px; }
  .hero h1 { font-size:10vw; }
  .hero h1 .headline-highlight { display:table; }
  .redesign h2 { line-height:1.15; }
  .redesign .eyebrow { margin-bottom:20px; }
  .hero .button,.redesign .button { min-height:56px; padding:14px 22px; }
  .steps li>span { padding:0; margin:3px 0 0; }
  .steps li,.steps li:last-child { grid-template-columns:28px 1fr; gap:16px; }
  .services .service-signal { font-size:32px; }
  .results-story .result-label h3 { font-size:18px; }
  .faq-refresh .faq-list summary { padding:22px 12px; grid-template-columns:minmax(0,1fr) 32px; gap:10px; }
  .faq-refresh .faq-list details p { padding:0 16px 24px; }
  .final-action { margin-top:28px; }
  .final-invitation .final-followup { max-width:330px; }
  .booking-intro .eyebrow { margin-bottom:20px; }
  .booking-panel { padding:24px 20px; }
  .panel-heading h2,dialog h2,#form-success h2 { font-size:26px; }
  dialog { --dialog-inset:30px; padding:var(--dialog-inset) 22px; }
  .booking-main { padding-top:28px; }
  .intro-copy { font-size:var(--type-body); }
}
@media(max-width:360px) {
  :root { --type-section:34px; --gutter:18px; }
  dialog h2,#form-success h2 { font-size:24px; }
  dialog .form-actions { gap:12px; }
  dialog .form-actions .button { padding-inline:14px; font-size:14px; }
  .booking-panel { padding-inline:16px; }
  .results-story .result-label h3 { font-size:16px; }
  .faq-refresh .faq-list summary { padding-inline:8px; grid-template-columns:minmax(0,1fr) 28px; }
  .faq-refresh .faq-list details p { padding-inline:8px; }
}

/* Shared commercial sequence: promise, pain, desired outcome, mechanism, proof. */
.benefit-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:36px; }
.benefit-grid article { padding-top:24px; border-top:1px solid var(--color-rule-dark); }
.benefit-index { display:block; margin-bottom:22px; color:var(--color-orange); font-size:var(--type-label); font-weight:750; letter-spacing:.12em; }
.redesign .benefit-grid h3 { font:400 clamp(28px,2.8vw,38px)/1.18 var(--font-display); min-height:2.36em; max-width:19ch; margin:0 0 18px; letter-spacing:-.01em; text-wrap:balance; }
.benefit-grid p { color:var(--color-muted-dark); font-size:var(--type-body); line-height:1.75; max-width:42ch; }
.solution-principle { margin-top:36px; padding-left:18px; border-left:2px solid var(--color-orange); max-width:740px; font-size:14px; line-height:1.75; color:var(--color-muted-dark); }
.sector-options { margin-top:64px; scroll-margin-top:32px; }
.sector-options-heading { display:flex; align-items:baseline; justify-content:space-between; gap:32px; padding-top:32px; border-top:1px solid var(--color-rule-dark); margin-bottom:28px; }
.sector-options-heading p { max-width:350px; color:var(--color-muted-dark); font-size:14px; line-height:1.7; }
.sector-option-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:24px; }
.sector-option { display:flex; flex-direction:column; padding:28px; border:1px solid var(--color-rule-dark); border-radius:var(--radius-panel); background:linear-gradient(130deg,var(--color-orange-soft),transparent 70%); color:var(--color-white); text-decoration:none; }
.sector-option-label { font-size:var(--type-label); line-height:1.6; letter-spacing:.08em; font-weight:750; color:var(--color-orange); }
.redesign .sector-option h3 { font:400 clamp(30px,3vw,42px)/1.15 var(--font-display); margin:22px 0 18px; letter-spacing:-.01em; }
.sector-option>p { font-size:var(--type-body); line-height:1.75; color:var(--color-muted-dark); max-width:44ch; margin-bottom:28px; }
.sector-option-action { display:flex; justify-content:space-between; align-items:center; gap:16px; min-height:48px; margin-top:auto; padding-top:12px; border-top:1px solid var(--color-rule-dark); font-size:14px; font-weight:750; }
.sector-option-action b { color:var(--color-orange); font-size:25px; font-weight:400; }
.sector-option:focus-visible { outline:3px solid var(--color-orange); outline-offset:5px; }
.mechanism-note { margin-top:36px; padding-top:24px; border-top:1px solid var(--color-rule-light); font-size:14px; line-height:1.75; color:var(--color-muted-light); width:100%; max-width:none; }
.method-intro h2 { align-self:start; }
.method .system-handoff .button { margin:0; }
.focus-bottom .sector-proof { margin-top:24px; padding:0; border:0; }
.scope-note,.results-story .results-note { grid-column:1/-1; width:100%; max-width:none; min-width:0; }
.scope-note { border-top:1px solid var(--color-rule-dark); padding-top:24px; margin:0; color:var(--color-muted-dark); font-size:13px; line-height:1.8; }
/* Homepage additions share the same type, spacing and ruled-list treatment. */
.home-page .benefit-grid { grid-template-columns:repeat(4,minmax(0,1fr)); gap:28px; }
.home-page .benefit-grid h3 { min-height:0; }
.home-page .sector-options-heading { align-items:flex-start; }
.home-page .sector-options-heading>div { flex:1; }
.home-page .sector-options-heading>p { font-size:var(--type-intro); margin-top:0; }
.home-page .sector-options-heading .eyebrow { max-width:none; margin:0 0 24px; color:var(--color-orange); font-size:var(--type-label); }
.home-page .sector-option-label { text-transform:uppercase; }
.comparison-section .section-heading h2 { max-width:960px; }
.comparison-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:var(--space-grid); }
.comparison-column { border-top:1px solid var(--color-rule-light); padding-top:28px; }
.redesign .comparison-column h3 { font:400 clamp(32px,3vw,44px)/1.15 var(--font-display); margin-bottom:28px; }
.comparison-column ul { list-style:none; margin:0; padding:0; }
.comparison-column li { position:relative; padding:18px 0 18px 30px; border-top:1px solid var(--color-rule-light); font-size:var(--type-body); line-height:1.75; }
.comparison-column li:before { position:absolute; left:0; top:18px; content:'−'; font-weight:750; }
.comparison-after li:before { content:'✓'; }
.technology-section { background:var(--gradient-paper),var(--color-paper); color:var(--color-ink); }
.technology-section .eyebrow,.technology-section .benefit-index { color:var(--color-ink); }
.technology-section .section-heading>p,.technology-section .benefit-grid p { color:var(--color-muted-light); }
.technology-section .benefit-grid article { border-color:var(--color-rule-light); }
.measurement-grid h3 { margin-top:0; }
@media(min-width:701px) and (max-width:1100px) {
  .home-page .benefit-grid { grid-template-columns:repeat(2,minmax(0,1fr)); gap:36px; }
  .measurement-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
}
@media(max-width:700px) {
  .home-page .benefit-grid,.comparison-grid { grid-template-columns:1fr; gap:36px; }
  .home-page .sector-options-heading>p { margin-top:24px; }
  .comparison-column { padding-top:24px; }
  .comparison-column li { padding-block:16px; }
  .comparison-column li:before { top:16px; }
}
:is(.imobiliario-page,.credit-page) .benefit-grid h3 { min-height:0; }
.result-label .result-caption { margin-top:8px; font-size:var(--type-small); line-height:1.6; color:var(--color-ink); }
@media(hover:hover) and (pointer:fine) {
  .sector-option:hover { border-color:var(--color-orange); }
  .sector-option:hover .sector-option-action { color:var(--color-orange); }
}
@media(max-width:900px) {
  .benefit-grid { gap:24px; }
  .redesign .benefit-grid h3 { font-size:28px; }
  .sector-option { padding:24px; }
}
@media(max-width:700px) {
  .benefit-grid,.sector-option-grid { grid-template-columns:1fr; gap:28px; }
  .benefit-grid article { padding-top:22px; }
  .benefit-index { margin-bottom:16px; }
  .redesign .benefit-grid h3 { min-height:0; font-size:32px; max-width:none; text-wrap:initial; }
  .benefit-grid p { max-width:none; }
  .solution-principle { margin-top:28px; }
  .sector-options { margin-top:40px; }
  .sector-options-heading { display:block; padding-top:28px; }
  .sector-options-heading p { margin-top:14px; }
  .sector-option { padding:24px 20px; }
  .redesign .sector-option h3 { font-size:32px; }
  .sector-option-action { font-size:13px; }
  .mechanism-note { margin-top:16px; }
}

/* Responsive compositions, shared by all sectors. Content determines height;
   the viewport is a minimum, so short screens and text zoom cannot overlap. */
html { scroll-padding-top:calc(var(--header-height) + 20px); scroll-padding-bottom:var(--consent-inset,0px); }
body { padding-bottom:var(--consent-inset,0px); }
body { -webkit-font-smoothing:antialiased; }
::selection { background:var(--color-orange); color:var(--color-dark); }
main :is(section,[id]),dialog input,dialog .choice { scroll-margin-block:24px; }
.hero-inner { height:auto; min-height:calc(100svh - var(--header-height)); padding-block:32px 24px; gap:28px; }
.hero-description { max-width:740px; }
.hero h1 .headline-highlight {
  display:block; max-width:100%; padding:0; margin-top:.06em; background:transparent; box-shadow:none;
  color:var(--color-dark); line-height:1.12; text-decoration:none;
}
.hero h1 .marker-line { display:table; width:fit-content; max-width:100%; padding:0 .055em .045em; background:var(--color-orange); color:var(--color-dark); }
.hero h1 .marker-line+.marker-line { margin-top:.055em; }
.hero .eyebrow { font-size:var(--type-label); letter-spacing:.14em; }
.brand-section { padding-top:20px; border-top:1px solid var(--color-rule-dark); }
.brand-section h2 { font-size:10px; letter-spacing:.12em; margin-bottom:12px; }
.brand-window { mask-image:linear-gradient(to right,transparent,#000 2%,#000 98%,transparent); }
.redesign :is(h2,h3),.booking-intro h1,.privacy-page h1 { overflow-wrap:break-word; }
.redesign .section-heading>*,.reality-heading,.results-intro,.results-ledger,.hero-bottom>*,.sector-option { min-width:0; }
.reality-intro { max-width:46ch; }
.pain-grid article { transition:border-color 180ms var(--ease-out); }
.benefit-grid { gap:32px; }
.benefit-grid article { position:relative; padding-top:28px; }
.benefit-grid article:before { content:''; position:absolute; top:-1px; left:0; width:32px; height:2px; background:var(--color-orange); }
.technology-section .benefit-grid article:before { background:var(--color-ink); }
.benefit-index { margin-bottom:18px; }
.redesign .benefit-grid h3 { font-size:clamp(28px,2.35vw,34px); text-wrap:pretty; }
.redesign .sector-options-heading { grid-template-columns:minmax(0,1.65fr) minmax(0,1fr); }
.sector-option { padding:32px; transition:border-color 180ms var(--ease-out),background-color 180ms var(--ease-out); }
.redesign .sector-option h3 { font-size:clamp(30px,2.65vw,38px); line-height:1.2; text-wrap:pretty; }
.sector-option-action { font-size:14px; }
.sector-option-action b { transition:transform 180ms var(--ease-out); }
.comparison-column { padding:28px; border:1px solid var(--color-rule-light); border-radius:var(--radius-panel); }
.comparison-after { background:#f4f1eb24; }
.comparison-column li:last-child { padding-bottom:0; }
.comparison-column li { font-size:16px; }
.comparison-grid { gap:24px; }

/* A connected route makes the four implementation steps readable at a glance. */
.steps { gap:28px; }
.steps li,.steps li:last-child { position:relative; padding:0; border:0; }
.steps li>span { position:relative; z-index:1; display:inline-grid; place-items:center; width:40px; height:40px; padding:0; margin:0 0 24px; border:1px solid var(--color-rule-light); border-radius:var(--radius-control); background:var(--color-paper); color:var(--color-ink); font:750 12px/1 var(--font-body); }
.steps .step-icon img { display:block; width:20px; height:20px; }
.steps li:first-child>span { background:var(--color-orange); border-color:var(--color-orange); }
.steps li:not(:last-child):after { content:''; display:block; position:absolute; top:20px; left:40px; right:-28px; height:1px; background:var(--color-rule-light); border:0; }
.steps li>div { padding:0; }
.steps h3 { margin:0; }
.steps p { margin-top:12px; }
.focus-section .authority-grid { gap:0 36px; }
.focus-section .authority-grid li,.focus-section .authority-grid li:last-child { display:grid; grid-template-columns:24px minmax(0,1fr); align-content:start; gap:12px 16px; padding:28px 0; }
.focus-section .authority-grid li:before { grid-column:1; grid-row:1/3; margin:5px 0 0; }
.focus-section .authority-grid h3 { grid-column:2; margin:0; }
.focus-section .authority-grid p { grid-column:2; margin:0; }
.focus-bottom .sector-proof { padding-top:24px; border-top:1px solid var(--color-rule-dark); gap:20px; }
.results-story .results-period { font-size:11px; line-height:1.65; letter-spacing:.04em; }
.results-story .result-caption,.results-story .results-note { font-size:13px; }
.results-story .result-value { font-variant-numeric:tabular-nums; letter-spacing:-.035em; }
.faq-refresh .faq-intro { font-size:var(--type-intro); line-height:1.65; max-width:28ch; margin-top:20px; }
.faq-refresh .faq-heading .eyebrow { display:block; color:var(--color-ink); font:700 var(--type-label)/1.6 var(--font-body); letter-spacing:.16em; margin:0 0 24px; }
.faq-refresh .faq-heading .eyebrow:before { display:none; }
.faq-refresh h2 { max-width:none; font:400 var(--type-section)/1.12 var(--font-display); letter-spacing:-.02em; text-wrap:balance; }
.faq-refresh .faq-list { overflow:visible; }
.faq-refresh .faq-list summary { transition:background-color 180ms var(--ease-out); }
.faq-refresh .faq-list details[open] { background:linear-gradient(110deg,#ff681d0d,transparent 90%); }
.faq-refresh .faq-toggle { transition:background-color 180ms var(--ease-out),border-color 180ms var(--ease-out); }
.final-section.final-invitation { background:radial-gradient(ellipse at 50% 115%,#ff681d24,transparent 67%),var(--gradient-dark),var(--color-dark); border-top:1px solid #ff681d30; }
.site-footer .footer-meta a { display:inline-flex; align-items:center; min-height:44px; }
.site-footer .footer-navigation a { line-height:1.6; }
.privacy-page { max-width:960px; }
.privacy-page .eyebrow { margin:0 0 24px; color:var(--color-orange); font:700 var(--type-label)/1.6 var(--font-body); letter-spacing:.16em; }
.privacy-page .eyebrow:before { display:none; }
.privacy-page h1 { max-width:none; text-wrap:balance; }
.privacy-page h2 { padding-top:28px; border-top:1px solid var(--color-rule-dark); }
.privacy-page p { max-width:72ch; overflow-wrap:anywhere; }
.privacy-page a { text-underline-offset:4px; }

/* Dialog header stays within reach on long steps and when the keyboard opens. */
dialog { max-width:none; overscroll-behavior:contain; scroll-padding-block:96px 112px; max-height:calc(100dvh - 32px); }
.dialog-heading { position:sticky; top:calc(-1 * var(--dialog-inset)); z-index:5; display:flex; flex-direction:row-reverse; align-items:center; justify-content:space-between; gap:20px; min-height:76px; margin:calc(-1 * var(--dialog-inset)) calc(-1 * var(--dialog-inset)) 24px; padding:16px var(--dialog-inset); background:var(--color-surface); border-bottom:1px solid var(--color-rule-dark); }
.dialog-heading .form-brand { margin:0; padding:0; min-width:0; flex-shrink:1; }
.dialog-heading .original-logo { max-width:100%; height:auto; }
.dialog-heading .close-dialog { position:static; flex-shrink:0; border:1px solid var(--color-rule-dark); border-radius:var(--radius-control); background:transparent; color:var(--color-white); }
dialog .field input { scroll-margin-block:100px 112px; }
dialog .field input::placeholder { color:var(--color-muted-dark); opacity:.8; }
dialog .choice { transition:background-color 180ms var(--ease-out),border-color 180ms var(--ease-out); }
dialog .choice:has(input:focus-visible) { outline:2px solid var(--color-white); outline-offset:3px; }
dialog .back-button { min-width:64px; min-height:44px; text-align:left; }
dialog .privacy-check { min-height:44px; }
dialog[data-step=obstacles] { scroll-padding-block:132px 112px; }
dialog .obstacle-count { top:calc(76px - var(--dialog-inset)); z-index:4; border-bottom:1px solid var(--color-rule-dark); margin-bottom:12px; }
@media(max-width:480px) {
  dialog[data-step=contact] .form-actions { flex-wrap:wrap; gap:8px 16px; }
  dialog[data-step=contact] .form-actions .button { flex:1 0 100%; width:100%; padding-inline:14px; }
}

/* Calendar and legal pages use the same spacing and readable utility type. */
.booking-main { grid-template-areas:'intro panel' 'topics panel'; grid-template-rows:auto 1fr; row-gap:28px; }
.booking-intro { grid-area:intro; }
.booking-panel { grid-area:panel; border:1px solid var(--color-rule-light); }
.booking-main>.meeting-topics { grid-area:topics; display:block; margin:0; max-width:440px; }
.booking-intro h1 { text-wrap:balance; }
.intro-copy { max-width:44ch; }
.meeting-topics>p { font-size:14px; }
.meeting-topics ul { font-size:13px; gap:12px; }
.return-link { font-size:12px; }
.month-button { width:44px; height:44px; }
.month-navigation h3 { font-size:16px; }
.calendar-days button { min-height:44px; font-size:14px; }
.calendar-days button:disabled { opacity:.7; }
.weekdays { font-size:10px; }
.timezone,.demo-disclaimer,.time-selection>p { font-size:12px; line-height:1.65; }
.time-selection legend { font-size:13px; }
.time-slot { font-size:14px; min-height:44px; }
.booking-summary p { max-width:240px; }
.booking-panel :is(.primary,.time-slot,.calendar-days button,.month-button) { transition:background-color 180ms var(--ease-out),border-color 180ms var(--ease-out); }
.booking-panel .primary:focus-visible { outline-color:var(--color-ink); }
.site-header .menu-toggle:focus-visible,.close-dialog:focus-visible,.back-button:focus-visible { outline:2px solid var(--color-orange); outline-offset:4px; }
.skip { z-index:100; }

@media(hover:hover) and (pointer:fine) {
  .sector-option:hover { background-color:#ff681d08; }
  .sector-option:hover .sector-option-action b { transform:translate(2px,-2px); }
  .faq-refresh .faq-list summary:hover { background:var(--color-orange-soft); }
  .dialog-heading .close-dialog:hover { border-color:var(--color-orange); }
}
@media(min-width:701px) and (max-width:1100px) {
  .steps { gap:32px; }
  .steps li:nth-child(2):after { display:none; }
  .steps li:not(:last-child):after { right:-32px; }
}
@media(max-width:1000px) {
  .reality>.wrap { display:block; }
  .reality-heading h2 { max-width:20ch; }
  .reality-intro { max-width:60ch; }
  .pain-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:0 32px; margin-top:36px; border-bottom:1px solid var(--color-rule-light); }
  .pain-grid article { grid-template-columns:24px minmax(0,1fr); column-gap:16px; border-bottom:0; }
  .pain-grid article:last-child { border-bottom:0; }
  .section-heading { grid-template-columns:1fr; gap:24px; }
  .section-heading>p { max-width:60ch; margin:0; }
  .home-page .sector-options-heading>p { max-width:60ch; }
  .focus-section>.wrap { display:block; }
  .focus-bottom { margin-top:24px; }
  .focus-bottom>p { max-width:60ch; }
  .focus-bottom .sector-proof { max-width:440px; }
}
@media(max-width:900px) {
  .booking-main { grid-template-areas:'intro' 'panel' 'topics'; }
  .booking-main>.meeting-topics { max-width:none; }
}
@media(max-width:700px) {
  .hero-inner { padding-block:36px 24px; gap:36px; min-height:calc(100svh - var(--header-height)); }
  .hero-description { font-size:16px; line-height:1.6; }
  .hero-bottom { margin-top:24px; gap:20px; }
  .hero-action .client-proof { width:fit-content; margin:16px auto 0; padding:12px 18px; }
  .brand-section { padding-top:18px; }
  .brand-section h2 { font-size:10px; }
  .redesign h2 { text-wrap:pretty; }
  .pain-grid { display:block; margin-top:32px; border-bottom:0; }
  .pain-grid article:last-child { border-bottom:1px solid var(--color-rule-light); }
  .benefit-grid,.home-page .benefit-grid { gap:28px; }
  .benefit-grid article { display:grid; grid-template-columns:24px minmax(0,1fr); gap:12px 16px; padding-top:24px; }
  .benefit-index { grid-column:1; grid-row:1/3; margin:6px 0 0; }
  .redesign .benefit-grid h3 { grid-column:2; font-size:28px; margin:0; }
  .benefit-grid p { grid-column:2; margin:0; }
  .sector-option { padding:24px; }
  .redesign .sector-option h3 { font-size:30px; }
  .sector-option-action { font-size:14px; }
  .comparison-column { padding:24px 20px; }
  .comparison-column li { padding-left:24px; }
  .steps { display:block; margin-top:36px; }
  .steps li,.steps li:last-child { display:grid; grid-template-columns:40px minmax(0,1fr); gap:18px; padding:0 0 32px; border:0; }
  .steps li:last-child { padding-bottom:0; }
  .steps li>span { margin:0; }
  .steps li>div { padding-top:7px; }
  .steps li:not(:last-child):after { top:40px; bottom:0; left:20px; right:auto; width:1px; height:auto; }
  .focus-section .authority-grid li,.focus-section .authority-grid li:last-child { padding-block:24px; }
  .faq-refresh .faq-heading { position:static; }
  .faq-refresh .faq-heading .eyebrow { margin-bottom:20px; }
  .faq-refresh h2 { line-height:1.15; text-wrap:pretty; }
  .faq-refresh .faq-intro { max-width:30ch; }
  .final-section.final-invitation { padding-block:72px; }
  dialog { --dialog-inset:24px; padding:var(--dialog-inset); width:calc(100% - 24px); max-height:calc(100dvh - 24px); }
  .dialog-heading { padding-block:12px; min-height:68px; }
  dialog .obstacle-count { top:calc(68px - var(--dialog-inset)); }
  .booking-return { margin-bottom:16px; }
  .booking-intro h1 { font-size:var(--type-section); }
  .calendar-layout { grid-template-columns:1fr; gap:24px; }
  .time-selection legend { min-height:0; margin-bottom:12px; }
  #time-slots { grid-template-columns:repeat(4,minmax(0,1fr)); gap:8px; }
  .booking-summary { flex-direction:column; align-items:stretch; }
  .booking-summary p { max-width:none; }
  .site-footer .footer-meta { gap:8px; }
  .site-footer small { line-height:1.7; }
}
@media(max-width:360px) {
  .hero .eyebrow { font-size:10px; letter-spacing:.1em; }
  .booking-panel { padding-inline:14px; }
  .calendar-days,.weekdays { gap:2px; }
  .calendar-days button { min-height:44px; }
  #time-slots { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .site-footer .footer-navigation { grid-template-columns:1fr; }
}
@media(max-height:550px) and (min-width:701px) {
  .hero-inner { padding-block:32px; }
}
/* Sector entrances: shared typography and warm gradients, with room for each story. */
.sector-options-editorial { margin-top:88px; }
.sector-options-editorial .sector-options-heading { padding-top:40px; margin-bottom:40px; }
.sector-options-editorial #sectors-title { max-width:18ch; }
.sector-options-editorial .sector-option-grid { display:block; }
.sector-options-editorial .sector-option {
  display:grid; grid-template-columns:minmax(0,.95fr) minmax(0,1.4fr) 64px;
  align-items:start; gap:40px; position:relative; isolation:isolate;
  padding:44px 0; border:0; border-top:1px solid var(--color-rule-dark);
  border-radius:0; background:none; text-decoration:none;
}
.sector-options-editorial .sector-option:last-child { border-bottom:1px solid var(--color-rule-dark); }
.sector-options-editorial .sector-option::before {
  content:""; position:absolute; z-index:-1; inset:0 -24px; pointer-events:none;
  background:radial-gradient(ellipse at 12% 55%,#ff681d18,transparent 70%);
  opacity:.55; transition:opacity 180ms var(--ease-out);
}
.sector-options-editorial .sector-option-number { display:block; margin-bottom:24px; color:var(--color-orange); font:650 12px/1.5 var(--font-body); letter-spacing:.08em; }
.sector-options-editorial .sector-option h3 { margin:0; color:var(--color-white); font:400 clamp(44px,4.8vw,68px)/1.1 var(--font-display); letter-spacing:-.025em; }
.sector-options-editorial .sector-option-content { padding-top:39px; }
.sector-options-editorial .sector-option-promise { margin:0 0 18px; max-width:34ch; color:var(--color-white); font:700 clamp(20px,1.8vw,25px)/1.45 var(--font-body); letter-spacing:-.025em; text-wrap:pretty; }
.sector-options-editorial .sector-option-promise>span { color:var(--color-muted-dark); }
.sector-options-editorial .sector-option-description { margin:0; max-width:56ch; color:var(--color-muted-dark); font:400 var(--type-body)/1.75 var(--font-body); }
.sector-options-editorial .sector-option-action { display:block; min-height:44px; margin:20px 0 0; padding:12px 0; border:0; color:var(--color-orange); font:700 13px/1.6 var(--font-body); text-underline-offset:5px; }
.sector-entry-arrow { display:grid; place-items:center; width:64px; height:64px; margin-top:39px; border:1px solid var(--color-rule-dark); border-radius:50%; color:var(--color-orange); font:400 32px/1 var(--font-body); transition:transform 180ms var(--ease-out),background-color 180ms var(--ease-out),color 180ms var(--ease-out),border-color 180ms var(--ease-out); }
.sector-options-editorial .sector-option:focus-visible .sector-entry-arrow { background:var(--color-orange); color:var(--color-dark); border-color:var(--color-orange); }
@media(hover:hover) and (pointer:fine) {
  .sector-options-editorial .sector-option:hover::before { opacity:1; }
  .sector-options-editorial .sector-option:hover .sector-entry-arrow { background:var(--color-orange); color:var(--color-dark); border-color:var(--color-orange); transform:translate(3px,-3px); }
  .sector-options-editorial .sector-option:hover .sector-option-action { text-decoration:underline; }
}
@media(max-width:1000px) {
  .sector-options-editorial .sector-option { grid-template-columns:minmax(0,1fr) minmax(0,1.5fr) 48px; gap:24px; }
  .sector-entry-arrow { width:48px; height:48px; font-size:26px; }
}
@media(max-width:700px) {
  .sector-options-editorial { margin-top:64px; }
  .sector-options-editorial .sector-options-heading { margin-bottom:28px; }
  .sector-options-editorial .sector-option { grid-template-columns:minmax(0,1fr) 48px; column-gap:16px; row-gap:24px; padding:32px 0; }
  .sector-options-editorial .sector-option::before { inset:0 -16px; }
  .sector-options-editorial .sector-option-identity { grid-column:1; grid-row:1; }
  .sector-options-editorial .sector-option-number { margin-bottom:16px; }
  .sector-options-editorial .sector-option h3 { font-size:clamp(40px,10vw,52px); }
  .sector-options-editorial .sector-option-content { grid-column:1/-1; padding-top:0; }
  .sector-options-editorial .sector-option-promise { max-width:38ch; font-size:20px; }
  .sector-options-editorial .sector-option-action { margin-top:16px; }
  .sector-entry-arrow { grid-column:2; grid-row:1; align-self:end; margin:0 0 4px; }
}
/* Animation never gates content. Scroll entrances are progressively enhanced in
   site.js; these short responses retain native details/dialog behaviour. */
@keyframes sw-enter { from { opacity:0; transform:translateY(8px); } to { opacity:1; transform:none; } }
@media(prefers-reduced-motion:no-preference) {
  dialog[open] { animation:sw-enter 180ms ease-out; }
  .faq-list details[open]>p { animation:sw-enter 180ms ease-out; }
}
@media(prefers-reduced-motion:reduce) {
  html { scroll-behavior:auto; }
  /* A faixa de marcas continua a rodar, mais devagar (pedido do Fábio): ver site-consistency.css. */
  *,*::before,*::after { transition:none!important; scroll-behavior:auto!important; }
  *:not(.brand-track),*::before,*::after { animation:none!important; }
}

html[data-input=keyboard] { scroll-behavior:auto; }
html[data-input=keyboard] dialog[open],html[data-input=keyboard] .faq-list details[open]>p { animation:none; }
html[data-input=keyboard] .menu-icon span { transition:none; }

/* Prelaunch polish: shared safe areas and a useful 404 destination. */
.wrap,.header,.hero-inner,.shell { padding-left:max(var(--gutter),env(safe-area-inset-left)); padding-right:max(var(--gutter),env(safe-area-inset-right)); }
.error-page { min-height:60svh; padding-block:var(--space-section); background:var(--gradient-dark); }
.error-page h1 { max-width:14ch; margin:0 0 28px; font:400 var(--type-section)/1.12 var(--font-display); letter-spacing:-.02em; }
.error-page>p:not(.eyebrow) { max-width:50ch; color:var(--color-muted-dark); }
.error-actions { display:flex; flex-wrap:wrap; align-items:center; gap:16px 28px; margin-top:32px; }
.error-actions>a { display:inline-flex; align-items:center; min-height:48px; }
.error-actions>a:not(.button) { text-decoration:underline; text-underline-offset:5px; }
.error-actions .button:focus-visible { outline-color:var(--color-white); }
@media(max-width:700px) {
  .cookie-banner { inset:auto max(12px,env(safe-area-inset-right)) max(12px,env(safe-area-inset-bottom)) max(12px,env(safe-area-inset-left)); margin-inline:auto; padding:18px; gap:16px; max-height:calc(100dvh - var(--header-height) - 24px); }
  .cookie-dialog-actions { padding-bottom:max(16px,env(safe-area-inset-bottom)); }
}

/* 2026-09-23: production identity + explanatory visuals. No new global theme. */
.evolution-site .keep-word { white-space:nowrap; }
.evolution-site .section-description { color:var(--color-muted-dark); font-size:var(--type-intro); line-height:1.75; }
.evolution-site .section-description p+p { margin-top:18px; }
.evolution-site :is(.reality,.method-section,.training-section,.outcomes-section) .section-description { color:var(--color-muted-light); }
.evolution-site .outcomes-section .section-description { color:var(--color-ink); }
.evolution-site .section-description:empty { display:none; }
.evolution-site .reality-heading .section-description { margin-top:28px; }
.evolution-site .evolution-note { margin-top:36px; padding-top:22px; border-top:1px solid var(--color-rule-dark); font-size:14px; line-height:1.75; color:var(--color-muted-dark); }
.evolution-site :is(.reality,.method-section,.training-section,.outcomes-section) .evolution-note { color:var(--color-ink); border-color:var(--color-rule-light); }
.evolution-site .reality>.wrap>.evolution-note { grid-column:1/-1; }
.evolution-site .evolution-action { display:flex; flex-direction:column; align-items:flex-start; gap:14px; margin-top:36px; }
.evolution-site .evolution-action .button { box-shadow:none; }
.evolution-site .system-section>.wrap>.evolution-action { align-items:center; text-align:center; margin-top:36px; padding-top:32px; border-top:1px solid var(--color-rule-dark); }
.home-page .system-section>.wrap>.evolution-action { border-top:0; padding-top:0; }
.evolution-site :is(.system-section,.method-section,.final-invitation) .evolution-action .button { width:300px; min-width:0; max-width:100%; box-shadow:none; }
.evolution-hero .hero-inner { min-height:calc(100svh - var(--header-height)); padding-block:clamp(24px,4svh,48px) clamp(20px,3svh,30px); gap:clamp(20px,4svh,44px); justify-content:space-between; }
.evolution-hero .hero-message { margin-block:auto; }
.evolution-hero .eyebrow { margin:0 0 clamp(16px,2.5svh,24px); line-height:1.6; }
.evolution-hero h1 { font-size:clamp(48px,min(7.4vw,10.5svh),112px); line-height:1.04; }
.evolution-hero h1 .headline-line { text-wrap:balance; }
.evolution-hero h1 .hero-phrase { color:inherit; }
.evolution-hero .hero-bottom { gap:clamp(24px,3.75vw,54px); margin-top:clamp(20px,3svh,30px); align-items:flex-start; }
.evolution-hero .hero-overview { min-width:0; max-width:760px; }
.evolution-hero .hero-description { max-width:760px; font-size:18px; line-height:1.75; }
.evolution-hero .hero-action { width:300px; min-width:280px; max-width:100%; flex-shrink:0; }
.evolution-hero .evolution-action { margin:0; align-items:stretch; }
.evolution-hero .hero-action .client-proof { width:100%; margin:14px 0 0; }
.hero-guarantee-link { display:flex; align-items:center; justify-content:center; gap:16px; width:100%; min-height:96px; margin-top:14px; padding:16px 18px; border:1px solid #d9b66d55; border-radius:var(--radius-panel); background:linear-gradient(110deg,#d9b66d0d,transparent); color:#f7edda; text-align:left; text-decoration:none; transition:background-color 180ms var(--ease-out),border-color 180ms var(--ease-out),transform 140ms var(--ease-out); }
.hero-guarantee-icon { display:grid; place-items:center; flex:0 0 40px; color:#e5c67f; }
.hero-guarantee-icon svg { display:block; width:36px; height:36px; }
.hero-guarantee-copy { display:grid; gap:5px; min-width:0; }
.hero-guarantee-copy>span { color:#d3bd92; font:600 10px/1.4 var(--font-body); letter-spacing:.1em; text-transform:uppercase; }
.hero-guarantee-copy strong { display:block; color:#f7edda; font:700 15px/1.4 var(--font-body); letter-spacing:-.015em; }
.hero-guarantee-copy strong small { display:block; color:#f7edda; font:500 13px/1.5 var(--font-body); letter-spacing:0; }
.evolution-hero .hero-guarantee-link { min-height:96px; }
.hero-guarantee-link:focus-visible { outline:2px solid #e5c67f; outline-offset:4px; }
.hero-guarantee-link:active { transform:scale(.99); }
@media(hover:hover) and (pointer:fine) {
  .hero-guarantee-link:hover { border-color:#e5c67fa6; background-color:#d9b66d10; }
}
html[data-input=keyboard] .hero-guarantee-link { transition:none; }
@media(prefers-reduced-motion:reduce) {
  .hero-guarantee-link { transition:none; }
  .hero-guarantee-link:active { transform:none; }
}
@media(max-width:360px) {
  .hero-guarantee-link { padding-inline:10px; }
}
.evolution-hero-base { min-width:0; }
.evolution-hero-base .brand-section { min-width:0; }
.evolution-hero-base .brand-section .wrap { min-width:0; }
.evolution-hero-base .brand-heading { display:block; margin:0; padding:0; text-align:center; }
.evolution-hero-base .brand-heading h2 { margin-bottom:12px; text-align:inherit; }

/* Real-estate guarantee, presented after the explanation of the system. */
.evolution-site .guarantee-panel { margin-top:32px; padding:36px; border:1px solid #cdaa624d; border-top:3px solid #d8b76e; border-radius:var(--radius-panel); background:radial-gradient(ellipse at 0 100%,#d3af5e24,transparent 72%),linear-gradient(120deg,#e5c67f08,transparent 65%),#14130f; color:#f5ead3; box-shadow:inset 0 1px 0 #f5ead30a; }
.guarantee-intro { display:grid; grid-template-columns:minmax(0,.85fr) minmax(0,1.35fr); align-items:start; gap:36px; }
.guarantee-intro>* { min-width:0; }
.evolution-site .guarantee-panel .eyebrow { margin:0 0 18px; color:#e5c67f; }
.evolution-site .guarantee-panel h2 { max-width:12ch; margin:0; color:#e5c67f; font:400 clamp(36px,3.3vw,48px)/1.15 var(--font-display); letter-spacing:-.02em; text-wrap:balance; }
.evolution-site .guarantee-panel p { max-width:none; padding:0; color:#c8bea9; font:400 15px/1.8 var(--font-body); }
.evolution-site .guarantee-panel p.eyebrow { font:700 var(--type-label)/1.6 var(--font-body); letter-spacing:.14em; color:#e5c67f; }
.guarantee-panel strong { font-weight:700; color:#f5ead3; }
.guarantee-copy p+p { margin-top:14px; }
.evolution-site .guarantee-panel .guarantee-note { margin-top:18px; padding-top:16px; border-top:1px solid #cdaa624d; font-size:13px; line-height:1.7; }
.evolution-site .system-section>.wrap>.guarantee-panel+.evolution-action { padding-top:0; border:0; }
@media(max-width:900px) {
  .evolution-site .guarantee-panel { padding:28px; }
  .guarantee-intro { grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr); gap:28px; }
}
@media(max-width:700px) {
  .evolution-site .guarantee-panel { margin-top:24px; padding:24px 20px; }
  .guarantee-intro { grid-template-columns:minmax(0,1fr); gap:22px; }
  .evolution-site .guarantee-panel h2 { max-width:none; font-size:34px; }
  .evolution-site .guarantee-panel .eyebrow { margin-bottom:12px; }
  .evolution-site .guarantee-copy p { font-size:14px; }
}
.evolution-site .process-icon { display:block; width:24px; height:24px; flex-shrink:0; object-fit:contain; }
.evolution-site .visual-process-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:24px; }
.evolution-site .visual-process-card { display:block; padding:0; overflow:hidden; border:1px solid #ffffff24; border-radius:var(--radius-panel); background:linear-gradient(150deg,#ffffff05,transparent 70%),#0c0c0c; }
.evolution-site .visual-process-card:before { content:none; }
.process-card-copy { padding:30px 32px 34px; border-top:1px solid #ffffff14; }
.evolution-site .visual-process-card h3 { font:400 clamp(26px,2.25vw,34px)/1.25 var(--font-display); letter-spacing:0; max-width:24ch; }
.evolution-site .visual-process-card p { margin-top:18px; max-width:48ch; }
.process-diagram { position:relative; display:flex; flex-direction:column; justify-content:center; height:232px; padding:30px 44px; overflow:hidden; background:radial-gradient(ellipse at 50% 115%,#ff681d25,transparent 70%); color:#fafafa; user-select:none; }
.process-diagram .process-icon { filter:invert(1); }
.diagram-source { display:flex; align-items:center; justify-content:center; gap:12px; width:62%; margin-inline:auto; padding:11px 14px; border:1px solid #ffffff2b; border-radius:6px; background:linear-gradient(120deg,#222,#101010); font-size:12px; }
.diagram-source>.process-icon { width:19px; height:19px; }
.diagram-bridge { width:1px; height:28px; align-self:center; background:linear-gradient(#ffffff37,var(--color-orange)); }
.diagram-destination { position:relative; display:flex; align-items:center; gap:14px; padding:20px; border:1px solid #ff681d7a; border-radius:7px; background:radial-gradient(ellipse at 0 0,#ff681d24,transparent 80%),#151311; box-shadow:0 14px 40px #0004; }
.diagram-symbol { display:grid; place-items:center; flex-shrink:0; width:42px; height:42px; border-radius:8px; border:1px solid #ff681d69; background:#ff681d18; }
.diagram-destination>div { flex:1; }
.diagram-destination>div span { display:block; color:#c6beb9; font-size:10px; }
.diagram-destination strong { display:block; margin-top:3px; font-size:14px; font-weight:700; }
.diagram-destination>.process-icon { width:19px; height:19px; }
.diagram-1 { padding-inline:65px; gap:11px; }
.diagram-dialog { display:flex; align-items:center; gap:14px; width:100%; margin-left:-15px; padding-bottom:5px; }
.diagram-dialog strong { font-size:14px; font-weight:650; }
.diagram-reply { display:flex; align-items:center; gap:20px; align-self:flex-end; min-width:70%; padding:11px 16px; border:1px solid #ffffff24; border-radius:7px 7px 2px 7px; background:#ffffff07; font-size:12px; }
.diagram-reply:last-child { border-color:#ff681d80; background:#ff681d13; }
.diagram-reply .process-icon { width:16px; height:16px; margin-left:auto; }
.diagram-2 { padding-inline:75px; }
.diagram-record { transform:rotate(-3deg); border:1px solid #ffffff40; border-radius:8px; padding:17px 20px; background:linear-gradient(135deg,#222222,#121212); box-shadow:14px 16px 0 -5px #171310,14px 16px 0 -4px #ff681d45,0 20px 44px #0005; }
.diagram-record-heading { display:flex; align-items:center; gap:12px; padding-bottom:14px; border-bottom:1px solid #ffffff20; }
.diagram-record-heading strong { font-size:14px; font-weight:650; }
.diagram-status { width:6px; height:6px; margin-left:auto; border-radius:100%; background:var(--color-orange); }
.diagram-record-heading>.process-icon { width:20px; height:20px; }
.diagram-record-row { display:flex; align-items:center; gap:12px; margin-top:14px; font-size:12px; color:#d0cfcb; }
.diagram-record-row .process-icon { width:16px; height:16px; opacity:.7; }
.diagram-corner { position:absolute; right:52px; bottom:24px; display:grid; place-items:center; width:42px; height:42px; border-radius:50%; background:var(--color-orange); border:5px solid #111; }
.diagram-corner .process-icon { filter:none; width:20px; height:20px; }
.diagram-conversation { display:flex; align-items:center; justify-content:center; margin:0 auto 16px; }
.diagram-conversation>span { display:grid; place-items:center; width:66px; height:66px; border:1px solid #ffffff3a; border-radius:16px; background:#1b1b1b; transform:rotate(-8deg); }
.diagram-conversation>span+span { margin-left:-13px; background:var(--color-orange); border-color:#ffb98b; transform:rotate(8deg); }
.diagram-conversation .process-icon { width:30px; height:30px; }
.diagram-conversation>span+span .process-icon { filter:none; }
.diagram-caption { text-align:center; font-size:15px; font-weight:700; }
.diagram-tags { display:flex; justify-content:center; gap:8px; margin-top:13px; }
.diagram-tags span { padding:5px 10px; border:1px solid #ffffff20; border-radius:4px; color:#c7c4c0; font-size:10px; }
.evolution-site .training-section { background:var(--gradient-paper),var(--color-paper); color:var(--color-ink); }
.training-layout { display:grid; grid-template-columns:minmax(0,1.12fr) minmax(0,1fr); align-items:center; gap:var(--space-grid); }
.training-layout>div { min-width:0; }
.training-layout .section-heading { display:block; margin-bottom:0; }
.training-layout .section-description { margin-top:28px; }
.training-layout .eyebrow { color:var(--color-ink); }
.handoff-visual { position:relative; padding:40px 0; }
.handoff-technology,.handoff-human { max-width:340px; padding:24px 26px; border-radius:8px; }
.handoff-technology { border:1px solid #1818182b; background:#ffffff70; margin-right:50px; box-shadow:0 15px 35px #3d25120a; }
.handoff-human { position:relative; margin:-2px 0 0 auto; background:var(--color-orange); border:1px solid #d34b08; box-shadow:0 15px 35px #ff681d24; }
.handoff-visual :is(.handoff-technology,.handoff-human)>div { display:flex; align-items:center; gap:12px; }
.handoff-visual strong { font-size:17px; font-weight:750; }
.handoff-visual ul { display:flex; flex-wrap:wrap; gap:8px; margin:20px 0 0; padding:0; list-style:none; }
.handoff-visual li { padding:6px 9px; border:1px solid #18181824; border-radius:4px; font-size:10px; background:#ffffff20; }
.handoff-link { display:flex; justify-content:center; padding:16px; }
.handoff-link .process-icon { transform:rotate(90deg); opacity:.65; }
.evolution-site .method-intro { display:grid; grid-template-columns:1.45fr 1fr; align-items:end; gap:var(--space-grid); }
.evolution-site .method-intro .section-description { max-width:460px; }
.evolution-highlight { margin-top:48px; padding:24px 28px; border:1px solid var(--color-rule-light); border-left:3px solid var(--color-orange); border-radius:4px; }
.evolution-highlight>div { display:flex; align-items:center; gap:12px; }
.evolution-site .evolution-highlight h3 { font-size:18px; }
.evolution-highlight p { margin-top:12px; color:var(--color-muted-light); font-size:14px; }
/* A continuous route: compact markers, one connector between each stage. */
.evolution-site .measurement-journey { --journey-gap:36px; display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:var(--journey-gap); }
.evolution-site .measurement-journey>li { position:relative; min-width:0; padding:0; border:0; }
.measure-symbol { position:relative; display:flex; align-items:center; height:56px; margin-bottom:28px; }
.measure-node { display:inline-flex; align-items:center; justify-content:center; width:56px; height:56px; flex:none; border:1px solid #18181850; border-radius:50%; background:#ffffff15; }
.evolution-site .measure-node .process-icon { width:26px; height:26px; }
.measure-connector { position:absolute; left:72px; right:calc(-1 * var(--journey-gap) + 16px); height:1px; background:#18181860; }
.measure-connector::after { content:''; position:absolute; right:0; top:-3px; width:7px; height:7px; border-top:1px solid #18181880; border-right:1px solid #18181880; transform:rotate(45deg); }
.measurement-journey>li:last-child .measure-connector { display:none; }
.evolution-site .measurement-journey h3 { font:400 clamp(27px,2.5vw,36px)/1.2 var(--font-display); letter-spacing:0; margin:0 0 16px; }
.evolution-site .measurement-journey p { max-width:40ch; }
@media(max-width:800px) {
  .evolution-site .measurement-journey { grid-template-columns:1fr; gap:32px; }
  .evolution-site .measurement-journey>li { padding-left:80px; min-height:100px; }
  .measure-symbol { position:absolute; top:0; bottom:0; left:0; width:56px; height:auto; margin:0; align-items:flex-start; }
  .measure-node { width:56px; height:56px; }
  .measure-connector { left:28px; top:70px; bottom:-18px; right:auto; width:1px; height:auto; }
  .measure-connector::after { top:auto; bottom:0; right:-3px; transform:rotate(135deg); }
  .evolution-site .measurement-journey h3 { font-size:28px; margin-bottom:12px; }
}
@media(max-width:400px) {
  .evolution-site .measurement-journey>li { padding-left:66px; }
  .measure-symbol,.measure-node { width:48px; }
  .measure-node { height:48px; }
  .measure-connector { left:24px; top:62px; }
  .evolution-site .measurement-journey h3 { font-size:25px; }
}

.evolution-anchor { display:block; scroll-margin-top:var(--header-height); }
.evolution-site .sector-options-editorial { background:var(--gradient-dark),var(--color-dark); margin:0; }
.evolution-site .sector-options-editorial .section-description { color:var(--color-muted-dark); }
.evolution-site .evolution-faq { display:block; padding-inline:0; }
.evolution-faq>.wrap { display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1.2fr); gap:var(--space-grid); align-items:start; }
.evolution-faq .faq-heading { position:sticky; top:calc(var(--header-height) + 28px); margin:0; }
.evolution-site .final-invitation { text-align:center; }
.evolution-site .final-invitation .evolution-action { align-items:center; }
.evolution-site .final-invitation .final-description { margin-inline:auto; max-width:680px; }
.evolution-site .evolution-legal-note { max-width:860px; margin:40px auto 0; padding-top:24px; border-top:1px solid var(--color-rule-dark); font-size:12px; line-height:1.8; color:var(--color-muted-dark); }
/* New approved form intro uses the established form typography. */
.sw-form-opening { margin-bottom:26px; }
.sw-form-opening h2 { font-size:25px; max-width:450px; }
.sw-form-opening p { margin-top:12px; font-size:13px; line-height:1.75; color:var(--color-muted-dark); }
.sw-form-opening .sw-micro { font-size:12px; }
dialog .sw-form-opening[hidden] { display:none; }
@media(hover:hover) and (pointer:fine) {
  .visual-process-card { transition:border-color 180ms var(--ease-out); }
  .visual-process-card:hover { border-color:#ff681d80; }
}
@media(max-width:1100px) {
  .evolution-hero .hero-description { font-size:16px; }
  .evolution-hero .hero-action { min-width:250px; }
  .process-diagram { padding-inline:30px; }
  .diagram-1 { padding-inline:46px; }
  .diagram-2 { padding-inline:50px; }
  .process-card-copy { padding:26px; }
  .evolution-site .visual-process-card h3 { font-size:28px; }
  .training-layout { gap:40px; }
}
@media(max-width:800px) {
  .evolution-hero .hero-bottom { gap:24px; }
  .evolution-site .section-description { margin-top:24px; font-size:16px; }
  .evolution-site .method-intro { display:block; }
  .training-layout { grid-template-columns:minmax(0,1fr); gap:28px; }
  .handoff-visual { width:min(100%,460px); justify-self:center; padding-block:8px; }
  .evolution-faq>.wrap { grid-template-columns:1fr; gap:var(--space-content); }
  .evolution-faq .faq-heading { position:static; }
  .evolution-faq .faq-list { margin-top:0; }
}
@media(max-width:600px) {
  .evolution-site .visual-process-grid { grid-template-columns:1fr; gap:22px; }
  .process-diagram { height:210px; padding-inline:28px; }
  .diagram-1 { padding-inline:40px; }
  .diagram-2 { padding-inline:52px; }
  .diagram-destination { padding:15px; gap:12px; }
  .diagram-destination strong { font-size:13px; }
  .diagram-corner { right:29px; }
  .process-card-copy { padding:24px; }
  .evolution-site .visual-process-card h3 { font-size:27px; }
  .evolution-site .visual-process-card p { font-size:var(--type-body); margin-top:14px; }
  .evolution-site .evolution-action { align-items:stretch; }
  .evolution-site .evolution-action .button { width:100%; }
  .evolution-site .evolution-note { margin-top:28px; font-size:13px; }
  .handoff-technology,.handoff-human { padding:22px; max-width:300px; }
  .handoff-visual strong { font-size:16px; }
  .evolution-highlight { padding:22px; margin-top:32px; }
  .evolution-highlight>div { align-items:flex-start; }
  .evolution-site .evolution-highlight h3 { font-size:17px; }
  .evolution-site .evolution-faq .faq-list summary { padding-inline:16px; }
  .evolution-site .evolution-faq .faq-list details p { padding-inline:16px; }
  .evolution-site .final-invitation .final-description { font-size:16px; }
  .evolution-site .final-invitation .evolution-action { align-items:center; }
  .evolution-site :is(.system-section,.method-section,.final-invitation) .evolution-action .button { width:min(100%,320px); min-width:0; }
  .evolution-site .final-invitation .evolution-legal-note { text-align:left; }
  .sw-form-opening h2 { font-size:23px; }
}
@media(max-height:650px) { .evolution-faq .faq-heading { position:static; } }
/* One mobile hero rhythm across home, property and credit. svh includes the
   browser's expanded controls; content can still grow at increased text sizes. */
@media(max-width:700px) {
  .evolution-hero .hero-inner { padding-block:clamp(16px,3svh,28px) clamp(16px,3svh,24px); gap:clamp(14px,2.5svh,24px); }
  .evolution-hero .eyebrow { max-width:none; margin-bottom:12px; font-size:10px; line-height:1.6; letter-spacing:.1em; }
  .evolution-hero h1 { font-size:clamp(30px,min(10vw,6.4svh),60px); line-height:1.1; }
  .evolution-hero h1 .headline-line { max-width:none; text-wrap:initial; }
  .evolution-hero h1 .hero-phrase { display:block; }
  .evolution-hero .hero-bottom { display:flex; flex-direction:column; align-items:stretch; gap:16px; margin-top:18px; }
  .evolution-hero .hero-description { max-width:none; min-height:5lh; font-size:15px; line-height:1.6; }
  .evolution-hero .hero-action { min-width:0; width:100%; }
  .evolution-hero .evolution-action { width:100%; }
  .evolution-hero .hero-action .client-proof,.evolution-hero .hero-guarantee-link { min-height:74px; margin:12px 0 0; }
  .evolution-hero .brand-section { padding-top:14px; }
}
@media(min-width:450px) and (max-width:549px) {
  .evolution-hero .hero-description { min-height:4lh; }
}
@media(min-width:550px) and (max-width:700px) {
  .evolution-hero .hero-description { min-height:3lh; }
}
@media(max-width:700px) and (max-height:650px) {
  .evolution-hero .hero-inner { padding-block:12px; gap:10px; }
  .evolution-hero .eyebrow { margin-bottom:10px; }
  .evolution-hero .hero-bottom { margin-top:12px; gap:10px; }
  .evolution-hero .hero-description { font-size:14px; line-height:1.6; }
  .evolution-hero .evolution-action .button { min-height:50px; padding-block:10px; }
  .evolution-hero .brand-section { padding-top:10px; }
}
@media(max-width:360px) and (max-height:650px) {
  .evolution-hero .eyebrow { margin-bottom:8px; }
  .evolution-hero .hero-description { line-height:1.55; }
  .evolution-hero .brand-heading h2 { margin-bottom:8px; font-size:9px; letter-spacing:.08em; }
}
@media(prefers-reduced-motion:reduce) { .evolution-site * { transition:none!important; } }
/* Navigation and motion polish. Keep the approved copy and page compositions. */
:root { --header-height:88px; }
html { scrollbar-gutter:stable; }
.nav-scroll-sentinel { position:absolute; top:24px; left:0; width:1px; height:1px; pointer-events:none; }
.site-header { display:grid; grid-template-columns:minmax(0,1fr) auto minmax(0,1fr); gap:26px; isolation:isolate; background:#080808f2; border-bottom-color:#ffffff0d; transition:background-color 180ms var(--ease-out),border-color 180ms var(--ease-out),box-shadow 180ms var(--ease-out); }
.site-header.is-scrolled { background:#100d0bef; border-bottom-color:#ffffff1f; box-shadow:0 8px 30px #00000026; backdrop-filter:blur(18px); -webkit-backdrop-filter:blur(18px); }
.site-header .wordmark { width:fit-content; }
.site-header .original-logo { width:195px; }
.site-header nav { justify-content:center; gap:28px; margin:0; }
.site-header .header-actions { justify-self:end; gap:20px; }
.site-header .button { min-height:46px; padding:10px 16px; gap:14px; border-color:var(--color-orange); background:var(--color-orange); color:var(--color-dark); font-size:13px; transition:background-color 180ms var(--ease-out),border-color 180ms var(--ease-out),transform 180ms var(--ease-out); }
.site-header .button>span { color:inherit; font-size:20px; }
.nav-cta-compact { display:none; }
.site-header .button :is(.nav-cta-full,.nav-cta-compact),.site-mobile-menu .button :is(.nav-cta-full,.nav-cta-compact) { font:inherit; color:inherit; }
.site-header .header-crm { color:#a7a39f; font-size:12px; gap:7px; }
.site-header .header-crm>span { opacity:.65; }
.site-header .menu-toggle { border-color:#ffffff20; background:#ffffff06; border-radius:8px; }
.site-header .menu-toggle[aria-expanded=true] { border-color:#ff681d70; background:#ff681d12; color:var(--color-orange); }
.menu-backdrop { position:fixed; z-index:68; inset:var(--header-height) 0 0; background:#0008; backdrop-filter:blur(4px); -webkit-backdrop-filter:blur(4px); }
.menu-backdrop[hidden] { display:none; }
html.menu-is-open { overflow:hidden; }
.site-mobile-menu { top:calc(var(--header-height) + 10px); left:max(12px,env(safe-area-inset-left)); right:max(12px,env(safe-area-inset-right)); padding:12px 20px 20px; max-height:calc(100dvh - var(--header-height) - 30px - env(safe-area-inset-bottom) - var(--consent-inset,0px)); scroll-padding-block:12px; border:1px solid #ffffff24; border-radius:12px; background:radial-gradient(ellipse at 100% 0,#ff681d0c,transparent 70%),#11100f; box-shadow:0 20px 60px #0007; }
.site-mobile-menu .mobile-sector-link { justify-content:space-between; gap:20px; padding:14px 4px; min-height:68px; font:600 24px/1.3 var(--font-body); letter-spacing:-.035em; border-bottom:1px solid #ffffff12; }
.site-mobile-menu .mobile-sector-link>span[aria-hidden] { font-size:21px; color:#a29b94; }
.site-mobile-menu .mobile-sector-link[aria-current=page] { color:var(--color-orange); }
.site-mobile-menu .mobile-sector-link[aria-current=page]>span[aria-hidden] { color:var(--color-orange); }
.site-mobile-menu .mobile-crm { margin-top:5px; padding:12px 4px; min-height:48px; border:0; font-size:12px; color:#aaa5a0; }
.site-mobile-menu .mobile-menu-cta { margin-top:10px; }
.site-mobile-menu .button { min-height:52px; justify-content:space-between; border-radius:6px; }
.site-header a:focus-visible,.site-mobile-menu a:focus-visible { outline-offset:3px; }
.evolution-site .button>span { transition:transform 180ms var(--ease-out); }
.evolution-site .visual-process-card { box-shadow:0 1px 0 #ffffff06 inset; }
.evolution-site .process-diagram { border-bottom:1px solid #ffffff03; }
.evolution-site .diagram-record,.evolution-site .diagram-conversation { transition:transform 240ms var(--ease-out); }
.evolution-site .diagram-source,.evolution-site .diagram-reply { transition:border-color 180ms var(--ease-out),background-color 180ms var(--ease-out); }
.evolution-site .handoff-technology,.evolution-site .handoff-human { transition:transform 240ms var(--ease-out); }
@media(hover:hover) and (pointer:fine) {
  .site-header nav a:hover { color:var(--color-orange); }
  .site-header .button:hover { border-color:var(--color-orange-hover); background:var(--color-orange-hover); color:var(--color-dark); transform:none; }
  .site-mobile-menu .mobile-sector-link:hover { color:var(--color-orange); }
  .evolution-site .button:hover>span { transform:translate(2px,-2px); }
  .evolution-site .visual-process-card:hover .diagram-record { transform:translateY(-3px) rotate(-1deg); }
  .evolution-site .visual-process-card:hover .diagram-conversation { transform:translateY(-3px); }
  .evolution-site .visual-process-card:hover :is(.diagram-source,.diagram-reply) { border-color:#ff681d70; }
  .evolution-site .handoff-visual:hover .handoff-human { transform:translateY(-3px); }
}
.site-header .button:active,.site-mobile-menu .button:active { transform:scale(.98); }
@media(max-width:1100px) {
  :root { --header-height:80px; }
  .site-header { display:flex; gap:18px; }
  .site-header nav { display:none; }
  .site-header .original-logo { width:175px; }
  .site-header .header-actions { margin-left:auto; }
}
@media(max-width:600px) {
  :root { --header-height:72px; }
  .site-header .original-logo { width:155px; }
  .site-mobile-menu { padding:10px 18px 18px; }
}
/* Keep the primary action visible beside the menu, including narrow phones. */
@media(max-width:700px) {
  .header.site-header { display:grid; grid-template-columns:minmax(0,1fr) auto 44px; gap:10px; padding-left:max(16px,env(safe-area-inset-left)); padding-right:max(16px,env(safe-area-inset-right)); }
  .site-header .wordmark { min-width:0; max-width:100%; }
  .site-header .original-logo { max-width:100%; }
  .site-header .header-actions { display:flex; min-width:0; margin:0; }
  .site-header .nav-demo { min-height:44px; padding:10px 12px; gap:0; background:var(--color-orange); border-color:var(--color-orange); color:var(--color-dark); font-size:12px; line-height:1.5; }
  .site-header .nav-demo>.nav-cta-full,.site-header .nav-demo>span[aria-hidden]:not(.nav-cta-compact) { display:none; }
  .site-header .nav-demo>.nav-cta-compact { display:inline-flex; align-items:center; gap:7px; }
  .site-header .nav-cta-compact svg { width:16px; height:16px; flex-shrink:0; }
  .site-header .nav-demo:hover { background:#ff813f; border-color:#ff813f; color:var(--color-dark); }
}
@media(max-height:520px) {
  .site-mobile-menu { padding-block:8px 12px; }
  .site-mobile-menu .mobile-sector-link { min-height:48px; padding-block:10px; font-size:21px; }
}
html[data-input=keyboard] :is(.site-header,.site-mobile-menu,.evolution-site) *,
html[data-input=keyboard] .menu-icon span { transition:none; }
@media(prefers-reduced-motion:reduce) {
  .site-header,.site-header *,.site-mobile-menu * { transition:none!important; }
  .evolution-site .visual-process-card:hover .diagram-record { transform:rotate(-3deg); }
  .evolution-site .visual-process-card:hover .diagram-conversation,.evolution-site .handoff-visual:hover .handoff-human,.evolution-site .button:hover>span { transform:none; }
}


/* Approved copy: reuse the existing light section and cards for authority. */
.evolution-site .authority-copy-grid { grid-template-columns:repeat(2,minmax(0,1fr)); gap:32px; margin-top:var(--space-content); }
.evolution-site .authority-copy-grid article { display:block; min-width:0; border-color:var(--color-rule-light); }
.evolution-site .authority-copy-grid .authority-icon { display:block; flex:0 0 28px; width:28px; height:28px; }
.evolution-site .authority-copy-grid h3 { display:flex; align-items:center; gap:14px; grid-column:auto; min-height:0; max-width:none; margin:0 0 16px; }
.evolution-site .authority-copy-grid p { grid-column:auto; margin:0; max-width:none; color:var(--color-muted-light); }
/* Align descriptions even when adjacent headings wrap onto different lines. */
@supports(grid-template-rows:subgrid) {
  @media(min-width:601px) {
    .evolution-site .visual-process-card { display:grid; grid-row:span 3; grid-template-rows:subgrid; row-gap:0; }
    .evolution-site .process-card-copy { display:grid; grid-row:span 2; grid-template-rows:subgrid; row-gap:0; }
    .evolution-site .visual-process-card h3 { margin:0; }
  }
  @media(min-width:701px) {
    .steps li,.steps li:last-child { display:grid; grid-row:span 3; grid-template-rows:subgrid; row-gap:0; }
    .steps li>div { display:grid; grid-row:span 2; grid-template-rows:subgrid; row-gap:0; }
  }
  @media(min-width:1001px) {
    .evolution-site .authority-copy-grid { row-gap:16px; }
    .evolution-site .authority-copy-grid article { display:grid; grid-row:span 2; grid-template-rows:subgrid; }
    .evolution-site .authority-copy-grid h3 { margin:0; }
  }
  @media(min-width:801px) {
    .evolution-site .measurement-journey { row-gap:0; }
    .evolution-site .measurement-journey>li { display:grid; grid-row:span 3; grid-template-rows:subgrid; }
  }
}
@media(max-width:1000px) {
  .evolution-site .method-intro { grid-template-columns:1fr; gap:24px; }
  .evolution-site .method-intro .section-description { max-width:none; }
  .evolution-site .authority-copy-grid { grid-template-columns:1fr; gap:28px; }
  .evolution-site .authority-copy-grid article { display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1.45fr); gap:24px; }
  .evolution-site .authority-copy-grid h3 { margin:0; }
}
@media(max-width:600px) {
  .evolution-site .authority-copy-grid article { display:block; }
  .evolution-site .authority-copy-grid h3 { margin-bottom:14px; }
}
.copy-authority .client-proof { margin-top:28px; width:300px; background:#ffffff70; border-color:var(--color-rule-light); }
.copy-authority .client-proof-number,.copy-authority .client-proof-copy strong { color:var(--color-ink); }
.copy-authority .client-proof-copy { border-color:var(--color-rule-light); }
.copy-authority .client-proof-copy>span { color:var(--color-muted-light); }
@media(max-width:700px) {
  .copy-authority .client-proof { padding:12px 18px; }
}
@media(max-width:600px) {
  .copy-authority .client-proof { width:100%; }
}
.evolution-site .method-section>.wrap>.evolution-action { align-items:center; text-align:center; }

/* Credit context is attached to the system, with the same width as its cards. */
.evolution-site .system-context { display:flex; align-items:flex-start; gap:16px; margin-top:24px; padding:22px 24px; border:1px solid var(--color-rule-dark); border-radius:var(--radius-panel); background:#ffffff04; }
.system-context-icon { display:grid; place-items:center; width:24px; height:24px; flex:none; margin-top:1px; border:1px solid #ff681d80; border-radius:50%; color:var(--color-orange); font:600 13px/1 var(--font-body); }
.evolution-site .system-context p { margin:0; max-width:none; font:400 14px/1.8 var(--font-body); color:var(--color-muted-dark); }
.system-context strong { color:#dedbd7; font-weight:600; }
.evolution-site .system-section>.wrap>.system-context+.evolution-action { margin-top:28px; padding-top:0; border:0; }

/* Sector cards reuse the visual vocabulary of the system illustrations. */
.evolution-site .sector-showcase { background:var(--gradient-dark),var(--color-dark); color:var(--color-white); }
.sector-showcase-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:24px; }
.sector-showcase-card { display:flex; flex-direction:column; min-width:0; padding:32px; border:1px solid var(--color-rule-dark); border-radius:var(--radius-panel); background:radial-gradient(ellipse at 95% 0%,#ff681d10,transparent 70%),#10100f; color:var(--color-white); text-decoration:none; transition:border-color 180ms var(--ease-out); }
.sector-showcase-top { display:flex; align-items:center; justify-content:space-between; gap:16px; min-height:144px; padding-bottom:28px; border-bottom:1px solid var(--color-rule-dark); }
.evolution-site .sector-showcase h3 { margin:0; font:400 clamp(40px,4vw,56px)/1.1 var(--font-display); letter-spacing:-.025em; }
.sector-visual { position:relative; flex:none; width:138px; height:116px; }
.sector-visual-back { position:absolute; inset:8px 26px 12px 16px; border:1px solid #ff681d50; border-radius:10px; background:#ff681d08; transform:rotate(-12deg); }
.sector-visual-main { position:absolute; inset:6px 18px 12px 24px; display:grid; place-items:center; border:1px solid #ffffff38; border-radius:10px; background:linear-gradient(140deg,#2b2621,#171615); transform:rotate(6deg); transition:transform 240ms var(--ease-out); }
.sector-visual-main img { width:52px; height:52px; filter:invert(1); opacity:.9; }
.sector-visual-accent { position:absolute; right:2px; bottom:0; display:grid; place-items:center; width:42px; height:42px; border:1px solid #ff995f; border-radius:9px; background:var(--color-orange); box-shadow:0 8px 20px #0005; }
.sector-showcase-1 .sector-visual-back { transform:rotate(10deg); }
.sector-showcase-1 .sector-visual-main { transform:rotate(-5deg); }
.sector-showcase-copy { flex:1; padding-top:28px; }
.evolution-site .sector-showcase-promise { margin:0 0 16px; font:700 clamp(20px,1.7vw,24px)/1.45 var(--font-body); color:var(--color-white); letter-spacing:-.025em; text-wrap:pretty; }
.evolution-site .sector-showcase-description { margin:0; max-width:48ch; color:var(--color-muted-dark); font:400 var(--type-body)/1.75 var(--font-body); }
.sector-showcase-footer { display:flex; align-items:center; justify-content:space-between; gap:20px; margin-top:30px; padding-top:22px; border-top:1px solid var(--color-rule-dark); }
.sector-showcase-action { color:var(--color-orange); font:700 13px/1.65 var(--font-body); text-underline-offset:5px; }
.sector-showcase-arrow { display:grid; place-items:center; width:44px; height:44px; flex:none; border:1px solid #ff681d66; border-radius:50%; color:var(--color-orange); font:400 24px/1 var(--font-body); transition:transform 180ms var(--ease-out),background-color 180ms var(--ease-out),color 180ms var(--ease-out); }
.sector-showcase-card:focus-visible { outline:3px solid var(--color-orange); outline-offset:5px; }
.sector-showcase-card:focus-visible .sector-showcase-action { text-decoration:underline; }
.sector-showcase-card:active .sector-showcase-arrow { background:var(--color-orange); color:var(--color-dark); }
@media(hover:hover) and (pointer:fine) {
  .sector-showcase-card:hover { border-color:#ff681d90; }
  .sector-showcase-card:hover .sector-showcase-arrow { background:var(--color-orange); color:var(--color-dark); transform:translate(2px,-2px); }
  .sector-showcase-card:hover .sector-visual-main { transform:rotate(0) translateY(-3px); }
  .sector-showcase-card:hover .sector-showcase-action { text-decoration:underline; }
}
@media(max-width:1100px) {
  .sector-showcase-card { padding:26px; }
  .sector-visual { width:112px; }
  .sector-visual-main { inset-inline:16px 8px; }
  .sector-visual-back { inset-inline:8px 16px; }
}
@media(max-width:900px) {
  .sector-showcase-grid { grid-template-columns:1fr; }
  .sector-showcase-top { min-height:132px; }
}
@media(max-width:600px) {
  .evolution-site .system-context { padding:18px; gap:12px; margin-top:20px; }
  .evolution-site .system-context p { font-size:13px; line-height:1.75; }
  .system-context-icon { width:20px; height:20px; font-size:12px; }
  .sector-showcase-card { padding:24px; }
  .sector-showcase-top { padding-bottom:24px; min-height:116px; gap:12px; }
  .evolution-site .sector-showcase h3 { font-size:40px; }
  .sector-visual { width:88px; height:90px; }
  .sector-visual-main { inset:6px 10px 10px 8px; }
  .sector-visual-back { inset:8px 16px 8px 2px; }
  .sector-visual-main img { width:38px; height:38px; }
  .sector-visual-accent { width:32px; height:32px; border-radius:7px; }
  .sector-visual-accent img { width:18px; height:18px; }
  .sector-showcase-copy { padding-top:24px; }
  .sector-showcase-footer { gap:14px; margin-top:24px; padding-top:18px; }
  .sector-showcase-arrow { width:40px; height:40px; }
}
@media(max-width:360px) {
  .sector-showcase-card { padding:20px; }
  .evolution-site .sector-showcase h3 { font-size:36px; }
  .sector-visual { width:68px; height:84px; }
  .sector-visual-main img { width:32px; height:32px; }
}
@media(prefers-reduced-motion:reduce) {
  .sector-showcase-card,.sector-showcase-arrow,.sector-visual-main { transition:none; }
  .sector-showcase-card:hover .sector-visual-main { transform:none; }
  .sector-showcase-card:hover .sector-showcase-arrow { transform:none; }
}

/* Restored home comparison: dark before, light after, readable pairs on mobile. */
.evolution-site .before-after-section { background:var(--gradient-dark),var(--color-dark); color:var(--color-white); }
.evolution-site .before-after-heading { display:block; }
.before-after-heading h2 { max-width:28ch; }
.change-frame { overflow:hidden; border:1px solid var(--color-rule-dark); border-radius:var(--radius-panel); }
.change-comparison { width:100%; table-layout:fixed; border-spacing:0; border-collapse:separate; text-align:left; }
.change-comparison th,.change-comparison td { width:50%; padding-inline:32px; vertical-align:top; }
.change-comparison th:first-child,.change-comparison td:first-child { background:#141414; color:var(--color-muted-dark); }
.change-comparison th:last-child,.change-comparison td:last-child { background:var(--color-paper); color:var(--color-ink); }
.change-comparison th { padding-block:28px; border-top:3px solid #ffffff22; }
.change-comparison th:last-child { border-top-color:var(--color-orange); }
.change-column-heading { display:flex; align-items:center; justify-content:space-between; gap:20px; min-height:64px; }
.change-column-heading>span { font:400 36px/1.15 var(--font-display); letter-spacing:-.01em; }
.change-comparison th:first-child .change-column-heading>span { color:#e0ddd9; }
.change-comparison td { padding-block:20px; border-top:1px solid #ffffff12; }
.change-comparison td:last-child { border-top-color:#18181815; }
.evolution-site .change-comparison td p { display:flex; align-items:baseline; gap:14px; margin:0; max-width:none; font:400 16px/1.65 var(--font-body); }
.change-comparison td:last-child p { font-weight:550; }
.change-sign { display:inline-block; flex:none; width:18px; height:18px; align-self:flex-start; margin-top:4px; text-align:center; }
.change-comparison td:first-child .change-sign { color:#85817c; font:500 20px/18px var(--font-body); }
.change-comparison td:last-child .change-sign { padding:2px; border-radius:50%; background:#ff681d2b; }
.change-mobile-label { display:none; }
.change-sketch { position:relative; display:flex; align-items:center; gap:12px; padding:6px 4px; isolation:isolate; }
.change-sketch>span { display:grid; place-items:center; width:42px; height:42px; border:1px solid #ffffff26; border-radius:7px; background:#1d1d1c; }
.change-sketch-before img { filter:invert(1); opacity:.65; width:21px; height:21px; }
.change-sketch-before>span:nth-child(1) { transform:rotate(-9deg) translateY(4px); }
.change-sketch-before>span:nth-child(2) { transform:rotate(5deg) translateY(-5px); }
.change-sketch-before>span:nth-child(3) { transform:rotate(-5deg) translateY(5px); }
.change-sketch-after::before { content:''; position:absolute; inset-inline:20px; top:50%; height:1px; background:#18181840; z-index:-1; }
.change-sketch-after>span { background:var(--color-paper); border-color:#18181830; }
.change-sketch-after>span:last-child { border-color:var(--color-orange); background:var(--color-orange); }
.change-sketch-after img { width:21px; height:21px; }
@media(max-width:1000px) {
  .change-comparison th,.change-comparison td { padding-inline:24px; }
  .change-sketch { gap:8px; }
  .change-sketch>span { width:34px; height:34px; }
  .change-column-heading { gap:12px; }
  .change-column-heading>span { font-size:32px; }
}
@media(max-width:700px) {
  .change-frame { overflow:visible; border:0; border-radius:0; }
  .change-comparison,.change-comparison tbody { display:block; }
  .change-comparison thead { position:absolute; width:1px; height:1px; padding:0; margin:-1px; overflow:hidden; clip-path:inset(50%); white-space:nowrap; }
  .change-comparison tbody { display:grid; gap:16px; }
  .change-comparison tbody tr { display:block; overflow:hidden; border:1px solid var(--color-rule-dark); border-radius:var(--radius-panel); }
  .change-comparison td { display:block; width:100%; padding:18px 20px; border:0; }
  .change-comparison td:last-child { border-top:1px solid #ff681d70; }
  .change-mobile-label { display:block; margin-bottom:7px; font:750 10px/1.4 var(--font-body); letter-spacing:.1em; text-transform:uppercase; }
  .change-comparison td:first-child .change-mobile-label { color:#a4a09a; }
  .change-comparison td:last-child .change-mobile-label { color:var(--color-ink); }
  .evolution-site .change-comparison td p { font-size:14px; line-height:1.7; gap:10px; }
  .change-sign { width:16px; height:16px; }
}

/* Shared by commercial, utility and case study pages.
   DOM and keyboard order follow each column from top to bottom. */
.site-footer .footer-navigation {
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  grid-template-rows:auto;
  grid-auto-flow:row;
  column-gap:clamp(24px,4vw,64px);
  align-items:start;
}
.site-footer .footer-nav-group { display:flex; flex-direction:column; align-items:flex-start; }
.site-footer .footer-navigation h2 { margin:0 0 14px; color:var(--color-muted-dark); font:600 11px/1.6 var(--font-body); text-transform:uppercase; letter-spacing:.12em; }
.site-footer .footer-brand .footer-crm { align-self:flex-start; display:inline-flex; align-items:center; gap:10px; min-height:44px; margin-top:2px; color:var(--color-muted-dark); font:500 12px/1.6 var(--font-body); }
.site-footer .footer-crm>span { color:var(--color-orange); }
.site-footer .footer-navigation a {
  justify-content:flex-start;
  text-align:left;
  min-height:44px;
}

/* Shared development signature. Original logo, no recolouring or animation. */
a.sw-credit { box-sizing:border-box; display:inline-flex; align-items:center; justify-content:center; gap:10px; width:max-content; max-width:100%; min-height:44px; padding:9px 13px; border:1px solid #ffffff2e; border-radius:6px; background:#141414; color:#b8b8b4; font:400 11px/1.5 Manrope,Arial,sans-serif; text-decoration:none; white-space:nowrap; }
a.sw-credit>span { display:block; }
a.sw-credit>img { display:block; width:104px; height:auto; flex:none; }
a.sw-credit:focus-visible { outline:2px solid #ff681d; outline-offset:4px; }
@media(hover:hover) and (pointer:fine) { a.sw-credit:hover { color:#fafafa; border-color:#ff681d; } }
.site-footer .footer-meta { display:grid; grid-template-columns:minmax(0,1fr) auto auto; gap:16px 28px; }
.site-footer .footer-meta a.sw-credit { font-size:11px; color:#b8b8b4; }
@media(hover:hover) and (pointer:fine) { .site-footer .footer-meta a.sw-credit:hover { color:#fafafa; } }
@media(max-width:1100px) {
  .site-footer .footer-meta { grid-template-columns:minmax(0,1fr) auto; }
  .site-footer .footer-meta>small { grid-column:1/-1; }
}
@media(max-width:650px) {
  .site-footer .footer-meta { grid-template-columns:minmax(0,1fr); gap:12px; }
  .site-footer .footer-meta .sw-credit { justify-self:start; margin-top:4px; }
}

/* On mobile the commercial CTA follows the reading journey. */
/* Mobile booking shares the menu control's square footprint. */
@media(max-width:700px) {
  .header.site-header { grid-template-columns:minmax(0,1fr) 44px 44px; }
  .site-header .header-actions { display:flex; }
  .site-header .header-crm { display:none; }
  .site-header .nav-demo { width:44px; height:44px; min-height:44px; padding:10px; border-radius:8px; }
  .site-header .nav-cta-compact svg { width:22px; height:22px; }
  .site-header .menu-toggle { margin-left:0; }
}

/* Shared section introductions across commercial, case and editorial pages. */
:root body :is(.redesign .section-heading,.evolution-site .method-intro,.case-site .cs-library-heading,.journal-section-heading) {
  gap:24px var(--space-grid);
  margin-bottom:var(--space-content);
}
:root body :is(.redesign .section-heading,.evolution-site .method-intro,.case-site .cs-library-heading,.journal-section-heading) h2 {
  max-width:none;
  font:400 var(--type-section)/1.12 var(--font-display);
  letter-spacing:-.02em;
  text-wrap:pretty;
}
:root body :is(.redesign .section-heading,.evolution-site .method-intro,.case-site .cs-library-heading,.journal-section-heading) :is(.eyebrow,.cs-eyebrow) {
  font-size:var(--type-label);
  line-height:1.6;
  letter-spacing:.16em;
  margin-bottom:24px;
}
:root body :is(.redesign .section-heading,.evolution-site .method-intro,.case-site .cs-library-heading,.journal-section-heading)>:is(p,.section-description) {
  max-width:none;
  margin:0;
  padding:0;
  font-size:var(--type-intro);
  line-height:1.75;
}
:root body :is(.redesign .section-heading,.evolution-site .method-intro,.case-site .cs-library-heading,.journal-section-heading)>* { min-width:0; }
@media(min-width:851px) {
  :root body :is(.redesign .section-heading,.evolution-site .method-intro,.case-site .cs-library-heading,.journal-section-heading) {
    display:grid;
    grid-template-columns:minmax(0,1.8fr) minmax(0,1fr);
    align-items:start;
  }
  :root body :is(.redesign .section-heading,.evolution-site .method-intro,.case-site .cs-library-heading,.journal-section-heading)>:is(p,.section-description) {
    padding-top:calc(var(--type-label) * 1.6 + 24px);
  }
  :root body .training-layout {
    grid-template-columns:minmax(0,1.8fr) minmax(0,1fr);
    column-gap:var(--space-grid);
  }
  body :is(.cs-library-heading,.journal-section-heading)>a {
    justify-self:end;
    margin-top:calc(var(--type-label) * 1.6 + 24px);
  }
}
/* FAQs need a reading column, rather than a narrow supporting-text column. */
@media(min-width:1001px) {
  :root body .evolution-faq>.wrap {
    grid-template-columns:minmax(0,1fr) minmax(0,1.6fr);
    gap:var(--space-grid);
  }
}
@media(max-width:1000px) {
  :root body .evolution-faq>.wrap {
    grid-template-columns:minmax(0,1fr);
    gap:var(--space-content);
  }
  :root body .evolution-faq .faq-heading { position:static; }
  :root body .evolution-faq .faq-list { margin-top:0; }
}
/* A heading nested beside an illustration remains a single text column. */
:root body .training-layout .section-heading { display:block; margin-bottom:0; }
:root body .training-layout .section-heading>.section-description { margin-top:24px; padding-top:0; }
:root body :is(.reality-heading,.faq-heading) h2 { max-width:none; text-wrap:pretty; }
@media(max-width:850px) {
  :root body :is(.redesign .section-heading,.evolution-site .method-intro,.case-site .cs-library-heading,.journal-section-heading) {
    display:flex;
    flex-direction:column;
    align-items:stretch;
    gap:24px;
  }
  body :is(.cs-library-heading,.journal-section-heading)>a { align-self:flex-start; }
}

/* The title and introduction share the site grid; the arguments get room below. */
:root body .reality>.wrap { display:block; }
:root body .reality .section-heading>.section-description { margin:0; }
:root body .reality .pain-grid {
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:0 var(--space-grid);
  margin:0;
  border:0;
}
:root body .reality .pain-grid article {
  grid-template-columns:24px minmax(0,1fr);
  gap:12px 20px;
  padding:28px 0;
  border-top:1px solid var(--color-rule-light);
  border-bottom:0;
}
:root body .reality .pain-grid article:nth-last-child(-n+2) { border-bottom:1px solid var(--color-rule-light); }
:root body .reality .pain-grid p { font-size:var(--type-body); line-height:1.75; }
:root body .demo-reassurance {
  max-width:54ch;
  margin:20px auto 0;
  font:400 14px/1.75 var(--font-body);
  color:var(--color-muted-dark);
}
@media(max-width:600px) {
  :root body .reality .pain-grid { grid-template-columns:minmax(0,1fr); }
  :root body .reality .pain-grid article { padding:24px 0; column-gap:16px; }
  :root body .reality .pain-grid article:nth-last-child(2) { border-bottom:0; }
  :root body .demo-reassurance { font-size:13px; }
}

/* Test-only sector direction: a continuous reading surface. */
.sector-reading{--sr-paper:#f4f1eb;--sr-ink:#191918;--sr-muted:#605d57;--sr-orange:#ff681b;--sr-line:#dcd7ce;background:var(--sr-paper);color:var(--sr-ink);font-family:Manrope,sans-serif}
.sector-reading *{box-sizing:border-box}.sector-reading ::selection{background:#ffbe97;color:#171715}.sector-reading a{color:inherit;text-underline-offset:5px}.sector-reading a:focus-visible,.sector-reading button:focus-visible,.sector-reading summary:focus-visible{outline:3px solid #aa420c;outline-offset:5px}.sector-reading h1,.sector-reading h2,.sector-reading h3,.sector-reading p{margin:0}.sector-reading h1,.sector-reading h2{font-family:Anton,sans-serif;font-weight:400;letter-spacing:-.02em;line-height:1.12;text-wrap:balance}.sector-reading h1{font-size:68px;max-width:820px}.sector-reading h2{font-size:40px;margin-bottom:24px}.sector-reading h3{font-family:Manrope,sans-serif;font-size:19px;line-height:1.4;font-weight:800;letter-spacing:-.025em}.sector-reading p{font-size:16px;line-height:1.85;color:var(--sr-muted)}.sector-reading p strong{color:var(--sr-ink);font-weight:700}.sector-reading .sr-width{width:min(100% - 64px,824px);margin-inline:auto}
.sector-reading .sr-hero{padding:34px 0 42px;min-height:0;display:block;background:var(--sr-paper);color:var(--sr-ink);border-bottom:1px solid var(--sr-line)}.sr-breadcrumb{display:flex;align-items:center;gap:11px;font-size:12px;color:var(--sr-muted);margin-bottom:34px}.sr-breadcrumb a{text-decoration:none}.sr-breadcrumb a:hover{text-decoration:underline}.sr-breadcrumb>span:last-child{color:var(--sr-ink)}.sr-sector{display:inline-flex;align-items:center;gap:9px;font-size:11px;font-weight:700;color:#803908;background:#fbe5d6;border:1px solid #eacbb8;border-radius:30px;padding:7px 12px;margin-bottom:22px}.sr-sector img{opacity:.85}.sector-reading h1 span{color:var(--color-orange)}.sector-reading .sr-lead{font-size:18px;line-height:1.75;max-width:740px;margin-top:24px}.sr-hero-action{margin-top:29px;display:flex;gap:22px;align-items:center}.sector-reading .sr-button{display:inline-flex;gap:26px;align-items:center;justify-content:space-between;min-height:54px;padding:17px 23px;font:800 14px/1.3 Manrope,sans-serif;letter-spacing:0;border:1px solid transparent;border-radius:7px;background:var(--sr-orange);color:#181715;box-shadow:0 5px 12px #a3440812;transition:background 180ms var(--ease-out),box-shadow 180ms var(--ease-out)}.sector-reading .sr-button:hover{background:#ff7b37;box-shadow:0 7px 18px #a3440820}.sr-button img{flex-shrink:0}.sr-hero-action>span{font-size:11px;color:var(--sr-muted)}.sr-trust{display:flex;gap:14px;align-items:center;margin-top:30px}.sr-faces{display:flex;padding-right:4px}.sr-faces img{object-fit:cover;border-radius:50%;border:2px solid var(--sr-paper);margin-left:-9px;background:#fff}.sr-faces img:first-child{margin-left:0}.sector-reading .sr-trust p{font-size:11px;line-height:1.6}.sr-body{padding-top:2px}.sr-section{padding-top:58px;scroll-margin-top:112px}.sr-reality>p+p{margin-top:18px}.sr-signs{margin-top:30px}.sr-signs h3{margin-bottom:18px}.sr-signs ul{padding:0;margin:0;list-style:none;display:grid;gap:8px}.sr-signs li{display:flex;align-items:center;gap:15px;border:1px solid var(--sr-line);background:#fffdfa;border-radius:8px;padding:16px 20px;font-size:14px;line-height:1.6}.sr-signs li img{flex-shrink:0;opacity:.7}.sector-reading .sr-section-intro{margin-top:-10px;margin-bottom:24px}.sr-deliverables{display:grid;gap:14px}.sr-deliverables article{display:grid;grid-template-columns:34px 1fr;gap:18px;background:#fffdfa;border:1px solid var(--sr-line);border-radius:10px;padding:28px}.sr-delivery-icon{padding-top:2px}.sr-deliverables h3{margin-bottom:10px}.sector-reading .sr-deliverables p{font-size:14px;line-height:1.85}.sr-outcome{display:flex;align-items:start;gap:9px;margin-top:17px;padding-top:14px;border-top:1px solid #e9e3d9;color:#813509;font-size:12px;font-weight:600;line-height:1.7}.sr-outcome img{flex-shrink:0;margin-top:2px}.sr-case{border-radius:12px;padding:30px;background:#fffdfa;border:1px solid var(--sr-line)}.sr-person{display:flex;gap:16px;align-items:center}.sr-person>img:first-child{border-radius:50%;object-fit:cover;background:#fff}.sr-person h3{font-size:18px}.sector-reading .sr-person p{font-size:11px;line-height:1.7;margin-top:3px}.sr-person span{font-size:10px;color:var(--sr-muted);display:block;margin-top:3px}.sr-case-brand{margin-left:auto;object-fit:contain;max-width:90px}.sr-case-results{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-top:28px;border-block:1px solid var(--sr-line);padding-block:24px}.sr-case-results div{display:grid;gap:8px}.sr-case-results strong{font:400 54px/1 Anton,sans-serif;color:#b6460a;font-variant-numeric:tabular-nums}.sr-case-results span{font-size:11px;color:var(--sr-muted)}.sr-case-context{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-top:22px}.sector-reading .sr-case-context p{font-size:12px}.sector-reading .sr-case-date{font-size:10px;line-height:1.7;margin-top:16px}.sr-text-link{display:inline-flex;align-items:center;gap:10px;text-decoration:none;font-weight:800;font-size:12px}.sr-text-link:hover{text-decoration:underline}.sector-reading .sr-disclaimer{font-size:10px;line-height:1.75;margin:14px 2px}.sr-more-cases{padding:8px 0}.sr-faq-list{display:grid;gap:10px}.sr-faq-list details{background:#fffdfa;border:1px solid var(--sr-line);border-radius:8px;overflow:hidden}.sr-faq-list summary{position:relative;list-style:none;display:flex;align-items:center;justify-content:space-between;gap:20px;cursor:pointer;padding:20px 22px;font:700 14px/1.6 Manrope,sans-serif;color:var(--sr-ink)}.sr-faq-list summary::after{display:none}.sr-faq-list summary::-webkit-details-marker{display:none}.sr-toggle{display:block;position:relative;width:16px;height:16px;flex-shrink:0}.sr-toggle:before,.sr-toggle:after{content:'';position:absolute;background:currentColor;left:1px;top:7px;width:14px;height:1px;transition:transform 180ms var(--ease-out)}.sr-toggle:after{transform:rotate(90deg)}.sr-faq-list details[open] .sr-toggle:after{transform:rotate(0)}.sr-faq-list details[open]{border-color:#b4a89a}.sector-reading .sr-faq-list details p{padding:0 22px 22px;font-size:14px;line-height:1.85}.sector-reading .sr-final{background:#191918;color:#f7f3eb;text-align:left;border-radius:12px;padding:38px;margin-top:64px;position:relative;overflow:hidden}.sr-final-top{display:flex;align-items:center;gap:12px;color:#ff9b65;margin-bottom:24px;font-size:11px;font-weight:600}.sr-final-top>img{filter:invert(1)}.sector-reading .sr-final h2{font-size:43px;margin-bottom:18px}.sector-reading .sr-final>p{max-width:630px;color:#c4bfb6;font-size:15px}.sr-final .sr-button{margin-top:25px}.sector-reading .sr-final .sr-final-note{font-size:11px;line-height:1.6;margin-top:16px;color:#bdb7ac}.sr-explore{display:flex;justify-content:space-between;gap:24px;padding:29px 0 58px;font-size:11px}.sr-explore a{text-decoration:none}.sr-explore a:hover{text-decoration:underline}.sr-explore span{margin-left:8px}
@media(min-width:1500px){.sector-reading .sr-width{width:min(100% - 64px,880px)}}
@media(max-width:700px){.sector-reading .sr-width{width:calc(100% - 40px)}.sector-reading .sr-hero{padding:22px 0 30px}.sr-breadcrumb{font-size:11px;margin-bottom:28px}.sr-sector{font-size:10px;padding:6px 10px;margin-bottom:19px}.sector-reading h1{font-size:45px;line-height:1.1;letter-spacing:-.025em;text-wrap:initial}.sr-desktop-break{display:none}.sector-reading .sr-lead{font-size:15px;line-height:1.8;margin-top:20px}.sr-hero-action{margin-top:22px;align-items:flex-start;flex-direction:column;gap:11px}.sector-reading .sr-button{font-size:13px;min-height:54px;width:100%;padding:16px 20px}.sr-hero-action>span{font-size:10px}.sr-trust{gap:11px;margin-top:24px}.sr-faces img{width:33px;height:33px;margin-left:-10px}.sector-reading .sr-trust p{font-size:10px;max-width:210px}.sr-trust p strong{display:block}.sr-section{padding-top:42px;scroll-margin-top:94px}.sector-reading h2{font-size:32px;margin-bottom:20px;line-height:1.16}.sector-reading h2 br{display:none}.sector-reading p{font-size:14px;line-height:1.85}.sr-signs{margin-top:27px}.sector-reading h3{font-size:17px}.sr-signs li{font-size:12px;padding:14px 16px;gap:12px;align-items:flex-start}.sr-signs li img{width:17px;height:17px;margin-top:2px}.sr-deliverables article{grid-template-columns:1fr;gap:12px;padding:22px}.sr-deliverables h3{font-size:17px}.sector-reading .sr-deliverables p{font-size:13px}.sr-outcome{font-size:11px}.sr-case{padding:21px}.sr-person{gap:12px}.sr-person>img:first-child{width:51px;height:51px}.sr-person h3{font-size:16px}.sector-reading .sr-person p{font-size:9px}.sr-person span{font-size:9px}.sr-case-brand{display:none}.sr-case-results{grid-template-columns:repeat(2,1fr);gap:24px 18px;margin-top:22px;padding-block:22px}.sr-case-results strong{font-size:48px}.sr-case-results span{font-size:11px}.sr-case-context{align-items:flex-start;flex-direction:column;gap:14px}.sector-reading .sr-case-context p{font-size:11px}.sector-reading .sr-case-date{font-size:9px}.sector-reading .sr-disclaimer{font-size:9px}.sr-faq-list summary{font-size:13px;padding:19px 18px;gap:17px}.sector-reading .sr-faq-list details p{padding:0 18px 21px;font-size:13px}.sector-reading .sr-final{padding:27px 23px;margin-top:44px;border-radius:10px}.sr-final-top{font-size:10px;gap:10px;margin-bottom:20px}.sr-final-top>img{width:23px;height:23px;flex-shrink:0}.sector-reading .sr-final h2{font-size:34px}.sector-reading .sr-final>p{font-size:13px}.sector-reading .sr-final .sr-final-note{font-size:10px}.sr-explore{padding:24px 0 40px;flex-direction:column;gap:16px;font-size:11px}}
@media(prefers-reduced-motion:reduce){.sector-reading .sr-button,.sr-toggle:before,.sr-toggle:after{transition:none}}

/* Case study system. Shared navigation, forms and footer inherit
   the production styles; every new content rule stays within .case-site. */
.case-site{--cs-paper:var(--color-paper);--cs-ink:var(--color-ink);--cs-orange:var(--color-orange);background:var(--color-dark);color:var(--color-white);font-family:var(--font-body)}
.case-site *{box-sizing:border-box}
.case-site [hidden]{display:none!important}
.case-site .cs-wrap{width:calc(100% - 2 * var(--gutter));max-width:calc(1440px - 2 * var(--gutter));margin-inline:auto}
.case-site h1,.case-site h2,.case-site h3,.case-site p,.case-site dl{margin:0}
.case-site h1,.case-site h2,.case-site h3{font-weight:400;font-family:Anton,Impact,sans-serif;letter-spacing:-.025em;text-wrap:balance}
.case-site h1{font-size:var(--type-page);line-height:1.08}
.case-site h2{font-size:var(--type-section);line-height:1.08}
.case-site h3{font-size:32px;line-height:1.18}
.case-site em{font-style:normal;color:var(--cs-orange)}
.case-site a{text-decoration:none;color:inherit}
.case-site :is(a,button,input,select):focus-visible{outline:3px solid var(--cs-focus,var(--cs-orange));outline-offset:5px}
.case-site :is(section[id],main[id]){scroll-margin-top:24px}
.case-site .cs-eyebrow{font:700 var(--type-label)/1.6 var(--font-body);letter-spacing:.15em;text-transform:uppercase;color:var(--cs-orange);margin-bottom:22px}
.case-site .cs-small-label{font:700 12px/1.5 Manrope,sans-serif;letter-spacing:.12em;text-transform:uppercase}
.case-site .cs-text-link{display:inline-flex;align-items:center;gap:24px;font-size:14px;font-weight:750;min-height:44px}
.case-site .cs-text-link>span[aria-hidden]{font-size:22px;font-weight:400;transition:transform 180ms var(--ease-out)}
.case-site .cs-date{color:var(--color-muted-dark);font-size:12px;line-height:1.6}
.case-site .cs-library-hero{padding-top:var(--space-page-intro);background:var(--gradient-dark)}
.case-site .cs-hero-grid{display:grid;grid-template-columns:minmax(0,1.12fr) minmax(0,1fr);align-items:center;gap:var(--space-grid)}
.case-site .cs-lead{max-width:500px;color:var(--color-muted-dark);font-size:16px;line-height:1.75;margin:24px 0 16px}
.case-site .cs-hero-bottom{margin-top:40px;border-top:1px solid var(--color-rule-dark);padding-block:24px;display:flex;align-items:center;justify-content:space-between;gap:20px}
.case-site .cs-hero-bottom>p{font-size:12px;color:var(--color-muted-dark)}
.case-site .cs-hero-bottom strong{font-weight:500;color:#f4f1eb}
.case-site .cs-library,.case-site .cs-results-section{background:var(--cs-paper);color:var(--cs-ink);padding-block:var(--space-section)}
.case-site .cs-library-heading{display:flex;justify-content:space-between;align-items:flex-end;gap:40px;margin-bottom:38px}
.case-site .cs-library-heading>p{max-width:350px;color:var(--color-muted-light);font-size:14px;line-height:1.8;padding-bottom:4px}
.case-site .cs-library :is(.cs-eyebrow),.case-site .cs-results-section .cs-eyebrow{color:var(--color-accent-on-light)}
.case-site .cs-filters{display:flex;align-items:flex-end;justify-content:flex-start;flex-wrap:wrap;gap:20px;padding-block:25px;border-block:1px solid #18181822}
.case-site .cs-sector-filter{border:0;display:flex;flex-wrap:wrap;gap:8px;padding:0;margin:0;min-width:0}
.case-site .cs-sector-filter legend{font-size:12px;color:var(--color-muted-light);margin-bottom:12px}
.case-site .cs-sector-filter label{position:relative;cursor:pointer}
.case-site .cs-sector-filter input{position:absolute;width:1px;height:1px;opacity:0}
.case-site .cs-sector-filter label>span{display:flex;align-items:center;gap:14px;padding:11px 16px;min-height:46px;border:1px solid #18181826;border-radius:5px;font-size:12px;font-weight:750;transition:color 180ms var(--ease-out),background 180ms var(--ease-out),border-color 180ms var(--ease-out)}
.case-site .cs-sector-filter small{font-size:12px;opacity:.7}
.case-site .cs-sector-filter input:checked+span{background:#181818;color:#fff;border-color:#181818}
.case-site .cs-sector-filter input:focus-visible+span{outline:3px solid #cb500d;outline-offset:3px}
.case-site .cs-type-filter{display:flex;flex-direction:column;gap:12px;font-size:12px;color:var(--color-muted-light)}
.case-site .cs-type-filter select{background:transparent;color:#181818;font:650 12px Manrope,sans-serif;border:1px solid #18181826;border-radius:5px;height:46px;min-width:230px;padding:0 32px 0 14px}
.case-site .cs-filter-submit{background:#181818;color:#fff;border:0;border-radius:5px;padding:12px;min-height:46px;font:650 12px Manrope,sans-serif}
.case-site .is-enhanced .cs-filter-submit{display:none}@media(scripting:enabled){.case-site .cs-filters .cs-filter-submit{display:none}}
.case-site .cs-result-count{font-size:12px;color:var(--color-muted-light);margin-block:24px 20px}
.case-site .cs-card-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}
.case-site .cs-card{background:#fff;border:1px solid #dad6ce;border-radius:8px;overflow:hidden;min-width:0;transition:box-shadow 180ms var(--ease-out),border-color 180ms var(--ease-out)}
.case-site .cs-card-link{display:flex;flex-direction:column;height:100%;outline-offset:-4px!important}
.case-site .cs-card-image{height:244px;background:linear-gradient(140deg,#e3ddd3,#f0ece5);position:relative;display:flex;align-items:center;justify-content:center;isolation:isolate}
.case-site .cs-card-image::before{content:'';position:absolute;inset:12px;border:1px solid #fff8;border-radius:5px;z-index:-1}
.case-site .cs-card-image .cs-portrait{width:185px;height:185px;object-fit:cover;object-position:center 28%;border-radius:50%;transition:transform 240ms var(--ease-out);filter:saturate(.8);margin-bottom:6px}
.case-site .cs-card-image .cs-organization{object-fit:contain;border-radius:0;width:72%;height:auto;max-height:125px;filter:none}
.case-site .cs-sector-tag{font-size:12px;line-height:1.5;text-transform:uppercase;letter-spacing:.05em;font-weight:650;color:#62564b;background:var(--cs-paper);border:1px solid #18181812;border-radius:4px;padding:5px 8px;white-space:nowrap}
.case-site .cs-image-location{position:absolute;bottom:13px;left:0;right:0;display:flex;gap:5px;align-items:center;justify-content:center;font-size:12px;color:#554e43}
.case-site .cs-image-location :is(img,svg){width:12px;height:12px}
.case-site .cs-card-body{padding:24px 24px 0;display:flex;flex-direction:column;flex:1}
.case-site .cs-agency{font-size:12px;color:var(--color-muted-light);line-height:1.55;margin-bottom:7px;min-height:16px}
.case-site .cs-card h3{font-size:33px}
.case-site .cs-card-since{font-size:12px;color:var(--color-muted-light);margin-top:8px}
.case-site .cs-card-results{display:grid;grid-template-columns:1fr 1fr;gap:13px;margin-top:25px;padding-top:20px;border-top:1px solid #18181819}
.case-site .cs-card-results>p{display:flex;flex-direction:column;gap:5px;min-width:0}
.case-site .cs-card-results strong{font-size:27px;line-height:1.3;letter-spacing:-.055em;font-weight:800;white-space:nowrap}
.case-site .cs-card-results>p:first-child strong{color:var(--color-accent-on-light)}
.case-site .cs-card-results span{font-size:12px;line-height:1.5;color:var(--color-muted-light)}
.case-site .cs-campaign-label{font-size:12px;font-weight:650;color:#62564b;margin-block:19px 24px}
.case-site .cs-card-footer{margin-top:auto;padding-block:17px;border-top:1px solid #18181819;display:flex;align-items:center;justify-content:space-between;gap:8px;font-size:12px;font-weight:750}
.case-site .cs-card-footer>span:last-child{font-size:21px;font-weight:500;color:var(--color-accent-on-light);transition:transform 180ms var(--ease-out)}
.case-site .cs-library-note{font-size:12px;line-height:1.85;color:var(--color-muted-light);margin-top:30px;padding-top:20px;border-top:1px solid #18181822;max-width:none}
.case-site .cs-empty{text-align:center;padding:64px 20px 52px;border:1px dashed #b9b0a4;border-radius:8px;background:#ebe6dc}
.case-site .cs-empty-icon{display:inline-flex;align-items:center;justify-content:center;width:54px;height:54px;background:#ff681d;border-radius:8px;margin-bottom:25px}
.case-site .cs-empty-icon img{width:26px;height:26px}
.case-site .cs-empty>p{max-width:470px;margin:15px auto;font-size:14px;color:var(--color-muted-light);line-height:1.8}
.case-site .cs-detail-hero{padding-block:var(--space-page-detail) var(--space-page-intro);background:var(--gradient-dark)}
.case-site .cs-back{display:inline-flex;align-items:center;gap:12px;min-height:44px;font-size:12px;color:#bab8b1;margin-bottom:40px}
.case-site .cs-detail-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:var(--space-grid);align-items:center}
.case-site .cs-detail-identity h1{font-size:var(--type-page)}
.case-site .cs-detail-agency{font-size:14px;color:var(--color-muted-dark);margin-top:12px}
.case-site .cs-profile-picture{background:linear-gradient(145deg,#e6e1d9,#f6f4ef);border-radius:8px;position:relative;margin-top:28px;height:320px;display:flex;align-items:center;justify-content:center;overflow:hidden}
.case-site .cs-profile-picture .cs-portrait{height:260px;width:260px;object-fit:cover;object-position:center 28%;border-radius:50%;margin-bottom:10px}
.case-site .cs-profile-picture .cs-organization{width:70%;height:auto;object-fit:contain;border-radius:0}
.case-site .cs-photo-location{position:absolute;bottom:14px;left:0;right:0;display:flex;align-items:center;justify-content:center;gap:7px;color:#62584c;font-size:12px}
.case-site .cs-photo-location :is(img,svg){width:14px;height:14px}
.case-site .cs-detail-summary>.cs-small-label{color:#beb5ab}
.case-site .cs-detail-number{display:flex;align-items:center;gap:25px;margin-block:18px 22px}
.case-site .cs-detail-number>strong{color:var(--cs-orange);font:400 clamp(88px,8vw,112px)/1 var(--font-display);letter-spacing:-.04em;white-space:nowrap}
.case-site .cs-detail-number>span{font-size:19px;font-weight:600;line-height:1.6;max-width:130px}
.case-site .cs-detail-intro{color:var(--color-muted-dark);font-size:15px;line-height:1.85;max-width:450px}
.case-site .cs-summary-data{margin-top:30px;border-block:1px solid #ffffff26;padding-block:12px}
.case-site .cs-summary-data>div{display:flex;justify-content:space-between;gap:20px;align-items:center;padding-block:9px}
.case-site .cs-summary-data dt{font-size:12px;color:#b2aba3}
.case-site .cs-summary-data dd{margin:0;font-size:14px;font-weight:650;text-align:right}
.case-site .cs-detail-summary>.cs-text-link{margin-block:22px 15px;color:#ff813f}
.case-site .cs-detail-summary>.cs-date{display:block}
.case-site .cs-profile-section{padding-block:var(--space-section);background:var(--color-surface);border-block:1px solid #ffffff1c}
.case-site .cs-profile-grid{display:grid;grid-template-columns:1fr 1.25fr;gap:80px}
.case-site .cs-profile-copy{color:#d0cac2;font-size:16px;line-height:1.85}
.case-site .cs-profile-facts{display:grid;grid-template-columns:1fr 1fr;gap:25px;margin-block:26px 15px}
.case-site .cs-profile-facts dt{color:#a99f92;font-size:12px;margin-bottom:8px}
.case-site .cs-profile-facts dd{margin:0;font-size:12px;font-weight:650}
.case-site .cs-profile-grid .cs-text-link{color:#ff813f;font-size:12px}
.case-site .cs-campaign-panels{display:grid;grid-template-columns:1fr 1fr;gap:24px}
.case-site .cs-campaign-panel{background:#fff;border:1px solid #dad6ce;border-radius:8px;padding:30px;min-width:0}
.case-site .cs-campaign-panel>header{display:flex;align-items:center;gap:15px;border-bottom:1px solid #18181822;padding-bottom:24px}
.case-site .cs-campaign-icon{width:44px;height:44px;background:#ff681d;border-radius:6px;flex-shrink:0;display:flex;align-items:center;justify-content:center}
.case-site .cs-campaign-icon img{width:23px;height:23px}
.case-site .cs-campaign-panel h3{font:750 17px/1.4 Manrope,sans-serif;letter-spacing:-.025em;margin-top:3px;text-wrap:initial}
.case-site .cs-campaign-panel header .cs-small-label{font-size:12px;color:var(--color-muted-light)}
.case-site .cs-campaign-metrics{padding-block:26px}
.case-site .cs-metric-primary{display:flex;flex-direction:column;padding-bottom:25px}
.case-site .cs-metric-primary>.cs-small-label{color:#62584c}
.case-site .cs-metric-primary>strong{font:400 96px/1.3 Anton,sans-serif;letter-spacing:-.035em;color:var(--color-accent-on-light)}
.case-site .cs-metric-primary>span:last-child{font-size:12px;color:var(--color-muted-light)}
.case-site .cs-campaign-metrics dl{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.case-site .cs-campaign-metrics dl>div{display:flex;flex-direction:column;min-width:0}
.case-site .cs-campaign-metrics dt{font-size:12px;color:var(--color-muted-light);margin-bottom:8px}
.case-site .cs-campaign-metrics dd{margin:auto 0 0;font-size:26px;line-height:1.4;font-weight:750;letter-spacing:-.035em;white-space:nowrap;font-variant-numeric:tabular-nums}
.case-site .cs-calculation{padding-top:16px;border-top:1px solid #18181822;font-size:12px;line-height:1.7;color:var(--color-muted-light)}
.case-site .cs-calculation strong{font-weight:650;color:#484037}
.case-site .cs-single-campaign{grid-template-columns:1fr}
.case-site .cs-single-campaign .cs-campaign-panel{padding:35px 40px}
.case-site .cs-single-campaign .cs-campaign-metrics{display:grid;grid-template-columns:1fr 1.2fr;align-items:center;gap:50px}
.case-site .cs-single-campaign .cs-metric-primary{padding-bottom:0}
.case-site .cs-single-campaign .cs-metric-primary>strong{font-size:110px}
.case-site .cs-single-campaign .cs-campaign-metrics dd{font-size:clamp(27px,3.2vw,42px)}
.case-site .cs-data-context{display:grid;grid-template-columns:1fr 2fr;gap:40px;border-top:1px solid #18181826;margin-top:36px;padding-top:32px}
.case-site .cs-data-context>div:first-child{display:flex;gap:12px;align-items:flex-start}
.case-site .cs-data-context h3{font:750 14px/1.7 Manrope,sans-serif;letter-spacing:0}
.case-site .cs-context-icon{border:1px solid #918578;width:22px;height:22px;border-radius:50%;font-size:12px;display:inline-flex;align-items:center;justify-content:center;flex-shrink:0}
.case-site .cs-data-context p{font-size:12px;color:var(--color-muted-light);line-height:1.85}
.case-site .cs-data-context p+p{margin-top:12px}
.case-site .cs-related{padding-block:var(--space-section);background:var(--color-paper);color:var(--color-ink)}
/* Consecutive sections on the same background share one section gap. */
.case-site .cs-results-section + .cs-related{padding-block-start:0}
.case-site .cs-related .cs-eyebrow{color:var(--color-accent-on-light)}
.case-site .cs-related-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px}
.case-site .cs-related-grid .cs-card-link{display:grid;grid-template-columns:.8fr 1fr}
.case-site .cs-related-grid .cs-card-image{height:100%;min-height:305px}
.case-site .cs-related-grid .cs-card-image .cs-portrait{width:88%;height:auto;aspect-ratio:1}
.case-site .cs-related-grid .cs-image-location{font-size:12px;bottom:20px}
.case-site .cs-related-grid .cs-card-body{padding:23px 20px 0}
.case-site .cs-related-grid .cs-card h3{font-size:29px}
.case-site .cs-related-grid .cs-card-results{gap:8px}
.case-site .cs-related-grid .cs-card-results strong{font-size:23px}
.case-site .cs-closing{padding-block:var(--space-section);text-align:center;background:var(--gradient-dark)}
.case-site .cs-closing h2{font-size:var(--type-closing)}
.case-site .cs-closing p:not(.cs-eyebrow){max-width:470px;margin:23px auto 30px;color:var(--color-muted-dark);font-size:15px;line-height:1.85}
.case-site .cs-closing .button{display:inline-flex;align-items:center;justify-content:center;gap:20px;width:300px;min-width:0;max-width:100%;min-height:60px;padding:14px 24px;border-radius:var(--radius-control);border:1px solid var(--color-orange);background:var(--color-orange);color:var(--color-ink);font:400 var(--type-action)/1.35 var(--font-display)}
.case-site .cs-closing .button>span{font:400 24px/1 var(--font-body)}
@media(min-width:1500px){.case-site .cs-hero-grid{gap:100px}}
@media(max-width:1100px){
  .case-site .cs-hero-grid{gap:45px}
  .case-site .cs-card-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.case-site .cs-detail-grid{gap:55px}.case-site .cs-detail-number{gap:18px}.case-site .cs-detail-number>span{font-size:16px}.case-site .cs-detail-number>strong{font-size:clamp(100px,11vw,130px)}.case-site .cs-profile-grid{gap:50px}.case-site .cs-related-grid .cs-card-link{display:flex}.case-site .cs-related-grid .cs-card-image{height:230px;min-height:0}.case-site .cs-related-grid .cs-card-image .cs-portrait{width:185px;height:185px}.case-site .cs-related-grid .cs-card-image .cs-organization{height:auto}
}
@media(max-width:800px){
  .case-site .cs-library-hero{padding-top:var(--space-page-intro)}.case-site .cs-hero-grid{gap:34px}.case-site h1{font-size:var(--type-page)}.case-site .cs-lead{font-size:14px}.case-site .cs-hero-bottom{margin-top:50px}.case-site .cs-library-heading{gap:30px}.case-site .cs-library-heading>p{max-width:230px;font-size:12px}.case-site .cs-library-heading h2{font-size:var(--type-section)}.case-site .cs-filters{align-items:stretch}.case-site .cs-sector-filter{gap:5px}.case-site .cs-sector-filter label>span{padding-inline:10px;gap:9px}.case-site .cs-type-filter select{min-width:195px}.case-site .cs-detail-grid{gap:40px}.case-site .cs-detail-number{display:block;margin-block:17px}.case-site .cs-detail-number>span{display:block;margin-top:10px;max-width:none}.case-site .cs-detail-number br{display:none}.case-site .cs-profile-picture{height:280px}.case-site .cs-profile-picture .cs-portrait{width:215px;height:215px}.case-site .cs-profile-picture .cs-organization{width:80%;height:auto}.case-site .cs-detail-identity h1{font-size:var(--type-page)}.case-site .cs-summary-data>div{display:block}.case-site .cs-summary-data dd{text-align:left;margin-top:6px}.case-site .cs-campaign-panel{padding:22px}.case-site .cs-campaign-metrics dd{font-size:22px}.case-site .cs-campaign-panel h3{font-size:15px}.case-site .cs-campaign-icon{width:35px;height:35px}.case-site .cs-profile-facts{grid-template-columns:1fr;gap:16px}.case-site .cs-data-context{grid-template-columns:1fr 1.8fr;gap:30px}.case-site .cs-single-campaign .cs-campaign-panel{padding:30px}
}
@media(max-width:600px){
  .case-site .cs-wrap{width:calc(100% - 2 * var(--gutter))}.case-site h1{font-size:var(--type-page)}.case-site h2{font-size:var(--type-section)}.case-site .cs-library-hero{padding-top:var(--space-page-intro)}.case-site .cs-eyebrow{font-size:var(--type-label);margin-bottom:20px}.case-site .cs-hero-grid{grid-template-columns:1fr;gap:34px}.case-site .cs-lead{font-size:14px;margin-top:22px;line-height:1.8}.case-site .cs-hero-bottom{margin-top:30px;padding-block:20px;align-items:flex-start;gap:6px;flex-direction:column}.case-site .cs-hero-bottom>p{font-size:12px}.case-site .cs-date{font-size:12px}.case-site .cs-library,.case-site .cs-results-section{padding:52px 0}.case-site .cs-library-heading{flex-direction:column;align-items:flex-start;gap:18px;margin-bottom:28px}.case-site .cs-library-heading h2{font-size:var(--type-section)}.case-site .cs-library-heading>p{font-size:13px;max-width:none}.case-site .cs-desktop-break{display:none}.case-site .cs-filters{flex-direction:column;gap:20px;padding-block:20px}.case-site .cs-sector-filter{width:100%;gap:7px}.case-site .cs-sector-filter label{flex:1}.case-site .cs-sector-filter label>span{justify-content:center;padding-inline:8px;font-size:12px;gap:8px}.case-site .cs-sector-filter legend{margin-bottom:10px}.case-site .cs-type-filter{gap:9px}.case-site .cs-type-filter select{width:100%;min-width:0;font-size:12px}.case-site .cs-card-grid{grid-template-columns:1fr;gap:22px}.case-site .cs-card-image{height:235px}.case-site .cs-card-results strong{font-size:30px}.case-site .cs-card-results span{font-size:12px}.case-site .cs-card-since{font-size:12px}.case-site .cs-agency{font-size:12px}.case-site .cs-card-footer{font-size:12px;min-height:59px}.case-site .cs-card-body{padding:24px 24px 0}.case-site .cs-library-note{font-size:12px}.case-site .cs-detail-hero{padding:22px 0 45px}.case-site .cs-back{margin-bottom:26px;font-size:12px}.case-site .cs-detail-grid{grid-template-columns:1fr;gap:34px}.case-site .cs-detail-identity h1{font-size:var(--type-page)}.case-site .cs-detail-agency{font-size:12px}.case-site .cs-profile-picture{height:270px;margin-top:23px}.case-site .cs-profile-picture .cs-portrait{width:218px;height:218px}.case-site .cs-profile-picture .cs-organization{width:75%;height:auto}.case-site .cs-detail-number{display:flex;gap:25px;margin-block:16px}.case-site .cs-detail-number>strong{font-size:clamp(93px,25vw,130px)}.case-site .cs-detail-number>span{max-width:125px;font-size:17px}.case-site .cs-detail-number br{display:block}.case-site .cs-detail-intro{font-size:14px}.case-site .cs-summary-data{margin-top:25px}.case-site .cs-summary-data>div{display:flex}.case-site .cs-summary-data dd{margin:0;text-align:right;font-size:12px}.case-site .cs-summary-data dt{font-size:12px}.case-site .cs-detail-summary>.cs-text-link{font-size:12px}.case-site .cs-profile-section{padding:46px 0}.case-site .cs-profile-grid{grid-template-columns:1fr;gap:23px}.case-site .cs-profile-copy{font-size:14px}.case-site .cs-profile-facts{grid-template-columns:1fr 1fr;gap:20px;margin-block:22px 15px}.case-site .cs-profile-facts dd{font-size:12px}.case-site .cs-campaign-panels{grid-template-columns:1fr;gap:18px}.case-site .cs-campaign-panel,.case-site .cs-single-campaign .cs-campaign-panel{padding:23px}.case-site .cs-campaign-panel h3{font-size:15px}.case-site .cs-single-campaign .cs-campaign-metrics{display:block;padding-block:22px}.case-site .cs-single-campaign .cs-metric-primary{padding-bottom:25px}.case-site .cs-campaign-metrics dd,.case-site .cs-single-campaign .cs-campaign-metrics dd{font-size:24px}.case-site .cs-metric-primary>strong,.case-site .cs-single-campaign .cs-metric-primary>strong{font-size:88px}.case-site .cs-campaign-metrics dt{font-size:12px}.case-site .cs-calculation{font-size:12px}.case-site .cs-data-context{grid-template-columns:1fr;gap:18px;padding-top:27px;margin-top:28px}.case-site .cs-data-context p{font-size:12px}.case-site .cs-related{padding:48px 0}.case-site .cs-related-grid{grid-template-columns:1fr}.case-site .cs-related-grid .cs-card h3{font-size:33px}.case-site .cs-related-grid .cs-card-body{padding:24px 24px 0}.case-site .cs-related-grid .cs-card-results strong{font-size:29px}.case-site .cs-closing{padding:55px 0 65px}.case-site .cs-closing h2{font-size:var(--type-closing)}.case-site .cs-closing p:not(.cs-eyebrow){font-size:14px}.case-site .cs-closing .button{width:100%;max-width:320px;justify-content:center;min-width:0}
}
@media(prefers-reduced-motion:reduce){.case-site *{transition:none!important;animation:none!important;scroll-behavior:auto!important}}
@media print{.site-header,.site-mobile-menu,.site-footer,.cookie-banner,.cs-closing,.cs-related,.cs-back,.cs-filters{display:none!important}.case-site,.case-site section{background:white!important;color:black!important}.case-site .cs-wrap{width:100%}.case-site .cs-campaign-panel{break-inside:avoid}}

/* Keep small data labels readable at every viewport. */
.case-site .button{color:#080808}
.case-site .cs-card-spend{font-size:12px;color:var(--color-muted-light);margin-top:15px;line-height:1.6}
.case-site .cs-card-results span{font-size:12px}
.case-site .cs-agency,.case-site .cs-card-since,.case-site .cs-campaign-label{font-size:12px}
.case-site .cs-card-footer{font-size:12px}
.case-site .cs-campaign-metrics dt{font-size:12px}
.case-site .cs-calculation{font-size:12px}
@media(max-width:600px){.case-site .cs-type-filter select{font-size:16px}}

/* Search context and editorial links. */
.case-site .cs-breadcrumbs{margin-bottom:24px;color:var(--color-muted-dark);font-size:12px;line-height:1.7}
.case-site .cs-breadcrumbs ol{list-style:none;display:flex;align-items:center;flex-wrap:wrap;gap:8px 14px;margin:0;padding:0;min-height:44px}
.case-site .cs-breadcrumbs li+li::before{content:'›';margin-right:14px;color:#77716b}
.case-site .cs-breadcrumbs a{display:inline-block;padding-block:7px}
.case-site .cs-breadcrumbs li[aria-current]{color:#f4f1eb}
.case-site .cs-service-bridge{display:flex;align-items:center;justify-content:space-between;gap:40px;margin-top:40px;padding:clamp(28px,3vw,40px);border:1px solid #ffffff26;border-radius:var(--radius-panel,8px);background:var(--color-ink,#181818);color:var(--color-white,#fafafa);transition:border-color 180ms var(--ease-out)}
.case-site .cs-service-bridge>div{max-width:680px;min-width:0}
.case-site .cs-service-bridge .cs-eyebrow{color:var(--cs-orange);margin-bottom:12px}
.case-site .cs-service-bridge h3{font-size:clamp(30px,2.5vw,36px)}
.case-site .cs-service-bridge p:not(.cs-eyebrow){font-size:14px;color:var(--color-muted-dark,#b8b8b4);line-height:1.8;margin-top:15px}
.case-site .cs-service-bridge>.cs-text-link{font-size:14px;flex-shrink:0;max-width:100%}
.case-site .cs-service-bridge>.cs-text-link>span[aria-hidden]{color:var(--cs-orange);flex-shrink:0}
@media(hover:hover) and (pointer:fine){
  .case-site .cs-service-bridge:hover{border-color:#ff681d99}
  .case-site .cs-service-bridge:hover>.cs-text-link{color:var(--cs-orange);text-decoration:none}
  .case-site .cs-service-bridge:hover>.cs-text-link>span[aria-hidden]{transform:translate(3px,-2px)}
}
@media(prefers-reduced-motion:reduce){
  .case-site .cs-service-bridge,.case-site .cs-service-bridge>.cs-text-link>span[aria-hidden]{transition:none}
  .case-site .cs-service-bridge:hover>.cs-text-link>span[aria-hidden]{transform:none}
}
/* Reusable proof blocks for the commercial pages; no fictitious credit data. */
.case-site.cs-commercial{padding-block:var(--space-section);background:var(--gradient-dark),var(--color-surface);border-block:1px solid #ffffff20}
.case-site.cs-commercial .cs-library-heading{align-items:flex-end}
.case-site.cs-commercial .cs-library-heading h2{max-width:670px}
.case-site.cs-commercial .cs-library-heading>p{color:#b9b2a8;max-width:400px;font-size:15px}
.case-site .cs-commercial-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}
.case-site .cs-proof-card{border:1px solid #ffffff26;background:linear-gradient(140deg,#ffffff05,transparent);border-radius:8px;min-width:0;transition:border-color 180ms var(--ease-out),background 180ms var(--ease-out)}
.case-site .cs-proof-card>a{display:flex;flex-direction:column;height:100%;padding:25px 25px 0}
.case-site .cs-proof-client{display:flex;align-items:center;gap:15px}
.case-site .cs-proof-client>div{min-width:0}
.case-site .cs-proof-client p{font-size:12px;color:#b9b2a8;margin-bottom:5px}
.case-site .cs-proof-client h3{font-family:Manrope,sans-serif;font-size:17px;line-height:1.4;font-weight:750;letter-spacing:-.025em;text-wrap:initial}
.case-site .cs-proof-metric{display:flex;align-items:center;gap:20px;padding-top:32px}
.case-site .cs-proof-metric strong{font:400 65px/1.1 Anton,sans-serif;color:#ff813f;letter-spacing:-.03em;white-space:nowrap}
.case-site .cs-proof-metric span{font-size:12px;max-width:110px;line-height:1.6;color:#d1cbc3}
.case-site .cs-proof-campaigns{font-size:12px;color:#afa496;margin:16px 0 25px}
.case-site .cs-proof-footer{display:flex;justify-content:space-between;align-items:center;gap:15px;margin-top:auto;border-top:1px solid #ffffff26;padding:18px 0;font-size:12px;font-weight:650}
.case-site .cs-proof-footer>span:last-child{font-size:22px;color:#ff813f}
.case-site .cs-commercial-bottom{display:flex;align-items:center;justify-content:space-between;gap:40px;margin-top:27px}
.case-site .cs-commercial-bottom>p{font-size:12px;color:#a99f92;line-height:1.8;max-width:620px}
.case-site .cs-commercial-bottom>.cs-text-link{font-size:12px;flex-shrink:0;color:#ff813f}
.case-site .cs-credit-proof{display:flex;align-items:center;gap:35px;padding:34px;border:1px solid #ffffff26;border-radius:8px}
.case-site .cs-credit-proof>div:nth-child(2){max-width:490px}
.case-site .cs-credit-proof h3{font:700 21px/1.4 Manrope,sans-serif;letter-spacing:-.02em;text-wrap:initial}
.case-site .cs-credit-proof p{font-size:13px;color:#b9b2a8;line-height:1.8;margin-top:10px}
.case-site .cs-proof-portraits{display:flex;flex-shrink:0}
.case-site .cs-proof-portraits>.cs-portrait-frame+.cs-portrait-frame{margin-left:-20px}
.case-site .cs-credit-proof>.cs-text-link{white-space:nowrap;color:#ff813f;font-size:12px;margin-left:auto}
/* One portrait treatment, with individual crop controls; original files and
   faces are preserved. Brand marks keep their official colours. */
.case-site .cs-portrait-frame{display:block;overflow:hidden;border-radius:50%;background:#fff;isolation:isolate;flex-shrink:0}
.case-site .cs-portrait-frame>img.cs-portrait,.case-site .cs-related-grid .cs-portrait-frame>img.cs-portrait{display:block;width:100%;height:100%;object-fit:cover;object-position:var(--portrait-position,center);border-radius:0;filter:none;margin:0;max-height:none;transform:var(--portrait-transform,none)}
.case-site .cs-person-ricardo-barcelo{--portrait-transform:scale(.95) translate(3%,8%)}
.case-site .cs-person-fabio-quintas{--portrait-transform:scale(1.04) translateY(8.5%)}
.case-site .cs-person-antonio-rodrigues{--portrait-transform:translateY(4.5%)}
.case-site .cs-person-maria-azevedo{--portrait-transform:scale(1.05) translate(-3%,9%)}
.case-site .cs-card-image>.cs-portrait-frame{width:185px;height:185px;margin-bottom:6px;box-shadow:0 0 0 5px #fff6;transition:transform 240ms var(--ease-out)}
.case-site .cs-profile-picture>.cs-portrait-frame{width:200px;height:200px;margin-bottom:10px;box-shadow:0 0 0 6px #fff6}
.case-site .cs-related-grid .cs-card-image>.cs-portrait-frame{width:80%;height:auto;aspect-ratio:1;max-width:185px}
.case-site .cs-org-frame{background:transparent;box-shadow:none!important;border-radius:0}
.case-site .cs-org-frame>img.cs-portrait,.case-site .cs-related-grid .cs-org-frame>img.cs-portrait{object-fit:contain;transform:none}
.case-site .cs-card-image>.cs-org-frame{width:75%;height:155px}
.case-site .cs-profile-picture>.cs-org-frame{width:75%;height:220px}
.case-site .cs-brand{display:flex;align-items:center;justify-content:flex-start;width:120px;height:40px;margin-bottom:15px}
.case-site .cs-brand img{width:auto;height:auto;max-height:40px;max-width:120px;object-fit:contain;filter:none;opacity:1}
.case-site .cs-detail-brand{display:flex;align-items:center;gap:16px;margin-top:20px}
.case-site .cs-detail-brand .cs-brand{background:#fff;border-radius:5px;padding:9px 12px;width:122px;height:50px;justify-content:center;margin:0;flex-shrink:0}
.case-site .cs-detail-brand .cs-brand img{max-width:98px;max-height:32px}
.case-site .cs-detail-brand .cs-detail-agency{margin:0;font-size:12px;line-height:1.7}
.case-site .cs-proof-client>.cs-portrait-frame{width:65px;height:65px;border:2px solid #e9e4da}
.case-site .cs-proof-client>.cs-org-frame{background:#f4f1eb;border-radius:50%;padding:7px}
.case-site .cs-proof-portraits>.cs-portrait-frame{width:68px;height:68px;border:3px solid #141311}
@media(max-width:1100px){.case-site .cs-service-bridge{flex-direction:column;align-items:flex-start;gap:15px}.case-site .cs-credit-proof{flex-wrap:wrap}.case-site .cs-credit-proof>.cs-text-link{margin-left:0}.case-site .cs-proof-card>a{padding:20px 20px 0}.case-site .cs-proof-client{flex-direction:column;align-items:flex-start;gap:12px}.case-site .cs-proof-metric{gap:15px}.case-site .cs-proof-metric strong{font-size:55px}.case-site .cs-related-grid .cs-card-image>.cs-portrait-frame{width:185px;height:185px}}
@media(max-width:800px){.case-site .cs-profile-picture>.cs-portrait-frame{width:215px;height:215px}.case-site .cs-profile-picture>.cs-org-frame{width:80%;height:180px}.case-site .cs-detail-brand{align-items:center;gap:12px}.case-site .cs-detail-brand .cs-brand{width:106px}.case-site .cs-detail-brand .cs-brand img{max-width:82px}.case-site .cs-commercial-grid{gap:14px}.case-site .cs-proof-card>a{padding:17px 17px 0}.case-site .cs-proof-client h3{font-size:16px}.case-site .cs-proof-metric{display:block;padding-top:22px}.case-site .cs-proof-metric span{display:block;margin-top:10px}}
@media(max-width:600px){.case-site .cs-breadcrumbs{font-size:12px;margin-bottom:25px}.case-site .cs-breadcrumbs ol{gap:3px 10px}.case-site .cs-breadcrumbs li+li::before{margin-right:10px}.case-site .cs-profile-picture>.cs-portrait-frame{width:218px;height:218px}.case-site .cs-profile-picture>.cs-org-frame{width:75%;height:180px}.case-site .cs-detail-brand .cs-brand{width:112px;height:47px}.case-site .cs-detail-brand .cs-brand img{max-width:88px;max-height:29px}.case-site .cs-detail-brand .cs-detail-agency{font-size:12px}.case-site .cs-service-bridge{padding:24px;margin-top:28px}.case-site .cs-service-bridge h3{font-size:30px}.case-site .cs-service-bridge>.cs-text-link{font-size:14px;gap:16px;line-height:1.7}.case-site.cs-commercial{padding-block:var(--space-section)}.case-site.cs-commercial .cs-library-heading>p{font-size:14px}.case-site .cs-commercial-grid{grid-template-columns:1fr;gap:18px}.case-site .cs-proof-card>a{padding:24px 24px 0}.case-site .cs-proof-client{flex-direction:row;align-items:center;gap:16px}.case-site .cs-proof-client h3{font-size:18px}.case-site .cs-proof-client p{font-size:12px}.case-site .cs-proof-metric{display:flex;gap:25px;padding-top:25px}.case-site .cs-proof-metric strong{font-size:66px}.case-site .cs-proof-metric span{margin:0;font-size:13px}.case-site .cs-commercial-bottom{flex-direction:column;align-items:flex-start;gap:15px}.case-site .cs-commercial-bottom>.cs-text-link{font-size:13px}.case-site .cs-credit-proof{padding:25px;gap:23px}.case-site .cs-credit-proof h3{font-size:21px}.case-site .cs-credit-proof p{font-size:13px}.case-site .cs-proof-portraits>.cs-portrait-frame{width:65px;height:65px}}

/* Official colour marks on paper; white variant on the dark profile header. */
.case-site .cs-detail-brand .cs-brand{background:transparent;padding:0;justify-content:flex-start;width:120px}
.case-site .cs-detail-brand .cs-brand img{filter:brightness(0) invert(1);max-width:106px;max-height:42px}

.case-site .cs-card-image>.cs-org-frame{width:185px;height:185px;border-radius:50%;background:#fff;box-shadow:0 0 0 5px #fff6!important}
.case-site .cs-profile-picture>.cs-org-frame{width:200px;height:200px;border-radius:50%;background:#fff;box-shadow:0 0 0 6px #fff6!important}
.case-site .cs-org-frame>img.cs-portrait,.case-site .cs-related-grid .cs-org-frame>img.cs-portrait{object-fit:contain;object-position:center;padding:12%;transform:none}
.case-site .cs-proof-client>.cs-org-frame{padding:0}
@media(max-width:800px){.case-site .cs-profile-picture>.cs-org-frame{width:215px;height:215px}}
@media(max-width:600px){.case-site .cs-profile-picture>.cs-org-frame{width:218px;height:218px}}

/* A factual overview replaces the decorative hero collage. */
.case-site .cs-overview{min-width:0;border:1px solid #ffffff29;border-radius:var(--radius-panel);overflow:hidden;background:var(--color-surface);box-shadow:0 22px 70px #0004}
.case-site .cs-overview-top{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:19px 26px}
.case-site .cs-overview-top .cs-small-label{color:#e4dcd1;font-size:12px}
.case-site .cs-overview-count{font-size:12px;color:#bdb4a8}
.case-site .cs-overview-total{padding:20px 24px;background:var(--color-orange);color:var(--color-ink)}
.case-site .cs-overview-total>span{font-size:13px;font-weight:750}
.case-site .cs-overview-total>strong{display:block;font:400 clamp(64px,6.2vw,88px)/1.12 var(--font-display);letter-spacing:-.025em;margin-block:5px 10px;font-variant-numeric:tabular-nums}
.case-site .cs-overview-total>p{font-size:12px;line-height:1.7;max-width:260px}
.case-site .cs-overview-financial{display:grid;grid-template-columns:1.25fr 1fr;gap:18px;padding:20px 24px;border-bottom:1px solid #ffffff1f}
.case-site .cs-overview-financial>div{display:flex;flex-direction:column}
.case-site .cs-overview-financial dt{font-size:12px;color:#bdb4a8;line-height:1.6;margin-bottom:8px}
.case-site .cs-overview-financial dd{margin:auto 0 0;font-size:32px;font-weight:750;letter-spacing:-.04em;white-space:nowrap}
.case-site .cs-overview-note{padding:18px 24px;font-size:12px;color:#9d9488;line-height:1.75}
@media(max-width:1100px){.case-site .cs-overview-top{padding:17px 22px}.case-site .cs-overview-total{padding:22px}.case-site .cs-overview-financial{padding:21px 22px;gap:12px}.case-site .cs-overview-financial dd{font-size:22px}.case-site .cs-overview-note{padding:20px 22px}}
@media(min-width:601px) and (max-width:800px){.case-site .cs-hero-grid{grid-template-columns:1fr;gap:35px}.case-site .cs-hero-copy{max-width:580px}.case-site .cs-overview{max-width:580px;width:100%}}
@media(max-width:600px){.case-site .cs-overview-total>strong{font-size:84px}.case-site .cs-overview-top{padding:17px 22px}.case-site .cs-overview-top .cs-small-label{font-size:12px}.case-site .cs-overview-count{font-size:12px}.case-site .cs-overview-financial dd{font-size:25px}.case-site .cs-overview-total>p{font-size:12px;max-width:none}}
@media(max-width:360px){.case-site .cs-overview-financial dd{font-size:21px}.case-site .cs-overview-financial dt{font-size:12px}}

/* White variant retains the colour logo geometry, balloon and Portugal wordmark. */
.case-site .cs-detail-brand .cs-brand--native-dark{width:132px}
.case-site .cs-detail-brand .cs-brand--native-dark img{filter:none;opacity:1;max-width:122px;max-height:44px}

/* Readable supporting copy; native selects avoid zoom on iOS. */
.case-site .cs-type-filter select{font-size:16px;color-scheme:light;background-color:#f4f1eb}
.case-site :is(.cs-library-note,.cs-data-context p,.cs-commercial-bottom>p,.cs-overview-note){font-size:13px;line-height:1.8}
.case-site .cs-overview-note{color:#bdb4a8}
.case-site .cs-overview-top{flex-wrap:wrap}
.case-site .cs-sector-filter label>span{white-space:nowrap}
@media(max-width:360px){.case-site .cs-sector-filter label>span{gap:5px;padding-inline:5px}}

/* Captions take part in layout: longer place names and responsive portraits
   cannot collide. The gap also clears the white ring around each portrait. */
.case-site .cs-card-image,
.case-site .cs-related-grid .cs-card-image {
  height:auto;
  min-height:0;
  flex-direction:column;
  gap:16px;
  padding:20px 18px;
}
.case-site .cs-profile-picture {
  height:auto;
  flex-direction:column;
  gap:16px;
  padding:24px 18px 20px;
}
.case-site .cs-card-image>.cs-portrait-frame,
.case-site .cs-profile-picture>.cs-portrait-frame { margin-bottom:0; }
.case-site .cs-related-grid .cs-card-image>.cs-portrait-frame {
  width:185px;
  max-width:100%;
  height:auto;
  aspect-ratio:1;
}
.case-site .cs-image-location,
.case-site .cs-related-grid .cs-image-location,
.case-site .cs-photo-location {
  position:static;
  max-width:100%;
  line-height:1.6;
  text-align:center;
}
.case-site :is(.cs-image-location,.cs-photo-location) svg { flex-shrink:0; }

/* Sector belongs to the client identity, not to the portrait. */
.case-site .cs-card-brand-row{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:14px;margin-bottom:15px;min-height:40px}
.case-site .cs-card-brand-row .cs-brand{width:100%;max-width:120px;min-width:0;margin:0}
.case-site .cs-card-brand-row .cs-brand img{max-width:100%;max-height:40px}
/* Use the same label/value alignment for every summary row on smaller screens. */
@media(max-width:1100px){
  .case-site .cs-summary-data>div{display:grid;grid-template-columns:minmax(0,1fr);gap:6px;padding-block:12px}
  .case-site .cs-summary-data dt{margin:0;line-height:1.6}
  .case-site .cs-summary-data dd{margin:0;text-align:left;line-height:1.6;text-wrap:initial}
}
@media(max-width:360px){
  .case-site .cs-campaign-metrics dd,.case-site .cs-single-campaign .cs-campaign-metrics dd{font-size:20px}
}

/* The shared editorial rhythm also applies to client results and controls. */
.case-site :is(.cs-library,.cs-results-section,.cs-related){--cs-focus:var(--color-accent-on-light)}
.case-site :is(.cs-card-results strong,.cs-summary-data dd,.cs-overview-financial dd){font-variant-numeric:tabular-nums}
.case-site .cs-closing p:not(.cs-eyebrow){font-size:var(--type-body);line-height:1.75}
.case-site .cs-overview-financial dd{font-size:clamp(24px,2.1vw,30px)}
.case-site .cs-detail-number>span{margin-top:0}
@media(hover:hover) and (pointer:fine){
  .case-site .cs-text-link:hover>span[aria-hidden]{transform:translate(3px,-2px)}
  .case-site .cs-text-link:hover{text-decoration:underline;text-underline-offset:5px}
  .case-site .cs-sector-filter label:hover>span{border-color:#181818}
  .case-site .cs-card:hover{box-shadow:0 12px 36px #18181812;border-color:#c3b7a9}
  .case-site .cs-card:hover .cs-card-image .cs-portrait{transform:scale(1.035)}
  .case-site .cs-card-link:hover .cs-card-footer>span:last-child{transform:translate(3px,-3px)}
  .case-site .cs-back:hover{color:#ff681d}
  .case-site .cs-breadcrumbs a:hover{color:#ff813f}
  .case-site .cs-proof-card:hover{border-color:#ff681d88;background:#ff681d08}
  .case-site .cs-card:hover .cs-card-image>.cs-portrait-frame{transform:scale(1.025)}
  .case-site .cs-card:hover .cs-card-image .cs-portrait{transform:var(--portrait-transform,none)}
  .case-site .cs-closing .button:hover{background:var(--color-orange-hover);border-color:var(--color-orange-hover);transform:translateY(-1px)}
}
@media(max-width:800px){
  .case-site .cs-hero-grid{gap:32px}
  .case-site .cs-hero-bottom{margin-top:32px}
  .case-site .cs-profile-picture>.cs-portrait-frame{width:180px;height:180px}
}
@media(max-width:600px){
  .case-site .cs-detail-hero{padding-block:var(--space-page-detail) 40px}
  .case-site .cs-detail-grid{gap:28px}
  .case-site .cs-detail-number>strong{font-size:88px}
  .case-site .cs-summary-data{margin-top:20px}
  .case-site .cs-summary-data>div{padding-block:8px}
  .case-site .cs-profile-picture{flex-direction:row;justify-content:flex-start;gap:24px;padding:20px;margin-top:20px}
  .case-site .cs-profile-picture>.cs-portrait-frame{width:112px;height:112px}
  .case-site .cs-photo-location{justify-content:flex-start;text-align:left}
  .case-site .cs-overview{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr)}
  .case-site .cs-overview-top,.case-site .cs-overview-note{grid-column:1/-1;padding:16px 18px}
  .case-site .cs-overview-top .cs-small-label{font-size:11px;letter-spacing:.08em}
  .case-site .cs-overview-total{display:flex;flex-direction:column;justify-content:center;padding:18px 16px}
  .case-site .cs-overview-total>strong{font-size:clamp(44px,13vw,64px);margin:8px 0 0}
  .case-site .cs-overview-total>span{font-size:12px}
  .case-site .cs-overview-financial{grid-template-columns:1fr;gap:16px;padding:18px 16px;border-bottom:0}
  .case-site .cs-overview-financial dt{font-size:12px;margin-bottom:4px}
  .case-site .cs-overview-financial dd{font-size:clamp(20px,5.8vw,26px)}
  .case-site .cs-overview-note{border-top:1px solid var(--color-rule-dark);font-size:12px}
  .case-site :is(.cs-library,.cs-results-section,.cs-related,.cs-profile-section,.cs-closing){padding-block:var(--space-section)}
}
@media(prefers-reduced-motion:reduce){
  .case-site .cs-card:hover .cs-card-image>.cs-portrait-frame,.case-site .cs-text-link:hover>span[aria-hidden],.case-site .cs-card-link:hover .cs-card-footer>span:last-child,.case-site .cs-closing .button:hover{transform:none}
}

/* A case remains readable on the same scale as the commercial pages. */
.case-site .cs-lead,.case-site .cs-profile-copy { font-size:var(--type-intro); line-height:1.75; }
.case-site .cs-data-context p { font-size:14px; line-height:1.75; }
.case-site .cs-profile-grid { gap:var(--space-grid); }
.case-site :is(section[id],main[id]) { scroll-margin-top:calc(var(--header-height) + 24px); }
.case-site :is(.cs-sector-filter label>span,.cs-type-filter select,.cs-filter-submit) { border-radius:var(--radius-control); }

/* Keep the client relationship visible alongside the result. */
.case-site .cs-proof-client .cs-proof-since{margin:6px 0 0;line-height:1.5}

/* Reported commercial outcomes, only for cases with supplied data. */
.case-site .cs-commercial-results{margin-top:48px}
.case-site .cs-commercial-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;margin:0}
.case-site .cs-commercial-grid>div{background:#fff;border:1px solid #d8d3ca;border-radius:10px;padding:28px}
.case-site .cs-commercial-grid dt{font-weight:600;font-size:16px}
.case-site .cs-commercial-grid dd{margin:12px 0 0;font:400 72px/1.2 Anton,sans-serif;color:var(--color-accent-on-light)}
@media(max-width:640px){.case-site .cs-commercial-grid{grid-template-columns:1fr;gap:14px}.case-site .cs-commercial-grid>div{display:flex;align-items:center;justify-content:space-between;padding:20px 24px}.case-site .cs-commercial-grid dd{margin:0;font-size:52px}}

.case-site .cs-commercial-cost{display:block;margin-top:18px;padding-top:16px;border-top:1px solid #d8d3ca;font:400 14px/1.6 Manrope,sans-serif;letter-spacing:0;color:var(--color-muted-light)}
.case-site .cs-commercial-cost strong{color:var(--color-text-light);font-weight:700}
.case-site .cs-commercial-grid dt{min-height:3.5em}
.case-site .cs-commercial-note{font-size:12px;line-height:1.7;color:var(--color-muted-light);margin:18px 0 0}
@media(max-width:640px){.case-site .cs-commercial-grid>div{display:block}.case-site .cs-commercial-grid dt{min-height:0}.case-site .cs-commercial-grid dd{margin-top:10px}}

.case-site .cs-library-hero-compact{padding-bottom:clamp(48px,6vw,80px)}.case-site .cs-library-hero-compact .cs-hero-split{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);gap:clamp(32px,6vw,96px);align-items:end}
.case-site .cs-library-hero-compact h1{font-size:clamp(44px,5.6vw,76px);line-height:1.02;margin:0}
.case-site .cs-library-hero-compact .cs-hero-intro{max-width:460px;padding-bottom:8px}
.case-site .cs-library-hero-compact .cs-lead{font-size:clamp(16px,1.35vw,18px);line-height:1.65;margin:0 0 24px;color:#d9d4cc}
@media(max-width:800px){.case-site .cs-library-hero-compact .cs-hero-split{grid-template-columns:1fr;gap:24px}.case-site .cs-library-hero-compact h1{font-size:clamp(40px,11vw,56px)}.case-site .cs-library-hero-compact .cs-lead{font-size:16px}}

/* Commercial Home, using the shared site typography and color system. */
.home-commercial .hero-session-note{font-size:12px;line-height:1.6;margin:13px 0 18px;color:var(--muted,#bdbbb7);text-align:center;width:100%;max-width:none}
.home-commercial .hero-action .client-proof{margin:0 0 14px}
.home-commercial .hero .button{font-size:21px;padding-inline:20px;gap:16px}
@media(min-width:901px){.home-commercial .hero-action{width:320px;flex:0 0 320px}}
.home-commercial .client-proof-copy strong{font-size:13px}
.home-commercial .sector-showcase-footer{display:flex;align-items:center;flex-wrap:wrap;gap:20px}
.home-commercial .sector-showcase-footer .button{font:700 15px/1.4 Manrope,sans-serif;padding:16px 20px;gap:22px;min-height:52px}
.home-commercial .sector-detail-link{font:600 13px/1.6 Manrope,sans-serif;text-decoration:none;color:var(--orange,#ff681b);text-underline-offset:5px}
.home-commercial .sector-detail-link:hover{text-decoration:underline}
.home-commercial .sector-detail-link span{margin-left:5px}
.home-commercial .copy-authority .authority-copy-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:30px}
.home-commercial .copy-authority .training-layout{grid-template-columns:minmax(0,1.5fr) minmax(0,.75fr);gap:60px}
.home-commercial .copy-authority h2{font-size:clamp(36px,4.3vw,62px);max-width:100%}
.home-commercial .cs-commercial-bottom>p{max-width:680px}
.home-commercial .final-content .system-handoff{margin-top:32px}
@media(max-width:900px){
.home-commercial .copy-authority .training-layout{grid-template-columns:1fr;gap:36px}
.home-commercial .copy-authority .handoff-visual{max-width:500px;margin-inline:auto;width:100%}
.home-commercial .copy-authority .authority-copy-grid{grid-template-columns:1fr;gap:26px}
}
@media(max-width:650px){
.home-commercial .hero-session-note{text-align:center;font-size:11px;margin:12px 0 17px}
.home-commercial .sector-showcase-footer{align-items:stretch;flex-direction:column;gap:18px}
.home-commercial .sector-showcase-footer .button{width:100%;font-size:14px}
.home-commercial .sector-detail-link{text-align:center;font-size:12px}
.home-commercial .copy-authority h2{font-size:38px}
}
@media(max-width:380px){.home-commercial .hero .button{font-size:18px;padding-inline:16px;gap:12px}}

/* Content-led diagrams: one illustration for each system pillar. */
.home-commercial .system-art{height:252px;padding:30px 34px;border-bottom:1px solid #ffffff19;background:radial-gradient(ellipse at 50% 115%,#ff681b12,transparent 70%);display:flex;flex-direction:column;justify-content:center;color:#fafafa;font:500 13px/1.5 var(--font-body);overflow:hidden}
.system-art img{flex-shrink:0;filter:invert(1);width:20px;height:20px}
.system-art strong{font-weight:700}
.system-art .sa-route{display:flex;align-items:center;gap:18px;width:100%;justify-content:center}
.system-art .sa-route>span{display:flex;align-items:center;gap:12px}
.system-art .sa-route>img{width:17px;opacity:.55}
.system-art .sa-connector{height:28px;width:1px;background:#ff681b80;margin-inline:auto}
.system-art .sa-result{display:flex;align-items:center;gap:14px;border:1px solid #ff681b80;border-radius:8px;padding:16px;background:#ff681b0d}
.system-art .sa-result>span{display:flex;flex-direction:column;gap:2px}
.system-art .sa-result small{font-size:12px;color:#c9bbae}
.system-art .sa-result>img:last-child{margin-left:auto;width:18px}
.system-art .sa-heading{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:18px}
.system-art .sa-heading>span:first-child{display:flex;gap:12px;align-items:center}
.system-art .sa-timing{font-size:12px;color:#ffad7d;white-space:nowrap}
.system-art .sa-response{display:flex;justify-content:space-between;gap:14px;padding:10px 14px;border:1px solid #ffffff25;border-radius:6px;margin-left:30px;margin-bottom:8px;background:#ffffff04}
.system-art .sa-response>img{width:16px;height:16px}
.system-art .sa-footnote{font-size:12px;color:#c0b6aa;margin:4px 0 0 30px}
.system-art .sa-task{display:flex;align-items:center;gap:12px;padding:10px 0;border-top:1px solid #ffffff20}
.system-art .sa-task img{width:17px;height:17px;opacity:.8}
.system-art .sa-task small{font-size:12px;margin-left:auto;color:#bdb4a8}
.system-art .sa-task-next{color:#ffad7d}
.system-art .sa-stages{display:flex;align-items:center;justify-content:space-between;gap:8px;margin:5px 0 20px}
.system-art .sa-stages>span{padding:10px 12px;background:#ffffff08;border:1px solid #ffffff25;border-radius:6px;font-weight:650}
.system-art .sa-stages>span:last-child{background:#ff681b;color:#161616;border-color:#ff681b}
.system-art .sa-stages img{width:15px;height:15px;opacity:.65}
.system-art .sa-feedback{display:flex;align-items:center;gap:14px;border-top:1px solid #ffffff20;padding-top:14px;color:#c0b6aa;font-size:12px}
.system-art .sa-feedback strong{color:#fafafa;font-weight:600}
@media(max-width:700px){
  .home-commercial .system-art{height:245px;padding:24px 22px;font-size:12px}
  .system-art .sa-heading{gap:8px;flex-wrap:wrap}
  .system-art .sa-heading>span:first-child{gap:9px}
  .system-art .sa-route{gap:12px}
  .system-art .sa-route>span{gap:8px}
  .system-art .sa-stages>span{padding:9px 8px}
  .system-art .sa-response,.system-art .sa-footnote{margin-left:0}
  .system-art .sa-task small{display:none}
}

/* Alternate complete surfaces; orange keeps its role as the action colour. */
:root body .home-commercial .system-section{background:var(--gradient-paper),var(--color-paper);color:var(--color-ink)}
:root body .home-commercial .system-section .eyebrow{color:var(--color-accent-on-light)}
:root body .home-commercial .system-section .section-description{color:var(--color-muted-light)}
:root body .home-commercial .system-section .visual-process-card{color:var(--color-white)}
:root body .home-commercial .system-section .process-card-copy p{color:var(--color-muted-dark)}
:root body .home-commercial .system-section .button:focus-visible{outline-color:var(--color-accent-on-light)}
:root body .home-commercial .cs-commercial{background:var(--gradient-paper),var(--color-paper);color:var(--color-ink)}
:root body .home-commercial .cs-commercial .cs-eyebrow{color:var(--color-accent-on-light)}
:root body .home-commercial .cs-commercial .cs-library-heading>p{color:var(--color-muted-light)}
:root body .home-commercial .cs-commercial .cs-proof-card{background:var(--ui-panel-light,#fffdfa)}
:root body .home-commercial .cs-commercial .sw-client :is(h3,p){color:var(--color-ink)}
:root body .home-commercial .cs-commercial .sw-client-copy>span{color:var(--color-muted-light)}
:root body .home-commercial .cs-commercial .sw-proof-funnels strong{color:var(--color-accent-on-light)}
:root body .home-commercial .cs-commercial .sw-proof-funnels :is(small,span){color:var(--color-muted-light)}
:root body .home-commercial .cs-commercial .sw-proof-funnels>div+div{border-color:var(--color-rule-light)}
:root body .home-commercial .cs-commercial .cs-proof-footer{border-color:var(--color-rule-light)}
:root body .home-commercial .cs-commercial .cs-proof-footer>span:last-child,:root body .home-commercial .cs-commercial .cs-text-link{color:var(--color-accent-on-light)}
:root body .home-commercial .cs-commercial .cs-commercial-bottom>p{color:var(--color-muted-light)}
:root body .home-commercial .method-section{background:var(--gradient-dark),var(--color-dark);color:var(--color-white)}
:root body .home-commercial .method-section .eyebrow{color:var(--color-orange)}
:root body .home-commercial .method-section :is(.section-description,.steps p){color:var(--color-muted-dark)}
:root body .home-commercial .method-section .steps li{border-color:var(--color-rule-dark)}
:root body .home-commercial .method-section .step-icon{background:var(--color-orange);border-color:var(--color-orange)}
:root body .home-commercial .method-section .steps li:after{background:var(--color-rule-dark)}
:root body .home-commercial .copy-authority{background:var(--gradient-paper),var(--color-paper);color:var(--color-ink)}
:root body .home-commercial .founder-spotlight{background:var(--gradient-dark),var(--color-dark);color:var(--color-white)}
:root body .home-commercial .faq-refresh{background:var(--gradient-paper),var(--color-paper);color:var(--color-ink)}

/* Light system cards belong to their paper section; warmth comes from the brand. */
:root body .home-commercial .system-section .visual-process-card{color:var(--color-ink);background:linear-gradient(150deg,#fffdfa,#faf7f2);border-color:#d8d0c5;box-shadow:none}
:root body .home-commercial .system-section .visual-process-card:hover{border-color:#bda992}
:root body .home-commercial .system-section .process-card-copy p{color:var(--color-muted-light)}
:root body .home-commercial .system-art{color:var(--color-ink);background:radial-gradient(ellipse at 88% 100%,#ff681b12,transparent 65%),linear-gradient(145deg,#f3efe7,#fcfaf7);border-bottom-color:#ded6cb}
:root body .home-commercial .system-art img{filter:none}
:root body .home-commercial .system-art .sa-result{border-color:#cb7645;background:#fff8f0}
:root body .home-commercial .system-art .sa-result small{color:#6d5746}
:root body .home-commercial .system-art .sa-response{background:#fffcf8;border-color:#d7cec1}
:root body .home-commercial .system-art :is(.sa-timing,.sa-task-next){color:#a83e05}
:root body .home-commercial .system-art :is(.sa-footnote,.sa-task small,.sa-feedback){color:#655c51}
:root body .home-commercial .system-art :is(.sa-task,.sa-feedback){border-color:#d7cec1}
:root body .home-commercial .system-art .sa-feedback strong{color:var(--color-ink)}
:root body .home-commercial .system-art .sa-stages>span{border-color:#d1c7b9;background:#fffdfa}
:root body .home-commercial .system-art .sa-stages>span:last-child{border-color:var(--color-orange);background:var(--color-orange)}

/* Proof is one component in the hero and the reasons section. */
:root body .home-commercial .hero-action{width:320px;max-width:100%}
:root body .home-commercial :is(.hero,.copy-authority) .client-proof{box-sizing:border-box;width:320px;max-width:100%;min-height:60px;padding:8px 14px;gap:12px;border-radius:8px;align-items:center}
:root body .home-commercial :is(.hero,.copy-authority) .client-proof-number{font:400 36px/1 var(--font-display);letter-spacing:-.035em}
:root body .home-commercial :is(.hero,.copy-authority) .client-proof-number>span{font-size:18px}
:root body .home-commercial :is(.hero,.copy-authority) .client-proof-copy{padding-left:12px}
:root body .home-commercial :is(.hero,.copy-authority) .client-proof-copy strong{font:750 13px/1.5 var(--font-body)}
:root body .home-commercial :is(.hero,.copy-authority) .client-proof-copy>span{font:400 12px/1.5 var(--font-body);margin-top:2px}
@media(max-width:700px){
  /* Fit the first screen with browser controls expanded, without clipping at zoom. */
  :root body .home-commercial .hero-inner{min-height:calc(100svh - var(--header-height));padding-block:clamp(12px,2.2svh,20px);gap:clamp(10px,2svh,20px);justify-content:space-between}
  :root body .home-commercial .hero-message{margin-block:auto}
  :root body .home-commercial .hero-description{min-height:0}
  :root body .home-commercial .hero-session-note{margin:10px 0 0}
  :root body .home-commercial :is(.hero,.copy-authority) .client-proof{width:100%;max-width:320px;gap:10px;padding-inline:12px}
}
@media(max-width:700px) and (max-height:650px){
  :root body .home-commercial .hero-inner{padding-block:10px;gap:8px}
  :root body .home-commercial :is(.hero,.copy-authority) .client-proof{min-height:50px;padding-block:4px}
  :root body .home-commercial :is(.hero,.copy-authority) .client-proof-number{font-size:32px}
  :root body .home-commercial .hero-action .client-proof{margin-bottom:8px}
  :root body .home-commercial .hero .button{min-height:48px;padding-block:10px}
  :root body .home-commercial .hero-session-note{margin-top:6px}
}
/* A single animated journey: the existing four stages, on a shared curve. */
.home-commercial .method-journey{position:relative;isolation:isolate}
.home-commercial .method-plot{display:none;position:relative;height:400px}
.home-commercial .method-plot svg{display:block;width:100%;height:100%;overflow:visible}
.home-commercial .method-guides{fill:none;stroke:var(--color-rule-dark);stroke-width:1;stroke-dasharray:3 7}
.home-commercial .method-guides path,.home-commercial .method-curve,.home-commercial .method-curve-track{vector-effect:non-scaling-stroke}
.home-commercial .method-curve-track,.home-commercial .method-curve{fill:none;stroke:var(--color-orange);stroke-width:2;stroke-linecap:round}
.home-commercial .method-curve-track{opacity:.18}
.home-commercial .method-curve{clip-path:inset(-4px)}
.home-commercial .method-cursor{position:absolute;pointer-events:none;width:42px;height:42px;border:1px solid var(--color-orange);border-radius:50%;transform:translate(-50%,-50%);background:#ff681d14}
/* Positions live in CSS to preserve the site's strict style-src policy. */
.home-commercial :is(.method-tab,.method-stop):nth-of-type(1){--stop-x:11.36%;--stop-y:91.1333%}
.home-commercial :is(.method-tab,.method-stop):nth-of-type(2){--stop-x:37.12%;--stop-y:80.8667%}
.home-commercial :is(.method-tab,.method-stop):nth-of-type(3){--stop-x:62.88%;--stop-y:57.5333%}
.home-commercial :is(.method-tab,.method-stop):nth-of-type(4){--stop-x:88.64%;--stop-y:21.1333%}
.home-commercial .method-stop{display:none}
.home-commercial .method-tabs[hidden]{display:none}
.home-commercial .method-tabs{position:absolute;inset:0}
.home-commercial .method-tab{position:absolute;left:var(--stop-x);top:var(--stop-y);width:150px;min-height:52px;padding:0;border:0;background:transparent;color:var(--color-white);font:700 15px/1.5 var(--font-body);transform:translate(-50%,-50%);cursor:pointer}
.home-commercial .method-tab-number{display:grid;place-items:center;margin:auto;width:28px;height:28px;border:1px solid #85776d;border-radius:50%;background:var(--color-brand-dark,var(--color-dark));color:#d9cec4;font:750 11px/1 var(--font-body);font-variant-numeric:tabular-nums;transition:background-color 180ms var(--ease-out),color 180ms var(--ease-out),border-color 180ms var(--ease-out)}
.home-commercial .method-tab-title{position:absolute;bottom:calc(50% + 25px);left:50%;transform:translateX(-50%);white-space:nowrap}
.home-commercial .method-tab[aria-selected=true] .method-tab-number{color:var(--color-ink);background:var(--color-orange);border-color:var(--color-orange)}
.home-commercial .method-tab[aria-selected=true] .method-tab-title{color:var(--color-orange)}
.home-commercial .method-tab:focus-visible{outline:2px solid var(--color-orange);outline-offset:8px;border-radius:4px}
.home-commercial .method-panels{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:32px}
.home-commercial .method-panel{min-width:0;border-top:1px solid var(--color-rule-dark);padding-top:22px}
.home-commercial .method-panel-heading{display:flex;align-items:center;gap:18px;margin-bottom:18px}
.home-commercial .method-panel-count{flex:none;color:var(--color-orange);font:750 14px/1.5 var(--font-body);font-variant-numeric:tabular-nums}
.home-commercial .method-panel-count>span{color:var(--color-muted-dark);font-weight:400}
:root body .home-commercial .method-panel h3{margin:0;color:var(--color-white);font:400 34px/1.2 var(--font-display);letter-spacing:-.015em}
:root body .home-commercial .method-panel p{margin:0;max-width:54ch;color:var(--color-muted-dark);font:400 16px/1.8 var(--font-body)}
.home-commercial .method-journey.is-enhanced .method-plot{display:block}
.home-commercial .method-journey.is-enhanced .method-panels{position:absolute;top:0;left:0;width:47%;grid-template-columns:minmax(0,1fr);gap:0}
.home-commercial .method-journey.is-enhanced .method-panel{grid-area:1/1}
.home-commercial .method-panel.is-inactive{visibility:hidden;pointer-events:none}
@media(hover:hover) and (pointer:fine){.home-commercial .method-tab:hover .method-tab-title{color:var(--color-orange)}.home-commercial .method-tab:hover .method-tab-number{border-color:var(--color-orange)}}
@media(max-width:850px){
  .home-commercial .method-plot{height:180px;margin-bottom:24px}
  .home-commercial .method-tabs{position:static;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
  .home-commercial .method-tab{position:static;display:flex;align-items:center;gap:10px;transform:none;width:100%;min-height:50px;padding:12px;border:1px solid var(--color-rule-dark);border-radius:var(--radius-control);font-size:13px;text-align:left}
  .home-commercial .method-tab-number{margin:0;width:auto;height:auto;display:inline;border:0;background:none;color:var(--color-orange);font-size:11px}
  .home-commercial .method-tab-title{position:static;transform:none;white-space:normal}
  .home-commercial .method-tab[aria-selected=true]{border-color:var(--color-orange);background:var(--color-orange);color:var(--color-ink)}
  .home-commercial .method-tab[aria-selected=true] :is(.method-tab-number,.method-tab-title){color:var(--color-ink);background:none}
  .home-commercial .method-stop{position:absolute;display:grid;place-items:center;left:var(--stop-x);top:var(--stop-y);transform:translate(-50%,-50%);width:24px;height:24px;border:1px solid #85776d;border-radius:50%;background:var(--color-dark);color:var(--color-muted-dark);font:750 10px/1 var(--font-body)}
  .home-commercial .method-stop.is-active{background:var(--color-orange);border-color:var(--color-orange);color:var(--color-ink)}
  .home-commercial .method-cursor{width:36px;height:36px}
  .home-commercial .method-panels,.home-commercial .method-journey.is-enhanced .method-panels{position:static;width:100%;grid-template-columns:minmax(0,1fr);margin-top:24px}
  .home-commercial .method-panel{padding-top:24px}
  :root body .home-commercial .method-panel h3{font-size:30px}
  :root body .home-commercial .method-panel p{font-size:15px;line-height:1.75}
}
@media(max-width:360px){.home-commercial .method-tab{padding:10px 8px;gap:7px;font-size:12px}.home-commercial .method-plot{height:150px}}
@media(prefers-reduced-motion:reduce){.home-commercial .method-tab-number{transition:none}}

/* Test-only shared refinement. The production design system remains the source
   of brand tokens; page types deliberately retain their distinct compositions. */
:root {
  --ui-notice:#ffffff;
  --ui-field-border:#b9b1a6;
  --ui-error-light:#a3291f;
  --ui-brand-header:#100e0c;
  --ui-control-hover:#fff5eb;
  --radius-control:8px;
  --radius-panel:12px;
  --type-action:15px;
  --ui-control-font:750 15px/1.45 var(--font-body);
  --ui-panel-light:#fffdfa;
  --ui-reading-line:1.8;
  --sw-light-field:radial-gradient(ellipse at 95% 0,#ff681b14,transparent 54%),linear-gradient(135deg,#f7f4ee,#f1eee7);
  --sw-dark-field:radial-gradient(ellipse at 95% 12%,#ff681b12,transparent 55%),radial-gradient(ellipse at 15% 100%,#ff681b0b,transparent 60%),linear-gradient(135deg,#080808,#15110e);
}
:root body .home-commercial :is(.system-section,.cs-commercial,.copy-authority,.faq-refresh){background:var(--sw-light-field)}
:root body .home-commercial :is(.hero,.sector-showcase,.method-section,.founder-spotlight){background:var(--sw-dark-field)}
:root body .sector-reading .sr-hero{background:var(--sw-light-field)}
::selection { background:#ffbe97; color:var(--color-ink); }
input,textarea { caret-color:var(--color-orange); }
body :is(a,button,summary,input,select,textarea):focus-visible {
  outline:3px solid var(--color-orange); outline-offset:4px;
}
body :is(.sector-reading,.article-paper,.cs-library,.privacy-page) :is(a,button,summary):focus-visible {
  outline-color:var(--color-accent-on-light);
}
/* A single control voice: display typography is reserved for headings. */
:root body :is(main,dialog,.site-mobile-menu) .button,
body .sector-reading .sr-button,
body .home-commercial .sector-showcase-footer .button,
body .primary {
  display:inline-flex; align-items:center; justify-content:center;
  gap:18px; min-height:54px; padding:15px 22px;
  border-radius:var(--radius-control); font:var(--ui-control-font);
  letter-spacing:0; text-decoration:none; box-shadow:none;
}
body :is(main,dialog) .button>span { font:400 20px/1 var(--font-body); }
body :is(main,dialog) .button>img { width:20px; height:20px; flex-shrink:0; }
body :is(main,dialog) .button:hover { box-shadow:none; }
body .site-header .button { font:750 13px/1.45 var(--font-body); border-radius:var(--radius-control); }
body .site-mobile-menu .button { justify-content:space-between; }
body .cookie-button { border-radius:var(--radius-control); }
body .cookie-dialog-actions .cookie-button { font-size:14px; min-height:48px; }
body .site-footer .footer-meta :is(a,button,small) { font-size:12px; }
body .site-footer .footer-legal a { display:inline-flex; align-items:center; min-height:44px; }
body :is(.sr-breadcrumb,.cs-breadcrumb,.article-breadcrumb) { font-size:12px; line-height:1.6; }
body :is(.sr-breadcrumb,.cs-breadcrumb,.article-breadcrumb) a { display:inline-flex; align-items:center; min-height:36px; }
/* Sector reading pages: retain the approved narrow layout, remove tiny copy. */
.sector-reading {
  --sr-paper:var(--color-paper); --sr-ink:var(--color-ink);
  --sr-muted:var(--color-muted-light); --sr-orange:var(--color-orange);
  --sr-line:var(--color-rule-light);
}
body .sector-reading p { font-size:16px; line-height:var(--ui-reading-line); }
body .sector-reading .sr-deliverables p { font-size:16px; line-height:var(--ui-reading-line); }
body .sector-reading .sr-lead { font-size:18px; line-height:1.75; }
body .sector-reading :is(.sr-signs li,.sr-faq-list summary) { font-size:15px; line-height:1.65; }
body .sector-reading :is(.sr-hero-action>span,.sr-trust p,.sr-person p,.sr-person span,.sr-case-results span,.sr-case-date,.sr-disclaimer,.sr-final-note,.sr-final-top,.sr-sector) {
  font-size:12px; line-height:1.7;
}
body .sector-reading :is(.sr-case-context p,.sr-outcome,.sr-text-link,.sr-explore) { font-size:13px; line-height:1.7; }
body .sector-reading .sr-final>p { color:var(--color-muted-dark); }
body .sector-reading .sr-final .sr-final-note { font-size:12px; }
body .sector-reading :is(.sr-case,.sr-deliverables article,.sr-signs li,.sr-faq-list details) { background:var(--ui-panel-light); border-radius:var(--radius-panel); }
body .sector-reading .sr-final { border-radius:var(--radius-panel); }
body .sr-text-link { min-height:44px; }
body .sr-explore a { display:inline-flex; align-items:center; min-height:44px; }
body .sr-breadcrumb { margin-bottom:24px; }
/* One FAQ component language, with generous internal space on touch screens. */
body .faq-refresh .faq-list { display:grid; gap:10px; }
body .faq-refresh .faq-list details,
body .faq-refresh .faq-list details:first-child,
body .faq-refresh .faq-list details:last-child {
  border:1px solid var(--color-rule-light); border-radius:var(--radius-panel);
  background:var(--ui-panel-light); overflow:hidden;
}
body .faq-refresh .faq-list details[open],body .sr-faq-list details[open] {
  background:var(--ui-panel-light); border-color:#a59b8d;
}
body .faq-refresh .faq-list summary,body .sr-faq-list summary {
  padding:22px; min-height:76px; gap:18px; font:700 16px/1.6 var(--font-body);
}
body .faq-refresh .faq-list summary { grid-template-columns:minmax(0,1fr) 32px; }
body .faq-refresh .faq-list details p,body .sector-reading .sr-faq-list details p {
  padding:0 22px 24px; max-width:none; font-size:16px; line-height:1.8;
}
body .faq-refresh .faq-toggle,body .sr-toggle {
  width:32px; height:32px; min-width:32px; border:1px solid var(--color-rule-light);
  border-radius:var(--radius-control); background:transparent; color:var(--color-ink);
}
body .sr-toggle:before,body .sr-toggle:after { left:8px; top:14px; }
body .sr-faq-list details[open] .sr-toggle { background:var(--color-orange); border-color:var(--color-orange); }
/* Consistent proof cards, readable metadata and quieter closing sections. */
body :is(.cs-card,.cs-campaign,.cs-commercial-card,.journal-card,.article-checklist) { border-radius:var(--radius-panel); }
body :is(.cs-card,.cs-campaign,.journal-card) { background:var(--ui-panel-light); }
body :is(.cs-card-spend,.cs-card-since,.cs-agency,.founder-area,.article-table caption) { font-size:12px; line-height:1.7; }
body :is(.cs-card-results strong,.cs-commercial-card strong,.sr-case-results strong) { font-variant-numeric:tabular-nums; }
:root body :is(.cs-closing,.journal-closing,.final-invitation) h2 { max-width:900px; margin-inline:auto; font-size:clamp(40px,5vw,72px); line-height:1.15; }
body .home-commercial .hero-session-note { font-size:12px; }
body .home-commercial .sector-detail-link { display:inline-flex; align-items:center; justify-content:center; min-height:44px; font-size:13px; }
body .home-commercial .final-content>.final-note { font-size:13px; }
body .article-sidebar a { min-height:44px; display:flex; align-items:center; }
body .article-table :is(th,td) { font-size:14px; }
body .article-body .article-founder .eyebrow { font-size:11px; }
/* Long-form utility copy uses the same warm reading surface as articles. */
body:has(.privacy-page) { background:var(--color-paper); }
body .privacy-page { color:var(--color-ink); max-width:1000px; }
body .privacy-page :is(p,ul,.privacy-table) { color:var(--color-muted-light); }
body .privacy-page :is(h1,h2,strong,th,caption) { color:var(--color-ink); }
body .privacy-page :is(h2,th,td,.privacy-table-wrap,.privacy-summary) { border-color:var(--color-rule-light); }
body .privacy-page .eyebrow,body .privacy-page a { color:var(--color-accent-on-light); }
body .privacy-page .privacy-summary { background:var(--ui-panel-light); }
body .privacy-page .privacy-summary .cookie-button { border-color:#989087; color:var(--color-ink); font-size:14px; min-height:48px; }
body .privacy-page .privacy-table-wrap { background:var(--ui-panel-light); }
body .privacy-page .privacy-table-wrap:focus-visible { outline:3px solid var(--color-accent-on-light); outline-offset:4px; }
@media(max-width:700px) {
  body .sector-reading .sr-width { width:calc(100% - 44px); }
  body .sector-reading .sr-lead { font-size:16px; }
  body .sector-reading .sr-deliverables article { padding:22px; }
  body .sector-reading .sr-signs li { padding:16px; font-size:14px; }
  body .sector-reading .sr-final>p { font-size:16px; }
  body .sector-reading .sr-final { padding:26px 22px; }
  body .faq-refresh .faq-list summary,body .sr-faq-list summary { padding:20px 18px; gap:14px; font-size:15px; }
  body .faq-refresh .faq-list details p,body .sector-reading .sr-faq-list details p { padding:0 18px 22px; }
  body .home-commercial .hero .button { font-size:15px; }
  body .home-commercial .sector-showcase-footer .button { font-size:15px; }
  body .journal-grid .journal-card-link,body .journal-related-grid .journal-card-link { display:grid; grid-template-columns:1fr; }
  body .journal-card-body { padding:22px; }
  body .journal-card h3 { font-size:28px; }
  body .journal-card p { display:block; font-size:15px; line-height:1.75; }
  body .journal-meta { flex-direction:row; justify-content:space-between; }
  body .article-table :is(th,td) { font-size:13px; }
  body .privacy-page { padding-block:48px; }
  body .privacy-page h1 { text-align:left; font-size:40px; }
  body .privacy-page h2 { font-size:21px; }
  body .error-actions { align-items:stretch; }
  body .error-actions>a { min-height:48px; display:inline-flex; align-items:center; }
}
@media(prefers-reduced-motion:reduce) {
  body :is(.button,.sr-toggle:before,.sr-toggle:after) { transition:none; }
}
/* One closing invitation shared by every page that already had a final CTA. */
:root body .sw-site-closing{background:radial-gradient(ellipse at 50% 120%,#ff681b1f,transparent 70%),var(--gradient-dark),var(--color-dark);color:var(--color-white);text-align:center;padding:88px 0;margin:0;border:0;border-radius:0}
:root body .sw-site-closing>.wrap{width:min(100% - 48px,1100px);margin-inline:auto}
:root body .sw-site-closing .eyebrow{color:var(--color-orange);font:750 12px/1.6 var(--font-body);letter-spacing:.12em;text-transform:uppercase;margin:0 0 28px}
:root body .sw-site-closing h2{font:400 clamp(44px,5.5vw,72px)/1.12 var(--font-display);letter-spacing:-.02em;color:var(--color-white);max-width:790px;margin:0 auto 34px;text-wrap:balance}
:root body .sw-site-closing .button{width:auto;min-width:300px;max-width:100%;background:var(--color-orange);color:var(--color-ink);border:1px solid var(--color-orange);justify-content:center;text-decoration:none}
:root body .sw-site-closing .button:hover{background:var(--color-orange-hover)}
:root body .sw-site-closing .sw-closing-note{font:400 13px/1.8 var(--font-body);color:var(--color-muted-dark);margin:20px 0 0;max-width:none}
@media(max-width:700px){
  :root body .sw-site-closing{padding:64px 0}
  :root body .sw-site-closing h2{font-size:42px;margin-bottom:28px}
  :root body .sw-site-closing .button{width:100%;min-width:0;max-width:340px}
}
/* One breadcrumb pattern across sector, client and editorial pages. */
.sw-breadcrumb{margin:0 0 24px;color:#645e56;font:400 12px/1.6 var(--font-body)}
.sw-breadcrumb ol{display:flex;align-items:center;flex-wrap:wrap;gap:0 12px;list-style:none;margin:0;padding:0}
.sw-breadcrumb li{display:flex;align-items:center;gap:12px;min-width:0;margin:0;padding:0}
.sw-breadcrumb li+li:before{content:'›';color:currentColor;opacity:.7}
.sw-breadcrumb a{display:inline-flex;align-items:center;min-height:36px;color:inherit;text-decoration:none}
.sw-breadcrumb a:hover{color:#a83e05;text-decoration:underline;text-underline-offset:4px}
.sw-breadcrumb [aria-current=page]{color:#191919}
.sw-breadcrumb-dark{color:#ccc4b9;margin-bottom:36px}
.sw-breadcrumb-dark [aria-current=page]{color:#fffaf4}
.sw-breadcrumb-dark a:hover{color:#ff965d}
@media(max-width:600px){.sw-breadcrumb ol{gap:0 8px}.sw-breadcrumb li{gap:8px}.sw-breadcrumb a{min-height:44px}.sw-breadcrumb li:last-child{flex:1 1 auto}.sw-breadcrumb [aria-current=page]{max-width:35ch}.sw-breadcrumb-dark{margin-bottom:28px}}
/* Sector heroes occupy the first mobile screen without clipping enlarged text. */
body .sr-hero-action { display:grid; justify-items:center; width:fit-content; gap:10px; }
body .sr-hero-action>span { width:100%; text-align:center; }
@media(max-width:700px) {
  body .sector-reading .sr-hero { min-height:calc(100svh - var(--header-height)); display:flex; align-items:center; padding:28px 0; }
  body .sector-reading .sr-breadcrumb { margin-bottom:12px; }
  body .sector-reading .sr-sector { margin-bottom:20px; }
  body .sector-reading h1 { font-size:clamp(34px,11vw,48px); line-height:1.08; }
  body .sector-reading .sr-lead { font-size:15px; line-height:1.65; margin-top:28px; }
  body .sr-hero-action { width:100%; margin-top:24px; gap:12px; }
  body .sector-reading .sr-hero .sr-button { min-height:48px; padding:12px 14px; }
  body .sr-trust { margin-top:24px; }
}
@media(max-width:700px) and (max-height:700px) {
  body .sector-reading .sr-hero { padding:8px 0 10px; }
  body .sector-reading .sr-breadcrumb { margin-bottom:6px; }
  body .sector-reading .sr-sector { margin-bottom:10px; padding-block:4px; font-size:10px; }
  body .sector-reading h1 { font-size:clamp(30px,9.4vw,38px); line-height:1.06; }
  body .sector-reading .sr-lead { margin-top:12px; font-size:14px; line-height:1.5; }
  body .sr-hero-action { margin-top:12px; gap:6px; }
  body .sr-trust { margin-top:12px; }
}
/* Proof and action form one aligned group in both sector heroes. */
body .sector-reading .sr-trust {
  display:flex; align-items:center; gap:14px;
  width:min(100%,340px); margin:24px 0 0; padding:12px 14px;
  border:1px solid var(--color-rule-light); border-radius:var(--radius-panel);
  background:var(--ui-panel-light);
}
body .sector-reading .sr-faces { flex-shrink:0; padding:0; }
body .sector-reading .sr-faces img { width:36px; height:36px; border-color:var(--ui-panel-light); }
body .sector-reading .sr-trust p { font-size:12px; line-height:1.5; max-width:none; }
body .sector-reading .sr-trust p strong { display:block; margin-bottom:2px; font-weight:800; }
body .sector-reading .sr-hero-action { width:min(100%,340px); margin-top:14px; }
body .sector-reading .sr-hero-action .button { width:100%; }
body :is(.journal-card,.sw-client-card):focus-within { border-color:var(--color-accent-on-light); }
@media(hover:hover) and (pointer:fine) {
  body .journal-card:hover { box-shadow:none; border-color:#a99c8a; }
}
@media(max-width:700px) {
  body .sector-reading .sr-trust,body .sector-reading .sr-hero-action { width:100%; }
  body .sector-reading .sr-trust { margin-top:28px; padding:10px 12px; }
  body .sector-reading .sr-hero-action { margin-top:20px; }
  body .site-header.is-scrolled { background:#100d0b; backdrop-filter:none; -webkit-backdrop-filter:none; box-shadow:0 4px 12px #0000001a; }
}
@media(max-width:700px) and (max-height:700px) {
  body .sector-reading .sr-trust { padding:7px 10px; margin-top:12px; gap:10px; }
  body .sector-reading .sr-trust p { font-size:11px; line-height:1.4; }
  body .sector-reading .sr-faces img { width:30px; height:30px; }
  body .sector-reading .sr-hero-action { margin-top:10px; }
  body .sector-reading .sr-sector { margin-bottom:8px; }
  body .sector-reading .sr-lead { margin-top:10px; }
}
/* Sector introductions share the home hero's plain brand eyebrow. */
/* A continuous paper surface, with a divider aligned to the reading column. */
:root body .sector-reading .sr-hero {
  border-bottom:0;
  background:linear-gradient(to bottom,transparent 55%,var(--color-paper)),var(--sw-light-field);
}
body .sector-reading .sr-body { padding-top:0; }
body .sector-reading .sr-reality {
  position:relative; padding-top:56px;
  border-top:1px solid var(--color-rule-light);
}
body .sector-reading .sr-reality:before {
  content:""; position:absolute; left:0; top:-1px;
  width:48px; height:2px; background:var(--color-orange);
}
@media(min-width:701px) {
  body .sector-reading .sr-hero { padding-bottom:64px; }
}
@media(max-width:700px) {
  body .sector-reading .sr-reality { padding-top:36px; }
  body .sector-reading .sr-reality:before { width:32px; }
}
@media(min-width:701px) {
  body .sector-reading .sr-hero h1 { max-width:none; font-size:clamp(38px,4.5vw,52px); text-wrap:initial; }
  body .sector-reading .sr-hero .sr-desktop-break { display:none; }
}
body .sector-reading .sr-hero-eyebrow {
  color:var(--color-orange); font:700 11px/1.6 var(--font-body);
  letter-spacing:.14em; text-transform:uppercase; margin:0 0 18px;
}
@media(max-width:700px) {
  body .sector-reading .sr-hero-eyebrow { font-size:10px; letter-spacing:.1em; margin-bottom:20px; }
}
@media(max-width:700px) and (max-height:700px) {
  body .sector-reading .sr-hero-eyebrow { margin-bottom:8px; }
}
/* Lead capture and home selection share the approved dark brand surface. */
body dialog:is(:has(form[data-lead-form]),.demo-sector-dialog) {
  --dialog-inset:28px; --text:var(--color-white); --muted:var(--color-muted-dark);
  --ui-field-border:#796e65; --ui-control-hover:#28221e;
  width:min(620px,calc(100% - 24px)); padding:var(--dialog-inset);
  color:var(--color-white); background:var(--color-surface); border-color:var(--color-rule-dark);
  color-scheme:dark; box-shadow:0 24px 80px #0006;
  scrollbar-color:#796e65 var(--color-surface);
}
body dialog:is(:has(form[data-lead-form]),.demo-sector-dialog) .dialog-heading { padding-block:12px; min-height:68px; background:var(--ui-brand-header); }
body dialog:is(:has(form[data-lead-form]),.demo-sector-dialog) .form-brand .original-logo { width:154px; }
body dialog:is(:has(form[data-lead-form]),.demo-sector-dialog) h2 { font-size:28px; line-height:1.25; color:var(--color-white); }
body dialog:is(:has(form[data-lead-form]),.demo-sector-dialog) :is(.form-description,.form-note,.privacy-check,#form-success p,#form-status p) { color:var(--color-muted-dark); }
body dialog:is(:has(form[data-lead-form]),.demo-sector-dialog) .form-description { margin:12px 0 26px; font-size:14px; line-height:1.65; }
body dialog:is(:has(form[data-lead-form]),.demo-sector-dialog) #step-fields { gap:20px 16px; }
body dialog:is(:has(form[data-lead-form]),.demo-sector-dialog) .field { font-size:13px; font-weight:700; line-height:1.5; }
body dialog:is(:has(form[data-lead-form]),.demo-sector-dialog) .field:has([name=digitalMarketing]) { grid-column:1/-1; padding-top:20px; border-top:1px solid var(--color-rule-dark); }
body dialog:is(:has(form[data-lead-form]),.demo-sector-dialog) .field :is(input,select) { min-height:50px; padding:12px 14px; margin-top:8px; border:1px solid var(--ui-field-border); background:var(--color-dark); color:var(--color-white); font:400 16px/1.5 var(--font-body); }
body dialog:is(:has(form[data-lead-form]),.demo-sector-dialog) .field input::placeholder { color:var(--color-muted-dark); opacity:1; }
body dialog:is(:has(form[data-lead-form]),.demo-sector-dialog) :is(input,select):focus-visible { outline:2px solid var(--color-orange); outline-offset:2px; }
body dialog:is(:has(form[data-lead-form]),.demo-sector-dialog) .field [aria-invalid=true] { border-color:var(--color-error); }
body dialog:is(:has(form[data-lead-form]),.demo-sector-dialog) :is(.form-error,.field-error) { color:var(--color-error); }
body dialog:is(:has(form[data-lead-form]),.demo-sector-dialog) .privacy-check { font-size:12px; line-height:1.65; gap:10px; }
body dialog:is(:has(form[data-lead-form]),.demo-sector-dialog) .privacy-check input { margin-top:2px; }
body dialog:is(:has(form[data-lead-form]),.demo-sector-dialog) .form-note { text-align:center; font-size:11px; margin-top:14px; }
body dialog:is(:has(form[data-lead-form]),.demo-sector-dialog) .form-actions { margin-top:22px; }
@media(max-width:480px) {
  body dialog:is(:has(form[data-lead-form]),.demo-sector-dialog) { --dialog-inset:20px; max-height:calc(100dvh - 16px); width:calc(100% - 16px); }
  body dialog:is(:has(form[data-lead-form]),.demo-sector-dialog) h2 { font-size:24px; }
  body dialog:is(:has(form[data-lead-form]),.demo-sector-dialog) #step-fields { gap:16px; }
}
/* One white notice with an inline preference area and reachable actions. */
body .cookie-banner { padding:22px; gap:12px; border-radius:var(--radius-panel); background:var(--ui-notice); color-scheme:light; border-color:var(--color-rule-light); box-shadow:0 10px 32px #0002; overscroll-behavior:contain; }
body .cookie-banner p { padding:0; }
body .cookie-banner-heading { display:flex; align-items:center; justify-content:space-between; gap:12px; margin-bottom:8px; }
body .cookie-banner-heading .cookie-banner-title { margin:0; }
body .cookie-banner .cookie-close { color:var(--color-ink); border-color:var(--color-rule-light); }
body .cookie-banner .cookie-actions { grid-template-columns:repeat(2,minmax(0,1fr)); position:static; gap:8px; padding:0; margin:0; border:0; background:var(--ui-notice); }
body .cookie-banner .cookie-status:empty { display:none; }
body .cookie-banner .cookie-status { font-size:12px; color:var(--ui-error-light); }
body .cookie-banner .cookie-close { display:none; }
body .cookie-dialog { color-scheme:dark; }
body .cookie-dialog .cookie-category { border-color:var(--color-rule-dark); }
body .cookie-dialog .cookie-status:empty { display:none; }
@media(max-width:700px) { body .cookie-banner { padding:18px; max-height:calc(100dvh - 24px); } }
/* The sector picker is the first step of the same lead-capture surface. */
body .demo-sector-dialog .eyebrow { color:var(--color-orange); font:700 11px/1.6 var(--font-body); letter-spacing:.14em; margin:0 0 12px; }
body .demo-sector-dialog .demo-sector-option { background:var(--gradient-dark),var(--color-dark); border:1px solid var(--ui-field-border); border-radius:var(--radius-control); color:var(--color-white); padding:20px; gap:16px; box-shadow:none; }
body .demo-sector-dialog .demo-sector-option strong { font-size:19px; }
body .demo-sector-dialog .demo-sector-option small { color:var(--color-muted-dark); font-size:13px; margin-top:4px; }
body .demo-sector-dialog .demo-sector-arrow { display:grid; place-items:center; flex-shrink:0; width:40px; height:40px; border-radius:var(--radius-control); background:var(--color-orange); color:var(--color-ink); font-size:24px; }
body .demo-sector-dialog .demo-sector-error { color:var(--color-error); }
body .demo-sector-dialog :is(.demo-sector-back,.demo-fallback) { color:var(--color-orange); }
@media(hover:hover) and (pointer:fine) { body .demo-sector-dialog .demo-sector-option:hover:not(:disabled) { background:var(--ui-control-hover); border-color:var(--color-orange); } }
@media(max-width:480px) { body .demo-sector-dialog .demo-sector-option { padding:16px; } }
body .demo-sector-dialog .demo-loading { color:var(--color-muted-dark); }
body .demo-sector-dialog .demo-error { color:var(--color-error); }
body dialog:is(:has(form[data-lead-form]),.demo-sector-dialog) .demo-sector-back { color:var(--color-orange); }
/* Shared interactive and completion states across the appointment journey. */
body .booking-panel :is(.month-button,.time-slot) { border:1px solid var(--ui-field-border); background:var(--ui-panel-light); color:var(--color-ink); }
body .booking-panel .time-slot:has(input:checked) { background:var(--color-orange); border-color:var(--color-orange); }
body .booking-panel .calendar-export { margin-top:28px; padding-top:24px; border-top:1px solid var(--color-rule-light); }
body .booking-panel .calendar-export h4 { margin:0 0 14px; font:750 14px/1.5 var(--font-body); color:var(--color-ink); }
body .booking-panel .calendar-export-links { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:10px; }
body .booking-panel .calendar-export-link { display:flex; align-items:center; justify-content:center; gap:9px; min-width:0; min-height:52px; padding:12px; border:1px solid var(--ui-field-border); border-radius:var(--radius-control); background:var(--ui-panel-light); color:var(--color-ink); font:700 12px/1.5 var(--font-body); text-decoration:none; text-align:center; }
body .booking-panel .calendar-export-link img { width:20px; height:20px; flex-shrink:0; }
body .booking-panel .calendar-export-link:focus-visible { outline:2px solid var(--color-accent-on-light); outline-offset:3px; }
body .booking-panel #calendar-export-help { font:400 12px/1.65 var(--font-body); color:var(--color-muted-light); margin-top:14px; }
body .booking-panel #calendar-export-status { font:400 13px/1.65 var(--font-body); color:var(--color-muted-light); margin:0 0 14px; }
body .booking-panel #calendar-export-status:empty { display:none; }
@media(hover:hover) and (pointer:fine) { body .booking-panel .calendar-export-link:hover { border-color:var(--color-accent-on-light); background:var(--color-orange-soft); } }
@media(max-width:600px) { body .booking-panel .calendar-export-links { grid-template-columns:1fr; } body .booking-panel .calendar-export-link { justify-content:flex-start; padding-inline:16px; font-size:14px; } }
body :is(.complete-symbol,.success-icon) { width:48px; height:48px; border-radius:var(--radius-panel); background:var(--color-orange-soft); color:var(--color-accent-on-light); font:700 26px/1 var(--font-body); }
body dialog:is(:has(form[data-lead-form]),.demo-sector-dialog) .success-icon { color:var(--color-orange); }
body dialog:is(:has(form[data-lead-form]),.demo-sector-dialog) :is(#form-status,#form-success) p { line-height:1.7; font-size:14px; }
body dialog:is(:has(form[data-lead-form]),.demo-sector-dialog) #form-success .button { margin:0 0 10px; }
body .demo-sector-dialog .demo-loading:empty { min-height:0; margin:0; }
body dialog:is(:has(form[data-lead-form]),.demo-sector-dialog) :is(.field select,.privacy-check input) { scroll-margin-block:88px 36px; }
body :is(.button,.primary,.demo-sector-option,.cookie-button) { transition:background-color 180ms var(--ease-out),border-color 180ms var(--ease-out); }
@media(hover:hover) and (pointer:fine) {
  :root body :is(.button,.primary):hover { transform:none; box-shadow:none; }
  body .booking-panel :is(.month-button,.time-slot):hover:not(:disabled) { border-color:var(--color-accent-on-light); background:var(--ui-control-hover); }
  body .booking-panel .time-slot:has(input:checked):hover { background:var(--color-orange-hover); }
}
@media(prefers-reduced-motion:reduce) {
  body :is(.button,.primary,.demo-sector-option,.cookie-button) { transition:none; }
}
body .cookie-banner .cookie-actions [data-cookie-action=accept] { grid-column:2; grid-row:1; }
/* Skip link: fora do ecrã e invisível até receber foco de teclado */
.skip{position:fixed!important;top:10px!important;left:20px;z-index:100;transform:translateY(-300%);clip-path:inset(50%);opacity:0}
.skip:focus,.skip:focus-visible{transform:none;clip-path:none;opacity:1}
/* Banner de cookies mais compacto no mobile (só apresentação). */
@media(max-width:600px){
  .cookie-banner:not([hidden]){left:10px!important;right:10px!important;bottom:10px!important;width:auto!important;max-width:none!important;padding:14px 16px!important;gap:10px!important}
  .cookie-banner .cookie-banner-title{font-size:15px!important;margin:0 0 4px!important}
  .cookie-banner .cookie-banner-copy p{font-size:12.5px!important;line-height:1.45!important;margin:0!important}
  .cookie-banner .cookie-actions{gap:8px!important;margin-top:4px!important}
  .cookie-banner .cookie-actions .cookie-button{min-height:40px!important;padding-block:8px!important}
}
/* QA 16/10: ícones sem deformação em linhas flexíveis e marca do autor sem esticar. */
body :is(.sa-route,.sa-result,.sa-response,.sa-task,.sa-stages,.handoff-link) img { flex:0 0 auto; object-fit:contain; }
body .article-byline img { object-fit:contain; }
:root body .sw-site-closing .sw-closing-text{font:400 17px/1.7 var(--font-body);color:var(--color-muted-dark);max-width:640px;margin:-10px auto 32px}

/* Elementos repetidos com o mesmo aspeto em todas as páginas (2026-10-17). */
/* Etiquetas: o mesmo espaçamento (0,16em); o fecho «O próximo passo» mantém o seu estilo próprio, igual em todas as páginas. */
:root body :is(.eyebrow,.cs-eyebrow,.sr-eyebrow):not(.sw-site-closing *){letter-spacing:.16em}
/* Etiquetas em fundo claro na cor de destaque, como nas outras secções claras. */
:root body .home-commercial :is(.section-heading,.faq-heading) .eyebrow{color:var(--color-accent-on-light)}
/* 404: etiqueta laranja como nos outros topos escuros. */
:root body .error-page .eyebrow{color:var(--color-orange)}
/* Cards de artigo com a mesma borda e o mesmo estado ao passar o rato que os cards de caso. */
:root body .journal-card{border-color:#d9d2c7}
@media(hover:hover) and (pointer:fine){:root body .journal-card:hover{background:#fff;border-color:#a99c8a;box-shadow:none}}
/* Booking modal 2026-10-17: step indicator, light enter and exit, phone sheet and full screen. */
/* The submit action stays in reach when the form is taller than the screen. */
body dialog:has(form[data-lead-form]) .form-actions { position:sticky; bottom:calc(-1 * var(--dialog-inset)); z-index:3; margin:22px calc(-1 * var(--dialog-inset)) 0; padding:12px var(--dialog-inset); background:var(--color-surface); }
body dialog:has(form[data-lead-form]) form:not([aria-busy]) .form-actions { box-shadow:0 -1px 0 var(--color-rule-dark); }
body dialog:has(form[data-lead-form]) .demo-sector-back { min-height:44px; margin:-8px 0 8px; padding:0; border:0; background:none; font:700 13px/1.5 var(--font-body); cursor:pointer; }
body dialog form[aria-busy=true] #next { gap:10px; }
body dialog form[aria-busy=true] #next::after { content:''; width:16px; height:16px; flex-shrink:0; border:2px solid currentColor; border-right-color:transparent; border-radius:50%; animation:sw-spin 700ms linear infinite; }
@keyframes sw-spin { to { transform:rotate(360deg); } }
body dialog:is(:has(form[data-lead-form]),.demo-sector-dialog)::backdrop { background:#080808b3; backdrop-filter:blur(3px); }
@media(prefers-reduced-motion:no-preference) {
  body dialog:is(:has(form[data-lead-form]),.demo-sector-dialog) { animation:none; transition:opacity 200ms cubic-bezier(.2,.65,.3,1),transform 260ms cubic-bezier(.2,.65,.3,1),overlay 260ms allow-discrete,display 260ms allow-discrete; }
  body dialog:is(:has(form[data-lead-form]),.demo-sector-dialog):not([open]) { opacity:0; transform:translateY(8px); }
  @starting-style { body dialog:is(:has(form[data-lead-form]),.demo-sector-dialog)[open] { opacity:0; transform:translateY(8px); } }
  body dialog:is(:has(form[data-lead-form]),.demo-sector-dialog)::backdrop { transition:opacity 200ms ease-out,overlay 260ms allow-discrete,display 260ms allow-discrete; }
  body dialog:is(:has(form[data-lead-form]),.demo-sector-dialog):not([open])::backdrop { opacity:0; }
  @starting-style { body dialog:is(:has(form[data-lead-form]),.demo-sector-dialog)[open]::backdrop { opacity:0; } }
  /* A swap between the choice and a form, and keyboard use, are instant. */
  body dialog:is(:has(form[data-lead-form]),.demo-sector-dialog):is([data-instant],html[data-input=keyboard] *),body dialog:is(:has(form[data-lead-form]),.demo-sector-dialog):is([data-instant],html[data-input=keyboard] *)::backdrop { transition:none; }
}
/* On computer and tablet the choice takes the same frame as the sector form (850px, or the
   screen height when shorter), so header, close button and edges stay put during the swap. */
@media(min-width:601px) {
  body dialog.demo-sector-dialog:not(:has(form[data-lead-form])) { height:850px; }
}
@media(max-width:600px) {
  body dialog:is(:has(form[data-lead-form]),.demo-sector-dialog) { width:100%; max-width:100%; }
  /* The form uses the whole screen with its action always in reach. */
  body dialog:has(form[data-lead-form]) { height:100dvh; max-height:100dvh; margin:0; border:0; border-radius:0; padding-bottom:0; }
  body dialog:has(form[data-lead-form]) .form-actions { bottom:0; padding-bottom:max(12px,env(safe-area-inset-bottom)); }
  body dialog:has(form[data-lead-form]) .form-note { margin-bottom:var(--dialog-inset); }
  body dialog:has(form[data-lead-form]) :is(#form-status,#form-success) { padding-bottom:max(var(--dialog-inset),env(safe-area-inset-bottom)); }
  /* The sector choice uses the whole screen too, so the swap to the form never moves.
     The :not() keeps it above the 480px card size. */
  body dialog.demo-sector-dialog:not(:has(form[data-lead-form])) { height:100dvh; max-height:100dvh; margin:0; border:0; border-radius:0; padding-bottom:max(var(--dialog-inset),env(safe-area-inset-bottom)); }
}
@media(max-width:600px) and (prefers-reduced-motion:no-preference) {
  body dialog:is(:has(form[data-lead-form]),.demo-sector-dialog):not([open]) { transform:translateY(16px); }
  @starting-style { body dialog:is(:has(form[data-lead-form]),.demo-sector-dialog)[open] { transform:translateY(16px); } }
}
/* Appointment calendar: clear loading, easy choice on phones. */
body .booking-panel #demo-calendar[inert] .calendar-days { opacity:.5; }
@media(prefers-reduced-motion:no-preference) {
  body .booking-panel .calendar-days { transition:opacity 200ms ease-out; }
  body .booking-panel #demo-calendar[inert] .calendar-days { animation:sw-wait 1.2s ease-in-out infinite alternate; }
}
@keyframes sw-wait { from { opacity:.65; } to { opacity:.35; } }
body .booking-panel #booking-next-month { margin-top:16px; }
@media(max-width:600px) {
  body .booking-panel .time-slot { min-height:48px; font-size:14px; }
  body .booking-panel .booking-summary:has(#simulate-booking:not(:disabled)) { position:sticky; bottom:0; z-index:3; --panel-x:24px; margin-inline:calc(-1 * var(--panel-x)); padding:14px var(--panel-x) max(14px,env(safe-area-inset-bottom)); background:var(--paper,#f7f5ee); box-shadow:0 -10px 24px #0000001f; }
}
@media(max-width:520px) { body .booking-panel .booking-summary { --panel-x:19px; } }
@media(max-width:350px) { body .booking-panel .booking-summary { --panel-x:15px; } }
/* While access and times load, the calendar keeps its space and the status floats over it. */
body .booking-panel { position:relative; }
body .booking-panel #demo-calendar.is-reserved { visibility:hidden; }
body .booking-panel:has(#demo-calendar[inert]:not([hidden])) #booking-state { position:absolute; top:50%; left:50%; z-index:2; width:max-content; max-width:calc(100% - 32px); padding:10px 16px; transform:translate(-50%,-50%); border:1px solid #d6d1c7; border-radius:var(--radius-control,6px); background:var(--paper,#f7f5ee); box-shadow:0 8px 24px #0000001a; font-size:13px; text-align:center; }
body .booking-panel[aria-busy=true] :is(#booking-title,#booking-description) { min-height:2lh; }
@media(max-width:520px) { body .booking-panel[aria-busy=true] #booking-description { min-height:3lh; } }

/* Revisão 2026-10-17: o mesmo papel tem sempre o mesmo valor (tokens), sem mudar o estilo. */
:root {
  --type-eyebrow-size:11px;
  --type-section-tracking:-.02em; --type-section-leading:1.12;
  --type-display-tracking:-.025em;
  --type-link-size:14px;
  --motion-media:240ms;
  --target-min:44px;
}
/* Títulos sem palavras soltas na última linha. */
/* Só onde não há outra regra (especificidade zero): as escolhas já feitas por secção mantêm-se. */
:where(h1,h2,h3) { text-wrap:pretty; }
/* Etiquetas: o mesmo tamanho também nos topos em telemóvel (o fecho «O próximo passo» mantém o seu estilo). */
:root body :is(.hero,.evolution-hero,.sector-reading .sr-hero,.error-page) .eyebrow { font-size:var(--type-eyebrow-size); }
/* Títulos de secção: o mesmo espaçamento entre letras e entre linhas em todas as páginas. */
:root body :is(.founder-split,.founder-spotlight-copy,.journal-library-top,.faq-heading)>h2 { letter-spacing:var(--type-section-tracking); line-height:var(--type-section-leading); }
/* Títulos de cartão em Anton com o mesmo espaçamento entre letras dos outros cartões. */
:root body :is(.process-card-copy,.method-panel-heading,.training-section) h3 { letter-spacing:var(--type-display-tracking); }
/* Ligações de texto dos casos com o mesmo tamanho. */
:root body .case-site .cs-text-link { font-size:var(--type-link-size); }
/* Contraste: a etiqueta «Especialização setorial» fica laranja clara no fundo escuro, como nas outras secções escuras. */
:root body .home-commercial .sector-showcase .section-heading .eyebrow { color:var(--color-orange); }
/* Área de toque de 44px no logótipo do topo e do rodapé, sem mudar o desenho. */
:root body :is(.site-header,.footer) .wordmark { display:inline-flex; align-items:center; min-height:var(--target-min); }
/* Fontes dos artigos: área de toque maior sem mudar a linha. */
:root body .article-sources li a { padding-block:4px; }
/* A imagem dos cards de artigo reage ao rato ao mesmo ritmo das fotos dos casos. */
:root body .journal-card-cover img { transition-duration:var(--motion-media); }
/* Faixa de marcas: roda sempre, em contínuo, em todas as larguras (pedido do Fábio, 17/10).
   Só transform no compositor; o fim do ciclo (-50%) coincide com o início porque a 2.ª metade é cópia da 1.ª.
   Com «reduzir movimento» (Android: «Remover animações») continua a rodar, mas ao dobro do tempo. */
:root { --brand-cycle:37.333s; --brand-cycle-reduced-factor:2; }
@media(max-width:700px) { :root { --brand-cycle:32.667s; } }
:root body .brand-track { animation-name:brand-scroll; animation-duration:var(--brand-cycle); animation-timing-function:linear; animation-iteration-count:infinite; will-change:transform; backface-visibility:hidden; }
@media(prefers-reduced-motion:reduce) { :root body .brand-track { animation-duration:calc(var(--brand-cycle) * var(--brand-cycle-reduced-factor)); } }
/* Propostas aprovadas pelo Fábio (17/10). */
/* 1. Topo de Imobiliário e Crédito: laranja escuro do design system no fundo claro (contraste ≥ 4,5). */
:root body .sector-reading .sr-hero .sr-hero-eyebrow,:root body .sector-reading .sr-hero h1 span { color:var(--color-accent-on-light); }
/* 2. Títulos de secção das páginas de setor na escala do resto do site. */
:root body .sector-reading .sr-section>h2 { font-size:var(--type-section); line-height:var(--type-section-leading); letter-spacing:var(--type-section-tracking); text-wrap:balance; }
/* 3. «O próximo passo» com o mesmo tamanho e espaçamento das outras etiquetas (mantém a cor e a margem). */
:root body .sw-site-closing .eyebrow { font-weight:700; font-size:var(--type-eyebrow-size); letter-spacing:.16em; }
/* 4. Migalhas dos casos: 44px de área de toque; a margem negativa mantém a posição do texto. */
:root body .sw-breadcrumb a { min-height:var(--target-min); }
@media(min-width:601px) { :root body .sw-breadcrumb ol { margin-block:-4px; } }
/* Título do topo de Imobiliário e Crédito acima dos títulos de secção em todas as larguras (pedido do Fábio, 17/10).
   No computador e tablet segue a escala do h1 da home (7,4vw, limitado pela altura do ecrã), com teto de 96px
   para caber na coluna de leitura; a parte laranja parte sempre em «Sem depender de / …». */
:root {
  --type-sector-hero:clamp(56px,min(7.4vw,10.5svh),96px);
  --type-sector-hero-phone:clamp(38px,12vw,52px);
  --type-sector-hero-phone-short:clamp(36px,11vw,44px);
}
@media(min-width:701px) {
  :root body .sector-reading .sr-hero h1 { font-size:var(--type-sector-hero); line-height:1.04; letter-spacing:-.025em; }
  :root body .sector-reading .sr-hero .sr-desktop-break { display:inline; }
}
@media(max-width:700px) { :root body .sector-reading .sr-hero h1 { font-size:var(--type-sector-hero-phone); } }
@media(max-width:700px) and (max-height:700px) { :root body .sector-reading .sr-hero h1 { font-size:var(--type-sector-hero-phone-short); } }
/* Crédito: «Mais financiamentos.» é a linha mais longa; no telemóvel o tamanho fica limitado para caber numa linha
   (sem «Mais» sozinho), continuando acima dos títulos de secção. */
@media(max-width:700px) { :root body.credit-page .sector-reading .sr-hero h1 { font-size:min(var(--type-sector-hero-phone),calc((100vw - 40px) / 8.4)); } }
@media(max-width:700px) and (max-height:700px) { :root body.credit-page .sector-reading .sr-hero h1 { font-size:min(var(--type-sector-hero-phone-short),calc((100vw - 40px) / 8.4)); } }
/* Crédito: a parte laranja divide-se em «Sem depender / de referências.» (duas palavras em cada linha), sem palavra sozinha. */
:root body.credit-page .sector-reading .sr-hero h1 span { display:block; text-wrap:balance; }
:root body.credit-page .sector-reading .sr-hero .sr-desktop-break { display:none; }

/* Coluna das páginas de setor igual à da home (19/10): título, textos, botões e casos
   ficam na mesma largura e com as mesmas margens laterais que as secções da home. */
:root body .sector-reading .sr-width { box-sizing:border-box; width:100%; max-width:1440px; margin-inline:auto; padding-left:max(var(--gutter),env(safe-area-inset-left)); padding-right:max(var(--gutter),env(safe-area-inset-right)); }
:root body .sector-reading .sr-cases-grid { width:auto; left:auto; transform:none; gap:24px; }
/* Texto das páginas de setor acompanha a coluna (como a home, 19/10).
   A partir de 821px: introduções, cartões e FAQ sem limite artificial (a home
   também não limita estes blocos); aviso legal com o teto da home
   (.cs-commercial-bottom>p = 620px); texto ao lado do botão sem o teto de 36ch.
   Até 820px mantém-se a medida publicada em «casos», para nada mudar no telemóvel
   e no tablet estreito. text-wrap:pretty evita palavras sozinhas no fim. */
@media(min-width:821px) {
  :root body .sector-reading :is(.sr-reality>p,.sr-deliverables p,.sr-faq-list details>p) { max-width:none; text-wrap:pretty; }
  :root body .sector-reading .sr-disclaimer { max-width:620px; margin-inline:0; text-wrap:pretty; }
  :root body .sector-reading .sr-inline-cta>span { max-width:none; text-wrap:pretty; }
  :root body .sector-reading .sr-lead { text-wrap:pretty; }
}
@media(max-width:820px) {
  :root body .sector-reading :is(.sr-reality>p,.sr-deliverables p,.sr-faq-list details>p) { max-width:60ch; }
  :root body .sector-reading .sr-disclaimer { max-width:72ch; margin-inline:0; }
}

/* Cabeçalhos de página: linhas equilibradas (19/10).
   Títulos com text-wrap:balance (sobrepõe text-wrap:initial pontual).
   Introdução do topo com largura próxima do bloco do título e balance;
   o texto do resto da página mantém a largura nova pedida. */
:root body :is(
  .sector-reading .sr-hero h1,
  .journal-hero h1,
  .article-hero h1,
  .cs-library-hero h1,
  .founder-hero h1,
  .booking-intro h1,
  .privacy-page h1,
  .error-page h1
) { text-wrap:balance; }
:root body .sector-reading .sr-hero h1 span { text-wrap:balance; }
:root body :is(
  .sector-reading .sr-lead,
  .evolution-hero .hero-description,
  .journal-lead,
  .cs-library-hero .cs-lead,
  .founder-hero .journal-lead,
  .booking-intro .intro-copy,
  .privacy-page > p:not([class])
) { text-wrap:balance; }
/* Lead dos setores: um pouco abaixo dos 740px para alinhar com as linhas do h1 (~650–770px)
   e evitar a última linha curta a 1440/1024. */
:root body .sector-reading .sr-lead { max-width:min(40rem,100%); }

/* Melhorias visuais (20/10). Só organização e hierarquia: mesmas cores, fontes,
   espaços, componentes e animações. Cabeçalhos, coluna, faixa de logótipos, modal,
   rodapé, aviso de cookies e as secções «o sistema» e «porquê» da home ficam iguais. */

/* 1. Herói dos setores a partir de 1024px: o título ocupa a linha toda (mesmas quebras)
   e a prova e o botão passam para a coluna direita, como no herói da home. */
@media(min-width:1024px) {
  :root body .sector-reading .sr-hero .sr-width { display:grid; grid-template-columns:minmax(0,1fr) 340px; column-gap:var(--space-grid); align-items:start; }
  :root body .sector-reading .sr-hero .sr-width>:not(.sr-lead,.sr-trust,.sr-hero-action) { grid-column:1/-1; }
  :root body .sector-reading .sr-hero .sr-lead { grid-column:1; grid-row:span 2; }
  :root body .sector-reading .sr-hero .sr-trust { grid-column:2; margin-top:0; }
  /* Herói (20/10, 15:15): a caixa da prova começa à mesma distância do h1 que o lead
     (24px, o espaço que o lead já tinha), alinhada pelo topo do lead. */
  :root body .sector-reading .sr-hero .sr-width { --sr-hero-gap:24px; }
  :root body .sector-reading .sr-hero :is(.sr-lead,.sr-trust) { margin-top:var(--sr-hero-gap); }
  :root body .sector-reading .sr-hero .sr-hero-action { grid-column:2; }
}

/* 2. Ritmo das páginas de setor: o mesmo espaço vertical das secções da home e
   «O que implementamos» numa faixa escura com o fundo das secções escuras da home. */
:root body .sector-reading .sr-body>.sr-section { padding-top:var(--space-section); }
:root body .sector-reading .sr-body>.sr-band {
  margin-top:var(--space-section); padding-bottom:var(--space-section);
  color:var(--color-white); position:relative; isolation:isolate;
}
/* Faixa a toda a largura (20/10): o fundo das secções escuras da home (--sw-dark-field)
   vai de borda a borda do ecrã, sem degrau na margem da coluna. O main corta só na
   horizontal (overflow-x:clip não cria scroll nem afeta o sticky), sem deslocamento. */
:root body main.sector-reading { overflow-x:clip; }
:root body .sector-reading .sr-body>.sr-band::before {
  content:""; position:absolute; z-index:-1; inset-block:0; left:50%; width:100vw;
  transform:translateX(-50%); background:var(--sw-dark-field); pointer-events:none;
}
:root body .sector-reading .sr-band>h2 { color:var(--color-white); }
:root body .sector-reading .sr-band .sr-deliverables article {
  border:1px solid var(--color-rule-dark);
  background:radial-gradient(ellipse at 95% 0%,#ff681d10,transparent 70%),#10100f; color:var(--color-white);
}
:root body .sector-reading .sr-band .sr-deliverables h3 { color:var(--color-white); }
:root body .sector-reading .sr-band .sr-deliverables p,
:root body .sector-reading .sr-band .sr-inline-cta>span { color:var(--color-muted-dark); }
:root body .sector-reading .sr-band .sr-delivery-icon img { filter:invert(1); }

/* 3. Casos em tablet: 2 colunas entre 701 e 1100px (como em /casos-de-estudo);
   com 3 casos, o terceiro ocupa a linha inteira em versão horizontal. */
@media(min-width:701px) and (max-width:1100px) {
  :root body .cs-commercial-grid:has(>.sw-client-card) { grid-template-columns:repeat(2,minmax(0,1fr)); }
  :root body .cs-commercial-grid>.sw-client-card:last-child:nth-child(odd) { grid-column:1/-1; }
  :root body .cs-commercial-grid>.sw-client-card:last-child:nth-child(odd) .cs-card-body { display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1fr); column-gap:24px; align-content:start; }
  :root body .cs-commercial-grid>.sw-client-card:last-child:nth-child(odd) .cs-card-body>* { grid-column:1; }
  :root body .cs-commercial-grid>.sw-client-card:last-child:nth-child(odd) .cs-card-body>.sw-card-metrics { grid-column:2; grid-row:1/span 3; margin-top:0; align-self:start; }
  :root body .cs-commercial-grid>.sw-client-card:last-child:nth-child(odd) .cs-card-body>.cs-card-footer { grid-column:1/-1; }
}

/* 4. Foco dos botões: um só contorno, laranja sobre fundo escuro e ferrugem sobre
   fundo claro, com 3px e 5px de afastamento. */
:root body :is(main,dialog,.site-mobile-menu,header) :is(.button,.sr-button,.primary):focus-visible { outline:3px solid var(--color-accent-on-light); outline-offset:5px; }
:root body :is(.hero:not(.sr-hero),.sector-showcase,.method-section,.founder-spotlight,.final-section,.sw-site-closing,.sr-band,.error-page,dialog,.site-mobile-menu,header) :is(.button,.sr-button,.primary):focus-visible { outline-color:var(--color-orange); }

/* 5. «Reconhece algum destes sinais?»: 2 colunas a partir de 1024px; o 5.º sinal ocupa a linha. */
@media(min-width:1024px) {
  :root body .sector-reading .sr-signs ul { grid-template-columns:repeat(2,minmax(0,1fr)); }
  :root body .sector-reading .sr-signs li:last-child:nth-child(odd) { grid-column:1/-1; }
}

/* 6. «O que implementamos»: a maqueta da home que corresponde a cada ponto, a partir de 1024px
   (o mesmo componente na versão escura; a secção da home não muda). */
:root body .sector-reading .sr-art { display:none; }
@media(min-width:1024px) {
  :root body .sector-reading .sr-band .sr-deliverables article { grid-template-columns:34px minmax(0,1fr) minmax(0,400px); column-gap:18px; align-items:center; }
  :root body .sector-reading .sr-band .sr-deliverables article>div:not(.sr-art) { align-self:start; }
  :root body .sector-reading .sr-art {
    display:flex; flex-direction:column; justify-content:center; box-sizing:border-box;
    min-height:200px; margin-left:22px; padding:26px 30px; overflow:hidden;
    border:1px solid var(--color-rule-dark); border-radius:var(--radius-panel);
    background:radial-gradient(ellipse at 50% 115%,#ff681b12,transparent 70%),#0c0c0c;
    color:var(--color-white); font:500 13px/1.5 var(--font-body);
  }
}

/* 7. Telemóvel: o primeiro caso completo e os outros em versão compacta
   (nome, visitas, angariações e ligação), seguidos de «Ver todos os casos de estudo».
   28/10: as angariações voltam a aparecer em todos os cartões (pedido do Fábio). */
@media(max-width:700px) {
  :root body .cs-commercial-grid>.sw-client-card:nth-child(n+2) :is(.sw-case-affiliation,.sw-card-investment,.sw-summary-period) { display:none; }
  :root body .cs-commercial-grid>.sw-client-card:nth-child(n+2) .sw-client { min-height:0; }
  :root body .cs-commercial-grid>.sw-client-card:nth-child(n+2) .sw-client h3 { min-height:0; }
  :root body .cs-commercial-grid>.sw-client-card:nth-child(n+2) .sw-card-metrics { min-height:0; margin-bottom:16px; }
}

/* Títulos dos cartões da home: um só tamanho (34px) no computador, como em «Como funciona». */
@media(min-width:1025px) {
  :root body .evolution-site .visual-process-card h3,
  :root body .redesign .benefit-grid h3 { font-size:34px; }
}

/* Título de /imobiliario em 2 linhas como em /credito (20/10, 15:26): a partir de 701px
   deixa de haver a quebra forçada antes de «prospeção a frio.» e a frase laranja fica
   num bloco próprio com text-wrap:balance, com o mesmo tamanho de /credito. Se a frase
   não couber numa linha, o balance divide-a sem reduzir a letra. */
@media(min-width:701px) {
  :root body.imobiliario-page .sector-reading .sr-hero .sr-desktop-break { display:none; }
  :root body.imobiliario-page .sector-reading .sr-hero h1 span { display:block; text-wrap:balance; }
}
/* No computador (1024px+), a frase laranja de /imobiliario («Sem depender de prospeção a frio.»)
   mede 13,2 vezes o tamanho da letra e só cabe numa linha a partir de 1440px. Para ficar em
   2 linhas em todas as larguras, o título das DUAS páginas de setor usa a mesma escala:
   o tamanho de sempre, limitado a 7,5% da largura da coluna (cqi), sempre igual entre páginas. */
@media(min-width:1024px) {
  :root body .sector-reading .sr-hero .sr-width { container-type:inline-size; }
  :root body .sector-reading .sr-hero h1 { font-size:min(var(--type-sector-hero),7.5cqi); }
}

/* ===== Verificação final 20/10/2026. Cada bloco é independente: pode sair sem afetar os outros. ===== */

/* A1. Rodapé: o botão «Gestão de cookies» só aparece com JavaScript e empurrava «Política de privacidade»
   depois de pintada a página (deslocamento nas páginas curtas). O lugar fica reservado, invisível, até lá.
   O [hidden] tem !important numa camada, por isso o lugar é guardado por um texto invisível igual ao do botão. */
:root body .site-footer .footer-legal:has(>button[data-cookie-open][hidden])::after { content:'Gestão de cookies'; display:inline-flex; align-items:center; min-height:44px; padding:0; font:400 12px/1.6 var(--font-body); visibility:hidden; pointer-events:none; }

/* A2. Alvos de toque de pelo menos 44 px nas ligações curtas, sem mudar o desenho. */
:root body :is(.site-footer .footer-nav-group a, .error-actions>a:not(.button)) { min-width:var(--target-min,44px); }
:root body .sw-breadcrumb li { pointer-events:none; }
:root body .sw-breadcrumb li>* { pointer-events:auto; }
:root body .sw-breadcrumb li a { position:relative; }
:root body .sw-breadcrumb li a::after { content:''; position:absolute; left:50%; top:50%; width:max(100%,var(--target-min,44px)); height:max(100%,var(--target-min,44px)); transform:translate(-50%,-50%); }
:root body .article-sources ul { display:grid; gap:0; }
:root body .article-sources li { margin:0; }
:root body .article-sources li a { display:inline-flex; align-items:center; min-height:var(--target-min,44px); padding-block:0; }

/* A3. Títulos de secção sem palavra sozinha na última linha (artigos, privacidade, casos da home). */
:root body :is(.article-section>h2, .privacy-page h2, #commercial-cases-title) { text-wrap:balance; }

/* B1. Telemóvel, páginas de setor: a prova vem antes do botão, como na home, no tablet e no computador. */
@media(max-width:600px) {
  :root body .sector-reading .sr-hero .sr-trust { order:4; margin-top:24px; }
  :root body .sector-reading .sr-hero .sr-hero-action { order:5; margin-top:14px; }
}
@media(max-width:600px) and (max-height:700px) {
  :root body .sector-reading .sr-hero .sr-trust { margin-top:12px; }
  :root body .sector-reading .sr-hero .sr-hero-action { margin-top:10px; }
}

/* B2. Texto informativo de 11 px passa a 12 px (datas, «por visita», períodos, contagens, nota do formulário,
   crédito do rodapé). Os sobretítulos em maiúsculas ficam iguais. */
:root body :is(.journal-meta, .journal-meta span, .journal-filters span, .founder-area, .site-footer .footer-meta a.sw-credit, dialog .form-note) { font-size:12px; }
/* (case-presentation.css vem depois deste ficheiro: a classe repetida dá a prioridade necessária.) */
:root body .sw-client-card.sw-client-card .sw-card-metrics .sw-metric-cost span, :root body .sw-client-card.sw-client-card .sw-summary-period { font-size:12px; }

/* B3. Telemóvel: o percurso de navegação fica numa linha; o título da página atual termina em reticências
   (o título completo está logo abaixo, no h1). */
@media(max-width:600px) {
  :root body .sw-breadcrumb ol { flex-wrap:nowrap; }
  :root body .sw-breadcrumb li:not(:last-child) { flex-shrink:0; }
  :root body .sw-breadcrumb li:last-child { min-width:0; flex:1 1 auto; }
  :root body .sw-breadcrumb [aria-current=page] { display:block; min-width:0; max-width:none; overflow:hidden; white-space:nowrap; text-overflow:ellipsis; }
}

/* ===== Cabeçalho dos setores, proposta A (21/10/2026). Bloco único e independente: só organização e hierarquia.
   Mesmo texto, h1 (2 linhas e escala de 20/10), avatares, cores, espaços (24px) e componentes. Telemóvel (até 700px) igual. ===== */
/* A partir de 701px: o badge fica por cima do botão, os dois alinhados à esquerda com o texto.
   A nota «Gratuita e sem compromisso» continua centrada por baixo do botão. */
@media(min-width:701px) {
  :root body .sector-reading .sr-hero .sr-width { --sr-hero-gap:24px; display:grid; column-gap:var(--sr-hero-gap); align-items:start; }
  :root body .sector-reading .sr-hero .sr-hero-eyebrow { grid-row:1; grid-column:1/-1; }
  :root body .sector-reading .sr-hero h1 { grid-row:2; grid-column:1/-1; }
  :root body .sector-reading .sr-hero .sr-lead { grid-row:3; grid-column:1/-1; margin-top:var(--sr-hero-gap); }
  :root body .sector-reading .sr-hero .sr-trust { grid-row:4; grid-column:1/-1; justify-self:start; width:min(100%,340px); margin-top:var(--sr-hero-gap); }
  :root body .sector-reading .sr-hero .sr-hero-action { grid-row:5; grid-column:1/-1; justify-self:start; width:min(100%,340px); margin-top:var(--sr-hero-gap); }
}
@media(min-width:1024px) {
  :root body .sector-reading .sr-hero .sr-width { grid-template-columns:minmax(0,1fr); }
}

/* t188u/t189u: Guardar do modal sempre laranja legível; sem linhas entre categorias. */
body .cookie-dialog-actions .cookie-button[data-cookie-action=custom],
body .cookie-dialog-actions .cookie-dialog-save {
  background:var(--color-orange) !important; border-color:var(--color-orange) !important; color:var(--color-dark) !important;
  font-weight:800 !important; opacity:1 !important; min-height:48px;
}
body .cookie-dialog .cookie-category { border-top:0 !important; }
body .cookie-dialog-heading { border-bottom:1px solid #ffffff1a !important; }
body .cookie-dialog-actions { border-top:0 !important; }
body .cookie-dialog a { color:var(--color-orange) !important; font-weight:600; text-decoration:underline; text-underline-offset:3px; }

/* t188u: Recusar do banner = contorno cinza visível no fundo claro (não herdar #ffffff40 do modal). */
body .cookie-banner .cookie-actions .cookie-button[data-cookie-action=reject] {
  color:var(--color-ink) !important; background:transparent !important; border:1px solid #aaa69f !important;
}
body .cookie-banner .cookie-actions .cookie-button[data-cookie-action=accept] {
  color:var(--color-dark) !important; background:var(--color-orange) !important; border-color:var(--color-orange) !important;
}

/* The same profile anatomy, with compact and hero sizes across all case surfaces. */
body .sw-summary-metrics{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;margin:24px 0 0;padding:24px 0 16px;border-top:1px solid var(--color-rule-light)}
body .sw-summary-metrics>div{display:flex;flex-direction:column;gap:10px;min-width:0}
body .sw-summary-metrics dt{font:500 13px/1.6 var(--font-body);color:var(--color-muted-light);max-width:16ch;min-height:42px}
body .sw-summary-metrics dd{order:-1;font:400 48px/1.12 var(--font-display);letter-spacing:-.025em;margin:0;color:var(--color-ink);font-variant-numeric:tabular-nums;white-space:nowrap}
body .sw-summary-metrics>div:first-child dd{color:var(--color-accent-on-light)}
body .sw-summary-context{font-size:13px;line-height:1.8;color:var(--color-muted-light);min-height:47px;margin-bottom:12px}
body .sw-summary-period{font-size:12px;line-height:1.7;color:var(--color-muted-light);margin:0 0 24px;min-height:41px}
body .sw-client-card{background:linear-gradient(140deg,#fffdfa,#fbf8f3);border-color:#d5cec3;box-shadow:none}
body .sw-client-card .cs-card-footer{font-size:13px;min-height:66px;padding-block:18px}
body .cs-proof-card .sw-client{min-height:92px}
body .cs-proof-card .sw-summary-metrics{margin-top:24px;padding-top:24px}
body .cs-proof-card .sw-summary-metrics dd{font-size:46px}
body .cs-proof-card .sw-summary-period{margin-bottom:22px}
body .case-site :is(section[id],main[id]){scroll-margin-top:112px}
body .sw-client{display:flex;align-items:center;gap:18px;min-width:0;text-align:left}
body .sw-client-photo{width:72px;height:72px;border-radius:50%;overflow:hidden;background:#fff;flex-shrink:0;border:1px solid #18181816}
body .sw-client-photo>img{width:100%;height:100%;object-fit:cover;object-position:center;transform:var(--portrait-transform,none)}
body .sw-client-org>img{object-fit:contain;padding:12%;transform:none}
body .sw-client-copy{min-width:0}
body .sw-client h3{font:750 21px/1.3 var(--font-body);letter-spacing:-.025em;text-wrap:initial;margin:0 0 7px}
body .sw-client p{font-size:12px;line-height:1.6;margin:0;color:inherit}
body .sw-client-copy>span{display:block;font-size:12px;line-height:1.6;margin-top:4px;color:var(--color-muted-light)}
.sw-client-photo.cs-person-ricardo-barcelo{--portrait-transform:scale(.95) translate(3%,8%)}
.sw-client-photo.cs-person-fabio-quintas{--portrait-transform:scale(1.04) translateY(8.5%)}
.sw-client-photo.cs-person-antonio-rodrigues{--portrait-transform:translateY(4.5%)}
.sw-client-photo.cs-person-maria-azevedo{--portrait-transform:scale(1.05) translate(-3%,9%)}
body .cs-proof-card .sw-client{align-items:flex-start;gap:14px}
body .cs-proof-card .sw-client-photo{width:58px;height:58px}
body .cs-proof-card .sw-client h3{font-size:18px}
body .cs-proof-card .sw-client :is(p,span){color:var(--color-muted-dark)}
body .cs-proof-card .sw-client h3{color:var(--color-white)}
body .sw-client-card .cs-card-body{padding:26px 24px 0}
body .cs-related-grid .sw-client-card .cs-card-link{display:flex;flex-direction:column;height:100%}
body .cs-related-grid .sw-client-card .cs-card-body{width:100%;padding:26px 24px 0;min-width:0}
:root body :is(.cs-card-grid,.cs-related-grid) .sw-client h3{font:750 21px/1.3 var(--font-body);letter-spacing:-.025em;margin:0 0 7px}
body .sw-client-card .sw-client{min-height:112px;align-items:flex-start}
body .sw-client-card .sw-client h3{min-height:54px;display:flex;align-items:center}
body .sw-client-brand{display:flex;justify-content:space-between;align-items:center;gap:20px;min-height:70px;border-top:1px solid var(--color-rule-light);margin-top:22px;padding-top:16px}
body .sw-client-brand>img{object-fit:contain;object-position:left center;width:100px;height:32px}
body .sw-client-brand>span{font-size:12px;line-height:1.6;color:var(--color-muted-light);text-align:right}
body .sw-client-brand strong{font-weight:650;color:var(--color-ink)}
body .sw-client-card .cs-card-results{margin-top:18px;padding-top:18px}
body .sw-client-card .cs-card-results strong{font:400 36px/1.25 var(--font-display);letter-spacing:0}
body .sw-client-spend{font-size:13px;line-height:1.7;color:var(--color-muted-light);margin-top:14px}
body .sw-client-period{font-size:12px;line-height:1.7;color:var(--color-muted-light);margin:16px 0 24px}
body .sw-card-funnel{border-top:1px solid var(--color-rule-light);padding-top:18px;margin-top:18px}
body .sw-card-funnel .cs-card-results{border:0;margin-top:12px;padding-top:0}
body .sw-card-funnels{min-height:185px;padding-top:18px;display:flex;flex-direction:column;justify-content:center;border-top:1px solid var(--color-rule-light);margin-top:18px}
body .sw-card-funnels .sw-card-funnel{border:0;margin:0;padding:0}
body .sw-card-funnels:not(.sw-card-funnels-multiple) .cs-card-results strong{font-size:42px}
body .sw-card-funnels-multiple{gap:18px}
body .sw-card-funnels-multiple .sw-card-funnel{display:grid;grid-template-columns:1fr 1.5fr;gap:14px;align-items:center}
body .sw-card-funnels-multiple .sw-card-funnel+.sw-card-funnel{padding-top:18px;border-top:1px solid var(--color-rule-light)}
body .sw-card-funnels-multiple .cs-card-results{margin:0;gap:12px}
body .sw-card-funnels-multiple .cs-card-results strong{font-size:28px}
body .sw-card-funnels-multiple .sw-funnel-label{font-size:12px;gap:7px;flex-wrap:wrap}
body .sw-card-scope{min-height:104px;padding:18px 0;border-block:1px solid var(--color-rule-light);margin-top:20px;font-size:12px;line-height:1.7}
body .sw-card-scope>strong{font-weight:750}
body .sw-card-scope>p{margin-top:6px;color:var(--color-muted-light);font-size:12px;line-height:1.7}
body .sw-client-card .sw-client-period{font-size:12px;min-height:44px}
body .sw-client-card .sw-client-period>strong{font-weight:650;color:var(--color-ink)}
body .sw-funnel-label{display:flex;align-items:center;gap:9px;font:700 13px/1.6 var(--font-body);color:var(--color-ink)}
body .sw-funnel-label img{width:17px;height:17px}
body .sw-proof-funnels{padding:24px 0;display:grid;gap:20px}
body .sw-proof-funnels>div{display:grid;grid-template-columns:1fr auto;align-items:baseline;gap:5px 12px}
body .sw-proof-funnels>div+div{border-top:1px solid var(--color-rule-dark);padding-top:20px}
body .sw-proof-funnels strong{font:400 40px/1.2 var(--font-display);color:#ff813f;grid-column:1;grid-row:2;white-space:nowrap}
body .sw-proof-funnels strong small{font:500 12px/1.6 var(--font-body);color:var(--color-muted-dark)}
body .sw-proof-funnels>div>span{font-size:12px;line-height:1.6;color:var(--color-muted-dark)}
body .sw-proof-funnels>div>span:last-child{grid-column:2;grid-row:2}
body .sw-snapshot-funnels{display:flex;gap:30px;margin:24px 0}
body .sw-snapshot-funnels>div{display:flex;flex-direction:column;gap:8px}
body .sw-snapshot-funnels span{font-size:12px;color:var(--color-muted-dark)}
body .sw-snapshot-funnels strong{font:400 50px/1.2 var(--font-display);color:#ff813f}
body .sw-snapshot-funnels small{font:500 12px/1.5 var(--font-body);color:var(--color-muted-dark)}
body .sw-card-outcomes{border-block:1px solid var(--color-rule-light);margin:18px 0 0;padding:9px 0}
body .sw-card-outcomes>div{display:flex;align-items:baseline;justify-content:space-between;gap:12px;padding:5px 0}
body .sw-card-outcomes dt{font-size:12px;line-height:1.6}
body .sw-card-outcomes dd{font-size:17px;font-weight:750;font-variant-numeric:tabular-nums;margin:0}
body .sw-profile-hero{padding-bottom:64px}
body .sw-profile-grid{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(0,.85fr);gap:80px;align-items:start}
body .sw-client-hero{gap:24px}
body .sw-client-hero .sw-client-photo{width:112px;height:112px}
body .sw-client-hero h1{font-size:clamp(40px,4.4vw,64px);line-height:1.1;margin:0 0 12px;letter-spacing:-.025em;text-wrap:initial}
body .sw-client-hero p{font-size:14px;color:var(--color-muted-dark)}
body .sw-client-hero .sw-client-copy>span{color:var(--color-muted-dark);margin-top:8px;font-size:13px}
body .sw-profile-description{font-size:16px;line-height:1.85;color:var(--color-muted-dark);margin:30px 0;max-width:65ch}
body .sw-profile-meta{display:flex;align-items:center;gap:24px;padding:22px 0;border-top:1px solid var(--color-rule-dark)}
body .sw-profile-meta>div:last-child{display:flex;flex-direction:column;gap:4px;font-size:13px}
body .sw-profile-meta span{color:var(--color-muted-dark)}
body .sw-profile-meta strong{font-weight:650}
body .sw-profile-brand{background:#fff;border-radius:8px;width:145px;height:58px;padding:12px;display:grid;place-items:center}
body .sw-profile-brand img{max-width:100%;max-height:34px;object-fit:contain}
body .sw-profile-grid>div>.cs-text-link{font-size:13px;color:#ffad7d}
body .sw-case-snapshot{border:1px solid var(--color-rule-dark);background:#ffffff04;border-radius:10px;padding:28px}
body .sw-case-snapshot>p:first-child{font-size:13px;color:var(--color-muted-dark)}
body .sw-snapshot-result{display:flex;align-items:baseline;gap:20px;margin:16px 0 24px}
body .sw-snapshot-result>strong{font:400 80px/1 var(--font-display);color:#ff813f;font-variant-numeric:tabular-nums}
body .sw-snapshot-result>span{font-size:17px;line-height:1.6}
body .sw-case-snapshot dl{border-block:1px solid var(--color-rule-dark);padding:18px 0;display:grid;gap:16px}
body .sw-case-snapshot dt{font-size:12px;color:var(--color-muted-dark);margin-bottom:6px}
body .sw-case-snapshot dd{margin:0;font-size:15px;font-weight:650;line-height:1.7}
body .sw-case-snapshot dl>div:first-child dd{font-size:24px;font-variant-numeric:tabular-nums}
body .sw-case-snapshot>.cs-text-link{margin-top:20px;color:#ffad7d}
body .sw-case-snapshot .sw-snapshot-note{font-size:12px;color:var(--color-muted-dark);line-height:1.7;margin-top:10px}
body .sw-results .cs-library-heading{align-items:flex-start}
body .sw-results-context{display:flex;align-items:center;justify-content:space-between;gap:24px;margin:0 0 24px;font-size:13px;line-height:1.7;color:var(--color-muted-light)}
body .sw-results-context>span:first-child{display:flex;align-items:center;gap:12px;flex-wrap:wrap}
body .sw-results-context strong{font-size:19px;font-weight:750;color:var(--color-ink);font-variant-numeric:tabular-nums}
body .sw-stage-panel{border:1px solid var(--color-rule-light);border-radius:10px;background:var(--ui-panel-light,#fffdfa);overflow:hidden}
body .sw-stage-table{border-collapse:collapse;width:100%;table-layout:fixed;color:var(--color-ink);text-align:left}
body .sw-stage-table thead th{font:650 13px/1.6 var(--font-body);padding:18px 26px;color:var(--color-muted-light);background:#e8e2d94d;border-bottom:1px solid var(--color-rule-light)}
body .sw-stage-table thead th:first-child{width:52%}
body .sw-stage-table tbody :is(th,td){padding:26px;border-bottom:1px solid var(--color-rule-light);vertical-align:middle}
body .sw-stage-table tbody tr:last-child :is(th,td){border-bottom:0}
body .sw-stage-name{display:flex;align-items:center;gap:18px}
body .sw-stage-name>img{width:23px;height:23px;flex-shrink:0;opacity:.8}
body .sw-stage-name strong{display:block;font:700 17px/1.5 var(--font-body)}
body .sw-stage-name small{display:block;font:400 13px/1.7 var(--font-body);color:var(--color-muted-light);margin-top:5px}
body .sw-stage-table td>strong{font:400 36px/1.3 var(--font-display);letter-spacing:0;font-variant-numeric:tabular-nums;white-space:nowrap}
body .sw-stage-table td:last-child>strong{font:750 25px/1.3 var(--font-body);letter-spacing:-.025em}
body .sw-stage-table .sw-commercial-start{border-top:2px solid #c5bbae}
body .sw-stage-table .sw-commercial-start~tr:last-child{background:#fff2e7}
body .sw-mobile-label{display:none}
body .sw-result-method{font-size:13px;line-height:1.8;color:var(--color-muted-light);margin-top:20px;max-width:85ch}
body .sw-results-period{font-size:14px;line-height:1.8;color:var(--color-muted-light);margin-bottom:32px}
body .sw-funnel+.sw-funnel{margin-top:44px;padding-top:32px;border-top:1px solid var(--color-rule-light)}
body .sw-funnel-heading{display:flex;align-items:center;justify-content:space-between;gap:24px;margin-bottom:18px}
body .sw-funnel-heading h3{display:flex;align-items:center;gap:12px;font:750 22px/1.4 var(--font-body);letter-spacing:-.025em;text-wrap:initial}
body .sw-funnel-heading img{width:23px;height:23px;flex-shrink:0}
body .sw-funnel-heading p{font-size:13px;line-height:1.7;color:var(--color-muted-light)}
body .sw-funnel-heading p strong{font-size:19px;display:block;color:var(--color-ink)}
body .sw-funnel-note{font-size:12px;line-height:1.7;color:var(--color-muted-light);margin-top:12px}
@media(max-width:1100px){
  body .sw-profile-grid{gap:40px;grid-template-columns:minmax(0,1.15fr) minmax(0,1fr)}
  body .sw-client-hero{align-items:flex-start;flex-direction:column}
  body .sw-client-card .sw-client{align-items:flex-start;gap:14px}
  body .sw-client-card .sw-client-photo{width:54px;height:54px}
  body .sw-client-card .sw-client h3{font-size:19px}
}
@media(max-width:800px){
  body .sw-profile-grid{grid-template-columns:1fr;gap:32px}
  body .sw-client-hero{flex-direction:row;align-items:center}
  body .sw-stage-table thead th:first-child{width:45%}
  body .sw-stage-table :is(thead th,tbody th,tbody td){padding:20px}
  body .sw-stage-table td:last-child>strong{font-size:22px}
  body .sw-results-context{align-items:flex-start;flex-direction:column;gap:8px}
}
@media(max-width:600px){
  :root body :is(.cs-card-grid,.cs-related-grid) .sw-client h3{font-size:19px}
  body .sw-funnel-heading{align-items:flex-start;flex-direction:column;gap:12px}
  body .sw-funnel-heading h3{font-size:20px}
  body .sw-funnel-heading p strong{display:inline;margin-left:6px;font-size:17px}
  body .sw-snapshot-funnels{gap:24px;flex-wrap:wrap}
  body .sw-client{gap:14px;align-items:flex-start}
  body .sw-client-photo{width:56px;height:56px}
  body .sw-client h3{font-size:19px}
  body .sw-client-hero{gap:18px;flex-direction:column}
  body .sw-client-hero .sw-client-photo{width:88px;height:88px}
  body .sw-client-hero h1{font-size:44px}
  body .sw-profile-meta{gap:18px}
  body .sw-profile-brand{width:122px}
  body .sw-profile-hero{padding-bottom:48px}
  body .sw-case-snapshot{padding:24px}
  body .sw-client-card .cs-card-body{padding:24px 22px 0}
  body .sw-client-card .sw-client{min-height:100px}
  body .sw-card-funnels-multiple .sw-card-funnel{grid-template-columns:1fr 1.4fr;gap:10px}
  body .sw-card-funnels-multiple .cs-card-results strong{font-size:25px}
  body .sw-stage-table thead{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}
  body .sw-stage-table tbody,body .sw-stage-table tr{display:block}
  body .sw-stage-table tbody tr{display:grid;grid-template-columns:1fr 1fr;padding:22px 20px;gap:18px 14px;border-bottom:1px solid var(--color-rule-light)}
  body .sw-stage-table tbody tr:last-child{border-bottom:0}
  body .sw-stage-table tbody :is(th,td){padding:0;border:0}
  body .sw-stage-table tbody th{grid-column:1/-1}
  body .sw-stage-name{gap:14px;align-items:flex-start}
  body .sw-stage-name>img{width:20px;height:20px;margin-top:3px}
  body .sw-stage-name strong{font-size:16px}
  body .sw-stage-name small{font-size:12px}
  body .sw-mobile-label{display:block;font-size:12px;font-weight:400;line-height:1.5;color:var(--color-muted-light);margin-bottom:7px}
  body .sw-stage-table td>strong{font-size:32px}
  body .sw-stage-table td:last-child>strong{font-size:24px;line-height:1.75}
}
/* Numbers scale to their own column, including compact tablet proof cards. */
body .sw-summary-metrics>div{container-type:inline-size}
:root body :is(.cs-proof-card,.sw-client-card) .sw-summary-metrics dd{font-size:clamp(28px,40cqi,48px)}

/* Keep agency and sector visible wherever a compact client profile is used. */
body .sw-case-affiliation{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:14px;min-height:32px;margin-top:20px}
body .sw-case-affiliation .sw-case-agency-logo{display:block;width:100px;height:32px;object-fit:contain;object-position:left center;filter:none;flex-shrink:0}
body .sw-case-sector{display:inline-flex;align-items:center;gap:7px;font:650 13px/1.5 var(--font-body);color:var(--color-ink);white-space:nowrap}
body .sw-case-sector img{width:16px;height:16px;flex-shrink:0;filter:none}
@media(max-width:380px){body .sw-case-affiliation .sw-case-agency-logo{width:82px;height:30px}body .sw-case-affiliation{gap:10px}}

/* A compact result-and-cost ledger shared by library, home and related cases. */
:root body .sw-client-card{background:#fffdfa;border:1px solid #d9d2c7;border-radius:12px;box-shadow:none;overflow:hidden;transition:border-color 180ms var(--ease-out),background-color 180ms var(--ease-out)}
:root body .sw-client-card:hover{background:#fff;border-color:#a99c8a;transform:none;box-shadow:none}
:root body .sw-client-card>.cs-card-link{display:flex;flex-direction:column;height:100%;padding:0;color:var(--color-ink)}
:root body .sw-client-card .cs-card-body{display:flex;flex-direction:column;flex:1;width:100%;padding:24px 24px 0;min-width:0}
:root body .sw-client-card .sw-client{min-height:86px;gap:14px;align-items:center}
:root body .sw-client-card .sw-client-photo{width:60px;height:60px}
:root body .sw-client-card .sw-client h3{min-height:0;display:block;font:750 20px/1.3 var(--font-body);margin-bottom:6px;color:var(--color-ink)}
:root body .sw-client-card .sw-client :is(p,span){color:var(--color-muted-light)}
:root body .sw-client-card .sw-case-affiliation{margin-top:16px;min-height:28px}
:root body .sw-client-card .sw-case-agency-logo{height:28px;width:88px}
:root body .sw-client-card .sw-card-metrics{display:flex;flex-direction:column;justify-content:center;gap:16px;min-height:186px;margin:20px 0 0;padding:18px 0;border-block:1px solid var(--color-rule-light)}
:root body .sw-client-card .sw-card-metrics>div{display:grid;grid-template-columns:minmax(0,1fr) auto;column-gap:14px;row-gap:6px;align-items:baseline}
:root body .sw-client-card .sw-card-metrics>div+div{padding-top:14px;border-top:1px solid #eae4db}
:root body .sw-client-card .sw-card-metrics dt{grid-column:1;min-height:0;font:600 12px/1.5 var(--font-body);color:var(--color-muted-light)}
:root body .sw-client-card .sw-card-metrics dd{margin:0}
:root body .sw-client-card .sw-card-metrics .sw-metric-value{font:400 44px/1 var(--font-display);letter-spacing:-.025em;color:var(--color-ink);font-variant-numeric:tabular-nums}
:root body .sw-client-card .sw-card-metrics-multiple .sw-metric-value{font-size:34px}
:root body .sw-client-card .sw-card-metrics .sw-metric-cost{font:400 12px/1.5 var(--font-body);grid-column:2;grid-row:1/span 2;align-self:center;text-align:right;color:var(--color-ink)}
:root body .sw-client-card .sw-card-metrics .sw-metric-cost strong{display:block;font:750 23px/1.2 var(--font-body);letter-spacing:-.03em;font-variant-numeric:tabular-nums;white-space:nowrap}
:root body .sw-client-card .sw-card-metrics .sw-metric-cost span{display:block;margin-top:4px;font:400 11px/1.5 var(--font-body);color:var(--color-muted-light)}
body .sw-card-investment{display:flex;justify-content:space-between;gap:12px;align-items:baseline;margin-top:18px;font:400 12px/1.6 var(--font-body);color:var(--color-muted-light)}
body .sw-card-investment strong{color:var(--color-ink);font-weight:700;white-space:nowrap;font-variant-numeric:tabular-nums}
:root body .sw-client-card .sw-summary-period{margin:7px 0 18px;min-height:38px;font:400 11px/1.7 var(--font-body);color:var(--color-muted-light)}
:root body .sw-client-card .cs-card-footer{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-top:auto;padding:17px 0;min-height:56px;border-top:1px solid var(--color-rule-light);font:700 12px/1.5 var(--font-body);color:var(--color-ink)}
:root body .sw-client-card .cs-card-footer>span:last-child{color:var(--color-orange);font-size:21px}
@media(max-width:600px){
  :root body .sw-client-card .cs-card-body{padding:22px 20px 0}
  :root body .sw-client-card .sw-client{min-height:76px}
  :root body .sw-client-card .sw-client h3{font-size:19px}
  :root body .sw-client-card .sw-summary-period{min-height:0}
  :root body .sw-client-card .sw-card-metrics:not(.sw-card-metrics-multiple){min-height:122px}
}

/* Sector features extend the same card with the complete reported funnel. */
:root body .sw-featured-case{padding:0}
:root body .sw-featured-case>.cs-card-link{text-decoration:none;outline-offset:-4px}
:root body .sw-featured-case .sw-funnel-label{margin:24px 0 0;font:700 13px/1.6 var(--font-body)}
:root body .sw-featured-case .sw-card-metrics{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px 32px;min-height:0;margin-top:12px}
:root body .sw-featured-case .sw-card-metrics>div{min-width:0}
:root body .sw-featured-case .sw-card-metrics>div:nth-child(2){padding-top:0;border-top:0}
:root body .sw-featured-case .sw-metric-cost{max-width:150px}
:root body .sw-featured-case .sw-featured-investment{margin:18px 0 0;font:400 12px/1.6 var(--font-body);color:var(--color-muted-light)}
:root body .sw-featured-case .sw-featured-investment strong{color:var(--color-ink);font-weight:700;font-variant-numeric:tabular-nums}
@media(max-width:600px){
  :root body .sw-featured-case .sw-card-metrics{display:flex;gap:16px}
  :root body .sw-featured-case .sw-card-metrics>div:nth-child(2){padding-top:14px;border-top:1px solid #eae4db}
  :root body .sw-featured-case .sw-metric-cost{max-width:120px}
}

/* The library overview follows the same result/cost hierarchy as its cards. */
:root body .cs-library-hero .cs-overview{display:block;min-width:0;padding:28px;border:1px solid #ffffff25;border-radius:12px;background:#171512;box-shadow:none}
:root body .cs-library-hero .cs-overview-top{display:block;padding:0;border:0;background:none}
:root body .cs-library-hero .cs-overview-top .cs-small-label{font:600 13px/1.6 var(--font-body);text-transform:none;letter-spacing:0;color:var(--color-muted-dark)}
:root body .cs-library-hero .cs-overview-total{display:flex;flex-direction:row;align-items:center;justify-content:flex-start;gap:20px;padding:22px 0 26px;background:none;color:var(--color-white)}
:root body .cs-library-hero .cs-overview-total>strong{order:-1;margin:0;font:400 clamp(58px,5.5vw,80px)/1 var(--font-display);letter-spacing:-.025em;color:var(--color-orange);font-variant-numeric:tabular-nums;white-space:nowrap}
:root body .cs-library-hero .cs-overview-total>span{font:600 15px/1.5 var(--font-body);max-width:8ch}
:root body .cs-library-hero .cs-overview-financial{display:grid;grid-template-columns:1.25fr 1fr;gap:20px;margin:0;padding:22px 0;border-block:1px solid #ffffff20}
:root body .cs-library-hero .cs-overview-financial>div{min-width:0}
:root body .cs-library-hero .cs-overview-financial dt{font:400 12px/1.6 var(--font-body);color:var(--color-muted-dark);margin:0 0 10px}
:root body .cs-library-hero .cs-overview-financial dd{font:750 clamp(22px,2.1vw,28px)/1.3 var(--font-body);letter-spacing:-.025em;color:var(--color-white);font-variant-numeric:tabular-nums;margin:auto 0 0;white-space:nowrap}
:root body .cs-library-hero .cs-overview-note{padding:18px 0 0;margin:0;border:0;font:400 12px/1.75 var(--font-body);color:var(--color-muted-dark)}
@media(max-width:450px){
  :root body .cs-library-hero .cs-overview{padding:22px}
  :root body .cs-library-hero .cs-overview-financial{grid-template-columns:1fr;gap:18px;padding:20px 0}
  :root body .cs-library-hero .cs-overview-financial>div{display:flex;flex-direction:row;align-items:center;justify-content:space-between;gap:16px}
  :root body .cs-library-hero .cs-overview-financial dt{max-width:14ch;margin:0}
  :root body .cs-library-hero .cs-overview-financial dd{margin:0;font-size:22px}
}

/* Revisão de design 16/10: alturas de botões, escala de títulos em tablet e estabilidade de layout. */
:root body :is(main,dialog) .button>span[aria-hidden]{font:400 20px/1 var(--font-body)}
@media(max-width:700px){body .sector-reading .sr-hero .sr-button{min-height:54px}}
@media(max-width:700px) and (max-height:700px){body .sector-reading .sr-hero .sr-button{min-height:48px}}
@media(min-width:701px){
  body .sector-reading .sr-hero h1{font-size:clamp(44px,4.5vw,52px)}
  body .sw-client-hero h1{font-size:clamp(44px,4.4vw,64px)}
}
body .privacy-summary:has(>.cookie-button[hidden])::after{content:"";display:block;height:48px}
@media(prefers-reduced-motion:no-preference){dialog[open],.faq-list details[open]>p{animation-duration:var(--motion-fast);animation-timing-function:var(--ease-out)}}
/* Setas: um só ícone → em todo o site, mesmo tamanho e alinhamento. */
body span[aria-hidden]:has(>.sw-arrow){display:inline-flex;align-items:center;justify-content:center;line-height:1;flex:none}
body .sw-arrow{display:block;width:20px;height:20px;flex:none}
body :is(main,dialog,header,footer,.site-mobile-menu) .button>img{width:20px;height:20px}
/* Traços laranja que desenham da esquerda para a direita ao entrar no ecrã. */
body .sector-reading .sr-reality:before{transform-origin:left center}
/* Entradas (computador, tablet e telemóvel): movimento visível (20 px) e suave, só opacity, translate e scale. */
@media(prefers-reduced-motion:no-preference){
  html.reveal-ready [data-reveal=wait]:not([data-reveal-line]){opacity:0!important;translate:0 20px!important}
  html.reveal-ready [data-reveal=wait] :is(.process-icon,.authority-icon,.sr-delivery-icon,.cs-context-icon,.sw-stage-name>img),html.reveal-ready li[data-reveal=wait]>img{scale:.8}
  html.reveal-ready body .sector-reading .sr-reality[data-reveal=wait]:before{transform:scaleX(0)}
}
@media(max-width:900px) and (prefers-reduced-motion:no-preference){
  /* O cabeçalho é quase opaco: o desfoque não se vê e custa um passo de composição a cada frame de scroll. */
  body .site-header,body .site-header.is-scrolled{backdrop-filter:none;-webkit-backdrop-filter:none}
}

/* Crédito sem vagas (ver public/credit-availability.js): a mensagem simples de /agenda-credito.
   /credito não reserva faixa no topo. Botões, CTAs e formulário ficam iguais. */
.credit-closed-intro .primary{display:inline-flex;width:fit-content;margin-top:28px;text-decoration:none}

/* Landings: CTA intermédio, grelha de cases e ajustes de mobile. */
.sector-reading .sr-inline-cta{display:flex;flex-wrap:wrap;align-items:center;gap:12px 20px;margin-top:36px}
.sector-reading .sr-inline-cta>span{font-size:13px;line-height:1.5;color:var(--sr-muted,#6b6b6b);max-width:36ch}
body .sector-reading .sr-cases-grid{margin-top:32px;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;width:min(1160px,calc(100vw - 48px));position:relative;left:50%;transform:translateX(-50%)}
@media(max-width:900px){body .sector-reading .sr-cases-grid{grid-template-columns:1fr;width:100%;left:auto;transform:none}}
@media(max-width:600px){
  body .sector-reading .sr-hero{min-height:0!important;align-items:flex-start!important;padding:28px 0 28px!important}
  body .sector-reading .sr-hero .sr-width{display:flex;flex-direction:column}
  body .sector-reading .sr-trust{order:4;margin-top:20px}
  body .sector-reading .sr-hero-action{order:5;margin-top:14px}
  .sector-reading .sr-inline-cta .button{width:100%;justify-content:center}
}
.sector-reading .sr-legal-note{margin-top:20px}

