/* Shared brand treatment: bright orange remains the accent; small text uses rust or ink. */
:root{--orange-primary:#FF5A1F;--orange-support:#FF762E;--orange-deep:#A13C1B;--fg:#171717;--body:#5D5853;--bg-cream:#FFFDF8;--bg-warm:#FFF8EE;--bg-peach:#FFE0CD;--line:#F0C4AA}
.btn:not(.ghost):not(.dark),.btn:not(.ghost):not(.dark):hover{color:var(--fg)!important}
.btn:not(.ghost):not(.dark) svg,.btn:not(.ghost):not(.dark) svg path{color:var(--fg)!important;stroke:var(--fg)!important}
.btn:not(.ghost):not(.dark):active,.btn:not(.ghost):not(.dark):focus-visible{background:var(--orange-support)}
.btn.ghost:hover,.btn.ghost:hover svg,.btn.ghost:hover svg path{color:var(--orange-deep)!important;stroke:var(--orange-deep)!important}
.pcard figcaption .mono{color:var(--orange-deep)}
.hwb-fr .hwb-lk{background:var(--orange-deep);color:#fff}
.ad-orbit-copy{opacity:1}
.ad-orbit-badge{color:var(--fg)}
.orbit-booking{display:inline-flex;align-items:center;justify-content:center;gap:8px;width:100%;min-height:48px;padding:18px 16px;border:2px solid var(--fg);border-radius:999px;background:var(--bg-cream);color:var(--fg);font:700 clamp(12px,1.6vw,22px)/1.2 var(--f-display);text-transform:uppercase;text-align:center;transition:background-color .2s}
.orbit-booking:hover{background:var(--bg-peach)}
.orbit-booking svg{width:18px;height:18px;flex:none}
.ticket .tk-k,.ticket .tk-list li,.ticket .tk-get,.ticket .tk-site{color:var(--fg);opacity:1}
.ticket .tk-side{color:var(--fg);border-color:rgba(23,23,23,.35)}
.ticket .tk-list li{border-color:rgba(23,23,23,.3)}
.ticket .btn.dark,.ticket .btn.dark:hover{color:var(--orange-deep)!important}
.ticket .btn.dark svg,.ticket .btn.dark svg path{color:var(--orange-deep)!important;stroke:var(--orange-deep)!important}
.ticket .btn.ghost,.ticket .btn.ghost:hover{color:var(--fg)!important;border-color:var(--fg)!important}
.ticket .btn.ghost svg,.ticket .btn.ghost svg path{color:var(--fg)!important;stroke:var(--fg)!important}
.cta:not(.secondary){color:var(--fg)}
@media(max-width:600px){.orbit-booking{padding:12px 6px;gap:5px;font-size:11px}.orbit-booking svg{width:14px;height:14px}}
@media(prefers-reduced-motion:reduce){.orbit-booking{transition:none}}

/* Native hiding must win against component display layouts. */
[hidden]{display:none!important}

:root{--nav-accent:var(--orange-deep)}

.cta:not(.secondary):hover{background:var(--orange-support);color:var(--fg)}

/* Decorative service art should leave room for the service description on tablets. */
@media(min-width:601px) and (max-width:860px){.ap-art{aspect-ratio:auto;height:220px;min-height:220px;flex:none}}

.cur-ring.lbl{color:var(--fg)}
@media(prefers-reduced-motion:reduce){
 .hx-h1 .ln,.hx-photo,.hx-sticker,#ticket,.foot-name .l,.pcard{transform:none!important}
 .hx-sticker{scale:1!important;opacity:1!important}
 .cur{display:none!important}
}
