:root{--linen:#FBF9F5;--white:#fff;--ink:#1A1A1A;--muted:#666059;--terra:#C96A4A;--glow:rgba(201,106,74,.15);--line:rgba(42,42,42,.09);--dark:#1c1816;--serif:"Playfair Display",Georgia,serif;--sans:Inter,Arial,sans-serif;--shell:min(1180px,calc(100% - 48px));--space:clamp(5rem,9vw,9rem)}
*{box-sizing:border-box}[hidden]{display:none!important}html{scroll-behavior:smooth}body{margin:0;background:var(--linen);color:var(--ink);font:16px/1.7 var(--sans);overflow-x:hidden}img,video{display:block;max-width:100%}a{color:inherit;text-decoration:none}button,input{font:inherit}.skip-link{position:absolute;left:-999px}.skip-link:focus{left:1rem;top:1rem;z-index:10;background:#fff;padding:.75rem 1rem}.shell{width:var(--shell);margin-inline:auto}
.site-header{position:relative!important;inset:auto!important;z-index:3;border-bottom:1px solid var(--line);background:var(--linen)}.header-inner{width:var(--shell);height:88px;margin:auto;display:flex;align-items:center;gap:2rem}.logo{width:174px;height:70px;display:flex;align-items:center;overflow:hidden}.logo img{width:100%;height:auto}.site-header nav{display:flex;gap:2rem;margin-left:auto}.site-header nav a{font-size:.9rem;color:var(--muted);transition:color .2s}.site-header nav a:hover{color:var(--terra)}
.button{border:1px solid var(--terra);border-radius:999px;background:var(--terra);color:#fff;display:inline-flex;align-items:center;justify-content:center;gap:.7rem;padding:.85rem 1.25rem;font-weight:600;cursor:pointer;transition:transform .25s,box-shadow .25s}.button:hover{transform:translateY(-3px);box-shadow:0 14px 36px var(--glow)}.button span{transition:transform .25s}.button:hover span{transform:rotate(45deg)}.button.small{padding:.65rem 1rem;font-size:.85rem}.button.secondary{background:transparent;color:var(--ink);border-color:var(--line)}.menu-toggle{display:none;border:0;background:none}
.hero{min-height:calc(100vh - 88px);display:grid;grid-template-columns:1.02fr .98fr;align-items:center;gap:clamp(3rem,6vw,7rem);padding-block:clamp(4.5rem,8vw,8rem);position:relative}.hero:before,.about:before{content:"";position:absolute;width:28rem;height:28rem;border-radius:50%;background:radial-gradient(circle,var(--glow),transparent 68%);filter:blur(10px);z-index:-1}.hero:before{left:-18rem;top:5rem}.status-pill{width:max-content;max-width:100%;display:flex;align-items:center;gap:.6rem;padding:.5rem .8rem;border:1px solid #fff;background:rgba(255,255,255,.62);backdrop-filter:blur(12px);border-radius:999px;font-size:.78rem;box-shadow:0 12px 40px rgba(42,42,42,.05)}.status-pill span{width:.55rem;height:.55rem;border-radius:50%;background:#3cab63;animation:pulse 2s infinite}.hero h1,.about h2,.section-intro h2,.why h2,.planner h2{font-family:var(--serif);font-weight:500;line-height:1.01;letter-spacing:-.045em}.hero h1{font-size:clamp(3.2rem,6vw,6.3rem);margin:1.5rem 0}.hero h1 em,.about h2 em,.why h2 em{color:var(--terra)}.hero-copy>p{font-size:clamp(1rem,1.3vw,1.15rem);color:var(--muted);max-width:42rem}.actions{display:flex;gap:.8rem;flex-wrap:wrap;margin-top:2rem}.video-frame{border-radius:22px;overflow:hidden;background:#eee5da;box-shadow:0 32px 80px rgba(54,35,26,.12);border:1px solid #fff}.video-frame video{width:100%;aspect-ratio:16/10;object-fit:cover}
.principles{overflow:hidden;background:var(--terra);color:#fff}.marquee{overflow:hidden;padding:1rem 0}.marquee-track{width:max-content;display:flex;animation:marquee 28s linear infinite}.marquee-track span{white-space:nowrap;font:500 clamp(1.05rem,2vw,1.35rem)/1.4 var(--serif);padding-right:1rem}.marquee:hover .marquee-track{animation-play-state:paused}
.about,.why,.planner{position:relative;display:grid;grid-template-columns:1fr 1fr;gap:clamp(4rem,8vw,9rem);align-items:center;padding-block:var(--space)}.about:before{right:-14rem;bottom:2rem}.eyebrow{text-transform:uppercase;letter-spacing:.2em;font-weight:600;font-size:.75rem;color:var(--terra);margin:0 0 1.3rem}.about h2,.why h2,.planner h2{font-size:clamp(2.6rem,4.4vw,4.8rem);margin:.2rem 0 2rem}.about-copy>p:not(.eyebrow),.why-copy>p,.planner-copy>p{color:var(--muted);font-size:1.05rem}
.solutions{background:var(--dark);color:#fff;padding-block:var(--space)}.section-intro{max-width:790px;margin-bottom:clamp(3rem,6vw,6rem)}.section-intro h2{font-size:clamp(2.8rem,5vw,5.5rem);margin:.3rem 0 1.4rem}.section-intro>p:last-child{color:#bdb4ae}.service{border-top:1px solid rgba(255,255,255,.14)}.service:last-child{border-bottom:1px solid rgba(255,255,255,.14)}.service-trigger{width:100%;min-height:118px;border:0;background:none;color:#fff;display:grid;grid-template-columns:3rem 8rem 1fr 3rem;align-items:center;gap:1rem;text-align:left;cursor:pointer}.number{color:#847a74}.poetic{font-family:var(--serif);font-style:italic;color:#d3a23a}.service-trigger strong{font:500 clamp(2rem,4vw,4rem)/1 var(--serif)}.toggle-icon{width:46px;height:46px;border:1px solid rgba(255,255,255,.25);border-radius:50%;display:grid;place-items:center;font-size:1.5rem;transition:.3s}.service-trigger:hover .toggle-icon,.service-trigger[aria-expanded=true] .toggle-icon{background:var(--terra);border-color:var(--terra);transform:rotate(45deg)}.service-panel{display:grid;grid-template-columns:1fr 1fr;gap:clamp(2rem,6vw,6rem);align-items:center;padding:1rem 4rem 4rem 12rem;color:#c8bfba}.service-panel p{font-size:1.1rem}.service-panel ul{columns:2;padding-left:1.1rem}.service-panel img{border-radius:16px;width:100%;max-height:390px;object-fit:contain}
.why-copy strong{display:inline-block;margin-top:1rem;color:var(--terra);font:500 1.4rem var(--serif)}.illustration-card{margin:0;border-radius:24px;padding:2rem;background:rgba(255,255,255,.65);border:1px solid var(--line);box-shadow:0 28px 70px rgba(42,42,42,.08);transition:.35s}.illustration-card:hover{transform:translateY(-6px)}
.process{padding-block:var(--space);background:#fff}.process .section-intro{margin-inline:auto;text-align:center}.process .section-intro p:last-child{color:var(--muted)}.timeline{max-width:900px;margin:auto;position:relative;padding-left:5rem}.timeline-rail{position:absolute;left:1.45rem;top:0;bottom:0;width:2px;background:var(--line)}.timeline-rail span{display:block;width:100%;height:var(--progress,0%);background:var(--terra);box-shadow:0 0 18px var(--terra)}.process-card{position:relative;display:grid;grid-template-columns:5rem 1fr;gap:2rem;padding:2.2rem;margin-bottom:2rem;background:var(--linen);border:1px solid var(--line);border-radius:20px;transition:.35s}.process-card:before{content:"";position:absolute;left:-4.25rem;top:3rem;width:16px;height:16px;border-radius:50%;background:#d9d2cb;border:4px solid #fff}.process-card.active{transform:translateX(8px);box-shadow:0 22px 56px var(--glow);border-color:rgba(201,106,74,.3)}.process-card.active:before{background:var(--terra);box-shadow:0 0 20px var(--terra)}.process-card b{color:var(--terra);font-size:.85rem;letter-spacing:.15em}.process-card h3{font:500 clamp(1.8rem,3vw,2.7rem)/1.1 var(--serif);margin:0 0 .8rem}.process-card p{margin:0;color:var(--muted)}
.planner{align-items:start}.planner-card{background:rgba(255,255,255,.8);border:1px solid #fff;border-radius:24px;padding:clamp(1.5rem,4vw,3rem);box-shadow:0 28px 80px rgba(42,42,42,.09);backdrop-filter:blur(12px)}.planner-progress{height:4px;background:var(--line);border-radius:99px;margin-bottom:2.5rem;overflow:hidden}.planner-progress span{display:block;height:100%;width:33.333%;background:var(--terra);transition:width .35s}.planner-step{border:0;padding:0;margin:0}.planner-step legend{font:500 clamp(1.8rem,3vw,2.7rem)/1.15 var(--serif);margin-bottom:2rem}.planner-step legend small{display:block;font:600 .7rem var(--sans);letter-spacing:.15em;text-transform:uppercase;color:var(--terra);margin-bottom:.8rem}.chips{display:flex;flex-wrap:wrap;gap:.75rem;margin-bottom:2rem}.chips input{position:absolute;opacity:0}.chips span{display:block;padding:.8rem 1rem;border:1px solid var(--line);border-radius:999px;background:#fff;cursor:pointer;transition:.25s}.chips input:checked+span{background:var(--dark);color:#fff;border-color:var(--dark);transform:translateY(-2px)}.field{display:block;color:var(--muted);font-size:.85rem;margin:1rem 0}.field input{display:block;width:100%;margin-top:.35rem;border:1px solid var(--line);border-radius:12px;padding:.9rem 1rem;background:#fff}.step-actions{display:flex;align-items:center;justify-content:space-between;gap:1rem}.text-button{border:0;background:transparent;color:var(--muted);cursor:pointer;padding:.8rem}.form-status{color:var(--terra);min-height:1.5em}
footer{border-top:1px solid var(--line);padding-block:3rem;background:#f3ece5}.footer-inner{width:var(--shell);margin:auto;display:grid;grid-template-columns:1fr auto auto;gap:3rem;align-items:center}.footer-logo{width:190px}.footer-inner nav{display:flex;gap:1.5rem}.footer-inner p{font-size:.8rem;color:var(--muted);margin:0}.motion-item{opacity:1;transform:none}.motion-item.animate-in{animation:reveal .75s cubic-bezier(.2,.8,.2,1) both}
.planner{display:block;text-align:center}.planner-copy{max-width:760px;margin:auto}.planner-copy .button{margin-top:1rem}.contact-dialog{width:min(900px,calc(100% - 28px));max-height:calc(100dvh - 28px);padding:0;border:0;border-radius:24px;background:var(--linen);color:var(--ink);box-shadow:0 30px 100px rgba(0,0,0,.22);overflow:auto}.contact-dialog::backdrop{background:rgba(20,16,14,.62);backdrop-filter:blur(6px)}.dialog-shell{position:relative;padding:clamp(1.25rem,4vw,3rem)}.dialog-heading{padding-right:3rem}.dialog-heading h2{font:500 clamp(2.2rem,4vw,4rem)/1.05 var(--serif);margin:.2rem 0 2rem}.dialog-close{position:absolute;right:1.25rem;top:1.25rem;width:44px;height:44px;border:1px solid var(--line);border-radius:50%;background:#fff;color:var(--ink);font-size:1.8rem;line-height:1;cursor:pointer}.contact-dialog .planner-card{box-shadow:none;padding:0;background:transparent;border:0}.field textarea{display:block;width:100%;margin-top:.35rem;border:1px solid var(--line);border-radius:12px;padding:.9rem 1rem;background:#fff;color:var(--ink);resize:vertical}.honeypot{position:absolute!important;left:-9999px!important}.back-top{position:fixed;right:clamp(1rem,3vw,2rem);bottom:clamp(1rem,3vw,2rem);z-index:8;width:48px;height:48px;border:0;border-radius:50%;background:var(--terra);color:#fff;font-size:1.3rem;box-shadow:0 14px 35px var(--glow);cursor:pointer;opacity:0;visibility:hidden;transform:translateY(12px);transition:.25s}.back-top.visible{opacity:1;visibility:visible;transform:none}body.modal-open{overflow:hidden}
@keyframes reveal{from{opacity:0;transform:translateY(24px)}to{opacity:1;transform:none}}@keyframes pulse{70%{box-shadow:0 0 0 8px rgba(60,171,99,0)}}@keyframes marquee{to{transform:translateX(-50%)}}
@media(max-width:860px){:root{--shell:min(100% - 32px,720px)}.header-inner{height:76px}.logo{width:144px;height:60px}.header-cta{display:none}.menu-toggle{display:grid;width:42px;height:42px;margin-left:auto;place-content:center;gap:6px}.menu-toggle span{display:block;width:22px;height:1px;background:var(--ink)}.site-header nav{display:none;position:absolute;top:76px;left:0;right:0;margin:0;padding:1.5rem;background:var(--linen);border-bottom:1px solid var(--line);flex-direction:column;align-items:center}.site-header nav.open{display:flex}.hero,.about,.why,.planner{grid-template-columns:1fr}.hero{min-height:auto;padding-top:4rem}.service-trigger{grid-template-columns:2.5rem 1fr 2.7rem;min-height:95px}.poetic{display:none}.service-panel{grid-template-columns:1fr;padding:0 0 3rem}.service-panel ul{columns:1}.timeline{padding-left:3.25rem}.timeline-rail{left:.7rem}.process-card{grid-template-columns:1fr;padding:1.5rem}.process-card:before{left:-3.25rem;top:2.2rem}.footer-inner{grid-template-columns:1fr;text-align:center;justify-items:center}.footer-inner nav{flex-wrap:wrap;justify-content:center}}
@media(max-width:520px){:root{--shell:calc(100% - 24px)}.hero h1{font-size:clamp(2.8rem,14vw,4.2rem)}.status-pill{font-size:.68rem}.actions{flex-direction:column}.service-trigger{gap:.5rem}.process-card.active{transform:none}.video-frame{border-radius:16px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.status-pill span,.marquee-track,.motion-item.animate-in{animation:none!important}.button,.toggle-icon,.process-card{transition:none!important}}
.logo,.footer-logo{display:block!important;line-height:0}.logo{width:174px!important;max-width:174px!important;height:auto!important}.footer-logo{width:190px!important;max-width:190px!important;height:auto!important}.logo img,.footer-logo img{display:block!important;width:100%!important;max-width:100%!important;height:auto!important;max-height:none!important;aspect-ratio:800/358!important;object-fit:contain!important}.footer-inner{grid-template-columns:190px 1fr auto!important}.footer-inner nav{justify-self:center}
@media(max-width:860px){.logo{width:144px!important;max-width:144px!important}.footer-inner{grid-template-columns:1fr!important}.footer-inner nav{justify-self:auto}}
