/* Theme preview: white / black / red. Loaded after style.css. */
:root{--sun:#C8102E;--sun2:#C8102E;--cream:#ffffff;--brown:#111111;--teal:#C8102E;--muted:#555555}
body{background:#fff;color:#1a1a1a}
a{color:#C8102E}a:hover{color:#A50E25}
h2{color:#111;border-bottom-color:#C8102E}h3{color:#111}
header{background:#fff;color:#111;border-bottom:1px solid #e5e5e5}
nav a{color:#111}nav a:hover,nav a.on{color:#C8102E}
#menuBtn{border-color:#111;color:#111}
.btn{background:#C8102E;color:#fff}.btn:hover{background:#A50E25}.btn.alt{background:#fff;color:#111}
.card{box-shadow:0 2px 10px #0000001a;border:1px solid #eee}
.pill{background:#fff;border-color:#C8102E;color:#111}
.playlist li{background:#f7f7f7;border-left-color:#C8102E}
.small{color:#555}
.day h4{color:#C8102E}.truck{background:#C8102E;color:#fff}
.flag{background:#fff;border-left-color:#C8102E}
.hero .tagline strong{color:#fff;border-bottom:3px solid #C8102E;padding-bottom:.1rem}
.hero.photo .hero-inner{background:linear-gradient(180deg,#0003 0,#00000080 45%,#000000d9 100%)}
.ph-img{background:repeating-linear-gradient(45deg,#eee,#eee 12px,#f7f7f7 12px,#f7f7f7 24px);border-color:#999;color:#555}
footer{background:#111;color:#fff}footer a{color:#ff6b6b}
.gal-item{background:#eee}.req{color:#C8102E}
form input:focus,form select:focus,form textarea:focus,.btn:focus-visible{outline-color:#C8102E}

/* Typography preview: system font stacks (SF on Apple devices). No web fonts loaded. */
body,button,input,select,textarea,.btn,nav a{font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Helvetica,Arial,sans-serif}
h1,h2,h3,h4,.hero .tagline strong{font-family:-apple-system,BlinkMacSystemFont,"SF Pro Display","Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;font-weight:700}
h3,h4{font-weight:600}
h1,h2{letter-spacing:-0.02em;line-height:1.15}
h3{letter-spacing:-0.01em}

/* Mobile hero: let the hero grow with its text and keep breathing room above the heading. */
@media(max-width:600px){.hero.photo{height:auto;min-height:68vh;min-height:68svh}.hero.photo .hero-inner{padding-top:4.5rem}}

/* hero v2 (photo-forward): light tint over the photo, darker gradient only behind the text */
.hero.photo .sunrise{opacity:.4}
.hero.photo .hero-inner{background:none}
.hero.photo .hero-inner::before{content:"";position:absolute;inset:0;z-index:-1;pointer-events:none;background:radial-gradient(ellipse 62% 58% at 50% 52%,#000000c4 0,#000000a0 45%,#0000 82%)}
.hero.photo .hero-inner{isolation:isolate}
@media(max-width:600px){.hero.photo .hero-inner::before{background:radial-gradient(ellipse 95% 62% at 50% 50%,#000000c8 0,#000000a8 50%,#0000 92%)}}
.hero.photo img.hero-img{object-position:center 18%}
