:root{--ink:#20161e;--wine:#472a37;--rose:#c8a9a7;--cream:#f5eee7;--paper:#fbf8f3;--line:#d9ccc7;--muted:#75666d;--serif:Georgia,'Times New Roman',serif;--sans:'Helvetica Neue',Helvetica,Arial,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--sans);-webkit-font-smoothing:antialiased}body:has(dialog[open]){overflow:hidden}a{color:inherit;text-decoration:none}button,input{font:inherit}button{cursor:pointer}img{display:block;max-width:100%}.skip{position:absolute;left:1rem;top:-5rem;z-index:20;padding:.8rem 1rem;background:#fff}.skip:focus{top:1rem}:focus-visible{outline:2px solid var(--wine);outline-offset:4px}.site-header{height:82px;display:flex;align-items:center;justify-content:space-between;padding:0 clamp(20px,4vw,70px);background:var(--paper);position:relative;z-index:2}.wordmark{font-size:15px;font-weight:700;letter-spacing:.17em;white-space:nowrap}.wordmark span{font-weight:400}.wordmark i{color:#ab8a91;font-size:13px;font-style:normal;margin-left:7px}.site-header nav{display:flex;align-items:center;gap:clamp(18px,3vw,44px);font-size:12px;letter-spacing:.1em;text-transform:uppercase}.site-header nav a{transition:opacity .2s}.site-header nav a:hover{opacity:.56}.site-header nav .nav-contact{border-bottom:1px solid var(--ink);padding:8px 0}.nav-contact span{margin-left:9px}.hero{height:min(820px,calc(100svh - 82px));min-height:610px;position:relative;overflow:hidden;color:#fff;background:#34242d}.hero-photo{position:absolute;inset:0;background:linear-gradient(110deg,#3b2833,#6b5259 54%,#261a23);background-size:cover;background-position:center 42%}.hero-shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(15,11,16,.74) 0%,rgba(20,14,19,.42) 48%,rgba(20,14,19,.08) 100%),linear-gradient(0deg,rgba(18,12,16,.28),transparent 42%)}.hero-content{position:absolute;left:clamp(24px,8vw,130px);bottom:clamp(78px,12vh,145px);max-width:760px;z-index:1}.eyebrow,.section-number{font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.21em}.eyebrow.light{color:#f6e9e9;display:flex;align-items:center;gap:18px}.rule{width:34px;height:1px;background:currentColor;opacity:.6}.hero h1,.section h2,dialog h2{font-family:var(--serif);font-size:clamp(72px,10vw,160px);font-weight:400;line-height:.88;letter-spacing:-.065em;margin:24px 0}.hero h1 em,.section h2 em,dialog h2 em{font-weight:400}.hero-content>p:not(.eyebrow){font-family:var(--serif);font-size:clamp(19px,2vw,29px);line-height:1.4;max-width:455px;margin:0 0 36px;color:#f7efed}.hero-actions{display:flex;align-items:center;gap:32px}.button{display:inline-flex;align-items:center;justify-content:space-between;gap:35px;min-height:54px;padding:16px 22px;font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.13em;transition:transform .2s,background .2s,color .2s;border:1px solid transparent}.button:hover{transform:translateY(-3px)}.button.cream{background:var(--cream);color:var(--ink)}.button.dark{background:var(--ink);color:white}.button.outline{border-color:var(--ink);background:transparent}.text-link,.underlined{font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.13em;border-bottom:1px solid currentColor;padding:9px 0}.text-link span,.underlined span{margin-left:11px}.hero-index{position:absolute;left:clamp(24px,4vw,70px);bottom:32px;font-size:11px;letter-spacing:.18em}.vertical-note{position:absolute;right:30px;bottom:80px;writing-mode:vertical-rl;text-transform:uppercase;font-size:10px;letter-spacing:.24em}.section{padding:clamp(75px,10vw,155px) clamp(24px,8vw,130px)}.intro{display:grid;grid-template-columns:minmax(150px,1fr) minmax(0,2fr);gap:8vw;background:var(--cream);min-height:630px}.intro-side{display:flex;flex-direction:column;justify-content:space-between}.section-number{color:var(--muted)}.star-mark{font-family:var(--serif);font-size:90px;color:#c2a1a3}.intro-main{max-width:720px}.intro-main .eyebrow{color:var(--wine)}.intro h2{font-size:clamp(64px,7.4vw,122px);margin:30px 0 32px}.intro-copy{max-width:470px;font-family:var(--serif);font-size:clamp(20px,2vw,26px);line-height:1.52;color:#57474e;margin-bottom:35px}.gallery{background:var(--paper)}.gallery-heading{display:flex;align-items:end;justify-content:space-between;gap:24px;margin-bottom:45px}.gallery h2{font-size:clamp(64px,7.6vw,126px);margin:20px 0 0}.gallery-heading p{font-family:var(--serif);font-size:20px;color:var(--muted)}.gallery-grid{display:grid;grid-template-columns:1.2fr .82fr;gap:14px;align-items:stretch}.gallery-grid figure{margin:0;position:relative;overflow:hidden;background:#e5d7d3;min-height:420px}.gallery-grid figure:first-child{min-height:560px}.gallery-grid img{width:100%;height:100%;object-fit:cover;position:absolute;inset:0;transition:transform .5s}.gallery-grid figure:hover img{transform:scale(1.035)}.gallery-grid figcaption{position:absolute;left:18px;bottom:16px;color:white;font-size:10px;letter-spacing:.18em;text-transform:uppercase;text-shadow:0 1px 10px #000}.gallery-grid:empty{min-height:200px;border:1px solid var(--line);background:linear-gradient(120deg,#ddc9c8,#aa8992 45%,#3f2b38)}.gallery-grid:empty:after{content:'A few moments, coming soon';margin:auto;color:white;font-family:var(--serif);font-style:italic;font-size:27px}.contact{background:#e8d9d6}.contact-heading{max-width:790px;margin-bottom:55px}.contact h2{font-size:clamp(68px,8.2vw,135px);margin:25px 0 22px}.contact-heading p{font-family:var(--serif);font-size:clamp(19px,2vw,25px);line-height:1.4}.contact-card{background:var(--paper);padding:clamp(28px,4vw,60px);display:flex;align-items:end;justify-content:space-between;gap:30px}.contact-card h3{font-family:var(--serif);font-size:clamp(44px,5vw,76px);font-weight:400;letter-spacing:-.06em;margin:20px 0}.contact-card p:last-child{color:var(--muted);font-family:var(--serif);font-size:20px}.contact-actions{display:flex;gap:12px;flex-wrap:wrap}footer{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:36px clamp(24px,4vw,70px);background:var(--ink);color:var(--cream);font-size:11px;letter-spacing:.13em;text-transform:uppercase}footer .footer-brand{font-family:var(--serif);font-size:22px;text-transform:none;letter-spacing:-.03em}footer .footer-brand span{color:var(--rose);margin-left:6px}footer p{color:#c6b5b9}dialog{width:min(570px,calc(100% - 20px));max-height:min(90svh,820px);border:0;padding:clamp(24px,4vw,52px);background:var(--paper);color:var(--ink);box-shadow:0 24px 100px #0008;overflow:auto}dialog::backdrop{background:rgba(16,9,15,.72);backdrop-filter:blur(5px)}.dialog-top{display:flex;align-items:center;justify-content:space-between}.dialog-close{background:none;border:0;font-family:var(--serif);font-size:36px;line-height:1;padding:0 0 5px}dialog h2{font-size:clamp(54px,7vw,86px);margin:26px 0 16px}.form-intro,dialog #form-success p{font-family:var(--serif);font-size:18px;line-height:1.5;color:var(--muted);margin-bottom:28px}.field{margin:0 0 16px}.field label,fieldset legend{display:block;font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.13em;margin-bottom:9px}.field input{width:100%;height:47px;background:transparent;border:1px solid var(--line);border-radius:0;color:var(--ink);padding:10px 12px}.field input:focus{outline:1px solid var(--wine);border-color:var(--wine)}fieldset{border:0;padding:0;margin:0 0 18px}.radio-set{display:flex;gap:12px}.radio-set label{flex:1;border:1px solid var(--line);padding:12px;cursor:pointer;font-family:var(--serif);font-size:16px}.radio-set input{accent-color:var(--wine)}.two-fields{display:grid;grid-template-columns:1fr 1fr;gap:12px}.submit{width:100%;border:0;margin-top:5px}#form-status{min-height:20px;font-size:13px;color:#943b47}.honeypot{position:absolute!important;left:-9999px!important;opacity:0}.dialog-close:hover{opacity:.6}@media(max-width:850px){.site-header nav{gap:17px}.site-header nav a:not(.nav-contact){display:none}.hero{min-height:620px}.hero-photo{background-position:62% center}.hero-shade{background:linear-gradient(0deg,rgba(15,11,16,.85),rgba(15,11,16,.16) 75%)}.hero-content{left:24px;right:24px;bottom:86px}.intro{grid-template-columns:1fr;min-height:0}.intro-side{display:block}.star-mark{display:none}.gallery-grid{grid-template-columns:1fr 1fr}.gallery-grid figure{min-height:260px}.gallery-grid figure:first-child{min-height:535px}.contact-card{align-items:start;flex-direction:column}.gallery-heading{align-items:start;flex-direction:column}}@media(max-width:560px){.site-header{height:68px}.wordmark{font-size:12px}.nav-contact{font-size:10px}.hero{height:calc(100svh - 68px);min-height:560px}.hero h1{font-size:clamp(70px,18vw,105px)}.hero-content>p:not(.eyebrow){font-size:21px}.hero-actions{gap:15px;align-items:start;flex-direction:column}.vertical-note{display:none}.intro h2,.gallery h2,.contact h2{font-size:clamp(60px,14vw,86px)}.gallery-grid{grid-template-columns:1fr 1fr;gap:8px}.gallery-grid figure:first-child{min-height:410px}.gallery-grid figure{min-height:410px}.contact-actions,.contact-actions .button{width:100%}footer{flex-wrap:wrap}footer p{order:3;width:100%}.two-fields{grid-template-columns:1fr}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.button,.gallery-grid img{transition:none}.button:hover{transform:none}}

.hero-photo{left:46%;background-image:url('/assets/hero.webp');background-size:cover;background-position:center 19%}
@media(max-width:850px){.hero-photo{left:0;background-position:center 18%;opacity:.86}}

[hidden]{display:none!important}
