@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600&family=Playfair+Display:wght@500;600;700&family=Parisienne&display=swap');
:root{--black:#070707;--ink:#111;--white:#fff;--soft:#f5f5f3;--line:#d8d8d4;--muted:#666;--serif:'Playfair Display',Georgia,serif;--sans:'DM Sans',Arial,sans-serif;--script:'Parisienne',cursive}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--ink);background:var(--white);font-family:var(--sans);line-height:1.6}a{color:inherit;text-decoration:none}img{max-width:100%;display:block}.container{width:min(1160px,92%);margin:auto}.nav{height:82px;border-bottom:1px solid #e6e6e3;background:#fff;display:flex;align-items:center;justify-content:space-between;padding:0 4%;position:sticky;top:0;z-index:50}.brand{font-family:var(--serif);letter-spacing:.13em;font-size:18px}.brand span{display:block;font-family:var(--sans);font-size:9px;letter-spacing:.42em;text-align:center;margin-top:2px}.nav nav{display:flex;gap:28px;align-items:center;font-size:12px;text-transform:uppercase;letter-spacing:.12em}.nav nav a{transition:.2s}.nav nav a:hover{opacity:.55}.nav-cta{border:1px solid #111;padding:11px 16px}.menu{display:none;background:none;border:0;font-size:24px}.hero{min-height:calc(100vh - 82px);display:grid;grid-template-columns:1.02fr .98fr;background:var(--black);color:#fff}.hero-copy{padding:10vw 8vw;display:flex;flex-direction:column;justify-content:center}.eyebrow{font-size:10px;letter-spacing:.28em;text-transform:uppercase;margin:0 0 18px}.hero h1,.section-head h2,.about-copy h2,.contact h2{font-family:var(--serif);font-weight:500;line-height:1.03;font-size:clamp(48px,6vw,84px);margin:0}.hero h1 em,.section-head h2 em,.about-copy h2 em,.contact h2 em{font-family:var(--script);font-style:normal;font-weight:400}.lead{max-width:580px;color:#cfcfca;font-size:17px;margin:28px 0}.actions{display:flex;gap:12px;flex-wrap:wrap}.button{display:inline-flex;align-items:center;justify-content:center;padding:14px 22px;text-transform:uppercase;letter-spacing:.16em;font-size:11px;font-weight:600;border:1px solid #fff}.button.white{background:#fff;color:#111}.button.black{background:#111;color:#fff;border-color:#111}.button.outline{background:transparent;color:#fff}.micro{font-size:11px;letter-spacing:.1em;color:#aaa;margin-top:20px}.hero-photo{position:relative;min-height:600px;overflow:hidden}.hero-photo img{width:100%;height:100%;object-fit:cover;filter:grayscale(100%);opacity:.9}.photo-tag{position:absolute;bottom:32px;left:32px;border-left:2px solid #fff;padding-left:14px;font-family:var(--serif);font-size:14px;letter-spacing:.18em}.photo-tag span{font-family:var(--sans);font-size:9px;letter-spacing:.32em}.statement{padding:26px 4%;border-bottom:1px solid var(--line);text-align:center;font-family:var(--serif);letter-spacing:.2em;font-size:14px}.statement span{font-family:var(--script);font-size:26px;letter-spacing:0}.section{padding:105px 0}.section-head{max-width:780px;margin-bottom:55px}.section-head p:not(.eyebrow){color:var(--muted);max-width:650px}.service-grid{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid var(--line);border-left:1px solid var(--line)}.service-grid article{padding:30px;border-right:1px solid var(--line);border-bottom:1px solid var(--line)}.icon{font-family:var(--serif);font-size:13px;margin-bottom:42px}.service-grid h3,.steps h3{font-family:var(--serif);font-size:22px;font-weight:500;margin:0 0 10px}.service-grid p,.steps p{color:var(--muted);font-size:14px}.dark{background:var(--black);color:#fff}.light p:not(.eyebrow){color:#aaa}.pricing-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.price-card{background:#fff;color:#111;padding:38px;position:relative;border:1px solid #fff;min-height:520px;display:flex;flex-direction:column}.price-card.featured{background:#111;color:#fff;border:1px solid #777}.price-card .label{font-size:11px;letter-spacing:.24em}.price-card h3{font-family:var(--serif);font-size:62px;line-height:1;margin:25px 0 0}.price-card .from{font-size:9px;letter-spacing:.2em;color:#777}.featured .from{color:#aaa}.price-card ul{padding-left:18px;line-height:2;font-size:13px;flex:1}.price-card a{display:block;border-top:1px solid currentColor;padding-top:16px;font-size:10px;text-transform:uppercase;letter-spacing:.18em}.ribbon{position:absolute;top:0;right:0;background:#fff;color:#111;padding:8px 12px;font-size:9px;letter-spacing:.12em}.fineprint{color:#777;font-size:11px;margin-top:20px}.gallery{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.gallery figure{margin:0;overflow:hidden;background:#eee}.gallery img{width:100%;height:360px;object-fit:cover;filter:grayscale(100%);transition:.35s}.gallery img:hover{transform:scale(1.025)}.about{display:grid;grid-template-columns:1fr 1fr;background:var(--soft)}.about-photo{min-height:650px}.about-photo img{height:100%;width:100%;object-fit:cover;filter:grayscale(100%)}.about-copy{padding:10vw 8vw;display:flex;flex-direction:column;justify-content:center}.about-copy p{color:var(--muted);max-width:560px}.signature{font-family:var(--script);font-size:34px;margin-top:22px}.signature span{font-family:var(--serif);font-size:15px;letter-spacing:.15em}.steps{display:grid;grid-template-columns:repeat(4,1fr);gap:0;border-top:1px solid var(--line);border-left:1px solid var(--line)}.steps>div{padding:30px;border-right:1px solid var(--line);border-bottom:1px solid var(--line)}.steps b{font-family:var(--serif);font-weight:500}.contact{background:#f1f1ef;display:grid;grid-template-columns:.85fr 1.15fr;gap:50px;padding:105px 4%}.contact>div:first-child{padding-left:4vw}.contact-note{font-size:13px;border-left:2px solid #111;padding-left:15px}.contact-card{background:#fff;border:1px solid #ddd;padding:34px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}label{font-size:10px;text-transform:uppercase;letter-spacing:.13em;font-weight:600}input,select,textarea{display:block;width:100%;margin-top:7px;border:1px solid #cfcfcb;background:#fff;padding:13px 12px;font:14px var(--sans);color:#111}textarea{resize:vertical}.form-card form>label{display:block;margin-top:18px}.hidden-field{position:absolute!important;left:-10000px}.form-submit{margin-top:22px;background:#111;color:#fff;border-color:#111;width:100%;cursor:pointer}.form-small{font-size:10px;color:#777}.specials-banner{background:#111;color:#fff;padding:110px 4%;text-align:center}.specials-banner h1,.payment-hero h1{font-family:var(--serif);font-size:clamp(50px,7vw,90px);font-weight:500;line-height:1;margin:0}.specials-banner h1 em,.payment-hero h1 em{font-family:var(--script);font-style:normal}.specials-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.special{border:1px solid #222;padding:38px;min-height:430px}.special .price{font-family:var(--serif);font-size:46px}.special h2{font-family:var(--serif);font-weight:500}.special ul{color:#555;padding-left:18px}.payment-hero{background:#111;color:#fff;padding:95px 4%;text-align:center}.payment-section{padding:90px 0}.payment-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.pay-card{border:1px solid #222;padding:35px;min-height:390px;display:flex;flex-direction:column}.pay-card h2{font-family:var(--serif);font-size:30px;font-weight:500}.pay-card .amount{font-family:var(--serif);font-size:52px}.pay-card p{color:#666}.pay-card .button{margin-top:auto;background:#111;color:#fff;border-color:#111}.payment-note{margin:30px auto 0;max-width:760px;text-align:center;color:#666;font-size:12px}.thank{min-height:75vh;display:flex;align-items:center;justify-content:center;text-align:center;padding:60px}.thank-inner{max-width:700px}.thank h1{font-family:var(--serif);font-size:clamp(50px,7vw,86px);font-weight:500;line-height:1}.thank h1 em{font-family:var(--script);font-style:normal}.thank p{color:#666}.thank-actions{display:flex;justify-content:center;gap:12px;flex-wrap:wrap;margin-top:28px}footer{background:#070707;color:#fff;padding:40px 4%;display:flex;justify-content:space-between;gap:20px;align-items:center}footer strong{font-family:var(--serif);letter-spacing:.16em}footer span,footer p{font-size:9px;letter-spacing:.18em;color:#aaa}footer div span{display:block;margin-top:7px}
@media(max-width:900px){.nav nav{display:none}.menu{display:block}.hero{grid-template-columns:1fr}.hero-copy{padding:80px 7%}.hero-photo{min-height:520px}.service-grid,.steps{grid-template-columns:1fr 1fr}.pricing-grid,.specials-grid,.payment-grid{grid-template-columns:1fr}.gallery{grid-template-columns:1fr 1fr}.about,.contact{grid-template-columns:1fr}.about-photo{min-height:520px}.contact>div:first-child{padding-left:0}.contact{padding:80px 7%}}
@media(max-width:600px){.hero h1,.section-head h2,.about-copy h2,.contact h2{font-size:48px}.service-grid,.steps,.gallery,.form-grid{grid-template-columns:1fr}.gallery img{height:420px}.section{padding:75px 0}.price-card{min-height:auto}.specials-banner,.payment-hero{padding:75px 6%}footer{display:block;text-align:center}footer p{margin-top:20px}}
