@import url('https://fonts.googleapis.com/css2?family=DM+Mono:wght@400;500&family=Manrope:wght@400;500;600;700;800&family=Playfair+Display:ital,wght@0,600;0,700;1,600;1,700&display=swap');

:root{--navy:#091f40;--navy-2:#0d2c58;--ink:#162133;--muted:#5d6b7e;--line:#d8e0e9;--paper:#f5f7fa;--white:#fff;--accent:#df9427;--accent-2:#f2b753;--charcoal:#1e2630;--shadow:0 18px 60px rgba(8,25,51,.12);--radius:18px;--container:min(1160px,calc(100% - 48px));}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--ink);font-family:Manrope,Arial,sans-serif;background:#fff;line-height:1.6}body.no-scroll{overflow:hidden}a{color:inherit;text-decoration:none}button,input,textarea,select{font:inherit}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.skip-link{position:fixed;left:12px;top:-60px;padding:10px 14px;background:#fff;color:var(--navy);z-index:1000;border-radius:8px;box-shadow:var(--shadow);transition:top .2s}.skip-link:focus{top:12px}.container{width:var(--container);margin:0 auto}.topbar{background:var(--navy);color:#dce7f5;font-size:.77rem;letter-spacing:.02em}.topbar__inner{min-height:40px;display:flex;justify-content:space-between;align-items:center;gap:20px}.topbar p{margin:0}.topbar__links{display:flex;gap:18px}.topbar a:hover{text-decoration:underline}.status-dot{display:inline-block;width:7px;height:7px;margin-right:7px;background:var(--accent);border-radius:50%;vertical-align:middle}.site-header{position:sticky;z-index:100;top:0;background:rgba(9,31,64,.95);backdrop-filter:blur(12px);transition:background .25s,box-shadow .25s}.site-header.is-scrolled{box-shadow:0 10px 24px rgba(3,12,28,.17)}.nav-wrap{min-height:80px;display:flex;align-items:center;justify-content:space-between;gap:30px}.brand{display:flex;align-items:center;width:60px;flex-shrink:0}.brand img{width:60px;height:auto;object-fit:contain;display:block}.site-nav{display:flex;align-items:center;gap:26px;color:#f1f6fd;font-size:.88rem;font-weight:700}.site-nav>a{position:relative;padding:10px 0}.site-nav>a:after{content:"";position:absolute;left:0;bottom:4px;width:0;height:2px;background:var(--accent);transition:width .2s}.site-nav>a:hover:after,.site-nav>a:focus:after{width:100%}.nav-toggle{display:none;border:0;background:none;color:#fff;width:42px;height:42px;padding:9px;cursor:pointer}.nav-toggle span:not(.sr-only){display:block;width:100%;height:2px;background:#fff;margin:6px 0;transition:.2s}.button{display:inline-flex;align-items:center;justify-content:center;gap:13px;border:1px solid transparent;border-radius:4px;padding:14px 20px;font-weight:800;font-size:.86rem;line-height:1.2;cursor:pointer;transition:transform .2s,background .2s,color .2s,border .2s;letter-spacing:.01em}.button:hover{transform:translateY(-2px)}.button--small{padding:11px 15px;font-size:.78rem}.button--accent{background:var(--accent);color:#142238}.button--accent:hover{background:var(--accent-2)}.button--outline{border-color:#9badc3;color:var(--navy);background:transparent}.button--outline:hover{background:var(--navy);color:#fff;border-color:var(--navy)}.button--full{width:100%}.hero{position:relative;isolation:isolate;overflow:hidden;min-height:670px;background:var(--navy);color:#fff;padding:82px 0 80px}.hero__grid{position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,rgba(255,255,255,.05) 1px,transparent 1px),linear-gradient(rgba(255,255,255,.05) 1px,transparent 1px);background-size:72px 72px;opacity:.25;mask-image:linear-gradient(to bottom,black 0%,transparent 88%)}.hero:after{content:"";position:absolute;inset:0;z-index:-1;background:radial-gradient(circle at 83% 38%,rgba(48,120,199,.29),transparent 27%),radial-gradient(circle at 14% 88%,rgba(222,148,39,.17),transparent 28%)}.hero__layout{display:grid;grid-template-columns:1.05fr .95fr;align-items:center;gap:68px}.hero__content{padding-top:15px}.eyebrow{display:flex;align-items:center;gap:10px;color:#b8c7da;font:500 .72rem/1.2 "DM Mono",monospace;letter-spacing:.14em;text-transform:uppercase}.eyebrow>span{width:30px;height:2px;background:var(--accent)}.eyebrow--dark{color:#65748b}.hero h1{font-size:clamp(3.2rem,5.2vw,5.6rem);line-height:.98;letter-spacing:-.064em;margin:22px 0 25px;font-weight:800;max-width:780px}.hero h1 em{font-family:"Playfair Display",Georgia,serif;font-weight:600;color:#e3a545;letter-spacing:-.06em}.hero__lead{font-size:1.04rem;color:#c4d2e5;max-width:590px;margin:0 0 31px}.hero__actions{display:flex;align-items:center;gap:26px;flex-wrap:wrap}.text-link{font-size:.88rem;font-weight:800;color:#fff;display:inline-flex;gap:9px;align-items:center}.text-link span{color:var(--accent);font-size:1.2rem}.hero__facts{display:flex;gap:24px;margin-top:67px;padding-top:22px;border-top:1px solid rgba(255,255,255,.15);max-width:650px}.hero__facts>div{display:flex;gap:10px;flex:1}.hero__facts strong{color:var(--accent);font:500 .76rem "DM Mono",monospace}.hero__facts span{font-size:.72rem;color:#aabbd0;line-height:1.42}.hero__visual{position:relative;min-height:500px}.picture-card{position:relative;overflow:hidden;box-shadow:0 24px 55px rgba(0,0,0,.24)}.picture-card--large{height:500px;max-width:415px;margin-left:auto;border-radius:2px}.picture-card img{width:100%;height:100%;object-fit:cover;display:block;filter:saturate(.92) contrast(1.04)}.picture-card__caption{position:absolute;bottom:0;left:0;right:0;padding:20px 22px;background:linear-gradient(to top,rgba(4,15,34,.94),transparent);display:flex;flex-direction:column;gap:2px}.picture-card__caption span{font:500 .65rem "DM Mono",monospace;text-transform:uppercase;letter-spacing:.11em;color:var(--accent-2)}.picture-card__caption strong{font-size:.92rem;color:#fff}.hero__badge{position:absolute;right:360px;top:14px;z-index:1;width:119px;height:119px;padding:19px;display:flex;justify-content:space-between;flex-direction:column;background:var(--accent);color:#10213d;box-shadow:0 14px 32px rgba(0,0,0,.17);transform:rotate(3deg)}.hero__badge span{font:500 .57rem "DM Mono",monospace;letter-spacing:.12em}.hero__badge strong{font-size:.78rem;line-height:1.24}.hero__mini-card{position:absolute;left:-16px;bottom:12px;display:flex;align-items:center;gap:14px;width:265px;padding:12px;background:#fff;color:var(--ink);box-shadow:var(--shadow)}.hero__mini-card img{width:72px;height:72px;object-fit:cover}.hero__mini-card span{display:block;font:500 .58rem "DM Mono",monospace;letter-spacing:.1em;text-transform:uppercase;color:#6f7d8f;margin-bottom:5px}.hero__mini-card strong{font-size:.78rem;line-height:1.36;display:block}.hero__scroll{position:absolute;left:50%;bottom:25px;transform:translateX(-50%);display:flex;flex-direction:column;align-items:center;gap:8px;color:#b7c7dc;font:500 .58rem "DM Mono",monospace;letter-spacing:.1em;text-transform:uppercase}.hero__scroll i{width:1px;height:32px;background:linear-gradient(var(--accent),transparent)}.section{padding:118px 0}.section--about{background:#fff}.about-grid{display:grid;grid-template-columns:1.12fr .88fr;gap:94px;align-items:start}.about-copy h2,.section-heading h2,.method h2,.credibility h2,.contact h2{font-size:clamp(2.25rem,3.7vw,3.85rem);line-height:1.06;letter-spacing:-.052em;margin:16px 0 25px}.about-copy p{max-width:610px;color:var(--muted);font-size:1rem;margin:0 0 15px}.about-copy .button{margin-top:20px}.purpose-card{background:var(--navy);padding:37px 36px 31px;color:#fff;position:relative;overflow:hidden}.purpose-card:after{content:"";position:absolute;width:230px;height:230px;right:-95px;top:-86px;border:1px solid rgba(255,255,255,.18);border-radius:50%;box-shadow:0 0 0 22px rgba(255,255,255,.04),0 0 0 44px rgba(255,255,255,.03)}.purpose-card__mark{position:relative;z-index:1;width:46px;height:46px;border:1px solid rgba(255,255,255,.4);display:grid;place-items:center;font:700 1.25rem "Playfair Display",serif;color:var(--accent-2)}.purpose-card h3{position:relative;z-index:1;font:600 1.5rem/1.33 "Playfair Display",Georgia,serif;margin:25px 0 29px}.purpose-card dl{position:relative;z-index:1;margin:0}.purpose-card dl>div{padding:16px 0;border-top:1px solid rgba(255,255,255,.15)}.purpose-card dt{font:500 .64rem "DM Mono",monospace;letter-spacing:.13em;text-transform:uppercase;color:var(--accent-2);margin-bottom:6px}.purpose-card dd{margin:0;color:#d0dcec;font-size:.79rem;line-height:1.55}.section--services{background:var(--paper)}.section-heading{display:flex;justify-content:space-between;align-items:end;gap:42px;margin-bottom:46px}.section-heading h2{max-width:590px;margin-bottom:0}.section-heading>p{max-width:350px;margin:0;color:var(--muted);font-size:.94rem}.services-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}.service-card{background:#fff;padding:28px 25px 25px;min-height:325px;display:flex;flex-direction:column;border:1px solid rgba(14,43,85,.04);transition:transform .22s,box-shadow .22s,border .22s}.service-card:hover{transform:translateY(-7px);box-shadow:var(--shadow);border-color:rgba(14,43,85,.14)}.service-card__number{font:500 .62rem "DM Mono",monospace;letter-spacing:.09em;color:#94a1b2}.service-card__icon{color:var(--accent);font-size:2rem;margin:29px 0 20px;line-height:.8}.service-card h3{font-size:1.08rem;line-height:1.27;letter-spacing:-.025em;margin:0 0 13px}.service-card p{font-size:.82rem;color:var(--muted);margin:0;line-height:1.6}.service-link{margin-top:auto;display:flex;align-items:center;justify-content:space-between;padding:19px 0 0;border:0;background:transparent;color:var(--navy);font-size:.75rem;font-weight:800;text-align:left;cursor:pointer}.service-link span{font-size:1.17rem;color:var(--accent)}.method{background:var(--navy);color:#fff;position:relative;overflow:hidden}.method:after{content:"";position:absolute;inset:0;pointer-events:none;background:radial-gradient(circle at 10% 50%,rgba(29,81,145,.5),transparent 25%),linear-gradient(90deg,rgba(255,255,255,.04) 1px,transparent 1px);background-size:auto,72px 72px;opacity:.46}.method__layout{position:relative;z-index:1;display:grid;grid-template-columns:.9fr 1.1fr;gap:98px;align-items:center}.method__media{position:relative;height:560px;padding:32px 0 0 32px}.method__media-accent{position:absolute;top:0;left:0;width:68%;height:80%;border:1px solid rgba(237,172,68,.9)}.method__media img{position:relative;width:86%;height:89%;object-fit:cover;display:block;filter:saturate(.85) contrast(1.04)}.method__measure{position:absolute;right:0;bottom:0;width:210px;background:#fff;color:var(--navy);padding:20px 22px}.method__measure span{display:block;font:500 .57rem/1.4 "DM Mono",monospace;letter-spacing:.12em}.method__measure strong{display:block;font:700 3.2rem/.92 "Playfair Display",Georgia,serif;color:var(--accent);margin:8px 0}.method__content .eyebrow{color:#b5c6dd}.method h2{margin-top:17px}.method__content>p{color:#b9c8dd;max-width:570px;margin:0 0 28px}.method-steps{padding:0;margin:0;list-style:none}.method-steps li{display:flex;gap:20px;padding:17px 0;border-top:1px solid rgba(255,255,255,.16)}.method-steps li:last-child{border-bottom:1px solid rgba(255,255,255,.16)}.method-steps li>span{font:500 .68rem "DM Mono",monospace;color:var(--accent-2);padding-top:3px}.method-steps h3{font-size:.97rem;margin:0 0 4px}.method-steps p{margin:0;color:#a9bad1;font-size:.79rem}.section--projects{background:#fff}.section-heading--projects{align-items:center}.project-mosaic{display:grid;grid-template-columns:1.12fr .88fr .88fr;grid-template-rows:260px 260px;gap:14px}.project-tile{position:relative;overflow:hidden;border:0;padding:0;background:#000;cursor:pointer;min-height:0;text-align:left}.project-tile--hero{grid-row:span 2}.project-tile--wide{grid-column:span 2}.project-tile img{width:100%;height:100%;display:block;object-fit:cover;transition:transform .5s,opacity .35s;opacity:.92}.project-tile:hover img{transform:scale(1.06);opacity:1}.project-tile__overlay{position:absolute;inset:0;padding:21px;display:flex;flex-direction:column;justify-content:end;background:linear-gradient(to top,rgba(2,10,23,.9),rgba(2,10,23,0) 65%);color:#fff}.project-tile__overlay strong{font-size:1rem;line-height:1.3;max-width:220px}.project-tile__overlay small{font-size:.68rem;color:#d8e0ec;margin-top:4px}.project-tile__overlay i{position:absolute;right:20px;bottom:20px;font-style:normal;color:var(--accent-2);font-size:1.3rem}.credibility{background:#e8eef6;padding:79px 0}.credibility__inner{display:grid;grid-template-columns:.92fr 1.08fr;gap:80px;align-items:start}.credibility h2{font-size:clamp(1.9rem,3vw,3rem);margin-bottom:0}.credibility__items{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.credibility__item{padding:0 15px;border-left:2px solid var(--accent)}.credibility__item strong{display:block;font-size:.92rem;color:var(--navy);margin-bottom:7px}.credibility__item span{font-size:.74rem;color:#5a6c82;line-height:1.54;display:block}.contact{background:var(--navy);color:#fff;position:relative;overflow:hidden}.contact:after{content:"";position:absolute;width:540px;height:540px;right:-200px;bottom:-290px;border-radius:50%;border:1px solid rgba(255,255,255,.1);box-shadow:0 0 0 58px rgba(255,255,255,.03),0 0 0 116px rgba(255,255,255,.025)}.contact__layout{position:relative;z-index:1;display:grid;grid-template-columns:1fr .86fr;gap:100px;align-items:start}.contact h2{max-width:620px}.contact__copy>p{margin:0;color:#b9c8dd;max-width:550px}.contact__channels{margin-top:35px;display:grid;gap:12px}.contact__channels>a,.contact__channels>div{display:flex;align-items:center;gap:13px}.contact__channel-icon{width:39px;height:39px;display:grid;place-items:center;border:1px solid rgba(255,255,255,.23);color:var(--accent-2);font-size:1.12rem}.contact__channels small{display:block;font:500 .59rem "DM Mono",monospace;letter-spacing:.1em;text-transform:uppercase;color:#aabbd2;margin-bottom:3px}.contact__channels strong{font-size:.86rem}.contact-form{background:#fff;padding:30px;color:var(--ink);box-shadow:0 20px 50px rgba(0,0,0,.18)}.form-heading{padding-bottom:19px;border-bottom:1px solid var(--line);margin-bottom:17px}.form-heading span{display:block;font:500 .6rem "DM Mono",monospace;letter-spacing:.13em;color:#718198;margin-bottom:5px}.form-heading strong{font-size:1.18rem;letter-spacing:-.025em}.contact-form label,.quote-form label{display:block;font-size:.68rem;font-weight:800;letter-spacing:.04em;color:#334256;margin-top:13px}.contact-form input,.contact-form textarea,.contact-form select,.quote-form input,.quote-form textarea,.quote-form select{display:block;width:100%;margin-top:6px;border:1px solid #d6dee8;border-radius:3px;background:#fbfcfe;color:var(--ink);font-size:.82rem;padding:10px 11px;outline:none;transition:border .2s,box-shadow .2s}.contact-form input:focus,.contact-form textarea:focus,.contact-form select:focus,.quote-form input:focus,.quote-form textarea:focus,.quote-form select:focus{border-color:#4576af;box-shadow:0 0 0 3px rgba(69,118,175,.13)}.contact-form textarea,.quote-form textarea{resize:vertical;min-height:90px}.contact-form .button{margin-top:19px}.form-note{font-size:.64rem;color:#78869a;text-align:center;line-height:1.45;margin:10px 0 0}.site-footer{background:#071832;color:#d5e0ee}.footer__top{display:grid;grid-template-columns:1.4fr .7fr .85fr;gap:45px;padding:53px 0 36px}.footer__brand img{width:185px;display:block;margin-bottom:14px}.footer__brand p{max-width:320px;font-size:.76rem;color:#a9bad0;margin:0}.footer__nav{display:flex;flex-direction:column;gap:8px;font-size:.77rem;color:#b9c9dc}.footer__nav strong{color:#fff;font-size:.72rem;margin-bottom:4px}.footer__nav a:hover{text-decoration:underline}.footer__bottom{border-top:1px solid rgba(255,255,255,.12);padding:17px 0;display:flex;justify-content:space-between;gap:20px;font-size:.66rem;color:#8da0b8}.back-to-top{position:fixed;right:22px;bottom:22px;width:43px;height:43px;border:0;border-radius:50%;background:var(--accent);color:var(--navy);font-size:1.3rem;cursor:pointer;box-shadow:0 7px 18px rgba(0,0,0,.2);opacity:0;visibility:hidden;transform:translateY(10px);transition:.22s;z-index:50}.back-to-top.is-visible{opacity:1;visibility:visible;transform:translateY(0)}dialog{border:0;padding:0;background:transparent;max-width:none;max-height:none}.quote-modal::backdrop,.gallery-modal::backdrop{background:rgba(3,13,30,.76);backdrop-filter:blur(4px)}.quote-modal__shell{position:relative;width:min(670px,calc(100vw - 30px));display:grid;grid-template-columns:.82fr 1.18fr;background:#fff;box-shadow:0 20px 80px rgba(0,0,0,.35)}.quote-modal__intro{background:var(--navy);color:#fff;padding:37px 29px}.quote-modal__intro span{font:500 .6rem "DM Mono",monospace;letter-spacing:.15em;color:var(--accent-2)}.quote-modal__intro h2{font-size:2rem;line-height:1.03;letter-spacing:-.05em;margin:18px 0}.quote-modal__intro p{color:#b9c8dd;font-size:.78rem;margin:0}.quote-form{padding:30px}.quote-form .button{margin-top:18px}.modal-close{position:absolute;z-index:3;right:11px;top:11px;width:35px;height:35px;border:0;border-radius:50%;background:#eef3f8;color:var(--navy);font-size:1.6rem;line-height:1;cursor:pointer}.modal-close--light{background:rgba(255,255,255,.14);color:#fff}.gallery-modal__shell{width:min(1100px,calc(100vw - 24px));height:min(760px,calc(100vh - 24px));display:grid;place-items:center;position:relative}.gallery-modal figure{display:flex;flex-direction:column;align-items:center;max-height:100%;margin:0}.gallery-modal figure img{max-width:100%;max-height:calc(100vh - 110px);object-fit:contain;box-shadow:0 20px 60px rgba(0,0,0,.4)}.gallery-modal figcaption{width:100%;display:flex;justify-content:space-between;gap:20px;color:#fff;padding:14px 0 0}.gallery-modal figcaption span{font:500 .6rem "DM Mono",monospace;letter-spacing:.12em;color:#aebed4}.gallery-modal figcaption strong{font-size:.82rem}.gallery-nav{position:absolute;top:50%;z-index:2;width:46px;height:46px;border:1px solid rgba(255,255,255,.35);border-radius:50%;background:rgba(0,0,0,.25);color:#fff;font-size:2.2rem;line-height:1;cursor:pointer;transform:translateY(-50%)}.gallery-nav--prev{left:15px}.gallery-nav--next{right:15px}.reveal{opacity:0;transform:translateY(18px);transition:opacity .65s ease,transform .65s ease}.reveal.is-visible{opacity:1;transform:none}.reveal--delay{transition-delay:.16s}.reveal--delay-sm{transition-delay:.08s}.reveal--delay-md{transition-delay:.16s}.reveal--delay-lg{transition-delay:.24s}
@media (max-width:980px){.site-nav{gap:16px}.hero__layout{gap:35px}.hero__visual{min-height:460px}.picture-card--large{height:450px}.hero__badge{right:285px}.about-grid,.method__layout,.contact__layout{gap:50px}.services-grid{grid-template-columns:repeat(2,1fr)}.service-card{min-height:275px}.credibility__inner{gap:45px}.footer__top{grid-template-columns:1.25fr .8fr .9fr}}
@media (max-width:760px){:root{--container:min(100% - 34px,1160px)}.topbar{display:none}.site-header{background:var(--navy)}.nav-wrap{min-height:70px}.brand{width:60px}.nav-toggle{display:block}.site-nav{position:absolute;top:70px;left:0;right:0;background:#0d2c58;padding:20px var(--container) 25px;display:none;align-items:flex-start;flex-direction:column;gap:5px;box-shadow:0 16px 25px rgba(0,0,0,.2)}.site-nav.is-open{display:flex}.site-nav .button{margin-top:10px}.site-nav>a{padding:10px 0}.hero{padding:70px 0 58px;min-height:auto}.hero__layout,.about-grid,.method__layout,.contact__layout,.credibility__inner{grid-template-columns:1fr}.hero__layout{gap:45px}.hero h1{font-size:clamp(3rem,13.5vw,4.8rem)}.hero__facts{margin-top:42px;gap:15px}.hero__visual{min-height:405px}.picture-card--large{height:400px;max-width:84%;margin-left:auto}.hero__badge{right:auto;left:0;top:12px;width:105px;height:105px}.hero__mini-card{left:0;bottom:-10px;width:235px}.hero__scroll{display:none}.section{padding:76px 0}.section-heading{display:block;margin-bottom:30px}.section-heading>p{margin-top:14px}.services-grid{grid-template-columns:1fr}.service-card{min-height:0;padding:24px}.method__layout{gap:40px}.method__media{height:430px;padding:22px 0 0 22px}.method__measure{width:170px;padding:14px}.method__measure strong{font-size:2.4rem}.project-mosaic{grid-template-columns:1fr 1fr;grid-template-rows:220px 180px 180px}.project-tile--hero{grid-row:span 2}.project-tile--wide{grid-column:span 2}.credibility__items{grid-template-columns:1fr;gap:20px}.contact__layout{gap:44px}.footer__top{grid-template-columns:1fr 1fr;gap:28px}.footer__brand{grid-column:span 2}.footer__bottom{display:block;line-height:1.6}.footer__bottom span:last-child{display:block;margin-top:3px}.quote-modal__shell{grid-template-columns:1fr;max-height:calc(100vh - 24px);overflow:auto}.quote-modal__intro{padding:25px 26px}.quote-modal__intro h2{font-size:1.65rem;margin:11px 0}.quote-form{padding:25px}.gallery-nav{width:37px;height:37px;font-size:1.7rem}.gallery-nav--prev{left:0}.gallery-nav--next{right:0}}
@media (max-width:430px){.hero__facts{display:grid;grid-template-columns:1fr}.hero__facts>div{max-width:270px}.hero__visual{min-height:385px}.picture-card--large{height:365px;max-width:87%}.hero__mini-card{width:215px}.contact-form{padding:23px}.footer__top{grid-template-columns:1fr}.footer__brand{grid-column:span 1}.project-mosaic{grid-template-columns:1fr 1fr;grid-template-rows:200px 160px 160px}.section-heading h2,.about-copy h2,.method h2,.contact h2{font-size:2.35rem}}

/* Canais corporativos */
.button--ghost{background:transparent;color:var(--navy);border-color:#b9c7d7}.button--ghost:hover{background:#eef3f8;color:var(--navy);border-color:#8ea6bf}.contact-inline-link{color:var(--accent-2);font-weight:800;text-decoration:underline;text-underline-offset:3px}.contact__email-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:25px;max-width:620px}.contact__email-card{min-height:123px;display:flex;flex-direction:column;padding:16px 16px 14px;border:1px solid rgba(255,255,255,.16);background:rgba(255,255,255,.035);transition:background .2s,border-color .2s,transform .2s}.contact__email-card:hover{background:rgba(255,255,255,.09);border-color:rgba(242,183,83,.68);transform:translateY(-2px)}.contact__email-card--primary{border-color:rgba(242,183,83,.56);background:rgba(223,148,39,.08)}.contact__email-card span{font:500 .58rem "DM Mono",monospace;letter-spacing:.11em;text-transform:uppercase;color:var(--accent-2);margin-bottom:7px}.contact__email-card strong{font-size:.79rem;line-height:1.35;word-break:break-word}.contact__email-card small{display:block;color:#b8c7da;font-size:.67rem;line-height:1.42;margin-top:auto;padding-top:8px}.form-actions{display:grid;gap:10px;margin-top:19px}.contact-form .form-actions .button,.quote-form .form-actions .button{margin-top:0}.form-note a{color:#405e85;text-decoration:underline;text-underline-offset:2px}.quote-form .form-note{margin-bottom:0}.footer__top{grid-template-columns:1.2fr .63fr .95fr .87fr}.footer__nav a{overflow-wrap:anywhere}
@media (max-width:980px){.footer__top{grid-template-columns:1.15fr .67fr .9fr .88fr}.contact__email-grid{max-width:none}}
@media (max-width:760px){.contact__email-grid{grid-template-columns:1fr 1fr}.footer__top{grid-template-columns:1fr 1fr}.footer__brand{grid-column:span 2}}
@media (max-width:430px){.contact__email-grid{grid-template-columns:1fr}.contact__email-card{min-height:104px}}

/* Navegação móvel: painel alinhado ao ecrã e botão animado */
html, body {
  max-width: 100%;
  overflow-x: clip;
}

.nav-toggle {
  position: relative;
  display: none;
  align-items: center;
  justify-content: center;
  width: 44px;
  height: 44px;
  padding: 0;
  border: 0;
  background: transparent;
  cursor: pointer;
}

.nav-toggle:focus-visible {
  outline: 2px solid var(--accent-2);
  outline-offset: 3px;
}

.nav-toggle .nav-toggle__line {
  position: absolute;
  width: 24px;
  height: 2px;
  margin: 0;
  border-radius: 999px;
  background: #fff;
  transition: transform .24s ease, opacity .18s ease, background .18s ease;
}

.nav-toggle__line--top {
  transform: translateY(-8px);
}

.nav-toggle__line--middle {
  transform: translateY(0);
}

.nav-toggle__line--bottom {
  transform: translateY(8px);
}

.nav-toggle[aria-expanded="true"] .nav-toggle__line--top {
  transform: rotate(45deg);
}

.nav-toggle[aria-expanded="true"] .nav-toggle__line--middle {
  opacity: 0;
  transform: scaleX(.55);
}

.nav-toggle[aria-expanded="true"] .nav-toggle__line--bottom {
  transform: rotate(-45deg);
}

@media (max-width: 760px) {
  .nav-wrap {
    min-height: 70px;
    gap: 16px;
  }

  .nav-toggle {
    display: inline-flex;
    flex: 0 0 44px;
  }

  .site-nav {
    position: absolute;
    z-index: 120;
    top: 100%;
    right: 0;
    left: 0;
    display: flex;
    width: 100%;
    max-height: calc(100vh - 70px);
    max-height: calc(100dvh - 70px);
    padding: 16px 17px 22px;
    gap: 0;
    overflow-y: auto;
    background: #0d2c58;
    border-top: 1px solid rgba(255, 255, 255, .12);
    box-shadow: 0 18px 30px rgba(0, 0, 0, .24);
    opacity: 0;
    visibility: hidden;
    pointer-events: none;
    transform: translateY(-10px);
    transform-origin: top center;
    transition: opacity .2s ease, transform .24s ease, visibility 0s linear .24s;
  }

  .site-nav.is-open {
    display: flex;
    align-items: stretch;
    opacity: 1;
    visibility: visible;
    pointer-events: auto;
    transform: translateY(0);
    transition: opacity .2s ease, transform .24s ease, visibility 0s;
  }

  .site-nav > a {
    display: block;
    width: 100%;
    padding: 13px 0;
    border-bottom: 1px solid rgba(255, 255, 255, .10);
  }

  .site-nav > a::after {
    bottom: 7px;
  }

  .site-nav .button {
    width: 100%;
    margin-top: 16px;
  }
}

/* Interações adicionadas */
.contact__email-card {
  position: relative;
  gap: 12px;
}

.contact__email-card a {
  display: flex;
  flex: 1;
  flex-direction: column;
  min-width: 0;
}

.contact__email-card button {
  align-self: flex-start;
  border: 1px solid rgba(242, 183, 83, .42);
  border-radius: 3px;
  padding: 6px 10px;
  background: rgba(242, 183, 83, .08);
  color: #f3c66f;
  cursor: pointer;
  font-size: .66rem;
  font-weight: 800;
  line-height: 1;
  transition: background .2s, border-color .2s, color .2s;
}

.contact__email-card button:hover,
.contact__email-card button:focus-visible {
  border-color: rgba(242, 183, 83, .88);
  background: rgba(242, 183, 83, .18);
  color: #fff;
}

.form-status {
  min-height: 18px;
  margin: 8px 0 0;
  color: #315c2f;
  font-size: .68rem;
  font-weight: 800;
  text-align: center;
  opacity: 0;
  transform: translateY(4px);
  transition: opacity .2s ease, transform .2s ease;
}

.form-status.is-visible {
  opacity: 1;
  transform: none;
}

.quote-form .form-status {
  margin-bottom: 0;
}

.whatsapp-float {
  position: fixed;
  right: 22px;
  bottom: 76px;
  z-index: 50;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 104px;
  height: 43px;
  padding: 0 15px;
  border-radius: 999px;
  background: #1f8f55;
  color: #fff;
  box-shadow: 0 8px 22px rgba(0, 0, 0, .22);
  font-size: .75rem;
  font-weight: 900;
  transition: transform .2s, background .2s;
}

.whatsapp-float:hover {
  transform: translateY(-2px);
  background: #24a563;
}

@media (max-width: 430px) {
  .whatsapp-float {
    right: 16px;
    bottom: 70px;
    min-width: 94px;
    height: 40px;
  }
}
