
:root{color-scheme:dark;--night:#17191a;--night2:#202223;--page-bg:#000000;--chalk:#f2f0e9;--soft:#c5c4bd;--faint:#878984;--ember:#ff795b;--gold:#ffd166;--rail:min(1320px,calc(100% - 72px))}
*{box-sizing:border-box}
html,body{margin:0;min-height:100%;background:var(--page-bg);color:var(--chalk)}
body{font:17px/1.55 "Trebuchet MS",Arial,sans-serif;letter-spacing:.005em}
body:before{content:"";position:fixed;inset:0;pointer-events:none;opacity:.15;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 440 440' xmlns='http://www.w3.org/2000/svg'%3E%3Cg fill='none' stroke='%23b6b7b1' stroke-opacity='.34' stroke-width='1'%3E%3Cpath d='M-30 114c53-35 104-35 157 0s104 35 157 0 104-35 157 0M-30 134c53-35 104-35 157 0s104 35 157 0 104-35 157 0M-30 154c53-35 104-35 157 0s104 35 157 0 104-35 157 0M-30 274c53-35 104-35 157 0s104 35 157 0 104-35 157 0M-30 294c53-35 104-35 157 0s104 35 157 0 104-35 157 0M-30 314c53-35 104-35 157 0s104 35 157 0 104-35 157 0'/%3E%3C/g%3E%3C/svg%3E");background-size:470px 470px;mask-image:linear-gradient(90deg,transparent 0%,#000 63%,#000 100%)}
a{color:inherit}
.shell{width:var(--rail);margin:auto;position:relative}
.topbar{height:84px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #f2f0e92b}
.brand{display:flex;gap:12px;align-items:center;text-decoration:none;font-weight:800;letter-spacing:.01em}
.brand-logo{width:37px;height:37px;display:block;flex:0 0 auto}
.brand small{display:block;color:#aaa9a2;text-transform:none;font-size:9px;letter-spacing:.01em;line-height:1.4}
.top-links{display:flex;gap:clamp(18px,3vw,44px);align-items:center}
.top-links a{font-size:13px;text-decoration:none;color:#d5d4ce}
.top-links a:hover,.top-links a:focus-visible{color:var(--gold)}
.top-contact{display:flex;gap:22px;align-items:center;font-weight:700;font-size:14px}
.top-contact a{text-decoration:none}
.top-contact .label{display:block;text-transform:uppercase;letter-spacing:.12em;font-size:9px;color:var(--gold);line-height:1.25}
.frontdesk{min-height:calc(100svh - 85px);display:grid;grid-template-columns:minmax(0,.9fr) minmax(490px,1.1fr);gap:clamp(50px,8vw,130px);align-items:center;padding:42px 0 58px}
.intro{max-width:560px;padding-bottom:30px}
.place{font-size:12px;color:var(--gold);letter-spacing:.1em;text-transform:uppercase;margin:0 0 20px}
h1{font:500 clamp(52px,6vw,88px)/.98 Georgia,"Times New Roman",serif;letter-spacing:-.055em;max-width:8.5ch;margin:0 0 24px}
h1 em{font-style:normal;color:var(--ember)}
.intro-copy{max-width:460px;color:#d3d1ca;font-size:18px;line-height:1.56;margin:0}
.contact-row{display:flex;flex-wrap:wrap;gap:14px 30px;margin-top:34px}
.contact-row a{text-decoration:none;border-bottom:1px solid var(--ember);padding-bottom:4px;font-weight:700;font-size:15px}
.contact-row a:hover,.contact-row a:focus-visible{color:var(--gold);border-color:var(--gold)}
.selector{position:relative;padding:10px 0 16px 34px;border-left:1px solid #f2f0e93a}
.selector-heading{display:flex;justify-content:space-between;align-items:baseline;margin-bottom:22px}
.selector-heading h2{font:500 24px/1.1 Georgia,"Times New Roman",serif;margin:0;letter-spacing:-.02em}
.selector-heading span{font:12px/1 "Trebuchet MS",Arial,sans-serif;color:var(--faint);letter-spacing:.08em}
.choices{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:7px;margin:0 0 32px}
.choice{position:relative;background:none;border:0;border-bottom:1px solid #f2f0e93a;padding:10px 4px 12px;color:#bab9b3;text-align:left;font:700 13px/1.25 "Trebuchet MS",Arial,sans-serif;cursor:pointer}
.choice:before{content:attr(data-number);display:block;color:#777a75;font-size:10px;letter-spacing:.14em;margin-bottom:8px}
.choice[aria-selected="true"]{color:var(--chalk);border-bottom:2px solid var(--ember)}
.choice[aria-selected="true"]:before{color:var(--gold)}
.choice:focus-visible{outline:2px solid var(--gold);outline-offset:4px}
.dispatch{min-height:0;display:block;position:relative}
.dispatch-symbol{width:100%;height:320px;display:block;overflow:visible;margin:0 0 8px;position:relative;z-index:0;pointer-events:none}
.dispatch-symbol svg{width:100%;height:100%;overflow:visible}
.dispatch-symbol[hidden],.dispatch-art[hidden]{display:none!important}
.dispatch-art{width:100%;height:320px;display:block;object-fit:contain;overflow:visible;margin:0 0 8px;position:relative;z-index:0;pointer-events:none}
.dispatch-symbol .room-line{fill:none;stroke:#f0eee6;stroke-width:2.2;stroke-linecap:round;stroke-linejoin:round;opacity:.82}
.dispatch-symbol .room-faint{fill:none;stroke:#f0eee6;stroke-width:1;stroke-linecap:round;opacity:.23}
.dispatch-symbol .door-light{fill:#ffd166;opacity:.16}
.dispatch-symbol .door{fill:#252729;stroke:#f0eee6;stroke-width:2}
.dispatch-symbol .door-edge{fill:none;stroke:var(--ember);stroke-width:3;stroke-linecap:round}
.dispatch-symbol .warm{fill:none;stroke:var(--gold);stroke-width:2;stroke-linecap:round}
.dispatch-symbol .spark{fill:var(--gold)}
.dispatch-copy{max-width:510px}
.dispatch-label{margin:0 0 9px;color:var(--ember);font-size:11px;font-weight:800;letter-spacing:.11em;text-transform:uppercase}
.dispatch h3{margin:0 0 15px;font:500 clamp(30px,3.3vw,45px)/1.04 Georgia,"Times New Roman",serif;letter-spacing:-.04em;max-width:15ch}
.dispatch .voice{color:#d4d2cb;margin:0 0 17px;max-width:46ch;font:italic 18px/1.45 Georgia,"Times New Roman",serif}
.dispatch .reply{margin:0;color:#adada7;max-width:50ch;font-size:15px;line-height:1.55}
.dispatch .reply strong{color:var(--chalk);font-weight:700}
.service-link{margin:16px 0 0;font-size:13px}
.service-link a{display:inline-flex;gap:10px;align-items:center;color:var(--soft);text-decoration-color:var(--ember);text-underline-offset:4px}
.service-link a:hover,.service-link a:focus-visible{color:var(--gold)}
.dispatch-copy{position:relative;z-index:1;max-width:500px;margin:0;padding:0;background:none}
.dispatch-label:before{content:"";display:inline-block;width:20px;height:1px;vertical-align:middle;margin:0 9px 3px 0;background:var(--ember)}
.next{position:relative;z-index:2;margin:22px 0 0;display:inline-flex;align-items:center;gap:14px;text-decoration:none;background:var(--chalk);color:var(--night);padding:12px 15px;font-size:14px;font-weight:800;transition:background .16s,color .16s}
.next:hover,.next:focus-visible{background:var(--gold);color:var(--night)}
.next span{font-size:18px;line-height:1}
@media(max-width:980px){:root{--rail:min(760px,calc(100% - 44px))}.frontdesk{grid-template-columns:1fr;gap:32px;padding-block:48px 62px}.intro{padding:0;max-width:650px}.intro h1{max-width:11ch}.selector{margin-bottom:34px}}
@media(max-width:620px){:root{--rail:calc(100% - 36px)}.topbar{height:auto;min-height:72px;gap:16px}.top-links{display:none}.top-contact{gap:14px;font-size:12px}.top-contact a:last-child{display:none}.frontdesk{min-height:calc(100svh - 72px);gap:22px;padding:33px 0 46px;align-content:center}.place{font-size:10px;margin-bottom:14px}.intro h1{font-size:clamp(45px,12vw,64px);max-width:9ch;margin-bottom:15px}.intro-copy{font-size:15px;max-width:40ch}.contact-row{margin-top:20px;gap:12px 22px}.contact-row a{font-size:13px}.selector{padding-left:16px;margin-bottom:10px}.selector-heading{margin-bottom:14px}.selector-heading h2{font-size:21px}.selector-heading span{font-size:10px}.choices{gap:4px;margin-bottom:22px}.choice{font-size:11px;padding:8px 2px 10px}.choice:before{font-size:9px;margin-bottom:7px}.dispatch-symbol,.dispatch-art{height:235px;margin:0 0 5px}.dispatch-label{font-size:9px;margin-bottom:6px}.dispatch h3{font-size:31px;margin-bottom:10px}.dispatch .voice{font-size:16px;margin-bottom:10px}.dispatch .reply{font-size:13px}.next{margin:16px 0 0;padding:10px 12px;font-size:12px}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;transition:none!important}}


/* Shared switchboard language for service and information pages. */
.topbar{position:sticky;top:0;z-index:30;background:rgba(0,0,0,.96);backdrop-filter:blur(10px)}
.top-links a[aria-current=page]{color:var(--gold)}
.email-short{display:none}
.interior-frontdesk{grid-template-columns:minmax(0,1.25fr) minmax(320px,.75fr);gap:clamp(36px,5vw,78px)}
.interior-intro{max-width:760px}
.interior-intro h1{max-width:none;font-size:clamp(44px,5.2vw,76px)}
.interior-intro .intro-copy{max-width:58ch}
.scene-note{align-self:center;min-width:0}
.scene-note figure{margin:0}
.scene-art{width:100%;height:300px;display:block;object-fit:contain;overflow:visible}
.interior-panel figure,.contact-panel figure{margin:0}
.scene-caption{max-width:480px;margin:4px 0 0 auto;color:var(--soft);text-align:right}
.scene-kicker{display:block;margin-bottom:9px;color:var(--ember);font:800 10px/1.4 "Trebuchet MS",Arial,sans-serif;letter-spacing:.11em;text-transform:uppercase}
.scene-caption h2{margin:0 0 8px;color:var(--chalk);font:500 clamp(25px,3vw,38px)/1.1 Georgia,"Times New Roman",serif;letter-spacing:-.025em}
.scene-caption p{margin:0;font:italic 16px/1.45 Georgia,"Times New Roman",serif}
.story,.notes,.closing{width:var(--rail);margin-inline:auto;position:relative}
.story,.notes{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(28px,5vw,72px);align-items:start;padding:60px 0 66px}
.story-heading{width:100%;max-width:none}
.story-heading .place,.notes-heading .place,.closing .place{margin-bottom:14px}
.story h2,.notes h2,.closing h2{font:500 clamp(32px,4.3vw,58px)/1.03 Georgia,"Times New Roman",serif;letter-spacing:-.045em;margin:0}
.story-copy,.notes-copy{max-width:62ch;color:#c5c4bd;font-size:16px;line-height:1.65}
.story-copy p,.notes-copy p{margin:0 0 20px}
.story-copy p:last-child,.notes-copy p:last-child{margin-bottom:0}
.story-copy .story-lede{color:var(--chalk);font:italic clamp(20px,2.5vw,27px)/1.45 Georgia,"Times New Roman",serif}
.story-copy blockquote{margin:16px 0;color:var(--chalk);font:italic 18px/1.55 Georgia,"Times New Roman",serif}
.notes-copy strong{color:var(--chalk);font-weight:700}
.notes-copy p{padding-left:0;text-indent:0}
.closing{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:24px 70px;align-items:end;padding:46px 0 78px}
.closing h2{max-width:16ch}
.closing-copy{max-width:48ch;color:#c5c4bd;margin:13px 0 0}
.closing .next{grid-column:2;grid-row:1 / span 3;margin:0 0 4px;white-space:nowrap}
.site-end{width:var(--rail);margin:0 auto;padding:20px 0 28px;border-top:1px solid #f2f0e92b;display:flex;justify-content:space-between;align-items:center;gap:22px;color:var(--soft);font-size:12px}
.site-end nav{display:flex;gap:18px;flex-wrap:wrap}
.site-end a{color:var(--soft);text-decoration-color:var(--ember);text-underline-offset:4px}
.footer-brand{display:flex;align-items:center;gap:10px;text-decoration:none!important}
.footer-logo{width:32px;height:32px;display:block;flex:0 0 auto}
.footer-brand small{display:block;margin-top:3px;color:var(--soft);font-size:10px;line-height:1.3}
.contact-frontdesk{min-height:calc(100svh - 85px);display:grid;grid-template-columns:minmax(0,.82fr) minmax(380px,1.18fr);gap:clamp(38px,7vw,100px);align-items:center;padding:38px 0 56px}
.contact-intro h1{max-width:10ch}
.contact-panel{padding-bottom:22px}
.contact-panel .scene-art{height:158px;margin:0 auto 6px}
.contact-panel .scene-caption{margin-bottom:20px;font-size:14px}
.contact-methods{display:flex;gap:14px 24px;flex-wrap:wrap;margin:0 0 20px;color:var(--soft);font-size:13px}
.contact-methods a{color:var(--chalk);text-decoration-color:var(--ember);text-underline-offset:4px}
.contact-panel form{padding:0;background:none;border:0;border-radius:0;box-shadow:none}
.contact-panel .field{margin:0 0 14px}
.contact-panel .field label,.contact-panel legend{display:block;margin:0 0 6px;color:var(--soft);font-size:12px;font-weight:700;letter-spacing:.03em}
.contact-panel input:not([type=radio]),.contact-panel textarea{width:100%;padding:10px 12px;border:1px solid #f2f0e955;border-radius:0;background:#202223;color:var(--chalk);font:15px/1.45 "Trebuchet MS",Arial,sans-serif;scroll-margin-top:120px}
.contact-panel textarea{resize:vertical;min-height:100px}
.contact-panel fieldset{display:flex;gap:18px;margin:0 0 14px;padding:0;border:0}
.contact-panel fieldset label{display:flex;align-items:center;gap:7px;color:var(--soft);font-size:13px}
.contact-panel input[type=radio]{accent-color:var(--ember)}
.contact-panel .form-note{color:var(--faint);font-size:12px;line-height:1.5}
.contact-panel .next{font:700 14px "Trebuchet MS",Arial,sans-serif;border:0;border-radius:0;appearance:none;cursor:pointer}
.contact-panel .next:disabled{opacity:.65;cursor:wait}
.contact-panel .form-status:not(:empty){margin:12px 0;color:var(--gold);font-size:13px}
a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible{outline:2px solid var(--gold);outline-offset:3px}
@media(max-width:1100px){.interior-frontdesk{grid-template-columns:1fr;gap:28px;padding-block:40px 56px}.interior-intro{max-width:760px}.interior-intro h1{max-width:14ch}.scene-note{max-width:760px;margin:0 auto}.story,.notes{grid-template-columns:1fr;gap:18px;padding:42px 0 48px}.contact-frontdesk{grid-template-columns:1fr;gap:28px;padding-block:38px 48px}.contact-intro h1{max-width:13ch}.contact-panel{max-width:680px}}
@media(max-width:980px){.topbar{height:auto;min-height:84px;display:grid;grid-template-columns:minmax(0,1fr) auto;grid-template-areas:"brand contact" "nav nav";gap:11px 14px;padding-block:12px}.brand{grid-area:brand}.top-contact{grid-area:contact;gap:14px;font-size:12px}.top-links{grid-area:nav;justify-content:space-between;gap:10px;padding-top:10px;border-top:1px solid #f2f0e91c}.top-links a{font-size:12px}}
@media(max-width:760px){.top-contact{gap:10px}.email-link .label,.email-link .email-full{display:none}.email-link .email-short{display:inline}}
@media(max-width:620px){.top-contact a:last-child{display:inline}}
@media(max-width:360px){.top-contact a:last-child{display:none}}
@media(max-width:620px){.topbar{display:grid;grid-template-columns:minmax(0,1fr) auto;grid-template-areas:"brand contact" "nav nav";gap:11px 14px;padding-block:10px}.brand{grid-area:brand}.top-contact{grid-area:contact}.top-links{grid-area:nav;display:flex;justify-content:space-between;gap:10px;padding-top:9px;border-top:1px solid #f2f0e91c}.top-links a{font-size:12px}.scene-art{height:235px}.scene-caption{text-align:left;margin:0}.story,.notes{padding-block:32px 38px}.story h2,.notes h2,.closing h2{font-size:clamp(31px,9vw,43px)}.story-copy,.notes-copy{font-size:15px}.closing{grid-template-columns:1fr;gap:14px;padding:35px 0 52px}.closing .next{grid-column:1;grid-row:auto;justify-self:start;white-space:normal}.site-end{align-items:flex-start;flex-direction:column}.site-end nav{gap:10px 16px}.contact-frontdesk{gap:22px}.contact-panel .scene-art{height:130px}}
