:root{--paper:#f7f6f3;--paper-deep:#eeeae2;--ink:#191a17;--muted:#6f7069;--line:rgba(25,26,23,.16);--cream:#fbf8f1;--olive:#69705c;--ease:cubic-bezier(.22,1,.36,1)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;overflow-x:hidden;color:var(--ink);background:var(--paper);font-family:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;font-size:16px;line-height:1.6;-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}img{display:block;max-width:100%}svg{width:18px;height:18px}:focus-visible{outline:2px solid #b79558;outline-offset:4px}.skip-link{position:fixed;left:16px;top:0;z-index:100;padding:10px 14px;border-radius:0 0 4px 4px;background:var(--paper);color:var(--ink);transform:translateY(-120%);transition:transform .2s}.skip-link:focus{transform:none}.shell{width:min(1120px,calc(100% - 40px));margin-inline:auto}.narrow{max-width:900px}
.hero{position:relative;min-height:100svh;overflow:hidden;color:var(--cream);background:#403f37}.hero-media,.hero-shade{position:absolute;inset:0}.hero-media{transform:scale(1.025);transition:transform 1.2s var(--ease)}.hero-media img{width:100%;height:100%;object-fit:cover;object-position:54% center}.hero-shade{background:linear-gradient(180deg,rgba(15,17,13,.56) 0%,rgba(15,17,13,.08) 34%,rgba(15,17,13,.28) 62%,rgba(15,17,13,.82) 100%),linear-gradient(90deg,rgba(15,17,13,.32),transparent 75%)}.hero-content{position:relative;z-index:1;min-height:100svh;padding-top:max(24px,env(safe-area-inset-top));padding-bottom:max(28px,env(safe-area-inset-bottom));display:flex;flex-direction:column}.brand{display:inline-flex;width:fit-content;align-items:center;gap:9px}.brand img{width:48px;height:48px;filter:invert(1) brightness(2);mix-blend-mode:screen}.brand-word{font-family:Georgia,"Times New Roman",serif;font-size:29px;line-height:1;letter-spacing:-.03em}.hero-copy{margin-top:auto;padding:72px 0 48px}.eyebrow,.section-number{margin:0 0 18px;font-size:11px;font-weight:700;letter-spacing:.16em;line-height:1.3;text-transform:uppercase}.eyebrow{color:rgba(255,255,255,.76)}h1,h2,h3{margin:0;font-family:Georgia,"Times New Roman",serif;font-weight:400;letter-spacing:-.035em}h1{max-width:780px;font-size:clamp(43px,11vw,76px);line-height:.99;text-wrap:balance}.hero-local{margin:22px 0 0;padding-left:14px;border-left:1px solid rgba(255,255,255,.5);color:rgba(255,255,255,.82);font-size:15px;line-height:1.45;letter-spacing:.01em}.hero-actions{display:grid;gap:10px;margin-top:28px}.button{min-height:56px;padding:15px 20px;display:inline-flex;align-items:center;justify-content:center;gap:10px;border:1px solid transparent;border-radius:999px;font-size:14px;font-weight:650;line-height:1.2;transition:background-color .3s var(--ease),color .3s var(--ease),transform .3s var(--ease),border-color .3s var(--ease),box-shadow .3s var(--ease)}.button:active{transform:scale(.99)}.button-light{color:var(--ink);background:var(--cream)}.button-light svg{fill:currentColor}.button-ghost{border-color:rgba(255,255,255,.44);color:#fff;background:rgba(255,255,255,.06);backdrop-filter:blur(8px)}.button-ghost svg{fill:none;stroke:currentColor;stroke-width:1.7}.hero-scroll{display:none}
.section{padding:92px 0;border-bottom:1px solid var(--line)}.section-number{color:var(--olive)}.section h2,.situations h2,.final-cta h2{font-size:clamp(38px,9.2vw,64px);line-height:1.04;text-wrap:balance}.intro h2{max-width:790px}.intro-copy{max-width:700px;margin:34px 0 0 auto}.intro-copy p{margin:0;font-size:18px;line-height:1.65}.intro-copy p+p{margin-top:18px;color:var(--muted)}.section-heading{margin-bottom:48px}.situations{padding:68px 0;border-bottom:1px solid var(--line);background:var(--paper-deep)}.situations h2{font-size:clamp(34px,8vw,50px)}.situation-list{list-style:none;margin:38px 0 0;padding:0;border-top:1px solid var(--line)}.situation-list li{padding:17px 0;border-bottom:1px solid var(--line);font-family:Georgia,"Times New Roman",serif;font-size:clamp(21px,5.4vw,29px);line-height:1.25;letter-spacing:-.02em}.services{background:var(--paper-deep)}.service-list{border-top:1px solid var(--line)}.service{display:grid;grid-template-columns:38px 1fr;gap:12px;padding:34px 0;border-bottom:1px solid var(--line)}.service-index{padding-top:8px;color:var(--olive);font-size:11px;font-weight:700;letter-spacing:.1em}.service h3{font-size:36px;line-height:1.1}.service p{max-width:560px;margin:13px 0 0;color:var(--muted);font-size:16px}.formula{background:var(--paper)}.formula-modes{margin-top:48px;padding-top:4px;border-top:1px solid var(--line)}.formula-modes p{margin:0;padding:18px 0;border-bottom:1px solid var(--line);font-family:Georgia,"Times New Roman",serif;font-size:clamp(23px,6vw,34px);line-height:1.25;letter-spacing:-.025em}
.assurance{background:#30352f;color:var(--cream)}.assurance .section-number{color:#bbbda9}.assurance h2{max-width:560px}.points{list-style:none;margin:52px 0 0;padding:0;border-top:1px solid rgba(255,255,255,.18)}.points li{min-height:69px;padding:17px 0;display:flex;align-items:center;gap:16px;border-bottom:1px solid rgba(255,255,255,.18);font-size:16px}.points span{min-width:24px;color:#bbbda9;font-size:10px;letter-spacing:.12em}
.contact-list{border-top:1px solid var(--line)}.contact-list a{position:relative;min-height:92px;padding:22px 35px 22px 0;display:flex;flex-direction:column;justify-content:center;border-bottom:1px solid var(--line);font-family:Georgia,"Times New Roman",serif;font-size:clamp(21px,5.4vw,32px);transition:padding-left .3s var(--ease),color .3s var(--ease)}.contact-list a:hover{padding-left:10px;color:var(--olive)}.contact-label{margin-bottom:4px;color:var(--muted);font-family:Inter,-apple-system,sans-serif;font-size:10px;font-weight:700;letter-spacing:.15em;text-transform:uppercase}.contact-list .arrow{position:absolute;right:3px;top:50%;font-family:Inter,sans-serif;font-size:22px;transform:translateY(-50%)}
.final-cta{padding:100px 0;background:#d8d0c2;text-align:center}.final-inner{max-width:850px}.final-cta .section-number{margin-bottom:22px}.final-guidance{margin:28px auto 0;color:#4f5049;font-size:17px;line-height:1.5}.final-guidance p{margin:0}.final-cta .button{width:fit-content;max-width:100%;margin:28px auto 0}.button-dark{color:var(--cream);background:var(--ink)}.button-dark span{margin-left:auto}.closing{padding:76px 0 38px;background:var(--ink);color:var(--cream);text-align:center}.closing p{max-width:640px;margin:0 auto 46px;font-family:Georgia,"Times New Roman",serif;font-size:clamp(28px,7vw,44px);font-style:italic;line-height:1.18;letter-spacing:-.025em}.closing span{color:rgba(255,255,255,.48);font-size:10px;font-weight:700;letter-spacing:.18em;text-transform:uppercase}[data-reveal]{opacity:0;transform:translateY(24px);transition:opacity .9s var(--ease),transform .9s var(--ease)}[data-reveal].is-visible{opacity:1;transform:none}
@media(min-width:600px){.shell{width:min(1120px,calc(100% - 64px))}.hero-actions{grid-template-columns:max-content max-content}}
@media(min-width:760px){.section{padding:130px 0}.situations{padding:90px 0}.intro-grid,.situations-inner,.formula-inner{display:grid;grid-template-columns:minmax(280px,.85fr) 1.15fr;gap:90px;align-items:start}.intro-copy{max-width:none;margin:0}.situation-list,.formula-modes{margin:0}.hero-content{padding-top:38px;padding-bottom:38px}.brand img{width:54px;height:54px}.brand-word{font-size:34px}.hero-copy{padding-bottom:65px}.hero-local{font-size:16px}.service{grid-template-columns:70px minmax(0,1fr);align-items:baseline;padding:42px 0}.service>div{display:grid;grid-template-columns:minmax(150px,220px) minmax(0,1fr);gap:clamp(24px,4vw,56px);align-items:start}.service h3{font-size:42px}.service p{max-width:620px;margin:0;font-size:17px}.assurance-grid{display:grid;grid-template-columns:1fr 1fr;gap:90px;align-items:start}.points{margin:0}.contact-list a{min-height:108px;display:grid;grid-template-columns:160px minmax(0,1fr) 24px;align-items:center}.contact-label{margin:0}.contact-list .arrow{position:static;transform:none}.final-cta{padding:140px 0}.final-guidance{font-size:18px}}
@media(hover:hover) and (pointer:fine){.button:hover{transform:translateY(-2px);box-shadow:0 18px 40px rgba(18,20,17,.2)}.button-light:hover{background:#fff}.button-ghost:hover{border-color:rgba(255,255,255,.72);background:rgba(255,255,255,.15)}.button-dark:hover{background:#30352f}}
@media(min-width:1000px){.hero-copy{padding-bottom:46px}.hero-scroll{width:fit-content;display:flex;align-items:center;gap:14px;color:rgba(255,255,255,.7);font-size:11px;font-weight:700;letter-spacing:.14em;text-transform:uppercase}.hero-scroll span:last-child{font-size:18px;animation:drift 2s ease-in-out infinite}.editorial-grid{display:grid;grid-template-columns:minmax(280px,.85fr) minmax(0,1.15fr);gap:clamp(60px,6vw,90px);align-items:start}.editorial-grid>.section-heading{margin:0}.services-grid .service{grid-template-columns:32px minmax(0,1fr)}.services-grid .service>div{grid-template-columns:minmax(120px,160px) minmax(0,1fr);gap:24px}.contact-grid .contact-list a{grid-template-columns:80px minmax(0,1fr) 24px}.contact-grid .contact-list a>span:nth-child(2){overflow-wrap:anywhere}}
.situations h2{font-size:clamp(38px,9.2vw,64px)}.service p,.points li{font-size:17px}@media(min-width:760px){.service p{font-size:18px}}
.hero-actions .button{position:relative;isolation:isolate;overflow:hidden;transition:transform .3s cubic-bezier(.2,.8,.2,1),box-shadow .3s cubic-bezier(.2,.8,.2,1),border-color .3s cubic-bezier(.2,.8,.2,1),color .3s cubic-bezier(.2,.8,.2,1)}.hero-actions .button::before{position:absolute;inset:0;z-index:-1;background:linear-gradient(115deg,var(--ink),#496b73,#6f2f3f);content:"";opacity:0;transition:opacity .3s cubic-bezier(.2,.8,.2,1)}.hero-actions .button-ghost::before{background:var(--ink)}.hero-actions .button-light{min-width:239.15625px}.hero-actions .button:focus-visible{outline:3px solid #b5965b;outline-offset:4px}@media(hover:hover) and (pointer:fine){.hero-actions .button:hover{color:#fff;border-color:transparent;box-shadow:0 22px 48px rgba(23,23,23,.2);transform:translateY(-2px)}.hero-actions .button:hover::before{opacity:1}.hero-actions .button-ghost:hover{color:#fff;border-color:var(--ink)}}
@keyframes drift{50%{transform:translateY(5px)}}@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}}
