@font-face{font-family:Poppins;src:url('../fonts/poppins-regular.woff2') format('woff2');font-weight:400;font-style:normal;font-display:swap}
@font-face{font-family:Poppins;src:url('../fonts/poppins-medium.woff2') format('woff2');font-weight:500;font-style:normal;font-display:swap}
@font-face{font-family:Poppins;src:url('../fonts/poppins-bold.woff2') format('woff2');font-weight:700;font-style:normal;font-display:swap}
:root{
  --ink:#0b0b0b;--muted:#66645f;--soft:#f3f1ed;--line:#d9d6cf;--white:#fff;
  --stone:#d9d2c6;--accent:#49685a;--accent-soft:#edf3ef;--warm:#9d7657;--whatsapp:#1f9d5a;--whatsapp-dark:#177b46;--container:1240px;
  --radius:2px;--shadow:0 26px 70px rgba(0,0,0,.12);--focus:rgba(73,104,90,.38);--ease:cubic-bezier(.2,.75,.25,1);
}
*{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:96px}
body{margin:0;background:var(--white);color:var(--ink);font-family:Poppins,Arial,sans-serif;font-size:16px;line-height:1.65;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;overflow-x:hidden}
body.dialog-open{overflow:hidden}
img{display:block;max-width:100%;height:auto}
button,input,textarea,select{font:inherit}
button{cursor:pointer}
a{color:inherit}
.container{width:min(calc(100% - 48px),var(--container));margin-inline:auto}
.section{padding:118px 0}
.section--soft{background:var(--soft)}
.section--dark{background:var(--ink);color:var(--white)}
.skip-link{position:fixed;left:16px;top:12px;z-index:9999;padding:10px 16px;background:var(--ink);color:#fff;transform:translateY(-160%);transition:.2s}
.skip-link:focus{transform:translateY(0)}
.site-header{position:relative;z-index:20;padding:26px 0;background:#fff;border-bottom:1px solid rgba(11,11,11,.08)}
.header-inner{display:flex;align-items:center;justify-content:space-between;gap:32px}
.brand{display:inline-flex;width:235px}
.brand img{width:100%}
.header-actions{display:flex;align-items:center;gap:28px}
.header-note{font-size:12px;text-transform:uppercase;letter-spacing:.15em;color:var(--muted)}
.button{border:1px solid transparent;border-radius:999px;min-height:58px;padding:0 28px;display:inline-flex;align-items:center;justify-content:center;gap:12px;font-weight:500;text-align:center;text-decoration:none;white-space:nowrap;transition:transform .25s var(--ease),background .25s,color .25s,border-color .25s,box-shadow .25s}
.button:hover{transform:translateY(-2px)}
.button:focus-visible,.text-link:focus-visible,.service-cta:focus-visible,.intent-option:focus-visible,.dialog-option:focus-visible,.footer-link:focus-visible,.language-link:focus-visible,.menu-toggle:focus-visible,.card-link:focus-visible,.dialog-close:focus-visible,.mobile-sticky:focus-visible{outline:3px solid var(--focus);outline-offset:4px}
.button svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.7}
.button--small{min-height:44px;padding:0 20px;font-size:13px}
.button--dark{background:var(--ink);color:#fff}
.button--dark:hover{background:var(--accent);box-shadow:0 10px 30px rgba(73,104,90,.18)}
.button--whatsapp{background:var(--whatsapp);color:#fff;box-shadow:0 12px 32px rgba(31,157,90,.2)}
.button--whatsapp:hover{background:var(--whatsapp-dark);box-shadow:0 18px 38px rgba(31,157,90,.28)}
.button--whatsapp .whatsapp-icon{fill:currentColor;stroke:none;width:23px;height:23px}
.button--light{background:#fff;color:var(--ink)}
.button--light:hover{background:#ece9e2}
.button--outline{background:transparent;border-color:#bbb6ad;color:var(--ink)}
.eyebrow{margin:0 0 22px;font-size:11px;font-weight:500;letter-spacing:.18em;text-transform:uppercase;color:var(--muted)}
.eyebrow--light{color:#aaa69e}
h1,h2,h3,p{margin-top:0}
h1,h2,h3{line-height:1.12;letter-spacing:0}
h1{font-size:72px;max-width:900px;margin-bottom:28px}
h2{font-size:54px;margin-bottom:24px}
h3{font-size:21px}
.hero{padding-top:72px;overflow:hidden}
.hero-grid{display:grid;grid-template-columns:minmax(0,1.06fr) minmax(360px,.72fr);gap:78px;align-items:center}
.hero-copy{padding:48px 0 28px}
.hero-lead{max-width:730px;font-size:19px;line-height:1.7;color:#4d4b46;margin-bottom:35px}
.hero-actions{display:flex;align-items:center;gap:28px;flex-wrap:wrap}
.text-link{font-size:14px;font-weight:500;text-decoration:none;border-bottom:1px solid var(--ink);padding:4px 0}
.text-link span{margin-left:9px}
.microcopy{font-size:12px;color:var(--muted);margin:14px 0 42px}
.trust-list{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--line)}
.trust-list li{padding:20px 18px 0 0;font-size:12px;line-height:1.55;color:#45443f}
.trust-list span{display:block;font-size:10px;letter-spacing:.12em;color:#96928a;margin-bottom:10px}
.hero-visual{position:relative;min-height:670px}
.hero-image-wrap{margin:0;height:670px;overflow:hidden;background:#dfe5e7}
.hero-image-wrap img{width:100%;height:100%;object-fit:cover;object-position:center 58%}
.hero-visual:before{content:"";position:absolute;z-index:-1;right:-54px;top:-42px;width:78%;height:48%;background:var(--soft)}
.hero-card{position:absolute;left:-48px;bottom:35px;width:300px;padding:27px 28px;background:#fff;box-shadow:var(--shadow)}
.hero-card p{font-size:13px;line-height:1.65;margin-bottom:20px}
.card-link{border:0;background:none;padding:0;font-size:12px;font-weight:600;border-bottom:1px solid var(--ink)}
.split-heading{display:grid;grid-template-columns:1.05fr .65fr;gap:90px;align-items:end;margin-bottom:60px}
.split-heading h2{max-width:780px;margin:0}
.split-heading>p{margin:0;color:#55524d;font-size:16px}
.problem-grid{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid #bebbb4}
.problem-card{padding:42px 38px 10px 0;border-right:1px solid #bebbb4;min-height:280px}
.problem-card+ .problem-card{padding-left:38px}
.problem-card:last-child{border-right:0}
.card-number{font-size:10px;letter-spacing:.14em;color:#8a867f}
.problem-card h3{font-size:21px;margin:45px 0 20px;max-width:330px}
.problem-card p{font-size:14px;color:#5d5a54;margin:0;max-width:340px}
.section-heading{max-width:780px;margin-bottom:68px}
.section-heading>p:last-child{max-width:650px;color:var(--muted);margin:0}
.section-heading--wide{max-width:940px}
.services-list{border-top:1px solid var(--ink)}
.service-row{display:grid;grid-template-columns:80px 1fr 1.2fr 50px;gap:30px;align-items:center;border-bottom:1px solid var(--line);padding:34px 0;transition:background .25s,box-shadow .25s}
.service-row:hover{background:var(--accent-soft);box-shadow:inset 3px 0 0 var(--accent)}
.service-index{font-size:11px;color:#89867f;letter-spacing:.1em}
.service-title h3{margin:0;font-size:20px}
.service-copy p{margin:0;color:#5c5953;font-size:13px;max-width:550px}
.service-cta{width:44px;height:44px;border:1px solid var(--ink);border-radius:50%;background:transparent;font-size:18px;display:grid;place-items:center;line-height:1;transition:background .25s,color .25s,border-color .25s}
.service-cta span{display:block;transition:transform .25s var(--ease)}
.service-cta:hover{background:var(--ink);color:#fff}
.service-cta:hover span{transform:translate(2px,-2px)}
.intent-grid{display:grid;grid-template-columns:.8fr 1fr;gap:105px;align-items:start}
.intent-copy{position:sticky;top:40px}
.intent-copy h2{max-width:530px}
.intent-copy>p:last-child{max-width:500px;color:#aaa7a0}
.intent-options{border-top:1px solid #3b3b3b}
.intent-option{width:100%;display:flex;justify-content:space-between;align-items:center;text-align:left;padding:25px 0;border:0;border-bottom:1px solid #3b3b3b;background:transparent;color:#fff;font-size:17px;transition:color .25s}
.intent-option:hover{color:var(--stone)}
.intent-option b{font-size:20px;font-weight:400;transition:transform .25s var(--ease)}
.intent-option:hover b{transform:translate(4px,-2px)}
.authority-grid{display:grid;grid-template-columns:.83fr 1fr;gap:100px;align-items:center}
.authority-visual{position:relative;min-height:650px}
.architecture-panel{height:650px;background:url('../img/arquitectura-linhas.webp') center/cover no-repeat;filter:grayscale(1)}
.authority-copy>p:not(.eyebrow){color:#55524d;max-width:690px}
.credentials{margin:42px 0;display:grid;grid-template-columns:1fr 1fr;border-top:1px solid var(--line)}
.credentials div{padding:18px 15px 18px 0;border-bottom:1px solid var(--line)}
.credentials div:nth-child(odd){border-right:1px solid var(--line)}
.credentials div:nth-child(even){padding-left:25px}
.credentials dt{font-size:10px;text-transform:uppercase;letter-spacing:.14em;color:#8f8b83}
.credentials dd{font-size:13px;margin:6px 0 0}
.process-grid{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid #c6c2ba}
.process-step{padding:34px 30px 0 0;border-right:1px solid #c6c2ba;min-height:270px}
.process-step+ .process-step{padding-left:30px}
.process-step:last-child{border-right:0}
.process-step span{font-size:11px;color:#8f8b83}
.process-step h3{margin:55px 0 18px;font-size:19px}
.process-step p{font-size:13px;color:#5d5a54;margin:0}
.faq-grid{display:grid;grid-template-columns:.62fr 1fr;gap:100px;align-items:start}
.faq-heading{position:sticky;top:40px}
.faq-heading p:last-child{max-width:380px;color:var(--muted)}
.accordion{border-top:1px solid var(--ink)}
.accordion details{border-bottom:1px solid var(--line)}
.accordion summary{list-style:none;display:flex;justify-content:space-between;gap:25px;padding:26px 0;font-size:16px;font-weight:500;cursor:pointer}
.accordion summary::-webkit-details-marker{display:none}
.accordion summary span{font-size:24px;font-weight:400;line-height:1;transition:transform .25s}
.accordion details[open] summary span{transform:rotate(45deg)}
.accordion details p{color:#5a5751;font-size:14px;max-width:720px;padding:0 45px 25px 0;margin:0}
.final-cta{padding-top:40px}
.final-cta-box{background:var(--ink);color:#fff;padding:78px 80px;display:grid;grid-template-columns:1.15fr .55fr;gap:90px;align-items:end;position:relative;overflow:hidden}
.final-cta-box:after{content:"AR";position:absolute;right:-24px;top:-86px;font-size:300px;line-height:1;font-weight:700;color:rgba(255,255,255,.035);letter-spacing:0;pointer-events:none}
.final-cta-box h2{position:relative;z-index:1;max-width:720px}
.final-cta-box>div>p:last-child{color:#aaa7a0;max-width:670px;margin-bottom:0}
.final-actions{position:relative;z-index:1;text-align:center}
.final-actions .button{width:100%}
.final-actions p{font-size:11px;color:#8e8b85;margin:13px 0 0}
.site-footer{padding:80px 0 26px;background:#fff}
.footer-grid{display:grid;grid-template-columns:1.3fr .55fr .65fr;gap:80px;align-items:start}
.footer-brand img{width:245px;margin-bottom:24px}
.footer-brand p{font-size:12px;color:var(--muted);max-width:430px}
.site-footer h2{font-size:12px;letter-spacing:.08em;text-transform:uppercase;margin-bottom:18px}
.site-footer p,.site-footer address{font-size:12px;font-style:normal;line-height:1.9;color:#4e4b46}
.site-footer a{text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:3px}
.footer-bottom{border-top:1px solid var(--line);margin-top:55px;padding-top:20px;display:flex;justify-content:space-between;gap:25px;align-items:center}
.footer-bottom p{margin:0;font-size:10px;text-transform:uppercase;letter-spacing:.08em}
.footer-bottom nav{display:flex;gap:22px;font-size:11px}
.footer-link{border:0;background:none;padding:0;text-decoration:underline;text-underline-offset:3px;color:inherit}
.mobile-sticky{display:none}
.lead-dialog{width:min(760px,calc(100% - 32px));max-height:calc(100vh - 32px);padding:0;border:0;background:#fff;color:var(--ink);box-shadow:0 30px 100px rgba(0,0,0,.3)}
.lead-dialog::backdrop{background:rgba(5,5,5,.75);backdrop-filter:blur(5px)}
.dialog-shell{position:relative;padding:55px 58px 42px;overflow:auto;max-height:calc(100vh - 32px)}
.dialog-close{position:absolute;right:22px;top:17px;border:0;background:none;font-size:32px;font-weight:300;line-height:1}
.dialog-shell h2{font-size:40px;max-width:620px;margin-bottom:15px}
.dialog-intro{font-size:13px;color:var(--muted);margin-bottom:30px}
.dialog-options{border-top:1px solid var(--ink)}
.dialog-option{width:100%;border:0;border-bottom:1px solid var(--line);background:#fff;display:flex;align-items:center;justify-content:space-between;gap:25px;text-align:left;padding:17px 3px;transition:background .2s,color .2s}
.dialog-option:hover{background:var(--soft)}
.dialog-option span{display:flex;flex-direction:column;font-size:12px;color:#6a6761}
.dialog-option b{font-size:15px;color:var(--ink);margin-bottom:2px}
.dialog-option i{font-style:normal;font-size:19px}
.dialog-privacy{font-size:10px;color:#77736d;margin:22px 0 0}
.dialog-privacy a{text-decoration:underline}
.cookie-banner{position:fixed;z-index:1000;left:22px;right:22px;bottom:22px;background:#fff;box-shadow:0 18px 70px rgba(0,0,0,.2);border:1px solid var(--line);padding:20px 24px;display:flex;align-items:center;justify-content:space-between;gap:35px}
.cookie-banner[hidden]{display:none}
.cookie-banner strong{font-size:13px}
.cookie-banner p{font-size:11px;color:var(--muted);margin:4px 0 0;max-width:700px}
.cookie-actions{display:flex;gap:10px;flex-shrink:0}
.noscript{position:fixed;z-index:9999;bottom:0;left:0;right:0;background:#fff2cc;padding:12px;text-align:center;font-size:13px}
.reveal{opacity:0;transform:translateY(26px);transition:opacity .75s var(--ease),transform .75s var(--ease)}
.reveal--delay{transition-delay:.12s}
.reveal.is-visible{opacity:1;transform:none}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}.reveal{opacity:1;transform:none;transition:none}.button,.intent-option,.service-row{transition:none}}
@media (max-width:1050px){
  .section{padding:92px 0}.hero-grid{grid-template-columns:1fr .72fr;gap:45px}.hero-visual{min-height:590px}.hero-image-wrap{height:590px}.hero-card{left:-35px;width:270px}.trust-list{grid-template-columns:1fr}.trust-list li{border-bottom:1px solid var(--line);padding:12px 0}.trust-list span{display:inline-block;margin:0 12px 0 0}.split-heading{gap:50px}.intent-grid{gap:60px}.authority-grid{gap:60px}.faq-grid{gap:60px}.final-cta-box{padding:65px 55px;gap:55px}.footer-grid{gap:45px}
}
@media (max-width:820px){
  .container{width:min(calc(100% - 36px),var(--container))}.section{padding:78px 0}.header-note{display:none}.brand{width:205px}.hero{padding-top:25px}.hero-grid{grid-template-columns:1fr}.hero-copy{padding-bottom:0}.hero-visual{min-height:560px}.hero-image-wrap{height:560px}.hero-card{left:18px;bottom:18px}.split-heading,.intent-grid,.authority-grid,.faq-grid,.final-cta-box{grid-template-columns:1fr}.split-heading{align-items:start}.problem-grid{grid-template-columns:1fr;border-top:0}.problem-card,.problem-card+ .problem-card{padding:30px 0;border-right:0;border-top:1px solid #bebbb4;min-height:auto}.problem-card h3{margin:28px 0 15px}.service-row{grid-template-columns:50px 1fr 44px}.service-copy{grid-column:2/4}.intent-copy,.faq-heading{position:static}.authority-grid{gap:55px}.authority-visual,.architecture-panel{min-height:520px;height:520px}.process-grid{grid-template-columns:1fr 1fr}.process-step:nth-child(2){border-right:0}.process-step:nth-child(3){border-top:1px solid #c6c2ba}.process-step:nth-child(4){border-top:1px solid #c6c2ba;border-right:0}.final-cta-box{gap:35px}.final-actions{text-align:left;max-width:420px}.footer-grid{grid-template-columns:1fr 1fr}.footer-brand{grid-column:1/-1}.cookie-banner{align-items:flex-start;flex-direction:column}.cookie-actions{width:100%}.cookie-actions .button{flex:1}
}
@media (max-width:560px){
  body{font-size:15px;padding-bottom:76px}.container{width:min(calc(100% - 28px),var(--container))}.section{padding:66px 0}.site-header{padding:17px 0}.brand{width:178px}.header-actions .button{display:none}h1{font-size:42px;line-height:1.06}h2{font-size:34px}.hero-copy{padding-top:28px}.hero-lead{font-size:16px}.hero-actions{display:block}.hero-actions .button{width:100%}.text-link{display:inline-block;margin-top:22px}.microcopy{text-align:center;margin-bottom:28px}.hero-visual,.hero-image-wrap{height:470px;min-height:470px}.hero-visual:before{display:none}.hero-card{left:12px;right:12px;width:auto;bottom:12px;padding:20px}.split-heading{gap:25px;margin-bottom:42px}.problem-card h3{font-size:19px}.section-heading{margin-bottom:45px}.service-row{grid-template-columns:36px 1fr 40px;gap:13px;padding:25px 0}.service-title h3{font-size:17px}.service-copy{grid-column:2/4}.service-copy p{font-size:12px}.intent-option{font-size:15px;padding:21px 0}.authority-visual,.architecture-panel{min-height:420px;height:420px}.credentials{grid-template-columns:1fr}.credentials div:nth-child(odd){border-right:0}.credentials div:nth-child(even){padding-left:0}.process-grid{grid-template-columns:1fr}.process-step,.process-step+ .process-step{padding:28px 0;border-right:0;border-top:1px solid #c6c2ba;min-height:auto}.process-step h3{margin:28px 0 13px}.faq-grid{gap:35px}.accordion summary{font-size:14px;padding:22px 0}.final-cta{padding-top:10px}.final-cta-box{padding:48px 26px}.final-cta-box:after{font-size:180px}.footer-grid{grid-template-columns:1fr;gap:28px}.footer-brand{grid-column:auto}.footer-bottom{align-items:flex-start;flex-direction:column}.mobile-sticky{position:fixed;z-index:90;display:flex;left:12px;right:12px;bottom:10px;height:58px;border:0;border-radius:999px;background:var(--whatsapp);color:#fff;align-items:center;justify-content:center;gap:10px;font-weight:600;box-shadow:0 12px 34px rgba(0,0,0,.22)}.mobile-sticky svg{width:22px;height:22px;fill:currentColor}.dialog-shell{padding:50px 22px 28px}.dialog-option{padding:15px 2px}.cookie-banner{left:10px;right:10px;bottom:82px;padding:17px}.cookie-actions{flex-direction:column}.cookie-actions .button{width:100%}
}


/* V2 — navigation, multilingual pages, animation and location */
.site-header{position:sticky;top:0;padding:18px 0;background:#fff;transition:padding .3s var(--ease),box-shadow .3s var(--ease),background .3s;backdrop-filter:none}
.site-header.is-scrolled{padding:12px 0;box-shadow:0 10px 35px rgba(0,0,0,.08);background:#fff}
.desktop-nav{display:flex;align-items:center;gap:22px;margin-left:auto}
.desktop-nav a{font-size:12px;text-decoration:none;position:relative;padding:8px 0;color:#3f3d39}
.desktop-nav a:after{content:"";position:absolute;left:0;right:100%;bottom:2px;height:1px;background:var(--ink);transition:right .25s var(--ease)}
.desktop-nav a:hover:after{right:0}
.header-actions{gap:16px}.language-switch{display:flex;align-items:center;border:1px solid var(--line);border-radius:999px;padding:3px;background:#fff}.language-link{width:31px;height:29px;border-radius:999px;display:grid;place-items:center;text-decoration:none;font-size:10px;font-weight:600;transition:background .2s,color .2s}.language-link.is-active,.language-link:hover{background:var(--ink);color:#fff}.language-link[aria-current="page"]{cursor:default}
.menu-toggle{display:none;width:44px;height:44px;border:1px solid var(--line);background:#fff;border-radius:50%;padding:0;position:relative}.menu-toggle span{position:absolute;left:12px;right:12px;height:1px;background:var(--ink);transition:.25s}.menu-toggle span:first-child{top:17px}.menu-toggle span:last-child{top:25px}.menu-toggle[aria-expanded="true"] span:first-child{transform:translateY(4px) rotate(45deg)}.menu-toggle[aria-expanded="true"] span:last-child{transform:translateY(-4px) rotate(-45deg)}
.mobile-menu{border-top:1px solid var(--line);background:#fff}.mobile-menu[hidden]{display:none}.mobile-nav{display:grid;padding-top:22px;padding-bottom:28px}.mobile-nav a{padding:12px 0;text-decoration:none;border-bottom:1px solid var(--line);font-size:16px}
.brand-slogan{font-size:66px;line-height:1.03;max-width:840px;margin-bottom:32px;font-weight:400}.brand-slogan strong{font-weight:700}.hero-question{font-size:32px;line-height:1.25;letter-spacing:0;margin-bottom:17px;max-width:760px}.hero-image-wrap img{transform:scale(1.025);will-change:transform;animation:heroFloat 12s ease-in-out infinite alternate}.hero-card{animation:cardFloat 7s ease-in-out infinite alternate}
@keyframes heroFloat{from{transform:scale(1.025) translate3d(0,-4px,0)}to{transform:scale(1.045) translate3d(0,6px,0)}}@keyframes cardFloat{from{transform:translateY(0)}to{transform:translateY(-6px)}}
.brand-statement{padding:92px 0;background:#fff}.brand-statement-grid{display:grid;grid-template-columns:.34fr 1fr;gap:70px;align-items:start;border-top:1px solid var(--ink);padding-top:40px}.brand-statement h2{font-size:76px;font-weight:400;max-width:1050px}.brand-statement h2 strong{font-weight:700}.brand-statement-grid>div>p{color:var(--muted);max-width:650px;font-size:17px}
.location{padding-bottom:0;background:var(--soft);overflow:hidden}.location-heading{display:grid;grid-template-columns:.35fr 1fr;column-gap:70px;align-items:start;margin-bottom:50px}.location-heading .eyebrow{grid-row:1/3}.location-heading h2{margin-bottom:15px}.location-heading>p:last-child{max-width:700px;color:var(--muted)}.location-layout{position:relative;width:min(calc(100% - 48px),var(--container));margin-inline:auto;display:grid;grid-template-columns:minmax(0,1.12fr) minmax(340px,.88fr);align-items:stretch;border:1px solid var(--line);background:#fff}.map-wrap{position:relative;width:100%;min-width:0;min-height:560px;height:100%;background:#f0efeb;border-right:1px solid var(--line);overflow:hidden}.map-wrap:after{content:"";position:absolute;inset:0;background:rgba(245,244,240,.24);mix-blend-mode:screen;pointer-events:none}.map-wrap iframe{display:block;width:100%;height:100%;filter:grayscale(1) saturate(0) contrast(.78) brightness(1.1) opacity(.96) !important}.location-info{width:100%;min-width:0;max-width:none;margin:0;background:#fff;padding:48px 42px;display:grid;grid-template-columns:1fr;gap:34px;align-content:start}.location-info address,.location-info p{font-style:normal;color:#4f4c47;line-height:1.9;overflow-wrap:break-word}.location-info .button{margin-top:16px}.location-info .text-link{display:inline-block;margin-top:20px}
.about-hero{padding-top:80px;overflow:hidden}.about-hero-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:78px;align-items:center}.about-hero h1{font-size:72px}.about-hero-lead{font-size:18px;color:var(--muted);max-width:700px;margin-bottom:36px}.about-hero-art{position:relative;min-height:560px;background:#eee}.about-hero-art img{width:100%;height:560px;object-fit:cover;filter:grayscale(.75);transform:scale(1.025);animation:heroFloat 12s ease-in-out infinite alternate}.about-hero-slogan{position:absolute;left:28px;right:28px;bottom:28px;background:#fff;padding:26px 28px;font-size:28px;line-height:1.18;box-shadow:var(--shadow)}
.profile-grid{display:grid;grid-template-columns:.48fr 1fr;gap:100px;align-items:start}.profile-sidebar{position:sticky;top:135px}.profile-sidebar>p:last-child{color:var(--muted)}.bio-copy{max-width:820px}.bio-copy h2{font-size:62px;margin-bottom:10px}.bio-role{font-size:18px;margin-bottom:42px}.bio-copy p{color:#4f4c47;margin-bottom:23px}.bio-copy strong{color:var(--ink)}
.journey-grid{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid var(--ink)}.journey-card{padding:36px 30px 10px 0;border-right:1px solid var(--line);min-height:280px}.journey-card+.journey-card{padding-left:30px}.journey-card:last-child{border-right:0}.journey-card span{font-size:10px;letter-spacing:.15em;color:#928e86}.journey-card h3{margin:50px 0 18px}.journey-card p{font-size:13px;color:var(--muted)}
.mvv-grid{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid #393939}.mvv-card{padding:42px 42px 20px 0;border-right:1px solid #393939;min-height:430px;display:flex;flex-direction:column}.mvv-card+.mvv-card{padding-left:42px}.mvv-card:last-child{border-right:0}.mvv-card span{font-size:10px;letter-spacing:.14em;color:#777}.mvv-card h3{font-size:30px;margin:48px 0 25px}.mvv-card p{color:#c2bfb8;font-size:15px}.mvv-card em{margin-top:auto;color:#fff;font-size:14px;line-height:1.7}
.legal{max-width:850px;padding:90px 0 120px}.legal h1{font-size:56px}.legal h2{font-size:24px;margin-top:48px}.legal p,.legal li,.legal div{color:#55524d}.legal a{text-decoration:underline}.legal-back{display:inline-block;margin-bottom:45px;font-size:13px}.legal-note{margin-top:55px;padding-top:25px;border-top:1px solid var(--line)}
.reveal--scale{transform:translateY(24px) scale(.975)}.stagger-group .reveal:nth-child(2){transition-delay:.09s}.stagger-group .reveal:nth-child(3){transition-delay:.18s}.stagger-group .reveal:nth-child(4){transition-delay:.27s}.reveal.is-visible.reveal--scale{transform:none}.section-heading:after,.split-heading:after,.location-heading:after{content:"";display:block;width:0;height:1px;background:var(--ink);margin-top:28px;transition:width 1s var(--ease);grid-column:1/-1}.section-heading.is-visible:after,.split-heading.is-visible:after,.location-heading.is-visible:after{width:100%}
@media(max-width:1180px){.desktop-nav{display:none}.menu-toggle{display:block}.header-actions .button{display:none}.header-note{display:none}.header-inner{gap:15px}.header-actions{margin-left:auto}.brand{width:215px}}
@media(max-width:820px){.brand-statement-grid,.location-heading,.about-hero-grid,.profile-grid{grid-template-columns:1fr}.brand-statement-grid,.location-heading{gap:20px}.location-heading .eyebrow{grid-row:auto}.about-hero-art,.about-hero-art img{height:470px;min-height:470px}.profile-sidebar{position:static}.journey-grid{grid-template-columns:1fr 1fr}.journey-card:nth-child(2){border-right:0}.journey-card:nth-child(3),.journey-card:nth-child(4){border-top:1px solid var(--line)}.mvv-grid{grid-template-columns:1fr}.mvv-card,.mvv-card+.mvv-card{padding:35px 0;border-right:0;border-bottom:1px solid #393939;min-height:auto}.mvv-card:last-child{border-bottom:0}.mvv-card em{margin-top:25px}.location-layout{grid-template-columns:1fr;width:min(calc(100% - 36px),var(--container))}.map-wrap{min-height:420px;height:420px;border-right:0;border-bottom:1px solid var(--line)}.location-info{padding:34px 20px 36px;gap:28px}.about-hero-grid{gap:45px}}
@media(max-width:560px){.language-switch{padding:2px}.language-link{width:28px;height:27px}.menu-toggle{width:40px;height:40px}.brand{width:164px}.brand-slogan{font-size:40px}.hero-question{font-size:23px}.brand-statement{padding:62px 0}.brand-statement h2{font-size:39px}.location-heading{margin-bottom:35px}.location-layout{width:min(calc(100% - 28px),var(--container))}.map-wrap{height:390px;min-height:390px}.location-info{padding:30px 18px 32px;gap:26px}.about-hero{padding-top:38px}.about-hero h1{font-size:43px}.about-hero-art,.about-hero-art img{height:380px;min-height:380px}.about-hero-slogan{left:12px;right:12px;bottom:12px;padding:18px;font-size:20px}.profile-grid{gap:35px}.bio-copy h2{font-size:42px}.journey-grid{grid-template-columns:1fr}.journey-card,.journey-card+.journey-card{padding:28px 0;border-right:0;border-top:1px solid var(--line);min-height:auto}.journey-card h3{margin:28px 0 13px}.mvv-card h3{font-size:25px;margin:28px 0 18px}.legal{padding:55px 0 90px}}
@media(max-width:1050px){h1{font-size:60px}h2{font-size:46px}.brand-slogan{font-size:58px}.hero-question{font-size:30px}.brand-statement h2{font-size:62px}.about-hero h1{font-size:62px}.bio-copy h2{font-size:58px}.legal h1{font-size:52px}.dialog-shell h2{font-size:36px}}
@media(max-width:820px){h1{font-size:52px}h2{font-size:40px}.brand-slogan{font-size:50px}.hero-question{font-size:28px}.brand-statement h2{font-size:50px}.about-hero h1{font-size:52px}.bio-copy h2{font-size:50px}.legal h1{font-size:46px}.hero-card{left:18px}}
@media(max-width:560px){html{scroll-padding-top:76px}body{padding-bottom:calc(82px + env(safe-area-inset-bottom))}.site-header,.site-header.is-scrolled{padding:14px 0}h1{font-size:39px;line-height:1.08}h2{font-size:31px}.brand-slogan{font-size:36px;line-height:1.08}.hero-question{font-size:22px}.brand-statement h2{font-size:36px}.about-hero h1{font-size:38px}.bio-copy h2{font-size:38px}.legal h1{font-size:36px}.dialog-shell h2{font-size:28px}.button{white-space:normal;line-height:1.25;padding:0 20px}.mobile-sticky{bottom:calc(10px + env(safe-area-inset-bottom));white-space:nowrap;padding:0 18px}.cookie-banner{bottom:calc(82px + env(safe-area-inset-bottom))}.service-row:hover{padding-left:0;padding-right:0}.final-cta-box:after{font-size:150px}}
@media(min-width:821px){html[lang="pt-PT"] .container{width:min(calc(100% - 36px),var(--container))}html[lang="pt-PT"] .section{padding:112px 0}html[lang="pt-PT"] .location-layout{width:min(calc(100% - 36px),var(--container))}}
@media(prefers-reduced-motion:reduce){.hero-image-wrap img,.hero-card,.about-hero-art img{animation:none}.reveal--scale{transform:none}}

/* Progressive enhancement: content remains visible if JavaScript is unavailable. */
.reveal{opacity:1;transform:none}.js .reveal{opacity:0;transform:translateY(18px) scale(.992);filter:blur(1.5px);transition:opacity .6s var(--ease),transform .7s var(--ease),filter .7s var(--ease)}.js .reveal--scale{transform:translateY(18px) scale(.985)}.js .reveal.is-visible{opacity:1;transform:none;filter:none}
.js .reveal:not(.is-visible):nth-child(2){transition-delay:.06s}.js .reveal:not(.is-visible):nth-child(3){transition-delay:.12s}.js .reveal:not(.is-visible):nth-child(4){transition-delay:.18s}.js .reveal:not(.is-visible):nth-child(5){transition-delay:.24s}
.stagger-group .reveal:nth-child(2){transition-delay:.08s}.stagger-group .reveal:nth-child(3){transition-delay:.16s}.stagger-group .reveal:nth-child(4){transition-delay:.24s}.stagger-group .reveal:nth-child(5){transition-delay:.32s}
@media(prefers-reduced-motion:reduce){.js .reveal,.js .reveal--scale,.stagger-group .reveal{opacity:1;transform:none;filter:none;transition:none}}
