@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Playfair+Display:ital,wght@0,400;0,500;1,400;1,500&display=swap');
:root{--black:#101113;--charcoal:#1b1c1f;--silver:#c9c9c9;--cream:#f4f2ee;--muted:#a8a8a8}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--cream);color:var(--black);font:16px/1.7 'DM Sans',sans-serif}a{color:inherit;text-decoration:none}button,input,textarea{font:inherit}.site-header{height:88px;background:var(--black);color:#fff;display:flex;align-items:center;justify-content:space-between;padding:0 clamp(20px,5vw,85px);position:relative;z-index:10;border-bottom:1px solid #373737}.brand{display:flex;align-items:center;gap:13px;font-weight:700;letter-spacing:.17em;line-height:1.2;font-size:17px;white-space:nowrap}.brand em{font-family:Georgia,serif;font-weight:400;color:var(--silver)}.brand small{display:block;font-size:9px;letter-spacing:.37em;text-align:center;color:var(--silver);margin-top:6px}.brand-mark{font-size:34px;font-weight:400;color:var(--silver)}nav{display:flex;align-items:center;gap:34px;font-size:12px;letter-spacing:.08em}nav a:hover,.text-link:hover{color:#a0a0a0}.nav-cta{border:1px solid #858585;padding:12px 20px}.menu-toggle{display:none;background:none;border:0;color:#fff;font-size:25px}.hero{min-height:660px;background:var(--black);color:#fff;display:grid;grid-template-columns:1.12fr .88fr;overflow:hidden}.hero-inner{padding:115px 5vw 80px max(5vw,calc((100vw - 1320px)/2));max-width:790px}.eyebrow{font-size:11px;letter-spacing:.26em;font-weight:700;color:#a7a7a7;margin:0 0 22px}.hero h1,h2{font-family:'Playfair Display',Georgia,serif;font-weight:400;letter-spacing:-.035em;line-height:1.13}.hero h1{font-size:clamp(52px,6vw,92px);margin:0 0 28px}.hero h1 em,h2 em{font-weight:400;color:#bfbfbf}.hero-copy{max-width:470px;color:#c6c6c6;font-size:17px}.actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:34px}.btn{display:inline-block;border:1px solid transparent;padding:15px 22px;font-size:12px;font-weight:700;letter-spacing:.06em;cursor:pointer;transition:transform .2s,background .2s}.btn:hover{transform:translateY(-2px)}.btn-light{background:#e4e3df;color:#101113}.btn-outline{border-color:#8b8b8b;color:white}.btn-dark{background:var(--black);color:white;margin-top:20px}.hero-foot{font-size:11px;letter-spacing:.09em;color:#929292;margin-top:65px}.hero-art{padding:45px 5vw 45px 0;display:flex}.photo-placeholder{width:100%;min-height:490px;border:1px solid #777;background:radial-gradient(ellipse at 40% 30%,#626367,#26272b 60%,#17181a);display:flex;align-items:center;justify-content:center;flex-direction:column;text-align:center;gap:9px;padding:20px;color:#eee}.photo-placeholder span{font-size:80px;color:#c6c6c6}.photo-placeholder strong{font:italic 27px 'Playfair Display',serif}.photo-placeholder small{color:#c5c5c5;font-size:11px}.section{padding:105px max(5vw,calc((100vw - 1320px)/2))}.intro{display:grid;grid-template-columns:1fr 1fr;gap:12%}.intro h2,.price-section h2,.contact-section h2{font-size:clamp(40px,4.5vw,65px);margin:0}.intro h2 em,.price-section h2 em{color:#7b7b7b}.intro-copy{padding-top:25px;color:#525252}.placeholder-note{font-size:13px;color:#8a8a8a;font-style:italic}.text-link{display:inline-block;margin-top:16px;border-bottom:1px solid #aaa;font-size:13px;font-weight:700}.services{background:#e8e7e3}.center-heading{text-align:center;max-width:630px;margin:0 auto 50px}.center-heading h2{font-size:clamp(40px,4.5vw,64px);margin:0 0 15px}.center-heading h2 em{color:#777}.center-heading>p:last-child{color:#666}.service-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:17px}.service-card{background:#f8f7f4;padding:34px 27px;min-height:250px;border:1px solid #dedbd6}.service-icon{font-size:30px;color:#8e8e8e}.service-card h3{font:25px 'Playfair Display',serif;margin:22px 0 10px}.service-card p{color:#666;font-size:13px;line-height:1.8}.section-disclaimer{text-align:center;font-size:11px;color:#777;margin:24px 0 0}.price-section{display:grid;grid-template-columns:1fr 1fr;gap:11%;align-items:center}.price-section>div:first-child>p:not(.eyebrow){color:#666;max-width:480px}.price-list{background:white;padding:32px 36px;box-shadow:0 15px 60px #00000008}.price-list>div{display:flex;justify-content:space-between;gap:15px;border-bottom:1px solid #e7e7e7;padding:16px 0;font-size:14px}.price-list strong{white-space:nowrap}.price-list small{display:block;color:#777;margin-top:18px;font-size:11px}.gallery-section{background:#dededa}.gallery-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.gallery-placeholder{height:320px;background:linear-gradient(145deg,#505155,#232427);color:#c6c6c6;display:flex;flex-direction:column;justify-content:center;align-items:center;letter-spacing:.22em;font-size:13px}.gallery-placeholder:nth-child(2){background:linear-gradient(145deg,#747578,#343538)}.gallery-placeholder small{font-size:10px;letter-spacing:0;margin-top:10px}.contact-section{background:var(--black);color:white;display:grid;grid-template-columns:1fr 1fr;gap:10%}.contact-section h2 em{color:#aaa}.contact-section>div>p:not(.eyebrow){color:#aaa;max-width:440px}.contact-methods{margin-top:40px}.contact-methods>a,.contact-methods>div{display:flex;gap:17px;align-items:center;padding:16px 0;border-bottom:1px solid #3d3d3d;font-size:22px;color:#d4d4d4}.contact-methods span{font-size:14px;font-weight:600;color:white}.contact-methods small{display:block;font-size:12px;color:#a5a5a5;font-weight:400}.contact-form{background:#27282a;padding:36px}.contact-form h3{font:30px 'Playfair Display',serif;margin:0 0 22px}.contact-form label{display:block;font-size:12px;margin-bottom:16px;color:#d8d8d8}.contact-form input:not([type=checkbox]),.contact-form textarea{display:block;width:100%;padding:11px 13px;margin-top:7px;background:#17181a;border:1px solid #555;color:white;outline-offset:3px;border-radius:0}.contact-form input:focus,.contact-form textarea:focus{border-color:white}.contact-form .consent{display:flex;gap:9px;align-items:flex-start}.contact-form .consent input{margin-top:5px}.submit-btn{width:100%}.form-note{font-size:11px;color:#aaa;margin-bottom:0}footer{background:#0a0b0c;color:#aaa;padding:48px 5vw;text-align:center;font-size:12px}footer .brand{justify-content:center;color:white;margin-bottom:18px}footer>a:last-child{text-decoration:underline}@media(max-width:1000px){.service-grid{grid-template-columns:repeat(2,1fr)}.hero{grid-template-columns:1fr 1fr}.hero-inner{padding-top:80px}.hero-art{padding:35px 25px 35px 0}}@media(max-width:720px){.site-header{height:75px}.menu-toggle{display:block}nav{display:none;position:absolute;top:75px;left:0;right:0;background:#191a1c;flex-direction:column;align-items:stretch;gap:0;padding:12px 25px 25px}nav.open{display:flex}nav a{padding:13px}.nav-cta{text-align:center}.hero{grid-template-columns:1fr}.hero-inner{padding:75px 7vw 40px}.hero h1{font-size:clamp(49px,12vw,76px)}.hero-foot{margin-top:38px}.hero-art{padding:0 7vw 55px}.photo-placeholder{min-height:280px}.section{padding:75px 7vw}.intro,.price-section,.contact-section{grid-template-columns:1fr;gap:30px}.service-grid,.gallery-grid{grid-template-columns:1fr 1fr}.gallery-placeholder{height:220px}}@media(max-width:450px){.brand{font-size:13px}.brand-mark{font-size:27px}.service-grid,.gallery-grid{grid-template-columns:1fr}.gallery-placeholder{height:230px}.contact-form{padding:25px}.actions .btn{width:100%;text-align:center}}

.hero-art {align-items:center;justify-content:center;}
.hero-logo {display:block;width:100%;max-width:520px;height:auto;aspect-ratio:1;border-radius:50%;box-shadow:0 0 0 1px #3a3a3a,0 25px 70px #00000080;}
