@import "https://fonts.googleapis.com/css2?family=Playfair+Display:wght@400;600;700&family=Montserrat:wght@400;500;600;700;800&family=Lato:wght@300;400;700&display=swap";:root{--fundo-creme:#fff8f0;--branco:#fff;--dourado:#ffb354;--azul:#ffcf85;--escuro:#2a1a10;--degrade:linear-gradient(90deg,#eeb659,#d9a24a);--black:var(--escuro);--brown:var(--escuro);--gold:var(--dourado);--gold-light:var(--dourado);--warm:var(--fundo-creme);--beige:var(--branco);--grey:#798385;--ink:var(--escuro);--muted:#606b6d;--line:#2a1a1033;--radius:16px;--radius-sm:10px;--shadow-card:0 12px 30px #2a1a101f;--shadow-card-hover:0 18px 40px #2a1a1029;--font-serif:'Playfair Display',serif;--font-sans:'Montserrat',Arial,sans-serif;--font-body:'Lato',Arial,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth}body{background:var(--warm);color:var(--ink);text-rendering:optimizelegibility;margin:0;font-family:var(--font-body);font-size:16px}a{color:inherit;text-decoration:none}img{max-width:100%;display:block}button,input,select,textarea{font:inherit}main{overflow:hidden}h1,h2,h3,p{overflow-wrap:break-word}h1,h2,h3{font-family:var(--font-serif)}:focus-visible{outline:3px solid var(--gold-light);outline-offset:4px}.eyebrow{color:var(--gold-light);font-family:var(--font-sans);letter-spacing:.16em;text-transform:uppercase;margin:0;font-size:.72rem;font-weight:800;line-height:1.3}.eyebrow.dark{color:#805a18}.section-head{max-width:1000px;margin-bottom:clamp(3rem,6vw,6rem)}.section-head h2,.section h2,.process h2,.coverage h2,.experience h2,.contact-section h2{letter-spacing:-.055em;margin:1rem 0 0;font-size:clamp(3rem,5.8vw,6.2rem);font-weight:700;line-height:.93}.section{padding:clamp(5rem,9vw,10rem) max(5vw,1.25rem)}.site-header{z-index:39;color:#fff;background:#100d0bf5;border-bottom:1px solid #e8c77d59;align-items:center;height:104px;padding:0 max(3vw,1rem);transition:height .3s,background .3s;display:flex;position:absolute;inset:0 0 auto}.site-header.is-scrolled{background:#100d0bfa;height:76px;position:fixed;inset:0 0 auto;box-shadow:0 10px 30px #00000029}.brand{place-items:center;width:190px;height:100%;display:grid;overflow:hidden}.brand img{object-fit:contain;width:168px;max-width:none;height:168px;transition:all .3s}.site-header.is-scrolled .brand img{width:132px;height:132px}.site-header nav{letter-spacing:.07em;text-transform:uppercase;align-items:center;gap:clamp(1rem,2vw,2.15rem);height:100%;margin-left:0;font-size:.74rem;font-weight:700;display:flex;position:absolute;top:0;left:50%;transform:translateX(-50%)}
.site-header>.language-switcher{margin-left:auto}.site-header nav a{align-items:center;height:100%;display:flex;position:relative}.site-header nav a:after{content:"";background:var(--gold);height:2px;transition:right .25s;position:absolute;bottom:0;left:0;right:100%}.site-header nav a:hover:after,.site-header nav a.active:after{right:0}.language-switcher{color:#948c85;align-items:center;margin-left:1.6rem;font-size:.72rem;font-weight:800;display:flex}.language-switcher button{min-width:36px;min-height:44px;color:inherit;cursor:pointer;background:0 0;border:0}.language-switcher button.active{color:var(--gold-light)}.button{border:1px solid var(--gold);min-height:52px;color:var(--black);background:var(--gold);letter-spacing:.07em;text-transform:uppercase;border-radius:6px;justify-content:center;align-items:center;padding:0 1.5rem;font-size:.74rem;font-weight:800;transition:background .2s,color .2s,transform .2s,box-shadow .2s;display:inline-flex}.button:hover{background:var(--gold-light);transform:translateY(-2px);box-shadow:var(--shadow-card)}.button b{margin-left:.75rem}.button-small{min-height:46px;margin-left:1.25rem;padding:0 1.1rem}.button-dark{color:#fff;background:var(--black);border-color:var(--black)}.button-outline-dark{color:var(--black);border-color:var(--black);background:0 0}.actions{flex-wrap:wrap;align-items:center;gap:.75rem;display:flex}.text-link{color:#805a18;text-transform:uppercase;letter-spacing:.06em;align-items:center;gap:.65rem;margin-top:1.6rem;font-size:.78rem;font-weight:800;display:inline-flex}.mobile-menu{margin-left:auto;display:none}.mobile-menu summary{color:#fff;text-transform:uppercase;border:1px solid #e8c77d8c;align-items:center;gap:1rem;min-height:44px;padding:0 1rem;font-size:.72rem;list-style:none;display:flex}.mobile-menu summary::-webkit-details-marker{display:none}.mobile-menu summary i{color:var(--gold);font-size:1.4rem;font-style:normal}.mobile-menu>div{color:#fff;background:var(--black);padding:2.5rem 1.25rem;position:fixed;inset:112px 0 0}.mobile-menu>div>a{border-bottom:1px solid #ffffff21;align-items:center;min-height:64px;font-family:var(--font-sans);font-size:1.55rem;font-weight:600;display:flex}.mobile-menu>div>a.active{color:var(--gold-light)}.mobile-menu .language-switcher{margin:2rem 0 0}.mobile-contact{color:var(--grey);flex-direction:column;gap:.75rem;margin-top:2rem;font-size:.9rem;display:flex}.hero{color:#fff;background-color:var(--black);flex-direction:column;justify-content:flex-end;min-height:100svh;padding:clamp(11rem,16vw,14rem) max(5vw,1.25rem) 0;display:flex;position:relative}.hero-background{background-image:linear-gradient(90deg,#100d0bfa 0%,#100d0bde 39%,#100d0b52 68%,#100d0b14),url(assets/hero-inicio.jpg);background-position:50%;background-size:cover}.hero-grid{grid-template-columns:minmax(0,1fr) 260px;align-items:end;gap:3rem;margin:auto 0;display:grid}.hero-content{max-width:980px}.hero h1{letter-spacing:-.07em;margin:1.6rem 0 2rem;font-size:clamp(4rem,8vw,8.5rem);font-weight:700;line-height:.89}.hero h1 .line{display:block;overflow:hidden}.hero h1 i{font-style:normal;animation:.95s cubic-bezier(.2,.8,.2,1) both heroReveal;display:block}.hero h1 .gold i{color:var(--gold-light);animation-delay:.11s}@keyframes heroReveal{0%{transform:translateY(110%)}}.hero .lead{border-left:2px solid var(--gold);color:#d8d1cb;max-width:630px;margin:0 0 2rem;padding-left:1.4rem;font-size:clamp(1rem,1.35vw,1.2rem);line-height:1.65}.hero-mark{text-align:right;border-left:1px solid #fff3;align-self:end;padding:1.5rem}.hero-mark span,.hero-mark small{display:block}.hero-mark span{color:#ffffff38;font-family:var(--font-sans);font-size:4rem;font-weight:800}.hero-mark small{color:var(--gold-light);letter-spacing:.15em;text-transform:uppercase;font-size:.65rem}.hero-index{border-top:1px solid #fff3;grid-template-columns:repeat(4,1fr);margin-top:clamp(4rem,7vw,7rem);display:grid}.hero-index article{border-right:1px solid #ffffff29;gap:1.2rem;min-height:108px;padding:1.55rem 1.4rem;display:flex}.hero-index article:first-child{padding-left:0}.hero-index article:last-child{border-right:0}.hero-index b{color:var(--gold);font-size:.7rem}.hero-index strong,.hero-index small{display:block}.hero-index small{color:#aaa19a;margin-top:.45rem;font-size:.7rem;line-height:1.4}.intro{background:var(--warm);grid-template-columns:1.3fr .7fr;gap:10vw;display:grid;position:relative}.intro:after{content:"G";color:#d1a34d1a;pointer-events:none;font-family:var(--font-sans);font-size:28vw;font-weight:800;line-height:1;position:absolute;bottom:-8vw;right:-2vw}.intro>*,.prose{z-index:1;position:relative}.intro h2{max-width:900px}.prose{max-width:620px;color:var(--muted);align-self:end;font-size:1.08rem;line-height:1.75}.prose p{margin:0 0 1.2rem}.notice{max-width:780px;color:var(--muted);margin:2rem 0 0;font-size:.83rem}.process{background:var(--warm);padding:clamp(5rem,9vw,10rem) max(5vw,1.25rem)}.steps{grid-template-columns:repeat(4,1fr);gap:1.5rem;display:grid;position:relative}.steps:before{content:"";background:linear-gradient(90deg,var(--gold),var(--gold) 75%,var(--line) 75%);height:2px;position:absolute;top:0;left:0;right:0}.steps article{background:#fff;border:1px solid var(--line);border-radius:var(--radius);min-height:250px;padding:2.2rem;transition:transform .3s,box-shadow .3s}.steps article:hover{transform:translateY(-6px);box-shadow:var(--shadow-card-hover)}.steps b{color:#805a18;font-size:.72rem}.steps h3{margin:4rem 0 1rem;font-size:1.8rem}.steps p{color:var(--muted);margin:0;font-size:.92rem;line-height:1.7}.coverage{background:#fff;grid-template-columns:1fr 1fr;gap:8vw;padding:clamp(5rem,9vw,10rem) max(5vw,1.25rem);display:grid}.coverage>div:first-child{align-self:center}.coverage h2{max-width:760px}.coverage p:not(.eyebrow){max-width:680px;color:var(--muted);font-size:1.05rem;line-height:1.75}.coverage small{color:#805a18;margin-top:2rem;display:block}.angola-map{background:var(--black);clip-path:polygon(19% 0,73% 4%,100% 24%,88% 54%,68% 99%,34% 91%,9% 61%,0 29%);place-items:center;min-height:520px;display:grid;position:relative}.angola-map span{color:#ffffff17;font-family:var(--font-sans);font-size:clamp(3rem,7vw,7rem);font-weight:800;transform:rotate(-8deg)}.angola-map i{color:var(--gold-light);font-size:.75rem;font-style:normal;position:absolute;top:53%;left:46%}.angola-map i:before{content:"";border:3px solid var(--gold-light);border-radius:50%;width:12px;height:12px;margin-right:.5rem;display:inline-block;box-shadow:0 0 0 7px #d1a34d2b}.page-hero{color:#fff;background-color:var(--black);background-position:50%;background-size:cover;flex-direction:column;justify-content:flex-end;min-height:680px;padding:14rem max(5vw,1.25rem) 5rem;display:flex;position:relative}.page-hero:before{content:"";background:linear-gradient(90deg,#100d0bf5,#100d0bb8 55%,#100d0b33);position:absolute;inset:0}.page-hero>*{z-index:1;position:relative}.page-hero h1{letter-spacing:-.06em;max-width:1100px;margin:1.2rem 0 0;font-size:clamp(3.2rem,7vw,7.2rem);font-weight:700;line-height:.92}.principles{background:var(--warm);grid-template-columns:repeat(3,1fr);gap:1.5rem;padding:0 max(5vw,1.25rem) 8rem;display:grid}.principles article{background:#fff;border:1px solid var(--line);border-radius:var(--radius);min-height:290px;padding:2.2rem;transition:transform .3s,box-shadow .3s}.principles article:hover{transform:translateY(-6px);box-shadow:var(--shadow-card)}.principles b{color:#805a18;font-size:.72rem}.principles h3{margin:4rem 0 1rem;font-size:2rem}.principles p{color:var(--muted);line-height:1.7}.experience{color:#fff;background:var(--black);padding:8rem max(5vw,1.25rem)}.experience>p{color:#aaa29c;align-self:center;font-size:1.05rem;line-height:1.8}.experience .split-text{max-width:800px}.shade{color:#fff;background:var(--black)}.service-grid{grid-template-columns:repeat(2,1fr);gap:1.5rem;display:grid}.service-card{background:#ffffff0d;border:1px solid #ffffff1f;border-radius:var(--radius);flex-direction:column;min-height:360px;padding:2.3rem;display:flex}.service-card>span{color:var(--gold);font-size:.75rem}.service-card h3{margin:4rem 0 1rem;font-size:2rem}.service-card p{color:#aaa29c;max-width:600px;line-height:1.7}.service-card a{color:var(--gold-light);text-transform:uppercase;margin-top:auto;font-size:.75rem;font-weight:800}.navy{color:#fff;background:var(--brown)}.difference-grid{grid-template-columns:repeat(3,1fr);gap:1rem;display:grid}.difference-grid>div{background:#ffffff0d;border:1px solid #ffffff1f;border-radius:var(--radius-sm);align-items:center;gap:1rem;min-height:125px;padding:1.5rem;display:flex}.difference-grid span{color:var(--gold)}.sectors{background:var(--beige)}.sector-grid{grid-template-columns:repeat(2,1fr);gap:1rem;display:grid}.sector-grid>div{background:#fff;border:1px solid var(--line);border-radius:var(--radius-sm);align-items:center;gap:1.25rem;min-height:92px;padding:0 1.5rem;display:flex}.sector-grid b{color:#805a18;font-size:.72rem}.contact-section{background:var(--warm);grid-template-columns:.8fr 1.2fr;gap:8vw;padding:8rem max(5vw,1.25rem);display:grid}.contact-section>div:first-child>p{color:var(--muted);font-size:1rem;line-height:1.75}.hours{grid-template-columns:1fr 1fr;gap:1rem;margin-top:2rem;display:grid}.hours p{border-top:3px solid var(--gold);background:#fff;border-radius:0 var(--radius-sm) var(--radius-sm) var(--radius-sm);box-shadow:var(--shadow-card);padding:1.5rem}.contact-links{grid-template-columns:1fr 1fr;gap:1rem;display:grid}.contact-links>a,.contact-links>span{background:#fff;border:1px solid var(--line);border-radius:var(--radius-sm);flex-direction:column;justify-content:center;min-height:130px;padding:1.5rem;font-family:var(--font-sans);font-size:1.15rem;transition:transform .3s,box-shadow .3s,border-color .3s;display:flex}.contact-links>a:hover{background:#fff;border-color:#ffb354b3;transform:translateY(-4px);box-shadow:var(--shadow-card)}.contact-links small{color:#805a18;text-transform:uppercase;letter-spacing:.12em;margin-bottom:.8rem;font-family:var(--font-sans);font-size:.65rem}.contact-social{flex-wrap:wrap;gap:.7rem;margin-top:1.5rem;display:flex}.contact-social a{border:1px solid var(--line);padding:.8rem;font-size:.77rem;font-weight:700}.quote{background:var(--beige);grid-template-columns:.75fr 1.25fr;gap:7vw;display:grid}.privacy-note{border-left:3px solid var(--gold);color:var(--muted);background:#fff;margin-top:2rem;padding:1.2rem;line-height:1.65}form{background:#fff;grid-template-columns:1fr 1fr;gap:1.2rem;padding:2.2rem;display:grid}form label{color:#4c433d;flex-direction:column;gap:.6rem;font-size:.75rem;font-weight:800;display:flex}form input,form select,form textarea{background:#fff;color:var(--ink)!important;caret-color:var(--ink);border:1px solid #cabfb5;border-radius:8px;width:100%;min-height:50px;padding:.85rem}form textarea{resize:vertical}.wide{grid-column:1/-1}.consent{flex-direction:row;align-items:center}.consent input{width:auto;min-height:0}.honeypot{position:absolute!important;left:-9999px!important}.form-status{border-left:4px solid;padding:1rem}.form-success{background:#edf8f1;border-color:#2e7d4f}.form-status a{text-decoration:underline;font-weight:700}.wizard fieldset{border:0;grid-column:1/-1;grid-template-columns:1fr 1fr;gap:1.2rem;margin:0;padding:0;display:none}.wizard fieldset.active{display:grid}.wizard legend{border-bottom:1px solid var(--line);width:100%;margin-bottom:2rem;padding-bottom:1rem;font-family:var(--font-sans);font-size:1.6rem;font-weight:700}.wizard-progress{border-bottom:2px solid var(--beige);color:#805a18;text-transform:uppercase;padding-bottom:1rem;font-size:.72rem;font-weight:800;position:relative}.wizard-progress i{background:var(--gold);height:2px;transition:width .35s;position:absolute;bottom:-2px;left:0}.choices{grid-column:1/-1;grid-template-columns:1fr 1fr;gap:.7rem;display:grid}.choices label{display:block;position:relative}.choices input{opacity:0;position:absolute}.choices span{border:1px solid var(--line);border-radius:var(--radius-sm);cursor:pointer;align-items:center;min-height:58px;padding:.85rem 1rem;font-size:.83rem;transition:border-color .2s,background .2s;display:flex}.choices input:checked+span{border-color:var(--gold);background:#d1a34d24}.choices input:focus-visible+span{outline:3px solid var(--gold-light)}.wizard-actions{justify-content:space-between;gap:1rem;display:flex}.wizard-actions .button:only-child{margin-left:auto}.legal-page{background:var(--beige)}.legal-hero{background-image:linear-gradient(120deg,#100d0b,#493026);min-height:540px}.legal-hero>p:last-child{color:#c9c0ba;max-width:680px;margin:1.2rem 0 0}.legal-layout{grid-template-columns:260px minmax(0,850px);justify-content:center;gap:5vw;padding:7rem max(5vw,1.25rem);display:grid}.legal-layout aside{border-top:4px solid var(--gold);color:#fff;background:var(--black);align-self:start;padding:2rem;position:sticky;top:100px}.legal-layout aside span,.legal-layout aside strong{display:block}.legal-layout aside span{color:var(--gold);text-transform:uppercase;font-size:.65rem}.legal-layout aside strong{margin:.8rem 0;font-family:var(--font-sans);font-size:1.7rem}.legal-layout aside p{color:#aaa29c;font-size:.8rem;line-height:1.7}.legal-layout aside a{color:var(--gold-light);font-size:.75rem}.legal-layout>article{background:#fff;padding:3rem}.legal-intro{border-bottom:1px solid var(--line);margin:0 0 2rem;padding-bottom:2rem;font-size:1.05rem;line-height:1.75}.legal-block{border-bottom:1px solid var(--line);grid-template-columns:45px 1fr;gap:1.3rem;padding:2rem 0;display:grid}.legal-block>b{color:#805a18;font-size:.72rem}.legal-block h2{margin:0 0 .7rem;font-size:1.45rem}.legal-block p{color:var(--muted);margin:0;line-height:1.75}.legal-block a{color:#805a18;text-decoration:underline}.new-footer{color:#fff;background:var(--black)}.footer-statement{letter-spacing:-.055em;border-bottom:1px solid #ffffff2b;padding:4rem max(5vw,1.25rem);font-family:var(--font-sans);font-size:clamp(2.5rem,6vw,6rem);line-height:.9}.footer-statement p{margin:0}.footer-statement strong{color:var(--gold-light);display:block}.footer-main{grid-template-columns:1.4fr repeat(3,1fr);gap:4vw;padding:5rem max(5vw,1.25rem);display:grid}.footer-brand>a{width:210px;height:105px;display:block;overflow:hidden}.footer-brand img{object-fit:contain;width:210px;max-width:none;height:210px;transform:translateY(-52px)}.footer-brand p,.footer-column p{color:#aaa29c;max-width:370px;font-size:.82rem;line-height:1.7}.footer-column{flex-direction:column;align-items:flex-start;gap:.85rem;display:flex}.footer-column h3{color:var(--gold-light);letter-spacing:.13em;text-transform:uppercase;margin:0 0 1rem;font-size:.7rem}.footer-column a{font-size:.82rem}.footer-contact-item{align-items:flex-start;gap:.65rem;display:flex}.footer-contact-item svg{width:16px;height:16px;flex-shrink:0;margin-top:.2rem;fill:var(--dourado)}.footer-column p.footer-contact-item{color:#aaa29c}.social-links{gap:1rem;margin-top:1.5rem;display:flex}.social-links a{color:#d8d0cb;align-items:center;gap:.5rem;font-size:.75rem;display:flex}.social-links svg{width:18px;height:18px;fill:var(--gold-light)}.footer-bottom{color:#948c85;border-top:1px solid #ffffff2b;justify-content:space-between;gap:2rem;padding:1.5rem max(5vw,1.25rem);font-size:.68rem;display:flex}.footer-bottom>div{flex-wrap:wrap;gap:1.2rem;display:flex}.whatsapp{z-index:50;background:#25d366;border:2px solid #fff;border-radius:50%;place-items:center;width:58px;height:58px;display:grid;position:fixed;bottom:1.25rem;right:1.25rem;box-shadow:0 10px 30px #00000040}.whatsapp img{width:30px;height:30px}.scroll-effects-ready .reveal-item{opacity:0;transition:opacity .8s,transform .8s;transition-delay:var(--reveal-delay,0s);transform:translateY(42px)}.scroll-effects-ready .reveal-item.is-visible{opacity:1;transform:none}.scroll-effects-ready .reveal-item.reveal-instant{transition:none}.reveal-item.reveal-instant.is-visible .hero-index b,.reveal-item.reveal-instant.is-visible .steps b,.reveal-item.reveal-instant.is-visible .service-grid>*,.reveal-item.reveal-instant.is-visible .sector-grid>*,.reveal-item.reveal-instant.is-visible .difference-grid>*,.reveal-item.reveal-instant.is-visible .principles>*,.reveal-item.reveal-instant.is-visible .steps>*,.reveal-item.reveal-instant.is-visible .hero-index>*,.reveal-item.reveal-instant.is-visible .home-directory>div>*,.reveal-item.reveal-instant.is-visible .faq-list>*{animation:none!important;opacity:1!important;transform:none!important}@media (max-width:1100px){.site-header nav{display:none}.mobile-menu{display:block}.site-header>.language-switcher,.site-header>.button{display:none}.hero-grid{grid-template-columns:1fr}.hero-mark{display:none}.footer-main{grid-template-columns:1.2fr 1fr 1fr}.footer-column:last-child{grid-column:2/4}}@media (max-width:900px){.hero-index{grid-template-columns:1fr 1fr}.hero-index article:nth-child(2){border-right:0}.intro,.coverage,.experience,.contact-section,.quote{grid-template-columns:1fr}.steps{grid-template-columns:1fr 1fr}.principles{grid-template-columns:1fr}.principles article{min-height:0}.legal-layout{grid-template-columns:1fr}.legal-layout aside{position:static}.footer-main{grid-template-columns:1fr 1fr}.footer-brand,.footer-column:last-child{grid-column:1/-1}}@media (max-width:640px){.site-header{height:84px;inset:0 0 auto}.site-header.is-scrolled{height:70px}.brand{width:154px}.brand img{width:142px;height:142px}.mobile-menu>div{inset:84px 0 0}.hero{padding:9rem 1.25rem 0}.hero-background{background-image:linear-gradient(#100d0b2e 0%,#100d0b80 38%,#100d0bfa 70%),url(assets/hero-inicio.jpg);background-position:67% 0}.hero h1{font-size:clamp(2.75rem,14vw,4rem)}.hero .actions{flex-direction:column;align-items:stretch}.hero-index{margin-top:3rem}.hero-index article{gap:.6rem;min-height:105px;padding:1.2rem .8rem}.hero-index article:first-child{padding-left:.8rem}.hero-index small{font-size:.62rem}.section-head h2,.section h2,.process h2,.coverage h2,.experience h2,.contact-section h2{font-size:clamp(2.65rem,13vw,4rem)}.intro{gap:3rem}.steps{grid-template-columns:1fr}.steps:before{width:2px;height:auto;bottom:0;right:auto}.steps article{min-height:190px;padding:2rem}.steps h3{margin:2.2rem 0 .7rem}.angola-map{min-height:380px}.page-hero{min-height:560px;padding:10rem 1.25rem 4rem}.page-hero h1{font-size:clamp(2.8rem,13vw,4.6rem)}.service-grid,.difference-grid,.sector-grid,.hours,.contact-links,form{grid-template-columns:1fr}.service-card{min-height:300px}.legal-layout>article{padding:2rem 1.25rem}.legal-block,.footer-main{grid-template-columns:1fr}.footer-brand,.footer-column:last-child{grid-column:auto}.footer-bottom{flex-direction:column;align-items:flex-start;padding-bottom:6rem}.wide{grid-column:auto}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}.hero h1 i{animation:none}.scroll-effects-ready .reveal-item{opacity:1;transition:none;transform:none}.site-header{transition:none}}.site-header{border-bottom:2px solid #0000;border-image:var(--degrade) 1;background:#2a1a10f7}.site-header.is-scrolled{background:#2a1a10fc;box-shadow:0 10px 30px #2a1a1029}.button:hover{border-color:var(--azul);background:var(--azul)}.footer-statement strong{background:var(--degrade);color:#0000;-webkit-background-clip:text;background-clip:text}.site-header nav a:after,.wizard-progress i{background:var(--degrade)}.social-links svg{fill:var(--azul)}.hero-background{background-image:linear-gradient(90deg,#2a1a10fa 0%,#2a1a10e0 39%,#2a1a1057 68%,#2a1a1014),url(assets/hero-inicio.jpg)}.page-hero{background-position:50%;background-repeat:no-repeat}body.route-sobre .page-hero{background-image:url(assets/hero-sobre.jpg)}body.route-servicos .page-hero{background-image:url(assets/hero-servicos.jpg)}body.route-sectores .page-hero{background-image:url(assets/hero-sectores.jpg)}body.route-diferenciais .page-hero{background-image:url(assets/hero-diferenciais.jpg)}body.route-contactos .page-hero{background-image:url(assets/hero-contactos.jpg)}body.route-orcamento .page-hero{background-image:url(assets/hero-orcamento.jpg)}.angola-map,.new-footer{background-color:var(--escuro)}@media (max-width:640px){.hero-background{background-image:linear-gradient(#2a1a1024 0%,#2a1a1085 38%,#2a1a10fa 70%),url(assets/hero-inicio.jpg)}}.brand{place-items:center start;width:210px;overflow:visible}.brand img{object-fit:contain;object-position:left center;width:190px;max-width:100%;height:auto;max-height:88px;transition:all .3s;display:block}.site-header.is-scrolled .brand img{width:154px;height:auto;max-height:62px}.footer-brand>a{width:230px;height:auto;overflow:visible}.footer-brand img{object-fit:contain;width:230px;max-width:100%;height:auto;display:block;transform:none}.hero-background{background-position:top}.page-hero{background-position:top;justify-content:center;min-height:620px;padding:11rem max(5vw,1.25rem) 3rem}.page-hero h1{-webkit-user-select:none;user-select:none;max-width:980px;font-size:clamp(3rem,5.8vw,6rem);line-height:.96}.page-hero .eyebrow{-webkit-user-select:none;user-select:none}@media (max-width:640px){.brand{width:162px}.brand img{width:150px;height:auto;max-height:68px}.site-header.is-scrolled .brand img{width:132px;height:auto;max-height:56px}.hero-background{background-position:68% 0}.page-hero{background-position:65% 0;min-height:520px;padding:8.5rem 1.25rem 2.5rem}.page-hero h1{font-size:clamp(2.55rem,11.5vw,4rem)}}.home-intro{padding-block:clamp(5rem,8vw,8rem)}.home-directory{color:#fff;background:var(--escuro);padding:clamp(5rem,8vw,8rem) max(5vw,1.25rem)}.home-directory>header{grid-template-columns:.7fr 1.3fr;align-items:end;gap:5vw;margin-bottom:3rem;display:grid}.home-directory>header h2{letter-spacing:-.05em;max-width:820px;margin:0;font-size:clamp(2.6rem,5vw,5.2rem);line-height:.95}.home-directory>div{border-top:1px solid #fff3;border-left:1px solid #fff3;grid-template-columns:repeat(3,1fr);display:grid}.home-directory a{border-bottom:1px solid #fff3;border-right:1px solid #fff3;flex-direction:column;min-height:290px;padding:2rem;transition:background .25s,transform .25s;display:flex}.home-directory a:hover{background:#ffb35414;transform:translateY(-4px)}.home-directory a b{color:var(--dourado);font-size:.75rem}.home-directory h3{margin:3rem 0 1rem;font-size:clamp(1.7rem,2.5vw,2.4rem)}.home-directory a p{color:#c8cfd0;max-width:360px;margin:0;line-height:1.65}.home-directory a span{color:var(--dourado);text-transform:uppercase;letter-spacing:.06em;margin-top:auto;font-size:.78rem;font-weight:800}.home-coverage .actions{margin-top:2rem}.home-coverage .text-link{margin-top:0}@media (max-width:900px){.home-directory>header,.home-directory>div{grid-template-columns:1fr}.home-directory a{min-height:230px}}@media (max-width:640px){.home-directory>header h2{font-size:clamp(2.45rem,12vw,3.6rem)}.home-directory a{min-height:210px;padding:1.5rem}.home-directory h3{margin-top:2rem}}.angola-map{clip-path:none;background:radial-gradient(circle at 50% 48%,#ffcf851f,#0000 42%),linear-gradient(145deg,#323d40,#202729);border:1px solid #ffffff24;min-height:560px;display:block;position:relative;overflow:hidden}.angola-map:before{content:"";background-image:linear-gradient(#ffffff09 1px,#0000 1px),linear-gradient(90deg,#ffffff09 1px,#0000 1px);background-size:36px 36px;position:absolute;inset:0;-webkit-mask-image:linear-gradient(#000,#0000);mask-image:linear-gradient(#000,#0000)}.map-title{flex-direction:column;display:flex;position:absolute;top:2rem;left:2rem}.map-title strong{color:#fff;text-transform:uppercase;font-family:var(--font-sans);font-size:clamp(2rem,4vw,4rem);line-height:1}.map-title span,.map-huambo span{color:#c7d0d2;letter-spacing:.1em;text-transform:uppercase;font-size:.7rem}.map-huambo{border-left:3px solid var(--dourado);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#202729d1;flex-direction:column;gap:.3rem;padding:.8rem 1rem;display:flex;position:absolute;top:48%;left:64%}.map-huambo b{color:#fff;text-transform:uppercase;letter-spacing:.06em;font-size:.82rem}@media (max-width:640px){.angola-map{min-height:440px}.map-title{top:1.25rem;left:1.25rem}.map-huambo{padding:.65rem .8rem;top:50%;left:auto;right:1rem}}.language-switcher{margin-left:1.35rem;position:relative}.language-switcher label{display:block}.language-switcher select{color:#fff;cursor:pointer;background-color:#ffffff14;border:1px solid #ffb354bf;border-radius:24px;outline:none;min-width:124px;height:44px;padding:0 2.2rem 0 .9rem;font:700 .76rem var(--font-sans)}.language-switcher select:focus-visible{border-color:var(--azul);box-shadow:0 0 0 3px #ffcf8538}.language-switcher option{color:#202729;background:#fff}.angola-map{flex-direction:column;justify-content:center;align-items:center;padding:1.5rem;display:flex}.map-graphic{aspect-ratio:700/710;width:min(82%,410px);margin:1rem auto;position:relative}.map-graphic>img{object-fit:contain;opacity:.95;filter:sepia()saturate(2.2)hue-rotate(342deg)brightness(1.08);width:100%;height:100%;display:block}.map-point{background:var(--dourado);border:3px solid #fff;border-radius:50%;width:14px;height:14px;animation:2.2s ease-in-out infinite map-marker;position:absolute;top:61.83%;left:33.85%;transform:translate(-50%,-50%);box-shadow:0 0 0 9px #ffb35433}.map-huambo{top:56%;left:39%;right:auto}.map-title{z-index:2}@keyframes map-marker{50%{box-shadow:0 0 0 16px #ffb3540f}}@media (max-width:640px){.mobile-menu .language-switcher{width:100%}.language-switcher select{width:100%;min-width:0}.map-graphic{width:min(92%,350px);margin-top:2.4rem}.map-huambo{white-space:nowrap;top:54%;left:39%;right:auto}}@media (prefers-reduced-motion:reduce){.map-point{animation:none}}.language-switcher{margin-left:1rem}.language-switcher select{border-color:#ffb3549e;width:76px;min-width:76px;height:40px;padding:0 1.8rem 0 .75rem;font-size:.72rem}.hero-background{background-image:linear-gradient(90deg,#2a1a10e6 0%,#2a1a10b3 39%,#2a1a102e 68%,#2a1a1005),url(assets/hero-inicio.jpg);background-position:68% 72px;background-repeat:no-repeat;background-color:var(--escuro)}.page-hero{image-rendering:auto;background-position:50% 18%}.home-directory{color:var(--escuro);background:var(--fundo-creme)}.home-directory>div{border:0;gap:1rem}.home-directory a{border-radius:var(--radius);background:#fff;border:1px solid #2a1a1021;box-shadow:0 12px 34px #2a1a100f}.home-directory a:hover{background:#fff;border-color:#ffb354b3;box-shadow:0 18px 38px #2a1a101a}.home-directory a p{color:var(--muted)}.home-directory .eyebrow{color:#805a18}.home-intro,.coverage{background:#fff}@media (max-width:640px){.language-switcher select{width:100%;height:46px}.hero-background{background-image:linear-gradient(#2a1a1014 0%,#2a1a1042 38%,#2a1a10eb 72%),url(assets/hero-inicio.jpg);background-position:66% 84px}.page-hero:before{background:linear-gradient(#2a1a102e,#2a1a1073 42%,#2a1a10e6)}.page-hero{background-position:50% 12%}}.hero{padding-bottom:0}.hero-index{-webkit-backdrop-filter:blur(9px);backdrop-filter:blur(9px);background:#2a1a107a;margin-top:clamp(3rem,5vw,5rem)}.hero-index article{min-height:118px;padding-top:1.75rem;padding-bottom:1.75rem}.hero-index strong{font-size:.94rem}.hero-index small{color:#d6d0ca}.page-hero{background-position:right 104px;background-repeat:no-repeat;background-size:auto calc(100% - 104px);background-color:var(--escuro);justify-content:flex-end;min-height:660px;padding:12rem max(5vw,1.25rem) 4.5rem}.page-hero h1{letter-spacing:-.05em;max-width:950px;font-size:clamp(2.9rem,5.2vw,5.6rem);line-height:.96}.page-hero .eyebrow{margin-bottom:.35rem}.section{padding-block:clamp(5rem,7vw,8rem)}@media (max-width:900px){.page-hero{background-position:68% 90px;background-size:auto calc(100% - 90px);min-height:610px}.page-hero:before{background:linear-gradient(#2a1a101f,#2a1a106b 48%,#2a1a10f5 78%)}.page-hero h1{max-width:760px}.hero-index{grid-template-columns:1fr 1fr}.hero-index article:nth-child(2){border-right:0}}@media (max-width:640px){.hero{padding-top:8.5rem}.hero-index{margin-top:2.5rem}.hero-index article{min-height:112px;padding:1.25rem .9rem}.hero-index article:first-child{padding-left:.9rem}.hero-index strong{font-size:.8rem}.hero-index small{font-size:.64rem}.page-hero{background-position:68% 84px;background-size:auto calc(100% - 84px);min-height:560px;padding:8.5rem 1.25rem 3rem}.page-hero h1{font-size:clamp(2.45rem,11vw,3.8rem);line-height:.98}}.language-switcher{color:#fff;margin-left:1rem;font-size:.76rem;font-weight:800;position:relative}.language-trigger{cursor:pointer;justify-content:center;align-items:center;gap:.5rem;min-width:76px;height:42px;padding:0 .8rem;transition:border-color .2s,background .2s;display:flex;color:#fff!important;background:#ffffff12!important;border:1px solid #ffb354ad!important;border-radius:999px!important}.language-trigger:hover,.language-trigger[aria-expanded=true]{border-color:var(--dourado)!important;background:#ffb35421!important}.language-trigger svg{fill:currentColor;width:16px;height:16px}.language-trigger i{color:var(--dourado);margin-top:-3px;font-size:1rem;font-style:normal;transition:transform .2s}.language-trigger[aria-expanded=true] i{transform:rotate(180deg)}.language-options{z-index:80;background:#fff;border:1px solid #2a1a1024;border-radius:12px;width:172px;padding:.45rem;position:absolute;top:calc(100% + 9px);right:0;box-shadow:0 18px 45px #11191b38}.language-options button{width:100%;min-height:42px;color:var(--escuro);text-align:left;cursor:pointer;background:0 0;border:0;border-radius:8px;align-items:center;gap:.7rem;padding:.55rem .7rem;display:flex}.language-options button:hover,.language-options button.active{color:#744a12;background:var(--fundo-creme)}.language-options button span{color:#875b20;letter-spacing:.04em;place-items:center;width:38px;font-size:.68rem;display:inline-grid}.page-hero{background-position:right 104px;justify-content:flex-start;padding-top:clamp(10.75rem,12vw,12.5rem);padding-bottom:3.5rem}.angola-map{min-height:520px;box-shadow:none;background:0 0;border:0;padding:1rem}.map-title strong{color:var(--escuro)}.map-title span{color:var(--muted)}.map-graphic>img{filter:sepia()saturate(1.9)hue-rotate(342deg)brightness(.88)}.map-huambo{background:#2a1a10f0}@media (max-width:900px){.page-hero{background-position:right 90px;justify-content:flex-start;padding-top:9.6rem}.page-hero:before{background:linear-gradient(90deg,#2a1a10f0,#2a1a10a3 62%,#2a1a1029)}}@media (max-width:640px){.mobile-menu .language-switcher{margin:1.5rem 0 0}.mobile-menu .language-trigger{justify-content:space-between;width:100%;height:48px;padding-inline:1rem}.mobile-menu .language-options{width:100%;margin-top:.55rem;position:static}.page-hero{background-position:right 84px;min-height:540px;padding-top:7.5rem;padding-bottom:2.5rem}.page-hero:before{background:linear-gradient(#2a1a106b,#2a1a10ad 55%,#2a1a10f5)}.angola-map{min-height:410px;padding:0}.map-title{top:0;left:0}}.page-hero{background-position:50%;background-size:cover}body.route-sobre .page-hero{background-position:50% 38%}body.route-servicos .page-hero{background-position:50% 42%}body.route-sectores .page-hero{background-position:50% 36%}body.route-diferenciais .page-hero{background-position:50% 38%}body.route-contactos .page-hero{background-position:50% 40%}body.route-orcamento .page-hero{background-position:50% 38%}@media (max-width:900px){.page-hero{background-position:70%;background-size:cover}body.route-sobre .page-hero,body.route-servicos .page-hero,body.route-sectores .page-hero,body.route-diferenciais .page-hero,body.route-contactos .page-hero{background-position:72%}}@media (min-width:901px){.page-hero{background-position:50% 104px;background-size:100%;min-height:clamp(720px,52vw,920px)}.page-hero:before{background:linear-gradient(90deg,#2a1a10ed 0%,#2a1a10ad 43%,#2a1a102e 72%,#2a1a1005)}body.route-sobre .page-hero,body.route-servicos .page-hero,body.route-sectores .page-hero,body.route-diferenciais .page-hero,body.route-contactos .page-hero,body.route-orcamento .page-hero{background-position:50% 104px}}@media (max-width:900px){.page-hero{background-position:72% 0}.page-hero:before{background:linear-gradient(#2a1a1047,#2a1a108f 55%,#2a1a10f0)}body.route-sobre .page-hero,body.route-servicos .page-hero,body.route-sectores .page-hero,body.route-diferenciais .page-hero,body.route-contactos .page-hero,body.route-orcamento .page-hero{background-position:72% 0}}@media (min-width:901px){.page-hero{background-position:50%;background-size:100% 100%}.page-hero>*{animation:.85s cubic-bezier(.2,.75,.25,1) both page-hero-enter}.page-hero h1{animation-delay:80ms}}@keyframes page-hero-enter{0%{opacity:0;transform:translateY(24px)}to{opacity:1;transform:none}}.service-card{transition:transform .35s,background .35s,box-shadow .35s;position:relative;overflow:hidden}.service-card:before{content:"";background:var(--degrade);transform-origin:0;height:3px;transition:transform .35s;position:absolute;inset:0 0 auto;transform:scaleX(0)}.service-card:hover{z-index:1;background:#343e40;transform:translateY(-8px);box-shadow:0 20px 38px #12191b3d}.service-card:hover:before{transform:scaleX(1)}.difference-grid>div,.sector-grid>div{transition:transform .3s,background .3s,box-shadow .3s,border-color .3s}.difference-grid>div:hover{background:#ffffff17;border-color:#ffb35470;transform:translateY(-6px)}.sector-grid>div:hover{background:#fff;border-color:#ffb354b3;transform:translateY(-4px);box-shadow:var(--shadow-card)}.steps article:after{content:"→";float:right;color:var(--dourado);margin-top:-2.2rem;font-size:1.45rem;animation:1.5s ease-in-out infinite process-arrow}.steps article:last-child:after{display:none}@keyframes process-arrow{50%{transform:translate(8px)}}.scroll-top{z-index:49;width:48px;height:48px;color:var(--escuro);background:var(--degrade);opacity:0;visibility:hidden;cursor:pointer;border:1px solid #ffffff8c;border-radius:50%;place-items:center;transition:opacity .25s,visibility .25s,transform .25s;display:grid;position:fixed;bottom:1.25rem;left:1.25rem;transform:translateY(14px);box-shadow:0 10px 28px #2a1a1038}.scroll-top.visible{opacity:1;visibility:visible;transform:none}.scroll-top:hover{transform:translateY(-4px)}@media (max-width:900px){.page-hero{background-size:cover;background-position:100% 0!important}.steps article:after{display:none}}@media (prefers-reduced-motion:reduce){.page-hero>*,.steps article:after{animation:none}.service-card,.difference-grid>div,.sector-grid>div,.scroll-top{transition:none}}body.route-sobre .page-hero{--page-photo:url(assets/hero-sobre.jpg)}body.route-servicos .page-hero{--page-photo:url(assets/hero-servicos.jpg)}body.route-sectores .page-hero{--page-photo:url(assets/hero-sectores.jpg)}body.route-diferenciais .page-hero{--page-photo:url(assets/hero-diferenciais.jpg)}body.route-contactos .page-hero{--page-photo:url(assets/hero-contactos.jpg)}body.route-orcamento .page-hero{--page-photo:url(assets/hero-orcamento.jpg)}body.route-sobre .page-hero,body.route-servicos .page-hero,body.route-sectores .page-hero,body.route-diferenciais .page-hero,body.route-contactos .page-hero,body.route-orcamento .page-hero{isolation:isolate;overflow:hidden;background-image:none!important}body.route-sobre .page-hero:after,body.route-servicos .page-hero:after,body.route-sectores .page-hero:after,body.route-diferenciais .page-hero:after,body.route-contactos .page-hero:after,body.route-orcamento .page-hero:after{content:"";z-index:-2;background-image:var(--page-photo);transform:translateY(var(--parallax-shift,0px));background-position:50%;background-repeat:no-repeat;background-size:cover;transition:filter .4s ease;position:absolute;inset:0}.page-hero:before{z-index:-1;background:linear-gradient(90deg,#2a1a10a3 0%,#2a1a1061 42%,#2a1a101a 72%,#0000)}.page-hero h1{text-shadow:0 3px 20px #0a0f1061}@media (max-width:900px){body.route-sobre .page-hero:after,body.route-servicos .page-hero:after,body.route-sectores .page-hero:after,body.route-diferenciais .page-hero:after,body.route-contactos .page-hero:after,body.route-orcamento .page-hero:after{background-position:100% 0;background-size:cover}.page-hero:before{background:linear-gradient(#2a1a1033,#2a1a106b 48%,#2a1a10e0)}}body.route-sobre .page-hero:after,body.route-servicos .page-hero:after,body.route-sectores .page-hero:after,body.route-diferenciais .page-hero:after,body.route-contactos .page-hero:after,body.route-orcamento .page-hero:after{filter:brightness(1.34)contrast(.94)saturate(1.06)}.page-hero:before{background:linear-gradient(90deg,#2a1a1057 0%,#2a1a1033 34%,#2a1a100f 58%,#0000 76%)}.page-hero .eyebrow,.page-hero h1{width:min(48vw,780px)}.page-hero h1{letter-spacing:-.045em;text-wrap:balance;font-size:clamp(2.8rem,4.5vw,4.9rem);line-height:.98}@media (max-width:900px){body.route-sobre .page-hero:after,body.route-servicos .page-hero:after,body.route-sectores .page-hero:after,body.route-diferenciais .page-hero:after,body.route-contactos .page-hero:after,body.route-orcamento .page-hero:after{filter:brightness(1.18)contrast(.96)}.page-hero:before{background:linear-gradient(#2a1a101f,#2a1a1042 50%,#2a1a10cc)}.page-hero .eyebrow,.page-hero h1{width:min(100%,760px)}}@media (max-width:640px){.page-hero h1{font-size:clamp(2.2rem,9.5vw,3.25rem);line-height:1.02}}

/* --- Mapa de Angola: melhoria de design (moldura, textura e hierarquia) --- */
.angola-map{background:linear-gradient(155deg,#fff 0%,var(--fundo-creme) 100%);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow-card);padding:2.5rem 2rem;position:relative;overflow:hidden}
.angola-map:before{content:"";background-image:radial-gradient(#2a1a1017 1.5px,transparent 1.5px);background-size:22px 22px;-webkit-mask-image:none;mask-image:none;opacity:.7;position:absolute;inset:0;pointer-events:none}
.angola-map:after{content:"";background:radial-gradient(circle at 82% 10%,#ffb3542e,transparent 62%);position:absolute;inset:0;pointer-events:none}
.map-title{top:2.25rem;left:2.25rem;z-index:2}
.map-title strong{font-size:clamp(1.5rem,2.3vw,2.1rem);letter-spacing:.02em}
.map-graphic{z-index:1}
.map-point{box-shadow:0 0 0 9px #ffb35433,0 3px 8px #2a1a1040}
.map-huambo{border-radius:var(--radius-sm);box-shadow:0 16px 32px #2a1a1038;z-index:2}
@media (max-width:640px){.angola-map{padding:1.75rem 1.25rem}.map-title{top:1.5rem;left:1.5rem}}

/* ============================================================
   EXTRA — animações adicionadas ao clone (mantendo a identidade
   visual original: dourado #ffb354, azul #ffcf85, escuro #2a1a10)
   ============================================================ */

/* Efeito: máquina de escrever no "lead" da hero (texto real, sem inventar conteúdo) */
.hero .lead.typewriter{white-space:normal;border-left:2px solid var(--gold)}
.hero .lead .tw-text{border-right:2px solid var(--gold-light);padding-right:2px;animation:tw-caret .8s steps(1) infinite}
@keyframes tw-caret{0%,100%{border-color:var(--gold-light)}50%{border-color:#0000}}

/* Efeito: ícone hambúrguer -> X animado no menu mobile */
.mobile-menu summary{position:relative;transition:background .2s}
.mobile-menu summary i.burger{width:20px;height:14px;position:relative;display:inline-block}
.mobile-menu summary i.burger span{background:var(--gold);height:2px;width:100%;border-radius:2px;position:absolute;left:0;transition:transform .3s,opacity .2s,top .3s}
.mobile-menu summary i.burger span:nth-child(1){top:0}
.mobile-menu summary i.burger span:nth-child(2){top:6px}
.mobile-menu summary i.burger span:nth-child(3){top:12px}
.mobile-menu[open] summary i.burger span:nth-child(1){top:6px;transform:rotate(45deg)}
.mobile-menu[open] summary i.burger span:nth-child(2){opacity:0}
.mobile-menu[open] summary i.burger span:nth-child(3){top:6px;transform:rotate(-45deg)}

.page-hero:hover:after{filter:brightness(1.4) contrast(0.96) saturate(1.1) !important}

/* Cabecalho mantido sempre solido (--escuro), sem transparencia, por pedido do cliente */
/* Separação suave do cabeçalho sobre a fotografia, sem faixa de transparência (removida por não ficar bem) */.site-header:not(.is-scrolled){box-shadow:0 12px 24px -8px #00000052}

/* Efeito: contagem suave nos números dos passos/serviços ao entrarem no ecrã (nº reais já existentes no conteúdo) */
.hero-index b,.principles b,.steps b,.service-card>span,.legal-block>b{transition:transform .4s,color .4s}
.reveal-item.is-visible .hero-index b,.reveal-item.is-visible .steps b{animation:pop-in .5s cubic-bezier(.34,1.56,.64,1) both}
@keyframes pop-in{0%{transform:scale(.4);opacity:0}100%{transform:scale(1);opacity:1}}

/* --- Reestruturação de layout (inspirada no site de referência) --- */
.hero .actions{margin-top:.5rem}












.experience .split-text p:not(.eyebrow){color:#aaa29c;margin-top:1rem;font-size:1.05rem;line-height:1.8}
.service-card .service-icon{background:#ffffff14;border-radius:50%;width:48px;height:48px;align-items:center;justify-content:center;margin-bottom:1.2rem;display:flex}
.service-card .service-icon svg{width:22px;height:22px;fill:var(--dourado)}

.service-card h3{margin:1.4rem 0 1rem}



/* --- Herói das páginas internas: reduzir o espaço vazio entre a frase e o fim da secção --- */
@media (min-width:901px){.page-hero{min-height:clamp(460px,34vw,620px)}}

/* --- Herói das páginas internas: com a secção mais baixa, o recorte centrado (50% 50%)
   cortava os rostos nas fotos; subir o ponto de recorte para o topo evita isso --- */
@media (min-width:901px){.page-hero:after,body.route-sobre .page-hero:after,body.route-servicos .page-hero:after,body.route-sectores .page-hero:after,body.route-diferenciais .page-hero:after,body.route-contactos .page-hero:after,body.route-orcamento .page-hero:after{background-position:100% 8%}}

/* --- Formulário: garantir que o texto das opções do <select> é sempre visível
   (alguns motores de renderização não herdam a cor correctamente na lista nativa,
   o que deixava as opções em branco sobre fundo branco) --- */
form select,form select option{color:var(--ink)!important;background-color:#fff!important}

/* --- Remover numerações decorativas ("01","02"...) em todo o site: ajustar espaçamentos
   que antes reservavam espaço para esses números, e simplificar o grid dos blocos legais
   (que tinha uma coluna dedicada ao número) --- */
.legal-block{grid-template-columns:1fr}
.principles h3,.service-card h3,.steps h3,.home-directory h3{margin-top:0}

/* --- Perguntas Frequentes (FAQ) na página inicial: acordeão nativo com <details> --- */
.faq{padding:clamp(5rem,8vw,8rem) max(5vw,1.25rem);background:var(--warm)}
.faq>header{max-width:760px;margin:0 auto 3rem;text-align:center}
.faq>header h2{letter-spacing:-.03em;margin:.5rem 0 0;font-size:clamp(2.1rem,4vw,3rem);line-height:1.05}
.faq-list{max-width:820px;margin:0 auto}
.faq-item{background:#fff;border:1px solid var(--line);border-radius:var(--radius-sm);margin-bottom:1rem;padding:0 1.75rem;transition:box-shadow .3s}
.faq-item[open]{box-shadow:var(--shadow-card)}
.faq-item summary{list-style:none;cursor:pointer;padding:1.5rem 0;gap:1.5rem;align-items:center;justify-content:space-between;font-family:var(--font-sans);font-size:1.02rem;font-weight:700;display:flex}
.faq-item summary::-webkit-details-marker{display:none}
.faq-item summary i{color:#805a18;background:var(--fundo-creme);border-radius:50%;flex:none;width:30px;height:30px;font-style:normal;font-size:1.1rem;align-items:center;justify-content:center;transition:transform .3s;display:flex}
.faq-item[open] summary i{transform:rotate(45deg)}
.faq-item p{color:var(--muted);margin:0 0 1.6rem;line-height:1.7}
@media (max-width:640px){.faq{padding:3.5rem 1.25rem}.faq-item{padding:0 1.25rem}.faq-item summary{padding:1.15rem 0;font-size:.92rem;gap:1rem}}


/* --- Animações adicionais (inspiradas no ficheiro de referência enviado pelo utilizador) --- */
.service-card .service-icon{transition:transform .6s cubic-bezier(.34,1.56,.64,1)}
.service-card:hover .service-icon{transform:rotateY(360deg)}
@keyframes gsl-pulse{0%,100%{box-shadow:0 10px 30px #00000040,0 0 0 0 #25d36680}50%{box-shadow:0 10px 30px #00000040,0 0 0 12px #25d36600}}
.whatsapp{animation:gsl-pulse 2.6s ease-in-out infinite}
.scroll-cue{position:relative;margin-top:2.4rem;width:24px;height:38px;border:2px solid #ffffff70;border-radius:14px}
.scroll-cue span{position:absolute;top:7px;left:50%;transform:translateX(-50%);width:5px;height:9px;background:var(--dourado);border-radius:3px;animation:gsl-scroll-dot 1.8s ease-in-out infinite}
@keyframes gsl-scroll-dot{0%{top:7px;opacity:1}70%{opacity:0}100%{top:20px;opacity:0}}
@media (max-width:720px){.scroll-cue{display:none}}
@keyframes gsl-stagger-up{from{opacity:0;transform:translateY(26px)}to{opacity:1;transform:none}}
.reveal-item.is-visible .service-grid>*,.reveal-item.is-visible .sector-grid>*,.reveal-item.is-visible .difference-grid>*,.reveal-item.is-visible .principles>*,.reveal-item.is-visible .steps>*,.reveal-item.is-visible .hero-index>*,.reveal-item.is-visible .home-directory>div>*,.reveal-item.is-visible .faq-list>*{animation:gsl-stagger-up .6s cubic-bezier(.22,1,.36,1) both}
.reveal-item.is-visible .service-grid>*:nth-child(1),.reveal-item.is-visible .sector-grid>*:nth-child(1),.reveal-item.is-visible .difference-grid>*:nth-child(1),.reveal-item.is-visible .principles>*:nth-child(1),.reveal-item.is-visible .steps>*:nth-child(1),.reveal-item.is-visible .hero-index>*:nth-child(1),.reveal-item.is-visible .home-directory>div>*:nth-child(1),.reveal-item.is-visible .faq-list>*:nth-child(1){animation-delay:0.04s}
.reveal-item.is-visible .service-grid>*:nth-child(2),.reveal-item.is-visible .sector-grid>*:nth-child(2),.reveal-item.is-visible .difference-grid>*:nth-child(2),.reveal-item.is-visible .principles>*:nth-child(2),.reveal-item.is-visible .steps>*:nth-child(2),.reveal-item.is-visible .hero-index>*:nth-child(2),.reveal-item.is-visible .home-directory>div>*:nth-child(2),.reveal-item.is-visible .faq-list>*:nth-child(2){animation-delay:0.12s}
.reveal-item.is-visible .service-grid>*:nth-child(3),.reveal-item.is-visible .sector-grid>*:nth-child(3),.reveal-item.is-visible .difference-grid>*:nth-child(3),.reveal-item.is-visible .principles>*:nth-child(3),.reveal-item.is-visible .steps>*:nth-child(3),.reveal-item.is-visible .hero-index>*:nth-child(3),.reveal-item.is-visible .home-directory>div>*:nth-child(3),.reveal-item.is-visible .faq-list>*:nth-child(3){animation-delay:0.2s}
.reveal-item.is-visible .service-grid>*:nth-child(4),.reveal-item.is-visible .sector-grid>*:nth-child(4),.reveal-item.is-visible .difference-grid>*:nth-child(4),.reveal-item.is-visible .principles>*:nth-child(4),.reveal-item.is-visible .steps>*:nth-child(4),.reveal-item.is-visible .hero-index>*:nth-child(4),.reveal-item.is-visible .home-directory>div>*:nth-child(4),.reveal-item.is-visible .faq-list>*:nth-child(4){animation-delay:0.28s}
.reveal-item.is-visible .service-grid>*:nth-child(5),.reveal-item.is-visible .sector-grid>*:nth-child(5),.reveal-item.is-visible .difference-grid>*:nth-child(5),.reveal-item.is-visible .principles>*:nth-child(5),.reveal-item.is-visible .steps>*:nth-child(5),.reveal-item.is-visible .hero-index>*:nth-child(5),.reveal-item.is-visible .home-directory>div>*:nth-child(5),.reveal-item.is-visible .faq-list>*:nth-child(5){animation-delay:0.36s}
.reveal-item.is-visible .service-grid>*:nth-child(6),.reveal-item.is-visible .sector-grid>*:nth-child(6),.reveal-item.is-visible .difference-grid>*:nth-child(6),.reveal-item.is-visible .principles>*:nth-child(6),.reveal-item.is-visible .steps>*:nth-child(6),.reveal-item.is-visible .hero-index>*:nth-child(6),.reveal-item.is-visible .home-directory>div>*:nth-child(6),.reveal-item.is-visible .faq-list>*:nth-child(6){animation-delay:0.44s}
.reveal-item.is-visible .service-grid>*:nth-child(7),.reveal-item.is-visible .sector-grid>*:nth-child(7),.reveal-item.is-visible .difference-grid>*:nth-child(7),.reveal-item.is-visible .principles>*:nth-child(7),.reveal-item.is-visible .steps>*:nth-child(7),.reveal-item.is-visible .hero-index>*:nth-child(7),.reveal-item.is-visible .home-directory>div>*:nth-child(7),.reveal-item.is-visible .faq-list>*:nth-child(7){animation-delay:0.52s}
.reveal-item.is-visible .service-grid>*:nth-child(8),.reveal-item.is-visible .sector-grid>*:nth-child(8),.reveal-item.is-visible .difference-grid>*:nth-child(8),.reveal-item.is-visible .principles>*:nth-child(8),.reveal-item.is-visible .steps>*:nth-child(8),.reveal-item.is-visible .hero-index>*:nth-child(8),.reveal-item.is-visible .home-directory>div>*:nth-child(8),.reveal-item.is-visible .faq-list>*:nth-child(8){animation-delay:0.6s}
.reveal-item.is-visible .service-grid>*:nth-child(9),.reveal-item.is-visible .sector-grid>*:nth-child(9),.reveal-item.is-visible .difference-grid>*:nth-child(9),.reveal-item.is-visible .principles>*:nth-child(9),.reveal-item.is-visible .steps>*:nth-child(9),.reveal-item.is-visible .hero-index>*:nth-child(9),.reveal-item.is-visible .home-directory>div>*:nth-child(9),.reveal-item.is-visible .faq-list>*:nth-child(9){animation-delay:0.68s}
.reveal-item.is-visible .service-grid>*:nth-child(10),.reveal-item.is-visible .sector-grid>*:nth-child(10),.reveal-item.is-visible .difference-grid>*:nth-child(10),.reveal-item.is-visible .principles>*:nth-child(10),.reveal-item.is-visible .steps>*:nth-child(10),.reveal-item.is-visible .hero-index>*:nth-child(10),.reveal-item.is-visible .home-directory>div>*:nth-child(10),.reveal-item.is-visible .faq-list>*:nth-child(10){animation-delay:0.76s}
.reveal-item.is-visible .service-grid>*:nth-child(11),.reveal-item.is-visible .sector-grid>*:nth-child(11),.reveal-item.is-visible .difference-grid>*:nth-child(11),.reveal-item.is-visible .principles>*:nth-child(11),.reveal-item.is-visible .steps>*:nth-child(11),.reveal-item.is-visible .hero-index>*:nth-child(11),.reveal-item.is-visible .home-directory>div>*:nth-child(11),.reveal-item.is-visible .faq-list>*:nth-child(11){animation-delay:0.84s}
.reveal-item.is-visible .service-grid>*:nth-child(12),.reveal-item.is-visible .sector-grid>*:nth-child(12),.reveal-item.is-visible .difference-grid>*:nth-child(12),.reveal-item.is-visible .principles>*:nth-child(12),.reveal-item.is-visible .steps>*:nth-child(12),.reveal-item.is-visible .hero-index>*:nth-child(12),.reveal-item.is-visible .home-directory>div>*:nth-child(12),.reveal-item.is-visible .faq-list>*:nth-child(12){animation-delay:0.92s}
.reveal-item.is-visible .service-grid>*:nth-child(n+13),.reveal-item.is-visible .sector-grid>*:nth-child(n+13),.reveal-item.is-visible .difference-grid>*:nth-child(n+13),.reveal-item.is-visible .principles>*:nth-child(n+13),.reveal-item.is-visible .steps>*:nth-child(n+13),.reveal-item.is-visible .hero-index>*:nth-child(n+13),.reveal-item.is-visible .home-directory>div>*:nth-child(n+13),.reveal-item.is-visible .faq-list>*:nth-child(n+13){animation-delay:0.92s}
@media (prefers-reduced-motion:reduce){.whatsapp,.scroll-cue span,.steps article:after{animation:none!important}.reveal-item.is-visible .service-grid>*,.reveal-item.is-visible .sector-grid>*,.reveal-item.is-visible .difference-grid>*,.reveal-item.is-visible .principles>*,.reveal-item.is-visible .steps>*,.reveal-item.is-visible .hero-index>*,.reveal-item.is-visible .home-directory>div>*,.reveal-item.is-visible .faq-list>*{animation:none!important;opacity:1!important;transform:none!important}}

/* --- Efeito ao clicar nos botões (ripple) --- */
.button,.scroll-top,.language-trigger,.language-options button{position:relative;overflow:hidden}
.gsl-ripple{position:absolute;border-radius:50%;transform:scale(0);pointer-events:none;background:#ffffff59;animation:gsl-ripple-anim .6s ease-out forwards}
.button-outline-dark .gsl-ripple,.language-options button .gsl-ripple,.scroll-top .gsl-ripple{background:#2a1a1033}
@keyframes gsl-ripple-anim{to{transform:scale(2.6);opacity:0}}
@media (prefers-reduced-motion:reduce){.gsl-ripple{display:none}}

/* --- Efeito de respiração/zoom subtil na fotografia da hero da página inicial (tal como já acontece nas páginas internas) --- */
.hero.hero-background{position:relative;overflow:hidden}
.hero.hero-background>*{position:relative;z-index:1}
.hero.hero-background:after{content:"";z-index:-2;background-image:inherit;background-position:inherit;background-repeat:inherit;background-size:inherit;transform:translateY(var(--parallax-shift,0px));transition:filter .4s ease;position:absolute;inset:0}
.hero.hero-background:hover:after{filter:brightness(1.12) saturate(1.08)}

/* --- Efeito parallax: a fotografia da hero desloca-se mais devagar que o conteúdo ao rolar a página.
   Antes usava background-attachment:fixed (só funcionava no computador; desligado no telemóvel por
   causa de problemas de desempenho no Safari do iPhone). Depois tentou-se mover via
   background-position em JS, mas isso só afeta a página inicial (.hero.hero-background, que usa
   background-position:inherit) — as páginas internas (.page-hero) usam uma estrutura diferente
   (background-image:var(--page-photo) e background-position fixo), por isso não reagiam.
   Agora o deslocamento é feito através da variável CSS --parallax-shift, lida directamente na
   propriedade transform de ambas as estruturas (ver acima e em .page-hero:after mais abaixo) —
   por isso esta correcção aplica-se automaticamente à página inicial E a todas as páginas internas. O JavaScript que define --parallax-shift está em script.js, secção "Parallax
   da foto de destaque". O deslocamento é propositadamente pequeno (poucos pixels), para não ir
   além da margem de zoom (scale) já usada pela respiração da foto e revelar bordas. --- */
/* --- Mudança de cor ao passar o rato nos links do cabeçalho e do rodapé (além da reacção ao
   clicar já existente): o texto passa a dourado, os ícones sociais também, com uma transição
   suave em vez de uma troca abrupta. --- */
.site-header nav a,.mobile-menu a,.mobile-contact a,.footer-column a,.footer-bottom a,.footer-contact-item,.social-links a{transition:color .2s}
.site-header nav a:hover,.mobile-menu a:hover,.mobile-contact a:hover,.footer-column a:hover,.footer-bottom a:hover,.footer-contact-item:hover,.social-links a:hover{color:var(--dourado)}
.social-links a svg{transition:fill .2s}
.social-links a:hover svg{fill:var(--dourado)}
a.brand,.footer-brand>a{transition:opacity .2s}
a.brand:hover,.footer-brand>a:hover{opacity:.82}
