:root{--navy:#101735;--navy-deep:#080d22;--navy-soft:#20294e;--gold:#b88a49;--gold-light:#dbc08b;--ivory:#f3ede2;--paper:#fbf8f1;--ink:#14182a;--muted:#626574;--line:rgba(16,23,53,.16);--shadow:0 28px 70px rgba(8,13,34,.14);--serif:"Cormorant Garamond",Georgia,serif;--sans:"Manrope",Arial,sans-serif;--wrap:min(1220px,calc(100% - 64px))}
*{box-sizing:border-box}html{scroll-behavior:smooth;background:var(--paper)}body{margin:0;overflow-x:hidden;background:var(--paper);color:var(--ink);font:400 15px/1.7 var(--sans)}img{display:block;max-width:100%;height:auto}a{color:inherit}button,input,select,textarea{font:inherit}:focus-visible{outline:3px solid var(--gold-light);outline-offset:4px}.wrap{width:var(--wrap);margin-inline:auto}.skip{position:fixed;z-index:100;left:18px;top:-70px;padding:12px 16px;background:var(--paper);color:var(--ink)}.skip:focus{top:18px}
/* Dobra editorial decorativa: não recebe eventos e respeita movimento reduzido. */.site-body{position:relative}.page-fold{position:fixed;z-index:1;pointer-events:none;right:0;top:0;width:clamp(38px,5vw,86px);height:100vh;overflow:hidden;opacity:.8}.page-fold span{position:absolute;inset:0;background:var(--navy);clip-path:polygon(76% 0,100% 0,100% 100%,0 82%);box-shadow:-9px 0 20px rgba(8,13,34,.17)}.page-fold i{position:absolute;right:0;bottom:0;width:100%;height:31%;background:var(--ivory);clip-path:polygon(0 65%,100% 0,100% 100%,0 100%);border-top:1px solid rgba(184,138,73,.7)}.nav,main,.footer{position:relative;z-index:2}.fold-ready .page-fold{animation:fold-arrive .62s cubic-bezier(.16,.8,.25,1) both}@keyframes fold-arrive{0%{transform:translateX(115%)}55%{transform:translateX(-10%)}100%{transform:translateX(0)}}
.nav{min-height:92px;width:var(--wrap);margin:auto;display:flex;align-items:center;justify-content:space-between;gap:24px}.brand{display:flex;align-items:center;gap:13px;text-decoration:none}.brand-mark{position:relative;width:46px;height:36px}.brand-mark::before,.brand-mark::after{content:"";position:absolute;top:7px;width:24px;height:17px;border:3px solid var(--gold);border-radius:60% 40%}.brand-mark::before{left:1px;transform:rotate(28deg)}.brand-mark::after{right:1px;transform:rotate(-28deg)}.brand strong{display:block;font:600 26px/.72 var(--serif);letter-spacing:.04em;text-transform:uppercase}.brand small{display:block;margin-top:8px;color:var(--muted);font-size:8px;font-weight:700;letter-spacing:.19em;text-transform:uppercase}.menu{display:flex;align-items:center;gap:clamp(14px,2vw,28px);margin:0;padding:0;list-style:none}.menu a{position:relative;text-decoration:none;font-size:11px;font-weight:700;letter-spacing:.05em;text-transform:uppercase}.menu a:not(.nav-cta)::after{content:"";position:absolute;right:0;bottom:-8px;left:0;height:1px;background:var(--gold);transform:scaleX(0);transform-origin:right;transition:transform .22s ease}.menu a:hover::after,.menu a:focus-visible::after{transform:scaleX(1);transform-origin:left}.btn,.menu .nav-cta{display:inline-flex;min-height:49px;align-items:center;justify-content:center;padding:0 22px;border:1px solid transparent;text-decoration:none;font-size:11px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;transition:transform .22s ease,background .22s ease,color .22s ease}.btn:hover,.menu .nav-cta:hover{transform:translateY(-2px)}.btn-primary,.menu .nav-cta{background:var(--navy);color:white}.btn-primary:hover,.menu .nav-cta:hover{background:var(--navy-soft);color:white}.btn-secondary{border-color:var(--navy);color:var(--navy);background:transparent}.btn-secondary:hover{background:var(--navy);color:white}.btn-gold{background:var(--gold);color:var(--navy)}.burger{display:none;width:48px;height:48px;color:var(--navy);border:1px solid var(--line);background:transparent}
.hero{position:relative;min-height:calc(100vh - 92px);overflow:hidden;background:var(--ivory)}.hero::before{content:"";position:absolute;z-index:0;top:16%;right:-12%;width:51%;height:75%;background:var(--navy);clip-path:polygon(8% 0,100% 0,100% 84%,0 100%)}.hero::after{content:"";position:absolute;z-index:0;right:9%;bottom:-13%;width:44%;height:32%;border:1px solid var(--gold);transform:skewY(-12deg)}.hero-grid{position:relative;z-index:1;display:grid;grid-template-columns:.91fr 1.09fr;gap:clamp(40px,7vw,112px);align-items:center;padding:70px 0 88px}.hero-copy{max-width:570px}.kicker{display:inline-flex;align-items:center;gap:12px;color:#8a642d;font-size:10px;font-weight:700;letter-spacing:.19em;text-transform:uppercase}.kicker::after{content:"";width:42px;height:1px;background:currentColor;opacity:.65}.hero h1,.page-hero h1,.section-head h2{margin:20px 0 23px;font-family:var(--serif);font-weight:600;letter-spacing:-.035em;line-height:.91}.hero h1{font-size:clamp(58px,6.5vw,94px)}.hero h1 em{color:#966c31;font-weight:600}.hero-copy>p,.page-hero p{max-width:560px;color:#505568;font-size:16px}.actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:32px}.trust-line{margin-top:34px;padding-top:19px;border-top:1px solid var(--line);font-size:11px!important;line-height:1.5}.portrait-frame{position:relative;min-height:min(70vw,660px);isolation:isolate}.portrait-frame::before{content:"";position:absolute;z-index:-1;top:6%;right:3%;width:82%;height:91%;background:var(--navy-deep);clip-path:polygon(12% 0,100% 0,100% 88%,0 100%)}.portrait-frame::after{content:"";position:absolute;z-index:-1;bottom:-1px;left:-11%;width:79%;height:30%;background:var(--ivory);border-top:1px solid var(--gold);clip-path:polygon(0 25%,100% 0,100% 100%,0 100%)}.portrait-frame picture,.portrait-frame img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:50% 20%;clip-path:polygon(11% 0,100% 0,100% 83%,14% 100%,0 79%)}.portrait-note{position:absolute;z-index:3;right:-2%;bottom:6%;width:min(290px,54%);padding:26px 28px;background:var(--navy);color:white;border-top:1px solid var(--gold)}.portrait-note strong{display:block;font:600 25px/1.05 var(--serif)}.portrait-note span{display:block;margin-top:8px;color:#d9d9e1;font-size:11px;line-height:1.55}
.section{position:relative;padding:132px 0}.section::before{content:"";position:absolute;top:0;left:0;width:clamp(48px,8vw,150px);height:86px;background:var(--navy);clip-path:polygon(0 0,100% 0,0 100%);opacity:.98}.section.alt{background:var(--ivory)}.section.dark{color:white;background:var(--navy)}.section.dark::before{background:var(--ivory)}.section-head{max-width:770px;margin-bottom:55px}.section-head h2{font-size:clamp(44px,5.4vw,68px)}.section-head p{color:var(--muted);font-size:16px}.dark .section-head p{color:#c6cada}.split{display:grid;grid-template-columns:1fr 1fr;gap:clamp(46px,8vw,118px);align-items:center}.split h2{margin:18px 0}.split>div>p{color:var(--muted)}.service-list{border-top:1px solid var(--line)}.service-row{display:grid;grid-template-columns:74px 1fr auto;gap:25px;align-items:start;padding:33px 0;border-bottom:1px solid var(--line);text-decoration:none;transition:padding .24s ease,background .24s ease}.service-row:hover{padding-inline:15px;background:rgba(184,138,73,.08)}.service-row span:first-child{color:var(--gold);font:600 28px/1 var(--serif)}.service-row h3{margin:0 0 8px;font:600 32px/1 var(--serif)}.service-row p{margin:0;color:var(--muted);font-size:13px}.service-row>span:last-child{align-self:center;color:var(--gold);font-size:25px}.steps{counter-reset:steps;display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid rgba(255,255,255,.28);border-bottom:1px solid rgba(255,255,255,.28)}.step{min-height:280px;padding:35px 30px;border-right:1px solid rgba(255,255,255,.22)}.step:last-child{border-right:0}.step::before{counter-increment:steps;content:"0" counter(steps);display:block;color:var(--gold-light);font-size:10px;font-weight:700;letter-spacing:.18em}.step h3{margin:74px 0 14px;font:600 31px/1 var(--serif)}.step p{margin:0;color:#c8cad9;font-size:12px}.quote-block{padding:42px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line);font:600 clamp(34px,4.2vw,54px)/1.05 var(--serif)}.faq{max-width:930px}.faq details{padding:24px 0;border-top:1px solid var(--line)}.faq details:last-child{border-bottom:1px solid var(--line)}.faq summary{display:flex;justify-content:space-between;gap:18px;cursor:pointer;font:600 25px/1.1 var(--serif)}.faq summary::after{content:"+";color:var(--gold);font-family:var(--sans);font-size:20px}.faq details[open] summary::after{content:"–"}.faq p{max-width:760px;color:var(--muted);font-size:13px}.cta-band{position:relative;overflow:hidden;padding:82px 0;background:var(--gold)}.cta-band::after{content:"";position:absolute;top:0;right:0;width:28%;height:100%;background:var(--navy);clip-path:polygon(35% 0,100% 0,100% 100%,0 100%)}.cta-band .wrap{position:relative;z-index:1;display:flex;align-items:center;justify-content:space-between;gap:34px}.cta-band h2{max-width:720px;margin:0;color:var(--navy);font:600 clamp(40px,4.5vw,62px)/.94 var(--serif)}.cta-band .btn-primary{background:var(--navy-deep)}
.page-hero{position:relative;overflow:hidden;padding:112px 0 104px;background:var(--ivory)}.page-hero::after{content:"";position:absolute;right:-2%;bottom:0;width:37%;height:66%;background:var(--navy);clip-path:polygon(25% 0,100% 13%,100% 100%,0 100%)}.page-hero .wrap{position:relative;z-index:1;max-width:990px;margin-left:max(calc((100% - 1220px)/2),32px)}.page-hero h1{max-width:850px;font-size:clamp(58px,7.3vw,99px)}.page-hero p{max-width:680px}.prose{max-width:800px}.prose h2{margin-top:0;font:600 clamp(39px,4vw,56px)/1.02 var(--serif)}.prose h3{margin-top:36px;font:600 31px/1 var(--serif)}.prose p,.prose li{color:#4f5363}.photo-split{display:grid;grid-template-columns:.9fr 1.1fr;gap:clamp(46px,7vw,108px);align-items:center}.photo-split picture{position:relative;display:block}.photo-split picture::after{content:"";position:absolute;z-index:-1;bottom:-38px;right:-28px;width:90%;height:45%;background:var(--navy);clip-path:polygon(0 0,100% 18%,100% 100%,17% 100%)}.photo-split img{width:100%;aspect-ratio:4/5;object-fit:cover;object-position:50% 26%;clip-path:polygon(0 0,100% 0,100% 91%,8% 100%,0 84%)}.grid-3{display:grid;grid-template-columns:repeat(3,1fr);gap:0;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.info-card{min-height:250px;padding:32px 30px;border-right:1px solid var(--line);background:transparent}.info-card:last-child{border-right:0}.info-card h3{margin:58px 0 12px;font:600 31px/1 var(--serif)}.info-card p{color:var(--muted);font-size:13px}.notice{padding:16px 20px;color:#4e4d53;border-left:2px solid var(--gold);background:#f3ead9;font-size:12px}.form{display:grid;max-width:760px;gap:18px;padding:clamp(24px,4vw,54px);background:var(--ivory);border-top:2px solid var(--gold);box-shadow:var(--shadow)}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:18px}.form label{display:grid;gap:7px;font-size:11px;font-weight:700;letter-spacing:.06em;text-transform:uppercase}.form input,.form select,.form textarea{width:100%;min-height:50px;padding:11px 12px;color:var(--ink);border:0;border-bottom:1px solid #a7a6a0;background:transparent}.form textarea{min-height:130px;resize:vertical}.form small,.form-status{color:var(--muted);font-size:11px}.form-status{min-height:24px}.blog-empty{max-width:880px;padding:55px;background:var(--ivory);border-top:2px solid var(--gold)}.blog-empty h2{margin-top:0;font:600 42px/1 var(--serif)}.legal-note{color:var(--muted);font-size:11px}.client-shell{display:grid;min-height:60vh;place-items:center;padding:60px 20px}.client-card{max-width:680px;padding:52px;border-top:2px solid var(--gold);background:var(--ivory);box-shadow:var(--shadow)}.client-card h1{font:600 50px/.98 var(--serif)}
.route-exterior .page-hero,.route-como-funciona .page-hero{min-height:510px;padding-right:48%}.route-exterior .page-hero::before,.route-como-funciona .page-hero::before{content:"";position:absolute;inset:0 0 0 auto;width:52%;background-position:center;background-size:cover;clip-path:polygon(12% 0,100% 0,100% 100%,0 100%)}.route-exterior .page-hero::before{background-image:linear-gradient(90deg,rgba(16,23,53,.18),transparent 42%),image-set(url('/images/josi/josi-banner-exterior-v2-1600.avif') type('image/avif'),url('/images/josi/josi-banner-exterior-v2-1600.webp') type('image/webp'))}.route-como-funciona .page-hero::before{background-image:linear-gradient(90deg,rgba(16,23,53,.18),transparent 42%),image-set(url('/images/josi/josi-banner-como-funciona-v2-1600.avif') type('image/avif'),url('/images/josi/josi-banner-como-funciona-v2-1600.webp') type('image/webp'))}.route-exterior .page-hero::after,.route-como-funciona .page-hero::after{right:44%;width:15%;height:22%;background:var(--navy);clip-path:polygon(42% 0,100% 0,100% 100%,0 100%)}
.footer{position:relative;overflow:hidden;padding:76px 0 34px;background:var(--navy-deep);color:#e7e5e0}.footer::before{content:"";position:absolute;top:0;right:0;width:31%;height:120px;border-bottom:1px solid var(--gold);background:var(--navy);clip-path:polygon(22% 0,100% 0,100% 100%,0 100%)}.footer-grid{display:grid;grid-template-columns:1.4fr repeat(3,1fr);gap:50px}.footer h3{margin-top:0;font:600 20px var(--serif)}.footer a{display:block;margin:9px 0;color:#c8c9d2;text-decoration:none;font-size:12px}.footer p{color:#a9abb9;font-size:12px}.footer .brand{display:flex}.footer-bottom{display:flex;justify-content:space-between;margin-top:48px;padding-top:24px;color:#8e90a1;border-top:1px solid rgba(255,255,255,.12);font-size:11px}
[data-reveal]{opacity:1;transform:none}.motion-ready [data-reveal]{opacity:.97;transform:translateY(8px);transition:opacity .55s ease,transform .55s cubic-bezier(.2,.8,.2,1)}.motion-ready [data-reveal].is-visible{opacity:1;transform:none}
@media(max-width:980px){.menu{position:absolute;top:76px;right:0;left:0;display:none;align-items:stretch;flex-direction:column;gap:18px;padding:28px;background:var(--paper);box-shadow:var(--shadow)}.menu.open{display:flex}.burger{display:block}.hero-grid,.split,.photo-split{grid-template-columns:1fr}.hero-grid{gap:40px}.portrait-frame{min-height:min(128vw,700px);max-width:690px}.steps{grid-template-columns:1fr 1fr}.step:nth-child(2){border-right:0}.step:nth-child(-n+2){border-bottom:1px solid rgba(255,255,255,.22)}.footer-grid{grid-template-columns:1fr 1fr}}
@media(max-width:640px){:root{--wrap:min(100% - 32px,1220px)}.page-fold{display:none}.nav{min-height:76px}.brand strong{font-size:23px}.brand small{display:none}.hero::before{top:43%;width:95%;height:44%}.hero::after{right:-17%;width:95%}.hero-grid{padding:50px 0 70px}.hero h1{font-size:clamp(54px,15.5vw,71px)}.hero-copy>p,.page-hero p{font-size:14px}.actions{display:grid}.btn{width:100%}.portrait-frame{min-height:490px}.portrait-note{right:0;bottom:4%;width:59%;padding:18px}.portrait-note strong{font-size:21px}.section{padding:88px 0}.section::before{width:76px;height:55px}.section-head{margin-bottom:37px}.section-head h2{font-size:47px}.service-row{grid-template-columns:48px 1fr;gap:14px}.service-row>span:last-child{display:none}.service-row h3{font-size:28px}.steps{grid-template-columns:1fr}.step,.step:nth-child(2){min-height:auto;border-right:0;border-bottom:1px solid rgba(255,255,255,.22)}.step h3{margin-top:42px}.cta-band .wrap,.footer-bottom{display:block}.cta-band::after{display:none}.cta-band h2{font-size:clamp(36px,11vw,45px)}.cta-band .btn{margin-top:28px}.page-hero{padding:76px 0 90px}.page-hero::after{width:61%;height:33%}.page-hero .wrap{margin-left:16px}.page-hero h1{font-size:clamp(53px,15vw,72px)}.photo-split{gap:55px}.grid-3{grid-template-columns:1fr}.info-card{min-height:0;border-right:0;border-bottom:1px solid var(--line)}.info-card:last-child{border-bottom:0}.info-card h3{margin-top:16px}.form-row,.footer-grid{grid-template-columns:1fr}.form{padding:26px 20px}.client-card{padding:34px 25px}}
/* Guardas contra overflow do título editorial em ecrãs pequenos. */.hero-copy{min-width:0}@media(max-width:640px){:root{--wrap:min(calc(100% - 32px),1220px)}.hero h1{font-size:clamp(50px,14vw,62px);overflow-wrap:anywhere}.nav{width:calc(100% - 32px)}}
.photo-rail{position:relative;overflow:hidden;padding:112px 0;background:var(--paper)}.photo-rail::before{content:"";position:absolute;top:0;left:0;width:100%;height:86px;background:var(--navy);clip-path:polygon(0 0,100% 0,86% 58%,0 100%)}.photo-rail-head{position:relative;z-index:1;display:flex;align-items:end;justify-content:space-between;gap:30px;margin-bottom:48px}.photo-rail-head p{max-width:430px;margin:0;color:var(--muted);font:600 19px/1.35 var(--serif)}.photo-rail-grid{display:grid;grid-template-columns:repeat(6,1fr);gap:12px;align-items:end}.photo-rail picture{display:block;overflow:hidden;background:var(--navy)}.photo-rail picture:nth-child(odd){transform:translateY(34px)}.photo-rail picture:nth-child(3n){transform:translateY(-16px)}.photo-rail img{width:100%;aspect-ratio:2/3;object-fit:cover;transition:transform .45s ease,filter .45s ease}.photo-rail picture:hover img{transform:scale(1.045);filter:saturate(.88)}@media(max-width:760px){.photo-rail{padding:88px 0}.photo-rail-head{display:block;margin-bottom:32px}.photo-rail-head p{margin-top:18px}.photo-rail-grid{grid-template-columns:repeat(2,1fr);gap:10px}.photo-rail picture:nth-child(odd),.photo-rail picture:nth-child(3n){transform:none}.photo-rail picture:nth-child(3n+2){transform:translateY(24px)}}@media(max-width:640px){.hero-grid,.hero-copy,.hero-copy>p,.hero h1,.portrait-frame{width:100%;max-width:100%;min-width:0}.hero h1,.hero-copy>p{overflow-wrap:anywhere;word-break:normal}.portrait-frame{overflow:hidden}.portrait-note{max-width:59%}}
.page-photo-callout{position:relative;overflow:hidden;padding:0 0 100px;background:var(--paper)}.page-photo-callout .wrap{display:grid;grid-template-columns:minmax(0,420px) 1fr;align-items:end;gap:46px}.page-photo-frame{position:relative;max-width:420px}.page-photo-frame::before{content:"";position:absolute;z-index:0;right:-34px;bottom:-28px;width:75%;height:42%;background:var(--navy);clip-path:polygon(20% 0,100% 18%,100% 100%,0 100%)}.page-photo-frame picture{position:relative;z-index:1;display:block;overflow:hidden}.page-photo-frame img{width:100%;aspect-ratio:2/3;object-fit:cover}.page-photo-callout p{max-width:430px;margin:0 0 10px;color:var(--navy);font:600 clamp(26px,3vw,42px)/1.03 var(--serif)}
.form label{font-size:12px}.form small,.form-status{font-size:12px}.form .checkbox-label{display:flex;align-items:flex-start;gap:11px;min-height:44px;font-size:12px;line-height:1.5;letter-spacing:0;text-transform:none}.form .checkbox-label input{flex:0 0 auto;width:20px;min-height:20px;margin:1px 0 0;padding:0;accent-color:var(--navy)}.form .checkbox-label a{color:var(--navy);text-decoration-thickness:1px;text-underline-offset:3px}
@media(max-width:760px){.page-photo-callout{padding-bottom:76px}.page-photo-callout .wrap{grid-template-columns:1fr;gap:28px}.page-photo-frame{max-width:min(100%,390px)}.page-photo-callout p{font-size:31px}}
.route-banner{position:relative;overflow:hidden;padding:0 0 104px;background:var(--paper)}.route-banner .wrap{position:relative}.route-banner picture,.route-banner img{display:block;width:100%;aspect-ratio:16/9;object-fit:cover}.route-banner p{max-width:560px;margin:24px 0 0;color:var(--navy);font:600 clamp(27px,3.2vw,46px)/1.03 var(--serif)}.planning-banner{padding:0 0 108px;background:var(--paper)}.planning-banner .wrap{display:grid;grid-template-columns:minmax(0,.94fr) minmax(300px,.8fr);align-items:center;gap:clamp(34px,7vw,108px)}.planning-banner-media{position:relative;min-height:520px}.planning-banner-primary{width:min(78%,460px)}.planning-banner-primary picture,.planning-banner-primary img{display:block;width:100%;aspect-ratio:2/3;object-fit:cover;object-position:50% 28%}.planning-banner-detail{position:absolute;right:0;bottom:0;width:42%;padding:10px 10px 0;background:var(--paper)}.planning-banner-detail picture,.planning-banner-detail img{display:block;width:100%;aspect-ratio:2/3;object-fit:cover;object-position:60% 48%}.planning-banner-copy{max-width:510px}.planning-banner-copy h2{margin:0 0 20px;font:600 clamp(39px,4.5vw,62px)/.98 var(--serif);letter-spacing:-.03em}.planning-banner-copy p{color:var(--muted);font-size:15px;line-height:1.75}.planning-banner-copy .btn{margin-top:15px}
@media(max-width:760px){.route-banner{padding-bottom:76px}.route-banner p{margin-top:18px;font-size:31px}.planning-banner{padding-bottom:80px}.planning-banner .wrap{grid-template-columns:1fr;gap:40px}.planning-banner-media{min-height:min(128vw,540px);max-width:520px}.planning-banner-primary{width:78%}.planning-banner-detail{width:43%}.planning-banner-copy h2{font-size:46px}.planning-banner-copy p{font-size:14px}}
/* Mantém o detalhe de dobra do retrato dentro da coluna, sem criar scroll horizontal. */.photo-split picture::after{right:0}
@media(max-width:640px){.wrap{width:calc(100% - 32px)!important;max-width:1220px}.page-hero .wrap{margin-inline:auto}}
@media(max-width:760px){.route-exterior .page-hero,.route-como-funciona .page-hero{min-height:auto;padding-right:0;padding-bottom:410px}.route-exterior .page-hero::before,.route-como-funciona .page-hero::before{top:auto;width:100%;height:360px;clip-path:none}.route-exterior .page-hero::after,.route-como-funciona .page-hero::after{right:0;bottom:335px;width:42%;height:26px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}[data-reveal]{opacity:1;transform:none}}
.route-exterior .page-hero::before{background-position:right center}.route-como-funciona .page-hero::before{background-position:88% center}
.portrait-frame picture,.portrait-frame img{object-position:right center}.planning-banner-media{min-height:0}.planning-banner-primary{width:100%;max-width:620px}.planning-banner-primary picture,.planning-banner-primary img{aspect-ratio:16/9;object-position:right center}.planning-banner-detail{display:none}@media(max-width:760px){.planning-banner-media{min-height:0;max-width:none}.planning-banner-primary{width:100%;max-width:none}}
.editorial-note{max-width:900px;padding:clamp(30px,5vw,62px);background:var(--navy);color:#fff;border-top:1px solid var(--gold);box-shadow:var(--shadow)}.editorial-note .kicker{color:var(--gold-light)}.editorial-note h2{max-width:690px;margin:20px 0 18px;font:600 clamp(38px,4.3vw,58px)/.98 var(--serif)}.editorial-note p{max-width:690px;margin:0;color:#d6d8e1;font-size:15px;line-height:1.72}.editorial-note a{display:inline-flex;gap:12px;margin-top:27px;color:#fff;font-size:11px;font-weight:700;letter-spacing:.11em;text-decoration:none;text-transform:uppercase}.editorial-note a:hover{text-decoration:underline}.planning-context{padding-block:0 112px}.blog-note{margin-top:32px}.interactive-card summary{list-style:none;cursor:pointer}.interactive-card summary::-webkit-details-marker{display:none}.service-row.interactive-card{display:block}.service-row summary{display:grid;grid-template-columns:74px 1fr auto;gap:25px;align-items:start}.service-row summary>span:last-child{align-self:center;color:var(--gold);font-size:28px;transition:transform .3s ease}.service-row[open] summary>span:last-child{transform:rotate(45deg)}.interactive-card{transition:background .3s ease,box-shadow .3s ease,transform .3s ease}.interactive-card:hover{background:rgba(184,138,73,.08)}.interactive-card:has(summary:focus-visible){outline:2px solid var(--gold);outline-offset:-3px}.card-hint{display:inline-block;margin-top:14px;color:var(--gold);font-size:10px;font-weight:700;letter-spacing:.13em;text-transform:uppercase}.card-detail{display:grid;grid-template-rows:0fr;transition:grid-template-rows .42s cubic-bezier(.2,.8,.2,1)}.card-detail>*{overflow:hidden}.interactive-card[open] .card-detail{grid-template-rows:1fr;animation:card-reveal .42s cubic-bezier(.2,.8,.2,1)}.card-detail p{margin:0;padding:20px 0 0}.service-row .card-detail{padding-left:99px}.service-row .card-detail p{max-width:620px}.card-detail a{display:inline-flex;gap:9px;margin-top:16px;color:var(--ink);font-size:11px;font-weight:700;letter-spacing:.11em;text-decoration:none;text-transform:uppercase}.card-detail a:hover{text-decoration:underline}.dark .interactive-card:hover{background:rgba(255,255,255,.07)}.dark .card-detail p{color:#d6d8e1}.dark .card-detail a{color:#fff}.interactive-steps .step{padding:0}.interactive-steps .step summary{display:block;min-height:280px;padding:35px 30px}.interactive-steps .step .card-detail{padding:0 30px}.interactive-steps .step .card-detail p{padding:0 0 30px}.interactive-steps .step[open] summary h3{margin-bottom:11px}.interactive-steps .card-hint{color:var(--gold-light)}@keyframes card-reveal{from{opacity:.15;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}@media(prefers-reduced-motion:reduce){.interactive-card,.service-row summary>span:last-child,.card-detail{transition:none}.interactive-card[open] .card-detail{animation:none}}@media(max-width:640px){.planning-context{padding-bottom:80px}.editorial-note{padding:30px 24px}.editorial-note h2{font-size:41px}.service-row summary{grid-template-columns:48px 1fr;gap:14px}.service-row summary>span:last-child{display:none}.service-row .card-detail{padding-left:62px}.interactive-steps .step summary{min-height:0;padding:30px 22px}.interactive-steps .step .card-detail{padding:0 22px}}
.service-card-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.service-card,.journey-card{position:relative;overflow:hidden;border:1px solid rgba(15,20,51,.16);background:#fff;color:var(--ink);text-align:left;cursor:pointer;isolation:isolate;transition:transform .42s cubic-bezier(.2,.8,.2,1),border-color .42s ease,box-shadow .42s ease}.service-card:before,.journey-card:before{position:absolute;inset:0;z-index:-1;background:linear-gradient(135deg,rgba(184,138,73,.18),transparent 42%,rgba(15,20,51,.07));content:"";opacity:0;transition:opacity .42s ease}.service-card:hover,.journey-card:hover{border-color:var(--gold);box-shadow:0 22px 42px rgba(15,20,51,.13);transform:translateY(-8px)}.service-card:hover:before,.journey-card:hover:before{opacity:1}.service-card:focus-visible,.journey-card:focus-visible,.insight-dialog-close:focus-visible{outline:3px solid var(--gold);outline-offset:4px}.service-card{display:flex;min-height:354px;padding:27px;flex-direction:column;justify-content:space-between}.service-card-index{color:var(--gold);font:600 42px/1 var(--serif)}.service-card-body{display:grid;gap:14px}.service-card-body .kicker{font-size:10px}.service-card-body strong{font:600 clamp(29px,2.5vw,38px)/.98 var(--serif)}.service-card-body>span:last-child{max-width:31ch;color:var(--muted);font-size:14px;line-height:1.65}.service-card-action{display:flex;align-items:center;justify-content:space-between;border-top:1px solid rgba(15,20,51,.15);padding-top:17px;font-size:10px;font-weight:700;letter-spacing:.12em;text-transform:uppercase}.service-card-action b{font-size:20px;font-weight:400;transition:transform .3s ease}.service-card:hover .service-card-action b{transform:translate(3px,-3px)}.journey-card-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.journey-card{min-height:300px;padding:30px 26px;background:transparent;color:#fff}.journey-card:before{background:linear-gradient(135deg,rgba(255,255,255,.14),transparent 58%,rgba(201,155,85,.25))}.journey-card span{display:block;color:var(--gold-light);font-size:11px;font-weight:700;letter-spacing:.13em}.journey-card h3{margin:74px 0 11px;font:600 34px/1 var(--serif)}.journey-card p{margin:0;color:#d6d8e1;font-size:13px;line-height:1.6}.journey-card i{position:absolute;right:24px;bottom:21px;color:var(--gold-light);font-size:27px;font-style:normal;transition:transform .3s ease}.journey-card:hover i{transform:rotate(90deg)}.insight-dialog{width:min(760px,calc(100vw - 40px));max-height:min(780px,calc(100dvh - 40px));border:0;padding:0;background:transparent;color:var(--ink);overflow:visible}.insight-dialog::backdrop{background:rgba(6,9,28,.7);backdrop-filter:blur(8px)}.insight-dialog-panel{position:relative;overflow:auto;max-height:inherit;padding:clamp(34px,6vw,72px);background:linear-gradient(145deg,#fffdf9,#f4ede1);box-shadow:0 28px 100px rgba(0,0,0,.35);animation:dialog-in .42s cubic-bezier(.2,.8,.2,1)}.insight-dialog-panel:before{position:absolute;top:0;right:0;width:38%;height:9px;background:var(--gold);content:""}.insight-dialog .kicker{display:block;margin-bottom:18px}.insight-index{display:block;margin-bottom:10px;color:var(--gold);font:600 54px/.8 var(--serif)}.insight-dialog h2{max-width:580px;margin:0 0 18px;font:600 clamp(42px,6vw,68px)/.9 var(--serif)}.insight-dialog p{max-width:600px;margin:0;color:var(--muted);font-size:16px;line-height:1.7}.insight-dialog ul{display:grid;gap:11px;margin:31px 0;padding:0;list-style:none}.insight-dialog li{position:relative;padding-left:25px;font-size:14px;line-height:1.55}.insight-dialog li:before{position:absolute;top:.6em;left:0;width:9px;height:9px;border:1px solid var(--gold);border-radius:50%;content:""}.insight-dialog-close{position:absolute;top:20px;right:20px;display:flex;align-items:center;gap:8px;border:0;background:transparent;color:var(--ink);cursor:pointer;font:700 10px/1 var(--sans);letter-spacing:.12em;text-transform:uppercase}.insight-dialog-close:first-letter{font-size:26px;font-weight:400}.insight-dialog-close span{margin-top:2px}.insight-dialog .btn{margin-top:4px}@keyframes dialog-in{from{opacity:0;transform:translateY(22px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}@media(max-width:820px){.service-card-grid{grid-template-columns:1fr}.service-card{min-height:0;gap:42px;padding:27px}.journey-card-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.journey-card{min-height:260px}}@media(max-width:640px){.service-card-grid{gap:11px}.service-card{min-height:245px;padding:24px}.service-card-index{font-size:35px}.service-card-body strong{font-size:33px}.journey-card-grid{grid-template-columns:1fr;gap:10px}.journey-card{min-height:210px;padding:25px}.journey-card h3{margin:38px 0 8px;font-size:32px}.insight-dialog{width:100vw;max-height:88dvh;margin:12dvh 0 0}.insight-dialog-panel{min-height:74dvh;padding:60px 27px 34px}.insight-dialog h2{font-size:49px}.insight-dialog-close{top:18px;right:19px}.insight-dialog .btn{width:100%;justify-content:center}}@media(prefers-reduced-motion:reduce){.service-card,.journey-card,.service-card:before,.journey-card:before,.service-card-action b,.journey-card i{transition:none}.service-card:hover,.journey-card:hover{transform:none}.insight-dialog-panel{animation:none}}.service-card,.journey-card,.insight-dialog-close{touch-action:manipulation}.service-card:focus-visible,.service-card:active,.journey-card:focus-visible,.journey-card:active{border-color:var(--gold);box-shadow:0 16px 30px rgba(15,20,51,.14);transform:translateY(-4px)}.insight-dialog-panel{overscroll-behavior:contain;-webkit-overflow-scrolling:touch}@media(max-width:640px){.insight-dialog-panel{padding-top:calc(60px + env(safe-area-inset-top));padding-bottom:calc(34px + env(safe-area-inset-bottom))}.insight-dialog-close{right:calc(19px + env(safe-area-inset-right))}}@media(prefers-reduced-motion:reduce){.service-card:focus-visible,.service-card:active,.journey-card:focus-visible,.journey-card:active{transform:none}}