/* Cinema styling for original contact, booking, thank-you and journal markup. */
@import url('https://fonts.googleapis.com/css2?family=Archivo:wdth,wght@112,500;112,700;112,800&family=DM+Sans:wght@400;500;600&family=IBM+Plex+Mono:wght@400;500&display=swap');
:root { --cinema-bg:#0B0A09; --cinema-panel:#14110E; --cinema-ink:#F1EBDD; --cinema-muted:#C9C0AF; --cinema-accent:#E0A24A; }
html body,html.theme-inverted body { background:var(--cinema-bg)!important; color:var(--cinema-ink)!important; font-family:'DM Sans',sans-serif!important; }
html .font-sans { font-family:'DM Sans',sans-serif!important; }
html .font-display,html .hero-name { font-family:'Archivo',sans-serif!important; font-weight:700!important; font-style:normal!important; letter-spacing:-.02em!important; }
html h1.font-display { font-size:clamp(42px,7vw,100px)!important; line-height:1.05!important; }
html .ambient,html #themeToggle { display:none!important; }
html [class*="bg-neutral-950"],html footer { background:var(--cinema-bg)!important; }
html [class*="bg-neutral-900"],html .glass-card,html #mobileMenu,html .glass-input { background:var(--cinema-panel)!important; }
html .glass-nav { background:rgba(11,10,9,.96)!important; }
html [class*="text-cream"] { color:var(--cinema-ink)!important; }
html [class*="text-cream/"] { color:var(--cinema-muted)!important; }
html [class~="text-gold"] { color:var(--cinema-accent)!important; }
html [class*="border-white/"],html .glass-card,html .glass-input { border-color:rgba(241,235,221,.2)!important; border-radius:2px!important; }
html [class~="bg-gold"],html [class*="hover:bg-gold"]:hover { background:var(--cinema-accent)!important; color:var(--cinema-bg)!important; border-radius:2px!important; font-family:'IBM Plex Mono',monospace!important; min-height:44px; }
html [class~="bg-gold"] * { color:inherit!important; }
html .glass-input { color:var(--cinema-ink)!important; min-height:48px; color-scheme:dark; }
html .glass-input::placeholder { color:var(--cinema-muted)!important; }
html select option { background:var(--cinema-panel);color:var(--cinema-ink); }
html #menuBtn,html .menu-link,html .nav-link,html footer a { min-height:44px; }
html #mobileMenu { max-height:calc(100svh - 72px); overflow-y:auto; }
html .reveal,html .reveal-stagger > * { opacity:1!important; transform:none!important; }
html a:focus-visible,html button:focus-visible,html input:focus-visible,html select:focus-visible,html textarea:focus-visible { outline:2px solid var(--cinema-accent)!important;outline-offset:4px; }
html .fixed.bottom-0.inset-x-0 { background:var(--cinema-bg)!important; }
@media(prefers-reduced-motion:reduce) { html { scroll-behavior:auto!important; } html *,html *::before,html *::after { animation:none!important;transition:none!important; } }

html .glass-nav a[href="book"] { background:#E0A24A!important;color:#0B0A09!important;border:0!important;min-height:44px;display:inline-flex;align-items:center;padding:0 24px!important; }
html .glass-nav a,html .nav-link,html .menu-link { color:#F1EBDD!important;font-family:'IBM Plex Mono',monospace!important; }
html [class*="text-gold/"] { color:#C9C0AF!important; }
html .ripple,html .ripple-bg { display:none!important; }

html #themeToggle { display:none!important; }
html .glass-nav a[aria-label*="home"] { font-family:'Archivo',sans-serif!important;font-weight:800!important;font-size:17px!important;letter-spacing:.02em!important;text-transform:uppercase;white-space:nowrap; }
@media(max-width:1023px) { html .glass-nav a[href="book"] { display:none!important; } html #mobileMenu { position:fixed!important;inset:64px 0 0!important;max-height:none!important;min-height:calc(100svh - 64px); } html #mobileMenu a { display:flex;align-items:center;min-height:48px; } }

html { overflow-x:clip; } html body { width:100%;max-width:100%;overflow-x:clip; }

/* Consistent Cinema footer and compact task pages. */
/* ---------- footer ---------- */
.c-foot { border-top: 1px solid var(--line); padding: 40px 0 48px; }
.c-foot .c-wrap { display: flex; flex-wrap: wrap; justify-content: space-between; align-items: center; gap: 16px 32px; font-family: var(--mono); font-size: 12px; letter-spacing: .1em; text-transform: uppercase; color: var(--ink-3); }
.c-foot nav { display: flex; flex-wrap: wrap; gap: 4px 6px; }
.c-foot nav a { display: inline-flex; align-items: center; min-height: 44px; padding: 0 12px; color: var(--ink-2); }
.c-foot nav a:hover { color: var(--amber); }


html [hidden] { display:none!important; }
.c-foot .c-wrap { width:min(1240px,100% - 48px);margin-inline:auto; }
.c-foot { font-family:'IBM Plex Mono',monospace; }
html .c-foot nav a { color:#C9C0AF!important;text-decoration:none; }
html .hero-kicker,html .hero-name,html .hero-sub,html .hero-cta { animation:none!important;opacity:1!important;transform:none!important; }
html h1.font-display,html h1.hero-name { font-size:clamp(38px,5.5vw,80px)!important; }
html section#top { padding-top:120px!important;padding-bottom:48px!important; }
html section#booking { padding-top:48px!important;padding-bottom:64px!important; }
.c-contact-layout { width:min(1240px,100% - 48px);margin:48px auto 72px;display:grid;grid-template-columns:1.2fr .8fr;gap:64px;align-items:start; }
html .c-contact-layout > section { padding:0!important;border:0!important;min-width:0; }
html .c-contact-layout .max-w-7xl,html .c-contact-layout .max-w-2xl { width:100%;max-width:none;padding:0; }
html .c-contact-layout #contact .grid { display:grid;grid-template-columns:1fr;gap:12px;border:0;background:none; }
html .c-contact-layout #contact .glass-card { padding:20px;text-align:left; }
html .c-contact-layout #contact [data-site],html .c-contact-layout #contact [data-site-link] { font-size:22px!important;font-family:'DM Sans',sans-serif!important;line-height:1.4!important;overflow-wrap:anywhere; }
html .c-contact-layout #form .mb-12 { margin-bottom:24px;text-align:left; }
html .c-contact-layout #form h2 { font-size:clamp(28px,3vw,42px)!important; }
html .c-contact-layout #form .p-8 { padding:24px; }
html .c-contact-layout #form #topicHint { padding:24px 24px 0; }
html footer .c-wrap,html .c-foot .c-wrap { color:#C9C0AF; }
.c-booking-summary { display:grid;grid-template-columns:1fr auto;gap:8px 20px;padding:20px 0;border-block:1px solid rgba(241,235,221,.2); }
.c-booking-summary .c-mono { grid-column:1/-1;font:12px 'IBM Plex Mono',monospace;text-transform:uppercase;letter-spacing:.1em;color:#C9C0AF; }
.c-booking-summary strong { font-size:20px;grid-column:1; }
.c-booking-summary [data-summary-duration] { grid-column:1;color:#C9C0AF;font-size:14px; }
.c-booking-summary b { grid-column:2;grid-row:2/4;align-self:center;font-size:32px;color:#E0A24A; }
.c-date-note { margin-top:8px;color:#C9C0AF;font-size:13px; }
.c-form-status { border-left:2px solid #E0A24A;padding:12px 16px;color:#F1EBDD; }
html button:disabled { cursor:wait;opacity:.65; }
html .prose p { margin:0 0 1.25em; }
html .prose h2,html .prose h3 { margin:1.5em 0 .65em; }
html .prose ul,html .prose ol { padding-left:1.5em;margin:0 0 1.25em; }
html .prose li { margin-bottom:.4em; }
html .prose a { text-decoration:underline;text-underline-offset:3px; }
html .prose { max-width:68ch;font-size:18px;line-height:1.7; }
html a[class*="inline-block"][href="blog"],html #posts article a { min-height:44px;display:inline-flex;align-items:center; }
@media(max-width:960px) {
 .c-contact-layout { grid-template-columns:1fr;gap:40px;margin-top:28px; }
 html section#top { padding-top:112px!important;padding-bottom:32px!important; }
 html section#booking { padding-top:28px!important;padding-bottom:48px!important; }
 html #summary { font-family:'DM Sans',sans-serif!important;font-size:20px!important;line-height:1.5; }
}

.c-foot { --line:rgba(241,235,221,.16); --mono:"IBM Plex Mono",monospace; --ink-3:#C9C0AF; }

/* Cinema page titles for Contact and Book, matching the main page templates. */
html section#top.c-page { position:relative;padding:120px 0 48px!important;border-top:0;border-bottom:24px solid #000;background:radial-gradient(120% 140% at 85% 0,#221B14 0,#0B0A09 62%); }
.c-page > .c-wrap { width:min(1240px,100% - 48px);margin-inline:auto; }
.c-page .c-crumbs { margin:0 0 28px;font:400 12px/1.6 'IBM Plex Mono',monospace;letter-spacing:.12em;text-transform:uppercase;color:#C9C0AF; }
.c-page .c-crumbs a { color:#C9C0AF;text-decoration:none; }
.c-page .c-crumbs a:hover { color:#E0A24A; }
.c-page .c-crumbs span { margin:0 .7em; }
.c-page .eyebrow { margin:0 0 20px;font:400 12px/1.6 'IBM Plex Mono',monospace;letter-spacing:.14em;text-transform:uppercase;color:#E0A24A; }
html .c-page h1 { margin:0;font-family:'Archivo',sans-serif;font-size:clamp(40px,7vw,104px);font-weight:700;font-stretch:112%;letter-spacing:-.02em;line-height:.98;max-width:12em;text-wrap:balance; }
.c-page .lead { margin:28px 0 0;font-size:clamp(18px,1.6vw,21px);color:#C9C0AF;max-width:34em;line-height:1.55; }
@media(max-width:960px) { html section#top.c-page { padding-top:112px!important;padding-bottom:36px!important; } }
