@charset "UTF-8";
:root{--bg:#141312;--surface:#1c1a19;--white:#f9f6f2;--muted:#b4aaa4;--line:rgba(249,246,242,.2);--red:#a32430;--serif:Georgia,'Times New Roman',serif;--sans:Arial,Helvetica,sans-serif;scroll-behavior:smooth;scroll-padding-top:30px}
*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--white);font-family:var(--sans);font-size:16px;line-height:1.65;-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}button,a{-webkit-tap-highlight-color:transparent}a:focus-visible,video:focus-visible{outline:2px solid #ffbaba;outline-offset:7px}img{display:block;width:100%;height:auto}figure,p,h1,h2{margin:0}em{font-weight:400}::selection{background:#a32430;color:white}.skip-link{position:absolute;left:16px;top:-80px;background:white;color:#141312;padding:12px;z-index:20}.skip-link:focus{top:12px}.header{height:112px;max-width:1600px;margin:auto;padding:0 5.2%;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line)}.wordmark{font-family:var(--serif);font-size:36px;line-height:.95;letter-spacing:-1.5px;white-space:nowrap}.wordmark span{display:block;font:12px/1.5 var(--sans);letter-spacing:1.6px;margin-top:12px}.header nav{display:flex;align-items:center;gap:36px;font-size:14px}.nav-link{color:#d0c9c4}.nav-link:hover{color:white}.nav-book{padding-bottom:7px;border-bottom:1px solid var(--white)}.nav-book span{margin-left:22px;font-size:19px}.hero{max-width:1600px;margin:auto;display:grid;grid-template-columns:1.05fr 1fr;min-height:710px}.hero-copy{padding:66px 10% 26px;display:flex;flex-direction:column;align-items:flex-start}.eyebrow{font-size:12px;letter-spacing:2.1px;line-height:1.6}.hero .eyebrow{display:flex;align-items:center;gap:12px;color:#d8cec9}.short-line{width:26px;height:1px;background:#bc565e;display:inline-block;flex-shrink:0}h1{font-family:var(--serif);font-weight:400;font-size:clamp(48px,4.7vw,76px);letter-spacing:-2.4px;line-height:1.08;margin:38px 0 27px;max-width:590px}h1 em{color:#dd6f76}.hero-description{font-size:16px;line-height:1.8;color:#c8beb7}.button{display:inline-flex;align-items:center;justify-content:center;gap:22px;min-height:56px;padding:16px 24px;font-size:14px;font-weight:500;line-height:1.5;transition:background .2s,color .2s,transform .2s;text-align:center}.button-light{background:var(--white);color:#231816}.button-light:hover{background:#e8d5d1;transform:translateY(-2px)}.hero .button{margin-top:34px}.play-icon{font-size:12px}.hero-bottom{display:flex;justify-content:space-between;align-items:center;width:100%;border-top:1px solid var(--line);margin-top:auto;padding-top:28px;gap:20px;color:var(--muted);font:italic 17px var(--serif)}.hero-bottom a{font:24px var(--sans);padding:4px 8px}.hero-visual{position:relative;overflow:hidden;background:#331a17;min-height:710px}.hero-visual img{height:100%;position:absolute;inset:0;object-fit:cover;object-position:50% 40%}.hero-visual:after{content:"";position:absolute;inset:60% 0 0;background:linear-gradient(transparent,rgba(0,0,0,.5));pointer-events:none}.photo-caption{position:absolute;z-index:1;bottom:32px;left:28px;right:28px;display:flex;justify-content:space-between;gap:20px;color:#fff;font-size:12px;letter-spacing:1.3px}.occasion-strip{max-width:1600px;margin:auto;padding:28px 7%;display:flex;align-items:center;justify-content:center;gap:6%;border-top:1px solid var(--line);border-bottom:1px solid var(--line);font-size:14px;letter-spacing:1.4px;text-transform:uppercase;color:#d7cec9}.separator{font-size:17px;color:#bd5962}.section{max-width:1400px;margin:auto;padding:112px 6%}.performance{display:grid;grid-template-columns:1.2fr .8fr;gap:12%;align-items:center}.performance-copy>.eyebrow,.section-heading .eyebrow{color:#b58683;margin-bottom:28px}h2{font:400 clamp(36px,3.45vw,54px)/1.17 var(--serif);letter-spacing:-1.4px}h2 em{color:#d4bcb4}.body-copy{max-width:480px;margin-top:29px;font-size:18px;line-height:1.75}.body-copy.secondary{font-size:16px;color:var(--muted);margin-top:20px}.text-link{display:inline-flex;gap:28px;border-bottom:1px solid #78625c;padding:0 0 9px;margin-top:34px;font-size:14px}.text-link:hover{border-color:#f9f6f2}.signature{font:italic 20px var(--serif);color:#a88c83;margin-top:49px}.signature a{color:#e9dbd5;margin-left:5px}.performance-film{max-width:370px;width:100%;justify-self:end}.video-frame{background:#211d1b;position:relative}.video-frame video{display:block;width:100%;aspect-ratio:512/910;object-fit:cover}.performance-film figcaption{display:flex;justify-content:space-between;gap:16px;padding-top:15px;font-size:12px;letter-spacing:1px;color:#a99b93}.gallery{border-top:1px solid var(--line);padding-top:94px;padding-bottom:90px}.section-heading{display:flex;justify-content:space-between;align-items:flex-end;gap:40px;margin-bottom:50px}.section-heading>p{font-size:14px;color:var(--muted);text-align:right;line-height:1.9}.gallery-grid{display:grid;grid-template-columns:1.35fr .65fr;column-gap:28px;row-gap:34px}.gallery-grid img{object-fit:cover}.gallery-main img,.gallery-detail img{height:440px}.gallery-main img{object-position:52% 50%}.gallery-detail img{object-position:50% 35%}.gallery-guests{grid-column:1/-1}.gallery-guests img{aspect-ratio:2.2;object-position:50% 48%}.gallery-grid figcaption{font-size:14px;color:#b4a59d;padding-top:12px;line-height:1.6}.gallery-grid figcaption span{font-size:12px;margin-right:18px;color:#dd726f}.contact{background:var(--red);padding:44px 7% 68px;max-width:1600px;margin:auto;color:white}.contact-top{display:flex;justify-content:space-between;align-items:center;padding-bottom:38px;border-bottom:1px solid #ffffff40}.contact-star{font-size:36px;line-height:1}.contact-content{display:flex;justify-content:space-between;align-items:flex-end;gap:50px;padding-top:45px}.contact h2{font-size:clamp(38px,4.2vw,62px);color:white;line-height:1.14}.contact h2 em{color:white}.contact-action>p{font-size:16px;line-height:1.8;color:#ffdedf;margin-bottom:22px}.contact-action{flex-shrink:0}.instagram-handle{display:block;font-size:14px;margin-top:15px;color:#ffdedf}.footer{display:flex;align-items:center;justify-content:space-between;gap:25px;max-width:1600px;margin:auto;padding:46px 5.2%}.footer-wordmark{font-size:29px}.footer-wordmark span{font-size:12px;margin-top:9px}.footer p,.footer>a:last-child{font-size:14px;color:#afa49c}.footer>a:last-child span{margin-left:12px}
@media(min-width:1601px){.header,.hero,.occasion-strip,.contact{border-left:1px solid var(--line);border-right:1px solid var(--line)}}
@media(max-width:1050px){.header{padding:0 5%;height:96px}.header nav{gap:24px}.hero-copy{padding:48px 9% 25px}.hero,.hero-visual{min-height:650px}h1{font-size:56px;letter-spacing:-1.6px}.hero .eyebrow{letter-spacing:1px}.photo-caption{left:20px;right:20px;letter-spacing:.5px}.hero-bottom{margin-top:40px;font-size:16px}.performance{gap:8%;padding-top:80px;padding-bottom:80px}.section{padding-left:6%;padding-right:6%}.gallery-main img,.gallery-detail img{height:360px}.occasion-strip{gap:4%;letter-spacing:.5px}.contact-content{gap:28px}.contact-action>p{font-size:14px}.contact h2{font-size:44px}.footer p{max-width:170px}}
@media(max-width:720px){.header{height:90px;padding:0 6%}.wordmark{font-size:30px}.wordmark span{font-size:12px;letter-spacing:.8px;margin-top:9px}.header .nav-link{display:none}.header nav{gap:0}.nav-book{font-size:14px;padding-bottom:5px}.nav-book span{margin-left:8px;font-size:15px}.hero{grid-template-columns:1fr;min-height:auto}.hero-copy{padding:39px 7% 31px}.hero .eyebrow{letter-spacing:1px}h1{font-size:clamp(45px,9.8vw,66px);line-height:1.1;letter-spacing:-1.8px;margin:27px 0 23px;max-width:560px}.hero-description{font-size:16px}.hero .button{margin-top:26px;min-height:52px}.hero-bottom{display:none}.hero-visual{min-height:0;aspect-ratio:1.05}.hero-visual img{object-position:50% 35%}.photo-caption{bottom:21px;left:7%;right:7%;letter-spacing:.5px}.occasion-strip{padding:23px 5%;gap:16px;flex-wrap:wrap;letter-spacing:.2px;line-height:1.8}.occasion-strip .separator{font-size:12px}.section{padding:65px 7%}.performance{grid-template-columns:1fr;gap:38px}.performance-copy>.eyebrow,.section-heading .eyebrow{letter-spacing:1.2px;margin-bottom:21px}h2{font-size:39px;letter-spacing:-1.2px}.body-copy{font-size:18px;margin-top:23px}.body-copy.secondary{font-size:16px;line-height:1.8}.text-link{font-size:14px;margin-top:27px}.signature{margin-top:29px;font-size:19px}.performance-film{justify-self:center;max-width:340px;width:100%}.performance-film figcaption{letter-spacing:.3px}.gallery{padding-top:58px;padding-bottom:56px}.section-heading{display:block;margin-bottom:30px}.section-heading>p{text-align:left;margin-top:18px;font-size:14px}.section-heading>p br{display:none}.gallery-grid{grid-template-columns:1fr;gap:28px}.gallery-main img{height:auto;aspect-ratio:1.2;object-position:50% 50%}.gallery-detail img{height:auto;max-height:490px;aspect-ratio:.85;object-position:50% 30%}.gallery-guests{grid-column:auto}.gallery-guests img{aspect-ratio:1.2;object-position:52% 50%}.contact{padding:31px 7% 43px}.contact-top{padding-bottom:22px;gap:15px}.contact-top .eyebrow{letter-spacing:.8px}.contact-star{font-size:25px}.contact-content{display:block;padding-top:29px}.contact h2{font-size:42px;letter-spacing:-1.3px}.contact-action{margin-top:29px}.contact-action>p{font-size:16px}.contact .button{font-size:14px;gap:28px}.footer{padding:35px 7%;flex-wrap:wrap;gap:26px}.footer p{display:none}.footer-wordmark{font-size:28px}}
@media(max-width:370px){.header{padding:0 5%}.wordmark{font-size:26px}.nav-book{font-size:13px}.hero-copy{padding-left:6%;padding-right:6%}h1{font-size:43px}.occasion-strip{gap:11px}.occasion-strip .separator{display:none}h2{font-size:35px}.contact h2{font-size:37px}.contact .button{padding-left:18px;padding-right:18px}}
@media(prefers-reduced-motion:reduce){:root{scroll-behavior:auto}.button{transition:none}.button-light:hover{transform:none}}
.contact-email{display:block;width:fit-content;max-width:100%;margin-top:16px;font-size:16px;overflow-wrap:anywhere;text-decoration:underline;text-underline-offset:4px}.contact-email:hover,.instagram-handle:hover{color:var(--white)}
.gallery-evening{grid-column:1/-1;display:grid;grid-template-columns:1fr 1fr;gap:28px}.gallery-evening img{aspect-ratio:2/3;object-fit:cover}.gallery-crystal-wide img{object-position:50% 40%}
@media(max-width:720px){.gallery-evening{grid-template-columns:1fr;gap:28px}.gallery-evening img{aspect-ratio:2/3}.gallery-crystal-wide img{aspect-ratio:1.2;object-position:50% 40%}}
