:root{--bg:#111817;--ink:#f7f5ec;--gold:#e4bb67;--muted:#b3bcb7;--line:#35413c}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:30px}body{margin:0;background:var(--bg);color:var(--ink);font:16px/1.6 Arial,sans-serif}a{color:inherit;text-decoration:none}a:focus-visible{outline:3px solid var(--gold);outline-offset:6px}header,main,footer{max-width:1280px;margin:auto}header{display:flex;align-items:center;justify-content:space-between;padding:28px 6%}.wordmark{font:italic 30px Georgia,serif;color:var(--gold);display:flex;align-items:center;gap:18px}.wordmark span{font:14px Arial,sans-serif;letter-spacing:2px;color:var(--ink)}nav{display:flex;gap:32px;font-size:14px}nav a:hover,.text-link:hover{color:var(--gold)}.hero{display:grid;grid-template-columns:1fr 1fr;padding:30px 6% 70px;gap:7%;align-items:center}.eyebrow{font-size:12px;font-weight:700;letter-spacing:2px;color:var(--gold);margin:0 0 22px}h1{font:clamp(75px,9vw,130px)/.95 Georgia,serif;letter-spacing:-5px;margin:0 0 32px}h1 em{font-weight:normal;color:var(--gold)}.intro{font-size:20px;line-height:1.5;color:var(--muted)}.actions{display:flex;align-items:center;gap:28px;margin-top:28px}.button{display:inline-block;padding:13px 25px;background:var(--gold);color:var(--bg);font-weight:700;border:1px solid var(--gold)}.button:hover{background:#f3cf88}.text-link{font-size:14px;border-bottom:1px solid var(--gold);padding-bottom:5px}.note{font-size:12px;letter-spacing:2px;margin-top:42px;color:var(--muted)}.portrait{position:relative}.portrait img{display:block;width:100%;height:560px;object-fit:cover;object-position:center;border:1px solid #586157}.photo-caption{position:absolute;bottom:20px;left:20px;background:var(--bg);padding:7px 12px;font-size:12px;letter-spacing:1.5px}.schedule{padding:64px 6%;background:#19221e}.section-top{display:flex;justify-content:space-between;align-items:center;gap:24px}.section-top .eyebrow{margin-bottom:12px}h2{font:clamp(32px,4vw,48px)/1.15 Georgia,serif;font-weight:normal;margin:0 0 20px}.schedule-note{font-size:14px;color:var(--muted);margin-bottom:32px}.show{display:grid;grid-template-columns:66px 1fr 150px 95px;gap:22px;align-items:center;padding:24px 0;border-top:1px solid var(--line)}.show:last-child{border-bottom:1px solid var(--line)}.show:hover{background:#233029}.show[hidden]{display:none}.show time{line-height:1.2;text-align:center}.show time span{font-size:12px;letter-spacing:2px;color:var(--gold)}.show time strong{display:block;font:36px Georgia,serif;margin-top:4px}h3{font-size:18px;line-height:1.4;font-weight:500;margin:0 0 5px}.venue p{margin:0;color:var(--muted);font-size:14px}.when{font-size:14px}.when small{display:block;font-size:12px;color:var(--muted)}.detail{font-size:12px;color:var(--gold);text-align:right}.about{display:grid;grid-template-columns:1fr 2fr;gap:40px;padding:90px 6%;border-bottom:1px solid var(--line)}.about p:not(.eyebrow){max-width:620px;color:var(--muted);font-size:18px;line-height:1.8;margin:25px 0}.booking{padding:80px 6%;background:var(--gold);color:#17201a}.booking .eyebrow{color:#344136}.booking h2{margin-bottom:30px}.email{font:clamp(20px,3vw,36px) Georgia,serif;overflow-wrap:anywhere;border-bottom:1px solid #17201a}.booking p{max-width:550px}.phone{display:inline-block;border-bottom:1px solid #17201a;font-size:16px}footer{padding:30px 6%;display:flex;justify-content:space-between;gap:22px;font-size:12px;color:var(--muted)}@media(max-width:750px){header{padding:22px 6%}.wordmark span{display:none}nav{gap:20px}.hero{gap:30px;padding-top:20px;grid-template-columns:1fr}.hero h1{font-size:86px}.intro{font-size:18px}.portrait img{height:430px}.hero-copy{padding-bottom:5px}.note{margin-top:25px}.section-top{display:block}.section-top .text-link{display:inline-block;margin-bottom:12px}.show{grid-template-columns:50px 1fr;gap:14px;padding:22px 0}.when{grid-column:2}.when small{display:inline;margin-left:8px}.detail{display:none}.show time{grid-row:1/3}.about{grid-template-columns:1fr;gap:10px;padding:60px 6%}.booking{padding:60px 6%}footer{flex-wrap:wrap}.schedule{padding:50px 6%}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
