:root{
  --ink:#17130f;--deep:#211b16;--paper:#f9f5ed;--cream:#efe5d6;--gold:#b99150;--gold2:#d9be86;--muted:#766e63;
  --serif:"Cormorant Garamond",Georgia,serif;--sans:"Montserrat",Arial,sans-serif
}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--sans);line-height:1.65;overflow-x:hidden}
img{display:block;width:100%}a{text-decoration:none;color:inherit}.grain{pointer-events:none;position:fixed;inset:0;z-index:99;opacity:.04;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.85' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.55'/%3E%3C/svg%3E")}
.site-header{position:fixed;top:0;left:0;right:0;z-index:50;height:86px;padding:0 5vw;display:flex;align-items:center;justify-content:space-between;color:#fff;background:linear-gradient(to bottom,rgba(12,9,7,.78),rgba(12,9,7,.05));transition:.35s}
.site-header.scrolled{height:74px;background:rgba(18,14,11,.95);backdrop-filter:blur(16px);border-bottom:1px solid rgba(255,255,255,.08)}
.brand{display:flex;gap:12px;align-items:center}.brand-mark{width:49px;height:49px;border:1px solid var(--gold2);border-radius:50%;display:grid;place-items:center;color:var(--gold2);font:600 22px var(--serif)}
.brand-copy strong{display:block;font:600 19px var(--serif);letter-spacing:.25em}.brand-copy small{display:block;margin-top:-6px;color:var(--gold2);font:italic 17px var(--serif)}
.main-nav{display:flex;align-items:center;gap:30px;font-size:11px;text-transform:uppercase;letter-spacing:.14em}.main-nav a{opacity:.84;transition:.25s}.main-nav a:hover{opacity:1;color:var(--gold2)}.book-link{border:1px solid rgba(217,190,134,.75);padding:12px 17px}.menu-toggle{display:none;background:none;border:0;width:38px}.menu-toggle span{display:block;height:1px;background:#fff;margin:8px 0}
.hero{height:100svh;min-height:720px;position:relative;display:flex;align-items:flex-end;overflow:hidden}.hero-image{position:absolute;inset:0;height:100%;object-fit:cover;object-position:center 36%;transform:scale(1.02);animation:heroZoom 16s ease-out forwards}.hero-shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(8,6,5,.82),rgba(8,6,5,.47) 45%,rgba(8,6,5,.07) 78%),linear-gradient(0deg,rgba(8,6,5,.48),transparent 48%)}
@keyframes heroZoom{to{transform:scale(1.08)}}.hero-content{position:relative;z-index:2;color:#fff;max-width:980px;padding:0 7vw 11vh}.kicker{text-transform:uppercase;letter-spacing:.26em;font-size:10px;font-weight:600;color:var(--gold2)}.kicker.dark{color:var(--gold)}
h1,h2,h3{font-family:var(--serif);line-height:.98;margin:0}h1{font-size:clamp(66px,8.4vw,132px);font-weight:500;letter-spacing:-.035em}h1 em,h2 em{color:var(--gold2);font-weight:500}.hero-lead{max-width:660px;margin:26px 0 33px;font-size:17px;color:rgba(255,255,255,.82)}
.hero-actions,.contact-actions{display:flex;gap:12px;flex-wrap:wrap}.button{display:inline-flex;align-items:center;justify-content:center;padding:15px 23px;border:1px solid transparent;text-transform:uppercase;letter-spacing:.16em;font-size:10px;font-weight:600;transition:.25s}.button.gold{background:var(--gold);color:white}.button.gold:hover{background:#c19a58;transform:translateY(-2px)}.button.glass{border-color:rgba(255,255,255,.55);color:white;background:rgba(255,255,255,.04)}.button.glass:hover{background:rgba(255,255,255,.11)}
.scroll-cue{position:absolute;z-index:2;right:5vw;bottom:48px;color:rgba(255,255,255,.7);text-transform:uppercase;letter-spacing:.2em;font-size:9px;display:flex;align-items:center;gap:12px}.scroll-cue span{width:46px;height:1px;background:var(--gold2)}
.statement{padding:120px 8vw;text-align:center}.statement h2,.section-heading h2,.services h2,.investment h2,.about h2,.faq h2,.contact h2{font-size:clamp(50px,6.5vw,90px);font-weight:500;letter-spacing:-.025em}.statement>p:not(.kicker){max-width:800px;margin:28px auto;color:var(--muted);font-size:16px}.experience-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:#d9cfc1;margin-top:70px}.experience-grid article{background:var(--paper);padding:42px 35px;text-align:left}.experience-grid span{font:600 14px var(--serif);color:var(--gold)}.experience-grid h3{font-size:34px;margin:26px 0 13px}.experience-grid p{font-size:13px;color:var(--muted)}
.portfolio{padding:110px 5vw 125px;background:var(--deep);color:white}.section-heading{max-width:850px;margin-bottom:50px}.section-heading.light>p:not(.kicker){color:rgba(255,255,255,.65)}.section-heading>p:not(.kicker){max-width:650px;color:var(--muted)}
.masonry{display:grid;grid-template-columns:repeat(4,1fr);grid-auto-rows:300px;gap:12px}.masonry figure{margin:0;position:relative;overflow:hidden;background:#322a23}.masonry figure.tall{grid-row:span 2}.masonry figure.wide{grid-column:span 2}.masonry img{height:100%;object-fit:cover;transition:transform .8s cubic-bezier(.2,.7,.2,1),filter .8s}.masonry figure:hover img{transform:scale(1.045);filter:saturate(1.05)}.masonry figure:after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,rgba(10,7,5,.68),transparent 55%)}.masonry figcaption{position:absolute;z-index:2;left:22px;right:22px;bottom:19px}.masonry figcaption span{font:600 27px var(--serif)}.masonry figcaption small{display:block;color:rgba(255,255,255,.65);font-size:10px;text-transform:uppercase;letter-spacing:.14em}
.services{display:grid;grid-template-columns:1fr 1.1fr;gap:90px;padding:120px 8vw;background:var(--cream);align-items:start}.services-copy>p:not(.kicker){color:var(--muted);max-width:600px}.text-link{display:inline-block;margin-top:20px;color:var(--gold);border-bottom:1px solid var(--gold);padding-bottom:3px}.service-list{border-top:1px solid #cfc1ae}.service-list div{display:grid;grid-template-columns:55px 1fr;align-items:center;padding:24px 0;border-bottom:1px solid #cfc1ae}.service-list span{color:var(--gold);font-size:11px}.service-list h3{font-size:38px;font-weight:500}
.investment{padding:120px 6vw}.pricing-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin-top:62px}.price-card{position:relative;padding:36px 28px;background:white;border:1px solid #ddd3c6;min-height:470px;display:flex;flex-direction:column}.price-card.featured{background:var(--deep);color:white;border-color:var(--deep);transform:translateY(-16px);box-shadow:0 28px 60px rgba(43,31,20,.16)}.popular{position:absolute;left:0;right:0;top:0;transform:translateY(-100%);background:var(--gold);color:white;text-align:center;padding:7px;text-transform:uppercase;letter-spacing:.2em;font-size:9px}.package-name{text-transform:uppercase;letter-spacing:.2em;font-size:10px;color:var(--gold);font-weight:600}.price-card h3{font-size:58px;font-weight:500}.price-card ul{list-style:none;padding:0;margin:28px 0 35px;flex:1}.price-card li{padding:10px 0;border-bottom:1px solid #ebe4db;font-size:13px;color:var(--muted)}.price-card.featured li{border-color:rgba(255,255,255,.12);color:rgba(255,255,255,.7)}.price-card a{text-align:center;padding:13px;border:1px solid currentColor;text-transform:uppercase;letter-spacing:.16em;font-size:9px}.pricing-note{text-align:center;margin-top:28px;color:var(--muted);font-size:11px}
.about{display:grid;grid-template-columns:1fr 1fr;min-height:760px;background:#17130f;color:white}.about-portrait{overflow:hidden}.about-portrait img{height:100%;object-fit:cover;object-position:center top}.about-copy{padding:100px 8vw;display:flex;flex-direction:column;justify-content:center}.about-copy .intro-copy{font:italic 26px var(--serif);color:var(--gold2)}.about-copy>p:not(.kicker):not(.intro-copy){color:rgba(255,255,255,.68);max-width:610px}.about-copy .button{align-self:flex-start;margin-top:20px}
.faq{display:grid;grid-template-columns:.8fr 1.2fr;gap:90px;padding:120px 8vw}.faq-list{border-top:1px solid #d9cfc1}.faq details{border-bottom:1px solid #d9cfc1;padding:22px 0}.faq summary{cursor:pointer;font:600 25px var(--serif);list-style:none}.faq summary::-webkit-details-marker{display:none}.faq summary:after{content:"+";float:right;color:var(--gold)}.faq details[open] summary:after{content:"–"}.faq details p{color:var(--muted);font-size:13px;max-width:700px}
.contact{padding:130px 7vw;background:linear-gradient(rgba(20,15,11,.83),rgba(20,15,11,.9)),url('assets/senior_5.jpg') center/cover fixed;color:white;text-align:center}.contact-inner{max-width:900px;margin:auto}.contact-inner>p:not(.kicker){max-width:650px;margin:24px auto;color:rgba(255,255,255,.72)}.contact-actions{justify-content:center;margin:30px 0}.contact small{color:rgba(255,255,255,.5)}
footer{padding:42px 6vw;background:#0f0c0a;color:#d8d0c7;display:flex;align-items:center;justify-content:space-between;gap:24px;font-size:10px;text-transform:uppercase;letter-spacing:.12em}.footer-brand{text-transform:none;letter-spacing:normal}
.reveal{opacity:0;transform:translateY(24px);transition:opacity .8s ease,transform .8s ease}.reveal.visible{opacity:1;transform:none}
@media(max-width:1000px){.main-nav{display:none;position:absolute;top:74px;left:0;right:0;background:#17130f;padding:28px 5vw;flex-direction:column;align-items:flex-start}.main-nav.open{display:flex}.menu-toggle{display:block}.experience-grid{grid-template-columns:1fr}.masonry{grid-template-columns:repeat(2,1fr)}.services,.faq{grid-template-columns:1fr;gap:50px}.pricing-grid{grid-template-columns:1fr 1fr}.about{grid-template-columns:1fr}.about-portrait{height:700px}}
@media(max-width:620px){.site-header{height:74px}.brand-mark{width:43px;height:43px}.hero{min-height:690px}.hero-shade{background:linear-gradient(0deg,rgba(8,6,5,.82),rgba(8,6,5,.18) 72%)}.hero-content{padding:0 7vw 9vh}.scroll-cue{display:none}.statement,.portfolio,.services,.investment,.about-copy,.faq,.contact{padding:80px 6vw}.experience-grid{margin-top:45px}.masonry{grid-template-columns:1fr;grid-auto-rows:420px}.masonry figure.tall,.masonry figure.wide{grid-row:auto;grid-column:auto}.pricing-grid{grid-template-columns:1fr}.price-card.featured{transform:none;margin-top:18px}.about-portrait{height:520px}.service-list h3{font-size:31px}footer{flex-direction:column;text-align:center}}
