@font-face{font-family:'Cormorant Garamond';font-style:normal;font-weight:500 600;font-display:swap;src:url('../fonts/cormorant-garamond-latin.woff2') format('woff2')}@font-face{font-family:Manrope;font-style:normal;font-weight:400 700;font-display:swap;src:url('../fonts/manrope-variable.woff2') format('woff2')}
:root{--gs-forest-950:#08130f;--gs-forest-900:#0b1713;--gs-forest-800:#10251d;--gs-gold:#c8a363;--gs-ivory:#f4f1e9;--gs-white:#fffdf9;--gs-charcoal:#17201c;--gs-muted:#65716b;--gs-container:76rem;--gs-container-wide:90rem;--gs-space-section:clamp(5rem,10vw,10rem);--gs-serif:'Cormorant Garamond',Georgia,serif;--gs-sans:Manrope,Arial,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--gs-ivory);color:var(--gs-charcoal);font:400 1rem/1.7 var(--gs-sans)}img{max-width:100%;height:auto;display:block}a{color:inherit;text-decoration:none}.gs-container{width:min(calc(100% - 3rem),var(--gs-container));margin:auto}.screen-reader-text{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(1px,1px,1px,1px)}.gs-overline{margin:0 0 1.25rem;color:var(--gs-gold);font-size:.73rem;font-weight:700;letter-spacing:.17em;text-transform:uppercase}.gs-header{position:absolute;z-index:10;inset:0 0 auto;color:#fff;transition:background .25s ease}.gs-header.is-scrolled{position:fixed;background:rgba(8,19,15,.96)}.gs-header__inner{display:flex;min-height:5.5rem;align-items:center;justify-content:space-between}.gs-brand{font:600 clamp(1.05rem,2vw,1.35rem)/1 var(--gs-serif);letter-spacing:.09em;white-space:nowrap}.gs-brand span{font:600 .58em/1 var(--gs-sans);letter-spacing:.2em;display:block;margin-bottom:.35rem}.custom-logo{max-height:3.25rem;width:auto}.gs-navigation{display:flex;align-items:center;gap:2rem}.gs-navigation ul{display:flex;gap:1.75rem;margin:0;padding:0;list-style:none;font-size:.8rem;font-weight:700;text-transform:uppercase;letter-spacing:.08em}.gs-navigation a:hover,.gs-text-link:hover{color:var(--gs-gold)}.gs-button{display:inline-flex;align-items:center;justify-content:center;min-height:3.25rem;padding:.75rem 1.3rem;border:1px solid transparent;font-size:.72rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase;transition:transform .2s,background .2s}.gs-button:hover{transform:translateY(-2px)}.gs-button--gold{background:var(--gs-gold);color:var(--gs-forest-950)}.gs-button--outline{border-color:var(--gs-gold);color:var(--gs-gold)}.gs-menu-toggle{display:none;background:transparent;border:0;color:inherit}.gs-hero{min-height:46rem;min-height:min(52rem,100vh);position:relative;display:grid;align-items:end;color:#fff;background:linear-gradient(90deg,rgba(8,19,15,.92) 0%,rgba(8,19,15,.56) 48%,rgba(8,19,15,.18)),var(--gs-hero) center/cover}.gs-hero__content{padding:11rem 0 7rem}.gs-hero h1,h1,h2,h3{font-family:var(--gs-serif);font-weight:500;line-height:.96;letter-spacing:-.03em}.gs-hero h1{max-width:48rem;margin:0 0 1.6rem;font-size:clamp(3.6rem,7.8vw,7.5rem)}.gs-lead{max-width:38rem;font-size:clamp(1rem,1.5vw,1.2rem);color:rgba(255,255,255,.86)}.gs-actions{display:flex;align-items:center;gap:1.6rem;margin-top:2.25rem}.gs-text-link{font-size:.74rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase}.gs-text-link span{color:var(--gs-gold);font-size:1.25rem;margin-left:.5rem}.gs-hero__caption{position:absolute;right:3vw;bottom:2rem;margin:0;font-size:.65rem;letter-spacing:.13em;text-transform:uppercase;writing-mode:vertical-rl}.gs-section{padding:var(--gs-space-section) 0}.gs-intro__grid{display:grid;grid-template-columns:minmax(16rem,.8fr) minmax(20rem,1fr);gap:clamp(3rem,10vw,11rem);align-items:center}.gs-intro__image{max-width:30rem}.gs-intro__image img{aspect-ratio:2/2.7;object-fit:cover}.gs-intro h2,.gs-section__heading h2,.gs-method h2,.gs-difference h2,.gs-faq h2,.gs-proposal h2{font-size:clamp(2.8rem,5.5vw,5.4rem);margin:0 0 2rem}.gs-intro__content p:not(.gs-overline){max-width:34rem;margin-bottom:2rem}.gs-solutions{background:var(--gs-white)}.gs-section__heading{display:flex;justify-content:space-between;gap:2rem;align-items:baseline;margin-bottom:3rem}.gs-section__heading h2{max-width:38rem}.gs-solution{display:grid;grid-template-columns:3rem minmax(15rem,1fr) 10rem 2rem;gap:2rem;align-items:center;padding:1.7rem 0;border-top:1px solid #d5d4cc}.gs-solution:last-child{border-bottom:1px solid #d5d4cc}.gs-solution>span{font:600 .8rem var(--gs-sans);color:var(--gs-gold)}.gs-solution h3{font-size:clamp(1.8rem,3vw,2.6rem);margin:0}.gs-solution p{font-size:.85rem;line-height:1.6;color:var(--gs-muted);margin:.35rem 0 0;max-width:38rem}.gs-solution img{width:10rem;height:6rem;object-fit:cover;filter:saturate(.75)}.gs-solution>a{font-size:1.3rem;color:var(--gs-gold)}.gs-method{background:var(--gs-forest-950);color:var(--gs-ivory);padding:0}.gs-method__grid{display:grid;grid-template-columns:1fr .8fr;min-height:42rem;align-items:center;gap:7rem}.gs-method__grid>div{padding:4rem 0}.gs-method p:not(.gs-overline){max-width:35rem;color:#c7d0c9;margin-bottom:2rem}.gs-method img{height:42rem;width:100%;object-fit:cover}.gs-difference{background:#e8e0d3}.gs-difference__grid{display:grid;grid-template-columns:1.1fr .75fr;gap:7rem}.gs-difference h2{margin-bottom:0}.gs-difference ul{padding:0;list-style:none;border-top:1px solid #b7b3a8;margin-top:2rem}.gs-difference li{padding:1rem 0;border-bottom:1px solid #b7b3a8}.gs-faq__grid{display:grid;grid-template-columns:.8fr 1fr;gap:8rem}.gs-faq details{border-top:1px solid #c8c6bf;padding:1.25rem 0}.gs-faq details:last-child{border-bottom:1px solid #c8c6bf}.gs-faq summary{cursor:pointer;display:flex;justify-content:space-between;font-weight:700}.gs-faq summary span{color:var(--gs-gold);font-size:1.4rem}.gs-faq details p{max-width:38rem;color:var(--gs-muted);font-size:.92rem}.gs-proposal{padding:clamp(5rem,12vw,11rem) 0;background:linear-gradient(rgba(8,19,15,.88),rgba(8,19,15,.88)),url('../images/palacio-liberdade.jpg') center/cover;color:var(--gs-ivory)}.gs-proposal h2{max-width:58rem}.gs-footer{background:var(--gs-forest-900);color:#bfc9c1;padding:5rem 0 1.5rem;font-size:.84rem}.gs-footer__grid{display:grid;grid-template-columns:1.5fr 1fr 1fr;gap:4rem}.gs-footer .gs-brand{color:var(--gs-white)}.gs-footer ul{padding:0;margin:0;list-style:none}.gs-footer li{margin:.5rem 0}.gs-footer__bottom{margin-top:4rem;padding-top:1.5rem;border-top:1px solid #2a3b34;font-size:.7rem}.gs-whatsapp{position:fixed;z-index:5;right:1.5rem;bottom:1.5rem;width:3.2rem;height:3.2rem;border-radius:50%;background:var(--gs-gold);color:var(--gs-forest-950);display:grid;place-items:center;font-size:1.5rem;box-shadow:0 8px 24px #0004}.gs-prose{max-width:48rem}.gs-prose h1{font-size:clamp(3rem,6vw,5.5rem)}.gs-prose>img,.gs-prose .wp-post-image{margin:2rem 0}.gs-post{padding:2rem 0;border-top:1px solid #d5d4cc}.gs-post h2{font-size:2.5rem;margin:0}.gs-service-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:3rem}.gs-service-grid img{width:100%;aspect-ratio:1.5;object-fit:cover}.gs-service-grid h2{font-size:2.2rem;margin:1rem 0 .5rem}
@media(max-width:760px){.gs-container{width:min(calc(100% - 2rem),var(--gs-container))}.gs-menu-toggle{display:block;width:2.6rem;height:2.6rem;padding:.4rem}.gs-menu-toggle span:not(.screen-reader-text){display:block;height:1px;background:currentColor;margin:.34rem}.gs-navigation{display:none}.gs-navigation.is-open{display:flex;position:fixed;inset:5.5rem 0 0;padding:2rem 1.5rem;flex-direction:column;align-items:flex-start;background:var(--gs-forest-950)}.gs-navigation ul{flex-direction:column;gap:1.5rem;font-size:1rem}.gs-menu-open{overflow:hidden}.gs-hero{min-height:42rem}.gs-hero__content{padding:9rem 0 5rem}.gs-hero__caption{display:none}.gs-actions{align-items:flex-start;flex-direction:column}.gs-intro__grid,.gs-method__grid,.gs-difference__grid,.gs-faq__grid{grid-template-columns:1fr;gap:3rem}.gs-intro__image{max-width:none}.gs-intro__image img{aspect-ratio:1.3;object-position:center 40%}.gs-section__heading{display:block}.gs-solution{grid-template-columns:2.3rem 1fr 1.5rem;gap:1rem}.gs-solution img{display:none}.gs-method__grid{gap:0}.gs-method img{height:25rem;grid-row:1}.gs-method__grid>div{padding:5rem 0}.gs-footer__grid{grid-template-columns:1fr;gap:2rem}.gs-service-grid{grid-template-columns:1fr}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;transition:none!important}}
.gs-skip-link{position:fixed;z-index:100;top:.75rem;left:.75rem;transform:translateY(-150%);padding:.7rem 1rem;background:#fff;color:#08130f}.gs-skip-link:focus{transform:none}a:focus-visible,button:focus-visible,summary:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid var(--gs-gold);outline-offset:3px}.gs-site:not(.home) .gs-header{position:relative;background:var(--gs-forest-950)}.gs-hero{isolation:isolate;background:var(--gs-forest-950)}.gs-hero::after{content:"";position:absolute;inset:0;z-index:0;background:linear-gradient(90deg,rgba(8,19,15,.88),rgba(8,19,15,.53) 52%,rgba(8,19,15,.14))}.gs-hero__media{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.gs-hero__content,.gs-hero__caption{position:relative;z-index:1}.gs-whatsapp{width:auto;min-width:3.2rem;padding:0 1rem;border-radius:2rem;font-size:.78rem;font-weight:700;bottom:max(1.5rem,env(safe-area-inset-bottom))}.gs-footer__bottom a{margin-left:1rem}.gs-prose{font-size:1.05rem}.gs-prose h2{font-size:clamp(2rem,3.5vw,3rem);margin-top:2.5rem}.gs-prose p,.gs-prose li{line-height:1.85}.gs-prose a:not(.gs-button){text-decoration:underline;text-decoration-color:var(--gs-gold);text-underline-offset:.2em}.gs-prose :where(blockquote){border-left:2px solid var(--gs-gold);padding-left:1.5rem;margin:2rem 0;color:var(--gs-muted);font-family:var(--gs-serif);font-size:1.6rem}.gs-prose :where(table){border-collapse:collapse;max-width:100%;display:block;overflow:auto}.gs-prose :where(th,td){border-bottom:1px solid #d5d4cc;padding:.75rem 1rem;text-align:left}.gs-page-hero{padding:clamp(4rem,8vw,8rem) 0;background:var(--gs-forest-950);color:var(--gs-ivory)}.gs-page-hero__grid{display:grid;grid-template-columns:1fr .8fr;align-items:center;gap:5rem}.gs-page-hero h1{font-size:clamp(3rem,6vw,6rem);margin:0 0 1.5rem}.gs-page-hero p:not(.gs-overline){font-size:1.15rem;max-width:36rem}.gs-page-hero img{aspect-ratio:1.25;object-fit:cover;width:100%}.gs-page-content{padding:var(--gs-space-section) 0}.gs-form{display:grid;gap:1.2rem;max-width:45rem}.gs-form__row{display:grid;grid-template-columns:1fr 1fr;gap:1.2rem}.gs-form label{display:grid;gap:.45rem;font-weight:700;font-size:.86rem}.gs-form input,.gs-form select,.gs-form textarea{width:100%;padding:.85rem 1rem;border:1px solid #b6b9b2;border-radius:0;background:#fff;color:var(--gs-charcoal);font:inherit}.gs-form input[type=checkbox]{width:auto}.gs-form__consent{display:flex!important;align-items:flex-start;gap:.75rem}.gs-form__message{padding:1rem;border-left:3px solid var(--gs-gold);background:#fff}.gs-form__honeypot{position:absolute;left:-9999px}.gs-article-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:2rem}.gs-article-list article{border-top:1px solid #d5d4cc;padding-top:1rem}.gs-article-list img{width:100%;aspect-ratio:1.55;object-fit:cover}.gs-article-list h2{font-size:2.3rem;margin:1rem 0}.gs-meta{font-size:.8rem;color:var(--gs-muted)}.gs-breadcrumbs{font-size:.75rem;margin-bottom:2rem;color:var(--gs-muted)}.gs-breadcrumbs a{text-decoration:underline}.gs-search-form{display:flex;max-width:35rem;gap:.5rem;margin:2rem 0}.gs-search-form input{flex:1;min-width:0;padding:.75rem;border:1px solid #aeb5ad;font:inherit}.gs-search-form button{border:0;cursor:pointer}.gs-faq-list details{border-top:1px solid #ccc9c1;padding:1rem 0}.gs-faq-list details:last-child{border-bottom:1px solid #ccc9c1}.gs-faq-list summary{cursor:pointer;font-weight:700}.gs-faq-list details p{color:var(--gs-muted)}
@media(max-width:760px){.gs-page-hero__grid,.gs-form__row,.gs-article-list{grid-template-columns:1fr}.gs-page-hero__grid{gap:2rem}.gs-page-hero img{aspect-ratio:1.7}.gs-whatsapp{right:1rem;bottom:max(1rem,env(safe-area-inset-bottom))}.gs-footer__bottom a{display:block;margin:1rem 0 0}.gs-hero::after{background:linear-gradient(90deg,rgba(8,19,15,.82),rgba(8,19,15,.45))}}
.gs-page-hero--compact{padding:3rem 0}.gs-page-hero--compact .gs-page-hero__grid{grid-template-columns:1fr .45fr;gap:3rem}.gs-page-hero--compact img{max-height:15rem}.gs-page-content--compact{padding-top:3rem}.gs-page-hero--compact h1{font-size:clamp(3rem,5vw,5rem)}
@media(max-width:760px){.gs-page-hero--compact .gs-page-hero__grid{grid-template-columns:1fr}.gs-page-hero--compact img{display:none}.gs-page-hero--compact{padding:3rem 0 2rem}.gs-page-content--compact{padding-top:2.5rem}}
.gs-site.home .gs-header{color:#fff}
@media(max-width:760px){.gs-hero h1{font-size:clamp(3rem,12vw,4.25rem)}.gs-hero__content{padding-top:8rem;padding-bottom:4rem}}
@media(min-width:761px) and (max-width:1100px){.gs-menu-toggle{display:block;width:2.6rem;height:2.6rem;padding:.4rem}.gs-menu-toggle span{display:block;height:1px;background:currentColor;margin:.34rem}.gs-navigation{display:none}.gs-navigation.is-open{display:flex;position:fixed;inset:5.5rem 0 0;padding:2rem 3rem;flex-direction:column;align-items:flex-start;overflow-y:auto;background:var(--gs-forest-950)}.gs-navigation ul{flex-direction:column;gap:1rem;font-size:1rem}.gs-navigation .sub-menu{display:block;position:static;min-width:0;padding:.25rem 0 .5rem 1.25rem;box-shadow:none;background:transparent}.gs-navigation .sub-menu a{padding:.3rem 0;color:#c8d0ca}.gs-menu-open{overflow:hidden}}
.gs-article-lead{font-size:clamp(1.2rem,2vw,1.5rem);line-height:1.5;color:var(--gs-muted)}.gs-article-body{margin:3rem 0}.gs-prose :where(ul,ol){padding-left:1.4rem}.gs-prose :where(li+li){margin-top:.4rem}.gs-prose :where(figure){margin:2rem 0}.gs-prose :where(figcaption){font-size:.82rem;color:var(--gs-muted);text-align:center;margin-top:.6rem}
.gs-hero h1{max-width:60rem;font-size:clamp(3.6rem,6.6vw,6.7rem)}
@media(max-width:760px){.gs-hero h1{font-size:clamp(3rem,12vw,4.25rem)}}
.gs-faq-list .gs-faq-item{border-top:1px solid #ccc9c1;padding:0}.gs-faq-list .gs-faq-item:last-child{border-bottom:1px solid #ccc9c1}.gs-faq-list h3{margin:0;font:inherit}.gs-faq-toggle{display:flex;align-items:center;justify-content:space-between;gap:1rem;width:100%;padding:1.25rem 0;text-align:left;border:0;background:transparent;color:inherit;font:700 .95rem/1.5 var(--gs-sans);cursor:pointer}.gs-faq-toggle span{color:var(--gs-gold);font-size:1.5rem}.gs-faq-toggle[aria-expanded=true] span{transform:rotate(45deg)}.gs-faq-answer{padding:0 0 1.25rem;color:var(--gs-muted)}.gs-faq-answer p{margin:0}
.gs-footer__social{display:flex;flex-wrap:wrap;gap:.5rem 1rem;margin-top:1.4rem}.gs-footer__social a{color:var(--gs-gold)}
.gs-navigation .menu-item-has-children{position:relative}.gs-navigation .sub-menu{display:none;position:absolute;top:100%;left:-1rem;min-width:18rem;padding:1rem;background:var(--gs-forest-900);box-shadow:0 1rem 2rem #0003;flex-direction:column;gap:0}.gs-navigation .sub-menu li{width:100%}.gs-navigation .sub-menu a{display:block;padding:.55rem .4rem;line-height:1.4}.gs-navigation .menu-item-has-children:hover>.sub-menu,.gs-navigation .menu-item-has-children:focus-within>.sub-menu{display:flex}
@media(max-width:760px){.gs-navigation.is-open{overflow-y:auto;align-items:stretch}.gs-navigation .sub-menu{display:block;position:static;min-width:0;padding:.25rem 0 .5rem 1rem;box-shadow:none;background:transparent}.gs-navigation .sub-menu a{padding:.25rem .4rem;font-size:.78rem;color:#c8d0ca}.gs-navigation ul{gap:.55rem}.gs-navigation .menu-item-has-children>a{font-size:1rem}.gs-navigation .gs-nav-cta{align-self:flex-start;margin-top:1rem}}

/* Refinamentos de movimento e profundidade: leves, sem bibliotecas externas. */
:root{--gs-ease-out:cubic-bezier(.22,1,.36,1);--gs-ease-smooth:cubic-bezier(.25,.8,.25,1);--gs-gold-light:#e5c990;--gs-gold-glint:#d9b87d;--gs-sand:#e8e0d3}
@supports(color:color-mix(in srgb,red,white)){:root{--gs-gold-light:color-mix(in srgb,var(--gs-gold) 72%,white);--gs-gold-glint:color-mix(in srgb,var(--gs-gold) 83%,white);--gs-sand:color-mix(in srgb,var(--gs-ivory) 84%,var(--gs-gold))}}
.gs-brand span{text-transform:uppercase}
.gs-difference{background:var(--gs-sand)}
.gs-header{z-index:50;border-bottom:1px solid transparent}
.gs-site:not(.home) .gs-header{position:sticky;top:0;z-index:50}
.gs-header::after{content:"";position:absolute;bottom:-1px;left:0;width:100%;height:1px;background:var(--gs-gold);opacity:.7;transform:scaleX(var(--gs-scroll-progress,0));transform-origin:left center;pointer-events:none}
.gs-navigation>ul>li>a{position:relative;display:inline-block;padding:.65rem 0;transition:color .25s ease}
/* Reveal a fixed, crisp rule: no scaling or overshoot at either endpoint. */
.gs-navigation>ul>li>a::after{content:"";position:absolute;left:0;bottom:.35rem;width:100%;height:1px;background:var(--gs-gold);pointer-events:none;transform:none;clip-path:inset(0 100% 0 0);transition:clip-path .65s cubic-bezier(.4,0,.2,1)}
.gs-navigation>ul>li:focus-within>a::after,.gs-navigation>ul>li.current-menu-item>a::after,.gs-navigation>ul>li.current-menu-ancestor>a::after,.gs-navigation>ul>li>a:active::after{clip-path:inset(0 0 0 0)}
@media(hover:hover) and (pointer:fine){.gs-navigation>ul>li:hover>a::after{clip-path:inset(0 0 0 0)}}
.gs-navigation .sub-menu{display:flex;opacity:0;visibility:hidden;pointer-events:none;transform:translateY(.7rem);background:rgba(11,23,19,.91);border:1px solid rgba(255,255,255,.11);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);transition:opacity .26s ease,transform .32s var(--gs-ease-out),visibility .26s}
.gs-navigation .menu-item-has-children:hover>.sub-menu,.gs-navigation .menu-item-has-children:focus-within>.sub-menu{opacity:1;visibility:visible;pointer-events:auto;transform:translateY(0)}
.gs-navigation .sub-menu a{transition:color .22s ease,padding-left .22s ease}
.gs-navigation .sub-menu a:hover,.gs-navigation .sub-menu a:focus-visible{padding-left:.7rem;color:var(--gs-gold-light)}
.gs-button{position:relative;overflow:visible;isolation:isolate;cursor:pointer;border-radius:.9rem;box-shadow:0 2px 8px rgba(8,19,15,.055);transition:transform .38s cubic-bezier(.4,0,.2,1),background-color .46s ease,border-color .46s ease,color .46s ease,box-shadow .48s ease}
.gs-button:hover{transform:translateY(-1.5px)}
.gs-button:active{transform:translateY(0) scale(.994)}
.gs-button--gold{color:var(--gs-forest-950);border-color:rgba(255,247,222,.32);background:var(--gs-gold);background-image:linear-gradient(110deg,var(--gs-gold) 0%,var(--gs-gold) 42%,var(--gs-gold-glint) 50%,var(--gs-gold) 58%,var(--gs-gold) 100%);background-size:260% 100%;background-position:100% 0;box-shadow:0 2px 9px rgba(107,76,35,.105);transition:transform .38s cubic-bezier(.4,0,.2,1),background-position .86s cubic-bezier(.4,0,.2,1),border-color .46s ease,box-shadow .48s ease,color .46s ease}
.gs-button--gold:hover,.gs-navigation a.gs-button--gold:hover,.gs-button--gold:focus-visible,.gs-navigation a.gs-button--gold:focus-visible{color:var(--gs-forest-950);background-position:0 0;box-shadow:0 5px 14px rgba(107,76,35,.13)}
.gs-button--outline:hover,.gs-button--outline:focus-visible{background:var(--gs-gold);color:var(--gs-forest-950);box-shadow:0 5px 16px rgba(0,0,0,.1)}
.gs-text-link{display:inline-flex;align-items:center;gap:.25rem;transition:color .25s ease}
.gs-text-link span{display:inline-block;transition:transform .35s var(--gs-ease-out)}
.gs-text-link:hover span,.gs-text-link:focus-visible span{transform:translateX(.35rem)}
.gs-hero{overflow:hidden}
.gs-hero::after{background:linear-gradient(90deg,rgba(8,19,15,.89) 0%,rgba(8,19,15,.52) 50%,rgba(8,19,15,.2)),linear-gradient(0deg,rgba(8,19,15,.34),transparent 46%)}
.gs-hero__media{transition:transform 1.4s var(--gs-ease-out)}
.gs-intro__image{position:relative;isolation:isolate;overflow:visible}
.gs-intro__image::after{content:"";position:absolute;inset:1rem -1rem -1rem 1rem;border:1px solid rgba(200,163,99,.65);z-index:-1;pointer-events:none}
.gs-intro__image img{transition:transform .75s var(--gs-ease-out),filter .75s ease}
.gs-intro__image:hover img{transform:scale(1.015);filter:saturate(1.06)}
.gs-section__heading{align-items:end}
.gs-solutions{overflow:hidden}
.gs-solution{position:relative;isolation:isolate;grid-template-columns:3.4rem minmax(0,1fr) clamp(13rem,21vw,16.25rem) 2.6rem;gap:clamp(1rem,2.2vw,2.5rem);padding:1.15rem .7rem;transition:background-color .35s ease}
.gs-solution::before{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,rgba(200,163,99,.095),rgba(200,163,99,.018) 76%);transform:scaleX(0);transform-origin:left;transition:transform .55s var(--gs-ease-out)}
.gs-solution:hover::before,.gs-solution:focus-within::before{transform:scaleX(1)}
.gs-solution__number{font:500 clamp(1.8rem,2.6vw,2.65rem)/1 var(--gs-serif);color:var(--gs-gold);align-self:start;margin-top:.7rem}
.gs-solution__copy h3{max-width:42rem;font-size:clamp(2rem,3.05vw,3.05rem);line-height:1.02}
.gs-solution__copy h3 a{transition:color .3s ease}
.gs-solution__copy h3 a:hover,.gs-solution__copy h3 a:focus-visible{color:#8c672d}
.gs-solution__visual{position:relative;display:block;width:100%;aspect-ratio:3/2;overflow:hidden;background:#d6d6cf}
.gs-solution__visual::after{content:"";position:absolute;inset:0;border:1px solid rgba(255,255,255,.24);pointer-events:none}
.gs-solution__visual img{width:100%;height:100%;object-fit:cover;filter:none;transform:scale(1);transition:transform .7s var(--gs-ease-out),filter .7s ease}
.gs-solution:hover .gs-solution__visual img,.gs-solution:focus-within .gs-solution__visual img{transform:scale(1.06);filter:saturate(1.09)}
.gs-solution__arrow{width:2.5rem;height:2.5rem;border:1px solid rgba(200,163,99,.65);border-radius:50%;display:grid;place-items:center;font-size:1.25rem;color:#8b652d;transition:transform .3s var(--gs-ease-out),background-color .3s ease,color .3s ease}
.gs-solution:hover .gs-solution__arrow,.gs-solution__arrow:focus-visible{transform:translate(2px,-2px);background:var(--gs-gold);color:var(--gs-forest-950)}
.gs-method{overflow:hidden}
.gs-method img{filter:saturate(.82);transition:transform .9s var(--gs-ease-out),filter .9s ease}
.gs-method__grid{overflow:hidden}
.gs-method__grid:hover img{transform:scale(1.025);filter:saturate(1)}
.gs-difference li{position:relative;padding-left:0;transition:padding-left .35s var(--gs-ease-out),color .35s ease}
.gs-difference li::before{content:"";position:absolute;left:0;top:50%;width:.65rem;height:1px;background:var(--gs-gold);opacity:0;transform:translate(-.4rem,-50%);transition:opacity .3s,transform .3s}
.gs-difference li:hover{padding-left:1.4rem;color:var(--gs-forest-800)}
.gs-difference li:hover::before{opacity:1;transform:translateX(0)}
.gs-faq-toggle{transition:color .25s ease,padding-left .3s var(--gs-ease-out)}
.gs-faq-toggle:hover{color:#8b652d;padding-left:.35rem}
.gs-faq-toggle span{transition:transform .35s var(--gs-ease-out)}
.gs-proposal{position:relative;isolation:isolate;background:var(--gs-forest-950);overflow:hidden}
.gs-proposal::before{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,rgba(8,19,15,.91),rgba(8,19,15,.82)),url('../images/palacio-liberdade.webp') center/cover;transition:transform 1.2s var(--gs-ease-out)}
.gs-proposal:hover::before{transform:scale(1.025)}
.gs-page-hero{position:relative;isolation:isolate;overflow:hidden;background:radial-gradient(circle at 17% 22%,rgba(200,163,99,.12),transparent 35%),linear-gradient(125deg,var(--gs-forest-950),var(--gs-forest-800))}
.gs-page-hero::before{content:"";position:absolute;width:min(45vw,40rem);aspect-ratio:1;right:-12%;bottom:-70%;border:1px solid rgba(200,163,99,.18);border-radius:50%;pointer-events:none}
.gs-page-hero img{box-shadow:0 26px 70px rgba(0,0,0,.28);filter:saturate(.87);transition:transform .8s var(--gs-ease-out),filter .8s ease}
.gs-page-hero img:hover{transform:scale(1.025);filter:saturate(1)}
.gs-page-content .gs-prose{border-left:1px solid rgba(200,163,99,.3);padding-left:clamp(1rem,4vw,3rem)}
.gs-page-content--contact{display:grid;grid-template-columns:minmax(0,1fr) minmax(18rem,.58fr);align-items:start;gap:clamp(2rem,5vw,5rem)}
.gs-page-content--contact .gs-prose{min-width:0}
.gs-contact-panel{padding:clamp(1.8rem,4vw,3rem);background:var(--gs-forest-950);color:var(--gs-ivory);border-top:2px solid var(--gs-gold)}
.gs-contact-panel h2{font-size:clamp(2.3rem,3vw,3.4rem);margin:0 0 2rem}
.gs-contact-details{display:grid;gap:1.1rem}
.gs-contact-details,.gs-contact-details dd{margin:0}
.gs-contact-details__item{padding-top:1rem;border-top:1px solid rgba(255,255,255,.16)}
.gs-contact-details__label{display:block;margin-bottom:.3rem;color:var(--gs-gold);font-size:.68rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase}
.gs-contact-details__value{overflow-wrap:anywhere}
.gs-contact-details a{transition:color .25s ease}
.gs-contact-details a:hover,.gs-contact-details a:focus-visible{color:var(--gs-gold-light)}
.gs-contact-details__social{display:flex;flex-wrap:wrap;gap:.75rem 1.15rem}
.gs-listing-hero{position:relative;isolation:isolate;overflow:hidden;padding:clamp(5rem,8vw,8rem) 0;background:radial-gradient(circle at 85% 25%,rgba(200,163,99,.13),transparent 32%),linear-gradient(125deg,var(--gs-forest-950),var(--gs-forest-800));color:var(--gs-ivory)}
.gs-listing-hero::after{content:"";position:absolute;right:-8%;bottom:-55%;width:min(47vw,40rem);aspect-ratio:1;border:1px solid rgba(200,163,99,.2);border-radius:50%;z-index:-1}
.gs-listing-hero h1{max-width:55rem;margin:0 0 1.2rem;font-size:clamp(3.9rem,7vw,7.2rem)}
.gs-listing-hero p:not(.gs-overline){max-width:42rem;margin:0;color:rgba(244,241,233,.77);font-size:clamp(1rem,1.4vw,1.2rem)}
.gs-listing-body{background:var(--gs-white)}
.gs-listing-body .gs-service-grid,.gs-listing-body .gs-article-list{gap:clamp(2rem,4vw,4rem)}
.gs-listing-body .gs-service-grid article,.gs-listing-body .gs-article-list article{border-top:1px solid rgba(200,163,99,.5);padding-top:1rem}
.gs-listing-body .gs-service-grid img,.gs-listing-body .gs-article-list img{display:block;width:100%;aspect-ratio:3/2;object-fit:cover}
.gs-listing-body .gs-service-grid article p,.gs-listing-body .gs-article-list article p:not(.gs-meta){max-width:33rem;color:var(--gs-muted)}
.gs-listing-body .gs-service-grid .gs-text-link{margin-top:.8rem}
.gs-service-hero .gs-breadcrumbs{color:rgba(244,241,233,.64)}
.gs-service-hero .gs-breadcrumbs a:hover{color:var(--gs-gold-light)}
.gs-service-hero .gs-page-hero__grid{grid-template-columns:1fr .72fr}
.gs-service-hero img{aspect-ratio:3/2}
.gs-site.single-post main.gs-section{background:var(--gs-white);padding-top:clamp(4rem,7vw,7rem)}
.gs-site.single-post .gs-prose h1{max-width:48rem;margin:.3rem 0 1.5rem}
.gs-site.single-post .gs-prose .wp-post-image{width:100%;aspect-ratio:1.65;object-fit:cover}
.gs-site.single-post .gs-prose .gs-meta{border-bottom:1px solid #d5d4cc;padding-bottom:1rem}
.gs-service-grid article,.gs-article-list article{position:relative;overflow:hidden;transition:transform .4s var(--gs-ease-out)}
.gs-service-grid article:hover,.gs-article-list article:hover{transform:translateY(-5px)}
.gs-service-grid article img,.gs-article-list article img{transition:transform .65s var(--gs-ease-out),filter .65s ease}
.gs-service-grid article:hover img,.gs-article-list article:hover img{transform:scale(1.025);filter:saturate(1.08)}
.gs-service-grid article h2,.gs-article-list article h2{transition:color .3s ease}
.gs-service-grid article:hover h2,.gs-article-list article:hover h2{color:#8c672d}
.gs-whatsapp{box-shadow:0 4px 14px rgba(0,0,0,.2);transition:transform .38s cubic-bezier(.4,0,.2,1),box-shadow .48s ease,background-color .46s ease}
.gs-whatsapp:hover,.gs-whatsapp:focus-visible{transform:translateY(-2px);box-shadow:0 7px 18px rgba(0,0,0,.23);background:var(--gs-gold-light)}
.gs-footer a{transition:color .25s ease}
.gs-footer a:hover,.gs-footer a:focus-visible{color:var(--gs-gold-light)}
@media (prefers-reduced-motion:no-preference){
  .gs-hero__media{animation:gs-hero-image 1.4s var(--gs-ease-out) both}
  .gs-hero__content>*{animation:gs-hero-rise .8s var(--gs-ease-out) both}
  .gs-hero__content>*:nth-child(2){animation-delay:.12s}
  .gs-hero__content>*:nth-child(3){animation-delay:.22s}
  .gs-hero__content>*:nth-child(4){animation-delay:.32s}
  .gs-motion-ready .gs-reveal{opacity:0;transform:translateY(2rem);transition:opacity .75s var(--gs-ease-out),transform .75s var(--gs-ease-out);transition-delay:var(--gs-delay,0ms)}
  .gs-motion-ready .gs-reveal.is-visible{opacity:1;transform:translateY(0)}
  .gs-motion-ready .gs-reveal.gs-reveal--image{transform:translateY(2.2rem) scale(.975)}
  .gs-motion-ready .gs-reveal.gs-reveal--image.is-visible{transform:translateY(0) scale(1)}
  .gs-solution:nth-child(2){--gs-delay:65ms}.gs-solution:nth-child(3){--gs-delay:130ms}.gs-solution:nth-child(4){--gs-delay:195ms}.gs-solution:nth-child(5){--gs-delay:260ms}
}
@keyframes gs-hero-rise{from{opacity:0;transform:translateY(1.7rem)}to{opacity:1;transform:translateY(0)}}
@keyframes gs-hero-image{from{transform:scale(1.055)}to{transform:scale(1)}}
@media(max-width:1100px){
  .gs-menu-toggle{position:relative;z-index:2;cursor:pointer}
  .gs-menu-toggle span{transform-origin:center;transition:transform .3s var(--gs-ease-out),opacity .2s ease}
  .gs-menu-toggle[aria-expanded=true] span:nth-child(1){transform:translateY(.4rem) rotate(45deg)}
  .gs-menu-toggle[aria-expanded=true] span:nth-child(2){opacity:0}
  .gs-menu-toggle[aria-expanded=true] span:nth-child(3){transform:translateY(-.4rem) rotate(-45deg)}
  .gs-navigation,.gs-navigation.is-open{display:flex;position:fixed;inset:5.5rem 0 0;z-index:1;padding:2rem max(1.5rem,calc((100vw - 76rem)/2));flex-direction:column;align-items:flex-start;overflow-y:auto;background:rgba(8,19,15,.95);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);transition:opacity .32s ease,transform .4s var(--gs-ease-out),visibility .32s}
  .gs-navigation{opacity:0;visibility:hidden;pointer-events:none;transform:translateY(-1rem)}
  .gs-navigation.is-open{opacity:1;visibility:visible;pointer-events:auto;transform:translateY(0)}
  .gs-navigation .sub-menu{display:block;position:static;min-width:0;padding:.25rem 0 .5rem 1.25rem;opacity:1;visibility:inherit;pointer-events:auto;transform:none;box-shadow:none;border:0;background:transparent;-webkit-backdrop-filter:none;backdrop-filter:none}
  .gs-navigation:not(.is-open) .sub-menu{visibility:hidden}
  .gs-navigation .sub-menu a{color:#c8d0ca}
  .gs-navigation>ul>li>a{padding:.25rem 0}
  .gs-navigation>ul>li>a::after{bottom:.12rem}
  .gs-navigation .gs-nav-cta{margin-top:1.25rem}
}
@media(max-width:760px){
  .gs-solution{grid-template-columns:2.35rem minmax(0,1fr) 2.5rem;gap:1rem .7rem;padding:1.45rem 0}
  .gs-solution__number{grid-column:1;grid-row:1;margin-top:.15rem;font-size:1.8rem}
  .gs-solution__copy{grid-column:2;grid-row:1}
  .gs-solution__copy h3{font-size:clamp(1.65rem,7vw,2.25rem)}
  .gs-solution__copy p{font-size:.81rem}
  .gs-solution__visual{grid-column:2/-1;grid-row:2;aspect-ratio:16/9}
  .gs-solution__visual img{display:block;width:100%;height:100%}
  .gs-solution__arrow{grid-column:3;grid-row:1;width:2.25rem;height:2.25rem}
  .gs-intro__image::after{inset:.65rem -.55rem -.55rem .65rem}
  .gs-page-content .gs-prose{padding-left:1rem}
  .gs-page-content--contact{grid-template-columns:1fr}
  .gs-service-hero .gs-page-hero__grid{grid-template-columns:1fr}
  .gs-listing-hero{padding:4.5rem 0}
  .gs-listing-hero h1{font-size:clamp(3.2rem,12vw,5rem)}
}
@media(prefers-reduced-motion:reduce){.gs-hero__media,.gs-hero__content>*,.gs-reveal{animation:none;opacity:1;transform:none}.gs-navigation,.gs-navigation.is-open{transition:none}}
@media(prefers-reduced-motion:no-preference){.gs-motion-ready .gs-service-grid article.gs-reveal.is-visible:hover,.gs-motion-ready .gs-article-list article.gs-reveal.is-visible:hover{transform:translateY(-5px)}.gs-motion-ready .gs-page-hero__grid img.gs-reveal.is-visible:hover{transform:scale(1.025)}}
@supports(color:color-mix(in srgb,red,transparent)){
  .gs-hero::after{background:linear-gradient(90deg,color-mix(in srgb,var(--gs-forest-950) 89%,transparent),color-mix(in srgb,var(--gs-forest-950) 52%,transparent) 50%,color-mix(in srgb,var(--gs-forest-950) 20%,transparent)),linear-gradient(0deg,color-mix(in srgb,var(--gs-forest-950) 34%,transparent),transparent 46%)}
  .gs-proposal::before{background:linear-gradient(90deg,color-mix(in srgb,var(--gs-forest-950) 91%,transparent),color-mix(in srgb,var(--gs-forest-950) 82%,transparent)),url('../images/palacio-liberdade.webp') center/cover}
  @media(max-width:1100px){.gs-navigation,.gs-navigation.is-open{background:color-mix(in srgb,var(--gs-forest-950) 95%,transparent)}}
}

/* Marca, enquadramento editorial e ritmo responsivo. */
.gs-brand--header{display:block;flex:0 0 auto;width:clamp(12.75rem,15vw,13.75rem);line-height:0}
.gs-brand--header picture,.gs-brand--header img,.gs-brand--footer picture,.gs-brand--footer img{display:block;width:100%;height:auto}
.gs-brand--header img{max-height:4.2rem;object-fit:contain;object-position:left center}
.gs-header__inner{gap:clamp(1.25rem,2.5vw,2.25rem)}
.gs-navigation{min-width:0;gap:clamp(1rem,1.6vw,2rem)}
.gs-navigation ul{gap:clamp(.9rem,1.35vw,1.75rem)}
.gs-brand--footer{display:block;width:min(100%,12.5rem);line-height:0}
.gs-header .custom-logo{display:block;width:auto;max-width:13.75rem;max-height:3.5rem;object-fit:contain}
.gs-brand--footer + p{max-width:24rem;margin:1.2rem 0 0;line-height:1.75}
.gs-footer__grid{grid-template-columns:minmax(0,1.35fr) minmax(0,.8fr) minmax(0,1fr);gap:clamp(2rem,4vw,4rem)}
.gs-footer__grid > *{min-width:0}

.gs-framed-media{position:relative;isolation:isolate;min-width:0;margin:0}
.gs-framed-media::after{content:"";position:absolute;inset:.8rem -.8rem -.8rem .8rem;z-index:-1;border:1px solid rgba(200,163,99,.76);pointer-events:none;transition:transform .65s var(--gs-ease-out),border-color .65s ease}
.gs-framed-media:hover::after{transform:translate(.2rem,.2rem);border-color:var(--gs-gold-light)}
.gs-framed-media img{display:block;width:100%;height:auto}
.gs-intro__image img{width:100%;height:auto;aspect-ratio:960/1350;object-fit:contain}
.gs-section__heading{display:block;max-width:48rem}
.gs-section__heading h2{max-width:42rem}

.gs-method{padding:clamp(4.5rem,8vw,8rem) 0;overflow:hidden}
.gs-method__grid{grid-template-columns:minmax(0,1.05fr) minmax(0,.8fr);min-height:0;gap:clamp(2rem,5vw,5rem);overflow:visible}
.gs-method__grid > .gs-method__content{padding:0;max-width:37rem}
.gs-method__visual{width:calc(100% - .8rem);max-width:29rem;justify-self:end;margin:0 .8rem .8rem 0}
.gs-method .gs-method__visual img{width:100%;height:auto;aspect-ratio:960/1453;object-fit:contain;filter:saturate(.94)}
.gs-method__grid:hover .gs-method__visual img{transform:scale(1.012);filter:saturate(1.02)}

.gs-page-hero{padding:clamp(4.5rem,7vw,7rem) 0}
.gs-page-hero__grid,.gs-service-hero .gs-page-hero__grid{grid-template-columns:minmax(0,1.04fr) minmax(0,.82fr);gap:clamp(2rem,4.5vw,4rem);max-width:72rem}
.gs-page-hero__copy{min-width:0;max-width:38rem}
.gs-page-hero__visual{width:calc(100% - .8rem);max-width:31rem;justify-self:end;margin:0 .8rem .8rem 0}
.gs-page-hero .gs-page-hero__visual img{aspect-ratio:4/3;object-fit:cover;object-position:center}
.gs-page-hero--portrait .gs-page-hero__visual{max-width:22rem;justify-self:center}
.gs-page-hero--portrait .gs-page-hero__visual img{height:auto;max-height:33rem;aspect-ratio:auto;object-fit:contain}
.gs-page-hero--compact .gs-page-hero__grid{grid-template-columns:minmax(0,1fr) minmax(0,.48fr);gap:clamp(1.75rem,4vw,3rem)}
.gs-page-hero--compact .gs-page-hero__visual{max-width:18rem}
.gs-page-hero--compact .gs-page-hero__visual img{display:block;max-height:13rem;aspect-ratio:4/3;object-fit:cover}
.gs-page-content:not(.gs-page-content--contact){max-width:72rem}
.gs-page-content .gs-prose{max-width:54rem}
.gs-service-grid article,.gs-article-list article{overflow:visible}
.gs-card-media{display:block;width:calc(100% - .65rem);margin:0 .65rem .65rem 0}
.gs-card-media::after{inset:.55rem -.55rem -.55rem .55rem}
.gs-card-media__crop{display:block;overflow:hidden}
.gs-listing-body .gs-card-media img{width:100%;height:auto;aspect-ratio:3/2;object-fit:cover}
.gs-article-featured{width:calc(100% - .8rem);margin:2rem .8rem 3rem 0}
.gs-site.single-post .gs-article-featured .wp-post-image{width:100%;height:auto;aspect-ratio:3/2;object-fit:cover;margin:0}

.gs-faq-answer[hidden]{display:none!important}
.gs-faq-list.is-enhanced .gs-faq-answer{display:grid;grid-template-rows:0fr;opacity:0;visibility:hidden;padding:0;transition:grid-template-rows .48s var(--gs-ease-out),opacity .36s ease,visibility .48s}
.gs-faq-list.is-enhanced .gs-faq-item.is-open .gs-faq-answer{grid-template-rows:1fr;opacity:1;visibility:visible}
.gs-faq-answer__inner{min-height:0;overflow:hidden}
.gs-faq-answer__inner > :last-child{margin-bottom:1.3rem}
.gs-faq-list .gs-faq-item.is-open .gs-faq-toggle{color:#8b652d}

@media(max-width:1100px){
  .gs-brand--header{width:min(12.75rem,calc(100vw - 7rem))}
  .gs-navigation,.gs-navigation.is-open{top:5.5rem}
}
@media(max-width:960px){
  .gs-page-hero__grid,.gs-service-hero .gs-page-hero__grid,.gs-page-hero--compact .gs-page-hero__grid{grid-template-columns:minmax(0,1fr);gap:clamp(2rem,5vw,3rem)}
  .gs-page-hero__visual,.gs-page-hero--compact .gs-page-hero__visual{justify-self:start;max-width:36rem}
  .gs-page-hero--portrait .gs-page-hero__visual{justify-self:start;max-width:21rem}
  .gs-page-hero--compact .gs-page-hero__visual{max-width:25rem}
  .gs-difference__grid,.gs-faq__grid{gap:clamp(2rem,4vw,4rem)}
  .gs-footer__grid{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:2.5rem}
  .gs-footer__grid > :first-child{grid-column:1/-1}
}
@media(max-width:760px){
  .gs-container{width:min(calc(100% - 2.5rem),var(--gs-container))}
  .gs-header__inner{min-height:5.25rem}
  .gs-brand--header{width:min(12.125rem,calc(100vw - 7rem))}
  .gs-navigation,.gs-navigation.is-open{top:5.25rem}
  .gs-hero h1{font-size:clamp(3.15rem,12vw,5.25rem)}
  .gs-hero__content{padding:9rem 0 4.5rem}
  .gs-section{padding:clamp(4.5rem,14vw,6rem) 0}
  .gs-intro__grid,.gs-difference__grid,.gs-faq__grid{gap:clamp(2.25rem,8vw,3.5rem)}
  .gs-intro__image{width:calc(100% - .55rem);max-width:30rem}
  .gs-intro__image img{aspect-ratio:960/1350;object-fit:contain}
  .gs-intro h2,.gs-section__heading h2,.gs-method h2,.gs-difference h2,.gs-faq h2,.gs-proposal h2{font-size:clamp(2.7rem,9vw,4rem)}
  .gs-method{padding:clamp(4.5rem,14vw,6rem) 0}
  .gs-method__grid{grid-template-columns:minmax(0,1fr);gap:2.7rem}
  .gs-method__grid > .gs-method__content{padding:0}
  .gs-method__visual{grid-row:auto;width:calc(100% - .65rem);max-width:23rem;justify-self:center;margin:0 .65rem .65rem 0}
  .gs-method .gs-method__visual img{height:auto;aspect-ratio:960/1453;object-fit:contain}
  .gs-page-hero{padding:clamp(3.75rem,12vw,5rem) 0}
  .gs-page-hero__grid,.gs-service-hero .gs-page-hero__grid{grid-template-columns:minmax(0,1fr);gap:2.25rem}
  .gs-page-hero__visual{width:calc(100% - .65rem);max-width:35rem;margin:0 .65rem .65rem 0}
  .gs-page-hero .gs-page-hero__visual img{display:block;aspect-ratio:4/3}
  .gs-page-hero--portrait .gs-page-hero__visual{max-width:19rem}
  .gs-page-hero--portrait .gs-page-hero__visual img{aspect-ratio:auto}
  .gs-page-hero--compact{padding:3.75rem 0}
  .gs-page-hero--compact .gs-page-hero__grid{grid-template-columns:minmax(0,1fr);gap:2rem}
  .gs-page-hero--compact .gs-page-hero__visual{width:calc(100% - .65rem);max-width:25rem}
  .gs-page-hero--compact .gs-page-hero__visual img{display:block;max-height:11rem;aspect-ratio:2/1}
  .gs-page-hero h1{font-size:clamp(3rem,12vw,4.5rem)}
  .gs-page-content .gs-prose{padding-left:1rem}
  .gs-footer__grid{grid-template-columns:minmax(0,1fr);gap:2.4rem}
  .gs-footer__grid > :first-child{grid-column:auto}
  .gs-brand--footer{width:min(12.5rem,62vw)}
}
@media(max-width:420px){
  .gs-container{width:calc(100% - 2rem)}
  .gs-brand--header{width:min(11.625rem,calc(100vw - 7rem))}
  .gs-framed-media::after{inset:.6rem -.5rem -.5rem .6rem}
  .gs-page-hero__visual,.gs-method__visual{width:calc(100% - .5rem);margin-right:.5rem;margin-bottom:.5rem}
}
@media(prefers-reduced-motion:reduce){
  .gs-framed-media::after,.gs-framed-media img,.gs-faq-list.is-enhanced .gs-faq-answer{transition:none!important}
}

/* Escala tipográfica, contraste e movimento editorial da revisão 1.3. */
:root{--gs-gold-ink:#856334}
h1,h2,h3{line-height:1.04;text-wrap:balance;overflow-wrap:break-word}
.gs-hero h1,.gs-page-hero h1,.gs-listing-hero h1,.gs-prose h1{line-height:1.01}
.gs-solution__copy h3,.gs-card-title{line-height:1.08}
.gs-overline,.gs-solution__number{color:var(--gs-gold-ink)}
.gs-hero .gs-overline,.gs-method .gs-overline,.gs-page-hero .gs-overline,.gs-listing-hero .gs-overline,.gs-proposal .gs-overline,.gs-contact-panel .gs-overline,.gs-footer .gs-overline{color:var(--gs-gold-light)}
a:focus-visible,button:focus-visible,summary:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline-color:var(--gs-gold-ink)}
.gs-hero a:focus-visible,.gs-page-hero a:focus-visible,.gs-method a:focus-visible,.gs-listing-hero a:focus-visible,.gs-footer a:focus-visible,.gs-navigation a:focus-visible{outline-color:var(--gs-gold-light)}
.gs-intro__grid{grid-template-columns:minmax(0,.78fr) minmax(0,1fr);gap:clamp(2.25rem,5.5vw,5rem)}
.gs-intro__content{min-width:0}
.gs-method__visual{justify-self:start}
.gs-content-teaser h2{max-width:39rem;margin:0;font-size:clamp(2.5rem,4.3vw,4.4rem)}
.gs-content-teaser .gs-difference__grid{align-items:center}
.gs-page-hero--portrait .gs-page-hero__visual img{max-height:none}
.gs-service-hero--long-title h1{font-size:clamp(3rem,5vw,4.5rem)}
.gs-menu-toggle{min-width:2.75rem;min-height:2.75rem}
.gs-site.gs-menu-open .gs-header{background:var(--gs-forest-950);-webkit-backdrop-filter:none;backdrop-filter:none}
.gs-section__heading h2,.gs-intro h2,.gs-method h2,.gs-difference h2,.gs-faq h2,.gs-proposal h2{max-width:18ch}
.gs-listing-hero__title{max-width:14ch;min-width:0}
.gs-listing-hero__intro{max-width:42rem;line-height:1.65}
.gs-listing-hero__intro p{margin:0}
.gs-listing-body :is(.gs-service-grid,.gs-article-list){align-items:start}
.gs-listing-card{min-width:0}
.gs-card-title{max-width:24ch;margin:1.25rem 0 .65rem;font-size:clamp(2rem,3vw,2.65rem)}
.gs-entry-title{max-width:15ch;margin:.25rem 0 1.5rem}
.single-post .gs-entry-title{max-width:25ch;font-size:clamp(2.5rem,1.9rem + 2.4vw,4rem);line-height:1.08}
.gs-article-body>h2{margin:2.5rem 0 1rem;font-size:clamp(1.85rem,1.55rem + 1.15vw,2.6rem);line-height:1.15;text-wrap:balance}
.gs-article-body>h3{margin:1.8rem 0 .8rem;font-size:clamp(1.4rem,1.2rem + .6vw,1.8rem);line-height:1.2}
.gs-article-body :is(p,li){line-height:1.8;overflow-wrap:break-word}
.gs-article-body li+li{margin-top:.7rem}
.gs-section[id],#atendimento-regional{scroll-margin-block-start:6.5rem}
.gs-empty-state{max-width:48rem;padding:clamp(1.75rem,5vw,3.5rem);background:var(--gs-ivory);border-top:2px solid var(--gs-gold);box-shadow:0 16px 45px rgba(8,19,15,.055)}
.gs-empty-state h2{max-width:18ch;margin:0 0 1rem;font-size:clamp(2.3rem,4vw,3.8rem)}
.gs-empty-state p{max-width:34rem;margin:0 0 1.5rem}
.gs-faq-list h2{margin:0;font:inherit}
.gs-pagination,.gs-listing-body .navigation.pagination{margin-top:clamp(2.5rem,5vw,4.5rem)}
.gs-pagination :is(.nav-links,ul.page-numbers),.gs-listing-body .navigation.pagination .nav-links{display:flex;flex-wrap:wrap;align-items:center;gap:.4rem}
.gs-pagination ul.page-numbers{padding:0;list-style:none}
.gs-pagination :is(a,span.page-numbers){min-width:2.75rem;min-height:2.75rem;padding:.5rem .75rem;display:inline-grid;place-items:center;border:1px solid #d5d4cc;font-size:.85rem;font-weight:700;line-height:1.25;transition:color .25s ease,background-color .25s ease,border-color .25s ease}
.gs-pagination :is(a:hover,a:focus-visible,.current){background:var(--gs-forest-900);border-color:var(--gs-forest-900);color:var(--gs-ivory)}
.gs-listing-body .navigation.pagination :is(a,span.page-numbers){min-width:2.75rem;min-height:2.75rem;padding:.5rem .75rem;display:inline-grid;place-items:center;border:1px solid #d5d4cc;font-size:.85rem;font-weight:700;line-height:1.25}
.gs-listing-body .navigation.pagination :is(a:hover,a:focus-visible,.current){background:var(--gs-forest-900);border-color:var(--gs-forest-900);color:var(--gs-ivory)}
.gs-service-grid article:focus-within,.gs-article-list article:focus-within{transform:translateY(-5px)}
.gs-motion-ready .gs-service-grid article.gs-reveal.is-visible:focus-within,.gs-motion-ready .gs-article-list article.gs-reveal.is-visible:focus-within{transform:translateY(-5px)}
.gs-service-grid article:focus-within img,.gs-article-list article:focus-within img{transform:scale(1.025);filter:saturate(1.08)}
.gs-service-grid article:focus-within h2,.gs-article-list article:focus-within h2{color:var(--gs-gold-ink)}
.gs-entry-footer{padding-top:1.25rem;border-top:1px solid #d5d4cc}
.gs-entry-footer .post-navigation .nav-links{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1.5rem;margin-top:2.5rem}
.gs-entry-footer .post-navigation :is(.nav-previous,.nav-next){min-width:0}
.gs-entry-footer .post-navigation a{display:grid;gap:.3rem;min-height:5.5rem;padding:1.1rem;border-top:1px solid var(--gs-gold);background:var(--gs-ivory);text-decoration:none}
.gs-entry-nav__label{font:.7rem/1.4 var(--gs-sans);font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--gs-gold-ink)}
.gs-error-page .gs-prose{max-width:50rem}
.gs-error-page .gs-actions{flex-wrap:wrap;margin-bottom:3rem}
.gs-form :is(input,select,textarea):hover{border-color:var(--gs-gold-ink)}
.gs-form :is(input,select,textarea):focus-visible{border-color:var(--gs-gold-ink);box-shadow:0 0 0 3px rgba(133,99,52,.12)}
@media(max-width:960px){
  .gs-intro__grid{gap:clamp(2rem,4vw,3rem)}
}
@media(max-width:760px){
  .gs-intro__grid{grid-template-columns:minmax(0,1fr);gap:clamp(2.25rem,8vw,3.5rem)}
  .gs-method__visual{justify-self:center}
  .gs-hero h1{font-size:clamp(3rem,11vw,5rem)}
  .gs-page-hero h1{font-size:clamp(2.9rem,10vw,4.5rem)}
  .gs-service-hero--long-title h1{font-size:clamp(2.6rem,8.4vw,3.65rem)}
  .gs-content-teaser h2{font-size:clamp(2.55rem,8vw,3.6rem)}
  .gs-section__heading h2,.gs-intro h2,.gs-method h2,.gs-difference h2,.gs-faq h2,.gs-proposal h2{max-width:100%}
  .gs-page-content .gs-prose{border-left:0;padding-left:0}
  .gs-listing-hero__title{max-width:100%}
  .gs-card-title{font-size:clamp(2rem,8vw,2.5rem)}
  .gs-entry-footer .post-navigation .nav-links{grid-template-columns:minmax(0,1fr)}
  .gs-search-form{flex-direction:column;align-items:stretch}
  .gs-search-form button{min-height:2.75rem}
}
@media(max-width:420px){
  .gs-solution__copy h3{font-size:clamp(1.55rem,7.3vw,1.85rem)}
}
@media(prefers-reduced-motion:no-preference){
  .gs-motion-ready .gs-reveal{transform:translateY(1.15rem);transition-duration:.72s}
  .gs-motion-ready .gs-reveal.gs-reveal--image{transform:translateY(1.2rem) scale(.99)}
  .gs-page-hero__copy{animation:gs-hero-rise .72s var(--gs-ease-out) both}
  .gs-page-hero__visual{animation:gs-hero-rise .82s var(--gs-ease-out) .12s both}
  .gs-listing-hero .gs-container > *{animation:gs-hero-rise .72s var(--gs-ease-out) both}
  .gs-listing-hero .gs-container > :nth-child(2){animation-delay:.08s}
  .gs-listing-hero .gs-container > :nth-child(3){animation-delay:.16s}
}
@media(prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  *,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}
}

/* Formulários editoriais: superfícies táteis, foco nítido e ritmo mobile-first. */
.gs-form{position:relative;isolation:isolate;width:100%;max-width:48rem;gap:clamp(1.1rem,2.2vw,1.55rem);margin:clamp(1.75rem,3vw,2.5rem) 0 0;padding:clamp(1.2rem,3.5vw,2.8rem);border:1px solid rgba(133,99,52,.17);border-radius:1.65rem;background:linear-gradient(145deg,rgba(255,254,251,.99),rgba(249,246,238,.97));box-shadow:0 28px 75px rgba(8,19,15,.075),0 2px 8px rgba(8,19,15,.025);transition:border-color .35s ease,box-shadow .35s ease}
.gs-form:focus-within{border-color:rgba(133,99,52,.42);box-shadow:0 32px 80px rgba(8,19,15,.085),0 0 0 4px rgba(200,163,99,.055)}
.gs-form::before{content:"";position:absolute;top:0;left:clamp(1.2rem,3.5vw,2.8rem);width:4.25rem;height:2px;border-radius:0 0 2px 2px;background:var(--gs-gold);box-shadow:0 0 16px rgba(200,163,99,.22)}
.gs-form__intro{margin:0 0 .2rem;color:var(--gs-muted);font-size:.9rem;line-height:1.65}
.gs-form__row{grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(1rem,2vw,1.35rem)}
.gs-form .gs-form__field{position:relative;display:grid;min-width:0;gap:.55rem;margin:0;color:var(--gs-forest-800);font-size:.78rem;font-weight:700;line-height:1.35;letter-spacing:.035em;transition:color .25s ease}
.gs-form .gs-form__field:focus-within{color:var(--gs-gold-ink)}
.gs-form__label{display:inline-flex;align-items:baseline;gap:.3rem}
.gs-form__optional{color:var(--gs-muted);font-size:.73rem;font-weight:500;letter-spacing:0}
.gs-form__required{color:var(--gs-gold-ink)}
.gs-form__hint{display:block;margin:0;color:var(--gs-muted);font-size:.74rem;font-weight:500;line-height:1.5;letter-spacing:0}
.gs-form :is(input:not([type=hidden]):not([type=checkbox]):not([type=file]),select,textarea){display:block;width:100%;min-width:0;min-height:3.7rem;padding:.95rem 1.1rem;border:1px solid #d4dcd3;border-radius:.95rem;background:rgba(255,255,255,.92);box-shadow:inset 0 1px 0 rgba(255,255,255,.9),0 1px 2px rgba(8,19,15,.025);color:var(--gs-charcoal);font:500 .96rem/1.45 var(--gs-sans);letter-spacing:0;transition:border-color .28s ease,background-color .28s ease,box-shadow .28s ease,transform .28s var(--gs-ease-out)}
.gs-form :is(input:not([type=hidden]):not([type=checkbox]):not([type=file]),select,textarea):hover{border-color:#a7b6a7;background:#fff}
.gs-form :is(input:not([type=hidden]):not([type=checkbox]):not([type=file]),select,textarea):focus-visible{outline:2px solid var(--gs-gold-ink);outline-offset:2px;border-color:var(--gs-gold-ink);background:#fff;box-shadow:0 0 0 5px rgba(200,163,99,.15),0 12px 24px rgba(8,19,15,.055);transform:translateY(-1px)}
.gs-form :is(input,textarea)::placeholder{color:#89948b;opacity:1}
.gs-form textarea{min-height:10rem;resize:vertical;line-height:1.65}
.gs-form select{appearance:none;padding-right:3.1rem;background-image:linear-gradient(45deg,transparent 50%,#385548 50%),linear-gradient(135deg,#385548 50%,transparent 50%);background-repeat:no-repeat;background-size:.35rem .35rem;background-position:calc(100% - 1.42rem) 52%,calc(100% - 1.08rem) 52%;cursor:pointer}
.gs-form select:required:invalid{color:#68766e}
.gs-form select option{color:var(--gs-charcoal)}
.gs-form .gs-form__field--file{padding:1.15rem;border:1px dashed #b4bda9;border-radius:1.1rem;background:linear-gradient(135deg,rgba(244,241,233,.8),rgba(255,255,255,.8));transition:border-color .28s ease,background-color .28s ease,box-shadow .28s ease}
.gs-form .gs-form__field--file:hover,.gs-form .gs-form__field--file:focus-within{border-color:var(--gs-gold-ink);box-shadow:0 0 0 4px rgba(200,163,99,.1)}
.gs-form input[type=file]{width:100%;max-width:100%;padding:.5rem 0;border:0;border-radius:0;background:transparent;box-shadow:none;color:var(--gs-muted);font:500 .85rem/1.5 var(--gs-sans);cursor:pointer}
.gs-form input[type=file]::file-selector-button{min-height:2.65rem;margin-right:1rem;padding:.6rem 1rem;border:1px solid rgba(16,37,29,.16);border-radius:999px;background:var(--gs-forest-800);color:var(--gs-ivory);font:700 .72rem/1.2 var(--gs-sans);letter-spacing:.045em;cursor:pointer;transition:background-color .25s ease,transform .25s var(--gs-ease-out)}
.gs-form input[type=file]:hover::file-selector-button{background:#234936;transform:translateY(-1px)}
.gs-form .gs-form__consent{display:flex!important;align-items:flex-start;gap:.85rem;margin-top:.15rem;padding:1rem 1.15rem;border:1px solid rgba(16,37,29,.1);border-radius:1rem;background:rgba(230,231,218,.38);color:#33453a;font-size:.82rem;font-weight:500;line-height:1.6;letter-spacing:0}
.gs-form__consent input[type=checkbox]{flex:0 0 auto;width:1.2rem;height:1.2rem;margin:.17rem 0 0;accent-color:var(--gs-forest-800);cursor:pointer}
.gs-form__consent span{min-width:0}
.gs-form__consent a{font-weight:700;text-underline-offset:.2em}
.gs-form > .gs-button{justify-self:start;min-width:15rem;min-height:3.65rem;margin-top:.15rem;padding:1rem 2rem;border-radius:999px;box-shadow:0 4px 12px rgba(133,99,52,.09)}
.gs-form > .gs-button:hover,.gs-form > .gs-button:focus-visible{box-shadow:0 6px 16px rgba(133,99,52,.13)}
.gs-form__message{max-width:48rem;padding:1rem 1.2rem;border:1px solid rgba(133,99,52,.2);border-left:3px solid var(--gs-gold-ink);border-radius:.9rem;background:#fffdf9;box-shadow:0 10px 28px rgba(8,19,15,.04);color:var(--gs-forest-800);line-height:1.6}
.gs-form__message--error{border-left-color:#9e4d41;background:#fff9f6}
.gs-form__message--success{border-left-color:#357054;background:#f5fbf5}
.gs-search-form{align-items:center;max-width:42rem;gap:.45rem;padding:.4rem;border:1px solid #d8ded2;border-radius:1.15rem;background:#fffdf9;box-shadow:0 14px 40px rgba(8,19,15,.065);transition:border-color .28s ease,box-shadow .28s ease}
.gs-search-form:focus-within{border-color:var(--gs-gold-ink);box-shadow:0 0 0 4px rgba(200,163,99,.13),0 16px 42px rgba(8,19,15,.07)}
.gs-search-form__field{display:flex;align-items:center;flex:1;min-width:0;gap:.65rem;padding-left:1rem;color:var(--gs-gold-ink)}
.gs-search-form__field svg{flex:0 0 1.2rem;width:1.2rem;height:1.2rem}
.gs-search-form input{width:100%;min-height:3.5rem;padding:.65rem .5rem;border:0;border-radius:.8rem;background:transparent;color:var(--gs-charcoal);font:500 .95rem/1.4 var(--gs-sans)}
.gs-search-form input::placeholder{color:#697970}
.gs-search-form input:focus-visible{outline:2px solid var(--gs-gold-ink);outline-offset:-3px}
.gs-search-form button{flex:0 0 auto;min-height:3.5rem;padding:.75rem 1.65rem;border-radius:.85rem}
@media(max-width:960px){.gs-page-content--contact{grid-template-columns:minmax(0,1fr)}}
@media(max-width:760px){
  .gs-form{border-radius:1.25rem;gap:1.15rem}
  .gs-form__row{grid-template-columns:minmax(0,1fr);gap:1.15rem}
  .gs-form > .gs-button{justify-self:stretch;width:100%}
  .gs-search-form{flex-direction:row;align-items:center}
}
@media(max-width:460px){
  .gs-search-form{flex-direction:column;align-items:stretch}
  .gs-search-form__field{min-height:3.25rem}
  .gs-search-form button{width:100%}
  .gs-form input[type=file]::file-selector-button{display:block;margin:0 0 .55rem}
}

/* Ritmo tipográfico e eixo comum nas páginas de conversão e busca. */
.gs-page-hero--compact h1{max-width:100%;line-height:1.07;letter-spacing:-.03em;text-wrap:balance;hyphens:none}
.gs-page-content--compact .gs-prose{max-width:48rem;border-left:0;padding-left:0}
.gs-page-content--compact .gs-prose > :is(h2,h3){max-width:23ch;line-height:1.14;text-wrap:balance}
.gs-page-content--compact .gs-prose > p:first-child{max-width:42rem}
.gs-page-content--compact .gs-contact-panel h2{max-width:18ch;line-height:1.12;text-wrap:balance}
.gs-listing-hero--search .gs-listing-hero__title{max-width:18ch;font-size:clamp(3rem,5.2vw,5.6rem);line-height:1.06;overflow-wrap:anywhere;text-wrap:balance}
.gs-article-list .gs-card-title{max-width:24ch;margin:1.15rem 0 .7rem;font-size:clamp(1.85rem,2.7vw,2.35rem);line-height:1.12;overflow-wrap:break-word;text-wrap:pretty}
.gs-error-page .gs-entry-title{max-width:20ch;font-size:clamp(3rem,5.6vw,5.75rem);line-height:1.06;text-wrap:balance}
.gs-error-page .gs-empty-state h2{line-height:1.1;text-wrap:balance}
@media(max-width:760px){
  .gs-page-hero--compact{padding:3rem 0}
  .gs-page-hero--compact h1{font-size:clamp(2.7rem,10vw,4.5rem)}
  .gs-article-list .gs-card-title{font-size:clamp(1.85rem,7.4vw,2.2rem)}
}

/* Fotografia em resolução nativa: a interação acontece na moldura, não nos pixels. */
.gs-intro__image img,.gs-solution__visual img,.gs-method .gs-method__visual img,.gs-page-hero .gs-page-hero__visual img,.gs-service-grid article img,.gs-article-list article img{filter:none;transform:none}
.gs-intro__image:hover img,.gs-solution:is(:hover,:focus-within) .gs-solution__visual img,.gs-method__grid:hover .gs-method__visual img,.gs-page-hero .gs-page-hero__visual:is(:hover,:focus-within) img,.gs-service-grid article:is(:hover,:focus-within) img,.gs-article-list article:is(:hover,:focus-within) img{filter:none;transform:none}
.gs-page-hero .gs-page-hero__visual:is(:hover,:focus-within) img{box-shadow:0 30px 78px rgba(0,0,0,.36)}
.gs-solution__visual,.gs-card-media__crop{transition:box-shadow .4s var(--gs-ease-out)}
.gs-solution:is(:hover,:focus-within) .gs-solution__visual,.gs-service-grid article:is(:hover,:focus-within) .gs-card-media__crop,.gs-article-list article:is(:hover,:focus-within) .gs-card-media__crop{box-shadow:0 14px 34px rgba(8,19,15,.16)}
.gs-service-grid article,.gs-article-list article{transition:border-color .35s ease}
.gs-service-grid article:is(:hover,:focus-within),.gs-article-list article:is(:hover,:focus-within){transform:none;border-top-color:var(--gs-gold-ink)}
.gs-proposal::before{transform:none;transition:background-position 1s var(--gs-ease-out);background-position:center}
.gs-proposal:hover::before{transform:none;background-position:52% center}
@media(prefers-reduced-motion:no-preference){
  .gs-hero__media,.gs-page-hero__visual{animation-fill-mode:backwards}
  .gs-hero__media{animation:gs-photo-appear 1.15s ease-out both}
  .gs-motion-ready .gs-reveal.gs-reveal--image{transform:none}
  .gs-motion-ready .gs-reveal.gs-reveal--image.is-visible,.gs-motion-ready .gs-solution.gs-reveal.is-visible,.gs-motion-ready .gs-article-featured.gs-reveal.is-visible,.gs-motion-ready .gs-service-grid article.gs-reveal.is-visible,.gs-motion-ready .gs-article-list article.gs-reveal.is-visible{transform:none}
  .gs-motion-ready .gs-service-grid article.gs-reveal.is-visible:is(:hover,:focus-within),.gs-motion-ready .gs-article-list article.gs-reveal.is-visible:is(:hover,:focus-within),.gs-motion-ready .gs-page-hero__grid img.gs-reveal.is-visible:hover{transform:none}
}
@keyframes gs-photo-appear{from{opacity:.72}to{opacity:1}}

/* Primeira dobra: as duas chamadas permanecem inteiras mesmo em janelas baixas. */
.gs-hero{min-height:min(52rem,100svh)}
.gs-hero .gs-actions{position:relative;z-index:2}
.gs-button--gold:is(:hover,:focus-visible),.gs-navigation a.gs-button--gold:is(:hover,:focus-visible){color:var(--gs-forest-950);background-position:0 0;box-shadow:0 5px 14px rgba(107,76,35,.13)}
.gs-hero .gs-text-link{position:relative;min-height:2.75rem;color:var(--gs-ivory);transition:color .65s cubic-bezier(.4,0,.2,1),text-shadow .65s cubic-bezier(.4,0,.2,1)}
/* Reveal a full-resolution line; its glow fades independently, without scaling. */
.gs-hero .gs-text-link::after{content:"";position:absolute;left:0;right:1.45rem;bottom:.28rem;height:1px;background:var(--gs-gold-light);opacity:0;transform:none;clip-path:inset(0 72% 0 0);transition:opacity .65s cubic-bezier(.4,0,.2,1),clip-path .75s cubic-bezier(.4,0,.2,1)}
.gs-hero .gs-text-link::before{content:"";position:absolute;inset:65% .5rem -.7rem -.3rem;pointer-events:none;background:radial-gradient(ellipse at 43% 34%,rgba(200,163,99,.24),transparent 72%);opacity:0;transition:opacity .75s cubic-bezier(.4,0,.2,1)}
.gs-hero .gs-text-link span{transition:transform .75s cubic-bezier(.4,0,.2,1)}
.gs-hero .gs-text-link:is(:hover,:focus-visible){color:var(--gs-gold-light);text-shadow:0 5px 17px rgba(200,163,99,.38)}
.gs-hero .gs-text-link:is(:hover,:focus-visible)::after{opacity:1;transform:none;clip-path:inset(0);box-shadow:none}
.gs-hero .gs-text-link:is(:hover,:focus-visible)::before{opacity:1}
@media(prefers-reduced-motion:reduce){.gs-hero .gs-text-link,.gs-hero .gs-text-link::before,.gs-hero .gs-text-link::after,.gs-hero .gs-text-link span{transition:none}}
@media(min-width:1101px) and (max-height:950px){
  .gs-hero__content{padding-top:clamp(6rem,14svh,8rem);padding-bottom:clamp(5.5rem,15svh,8rem)}
  .gs-hero h1{max-width:70rem;font-size:clamp(3.6rem,min(6vw,11svh),6rem);margin-bottom:1.15rem}
  .gs-hero .gs-lead{line-height:1.55}
  .gs-hero .gs-actions{margin-top:1.5rem}
}
@media(min-width:761px) and (max-width:1100px) and (max-height:620px){
  .gs-hero__content{padding-top:5.75rem;padding-bottom:3.25rem}
  .gs-hero h1{font-size:clamp(3rem,6vw,4rem);margin-bottom:1rem}
  .gs-hero .gs-lead{font-size:.95rem;line-height:1.5}
  .gs-hero .gs-actions{margin-top:1.25rem}
}
@media(max-width:760px){
  .gs-hero{min-height:100svh}
  .gs-hero__content{padding-top:clamp(6rem,14svh,7rem);padding-bottom:clamp(3.25rem,8svh,4rem)}
  .gs-hero h1{font-size:clamp(2.6rem,10vw,4rem);line-height:1;margin-bottom:1rem}
  .gs-hero .gs-lead{font-size:clamp(.9rem,3.7vw,1rem);line-height:1.55;margin:0}
  .gs-hero .gs-actions{margin-top:1.45rem;gap:.55rem}
}
@media(max-width:380px) and (max-height:600px){
  .gs-hero__content{padding-top:5.25rem;padding-bottom:2.75rem}
  .gs-hero h1{font-size:2.5rem;margin-bottom:.75rem}
  .gs-hero .gs-actions{margin-top:1rem;gap:.4rem}
}
@media(max-width:380px){
  .gs-listing-body{padding-top:3.5rem}
  .gs-listing-body .gs-search-form{margin-top:1rem}
}

/* Soluções: profundidade editorial sem ampliar nem filtrar a fotografia. */
.gs-solution__visual{outline:1px solid rgba(200,163,99,.35);outline-offset:0;transition:transform .58s var(--gs-ease-out),box-shadow .58s var(--gs-ease-out),outline-color .35s ease}
.gs-solution__visual img{transform:none;filter:none;transition:none}
.gs-solution__visual::after{transition:border-color .35s ease}
.gs-solution:is(:hover,:focus-within) .gs-solution__visual::after{border-color:rgba(255,247,226,.55)}
@media(min-width:761px) and (prefers-reduced-motion:no-preference){
  .gs-solution:focus-within{z-index:2}
  .gs-solution:focus-within .gs-solution__visual{transform:translate(-6px,-8px);outline-color:rgba(200,163,99,.9);box-shadow:8px 8px 0 rgba(200,163,99,.17),0 24px 46px rgba(8,19,15,.22)}
}
@media(min-width:761px) and (hover:hover) and (pointer:fine) and (prefers-reduced-motion:no-preference){
  .gs-solution:hover{z-index:2}
  .gs-solution:hover .gs-solution__visual{transform:translate(-6px,-8px);outline-color:rgba(200,163,99,.9);box-shadow:8px 8px 0 rgba(200,163,99,.17),0 24px 46px rgba(8,19,15,.22)}
}
@media(max-width:760px){
  .gs-solution__visual{box-shadow:5px 6px 0 -1px rgba(200,163,99,.22)}
  .gs-solution:focus-within .gs-solution__visual{outline-color:var(--gs-gold-ink);box-shadow:6px 7px 0 -1px rgba(200,163,99,.36)}
}
@media(prefers-reduced-motion:reduce){
  .gs-solution__visual{transition:none}
  .gs-solution:is(:hover,:focus-within) .gs-solution__visual{transform:none;outline-color:var(--gs-gold-ink);box-shadow:0 12px 28px rgba(8,19,15,.16)}
}

/* Quem Somos e Método SGS: a fotografia avança sem zoom ou filtro nos pixels. */
.gs-framed-media--lift img{position:relative;z-index:1;transition:transform .72s var(--gs-ease-out),box-shadow .72s var(--gs-ease-out)}
.gs-framed-media--lift::after{transition:transform .72s var(--gs-ease-out),border-color .48s ease,box-shadow .72s ease}
@media(min-width:761px) and (hover:hover) and (pointer:fine) and (prefers-reduced-motion:no-preference){
  .gs-intro .gs-framed-media--lift:hover img,.gs-method .gs-framed-media--lift:hover img,.gs-page-hero .gs-framed-media--lift:hover img{transform:translate(-14px,-16px);filter:none;box-shadow:0 24px 42px rgba(8,19,15,.25),0 48px 86px rgba(8,19,15,.3)}
  .gs-framed-media--lift:hover::after{transform:translate(6px,8px);border-color:var(--gs-gold-light);box-shadow:0 18px 36px rgba(200,163,99,.17)}
}
@media(prefers-reduced-motion:reduce){
  .gs-framed-media--lift:hover::after,.gs-framed-media--lift:hover img,.gs-method__grid:hover .gs-framed-media--lift img{transform:none}
}

/* Convite final: dois planos independentes criam profundidade sem ampliar o texto. */
.gs-proposal::before{inset:0;z-index:0;background:url('../images/palacio-liberdade.webp') center/cover no-repeat;transform:none;transition:transform 1.05s var(--gs-ease-out)}
.gs-proposal::after{content:"";position:absolute;inset:0;z-index:1;background:linear-gradient(90deg,rgba(8,19,15,.91),rgba(8,19,15,.82));opacity:1;pointer-events:none;transition:opacity .95s ease}
.gs-proposal > .gs-container{position:relative;z-index:2}
.gs-proposal:hover::before{background-position:center}
@supports(color:color-mix(in srgb,red,white)){
  .gs-proposal::after{background:linear-gradient(90deg,color-mix(in srgb,var(--gs-forest-950) 91%,transparent),color-mix(in srgb,var(--gs-forest-950) 82%,transparent))}
}
@media(min-width:761px) and (hover:hover) and (pointer:fine) and (prefers-reduced-motion:no-preference){
  .gs-proposal:hover::before{transform:scale(1.025) translateY(-.25rem)}
  .gs-proposal:hover::after{opacity:.9}
}

/* As marcas do cabeçalho e rodapé ganham luz, nunca escala: os arquivos lossless mantêm as bordas nítidas. */
:is(.gs-header .gs-brand--header,.gs-header .custom-logo-link,.gs-footer .gs-brand--footer){position:relative;isolation:isolate;transition:transform .42s var(--gs-ease-out)}
.gs-header .custom-logo-link{display:block;flex:0 0 auto;line-height:0}
:is(.gs-header .gs-brand--header,.gs-header .custom-logo-link,.gs-footer .gs-brand--footer)::after{content:"";position:absolute;inset:-.35rem -.5rem;z-index:-1;background:radial-gradient(ellipse at center,rgba(229,201,144,.17),transparent 70%);opacity:0;transform:scale(.86);pointer-events:none;transition:opacity .5s ease,transform .55s var(--gs-ease-out)}
:is(.gs-header .gs-brand--header,.gs-header .custom-logo-link,.gs-footer .gs-brand--footer) img{position:relative;z-index:1;transition:filter .45s ease}
@media(hover:hover) and (pointer:fine) and (prefers-reduced-motion:no-preference){
  :is(.gs-header .gs-brand--header,.gs-header .custom-logo-link,.gs-footer .gs-brand--footer):hover{transform:translateY(-2px)}
  :is(.gs-header .gs-brand--header,.gs-header .custom-logo-link,.gs-footer .gs-brand--footer):hover::after{opacity:1;transform:scale(1)}
  :is(.gs-header .gs-brand--header,.gs-header .custom-logo-link,.gs-footer .gs-brand--footer):hover img{filter:brightness(1.08) drop-shadow(0 0 7px rgba(229,201,144,.27))}
}
:is(.gs-header .gs-brand--header,.gs-header .custom-logo-link,.gs-footer .gs-brand--footer):focus-visible::after{opacity:1;transform:scale(1)}
:is(.gs-header .gs-brand--header,.gs-header .custom-logo-link,.gs-footer .gs-brand--footer):focus-visible img{filter:brightness(1.08) drop-shadow(0 0 7px rgba(229,201,144,.27))}
/* Reflexo do rodapé sobe de um núcleo pequeno para folhas irregulares, sem desfocar a marca. */
.gs-footer .gs-brand--footer::after{inset:-.8rem -.9rem -.35rem -.8rem;background:radial-gradient(ellipse 13% 43% at 49% 53%,rgba(229,201,144,.16),transparent 76%),radial-gradient(ellipse 27% 20% at 37% 34%,rgba(229,201,144,.11),transparent 78%),radial-gradient(ellipse 33% 19% at 66% 27%,rgba(200,163,99,.085),transparent 76%),radial-gradient(ellipse 23% 11% at 48% 69%,rgba(200,163,99,.08),transparent 80%);filter:blur(5px);transform:translate(-2px,4px) rotate(-5deg) scale(.85)}
.gs-footer .gs-brand--footer:focus-visible::after{transform:translate(2px,-2px) rotate(-2deg) scale(1)}
.gs-footer .gs-brand--footer:focus-visible img{filter:brightness(1.07) drop-shadow(2px 0 8px rgba(229,201,144,.18))}
@media(hover:hover) and (pointer:fine) and (prefers-reduced-motion:no-preference){
  .gs-footer .gs-brand--footer:hover::after{transform:translate(2px,-2px) rotate(-2deg) scale(1)}
  .gs-footer .gs-brand--footer:hover img{filter:brightness(1.07) drop-shadow(2px 0 8px rgba(229,201,144,.18))}
}
/* No cabeçalho, a luz é do halo; evitar drop-shadow animado no bitmap elimina o custo do primeiro hover. */
.gs-header :is(.gs-brand--header,.custom-logo-link){transition:transform .56s cubic-bezier(.33,0,.2,1)}
.gs-header :is(.gs-brand--header,.custom-logo-link)::after{transform:translateY(3px) scale(.96);transition:opacity .62s cubic-bezier(.4,0,.2,1),transform .62s cubic-bezier(.33,0,.2,1)}
.gs-header :is(.gs-brand--header,.custom-logo-link) img{filter:brightness(1);transition:filter .62s cubic-bezier(.4,0,.2,1)}
@media(hover:hover) and (pointer:fine) and (prefers-reduced-motion:no-preference){
  .gs-header :is(.gs-brand--header,.custom-logo-link){will-change:transform}
  .gs-header :is(.gs-brand--header,.custom-logo-link)::after{will-change:opacity,transform}
  .gs-header :is(.gs-brand--header,.custom-logo-link):hover::after{transform:translateY(0) scale(1)}
  .gs-header :is(.gs-brand--header,.custom-logo-link):hover img{filter:brightness(1.08)}
}
.gs-header :is(.gs-brand--header,.custom-logo-link):focus-visible::after{transform:translateY(0) scale(1)}
.gs-header :is(.gs-brand--header,.custom-logo-link):focus-visible img{filter:brightness(1.08)}
@media(prefers-reduced-motion:reduce){
  .gs-proposal:hover::before{transform:none}
  .gs-proposal:hover::after{opacity:1}
  :is(.gs-header .gs-brand--header,.gs-header .custom-logo-link,.gs-footer .gs-brand--footer):hover{transform:none}
  .gs-footer .gs-brand--footer:hover::after{transform:none}
}

/* Respiro das imagens editoriais e leitura mais clara do progresso no vidro. */
.gs-header::after{height:2px;opacity:.94;background:linear-gradient(90deg,var(--gs-gold),var(--gs-gold-light));box-shadow:0 1px 7px rgba(200,163,99,.32)}
.gs-intro__image{max-width:27rem}
.gs-method__visual{max-width:26.5rem}
@media(max-width:760px){
  .gs-intro__image{width:calc(100% - 1.25rem);max-width:25rem}
  .gs-method__visual{width:calc(100% - 1.25rem);max-width:22rem;margin-right:.75rem;margin-bottom:.75rem}
}

/* A troca de cor começa no limite da dobra; as duas camadas compartilham a mesma geometria. */
.gs-header::before,.gs-header::after{height:2px;transform:scaleX(var(--gs-scroll-progress,0));transform-origin:left center}
.gs-header::before{content:"";position:absolute;bottom:-1px;left:0;width:100%;background:linear-gradient(90deg,#65b77b,#a8d4a1);opacity:0;box-shadow:0 0 0 1px rgba(101,183,123,.18),0 1px 11px rgba(101,183,123,.55);pointer-events:none}
.gs-header[data-progress-tone="light"]::before{opacity:1}
.gs-header[data-progress-tone="light"]::after{opacity:0}
.gs-site.gs-menu-open .gs-header::before{opacity:0}
.gs-site.gs-menu-open .gs-header::after{opacity:.94}

/* Botão do método: a semente cresce sem deslocar o texto ou alterar a nitidez. */
.gs-method .gs-button--sprout{gap:.72rem;min-height:3.55rem;padding:.8rem 1.15rem .8rem 1.35rem;border:1px solid rgba(229,201,144,.7);border-radius:1rem;background:linear-gradient(145deg,rgba(229,201,144,.09),rgba(229,201,144,.015) 74%);color:var(--gs-gold-light);box-shadow:0 3px 12px rgba(0,0,0,.08);transition:transform .42s cubic-bezier(.4,0,.2,1),border-color .52s ease,box-shadow .55s ease,color .48s ease}
.gs-method .gs-button--sprout::before{content:"";position:absolute;inset:0;z-index:0;border-radius:inherit;background:radial-gradient(ellipse 65% 110% at 83% 115%,rgba(229,201,144,.19),transparent 75%);opacity:0;transform:translateY(9px);pointer-events:none;transition:opacity .78s cubic-bezier(.4,0,.2,1),transform .78s cubic-bezier(.4,0,.2,1)}
.gs-button--sprout .gs-button__label,.gs-button--sprout .gs-button__sprout{position:relative;z-index:1}
.gs-button--sprout .gs-button__sprout{display:block;flex:0 0 1.7rem;width:1.7rem;height:1.7rem;overflow:visible;color:inherit}
.gs-button--sprout .gs-button__seed{transform-origin:12px 19.5px;transition:opacity .48s ease,transform .56s var(--gs-ease-out)}
.gs-button--sprout .gs-button__stem{stroke-dasharray:14;stroke-dashoffset:3;transition:stroke-dashoffset .58s cubic-bezier(.4,0,.2,1) .12s}
.gs-button--sprout .gs-button__leaf{opacity:0;transform-box:fill-box;transform-origin:center bottom;transform:translateY(2px) scale(.72);transition:opacity .56s cubic-bezier(.4,0,.2,1),transform .6s var(--gs-ease-out)}
.gs-button--sprout .gs-button__leaf--left{opacity:.62;transform:translateY(1px) scale(.83);transition-delay:.24s}
.gs-button--sprout .gs-button__leaf--right{opacity:.38;transform:translateY(1px) scale(.74);transition-delay:.34s}
.gs-button--sprout .gs-button__leaf--crown{transition-delay:.44s}
.gs-method .gs-button--sprout:is(:hover,:focus-visible){background:linear-gradient(145deg,rgba(229,201,144,.09),rgba(229,201,144,.015) 74%);border-color:var(--gs-gold-light);color:#f0d8a5;box-shadow:0 6px 18px rgba(0,0,0,.11)}
.gs-method .gs-button--sprout:is(:hover,:focus-visible)::before{opacity:1;transform:translateY(0)}
.gs-button--sprout:is(:hover,:focus-visible) .gs-button__seed{opacity:.52;transform:scale(.8)}
.gs-button--sprout:is(:hover,:focus-visible) .gs-button__stem{stroke-dashoffset:0}
.gs-button--sprout:is(:hover,:focus-visible) .gs-button__leaf{opacity:1;transform:translateY(0) scale(1)}
@media(hover:none) and (prefers-reduced-motion:no-preference){
  .gs-button--sprout.is-sprouted::before{opacity:1;transform:translateY(0)}
  .gs-button--sprout.is-sprouted .gs-button__seed{opacity:.52;transform:scale(.8)}
  .gs-button--sprout.is-sprouted .gs-button__stem{stroke-dashoffset:0}
  .gs-button--sprout.is-sprouted .gs-button__leaf{opacity:1;transform:translateY(0) scale(1)}
}
@media(prefers-reduced-motion:reduce){
  .gs-button:is(:hover,:focus-visible),.gs-whatsapp:is(:hover,:focus-visible){transform:none}
  .gs-button--gold{background-image:none}
  .gs-method .gs-button--sprout::before{display:none}
  .gs-button--sprout .gs-button__stem{stroke-dashoffset:0}
  .gs-button--sprout .gs-button__leaf{opacity:1;transform:none}
}

/* O halo ultrapassa discretamente os botões comuns; o broto SGS mantém somente a luz própria junto ao caule. */
.gs-button:not(.gs-button--sprout)::after{content:"";position:absolute;z-index:-1;inset:-.8rem -.65rem -.36rem;pointer-events:none;background:radial-gradient(ellipse 42% 58% at 27% 66%,rgba(229,201,144,.19),transparent 84%),radial-gradient(ellipse 41% 38% at 73% 75%,rgba(200,163,99,.15),transparent 87%),radial-gradient(ellipse 29% 48% at 54% 25%,rgba(229,201,144,.1),transparent 86%);opacity:0;transform:translate(-1px,2px) rotate(-3deg) scale(.94);transition:opacity .72s cubic-bezier(.4,0,.2,1),transform .82s cubic-bezier(.33,0,.2,1)}
.gs-button:not(.gs-button--sprout):is(:hover,:focus-visible)::after{opacity:1;transform:translate(0,0) rotate(-1deg) scale(1)}
/* Nos CTAs dourados, a luz desce apenas mais alguns pixels; o broto SGS permanece isolado. */
.gs-button--gold:not(.gs-button--sprout)::after{bottom:-.48rem}
/* Nas dobras com fotografia, um segundo reflexo assimétrico toca apenas a área imediata do botão. */
.gs-cta-aura{position:relative;display:inline-flex;max-width:100%;isolation:isolate;vertical-align:top}
.gs-cta-aura > .gs-button{z-index:1}
.gs-cta-aura::before{content:"";position:absolute;z-index:-1;inset:-1.05rem -.65rem -.42rem;pointer-events:none;background:radial-gradient(ellipse 42% 56% at 28% 60%,rgba(229,201,144,.19),transparent 84%),radial-gradient(ellipse 39% 42% at 72% 73%,rgba(200,163,99,.14),transparent 86%),radial-gradient(ellipse 26% 44% at 54% 24%,rgba(229,201,144,.1),transparent 85%);opacity:0;transform:translate(-2px,3px) rotate(-4deg) scale(.93);transition:opacity .78s cubic-bezier(.4,0,.2,1),transform .86s cubic-bezier(.33,0,.2,1)}
.gs-cta-aura:is(:hover,:focus-within)::before{opacity:1;transform:translate(0,0) rotate(-1deg) scale(1)}
@media(max-width:760px){
  .gs-button:not(.gs-button--sprout)::after{inset:-.75rem -.6rem -.1rem}
  .gs-button--gold:not(.gs-button--sprout)::after{bottom:-.16rem}
  .gs-cta-aura::before{inset:-.95rem -.6rem -.13rem}
}
@media(prefers-reduced-motion:reduce){.gs-button:not(.gs-button--sprout)::after,.gs-cta-aura::before{display:none}}

/* Hierarquia editorial: subtítulos com respiro e largura legível no celular. */
.gs-prose > :is(h2,h3){text-wrap:balance;line-height:1.16}
.gs-prose > h3{font-size:clamp(1.5rem,2.4vw,2rem);margin:2rem 0 .75rem}

/* Soluções imersivas: foto integral atrás da composição, sem blur ou zoom.
   A foto de 960px não é esticada para preencher monitores ultrawide. */
.gs-service-hero--immersive{
  --gs-service-photo-position:50% 10%;
  position:relative;isolation:isolate;padding:0;min-height:35rem;
  min-height:clamp(35rem,calc(100svh - 5.25rem),44rem);
  background:var(--gs-forest-950);overflow:hidden;
}
.gs-service-hero--immersive::before{display:none}
.gs-service-hero--immersive::after{
  content:"";position:absolute;inset:0;z-index:1;pointer-events:none;
  background:linear-gradient(180deg,rgba(8,19,15,.7) 0%,rgba(8,19,15,.18) 22%,rgba(8,19,15,.78) 48%,rgba(8,19,15,.97) 75%,var(--gs-forest-950) 100%);
}
.gs-service-hero__scene{position:absolute;inset:0;z-index:0;overflow:hidden;pointer-events:none}
.gs-service-hero--immersive .gs-service-hero__photo,
.gs-service-hero--immersive .gs-service-hero__photo:hover{
  display:block;width:100%;max-width:none;height:100%;aspect-ratio:auto;
  object-fit:cover;object-position:var(--gs-service-photo-position);
  filter:none;transform:none;box-shadow:none;transition:none;
}
.gs-service-hero__frame{
  position:absolute;inset:.65rem;z-index:2;pointer-events:none;
  border:1px solid rgba(200,163,99,.48);
  transition:border-color .85s cubic-bezier(.4,0,.2,1);
}
.gs-service-hero__frame::after{
  content:"";position:absolute;bottom:-1px;right:-1px;width:35%;height:1px;
  /* Reveal a fixed, sharp line instead of rescaling a hairline on each frame.
     The same zero-start/zero-end curve runs forward and backward without overshoot. */
  background:var(--gs-gold-light);opacity:.65;transform:none;clip-path:inset(0 0 0 55%);
  transition:clip-path .85s cubic-bezier(.4,0,.2,1),opacity .85s cubic-bezier(.4,0,.2,1);
}
.gs-service-hero--immersive .gs-page-hero__grid{
  position:relative;z-index:3;min-height:inherit;display:flex;flex-direction:column;
  width:min(calc(100% - 3rem),72rem);
  align-items:stretch;justify-content:space-between;gap:8rem;padding-block:2rem 2.75rem;
}
.gs-service-hero--immersive .gs-breadcrumbs{margin:0;max-width:100%;color:#e0e6df;font-size:.72rem;line-height:1.6}
.gs-service-hero--immersive .gs-page-hero__copy{position:relative;isolation:isolate;width:100%;max-width:40rem;min-width:0;animation:none}
.gs-service-hero--immersive .gs-page-hero__copy::before{content:"";position:absolute;inset:-2.5rem -1.5rem -2rem;z-index:-1;pointer-events:none;background:linear-gradient(180deg,transparent,rgba(8,19,15,.64) 20%,rgba(8,19,15,.3) 78%,transparent)}
.gs-service-hero--immersive .gs-overline{margin-bottom:1rem;color:var(--gs-gold-light)}
.gs-service-hero--immersive h1{max-width:16ch;margin:0 0 1.35rem;font-size:clamp(2.6rem,10vw,3.7rem);line-height:1.04;text-wrap:balance}
.gs-service-hero--immersive .gs-page-hero__copy > p:not(.gs-overline){max-width:35rem;margin:0;color:#eef0e9;font-size:clamp(1rem,2vw,1.2rem);line-height:1.75;text-wrap:pretty}
.gs-service-hero__explore{
  display:inline-flex;align-items:center;gap:1.25rem;min-height:2.75rem;
  margin-top:1.5rem;padding-block:.5rem;border-bottom:1px solid rgba(200,163,99,.5);
  color:var(--gs-gold-light);font-size:.7rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase;
  transition:color .35s ease,border-color .35s ease;
}
.gs-service-hero__explore span{font-size:1.3rem;line-height:1;transition:transform .5s var(--gs-ease-out)}
.gs-service-hero__explore:is(:hover,:focus-visible){color:var(--gs-white);border-color:var(--gs-gold-light)}
.gs-service-hero__explore:is(:hover,:focus-visible) span{transform:translateY(3px)}
.gs-service-hero[data-service="administracao-de-condominios"]{--gs-service-photo-position:66% 40%}
.gs-service-hero[data-service="corretagem-de-imoveis"]{--gs-service-photo-position:50% 52%}
.gs-service-hero[data-service="gestao-de-inadimplencia-condominial"]{--gs-service-photo-position:50% 3%}
.gs-service-content[id]{scroll-margin-top:6rem}
@media(min-width:761px){
  .gs-service-hero--immersive{min-height:clamp(34rem,74svh,45rem)}
  .gs-service-hero__scene{
    left:auto;width:min(75%,59.5rem);
    /* Dissolve the photograph itself, so no straight edge survives the overlay. */
    -webkit-mask-image:linear-gradient(90deg,transparent 0%,rgba(0,0,0,.025) 8%,rgba(0,0,0,.15) 20%,rgba(0,0,0,.45) 36%,rgba(0,0,0,.8) 52%,#000 70%);
    mask-image:linear-gradient(90deg,transparent 0%,rgba(0,0,0,.025) 8%,rgba(0,0,0,.15) 20%,rgba(0,0,0,.45) 36%,rgba(0,0,0,.8) 52%,#000 70%);
  }
  .gs-service-hero--immersive::after{background:linear-gradient(90deg,var(--gs-forest-950) 0%,rgba(8,19,15,.98) 25%,rgba(8,19,15,.9) 42%,rgba(8,19,15,.53) 60%,rgba(8,19,15,.1) 82%),linear-gradient(0deg,rgba(8,19,15,.8),transparent 48%,rgba(8,19,15,.16))}
  .gs-service-hero__frame{inset:clamp(1.25rem,2.25vw,2.5rem)}
  .gs-service-hero--immersive .gs-page-hero__grid{justify-content:flex-start;gap:clamp(2.5rem,6vw,5rem);padding-block:clamp(3rem,4.5vw,4.5rem)}
  .gs-service-hero--immersive .gs-page-hero__copy{max-width:min(62%,41rem);margin-block:auto}
  .gs-service-hero--immersive .gs-page-hero__copy::before{display:none}
  .gs-service-hero--immersive h1{font-size:clamp(3.4rem,5.6vw,5.8rem);max-width:16ch}
  .gs-service-hero--immersive.gs-service-hero--long-title h1{font-size:clamp(3rem,4.7vw,4.8rem)}
}
@media(min-width:761px) and (hover:hover) and (pointer:fine) and (prefers-reduced-motion:no-preference){
  .gs-service-hero--immersive .gs-service-hero__photo{width:calc(100% + 8px);transition:transform 1.15s cubic-bezier(.4,0,.2,1)}
  .gs-service-hero--immersive:hover .gs-service-hero__photo{transform:translateX(-8px)}
  .gs-service-hero--immersive:is(:hover,:focus-within) .gs-service-hero__frame{border-color:rgba(229,201,144,.76)}
  .gs-service-hero--immersive:is(:hover,:focus-within) .gs-service-hero__frame::after{clip-path:inset(0);opacity:1}
}
@media(prefers-reduced-motion:no-preference){
  .gs-service-hero__scene{animation:gs-service-scene-in 1.1s ease-out both}
  .gs-service-hero__frame{animation:gs-service-frame-in 1s ease-out .2s backwards}
  .gs-service-hero--immersive .gs-page-hero__copy{animation:gs-hero-rise .85s var(--gs-ease-out) .1s backwards}
}
@keyframes gs-service-scene-in{from{opacity:.65}to{opacity:1}}
@keyframes gs-service-frame-in{from{opacity:0}to{opacity:1}}
@media(prefers-reduced-motion:reduce){
  .gs-service-hero__scene,.gs-service-hero__frame,.gs-service-hero--immersive .gs-page-hero__copy{animation:none}
  .gs-service-hero__frame,.gs-service-hero__frame::after{transition:none}
  .gs-service-hero__explore:is(:hover,:focus-visible) span{transform:none}
}

/* Páginas editoriais, FAQ e formulários compartilham a fotografia imersiva das soluções.
   A altura editorial é mais contida para aproximar perguntas e formulários. */
.gs-page-hero--integrated{
  --gs-service-photo-position:50% 22%;
  min-height:clamp(29rem,calc(82svh - 5.25rem),35rem);
}
.gs-page-hero--integrated[data-page="solicitar-proposta"]{--gs-service-photo-position:62% 50%}
.gs-page-hero--integrated[data-page="nossa-filosofia"]{--gs-service-photo-position:55% 40%}
.gs-page-hero--integrated[data-page="contato"]{--gs-service-photo-position:55% 40%}
.gs-page-hero--integrated[data-page="politica-de-privacidade"]{--gs-service-photo-position:74% 56%}
.gs-page-hero--integrated[data-page="politica-de-cookies"]{--gs-service-photo-position:75% 50%}
.gs-page-hero--integrated[data-page="termos-de-uso"]{--gs-service-photo-position:75% 50%}
.gs-page-hero--integrated[data-page="quem-somos"]{--gs-service-photo-position:50% 32%}
.gs-page-hero--integrated[data-page="solucoes"]{--gs-service-photo-position:60% 28%}
#lista-de-solucoes{scroll-margin-top:6rem}
.gs-page-hero--integrated[data-page="blog"]{--gs-service-photo-position:70% 30%}
.gs-page-hero--integrated[data-page="blog"] .gs-page-hero__copy > .gs-blog-motto{max-width:100%;margin:0 0 1rem;color:var(--gs-gold);font-family:var(--gs-serif);font-size:clamp(1.5rem,2.5vw,2rem);line-height:1.25;text-wrap:pretty}
#artigos-do-blog{scroll-margin-top:6rem}
@media(max-width:760px){
  /* Legal still lifes and blog faces stay together above the mobile reading area. */
.gs-page-hero--integrated[data-page="politica-de-privacidade"] .gs-service-hero__scene{height:clamp(18rem,72vw,24rem);-webkit-mask-image:linear-gradient(180deg,#000 0%,#000 70%,transparent 100%);mask-image:linear-gradient(180deg,#000 0%,#000 70%,transparent 100%)}
.gs-page-hero--integrated[data-page="politica-de-privacidade"] .gs-service-hero__photo{object-position:100% 70%}
.gs-page-hero--integrated[data-page="politica-de-cookies"] .gs-service-hero__scene{height:clamp(18rem,72vw,24rem);-webkit-mask-image:linear-gradient(180deg,#000 0%,#000 70%,transparent 100%);mask-image:linear-gradient(180deg,#000 0%,#000 70%,transparent 100%)}
.gs-page-hero--integrated[data-page="politica-de-cookies"] .gs-service-hero__photo{object-position:100% 50%}
.gs-page-hero--integrated[data-page="termos-de-uso"] .gs-service-hero__scene{height:clamp(18rem,72vw,24rem);-webkit-mask-image:linear-gradient(180deg,#000 0%,#000 70%,transparent 100%);mask-image:linear-gradient(180deg,#000 0%,#000 70%,transparent 100%)}
.gs-page-hero--integrated[data-page="termos-de-uso"] .gs-service-hero__photo{object-position:100% 50%}
  .gs-page-hero--integrated[data-page="blog"] .gs-service-hero__scene{height:clamp(18rem,68vw,24rem)}
  .gs-page-hero--integrated[data-page="blog"] .gs-service-hero__photo{object-position:100% 36%}
  .gs-page-hero--integrated[data-page="blog"] .gs-service-hero__scene{
    -webkit-mask-image:linear-gradient(180deg,#000 0%,#000 58%,transparent 100%);
    mask-image:linear-gradient(180deg,#000 0%,#000 58%,transparent 100%);
  }
}
.gs-page-hero--integrated .gs-page-hero__grid{gap:3.5rem}
.gs-page-content--integrated{
  width:min(calc(100% - 3rem),72rem);
  padding-block:clamp(2.5rem,4.5vw,4rem) clamp(4rem,6vw,6rem);
  scroll-margin-top:6.5rem;
}
.gs-page-content--integrated .gs-prose{
  display:flow-root;max-width:48rem;width:100%;margin:0;padding:0;border:0;
}
.gs-page-content--integrated .gs-prose > :first-child{margin-top:0}
.gs-page-content--faq .gs-faq-list{margin:0}
.gs-page-content--faq .gs-faq-toggle{gap:1.25rem;text-align:start;line-height:1.5}
.gs-page-content--editorial .gs-prose > :is(h2,h3){
  max-width:100%;margin-inline:0;margin-top:clamp(2rem,3vw,3rem);
  line-height:1.16;letter-spacing:-.025em;text-wrap:balance;hyphens:none;
}
.gs-page-content--editorial .gs-prose > h2{font-size:clamp(2rem,1.6rem + 1.5vw,2.75rem)}
.gs-page-content--editorial .gs-prose > h3{font-size:clamp(1.5rem,1.35rem + .65vw,1.875rem)}
.gs-page-content--editorial .gs-prose > :first-child{margin-top:0}
.gs-page-content--editorial .gs-prose > :is(h2,h3) + p{margin-top:1rem}
.gs-page-content--editorial .gs-prose p{line-height:1.8;text-wrap:pretty}
.gs-page-content--editorial .gs-editorial-review{margin-top:2.5rem;padding-top:1rem;border-top:1px solid rgba(133,99,52,.25);font-size:.8rem;color:var(--gs-muted);overflow-wrap:break-word}
@media(min-width:761px){
  .gs-page-hero--integrated{min-height:clamp(27rem,58svh,35rem)}
  .gs-page-hero--integrated .gs-page-hero__grid{gap:2rem;padding-block:clamp(2.5rem,4vw,3.5rem)}
  .gs-page-hero--integrated:is([data-page="nossa-filosofia"],[data-page="contato"]) .gs-service-hero__scene{width:min(75%,55.25rem)}
}

/* Soluções: o texto continua no mesmo eixo do hero, sem recuo decorativo
   ou margem colapsada somando espaço antes do primeiro subtítulo. */
.gs-service-hero .gs-page-hero__copy > p:last-child{margin-bottom:0}
.gs-service-content{
  width:min(calc(100% - 3rem),72rem);
  padding-block:clamp(3rem,5vw,4.5rem) clamp(4rem,6vw,6rem);
}
.gs-service-content .gs-prose{
  display:flow-root;width:100%;max-width:48rem;margin:0;padding:0;border:0;
  text-align:start;font-size:clamp(1rem,.95rem + .15vw,1.0625rem);
}
.gs-service-content .gs-prose > *{margin-block:0}
.gs-service-content .gs-prose > * + *{margin-block-start:1.125rem}
.gs-service-content .gs-prose > :is(h2,h3){
  max-width:100%;margin-inline:0;margin-block-start:clamp(2rem,3vw,3rem);
  line-height:1.16;letter-spacing:-.025em;text-wrap:balance;hyphens:none;
  scroll-margin-top:7rem;
}
.gs-service-content .gs-prose > h2{font-size:clamp(2rem,1.6rem + 1.5vw,2.75rem)}
.gs-service-content .gs-prose > h3{font-size:clamp(1.5rem,1.35rem + .65vw,1.875rem)}
.gs-service-content .gs-prose > :is(h2,h3) + *{margin-block-start:1rem}
.gs-service-content .gs-prose > h2 + h3{margin-block-start:1.5rem}
.gs-service-content .gs-prose > :first-child{margin-block-start:0}
.gs-service-content .gs-prose > :last-child{margin-block-end:0}
.gs-service-content .gs-prose :is(p,li){line-height:1.8;text-wrap:pretty;overflow-wrap:break-word}
.gs-service-content .gs-prose > :is(ul,ol){padding-inline-start:1.35rem}
.gs-service-content .gs-prose li + li{margin-block-start:.65rem}
.gs-service-content .gs-prose li::marker{color:var(--gs-gold-ink)}
.gs-service-actions{
  display:flex;flex-wrap:wrap;align-items:center;gap:1.25rem 2rem;
  max-width:48rem;margin-top:clamp(2rem,4vw,3rem);padding-top:1.75rem;
  border-top:1px solid rgba(133,99,52,.24);
}
.gs-service-actions .gs-text-link{display:inline-flex;align-items:center;min-height:2.75rem}
@media(max-width:480px){
  .gs-service-actions{flex-direction:column;align-items:stretch;gap:1rem}
  .gs-service-actions .gs-button{width:100%}
  .gs-service-actions .gs-text-link{align-self:flex-start}
}

/* Cabeçalho com geometria constante. O único controlador de rolagem é o RAF
   em main.js: nunca alternar posição, altura, blur ou display ao cruzar um limiar. */
html{scrollbar-gutter:stable}
.gs-header{--gs-header-height:5.5rem;--gs-admin-offset:0px;isolation:isolate}
.gs-site.home .gs-header{--gs-header-height:6.75rem;position:fixed;top:var(--gs-admin-offset)}
.gs-site:not(.home) .gs-header{position:sticky;top:var(--gs-admin-offset)}
.gs-site .gs-header,.gs-site:not(.home) .gs-header{
  background:transparent;-webkit-backdrop-filter:none;backdrop-filter:none;
  border-bottom-color:rgba(255,255,255,calc(.13 * var(--gs-header-glass,0)));
  box-shadow:0 14px 38px rgba(0,0,0,calc(.12 * var(--gs-header-glass,0)));
  transition:none;
}
.gs-header__surface{
  position:absolute;inset:0;z-index:0;pointer-events:none;
  background:rgba(8,19,15,.78);opacity:var(--gs-header-glass,0);
  -webkit-backdrop-filter:blur(18px) saturate(135%);backdrop-filter:blur(18px) saturate(135%);
  will-change:opacity;
}
.gs-site:not(.home) .gs-header__surface{opacity:1;background:rgba(8,19,15,calc(1 - .22 * var(--gs-header-glass,0)))}
.gs-header__inner{position:relative;z-index:3;isolation:isolate;min-height:var(--gs-header-height);transition:none}
.gs-header__inner::before{content:none}
.gs-header :is(.gs-brand--header,.custom-logo-link){top:.2rem}
/* Respiro da home: marca e navegação compartilham o mesmo eixo óptico.
   A faixa mantém esta geometria no topo, na rolagem e com o menu aberto. */
.gs-site.home .gs-header__inner{padding-top:.25rem}
.gs-site.home .gs-header :is(.gs-brand--header,.custom-logo-link){top:0}
.gs-header::before,.gs-header::after{
  z-index:2;bottom:-1px;height:2px;
  transform:scaleX(var(--gs-scroll-progress,0));
  transition:opacity .16s linear;will-change:transform;
}
.gs-site.gs-menu-open .gs-header{background:transparent}
.gs-site.gs-menu-open .gs-header__surface{opacity:1;background:var(--gs-forest-950)}
.gs-site.admin-bar .gs-header{--gs-admin-offset:32px}
@supports(background:color-mix(in srgb,black,transparent)){
  .gs-header__surface{background:color-mix(in srgb,var(--gs-forest-950) 78%,transparent)}
  .gs-site:not(.home) .gs-header__surface{background:color-mix(in srgb,var(--gs-forest-950) calc(100% - 22% * var(--gs-header-glass,0)),transparent)}
  .gs-site.gs-menu-open .gs-header__surface{background:var(--gs-forest-950)}
}
/* Anchor desktop dropdowns to their labels. Their opaque surface is above the
   progress line, so proximity never costs legibility at any scroll position. */
@media(min-width:1101px){
  .gs-header .gs-navigation > ul > .menu-item-has-children > .sub-menu{
    top:calc(100% + .5rem);z-index:4;
    padding:.75rem 1rem;background:var(--gs-forest-900);
    transform:none;transition:opacity .24s cubic-bezier(.4,0,.2,1),visibility .24s;
    max-height:calc(100svh - var(--gs-header-height) - var(--gs-admin-offset) - 1rem);
    overflow-y:auto;scrollbar-width:thin;
  }
  .gs-header .gs-navigation > ul > .menu-item-has-children::before{
    content:"";position:absolute;top:100%;left:0;right:0;
    height:.75rem;pointer-events:none;
  }
  .gs-header .gs-navigation > ul > .menu-item-has-children:is(:hover,:focus-within)::before{pointer-events:auto}
  .gs-header .gs-navigation > ul > .menu-item-has-children:nth-last-child(-n + 2) > .sub-menu{left:auto;right:-1rem}
  .gs-header .gs-navigation .sub-menu a{min-height:2.75rem}
}
@media(max-width:1100px){
  /* Lock the root only: a second scroll container on body detaches sticky
     headers when the menu is opened after scrolling an inner page. */
  html.gs-menu-open{overflow:hidden}
  body.gs-menu-open{overflow:visible}
  .gs-header .gs-navigation{top:calc(var(--gs-admin-offset) + var(--gs-header-height) + 1px);padding-bottom:max(2rem,env(safe-area-inset-bottom))}
}
@media(max-width:782px){.gs-site.admin-bar .gs-header{--gs-admin-offset:46px}}
@media(max-width:760px){
  .gs-header{--gs-header-height:5.25rem}
  .gs-site.home .gs-header{--gs-header-height:6.25rem}
}
/* Em telas baixas, o conteúdo começa abaixo da faixa, sem comprimir os CTAs. */
@media(max-height:620px){.gs-site.home .gs-hero__content{padding-top:8.25rem}}
@media(max-width:600px){.gs-site.admin-bar #wpadminbar{position:fixed}}
@media(prefers-reduced-motion:reduce){.gs-header::before,.gs-header::after{transition:none}}

/* WhatsApp: medalhão circular com marca vetorial dourada em relevo. */
.gs-whatsapp{
  --gs-wa-size:3.5rem;
  width:var(--gs-wa-size);height:var(--gs-wa-size);min-width:var(--gs-wa-size);padding:0;
  right:calc(1rem + env(safe-area-inset-right,0px));bottom:calc(1rem + env(safe-area-inset-bottom,0px));
  display:grid;place-items:center;isolation:isolate;overflow:hidden;border-radius:50%;
  border:1px solid var(--gs-gold);color:var(--gs-gold);
  background:radial-gradient(ellipse at 29% 15%,rgba(233,211,150,.2),transparent 56%),linear-gradient(145deg,#294435 0%,var(--gs-forest-800) 47%,var(--gs-forest-950) 100%);
  box-shadow:inset 0 1px 1px rgba(255,241,205,.48),inset 0 -3px 5px rgba(0,0,0,.45),0 3px 0 #6c542e,0 7px 13px rgba(8,19,15,.22);
  transition:transform .38s cubic-bezier(.2,.7,.3,1),box-shadow .38s ease;
  -webkit-tap-highlight-color:transparent;touch-action:manipulation;
}
.gs-whatsapp::before{content:"";position:absolute;inset:3px;border:1px solid rgba(238,213,158,.17);border-radius:50%;pointer-events:none}
.gs-whatsapp__icon{display:block;width:2.25rem;height:2.25rem;overflow:visible;filter:drop-shadow(0 1px 0 #755628) drop-shadow(0 2px 1px rgba(0,0,0,.5));pointer-events:none}
.gs-whatsapp:is(:hover,:focus-visible){background:radial-gradient(ellipse at 29% 15%,rgba(233,211,150,.2),transparent 56%),linear-gradient(145deg,#294435 0%,var(--gs-forest-800) 47%,var(--gs-forest-950) 100%)}
.gs-whatsapp:focus-visible{outline:3px solid var(--gs-gold);outline-offset:5px;transform:translateY(-2px)}
@media(hover:hover) and (pointer:fine){.gs-whatsapp:hover{transform:translateY(-3px);box-shadow:inset 0 1px 1px rgba(255,241,205,.55),inset 0 -3px 5px rgba(0,0,0,.4),0 4px 0 #6c542e,0 11px 20px rgba(8,19,15,.28)}}
.gs-whatsapp:active{transform:translateY(1px);box-shadow:inset 0 1px 1px rgba(255,241,205,.35),inset 0 -2px 4px rgba(0,0,0,.4),0 1px 0 #6c542e,0 4px 9px rgba(8,19,15,.22)}
@media(min-width:761px){.gs-whatsapp{--gs-wa-size:3.875rem;right:calc(1.5rem + env(safe-area-inset-right,0px));bottom:calc(1.5rem + env(safe-area-inset-bottom,0px))}.gs-whatsapp__icon{width:2.5rem;height:2.5rem}}
@media(prefers-reduced-motion:reduce){.gs-whatsapp{transition:none}.gs-whatsapp:is(:hover,:focus-visible,:active){transform:none}}

/* Home: fotografia nítida, bordas em aquarela e nascimento do centro para fora.
   O SVG é uma máscara de transparência, não um filtro aplicado à fotografia.
   A moldura permanece independente; não há deslocamento lateral. */
.home :is(.gs-intro,.gs-method){
  position:relative;isolation:isolate;overflow:hidden;overflow:clip;
  padding-block:clamp(3.5rem,7vw,6rem);
  scroll-margin-top:5.5rem;
}
.home :is(.gs-intro__grid,.gs-method__grid){
  position:relative;align-items:center;gap:clamp(1.25rem,4vw,2.75rem);
}
.home :is(.gs-intro__image,.gs-method__visual){
  --gs-wash-color:rgba(200,163,99,.15);
  width:100%;max-width:30rem;min-width:0;
  margin:0;justify-self:center;overflow:visible;
  transform-origin:50% 58%;
}
.home .gs-method__visual{--gs-wash-color:rgba(200,163,99,.13)}
.home :is(.gs-intro__image,.gs-method__visual)::before{
  content:"";position:absolute;inset:-3% -7%;z-index:-2;pointer-events:none;
  background:radial-gradient(ellipse at 49% 55%,var(--gs-wash-color),transparent 66%);
  transform-origin:50% 58%;
}
.home :is(.gs-intro__image,.gs-method__visual)::after{
  inset:3% 2% 2.5%;z-index:2;pointer-events:none;
  border:1px solid rgba(176,136,70,.66);
  border-radius:1.5rem 2.25rem 1.75rem 2.5rem;
  -webkit-mask-image:linear-gradient(135deg,#000 0%,#000 15%,transparent 36%,transparent 52%,#000 76%,#000 100%);
  mask-image:linear-gradient(135deg,#000 0%,#000 15%,transparent 36%,transparent 52%,#000 76%,#000 100%);
  transform:none;box-shadow:none;transition:none;transform-origin:50% 58%;
}
.home .gs-method__visual::after{border-color:rgba(219,184,121,.69)}
.home .gs-intro__image img,
.home .gs-method .gs-method__visual img{
  display:block;width:100%;height:auto;aspect-ratio:auto;
  object-fit:contain;object-position:center;
  -webkit-mask-image:url('../images/watercolor-edge.svg?v=2');
  mask-image:url('../images/watercolor-edge.svg?v=2');
  -webkit-mask-size:100% 100%;mask-size:100% 100%;
  -webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;
  mask-mode:alpha;filter:none;transform:none;box-shadow:none;transition:none;
}
.home .gs-intro__image img{aspect-ratio:1058/1487}
.home .gs-method .gs-method__visual img{aspect-ratio:1019/1543}
/* Explicitly neutralize legacy lift rules, including the whole-grid hover. */
.home .gs-intro .gs-intro__image:hover img,
.home .gs-method__grid:hover .gs-method__visual img,
.home :is(.gs-intro__image,.gs-method__visual):hover::after{
  transform:none;filter:none;box-shadow:none;
}
.home :is(.gs-intro__content,.gs-method__content){position:relative;z-index:3}
@media(min-width:761px){
  .home .gs-intro__grid{grid-template-columns:minmax(0,.94fr) minmax(0,1fr)}
  .home .gs-method__grid{grid-template-columns:minmax(0,1fr) minmax(0,.94fr)}
  .home :is(.gs-intro__image,.gs-method__visual){max-width:34rem}
}
@media(max-width:760px){
  .home :is(.gs-intro__grid,.gs-method__grid){grid-template-columns:minmax(0,1fr);gap:1.25rem}
  .home :is(.gs-intro__image,.gs-method__visual){width:calc(100% + 1rem);max-width:30rem}
  .home .gs-intro__content{margin-top:-.75rem}
  .home .gs-method__visual{margin-top:.5rem}
}
@media(prefers-reduced-motion:no-preference){
  /* One entrance on scroll, also on touch screens. No perpetual pulsing. */
  .gs-motion-ready .home :is(.gs-intro__image,.gs-method__visual).gs-reveal{
    opacity:0;transform:scale(.92);transform-origin:50% 58%;
    transition:opacity 1.1s cubic-bezier(.22,.61,.36,1),transform 1.35s cubic-bezier(.22,.61,.36,1);
  }
  .gs-motion-ready .home :is(.gs-intro__image,.gs-method__visual).gs-reveal.is-visible{
    opacity:1;transform:none;
  }
  .gs-motion-ready .home :is(.gs-intro__image,.gs-method__visual).gs-reveal::after{
    opacity:0;transform:scale(.8);
    transition:opacity 1.1s ease .16s,transform 1.5s cubic-bezier(.22,.61,.36,1) .12s;
  }
  .gs-motion-ready .home :is(.gs-intro__image,.gs-method__visual).gs-reveal.is-visible::after{
    opacity:1;transform:none;
  }
}
@media(prefers-reduced-motion:reduce){
  .home :is(.gs-intro__image,.gs-method__visual),
  .home :is(.gs-intro__image,.gs-method__visual)::after{opacity:1;transform:none;transition:none;animation:none}
}
@media(hover:hover) and (pointer:fine) and (prefers-reduced-motion:no-preference){
  /* The photo opens first; the fine gold outline follows, like an unfurling bud.
     No blur, rotation, sideways translation or box-shaped drop shadow. */
  .home .gs-intro .gs-intro__image img,
  .home .gs-method .gs-method__visual img{
    transform-origin:50% 58%;
    transition:transform 1.05s cubic-bezier(.22,.61,.36,1);
  }
  .home :is(.gs-intro__image,.gs-method__visual)::before{
    opacity:.65;transition:opacity 1.15s ease,transform 1.25s cubic-bezier(.22,.61,.36,1);
  }
  .home .gs-intro .gs-intro__image:hover img,
  .home .gs-method .gs-method__visual:hover img{transform:scale(1.024)}
  .home :is(.gs-intro__image,.gs-method__visual):hover::before{opacity:1;transform:scale(1.07)}
  .home :is(.gs-intro__image,.gs-method__visual)::after{
    transition:transform 1.2s cubic-bezier(.22,.61,.36,1),opacity 1.1s ease;
  }
  .home :is(.gs-intro__image,.gs-method__visual):hover::after,
  .gs-motion-ready .home :is(.gs-intro__image,.gs-method__visual).gs-reveal.is-visible:hover::after{
    transform:scale(1.045);transition-delay:0s;
  }
}
