:root { color-scheme: dark; }
.utility-actions { display:flex; align-items:center; justify-content:flex-end; gap:8px; flex-shrink:0; }
.theme-toggle { display:inline-flex; align-items:center; justify-content:center; width:34px; height:34px; padding:6px; border:1px solid var(--accent); border-radius:3px; color:var(--accent); background:transparent; }
.theme-toggle:hover { background:#2b2117; }
.theme-toggle:focus-visible { outline:2px solid var(--accent); outline-offset:3px; }
.theme-toggle svg { width:20px; height:20px; }
/* Equal-height panels on the home page, without fixed heights on mobile. */
.homehero { align-items:stretch; }
.homehero > .home-hero-panel { align-self:stretch; }
.homehero > .event-sidebar { align-self:stretch; display:flex; flex-direction:column; }
.event-sidebar > .button { margin-top:auto; }
html[data-theme="light"] {
 color-scheme:light;
 --bg:#f6f4ef;
 --panel:#ffffff;
 --line:#d9d5cc;
 --muted:#595650;
 --white:#22211e;
 --accent:#ad4900;
}
html[data-theme="light"] body { background:var(--bg); color:var(--white); }
html[data-theme="light"] input,
html[data-theme="light"] select,
html[data-theme="light"] textarea { color-scheme:light; }
html[data-theme="light"] .band { background:#eeebe4; }
html[data-theme="light"] header .brand-image { background:url(/assets/petruci-original-full.png) no-repeat left center / contain; }
html[data-theme="light"] header .brand-badge,
html[data-theme="light"] header .brand-wordmark { visibility:hidden; }
html[data-theme="light"] header nav > a,
html[data-theme="light"] .nav-trigger,
html[data-theme="light"] header .mobilemenu { background:#fff5e9; color:var(--white); border-color:#c6ad92; }
html[data-theme="light"] .nav-submenu { background:var(--panel); border-color:#c6ad92; box-shadow:0 12px 28px #0002; }
html[data-theme="light"] header nav .nav-submenu a { color:var(--white); }
html[data-theme="light"] header nav > a:hover,
html[data-theme="light"] header nav > a[aria-current="page"],
html[data-theme="light"] .nav-trigger:hover,
html[data-theme="light"] .nav-trigger.is-current,
html[data-theme="light"] .nav-dropdown.is-open > .nav-trigger,
html[data-theme="light"] header nav .nav-submenu a:hover,
html[data-theme="light"] header nav .nav-submenu a[aria-current="page"] { background:var(--accent); color:#fff; border-color:var(--accent); }
html[data-theme="light"] a.button:not(.outline),
html[data-theme="light"] .primary,
html[data-theme="light"] .utility .utility-member,
html[data-theme="light"] .package-switch button[aria-selected="true"] { background:var(--accent); color:#fff; }
html[data-theme="light"] a.button:hover,
html[data-theme="light"] .primary:hover,
html[data-theme="light"] .utility .utility-member:hover { background:#873900; color:#fff; border-color:#873900; }
html[data-theme="light"] .utility .social-links a { color:var(--accent); }
html[data-theme="light"] .utility .social-links a:hover,
html[data-theme="light"] .theme-toggle:hover { background:#f3e7d9; color:#873900; }
html[data-theme="light"] .contactbox,
html[data-theme="light"] .training-contact,
html[data-theme="light"] .package-contact { background:#fff1df; border-color:#d9b997; }
html[data-theme="light"] .about-story p,
html[data-theme="light"] .news-article-text p { color:var(--muted); }
html[data-theme="light"] .about-story p:first-child { color:var(--white); }
/* Photographs retain their original colors and dark overlays. */
html[data-theme="light"] .hero-slide-copy,
html[data-theme="light"] .hero-slide h2,
html[data-theme="light"] .event-detail-heading,
html[data-theme="light"] .event-detail-heading h1,
html[data-theme="light"] .event-date-status { color:#fff; }
html[data-theme="light"] .hero-slide-copy .carousel-link,
html[data-theme="light"] .event-detail-heading .eyebrow { color:#ffad48; border-color:#ffad48; }
html[data-theme="light"] .carousel-controls > button { color:#fff; }
html[data-theme="light"] .photo-viewer { background:var(--panel); color:var(--white); }
html[data-theme="light"] .photo-viewer button { background:#eeebe4; color:var(--accent); border-color:var(--line); }
html[data-theme="light"] .photo-viewer button:hover { background:#f3e7d9; }
@media (max-width:760px) {
 .utility { gap:8px; }
 .utility-actions { gap:6px; }
 .utility .social-links { gap:2px; }
 .utility .social-links a { width:32px; height:36px; flex-basis:32px; }
 .theme-toggle { width:34px; height:36px; }
 html[data-theme="light"] .hero-slide .hero-slide-copy h2 { color:var(--white); }
 html[data-theme="light"] .hero-slide .hero-slide-copy p { color:var(--muted); }
 html[data-theme="light"] .hero-slide .hero-slide-copy .carousel-link { color:var(--accent); border-color:var(--accent); }
 html[data-theme="light"] .carousel-controls { background:var(--panel); }
 html[data-theme="light"] .carousel-controls > button { color:var(--white); }
 html[data-theme="light"] .carousel-dot:before { background:#716d65; }
 html[data-theme="light"] .carousel-dot[aria-pressed='true']:before { background:var(--accent); }
}
html[data-theme="light"] .button:focus-visible,
html[data-theme="light"] .primary:focus-visible { outline:3px solid var(--accent); outline-offset:4px; }
