@import url("https://fonts.googleapis.com/css2?family=Cormorant+Garamond:wght@400;500;600&family=Manrope:wght@400;500;600;700;800&display=swap");:root{--ink:#363431;--forest:#363431;--cream:#f7f4ef;--paper:#fffdfa;--gold:#a88963;--gold-light:#d8c2a2;--mist:#e9e2d8;--muted:#6d6964;--line:rgba(54,52,49,.15);--font-serif:"Cormorant Garamond",Georgia,serif;--font-sans:Manrope,Arial,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--cream);color:var(--ink);font-family:var(--font-sans)}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button{cursor:pointer}.container{width:min(1180px,calc(100% - 48px));margin:0 auto}.eyebrow{color:var(--gold);font-size:.7rem;font-weight:800;letter-spacing:.18em;text-transform:uppercase}.section{padding:112px 0}.section-heading{max-width:780px;margin-bottom:55px}.section-heading h2{font-family:var(--font-serif);font-weight:500;font-size:clamp(3rem,6vw,5.3rem);line-height:.95;letter-spacing:-.045em;margin:12px 0 20px}.section-heading>p{color:var(--muted);line-height:1.8;font-size:1rem;max-width:520px}.button{display:inline-flex;align-items:center;justify-content:center;gap:12px;border:1px solid transparent;padding:15px 22px;font-size:.7rem;font-weight:800;letter-spacing:.1em;text-transform:uppercase;transition:.2s ease}.button:hover{transform:translateY(-2px)}.button-dark{background:var(--ink);color:white}.button-light{border-color:rgba(255,255,255,.65);color:white}.button-line{border-color:var(--line);color:var(--ink)}.arrow{font-size:1.15rem;line-height:0}.site-header{position:absolute;z-index:10;top:0;left:0;width:100%;color:white}.nav{height:96px;display:flex;align-items:center;justify-content:space-between;gap:26px}.brand{font-family:var(--font-serif);font-size:2.1rem;letter-spacing:-.05em;line-height:.85}.brand span{display:block;font-family:var(--font-sans);font-size:.5rem;letter-spacing:.22em;margin:8px 0 0 3px}.brand span,.nav-links{font-weight:800;text-transform:uppercase}.nav-links{display:flex;gap:26px;font-size:.67rem;letter-spacing:.1em}.nav-cta,.nav-links a{transition:opacity .2s ease}.nav-links a:hover{opacity:.7}.nav-cta{padding:12px 15px;font-size:.6rem}.menu-button{display:none;background:none;border:0;color:white;font-size:1.6rem}.hero{min-height:780px;position:relative;display:flex;align-items:center;color:white;overflow:hidden;background:linear-gradient(90deg,rgba(35,34,32,.97),rgba(35,34,32,.88) 45%,rgba(35,34,32,.48)),radial-gradient(circle at 75% 45%,rgba(168,137,99,.28),transparent 35%)}.hero:after{content:"";position:absolute;width:520px;height:520px;border:1px solid rgba(216,194,162,.25);border-radius:50%;right:7%;top:50%;transform:translateY(-50%)}.hero-grid{width:min(1180px,calc(100% - 48px));margin:0 auto;display:grid;grid-template-columns:1.05fr .95fr;align-items:center;grid-gap:60px;gap:60px;position:relative;z-index:2}.hero-copy{padding:150px 0 90px;max-width:700px}.hero h1{font-family:var(--font-serif);font-weight:500;font-size:clamp(4rem,8vw,7.2rem);line-height:.82;letter-spacing:-.055em;margin:18px 0 30px}.hero h1 em{color:var(--gold-light);font-style:italic}.hero-text{max-width:540px;color:rgba(255,255,255,.78);font-size:1rem;line-height:1.85;margin-bottom:34px}.hero-actions{display:flex;gap:12px;flex-wrap:wrap}.hero-visual{min-height:500px;display:flex;align-items:center;justify-content:center}.hero-card{width:340px;height:420px;border:1px solid rgba(216,194,162,.55);display:flex;flex-direction:column;justify-content:flex-end;padding:35px;background:linear-gradient(145deg,rgba(168,137,99,.16),rgba(255,255,255,.02));box-shadow:0 30px 80px rgba(0,0,0,.25)}.hero-card span{color:var(--gold-light);font-size:.65rem;font-weight:800;letter-spacing:.18em;text-transform:uppercase;margin-bottom:12px}.hero-card strong{font-family:var(--font-serif);font-weight:500;font-size:3.2rem;line-height:.9}.two-column{display:grid;grid-template-columns:.85fr 1.15fr;grid-gap:10vw;gap:10vw;align-items:start}.contact-grid h2,.location-grid h2,.method-grid h2,.two-column h2{font-family:var(--font-serif);font-weight:500;font-size:clamp(3rem,5.5vw,5rem);line-height:.93;letter-spacing:-.045em;margin:12px 0 25px}.section-copy{color:var(--muted);line-height:1.9;font-size:1rem}.section-copy p{margin:0 0 22px}.signature{color:var(--gold);font-family:var(--font-serif);font-size:1.65rem;font-style:italic;margin-top:35px!important}.section-soft{background:var(--mist)}.services-grid{display:grid;grid-template-columns:repeat(2,1fr);grid-gap:18px;gap:18px}.service-card{position:relative;min-height:300px;padding:35px;background:var(--paper);border:1px solid rgba(54,52,49,.08);display:flex;flex-direction:column;justify-content:flex-end;transition:.25s ease}.service-card:hover{transform:translateY(-5px);box-shadow:0 20px 50px rgba(54,52,49,.1)}.service-number{position:absolute;top:25px;right:25px;width:38px;height:38px;border:1px solid var(--gold);border-radius:50%;display:grid;place-items:center;color:var(--gold);font-size:.65rem;font-weight:800}.service-card h3{max-width:440px;font-family:var(--font-serif);font-size:2.4rem;font-weight:500;line-height:1;letter-spacing:-.035em;margin:0 0 15px}.service-card p{max-width:520px;color:var(--muted);line-height:1.7;font-size:.84rem;margin:0 0 20px}.service-card a{color:var(--gold);font-size:.68rem;font-weight:800;letter-spacing:.1em;text-transform:uppercase}.method-grid{display:grid;grid-template-columns:1fr 1fr;grid-gap:10vw;gap:10vw;align-items:center}.large-copy{max-width:560px;color:var(--muted);line-height:1.85;font-size:1rem;margin:0 0 30px}.method-list{border-top:1px solid var(--line)}.method-list>div{padding:25px 0;border-bottom:1px solid var(--line)}.method-list span{display:block;color:var(--gold);font-size:.65rem;font-weight:800;letter-spacing:.12em;margin-bottom:8px}.method-list strong{display:block;font-family:var(--font-serif);font-size:1.8rem;font-weight:500}.method-list p{color:var(--muted);font-size:.8rem;line-height:1.6;margin:6px 0 0}.team-grid{display:grid;grid-template-columns:repeat(3,1fr);grid-gap:24px;gap:24px}.team-card{background:var(--paper)}.team-placeholder{aspect-ratio:3/3.5;display:grid;place-items:center;background:radial-gradient(circle at center,rgba(168,137,99,.18),transparent 55%),#ded5c9}.team-placeholder span{font-family:var(--font-serif);font-size:7rem;color:rgba(54,52,49,.25)}.team-info{padding:22px 20px 25px}.team-info h3{font-family:var(--font-serif);font-size:2rem;font-weight:500;line-height:1;margin:0 0 8px}.team-info p{color:var(--gold);font-size:.68rem;font-weight:800;letter-spacing:.1em;text-transform:uppercase;margin:0}.location-section{background:var(--paper)}.location-grid{display:grid;grid-template-columns:1fr .75fr;grid-gap:10vw;gap:10vw;align-items:center}.location-card{padding:42px;background:var(--ink);color:white;box-shadow:0 25px 60px rgba(0,0,0,.12)}.location-card span{display:block;color:var(--gold-light);font-size:.65rem;font-weight:800;letter-spacing:.14em;text-transform:uppercase;margin-bottom:10px}.location-card strong{display:block;font-family:var(--font-serif);font-size:2.5rem;font-weight:500;line-height:1;margin-bottom:8px}.location-card p{color:rgba(255,255,255,.7);line-height:1.7;font-size:.85rem;margin:0 0 20px}.location-card hr{border:0;border-top:1px solid rgba(255,255,255,.15);margin:28px 0}.contact-section{background:var(--ink);color:white}.contact-grid{display:grid;grid-template-columns:.9fr 1.1fr;grid-gap:9vw;gap:9vw;align-items:start}.contact-grid .eyebrow{color:var(--gold-light)}.contact-grid .large-copy{color:rgba(255,255,255,.7)}.contact-details{margin-top:40px;display:grid;grid-gap:18px;gap:18px}.contact-details span{display:block;color:var(--gold-light);font-size:.62rem;font-weight:800;letter-spacing:.12em;text-transform:uppercase;margin-bottom:4px}.contact-details a,.contact-details strong{color:rgba(255,255,255,.82);font-size:.82rem}.lead-form{background:white;color:var(--ink);padding:35px}.lead-form h3{font-family:var(--font-serif);font-size:2.2rem;font-weight:500;margin:0 0 8px}.lead-form>p{color:var(--muted);font-size:.77rem;line-height:1.6;margin:0 0 22px}.form-grid{display:grid;grid-template-columns:1fr 1fr;grid-gap:14px;gap:14px}.field{display:flex;flex-direction:column;gap:7px;margin-bottom:14px}.field label{font-size:.62rem;font-weight:800;letter-spacing:.1em;text-transform:uppercase}.field input,.field select,.field textarea{border:0;border-bottom:1px solid var(--line);border-radius:0;padding:11px 0;background:transparent;color:var(--ink);outline:none}.field input:focus,.field select:focus,.field textarea:focus{border-bottom-color:var(--gold)}.field textarea{min-height:65px;resize:vertical}.field-full{grid-column:1/-1}.privacy-check{display:flex;align-items:flex-start;gap:9px;font-size:.68rem;line-height:1.5;color:var(--muted);margin:6px 0 16px}.privacy-check input{accent-color:var(--ink);margin:3px 0}.privacy-check a{text-decoration:underline}.form-status{font-size:.72rem;line-height:1.5;margin:10px 0 0}.form-status.error{color:#9e3027}.form-status.success{color:#31735a}.footer{background:#252422;color:white;padding:58px 0 20px}.footer-top{display:grid;grid-template-columns:1.6fr 1fr 1fr 1fr;grid-gap:32px;gap:32px;padding-bottom:55px}.footer .brand{margin-bottom:15px}.footer-text{font-size:.78rem;line-height:1.75;color:rgba(255,255,255,.62);max-width:300px}.footer h4{color:var(--gold-light);font-size:.65rem;letter-spacing:.14em;text-transform:uppercase;margin:4px 0 17px}.footer a{display:block;color:rgba(255,255,255,.66);font-size:.76rem;margin:10px 0}.footer a:hover{color:white}.footer-bottom{border-top:1px solid rgba(255,255,255,.15);padding-top:18px;display:flex;justify-content:space-between;gap:20px;color:rgba(255,255,255,.5);font-size:.65rem}.cookie{position:fixed;z-index:15;left:20px;bottom:20px;max-width:390px;background:var(--paper);box-shadow:0 12px 40px rgba(0,0,0,.2);padding:21px;color:var(--ink)}.cookie p{font-size:.72rem;line-height:1.6;margin:8px 0 14px;color:var(--muted)}.cookie-actions{display:flex;gap:9px}.cookie .button{padding:10px 12px;font-size:.58rem}.legal-page{min-height:100vh;padding:140px 0 80px}.legal-page h1{font-size:clamp(3.5rem,7vw,6rem);margin:16px 0 35px}.legal-copy{max-width:790px;color:#5f6662;line-height:1.85}.legal-copy h2{font-family:var(--font-serif);font-size:2.1rem;color:var(--ink);margin:42px 0 9px}.legal-copy a{color:var(--forest);text-decoration:underline}.legal-nav{padding:18px 0;border-bottom:1px solid var(--line);background:var(--paper)}.legal-nav .brand{color:var(--ink)}:focus-visible{outline:2px solid var(--gold);outline-offset:3px}@media (max-width:820px){.container{width:min(100% - 34px,1180px)}.nav{height:80px}.nav-cta,.nav-links{display:none}.menu-button{display:block}.mobile-menu{position:absolute;top:80px;left:17px;right:17px;background:white;color:var(--ink);padding:18px;box-shadow:0 20px 38px rgba(0,0,0,.18)}.mobile-menu a{display:block;padding:13px 3px;border-bottom:1px solid var(--line);font-size:.75rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.hero{min-height:760px}.hero-grid{grid-template-columns:1fr;gap:0}.hero-copy{padding:145px 0 35px}.hero h1{font-size:clamp(3.8rem,16vw,6rem)}.hero-visual{display:none}.hero:after{width:300px;height:300px;right:-90px;top:55%}.section{padding:76px 0}.contact-grid,.location-grid,.method-grid,.two-column{grid-template-columns:1fr;gap:45px}.services-grid,.team-grid{grid-template-columns:1fr;gap:16px}.service-card{min-height:280px}.team-placeholder{max-height:520px}.form-grid{grid-template-columns:1fr}.field-full{grid-column:auto}.footer-top{grid-template-columns:1fr 1fr}.footer-top>div:first-child{grid-column:1/-1}.footer-bottom{display:block;line-height:1.8}.footer-bottom span{display:block;margin-bottom:8px}.cookie{left:12px;right:12px;bottom:12px;max-width:none}.lead-form{padding:25px}}@media (max-width:520px){.hero h1{font-size:3.7rem}.hero-actions{flex-direction:column;align-items:stretch}.hero-actions .button{width:100%}.service-card h3{font-size:2.1rem}.location-card{padding:30px}.location-card strong{font-size:2.1rem}.footer-top{grid-template-columns:1fr}.footer-top>div:first-child{grid-column:auto}.cookie-actions{flex-direction:column}}