:root{--ink:#151515;--muted:#62656a;--brand:#c91524;--page:#f3f4f4;--line:rgba(26,26,26,.11);--glass:rgba(255,255,255,.84);--shadow:0 24px 75px rgba(22,29,38,.12),0 4px 13px rgba(27,31,38,.05);--ease:cubic-bezier(.22,1,.36,1);}
*{box-sizing:border-box;}html{scroll-behavior:smooth;}body{margin:0;background:var(--page);font-family:Inter,system-ui,-apple-system,sans-serif;color:var(--ink);-webkit-font-smoothing:antialiased;overflow-x:hidden;}a{color:inherit;text-decoration:none;}button{font:inherit;}button,a{-webkit-tap-highlight-color:transparent;}a:focus-visible,button:focus-visible{outline:3px solid #c91524;outline-offset:4px;}::selection{background:#c91524;color:white;}.skip-link{position:fixed;z-index:100;top:-100px;left:20px;padding:12px;background:#fff;}.skip-link:focus{top:20px;}.container{width:min(1390px,calc(100% - 108px));margin:0 auto;}.global-art{position:fixed;inset:0;z-index:0;pointer-events:none;overflow:hidden;background:linear-gradient(125deg,#f8f8f7 0%,#eef0f1 55%,#f5f5f4 100%);}.global-art:before{content:"";position:absolute;inset:0;background:linear-gradient(115deg,rgba(255,255,255,.45),transparent 66%);}.brand-orb{position:absolute;top:0;left:0;width:min(46vw,700px);aspect-ratio:1;border-radius:50%;background:radial-gradient(circle at 30% 22%,#f79c9e 0%,#e12b3d 22%,#ba0920 57%,#62040d 94%);box-shadow:inset -32px -48px 70px rgba(42,0,5,.17),inset 20px 30px 70px rgba(255,255,255,.22),0 50px 115px rgba(159,10,28,.16);will-change:transform;transform:translate3d(55vw,19vh,0) scale(1);}.brand-orb:after{content:"";position:absolute;inset:9%;border-radius:inherit;background:radial-gradient(ellipse at 34% 18%,rgba(255,255,255,.29),transparent 50%);}.art-grain{position:absolute;inset:0;opacity:.12;background-image:url('../assets/architecture.svg');background-size:cover;mix-blend-mode:multiply;}main{position:relative;z-index:1;}.stage{position:relative;min-height:100vh;padding:150px 0 110px;isolation:isolate;}.eyebrow{font-size:11px;font-weight:700;letter-spacing:.18em;text-transform:uppercase;display:flex;align-items:center;gap:12px;}.eyebrow-line{width:35px;height:2px;background:var(--brand);display:block;}.site-header{position:fixed;top:0;left:0;right:0;z-index:50;display:flex;align-items:center;justify-content:space-between;height:91px;padding:0 max(54px,calc((100vw - 1390px)/2));border-bottom:1px solid rgba(21,21,21,.08);background:rgba(249,249,249,.68);backdrop-filter:blur(20px) saturate(145%);-webkit-backdrop-filter:blur(20px) saturate(145%);}.brand{display:inline-flex;flex-direction:column;justify-content:center;line-height:1;min-width:136px;}.brand-name{font-size:27px;font-weight:800;letter-spacing:-.075em;}.brand-dot{color:var(--brand);}.brand small{font-size:8px;letter-spacing:.32em;padding-left:4px;margin-top:5px;font-weight:600;}.desktop-nav{display:flex;gap:35px;align-items:center;font-size:12px;font-weight:600;}.desktop-nav a{transition:color .25s;}.desktop-nav a:hover{color:var(--brand);}.header-cta{border:1px solid var(--ink);background:var(--ink);border-radius:100px;color:white;display:inline-flex;gap:18px;align-items:center;padding:13px 19px;font-size:12px;font-weight:700;transition:background .25s,transform .25s;}.header-cta:hover,.button-dark:hover{background:var(--brand);border-color:var(--brand);transform:translateY(-2px);}.menu-toggle,.mobile-menu{display:none;}.stage-hero{display:flex;flex-direction:column;justify-content:center;padding-top:126px;padding-bottom:60px;min-height:100svh;}.hero-layout{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(230px,.55fr);align-items:center;gap:4vw;}.hero-copy{position:relative;z-index:2;max-width:850px;padding:25px 0;}.hero-copy h1{font-weight:700;font-size:clamp(56px,5.45vw,98px);letter-spacing:-.075em;line-height:1.07;margin:30px 0;max-width:1100px;}.hero-copy h1 em,.stage h2 em,.interior-hero h1 em{font-style:normal;color:var(--brand);}.hero-copy h1 strong{font-weight:700;}.lead{font-size:clamp(15px,1.15vw,18px);line-height:1.8;max-width:590px;color:#333b41;}.hero-buttons,.contact-links{display:flex;flex-wrap:wrap;gap:30px;align-items:center;margin-top:37px;}.button{border:1px solid transparent;display:inline-flex;gap:34px;align-items:center;justify-content:space-between;border-radius:100px;padding:18px 24px;font-size:13px;font-weight:700;transition:transform .3s,background .3s;}.button-dark{color:white;background:var(--ink);}.text-link{font-size:13px;font-weight:700;border-bottom:1px solid #929292;padding:9px 0;display:inline-flex;gap:23px;align-items:center;}.text-link:hover{color:var(--brand);}.hero-frame{height:min(61vh,570px);min-height:360px;border:1px solid rgba(255,255,255,.68);border-radius:260px 260px 26px 26px;padding:11px;box-shadow:0 32px 100px rgba(60,65,70,.16);transform:rotate(5deg);background:rgba(255,255,255,.37);backdrop-filter:blur(11px);-webkit-backdrop-filter:blur(11px);}.hero-frame-inner{height:100%;border-radius:252px 252px 19px 19px;display:flex;flex-direction:column;justify-content:space-between;gap:24px;padding:36px;overflow:hidden;background:linear-gradient(160deg,rgba(247,249,250,.62) 2%,rgba(246,247,249,.16) 64%),url('../assets/architecture.svg') center/cover;box-shadow:inset 0 1px rgba(255,255,255,.92);}.hero-frame-inner>span,.hero-frame-inner small{font-size:9px;letter-spacing:.17em;font-weight:700;}.hero-frame-inner>b{font-size:clamp(29px,3vw,50px);letter-spacing:-.06em;line-height:1.06;align-self:flex-start;margin-top:auto;}.red-period{color:var(--brand);}.hero-side-annotation{position:absolute;top:130px;right:55px;writing-mode:vertical-rl;letter-spacing:.21em;font-size:9px;font-weight:700;color:#777;}.hero-side-annotation span{color:var(--brand);}.scroll-hint{position:absolute;left:max(54px,calc((100vw - 1390px)/2));bottom:32px;display:flex;gap:16px;align-items:center;font-size:10px;letter-spacing:.17em;font-weight:700;}.scroll-line{display:block;width:30px;height:1px;background:var(--ink);}.hero-counter,.section-index{position:absolute;right:max(54px,calc((100vw - 1390px)/2));bottom:30px;color:#757575;font-size:10px;letter-spacing:.19em;font-weight:700;}.section-intro{max-width:940px;margin-bottom:55px;}.stage h2{font-size:clamp(42px,5.05vw,82px);line-height:1.09;letter-spacing:-.07em;margin:22px 0 25px;max-width:1000px;}.section-intro>p:last-child{max-width:575px;line-height:1.75;color:var(--muted);font-size:16px;}.stage-audiences{padding-top:160px;min-height:110vh;}.audience-grid{display:grid;grid-template-columns:1fr 1fr;gap:27px;}.liquid-glass{background:var(--glass);border:1px solid rgba(255,255,255,.96);box-shadow:var(--shadow),inset 0 1px 2px rgba(255,255,255,.94);backdrop-filter:blur(24px) saturate(160%);-webkit-backdrop-filter:blur(24px) saturate(160%);position:relative;}.liquid-glass:before{content:"";position:absolute;inset:0;border-radius:inherit;pointer-events:none;box-shadow:inset 1px 1px 1px rgba(255,255,255,.93),inset -1px -1px 1px rgba(140,148,154,.1);}.audience-card{min-height:505px;padding:32px 39px 39px;border-radius:34px;display:flex;flex-direction:column;justify-content:space-between;transition:transform .65s var(--ease),box-shadow .65s var(--ease);}.audience-card:hover{transform:translateY(-10px);box-shadow:0 42px 100px rgba(26,30,38,.15);}.card-top{display:flex;justify-content:space-between;align-items:center;}.number{font-size:10px;font-weight:800;letter-spacing:.15em;}.circle-arrow{width:46px;height:46px;border:1px solid #b9bdc1;border-radius:50%;display:grid;place-items:center;font-size:22px;}.audience-symbol{color:#a6adb4;width:90px;margin:auto 0 0;}.audience-symbol svg{width:100%;}.audience-card h3{font-size:clamp(44px,4.2vw,72px);line-height:1.02;letter-spacing:-.07em;margin:12px 0 19px;}.audience-card h3 span{color:var(--brand);}.audience-card p{color:#4c5156;font-size:15px;line-height:1.75;max-width:480px;}.card-link{border-top:1px solid rgba(0,0,0,.13);padding-top:21px;margin-top:17px;display:flex;justify-content:space-between;font-size:12px;font-weight:700;}.stage-story{display:flex;align-items:center;}.story-layout{display:grid;grid-template-columns:.8fr 1.15fr;gap:6vw;align-items:center;}.story-sculpture{height:560px;position:relative;display:flex;align-items:center;justify-content:center;}.outline-letter{font-weight:800;font-size:clamp(220px,30vw,490px);letter-spacing:-.18em;color:transparent;-webkit-text-stroke:1px rgba(33,36,41,.16);user-select:none;}.vertical-rule{position:absolute;height:300px;width:1px;background:rgba(0,0,0,.23);left:6%;top:15%;}.micro-copy{position:absolute;bottom:45px;left:10%;font-size:9px;letter-spacing:.18em;line-height:2.6;}.story-panel{padding:65px 60px;border-radius:38px;}.story-panel h2{font-size:clamp(38px,3.7vw,62px);margin:30px 0;}.story-panel p{font-size:15px;line-height:1.9;color:#42474b;}.founder-note{display:flex;gap:21px;align-items:flex-start;margin-top:30px;border-top:1px solid rgba(0,0,0,.13);padding-top:23px;}.note-line{width:30px;height:3px;background:var(--brand);margin-top:8px;flex:none;}.founder-note strong{display:block;font-size:14px;margin-bottom:8px;}.founder-note small{display:block;font-size:12px;line-height:1.7;color:var(--muted);}.stage-values{padding-top:170px;}.value-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px;}.value-card{padding:28px;border-radius:25px;min-height:225px;}.value-card>span{font-size:10px;font-weight:800;letter-spacing:.1em;color:var(--brand);}.value-card h3{font-size:20px;letter-spacing:-.04em;margin:50px 0 13px;}.value-card p{font-size:13px;line-height:1.75;color:#4e545a;margin:0;}.stage-process{display:flex;align-items:center;}.process-layout{display:grid;grid-template-columns:1fr 1fr;gap:9%;align-items:center;}.process-layout .muted{color:var(--muted);}.steps-panel{padding:35px 42px;border-radius:35px;}.step{display:flex;gap:26px;padding:25px 0;border-bottom:1px solid rgba(0,0,0,.12);}.step:last-child{border-bottom:0;}.step b{font-size:12px;color:var(--brand);}.step h3{font-size:23px;letter-spacing:-.05em;margin:0 0 10px;}.step p{font-size:14px;line-height:1.7;color:var(--muted);margin:0;}.stage-contact{min-height:90vh;display:flex;align-items:center;}.contact-panel{border-radius:42px;padding:clamp(38px,6vw,100px);max-width:1150px;margin:auto;}.contact-panel h2{font-size:clamp(46px,5.6vw,85px);}.contact-panel>p{max-width:670px;font-size:16px;color:#444;line-height:1.9;}.contact-address{display:block;margin-top:55px;font-size:12px;letter-spacing:.05em;color:var(--muted);}.site-footer{position:relative;z-index:3;background:#141414;color:white;padding:70px 0 30px;}.footer-inner{display:grid;grid-template-columns:1fr 1fr;gap:35px;}.footer-brand{margin-bottom:25px;}.footer-inner p{color:#a9a9a9;max-width:310px;font-size:13px;line-height:1.8;}.footer-inner nav{display:grid;grid-template-columns:1fr 1fr;gap:20px;align-content:start;}.footer-inner nav a{font-size:13px;}.footer-inner nav a:hover{color:#ee5c66;}.footer-legal{grid-column:1/-1;display:flex;justify-content:space-between;gap:20px;border-top:1px solid #414141;padding-top:25px;color:#999;font-size:10px;line-height:1.8;}.reveal{opacity:1;transform:none;transition:opacity .95s var(--ease),transform .95s var(--ease);}.reveal.is-pending{opacity:0;transform:translateY(24px);}.reveal.is-visible{opacity:1;transform:translateY(0);}.interior-hero{display:flex;align-items:center;min-height:90svh;}.interior-header{max-width:1280px;}.interior-header h1{font-size:clamp(58px,6.5vw,105px);max-width:1050px;letter-spacing:-.08em;line-height:1.03;margin:28px 0;}.interior-header .lead{max-width:620px;}.interior-content{min-height:90vh;}.value-grid-three{grid-template-columns:repeat(3,minmax(0,1fr));}.interior-bottom{min-height:85vh;}.simple-footer{position:relative;z-index:3;background:#151515;color:white;padding:36px 0;}.simple-footer .container{display:flex;justify-content:space-between;align-items:center;gap:20px;}.simple-footer a{font-size:13px;}.simple-footer small{color:#999;font-size:11px;}
@media(max-width:1100px){.container{width:calc(100% - 64px);}.site-header{padding:0 32px;}.desktop-nav{gap:15px;}.hero-copy h1{font-size:clamp(51px,6vw,80px);}.hero-frame{height:460px;}.value-grid{grid-template-columns:repeat(2,minmax(0,1fr));}.value-grid-three{grid-template-columns:repeat(3,minmax(0,1fr));}}
@media(max-width:760px){.container{width:calc(100% - 40px);}.site-header{height:74px;padding:0 20px;}.desktop-nav,.header-cta{display:none;}.menu-toggle{display:flex;flex-direction:column;gap:7px;align-items:center;justify-content:center;border:0;background:transparent;width:42px;height:42px;}.menu-toggle span{display:block;width:24px;height:2px;background:var(--ink);}.mobile-menu{display:flex;position:absolute;left:0;right:0;top:74px;flex-direction:column;padding:20px;gap:0;background:rgba(250,250,250,.97);box-shadow:0 20px 35px rgba(0,0,0,.1);}.mobile-menu[hidden]{display:none;}.mobile-menu a{padding:13px;font-size:15px;border-bottom:1px solid #eee;}.brand-name{font-size:24px;}.stage{padding:110px 0 80px;min-height:auto;}.stage-hero{min-height:100svh;padding:118px 0 95px;}.hero-layout{display:flex;flex-direction:column;align-items:stretch;gap:34px;}.hero-copy{padding:0;}.hero-copy h1{font-size:clamp(46px,10.8vw,70px);margin:20px 0;}.lead{font-size:15px;line-height:1.7;}.hero-buttons{gap:18px;}.hero-frame{margin-left:auto;width:68%;min-height:190px;height:245px;transform:rotate(6deg);}.hero-frame-inner{padding:22px;}.hero-frame-inner>b{font-size:27px;}.hero-frame-inner>span,.hero-frame-inner small{font-size:7px;}.hero-side-annotation{display:none;}.scroll-hint{left:20px;bottom:29px;font-size:9px;}.hero-counter,.section-index{right:20px;bottom:29px;}.stage h2{font-size:clamp(42px,9vw,64px);}.stage-audiences,.stage-values{padding-top:100px;}.section-intro{margin-bottom:28px;}.section-intro>p:last-child{font-size:14px;}.audience-grid{grid-template-columns:1fr;gap:16px;}.audience-card{min-height:380px;padding:27px;}.audience-card h3{font-size:55px;}.audience-symbol{width:70px;}.story-layout,.process-layout{grid-template-columns:1fr;gap:25px;}.story-sculpture{height:200px;}.outline-letter{font-size:220px;}.vertical-rule{height:170px;}.micro-copy{bottom:0;}.story-panel{padding:34px 28px;border-radius:28px;}.story-panel h2{font-size:43px;}.story-panel p{font-size:14px;}.value-grid,.value-grid-three{grid-template-columns:1fr 1fr;gap:12px;}.value-card{padding:20px;min-height:210px;}.value-card h3{font-size:17px;margin-top:34px;}.value-card p{font-size:12px;}.steps-panel{padding:15px 25px;}.step{gap:16px;}.contact-panel{padding:32px 25px;border-radius:29px;}.contact-links{gap:20px;}.footer-inner{grid-template-columns:1fr;}.footer-legal{flex-direction:column;}.interior-header h1{font-size:clamp(48px,10vw,70px);}.interior-hero{min-height:78svh;}.simple-footer .container{flex-direction:column;align-items:flex-start;}.brand-orb{width:78vw;}}
@media(max-width:390px){.hero-copy h1{font-size:43px;}.value-grid,.value-grid-three{grid-template-columns:1fr;}.value-card{min-height:175px;}.hero-frame{width:75%;}.button{padding:15px 20px;}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto;}*,*::before,*::after{animation-duration:.001ms!important;transition-duration:.001ms!important;}.reveal{opacity:1!important;transform:none!important;}.brand-orb{will-change:auto;}}

/* V2 — Painéis de atendimento integrados à página, sem troca de tela.
   Alterar individualmente estes estilos no Pinegrow, se desejado. */
.stage-audiences-final{min-height:100svh;padding-top:150px;padding-bottom:120px;}
.stage-audiences-final .section-intro{max-width:920px;margin-bottom:58px;}
.stage-audiences-final .audience-grid{align-items:stretch;scroll-margin-top:115px;}
.stage-audiences-final .audience-card{cursor:default;min-height:650px;padding:38px 46px 45px;background:rgba(255,255,255,.88);border:1px solid rgba(255,255,255,.97);overflow:hidden;box-shadow:0 30px 90px rgba(40,45,50,.13),inset 0 1px 1px rgba(255,255,255,.99);}
.stage-audiences-final .audience-card:hover{transform:translateY(-7px);}
.stage-audiences-final .audience-card::after{content:"";pointer-events:none;position:absolute;top:0;left:9%;right:9%;height:1px;background:linear-gradient(90deg,transparent,#fff,transparent);}
.card-signal{font-size:19px;font-weight:700;letter-spacing:-.09em;color:#9ca0a3;}.card-signal span{color:var(--brand);}
.stage-audiences-final .audience-symbol{width:65px;margin:18px 0 10px;color:#8d949b;flex-shrink:0;}
.stage-audiences-final .audience-card h3{font-size:clamp(50px,4.6vw,73px);margin:10px 0 18px;}
.stage-audiences-final .audience-card p{max-width:490px;font-size:15px;line-height:1.8;color:#383f45;min-height:108px;}
.card-services{display:flex;flex-wrap:wrap;gap:8px;margin-top:18px;margin-bottom:29px;}
.card-services span{border:1px solid rgba(30,30,30,.12);background:rgba(255,255,255,.52);padding:9px 12px;border-radius:100px;color:#555b60;font-size:11px;font-weight:600;}
.card-contact{width:100%;max-width:260px;margin-top:auto;align-self:flex-start;}
.audience-footnote{margin-top:35px;color:#4d555b;font-size:12px;line-height:1.8;}
.audience-footnote a{text-decoration:underline;text-decoration-color:#9ca1a5;text-underline-offset:4px;}
.stage-hero,.stage-story,.stage-values,.stage-process,.stage-audiences-final{scroll-margin-top:75px;}
@media(min-width:761px){.stage-audiences-final .audience-card{min-height:630px;}.stage-audiences-final .card-body{display:flex;flex-direction:column;align-items:flex-start;}.stage-audiences-final .card-body .card-contact{margin-top:14px;}}
@media(max-width:760px){.stage-audiences-final{padding-top:100px;padding-bottom:90px;}.stage-audiences-final .section-intro{margin-bottom:31px;}.stage-audiences-final .audience-card{min-height:535px;padding:28px 28px 34px;}.stage-audiences-final .audience-card h3{font-size:58px;}.stage-audiences-final .audience-card p{min-height:0;font-size:14px;}.stage-audiences-final .audience-symbol{width:54px;}.card-services{margin-bottom:27px;}.card-contact{width:100%;max-width:none;}.audience-footnote{font-size:11px;}}
@media(max-width:390px){.stage-audiences-final .audience-card{padding:24px;}.stage-audiences-final .audience-card h3{font-size:52px;}}

/* Correções de compatibilidade e leitura — preserva HTML editável no Pinegrow. */
.brand img{display:block;width:150px;height:auto;max-width:100%;}
.footer-brand img{width:185px;}
#conteudo:focus{outline:none;}
#empresas,#empregados{scroll-margin-top:115px;}
.audience-grid>*{min-width:0;}
.stage-audiences-final .audience-card h3{font-size:clamp(38px,4.3vw,68px);}
.value-card p{font-size:14px;}
.mobile-menu{max-height:calc(100dvh - 74px);overflow-y:auto;overscroll-behavior:contain;}
@supports not (backdrop-filter:blur(1px)){.liquid-glass{background:#f9f9f9;}.site-header{background:#f9f9f9;}}
@media(min-width:761px) and (max-width:1000px){
 .site-header{height:74px;}.desktop-nav,.header-cta{display:none;}
 .menu-toggle{display:flex;flex-direction:column;gap:7px;align-items:center;justify-content:center;border:0;background:transparent;width:44px;height:44px;}
 .menu-toggle span{display:block;width:24px;height:2px;background:var(--ink);}
 .mobile-menu{display:flex;position:absolute;left:0;right:0;top:74px;flex-direction:column;padding:20px;background:#fafafa;}
 .mobile-menu[hidden]{display:none;}.mobile-menu a{padding:13px;}
 .hero-layout{grid-template-columns:minmax(0,1fr) minmax(0,.55fr);gap:24px;}
 .hero-frame-inner{padding:22px;}.hero-frame-inner>b{font-size:28px;}
 .story-layout{grid-template-columns:1fr;}.story-side{display:none;}
 .process-layout{gap:28px;}.steps-panel{padding:24px;}
 .stage-audiences-final .audience-card{padding:28px 24px;}
}
@media(max-width:760px){
 .brand img{width:135px;}.stage-audiences-final .audience-card h3{font-size:clamp(38px,10vw,58px);}
 .story-panel h2{font-size:clamp(32px,8.5vw,43px);}
 .audience-footnote{font-size:13px;overflow-wrap:anywhere;}
 .value-card p{font-size:14px;}.hero-frame{max-width:calc(100% - 16px);}
}
@media(prefers-reduced-motion:reduce){.reveal.is-pending{opacity:1;transform:none;}.audience-card:hover,.stage-audiences-final .audience-card:hover,.button:hover,.header-cta:hover{transform:none;}}
/* A esfera pode cruzar o texto na rolagem: véu neutro protege a leitura. */
.hero-copy,.section-intro,.process-layout>.reveal{background:rgba(243,244,244,.95);box-shadow:0 0 36px 24px rgba(243,244,244,.95);border-radius:16px;}
@media(max-width:760px){.stage h2{font-size:clamp(32px,8.5vw,60px);}}
@media(max-width:360px){.stage-audiences-final .audience-card h3{font-size:34px;}.hero-copy h1{font-size:clamp(34px,11vw,40px);}}
.audience-footnote{position:relative;background:rgba(243,244,244,.96);box-shadow:0 0 18px 12px rgba(243,244,244,.96);border-radius:8px;}

/* Caixas sem glow ou halo, inclusive no hover; transparência e blur preservados. */
.liquid-glass,.liquid-glass::before,.audience-card:hover,
.stage-audiences-final .audience-card,.stage-audiences-final .audience-card:hover,
.hero-frame,.hero-frame-inner,.hero-copy,.section-intro,
.process-layout>.reveal,.audience-footnote{box-shadow:none;}
.stage-audiences-final .audience-card::after{display:none;}

/* ===== Melhorias 2026-11-06 — avaliação de design e acessibilidade ===== */
/* 1. Sem véu de bordas duras: a esfera agora percorre o lado direito, longe dos textos. */
.hero-copy,.section-intro,.process-layout>.reveal,.audience-footnote{background:transparent;}
/* 2. Contraste mínimo 4,5:1 para textos pequenos (WCAG 1.4.3). */
.hero-side-annotation,.hero-counter,.section-index{color:#5f6368;}
/* 3. Alvos de toque com 44px (WCAG 2.5.5). */
.text-link,.audience-footnote a{min-height:44px;display:inline-flex;align-items:center;}
.footer-inner nav{row-gap:4px;}.footer-inner nav a{min-height:44px;display:inline-flex;align-items:center;}
.menu-toggle{width:44px;height:44px;}
/* 4. Diferenciais em 4 colunas até 900px; página mais curta. */
@media(min-width:901px){.value-grid{grid-template-columns:repeat(4,minmax(0,1fr));}}
@media(min-width:901px) and (max-width:1100px){.value-grid{gap:14px;}.value-card{padding:22px;}.value-card h3{font-size:18px;margin-top:34px;}}
/* 5. CTA fixo de WhatsApp no celular. */
.mobile-cta{display:none;}
@media(max-width:760px){
 .mobile-cta{position:fixed;z-index:40;left:16px;right:16px;bottom:max(16px,env(safe-area-inset-bottom));display:flex;justify-content:space-between;align-items:center;min-height:52px;padding:0 22px;border-radius:100px;background:var(--ink);color:#fff;font-size:14px;font-weight:700;transition:opacity .3s,transform .3s;}
 .mobile-cta.is-hidden{opacity:0;transform:translateY(20px);pointer-events:none;}
 .site-footer{padding-bottom:100px;}
 .brand-orb{opacity:.42;}
 .value-grid{grid-template-columns:1fr 1fr;gap:10px;}
 .value-card{padding:18px 16px;min-height:0;}.value-card h3{font-size:16px;margin:22px 0 8px;}.value-card p{font-size:13px;line-height:1.6;}
}
@media(max-width:340px){.value-grid{grid-template-columns:1fr;}}

/* Rodapé com contato, endereço e registros profissionais. */
.footer-inner-3{grid-template-columns:1.1fr 1.3fr .8fr;}
.footer-contact{font-style:normal;display:flex;flex-direction:column;gap:2px;font-size:13px;line-height:1.6;color:#d6d6d6;}
.footer-contact strong{color:#fff;font-size:11px;letter-spacing:.16em;text-transform:uppercase;margin-bottom:8px;}
.footer-contact a{display:inline-flex;align-items:center;min-height:44px;padding:4px 0;}.footer-contact a:hover{color:#ee5c66;}
.footer-inner-3 nav{grid-template-columns:1fr;}
@media(max-width:900px){.footer-inner-3{grid-template-columns:1fr 1fr;}.footer-inner-3>div:first-child{grid-column:1/-1;}}
@media(max-width:760px){.footer-inner-3{grid-template-columns:1fr;}.footer-inner-3 nav{grid-template-columns:1fr 1fr;}}
.founder-note small br+*{display:inline;}

/* Fundo branco total: sem gradiente nem textura; cartões ganham contorno fino para não sumirem no branco. */
:root{--page:#fff;}
body,.global-art{background:#fff;}
.global-art:before,.art-grain{display:none;}
.site-header{background:rgba(255,255,255,.86);}
.mobile-menu{background:#fff;}
.liquid-glass{background:rgba(255,255,255,.82);border:1px solid rgba(21,21,21,.09);}
.stage-audiences-final .audience-card{background:rgba(255,255,255,.86);border:1px solid rgba(21,21,21,.09);}
.card-services span{background:#fff;}

/* Cartões sem contorno: leve tom cinza para se destacarem do fundo branco. */
.liquid-glass,.stage-audiences-final .audience-card{border:0;background:rgba(243,244,245,.88);}
.card-services span{background:rgba(255,255,255,.75);}

/* Cabeçalho em liquid glass um pouco mais escuro, para se destacar do fundo branco. */
.site-header{background:rgba(232,233,235,.74);backdrop-filter:blur(22px) saturate(160%);-webkit-backdrop-filter:blur(22px) saturate(160%);}
.mobile-menu{background:rgba(238,239,241,.97);}
@supports not (backdrop-filter:blur(1px)){.site-header{background:#e8e9eb;}}

/* ===== Topo (hero): foto da ponte com céu transparente — o sol vermelho aparece por trás dela =====
   Regras consolidadas (antes havia quatro versões sobrepostas). Ajuste aqui no Pinegrow. */
.stage-hero .hero-layout{grid-template-columns:minmax(0,1fr);}
.stage-hero .hero-copy{max-width:min(560px,50vw);}
.stage-hero .lead{max-width:470px;}
.stage-hero .hero-side-annotation{display:none;}
.stage-hero .hero-counter{z-index:2;background:#fff;padding:4px 8px;border-radius:100px;}
.stage-hero .scroll-hint{z-index:2;}
.hero-bridge{position:absolute;inset:0;z-index:1;pointer-events:none;}
.hero-bridge img{display:block;width:100%;height:100%;object-fit:cover;object-position:70% 100%;}
.hero-bridge::after{content:"";position:absolute;inset:0;pointer-events:none;
 background:linear-gradient(90deg,#fff 0%,#fff 20%,rgba(255,255,255,.8) 34%,rgba(255,255,255,0) 52%),
            linear-gradient(0deg,#fff 0%,rgba(255,255,255,0) 12%);}
@media(max-width:760px){
 .stage-hero .hero-copy,.stage-hero .lead{max-width:none;}
 .stage-hero .scroll-hint{display:none;}
 .hero-bridge{position:relative;inset:auto;height:320px;width:calc(100% + 40px);margin:6px -20px -95px;}
 .hero-bridge img{object-position:74% 100%;}
 .hero-bridge::after{background:linear-gradient(180deg,#fff 0%,rgba(255,255,255,0) 12%),linear-gradient(0deg,#fff 0%,rgba(255,255,255,0) 14%);}
}

/* Seção 05: mesma margem esquerda dos painéis e das demais seções. */
.stage-audiences-final>.container.section-intro{max-width:none}
/* Seção 05: vidro neutro, sem faixas de reflexo ou saturação nas bordas. */
.stage-audiences-final .audience-card{
 background:rgba(244,244,244,.9);
 backdrop-filter:blur(24px);
 -webkit-backdrop-filter:blur(24px);
 clip-path:inset(0 round 34px);
}
.stage-audiences-final .audience-card::before,
.stage-audiences-final .audience-card::after{display:none}
@supports not (backdrop-filter:blur(1px)){
 .stage-audiences-final .audience-card{background:#f4f4f4}
}






/* Contato em três parágrafos, logo abaixo da localização. */
.audience-footnote .contact-location{margin-bottom:8px}
.audience-footnote p{margin:0;line-height:1.7}
.audience-footnote p a{min-height:0;padding:0;display:inline}


/* Widescreen: composição própria a partir de 1800 px, sem duplicar conteúdo. */
@media(min-width:1800px){
 .container{width:min(1920px,calc(100% - 160px))}
 .site-header{padding-inline:max(80px,calc((100vw - 1920px)/2))}
 .stage-hero .hero-copy{max-width:min(800px,43vw)}
 .hero-copy h1{font-size:clamp(94px,5.2vw,116px);line-height:1.04}
 .stage-hero .lead{max-width:560px;font-size:19px}
 .desktop-nav{gap:40px;font-size:14px}
 .header-cta,.button,.text-link{font-size:14px}
 .hero-bridge img{object-fit:contain;object-position:right bottom}
 .hero-bridge::after{background:linear-gradient(90deg,#fff 0%,#fff 22%,rgba(255,255,255,.82) 36%,rgba(255,255,255,0) 52%),linear-gradient(0deg,#fff 0%,rgba(255,255,255,0) 12%)}
 .brand-orb{width:min(36vw,900px)}
 .scroll-hint{left:max(80px,calc((100vw - 1920px)/2))}
 .hero-counter,.section-index{right:max(80px,calc((100vw - 1920px)/2))}
 .story-panel{padding:72px}.story-panel p,.audience-card p{font-size:17px}
 .value-grid{gap:24px}.value-card{padding:32px}.value-card p{font-size:15px}
 .audience-grid{gap:40px}.stage-audiences-final .audience-card{padding:46px 54px}
 .stage-audiences-final .audience-card h3{font-size:76px}
 .audience-footnote{font-size:14px}
}
@media(min-width:2400px) and (min-aspect-ratio:2/1){
 .container{width:min(2160px,calc(100% - 192px))}
 .site-header{padding-inline:max(96px,calc((100vw - 2160px)/2))}
 .stage-hero .hero-copy{max-width:900px}
 .hero-copy h1{font-size:120px}
 .scroll-hint{left:max(96px,calc((100vw - 2160px)/2))}
 .hero-counter,.section-index{right:max(96px,calc((100vw - 2160px)/2))}
}

/* Esfera/sol: posição e tamanho vêm do app.js, com uma regra por tipo de tela (celular, desktop, ultrawide).
   Fica invisível até o script posicioná-la, evitando o "salto" no carregamento. */
.brand-orb{opacity:0;transition:opacity .5s ease;}
/* Sem linha cinza na base da foto: o degradê termina em branco sólido e cobre a última linha de pixels. */
.hero-bridge{overflow:hidden;}
.hero-bridge::after{bottom:-2px;background-image:linear-gradient(90deg,#fff 0%,#fff 20%,rgba(255,255,255,.8) 34%,rgba(255,255,255,0) 52%),linear-gradient(0deg,#fff 0%,#fff 3%,rgba(255,255,255,0) 14%);}
@media(min-width:1800px){.hero-bridge::after{background-image:linear-gradient(90deg,#fff 0%,#fff 22%,rgba(255,255,255,.82) 36%,rgba(255,255,255,0) 52%),linear-gradient(0deg,#fff 0%,#fff 3%,rgba(255,255,255,0) 12%);}}
@media(max-width:760px){.hero-bridge::after{background-image:linear-gradient(180deg,#fff 0%,rgba(255,255,255,0) 12%),linear-gradient(0deg,#fff 0%,#fff 4%,rgba(255,255,255,0) 16%);}}

/* ===== Celular: topo cabe inteiro em uma tela (texto + foto da ponte), sem cortes =====
   O texto fica compacto no alto, a foto ocupa todo o espaço restante e termina acima do botão do WhatsApp. */
@media(max-width:760px){
 .stage-hero{min-height:100svh;padding:92px 0 86px;display:flex;flex-direction:column;justify-content:flex-start}
 .stage-hero .hero-layout{display:flex;flex-direction:column;flex:1;gap:0;min-height:0}
 .stage-hero .hero-copy{flex:none;padding:0}
 .stage-hero .eyebrow{font-size:10px;gap:10px}
 .stage-hero .eyebrow-line{width:26px}
 .stage-hero .hero-copy h1{font-size:clamp(31px,9vw,42px);line-height:1.06;letter-spacing:-.065em;margin:14px 0 12px}
 .stage-hero .lead{font-size:14px;line-height:1.55;margin:0}
 .stage-hero .hero-buttons{margin-top:18px;gap:18px;flex-wrap:nowrap}
 .stage-hero .hero-buttons .button{padding:13px 18px;gap:14px;font-size:13px;white-space:nowrap}
 .stage-hero .hero-buttons .text-link{font-size:13px;gap:10px;white-space:nowrap}
 .stage-hero .hero-counter{display:none}
 .hero-bridge{position:relative;inset:auto;flex:1 1 auto;min-height:190px;height:auto;width:auto;margin:6px -20px 0}
 .hero-bridge img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:72% 35%}
}
/* Telas de celular muito baixas: esconde o parágrafo para a foto não sumir. */
@media(max-width:760px) and (max-height:640px){.stage-hero .lead{display:none}}
@media(max-width:350px){.stage-hero .hero-buttons{gap:12px}.stage-hero .hero-buttons .button{padding:12px 14px}}

/* ===== Celular: menos espaço vazio entre as seções; sem o "L" decorativo de "Quem somos" ===== */
@media(max-width:760px){
 .stage{padding:56px 0 48px}
 .stage-values,.stage-audiences,.stage-audiences-final{padding-top:56px}
 .stage-audiences-final{padding-bottom:64px}
 .stage-story{padding-top:28px}
 .stage-story .story-side{display:none}
 .stage-story .story-layout{gap:0}
 .section-index{display:none}
 .stage-hero{padding:92px 0 78px}
}

/* Sol do celular: fica dentro da foto, atrás da ponte (a imagem tem céu transparente). */
.hero-sun{display:none}
@media(max-width:760px){
 .hero-sun{display:block;position:absolute;z-index:0;border-radius:50%;
  background:radial-gradient(circle at 30% 22%,#f79c9e 0%,#e12b3d 22%,#ba0920 57%,#62040d 94%);
  box-shadow:inset -16px -24px 36px rgba(42,0,5,.17),inset 10px 15px 36px rgba(255,255,255,.22)}
 .hero-bridge img{z-index:1}
 .hero-bridge::after{z-index:2}
}

@media(max-width:760px){.hero-sun{will-change:transform}}

/* Celular: o sol pode sair por baixo da foto (pôr do sol sincronizado). */
@media(max-width:760px){.hero-bridge{overflow:visible}}
@media(max-width:760px){.brand-orb{transition:none}}

/* Celular: janela do pôr do sol — do topo da foto até a linha do horizonte. */
.hero-sun-clip{display:none}
@media(max-width:760px){.hero-sun-clip{display:block;position:absolute;left:0;right:0;top:0;overflow:hidden;z-index:0;pointer-events:none}}
@media(max-width:760px){.hero-sun-clip-below{z-index:0}}

/* Rodapé: um ícone para cada informação de contato. */
.footer-contact a{display:flex;gap:12px;align-items:flex-start}
.footer-contact a span{display:block}
.footer-icon{width:18px;height:18px;flex:none;margin-top:3px;color:#e04450}
.footer-contact a:hover .footer-icon{color:#ee5c66}

/* ===== Sol atrás da ponte em TODAS as telas (celular, desktop, ultrawide) ===== */
.hero-bridge{overflow:visible}
.hero-bridge img{z-index:1}
.hero-bridge::after{z-index:2}
.hero-sun-clip{display:block;position:absolute;left:0;right:0;top:0;overflow:hidden;z-index:0;pointer-events:none}
.hero-sun{display:block;position:absolute;z-index:0;border-radius:50%;will-change:transform;
 background:radial-gradient(circle at 30% 22%,#f79c9e 0%,#e12b3d 22%,#ba0920 57%,#62040d 94%);
 box-shadow:inset -32px -48px 70px rgba(42,0,5,.17),inset 20px 30px 70px rgba(255,255,255,.22)}
.hero-sun::after{content:"";position:absolute;inset:9%;border-radius:inherit;background:radial-gradient(ellipse at 34% 18%,rgba(255,255,255,.29),transparent 50%)}
.brand-orb{transition:none}
@media(max-width:760px){.hero-sun{box-shadow:inset -16px -24px 36px rgba(42,0,5,.17),inset 10px 15px 36px rgba(255,255,255,.22)}}

/* Símbolo oficial do Instagram (arquivo da Meta), em branco no rodapé escuro, como a Meta orienta. */
.footer-icon-ig{display:block;width:17px;height:17px;margin-top:4px}
/* Instagram: mesmo tamanho visual e mesma cor dos outros ícones do rodapé (o arquivo oficial serve de máscara). */
.footer-icon-ig{display:block;width:16px;height:16px;margin:4px 1px 0;background-color:currentColor;color:#e04450;
 -webkit-mask:url('../assets/instagram-glyph-branco.svg') center/contain no-repeat;mask:url('../assets/instagram-glyph-branco.svg') center/contain no-repeat}
.footer-contact a:hover .footer-icon-ig{color:#ee5c66}

/* ===== Áreas de atuação ===== */
.stage-areas{padding-top:170px}
.area-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.area-card{padding:30px;border-radius:25px;min-height:230px}
.area-card>span{font-size:10px;font-weight:800;letter-spacing:.1em;color:var(--brand)}
.area-card h3{font-size:22px;letter-spacing:-.04em;margin:44px 0 12px}
.area-card p{font-size:14px;line-height:1.7;color:#4e545a;margin:0}
@media(max-width:1000px){.area-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:760px){.stage-areas{padding-top:56px}.area-grid{grid-template-columns:1fr;gap:10px}.area-card{min-height:0;padding:22px 20px}.area-card h3{font-size:19px;margin:16px 0 8px}.area-card p{font-size:14px;line-height:1.6}}
@media(min-width:1800px){.area-grid{gap:24px}.area-card{padding:36px}.area-card p{font-size:15px}}

/* Liquid glass homogêneo: todos os painéis com a mesma transparência, desfoque e saturação */
.liquid-glass,
.stage .liquid-glass,
.stage-audiences-final .audience-card,
.steps-panel.liquid-glass{
  background:rgba(243,244,245,.80) !important;
  backdrop-filter:blur(24px) saturate(160%) !important;
  -webkit-backdrop-filter:blur(24px) saturate(160%) !important;
}

/* Seção 05: título e introdução sempre antes do painel de etapas. */
.stage-process .process-layout{grid-template-columns:minmax(0,1fr);align-items:start;gap:0}
.stage-process .process-layout>.section-intro{width:100%;margin-left:0;margin-right:0}

/* Ponte acima do sol: z-index só atua quando a imagem está posicionada. */
.hero-bridge>img{position:relative;z-index:1}
.hero-bridge>.hero-sun-clip{z-index:0}
.hero-bridge::after{z-index:2}
@media(max-width:760px){.hero-bridge>img{position:absolute}}

/* Véu branco entre a esfera e o conteúdo: suaviza a cor sem alterar o vidro. */
:root{--orb-veil:rgba(255,255,255,.28)}
.global-art::after{content:"";position:absolute;inset:0;background:var(--orb-veil);pointer-events:none}
/* Mesmo tratamento enquanto a esfera emerge por baixo da foto. */
.hero-sun-clip-below .hero-sun::before{content:"";position:absolute;inset:0;border-radius:inherit;background:var(--orb-veil);pointer-events:none}

/* Rodapé atualizado: paleta da marca e leitura acessível. */
.site-footer{background:#000;color:#fff}
.site-footer .footer-inner p,.site-footer .footer-contact a,.site-footer .footer-inner nav a{color:#fff;font-size:14px;line-height:1.7}
.site-footer .footer-legal{color:#d9d9d9;font-size:12px;line-height:1.6;border-top-color:#333}
.site-footer .footer-inner nav a:hover,.site-footer .footer-contact a:hover{color:#ee5c66}
.site-footer .footer-inner nav a{min-height:44px;display:flex;align-items:center}
@media(max-width:760px){.site-footer .footer-inner nav{gap:8px 20px}.site-footer .footer-legal{gap:16px}}

/* Liquid glass — profundidade sutil, sem contorno: brilho fino no topo, reflexo diagonal
   e sombra suave, para o vidro se destacar também sobre o fundo branco. */
.liquid-glass{
  box-shadow:0 1px 2px rgba(20,24,28,.04),0 18px 48px -18px rgba(20,24,28,.16),inset 0 1px 0 rgba(255,255,255,.95),inset 0 -1px 0 rgba(20,24,28,.04) !important;
}
.liquid-glass::before{
  content:"";position:absolute;inset:0;border-radius:inherit;pointer-events:none;
  background:linear-gradient(135deg,rgba(255,255,255,.55) 0%,rgba(255,255,255,0) 38%,rgba(255,255,255,0) 70%,rgba(255,255,255,.22) 100%);
  box-shadow:none;z-index:-1;
}
.liquid-glass{isolation:isolate}

/* Links das áreas para as landing pages */
.area-links{display:flex;flex-wrap:wrap;gap:8px 22px;margin-top:16px}
.area-link{display:inline-flex;align-items:center;gap:6px;color:var(--brand);font-weight:700;font-size:13px;letter-spacing:-.01em;margin-top:16px;margin-right:22px}
.area-link + .area-link{margin-right:0}
.area-link:hover{text-decoration:underline;text-underline-offset:4px}
