.cbc-wordpress-page { margin: 0; background: #17222c; }
#cbc-app-root .cbc-app { top: var(--cbc-toolbar-height, 0px); height: calc(100dvh - var(--cbc-toolbar-height, 0px)); }
body.admin-bar #cbc-app-root { --cbc-toolbar-height: 32px; }
.cbc-wordpress-admin #cbc-app-root { --cbc-toolbar-height: 0px; position: relative; isolation: isolate; }
.cbc-wordpress-admin #cbc-app-root .cbc-app { position: relative; inset: auto; height: auto; min-height: 75dvh; overflow: visible; }
.cbc-wordpress-admin #cbc-app-root .cbc-admin { min-height: 70dvh; }
.cbc-wp-admin-links { display: flex; flex-wrap: wrap; gap: 8px; margin: 18px 0; }
.cbc-loading { padding: 32px; color: #e8d6b5; font: 600 18px system-ui, sans-serif; }
@media (max-width: 782px) { body.admin-bar #cbc-app-root { --cbc-toolbar-height: 46px; } .cbc-wordpress-admin #cbc-app-root { --cbc-toolbar-height: 0px; } }

/* Isolate inherited Astra/WP heading colors; keep original explicit CBC colors. */
#cbc-app-root .cbc-app{color:var(--cbc-text,#fff3df);background:radial-gradient(ellipse at 90% 8%,#67473565,transparent 44%),linear-gradient(155deg,#15252e,var(--cbc-bg,#142029) 52%,#252f32)}
#cbc-app-root .cbc-app :is(.cbc-eyebrow,.cbc-section-kicker){color:var(--cbc-accent,#ffbf78)}
#cbc-app-root .cbc-wrap{max-width:var(--cbc-content-width,1180px)}
#cbc-app-root .cbc-app .cbc-wrap{--cbc-section-spacing:var(--cbc-spacing,24px)}
#cbc-app-root .cbc-booking-form{max-width:960px;margin:0 auto 48px;padding:clamp(16px,3vw,32px);border:1px solid #ffd09538;border-radius:20px;background:#10232cbd;display:grid;gap:22px}
#cbc-app-root .cbc-booking-form fieldset{min-width:0;border:1px solid #ffd09538;border-radius:14px;padding:20px;display:grid;gap:16px}
#cbc-app-root .cbc-booking-form legend{font-weight:800;padding:0 8px;color:#ffbf78}
#cbc-app-root .cbc-booking-form .cbc-booking-check{display:flex;flex-direction:row;align-items:flex-start;gap:12px;line-height:1.6;flex-wrap:wrap}
#cbc-app-root .cbc-booking-check input{appearance:auto;width:20px;height:20px;flex-shrink:0;margin-top:3px}
#cbc-app-root .cbc-booking-check a,#cbc-app-root .cbc-booking-privacy a{text-decoration:underline;color:#ffcc92}
#cbc-app-root .cbc-booking-price,#cbc-app-root .cbc-booking-privacy{padding:18px;border-radius:12px;background:#ffffff08;line-height:1.7}
#cbc-app-root .cbc-booking-privacy summary{cursor:pointer;font-weight:800}
#cbc-app-root .cbc-booking-privacy p{margin-block:16px}
#cbc-app-root .cbc-booking-honey{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}
#cbc-app-root .cbc-booking-availability{display:flex;flex-wrap:wrap;gap:12px 24px;padding:20px;border:1px solid #ffbf7855;border-radius:14px;background:#ffbf7810}
#cbc-app-root .cbc-booking-availability strong{color:#ffcc92;font-size:22px}
#cbc-app-root .cbc-booking-availability small{width:100%;color:#c7cbca}

.cbc-rich-prose img{max-width:100%;height:auto}.cbc-rich-prose .alignleft{float:left;margin:0 1em 1em 0}.cbc-rich-prose .alignright{float:right;margin:0 0 1em 1em}.cbc-rich-prose .aligncenter{display:block;margin-inline:auto}.cbc-rich-prose::after{content:"";display:table;clear:both}.cbc-rich-prose table{max-width:100%;border-collapse:collapse}.cbc-rich-prose td,.cbc-rich-prose th{padding:.5em;border:1px solid currentColor}
#cbc-app-root .cbc-tree-menu{display:grid;gap:10px;margin:8px 0 16px}#cbc-app-root .cbc-menu-branch{border:1px solid #91b9bd44;border-radius:12px;overflow:hidden;background:#263e46}#cbc-app-root .cbc-menu-parent{display:flex;align-items:stretch}#cbc-app-root .cbc-menu-main-link,#cbc-app-root .cbc-menu-group-title{display:flex;justify-content:space-between;align-items:center;gap:14px;padding:16px;flex:1;min-width:0;min-height:52px;overflow-wrap:anywhere;color:#fff2df;font:inherit;font-size:16px;font-weight:600;line-height:1.4;text-align:left;text-decoration:none;background:transparent;border:0}#cbc-app-root .cbc-menu-expand{flex:0 0 52px;border:0;border-left:1px solid #91b9bd44;background:#ffffff09;color:#ffcf91;cursor:pointer;display:grid;place-items:center}#cbc-app-root .cbc-menu-group-title{width:100%;cursor:pointer}#cbc-app-root .cbc-menu-parent svg{flex-shrink:0}#cbc-app-root .cbc-tree-menu .is-open{transform:rotate(180deg)}#cbc-app-root .cbc-menu-children{padding:5px 12px 10px 22px;background:#132b3380;border-top:1px solid #91b9bd33}#cbc-app-root .cbc-menu-children[hidden]{display:none}#cbc-app-root .cbc-menu-child{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:13px 10px;color:#fff2df;text-decoration:none;border-bottom:1px solid #91b9bd22;min-height:46px}#cbc-app-root .cbc-menu-child:last-child{border:0}#cbc-app-root .cbc-tree-menu :is(a,button):focus-visible{outline:3px solid #ffcf91;outline-offset:-4px}#cbc-app-root .cbc-menu-children p{color:#c3d3d0;padding:10px;font-size:13px}
#cbc-app-root .cbc-station-hero{padding:34px 0 28px;max-width:920px}#cbc-app-root .cbc-station-hero h1{font-size:clamp(36px,6vw,70px);line-height:1.08;margin:18px 0;color:#ffe7c0}#cbc-app-root .cbc-station-hero p{max-width:760px;color:#d0d9d4;line-height:1.8;font-size:17px}#cbc-app-root .cbc-station-tabs{display:flex;flex-wrap:wrap;gap:14px;margin-top:30px}#cbc-app-root .cbc-station-tabs button{display:flex;flex-direction:column;gap:7px;text-align:left;border:1px solid #ffce9140;background:#ffffff06;color:#f6ead6;border-radius:16px;padding:20px 26px;cursor:pointer;font:700 18px system-ui;min-width:240px}#cbc-app-root .cbc-station-tabs button span{font-size:12px;font-weight:500;letter-spacing:1px;text-transform:uppercase;opacity:.75}#cbc-app-root .cbc-station-tabs button[aria-selected=true]{background:#ffd39c;color:#263b3c;box-shadow:0 8px 32px #f8b96615}#cbc-app-root .cbc-station-heading{display:flex;justify-content:space-between;align-items:center;gap:20px;margin:30px 0 20px}#cbc-app-root .cbc-station-heading h2{font-size:26px;margin:0}#cbc-app-root .cbc-station-heading>span{display:flex;align-items:center;gap:8px;color:#d9b88a;font-size:13px}#cbc-app-root .cbc-station-timeline{display:grid;gap:14px;position:relative;margin:0 0 42px;padding-left:24px;border-left:1px solid #e8b97855}#cbc-app-root .cbc-station-card{display:grid;grid-template-columns:120px 1fr 24px;align-items:center;gap:24px;position:relative;padding:24px 28px;border:1px solid #d4b48233;border-radius:18px;background:linear-gradient(115deg,#29444790,#1d3039d0);text-decoration:none;color:#fff0d9;transition:background .2s,border-color .2s}#cbc-app-root .cbc-station-card:before{content:'';position:absolute;left:-31px;top:calc(50% - 6px);width:11px;height:11px;border-radius:100%;background:#efbf81;box-shadow:0 0 0 5px #1b3037}#cbc-app-root .cbc-station-card:hover{border-color:#edc88c;background:#35534f}#cbc-app-root .cbc-station-year{font-size:42px;line-height:1;font-weight:800;letter-spacing:-2px;color:#ffd39c}#cbc-app-root .cbc-station-location{display:flex;align-items:center;gap:10px;font-size:17px;font-weight:650;line-height:1.5}#cbc-app-root .cbc-station-location svg{flex-shrink:0;color:#e0b786}#cbc-app-root .cbc-station-card small{display:block;margin-top:8px;color:#bfcfc8;font-size:12px}#cbc-app-root .cbc-station-card.is-cancelled{background:#ffffff04;border-style:dashed}#cbc-app-root .cbc-station-card.is-cancelled .cbc-station-year{color:#bbcac3}#cbc-app-root .cbc-station-card:focus-visible,#cbc-app-root .cbc-station-tabs button:focus-visible{outline:3px solid #ffcf91;outline-offset:4px}@media(max-width:620px){#cbc-app-root .cbc-station-card{grid-template-columns:68px 1fr 18px;gap:12px;padding:20px 14px}#cbc-app-root .cbc-station-year{font-size:32px}#cbc-app-root .cbc-station-location{font-size:14px}#cbc-app-root .cbc-station-tabs button{flex:1;min-width:210px}#cbc-app-root .cbc-station-heading{align-items:flex-start;flex-direction:column;gap:6px}}
