
/* JOICY LOPES V7 — identidade oficial: #202B45 #F7F2EA #D8C3AA #7D9789 #43BDB5 #343A40 */
:root{--navy:#202B45;--cream:#F7F2EA;--champagne:#D8C3AA;--sage:#7D9789;--turquoise:#43BDB5;--graphite:#343A40;--white:#fff;--line:#e4e2dd;--muted:#74777a;--ease:cubic-bezier(.22,1,.36,1)}
*,*::before,*::after{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:90px}body{margin:0;font-family:Inter,Arial,sans-serif;color:var(--graphite);background:#fff;-webkit-font-smoothing:antialiased;overflow-x:hidden}img{display:block;max-width:100%}h1,h2,h3,p,figure{margin:0}button,select,textarea{font:inherit}button{cursor:pointer}a{text-decoration:none;color:inherit}a:focus-visible,button:focus-visible,summary:focus-visible,select:focus-visible{outline:3px solid var(--turquoise);outline-offset:3px}::selection{background:#43bdb544}.wrap{width:min(1290px,calc(100% - 100px));margin-inline:auto}.wrap-wide{width:min(1540px,calc(100% - 48px));margin-inline:auto}.skip-link{position:absolute;left:15px;top:-100px;background:var(--navy);color:#fff;z-index:999;padding:15px}.skip-link:focus{top:15px}.preview-ribbon{min-height:27px;padding:7px 16px;text-align:center;letter-spacing:.28em;font-size:8px;font-weight:700;color:var(--navy);background:var(--champagne)}.preview-ribbon span{padding:0 12px}.site-header{position:relative;z-index:30;background:var(--cream)}.header-inner{height:78px;display:flex;align-items:center;gap:38px}.brand{display:flex;align-items:center;gap:11px;min-width:215px;color:var(--navy)}.brand img{height:43px;width:35px;object-fit:contain}.brand strong{font-size:19px;letter-spacing:.12em;display:block;line-height:1.15;font-weight:850}.brand small{font-size:9px;letter-spacing:.33em;display:block;margin-top:3px}.desktop-nav{display:flex;align-items:center;justify-content:center;gap:27px;flex:1}.desktop-nav a{font-size:11px;font-weight:650;white-space:nowrap;transition:color .2s}.desktop-nav a:hover{color:var(--sage)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:20px;min-height:48px;padding:13px 21px;font-size:10px;font-weight:780;letter-spacing:.1em;text-transform:uppercase;line-height:1.3;border:1px solid transparent;border-radius:100px;transition:transform .25s,background .25s,box-shadow .25s;color:var(--navy);background:var(--cream);white-space:nowrap}.btn:hover{transform:translateY(-2px);box-shadow:0 9px 23px #202b451f}.btn span{font-size:15px;font-weight:500}.btn svg{width:14px;height:14px}.btn-dark{background:var(--navy);color:white}.btn-light{background:var(--cream);color:var(--navy)}.btn-outline{background:transparent;border:1px solid #202b4533}.header-cta{min-height:43px;padding:11px 18px;letter-spacing:.05em}.menu-toggle,.mobile-nav{display:none}.eyebrow{font-size:10px;letter-spacing:.23em;font-weight:750;line-height:1.5;text-transform:uppercase;display:flex;gap:11px;align-items:center}.eyebrow.light{color:#fff}.eyebrow.blue{color:var(--sage)}.eyebrow.blue:before{content:"";height:1px;width:29px;background:var(--sage)}.tiny-star{color:var(--turquoise);font-size:17px}.section{padding-top:115px;padding-bottom:115px}.reveal{opacity:0;transform:translateY(16px);transition:opacity .7s ease,transform .7s var(--ease)}.reveal.is-visible{opacity:1;transform:none}
/* Hero inspired by reference's cinematic photographic editorial, not copied branding */
.hero{height:670px;max-height:900px;min-height:620px;position:relative;overflow:hidden;border-radius:3px;background:var(--navy);isolation:isolate}.hero-photo{position:absolute;inset:0 0 0 auto;width:65%;z-index:0}.hero-photo img{width:100%;height:100%;object-fit:cover;object-position:center 34%;filter:none}.hero-grad{position:absolute;inset:0;z-index:1;background:linear-gradient(90deg,rgba(32,43,69,1) 0%,rgba(32,43,69,.99) 24%,rgba(32,43,69,.86) 46%,rgba(32,43,69,.10) 79%),linear-gradient(0deg,rgba(32,43,69,.24),transparent 45%)}.hero-inner{height:100%;position:relative;z-index:2;width:100%;padding:115px 70px 90px;display:flex;flex-direction:column;justify-content:center;align-items:flex-start;color:#fff}.hero h1{margin-top:21px;font-family:'Inter Display',Inter,Arial,sans-serif;letter-spacing:-.065em;line-height:.96;font-weight:830;font-size:clamp(55px,5.8vw,102px);max-width:850px}.hero h1 em,.statement h2 em,.closing h2 em{font-style:normal;color:var(--champagne)}.hero-inner>p{font-size:14px;line-height:1.75;color:#f7f2eae6;margin-top:28px;max-width:400px}.hero-actions{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin-top:28px}.btn-hero-outline{color:#fff;border-color:#ffffff70;background:transparent}.btn-hero-outline:hover{background:#ffffff1c}.hero-aside{position:absolute;z-index:2;right:40px;top:50px;display:flex;align-items:center;flex-direction:column;gap:15px;color:#fff;font-size:10px;font-weight:700;letter-spacing:.18em}.hero-aside span:last-child{writing-mode:vertical-rl;font-size:9px;letter-spacing:.24em;max-height:270px}.hero-caption{position:absolute;z-index:2;bottom:24px;left:70px;right:70px;display:flex;justify-content:space-between;color:#fff;font-size:9px;letter-spacing:.22em;font-weight:700}.quick-nav{min-height:92px;display:flex;align-items:center;gap:22px;border-bottom:1px solid var(--line);overflow-x:auto}.quick-nav a{white-space:nowrap;padding:13px 16px;background:#f7f2ea;border-radius:90px;font-size:12px;font-weight:650;transition:background .2s}.quick-nav a:hover{background:#eae1d4}.quick-nav a span{margin-left:11px;color:var(--sage)}.quick-label{color:var(--sage);font-size:9px;letter-spacing:.15em;font-weight:800;white-space:nowrap}
/* editorial introduction */
.section-intro{padding:115px 0 105px;display:grid;grid-template-columns:1.4fr .6fr;align-items:end;gap:50px}.section-intro h2,.section-header h2,.about-copy h2,.faq h2,.journey h2{font-family:'Inter Display',Inter,Arial,sans-serif;letter-spacing:-.065em;font-size:clamp(39px,4.4vw,69px);line-height:1.06;font-weight:735;color:#151f30;margin-top:25px}.section-intro h2 em,.section-header h2 em,.about-copy h2 em,.faq h2 em,.journey h2 em{font-weight:420;font-style:normal;color:var(--sage)}.intro-aside{display:flex;align-items:flex-start;gap:25px;padding-bottom:6px}.circ-mark{border:1px solid #b7c4ba;color:var(--sage);border-radius:50%;min-width:51px;height:51px;display:grid;place-items:center;font-size:25px}.intro-aside p{font-size:14px;line-height:1.9;color:#65696a}.section-header{display:flex;align-items:end;justify-content:space-between;gap:30px;margin-bottom:35px}.section-header h2{font-size:clamp(40px,4.4vw,65px);margin-top:19px}.section-sub{font-size:13px;line-height:1.85;max-width:480px;color:#666a6e;margin-top:17px}.right-copy{max-width:330px}.slider-arrows{display:flex;gap:10px;flex-shrink:0}.slider-arrow{border:1px solid var(--line);background:#fff;width:51px;height:51px;border-radius:50%;font-size:26px;color:var(--navy);transition:background .2s,color .2s}.slider-arrow:hover{background:var(--navy);color:#fff}.snap-track{overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none;overscroll-behavior-x:contain}.snap-track::-webkit-scrollbar{display:none}.snap-card{scroll-snap-align:start}.service-track{display:grid;grid-auto-columns:minmax(260px,1fr);grid-auto-flow:column;gap:13px}.service-card{height:445px;position:relative;overflow:hidden;background:#b7b6b1;color:#fff;isolation:isolate}.service-card img{width:100%;height:100%;object-fit:cover;object-position:50% 32%;transition:transform .75s var(--ease)}.service-card:hover img{transform:scale(1.05)}.service-dark{background:linear-gradient(0deg,rgba(32,43,69,.98) 0%,rgba(32,43,69,.60) 32%,transparent 70%),linear-gradient(180deg,rgba(32,43,69,.14),transparent 30%);position:absolute;inset:0;z-index:1}.service-card-top{position:absolute;top:19px;left:17px;right:17px;z-index:2;display:flex;align-items:center;justify-content:space-between;font-size:10px;letter-spacing:.17em}.mini-circle{border:1px solid #fff8;border-radius:50%;height:34px;width:34px;display:grid;place-items:center;font-size:18px}.service-card-bottom{position:absolute;left:23px;bottom:25px;right:24px;z-index:2}.service-card h3{font-size:23px;letter-spacing:-.05em;line-height:1.12;font-weight:750;color:#fff}.service-card p{margin-top:11px;font-size:11px;line-height:1.65;max-width:270px;color:#fffde2}.on-photo-link{border:0;background:transparent;color:#fff;font-size:10px;font-weight:740;letter-spacing:.1em;text-transform:uppercase;padding:15px 0 6px;border-bottom:1px solid #fff8}.on-photo-link span{margin-left:16px}.services-note{margin-top:21px;display:flex;justify-content:space-between;align-items:center;gap:25px}.services-note>span{font-size:9px;letter-spacing:.08em;line-height:1.7;max-width:700px;color:#777}.text-link{border:none;background:transparent;color:var(--navy);font-size:10px;font-weight:800;letter-spacing:.07em;text-transform:uppercase;padding:6px 0;border-bottom:1px solid #202b4540}.text-link:hover{border-color:var(--navy)}
/* manifesto */
.statement{background:var(--navy);color:#fff;padding:92px 0 40px;position:relative;overflow:hidden}.statement:after{content:"";position:absolute;border:1px solid #ffffff14;right:-220px;top:-280px;width:660px;height:660px;border-radius:50%}.statement-grid{display:grid;grid-template-columns:1.4fr .6fr;align-items:end;gap:70px;margin-top:26px}.statement h2,.closing h2{font-family:'Inter Display',Inter,Arial,sans-serif;font-size:clamp(43px,5.5vw,82px);line-height:.99;letter-spacing:-.065em;font-weight:820;color:#fff}.statement-grid p{font-size:14px;line-height:1.95;max-width:350px;color:#fffba9}.statement-foot{border-top:1px solid #ffffff44;padding-top:22px;margin-top:80px;display:flex;justify-content:space-between;gap:25px;color:#d8c3aa;font-size:9px;letter-spacing:.18em;font-weight:750}
/* approached specialties thumbnails */
.approaches-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}.approach-card{border:1px solid #e8e7e3;min-height:333px;background:#fbfaf8;display:flex;flex-direction:column;transition:box-shadow .3s,transform .3s}.approach-card:hover{box-shadow:0 14px 30px #202b4515;transform:translateY(-3px)}.approach-shot{height:175px;overflow:hidden;background:var(--cream)}.approach-shot img{width:100%;height:100%;object-fit:cover;object-position:center 32%}.approach-copy{padding:20px 20px 17px;display:flex;flex-direction:column;flex:1}.approach-copy h3{font-size:16px;line-height:1.2;font-weight:730;color:var(--navy);letter-spacing:-.025em}.approach-copy p{margin-top:9px;font-size:11px;line-height:1.6;color:#737476;flex:1}.approach-copy .text-link{align-self:flex-start;margin-top:12px}
/* about */
.about-band{display:grid;grid-template-columns:1fr 1fr;background:var(--cream);min-height:720px}.about-photo{height:720px;overflow:hidden}.about-photo img{width:100%;height:100%;object-fit:cover;object-position:center 31%}.about-copy{max-width:600px;align-self:center;padding:75px 65px}.about-copy h2{font-size:clamp(42px,4.3vw,66px);margin:28px 0 22px}.about-copy>p{font-size:14px;line-height:1.9;color:#6f7072}.about-lines{margin:35px 0 29px}.about-lines span{display:block;padding:15px 0;border-top:1px solid #d8c3aa;font-size:13px;color:var(--navy);font-weight:630}.about-lines span strong{font-size:10px;color:var(--sage);margin-right:25px}.cred-note{display:block;color:#777;font-size:10px;line-height:1.6;margin-top:21px}
/* experience / benefits */
.comfort-grid{display:grid;grid-template-columns:1.15fr .65fr .9fr;gap:15px;min-height:345px}.comfort-photo{height:350px;position:relative;overflow:hidden}.comfort-photo img{width:100%;height:100%;object-fit:cover;object-position:center 40%}.comfort-photo:after{content:"";position:absolute;inset:50% 0 0;background:linear-gradient(0deg,#202b45bb,transparent)}.comfort-photo span{position:absolute;bottom:22px;left:22px;color:#fff;font-size:10px;z-index:2;font-weight:700;letter-spacing:.12em}.comfort-oval{border-radius:48% 48% 45% 45%;background:var(--champagne);display:flex;flex-direction:column;justify-content:center;align-items:center;text-align:center;color:var(--navy);font-weight:780;letter-spacing:-.04em;font-size:clamp(21px,2.5vw,35px);line-height:1.08;padding:20px}.oval-star{margin-top:25px;font-size:33px;color:var(--sage)}.benefit-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin-top:15px}.benefit-grid>div{background:var(--cream);padding:21px 18px;display:flex;align-items:center;gap:14px;font-size:12px;font-weight:680;color:var(--navy)}.benefit-grid span{color:var(--sage);font-size:22px}
/* gallery */
.gallery-track{display:grid;grid-auto-flow:column;grid-auto-columns:260px;gap:15px}.gallery-card{height:375px;position:relative;overflow:hidden;background:#ddd}.gallery-card img{width:100%;height:100%;object-fit:cover;object-position:center 30%}.gallery-card:after{position:absolute;inset:45% 0 0;content:"";background:linear-gradient(0deg,#202b45a8,transparent)}.gallery-card figcaption{position:absolute;bottom:15px;left:16px;right:16px;display:flex;justify-content:space-between;align-items:end;gap:10px;color:white;z-index:2}.gallery-card figcaption span:first-child{font-size:12px;font-weight:730}.gallery-card figcaption span:last-child{font-size:8px;letter-spacing:.1em}.gallery-footnote{font-size:10px;color:#787b7b;line-height:1.7;margin-top:17px}
/* journey */
.journey{border-top:1px solid var(--line)}.journey-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-top:55px;margin-bottom:35px}.journey article{padding:28px;border-top:2px solid var(--champagne);background:#faf9f7}.journey article>span{font-size:11px;color:var(--sage);font-weight:800}.journey h3{font-size:19px;letter-spacing:-.04em;font-weight:750;margin-top:35px;color:var(--navy)}.journey article p{margin-top:10px;font-size:12px;line-height:1.75;color:#777}
/* faq */
.faq{display:grid;grid-template-columns:.9fr 1.1fr;gap:110px}.faq h2{font-size:clamp(43px,4vw,65px)}.faq>div:first-child>p:last-child{font-size:13px;color:#777;line-height:1.7;margin-top:23px;max-width:280px}.faq-item{border-top:1px solid #dededc}.faq-item:last-child{border-bottom:1px solid #dededc}.faq-item summary{cursor:pointer;list-style:none;font-size:13px;font-weight:680;display:flex;align-items:center;justify-content:space-between;gap:15px;padding:20px 3px;color:var(--navy)}.faq-item summary::-webkit-details-marker{display:none}.faq-item .plus{font-size:23px;font-weight:400;line-height:1;transition:transform .2s}.faq-item[open] .plus{transform:rotate(45deg)}.faq-item p{font-size:12px;line-height:1.85;color:#6c6e70;padding:0 30px 25px 3px}
/* closing */
.closing{height:540px;position:relative;background:var(--navy);overflow:hidden}.closing>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 55%}.closing-scrim{position:absolute;inset:0;background:linear-gradient(90deg,rgba(32,43,69,.95),rgba(32,43,69,.84) 34%,rgba(32,43,69,.05) 80%)}.closing-inner{position:relative;z-index:2;padding:75px 70px;color:white}.closing h2{font-size:clamp(45px,5.1vw,78px);margin:24px 0 18px}.closing-inner>p:not(.eyebrow){max-width:430px;line-height:1.75;color:#f7f2eacc;font-size:13px;margin-bottom:25px}
/* footer */
.footer{background:var(--navy);color:var(--cream);padding:65px 0 30px;margin-top:24px}.footer-top{display:flex;justify-content:space-between;gap:20px;align-items:start}.footer-top p{font-size:15px;line-height:1.5}.footer-top a{font-size:11px;letter-spacing:.12em;font-weight:750;border-bottom:1px solid #ffffff88;padding-bottom:6px}.footer-wordmark{font-family:'Inter Display',Inter,Arial,sans-serif;color:#fff;font-size:clamp(55px,11.4vw,176px);font-weight:840;letter-spacing:-.075em;line-height:1.15;white-space:nowrap;text-align:center;margin:30px 0 26px}.footer-line{border-top:1px solid #ffffff55}.footer-grid{display:grid;grid-template-columns:1.25fr .75fr .75fr 1fr;gap:40px;padding:45px 0 60px}.footer-grid>div:first-child img{width:38px;height:49px;object-fit:contain;filter:brightness(0) invert(1);margin-bottom:15px}.footer-grid>div:first-child p{font-size:10px;letter-spacing:.13em;line-height:1.8}.footer-grid h3{font-size:10px;font-weight:750;letter-spacing:.17em;color:var(--champagne);margin-bottom:18px}.footer-grid a,.footer-grid>div>p,.footer-grid small,.footer-link{display:block;color:#f7f2eab9;font-size:12px;line-height:1.75;margin:7px 0;max-width:240px}.footer-link{background:none;border:0;padding:0;text-align:left;cursor:pointer}.footer-grid a:hover,.footer-link:hover{color:#fff}.footer-last{border-top:1px solid #ffffff33;display:flex;align-items:center;justify-content:space-between;gap:20px;padding-top:22px;font-size:9px;font-weight:700;color:#f7f2ea8b;letter-spacing:.13em}.mobile-sticky{display:none}
/* modal */
.contact-dialog{border:0;border-radius:14px;max-width:min(500px,calc(100vw - 30px));width:100%;padding:37px;background:var(--cream);box-shadow:0 30px 90px #202b4566;color:var(--navy)}.contact-dialog::backdrop{background:#202b45ba;backdrop-filter:blur(5px)}.contact-dialog .close-dialog{position:absolute;right:21px;top:15px;background:transparent;border:0;font-size:29px;color:var(--navy)}.contact-dialog h2{font-size:42px;letter-spacing:-.06em;margin:16px 0 9px}.contact-dialog p{font-size:13px;line-height:1.7;color:#555e67;margin-bottom:22px}.contact-dialog label{display:block;font-size:11px;font-weight:720;margin:14px 0 8px}.contact-dialog select,.contact-dialog textarea{display:block;width:100%;border:1px solid #d5d0c7;background:white;padding:13px;min-height:44px;border-radius:7px;font-size:13px;color:var(--navy)}.contact-dialog textarea{resize:vertical;line-height:1.6}.contact-dialog .full{width:100%;margin-top:15px}.contact-dialog small{font-size:10px;color:#727579;line-height:1.7;display:block;margin-top:14px}.contact-dialog #copy-feedback{font-size:12px;color:#246757;padding-top:9px;min-height:15px}
@media(max-width:1200px){.header-inner{gap:12px}.desktop-nav{gap:16px}.brand{min-width:185px}.brand strong{font-size:16px}.wrap{width:min(1290px,calc(100% - 65px))}.hero-inner{padding-left:55px}.hero h1{font-size:clamp(58px,6.2vw,85px)}.service-track{grid-auto-columns:calc((100% - 26px)/3)}.service-card{height:430px}.approaches-grid{grid-template-columns:repeat(3,1fr)}.footer-wordmark{font-size:11.5vw}}
@media(max-width:900px){.desktop-nav,.header-cta{display:none}.header-inner{height:70px;justify-content:space-between}.menu-toggle{display:flex;flex-direction:column;justify-content:center;gap:6px;border:0;background:none;padding:10px;width:44px;height:44px}.menu-toggle span{height:2px;width:23px;background:var(--navy)}.mobile-nav:not([hidden]){display:flex;flex-direction:column;gap:0;padding:18px 35px 30px;background:var(--cream);box-shadow:0 15px 20px #202b4512}.mobile-nav a{padding:15px 0;border-bottom:1px solid #e5e1dc;font-size:15px}.mobile-nav .btn{margin-top:17px}.wrap{width:calc(100% - 56px)}.wrap-wide{width:calc(100% - 26px)}.hero{height:690px}.hero-photo{width:72%}.hero-inner{padding:80px 44px}.hero h1{font-size:clamp(50px,7.3vw,78px)}.hero-grad{background:linear-gradient(90deg,#202b45 0%,#202b45e8 36%,#202b4540 90%)}.hero-caption{left:45px;right:45px}.quick-nav{min-height:79px}.quick-label{display:none}.section-intro{grid-template-columns:1fr .75fr;padding:80px 0}.intro-aside{gap:14px}.service-track{grid-auto-columns:calc((100% - 14px)/2)}.statement-grid{grid-template-columns:1fr;gap:22px}.statement h2{font-size:7vw}.statement-grid p{max-width:610px}.approaches-grid{grid-template-columns:repeat(2,1fr)}.about-band{min-height:0}.about-photo{height:650px}.about-copy{padding:45px 40px}.about-copy h2{font-size:47px}.comfort-grid{grid-template-columns:1fr .75fr}.comfort-grid .comfort-photo:last-child{display:none}.benefit-grid{grid-template-columns:repeat(2,1fr)}.faq{gap:45px}.footer-grid{gap:20px;grid-template-columns:1.1fr .8fr .8fr}.footer-grid>div:last-child{grid-column:2 / 4}.footer-wordmark{font-size:12vw}}
@media(max-width:650px){.wrap{width:calc(100% - 40px)}.wrap-wide{width:calc(100% - 16px)}.preview-ribbon{font-size:7px;letter-spacing:.13em}.brand img{width:28px;height:37px}.brand strong{font-size:16px}.brand small{font-size:7px}.header-inner{height:66px}.hero{height:auto;min-height:690px;border-radius:0;display:flex;flex-direction:column;justify-content:flex-end}.hero-photo{inset:0 0 auto;width:100%;height:59%}.hero-photo img{object-position:center 25%}.hero-grad{background:linear-gradient(0deg,#202b45 0%,#202b45 29%,#202b45ee 42%,#202b45a0 52%,#202b4500 73%),linear-gradient(90deg,#202b4540,transparent)}.hero-inner{padding:270px 25px 95px;justify-content:flex-end}.hero h1{font-size:clamp(40px,11.4vw,64px);letter-spacing:-.065em;margin-top:12px;line-height:1.0}.hero-inner>p{margin-top:17px;font-size:12px;line-height:1.7}.hero .eyebrow{font-size:8px;letter-spacing:.16em}.hero-actions{margin-top:20px;gap:9px;display:grid;grid-template-columns:1fr;width:100%;max-width:340px}.hero-actions .btn{min-height:45px;font-size:9px}.hero-aside{display:none}.hero-caption{left:25px;right:25px;bottom:23px}.hero-caption span:last-child{display:none}.quick-nav{width:100%;padding:11px 16px;min-height:74px;gap:9px;border-bottom:1px solid #e4e0dc}.quick-nav a{font-size:11px;padding:12px 14px}.section{padding:80px 0}.section-intro{display:block;padding:75px 0}.section-intro h2,.section-header h2,.about-copy h2,.faq h2,.journey h2{font-size:clamp(38px,10vw,52px)}.intro-aside{margin-top:25px}.intro-aside p{font-size:12px}.circ-mark{min-width:40px;height:40px;font-size:20px}.section-header{align-items:end;gap:12px;margin-bottom:24px}.section-header .section-sub{font-size:12px}.slider-arrow{width:39px;height:39px;font-size:20px}.section-sub{font-size:12px}.service-track{grid-auto-columns:82%;gap:11px;margin-right:-20px;padding-right:20px}.service-card{height:445px}.service-card h3{font-size:25px}.services-note{align-items:start;flex-direction:column}.services-note>span{font-size:8px}.statement{padding:70px 0 32px}.statement-grid{margin-top:28px}.statement h2{font-size:clamp(37px,9.5vw,54px)}.statement-grid p{font-size:12px}.statement-foot{margin-top:45px;font-size:8px}.statement-foot span:last-child{display:none}.approaches .section-header{flex-direction:column;align-items:start;gap:22px}.approaches-grid{grid-template-columns:1fr;gap:12px}.approach-card{display:grid;grid-template-columns:124px 1fr;min-height:154px}.approach-shot{height:100%;min-height:154px}.approach-copy{padding:15px 13px}.approach-copy h3{font-size:15px}.approach-copy p{font-size:10px;line-height:1.55}.approach-copy .text-link{font-size:10px;margin-top:5px}.about-band{grid-template-columns:1fr}.about-photo{height:480px}.about-photo img{object-position:center 36%}.about-copy{padding:65px 25px 72px}.about-copy h2{font-size:46px}.about-copy>p{font-size:13px}.comfort .section-header{display:block}.comfort .right-copy{margin-top:16px}.comfort-grid{grid-template-columns:1fr 1fr;gap:8px;min-height:180px}.comfort-photo{height:230px}.comfort-photo span{left:11px;bottom:14px;font-size:8px}.comfort-oval{font-size:22px;border-radius:50%;height:230px}.benefit-grid{gap:7px}.benefit-grid>div{font-size:10px;gap:9px;padding:16px 12px}.benefit-grid span{font-size:17px}.gallery-track{grid-auto-columns:74%;gap:12px;margin-right:-20px;padding-right:20px}.gallery-card{height:390px}.gallery-footnote{font-size:9px}.journey .section-header{display:block}.journey .right-copy{margin-top:17px}.journey-grid{grid-template-columns:1fr;gap:7px;margin-top:30px}.journey article{padding:18px 20px}.journey h3{margin-top:12px}.journey article p{font-size:11px}.journey>.btn{width:100%}.faq{grid-template-columns:1fr;gap:25px}.faq>div:first-child>p:last-child{font-size:12px;margin-top:17px}.faq-item summary{font-size:12px}.closing{height:580px}.closing>img{object-position:36% 29%}.closing-scrim{background:linear-gradient(0deg,#202b45 0%,#202b45e6 37%,#202b45b0 56%,#202b452e 100%)}.closing-inner{padding:255px 24px 38px}.closing h2{font-size:clamp(40px,9.7vw,58px);margin:16px 0}.closing-inner>p:not(.eyebrow){font-size:12px}.closing .btn{min-height:45px;font-size:10px}.footer{margin-top:8px;padding:55px 0 105px}.footer-top p{font-size:12px}.footer-top a{font-size:9px}.footer-wordmark{font-size:12vw;letter-spacing:-.07em;margin:35px 0 26px}.footer-grid{grid-template-columns:1fr 1fr;gap:27px 15px;padding:33px 0}.footer-grid>div:last-child{grid-column:auto}.footer-grid>div:first-child{grid-column:1 / -1}.footer-grid h3{font-size:9px}.footer-grid a,.footer-grid>div>p,.footer-grid small,.footer-link{font-size:11px}.footer-last{font-size:8px;flex-wrap:wrap}.footer-last span:nth-child(2){display:none}.mobile-sticky{position:fixed;display:block;bottom:0;left:0;right:0;padding:9px 16px calc(9px + env(safe-area-inset-bottom));background:#f7f2eaf6;box-shadow:0 -6px 20px #202b4514;z-index:35}.mobile-sticky button{border:0;border-radius:80px;background:var(--navy);color:white;width:100%;min-height:48px;padding:12px 20px;font-weight:780;letter-spacing:.09em;font-size:11px;display:flex;justify-content:center;align-items:center;gap:23px}.mobile-sticky button span{font-size:17px}.contact-dialog{padding:28px 22px;max-height:90svh}.contact-dialog h2{font-size:34px}}
@media(max-width:360px){.hero{min-height:665px}.hero h1{font-size:40px}.hero-inner{padding-top:255px;padding-bottom:85px}.section-intro h2,.section-header h2{font-size:37px}.service-track{grid-auto-columns:86%}.approach-card{grid-template-columns:112px 1fr}.approach-copy h3{font-size:13px}.approach-copy p{font-size:9px}.footer-wordmark{font-size:11.3vw}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;animation-duration:.01ms!important;transition-duration:.01ms!important}.reveal{opacity:1!important;transform:none!important}}
/* Final editorial refinements aligned with official off-white-dominant guide */
body{background:var(--cream)}
@media(max-width:650px){
  .services .section-header,.editorial-gallery .section-header{display:block}
  .services .slider-arrows,.editorial-gallery .slider-arrows{justify-content:flex-end;margin-top:18px}
  .services .section-header h2,.editorial-gallery .section-header h2{max-width:100%}
}

/* V8.1 - official supplied logo and verified profile */
.brand{min-width:240px;gap:8px}.brand img.brand-symbol{width:40px;height:51px;object-fit:contain;flex:0 0 auto}.brand img.brand-wordmark{width:174px;height:auto;max-height:49px;object-fit:contain}.profile-details{display:grid;grid-template-columns:1fr;gap:7px;margin:20px 0 23px;padding:14px 0;border-top:1px solid #202b4530;border-bottom:1px solid #202b4530}.profile-details p{display:flex;flex-wrap:wrap;gap:5px 9px;justify-content:space-between;font-size:12px;line-height:1.55;margin:0;color:var(--navy)}.profile-details p strong{font-weight:700}.profile-details p span{color:#566573}.footer-grid img{width:41px;height:54px;object-fit:contain}.footer-phone{color:var(--champagne)!important;font-weight:700}.footer-link{text-decoration:none}.mobile-sticky a{border:0;border-radius:80px;background:var(--navy);color:white;width:100%;min-height:48px;padding:12px 20px;font-weight:780;letter-spacing:.09em;font-size:11px;display:flex;justify-content:center;align-items:center;gap:23px}.mobile-sticky a span{font-size:17px}
@media(max-width:1200px){.brand{min-width:215px}.brand img.brand-wordmark{width:155px}}@media(max-width:650px){.brand{min-width:auto}.brand img.brand-symbol{width:29px;height:42px}.brand img.brand-wordmark{width:151px;max-height:40px}.profile-details p{display:block;font-size:12px}.profile-details p span{display:block;margin-top:2px}.about-copy>p{font-size:13px;line-height:1.83}.mobile-sticky a{font-size:11px}}


/* V8.2 — Luxury Conversion & Performance. Source V8.1 remains intact. */
:root{--v82-ink:#202B45;--v82-page:#F7F2EA;--v82-muted:#566074;--v82-focus:#166b67}
html{scroll-padding-top:105px}
body{font-family:Inter,system-ui,-apple-system,"Segoe UI",Arial,sans-serif;background:var(--cream)}
h1,h2,h3,.footer-wordmark{font-family:Inter,system-ui,-apple-system,"Segoe UI",Arial,sans-serif}
/* Comfort on long-form reading without diluting the official palette. */
.eyebrow.blue,.journey article>span{color:var(--navy)}
.section-intro h2 em,.section-header h2 em,.about-copy h2 em,.faq h2 em,.journey h2 em{color:#486d5d}
.quick-nav a,.section-header .section-sub,.section-intro .intro-aside p,.journey article p{color:var(--graphite)}
.btn,.header-cta,.service-card .on-photo-link,.approach-card a,.approach-copy a{font-size:max(12px,0.83rem);letter-spacing:.035em;line-height:1.35}
.btn{min-height:49px}
.quick-nav a{font-size:13px;min-height:44px;display:inline-flex;align-items:center;gap:8px}
.service-card-bottom p,.approach-copy p,.about-copy>p,.journey article p{font-size:clamp(13px,1.05vw,15px);line-height:1.65}
.approach-copy h3{font-size:clamp(15px,1.17vw,18px);line-height:1.25}
.approach-card a,.service-card .on-photo-link{min-height:32px;display:inline-flex;align-items:center;gap:8px}
.faq-item summary{font-size:clamp(14px,1.1vw,16px)}
.faq-item p{font-size:14px}
.profile-details p,.footer-grid a,.footer-grid p,.footer-grid small{font-size:clamp(12px,1vw,14px)}
/* Exact service navigation in the horizontal track. */
.service-card[id]{scroll-margin-inline:12px;scroll-margin-top:120px}
.service-card.service-focused{outline:3px solid var(--turquoise);outline-offset:-3px;box-shadow:0 22px 47px rgba(32,43,69,.23)}
.service-card.service-focused .service-card-bottom{transform:translateY(-2px)}
.service-card-bottom{transition:transform .35s ease}
/* Prevent disappearing content if script setup cannot complete. */
.reveal{opacity:1;transform:none}
.js-reveals .reveal:not(.is-visible){opacity:0;transform:translateY(16px)}
.js-reveals .reveal.is-visible{opacity:1;transform:none}
.motion-ready .motion-target{transition-duration:.78s}
/* Keep brand cut-outs clean on warm off-white; preserve the actual source PNGs. */
.brand .brand-wordmark,.brand .brand-symbol{object-fit:contain;object-position:center;mix-blend-mode:normal}
.site-header,.section-intro,.services,.approaches,.editorial-gallery,.journey,.faq{background-color:var(--cream)}
.approach-card{background:#FAF6F0;border-color:rgba(32,43,69,.09)}
.journey article{background:#F2EADF}
/* Mobile fixed CTA is intentionally absent until the first hero CTA has left view. */
.mobile-sticky{opacity:0;visibility:hidden;transform:translateY(calc(100% + 12px));pointer-events:none;transition:opacity .3s ease,visibility .3s,transform .42s cubic-bezier(.22,1,.36,1)}
.mobile-sticky.is-visible{opacity:1;visibility:visible;transform:translateY(0);pointer-events:auto}
.mobile-sticky a{font-size:12px;line-height:1.3;min-height:50px;letter-spacing:.045em}
body{scrollbar-color:var(--sage) var(--cream)}
@media (max-width:650px){
 .hero-actions .btn{font-size:12px;letter-spacing:.025em;min-height:47px;padding:11px 14px;white-space:normal;text-align:center}
 .quick-label{font-size:11px;letter-spacing:.04em}
 .approach-copy h3{font-size:15px}
 .approach-copy p{font-size:13px;line-height:1.45}
 .approach-copy a{font-size:12px;line-height:1.3}
 .service-card-bottom p{font-size:14px}
 .service-card .on-photo-link{font-size:12px}
 .gallery-card figcaption,.gallery-card figcaption span{font-size:11px}
 .footer-grid h3{font-size:11px}
 .footer-grid a,.footer-grid>div>p,.footer-grid small{font-size:12px}
 .eyebrow{font-size:11px;letter-spacing:.12em}
 .mobile-sticky{padding:9px 14px calc(9px + env(safe-area-inset-bottom))}
}
@media (max-width:360px){
 .hero h1{font-size:clamp(34px,11vw,41px)}
 .hero-actions .btn{font-size:11px;gap:8px;padding:10px 11px}
 .approach-copy h3{font-size:14px}
 .approach-copy p{font-size:12px}
 .approach-copy a{font-size:11px}
}
@media (prefers-reduced-motion:reduce){
 .mobile-sticky{transition:none}
 .js-reveals .reveal{opacity:1!important;transform:none!important}
}
/* V8.2 mobile min-content safeguard: prevents 326px grid expansion at 320px. */
@media (max-width:650px){.about-band{display:grid;grid-template-columns:minmax(0,1fr);width:100%;max-width:100%;overflow:hidden}.about-band>.about-photo,.about-band>.about-copy{min-width:0;width:100%;max-width:100%}}

/* V8.4 — harmonizacao global de respiros.
   A reducao de aproximadamente 60% atua somente no espaco vertical externo das secoes.
   Grid, cards, fotografias e espacamentos internos de leitura permanecem preservados.
   Desktop: 115px -> 46px por face; intro 115/105 -> 46/42.
   Tablet: 80px -> 32px; mobile: 80px -> 32px, intro 75px -> 30px.
   Mantem o ajuste V8.3 de 46+46 / 32+32 para Jornada -> FAQ.
*/
@media (min-width:901px) {
  .section { padding-top:46px; padding-bottom:46px; }
  .section-intro { padding-top:46px; padding-bottom:42px; }
  .statement { padding-top:37px; padding-bottom:16px; }
  .statement-foot { margin-top:32px; }
}
@media (min-width:651px) and (max-width:900px) {
  .section { padding-top:46px; padding-bottom:46px; }
  .section-intro { padding-top:32px; padding-bottom:32px; }
  .statement { padding-top:37px; padding-bottom:16px; }
  .statement-foot { margin-top:32px; }
}
@media (max-width:650px) {
  .section { padding-top:32px; padding-bottom:32px; }
  .section-intro { padding-top:30px; padding-bottom:30px; }
  .statement { padding-top:28px; padding-bottom:13px; }
  .statement-foot { margin-top:18px; }
}


.photo-context-tag{display:inline-flex;max-width:48%;border:1px solid rgba(247,242,234,.55);border-radius:30px;padding:4px 8px;font-size:9px;font-weight:650;letter-spacing:.05em;color:#fff;background:rgba(32,43,69,.32);backdrop-filter:blur(7px);text-align:center;line-height:1.3}
