/* Rotary Revival visual layer. Intentionally presentation-only. */
:root {
  --rr-ink: #07090b;
  --rr-carbon: #12171b;
  --rr-panel: #181e22;
  --rr-cyan: #00d9f5;
  --rr-amber: #ffc400;
  --rr-white: #ffffff;
  --rr-muted: #aeb8be;
}

html { scroll-behavior: smooth; }
body {
  background: var(--rr-ink);
  color: var(--rr-white);
  -webkit-font-smoothing: antialiased;
}

/* Global type: retain Eveny's bundled fonts; change attitude, not dependencies. */
h1,h2,h3,h4,h5,h6,.wp-block-post-title {
  font-family: var(--wp--preset--font-family--clash-display), Impact, sans-serif;
  font-weight: 800;
  letter-spacing: -0.035em;
  line-height: .92;
}
h1,.has-colossal-font-size { text-transform: uppercase; }
p,li { line-height: 1.65; }
a { text-underline-offset: .18em; }
::selection { background: var(--rr-cyan); color: var(--rr-ink); }

/* Header */
.site-header {
  background: rgba(7,9,11,.94) !important;
  border-bottom: 1px solid rgba(255,255,255,.13);
  backdrop-filter: blur(12px);
}
.site-header .wp-block-navigation-item__content {
  color: var(--rr-white) !important;
  font-family: var(--wp--preset--font-family--ibm-plex-mono), monospace;
  font-size: .78rem;
  font-weight: 700;
  letter-spacing: .08em;
  text-transform: uppercase;
}
.site-header .wp-block-navigation-item__content:hover { color: var(--rr-cyan) !important; }

/* Hero / covers */
.wp-block-cover { overflow: hidden; }
.wp-block-cover__background { background: linear-gradient(90deg,rgba(0,0,0,.78),rgba(0,0,0,.16)) !important; opacity: 1 !important; }
.wp-block-cover h1 {
  text-shadow: 0 4px 30px rgba(0,0,0,.42);
}

/* Buttons and strong calls to action */
.wp-block-button__link,
button,
input[type="submit"],
.woocommerce a.button,
.woocommerce button.button,
.tc_in_cart a,
.tc_event_date_title_front {
  border-radius: 0 !important;
}
.wp-block-button__link,
.woocommerce a.button,
.woocommerce button.button,
input[type="submit"] {
  background: var(--rr-cyan) !important;
  color: var(--rr-ink) !important;
  border: 2px solid var(--rr-cyan) !important;
  font-family: var(--wp--preset--font-family--ibm-plex-mono), monospace;
  font-weight: 800;
  letter-spacing: .06em;
  text-transform: uppercase;
  transition: transform .15s ease, background .15s ease, color .15s ease;
}
.wp-block-button__link:hover,
.woocommerce a.button:hover,
.woocommerce button.button:hover,
input[type="submit"]:hover {
  background: var(--rr-amber) !important;
  border-color: var(--rr-amber) !important;
  color: var(--rr-ink) !important;
  transform: translateY(-2px);
}

/* Dark sections/cards. Keep selectors generic so native Tickera blocks continue to render. */
.has-foreground-background-color { background-color: var(--rr-ink) !important; }
.has-accent-background-color { background-color: var(--rr-amber) !important; color: var(--rr-ink) !important; }
.wp-block-post-template > li,
.wp-block-query .wp-block-post,
.tc-event-box,
.tc_event_box {
  background: var(--rr-carbon);
  border: 1px solid rgba(255,255,255,.12);
}
.wp-block-post-featured-image img,
.wp-block-cover img { filter: saturate(.92) contrast(1.06); }

/* Tickera presentation only: never alter controls/behaviour. */
body.single-tc_events,
body.post-type-archive-tc_events { background: var(--rr-ink); }
body.single-tc_events .wp-block-post-title,
body.post-type-archive-tc_events .wp-block-query-title { text-transform: uppercase; }
[class*="tickera"] a:not(.wp-block-button__link),
[class*="tc_"] a:not(.wp-block-button__link) { color: var(--rr-cyan); }

/* Forms */
input,select,textarea {
  border-radius: 0 !important;
}
input:not([type="submit"]),select,textarea {
  background: #0e1215;
  color: var(--rr-white);
  border-color: rgba(255,255,255,.2);
}

/* Footer */
footer, footer .wp-block-group {
  background-color: var(--rr-ink);
}
footer { border-top: 1px solid rgba(255,255,255,.13); }

@media (max-width: 781px) {
  h1,.has-colossal-font-size { font-size: clamp(3.2rem,17vw,6rem) !important; }
  .site-header { backdrop-filter: none; }
}

/* v0.2 — Manus-inspired homepage hero, presentation only */
.rr-hero {
  position: relative;
  isolation: isolate;
  min-height: 720px;
  margin-top: 0 !important;
  overflow: hidden;
  border-bottom: 1px solid rgba(255,255,255,.10);
  background-image:
    linear-gradient(0deg, rgba(4,7,9,.98) 0%, rgba(4,7,9,0) 54%, rgba(4,7,9,.30) 100%),
    linear-gradient(90deg, rgba(4,7,9,.98) 0%, rgba(4,7,9,.89) 42%, rgba(4,7,9,.26) 76%, rgba(4,7,9,.58) 100%),
    url('../images/rotary-revival-hero.jpg');
  background-size: cover;
  background-position: 60% center;
}
.rr-hero::after { content:""; position:absolute; z-index:2; left:0; right:0; bottom:0; height:6px; background:linear-gradient(90deg,#16d7d1 0%,#16d7d1 66%,#ffbc48 100%); }
.rr-hero-inner { position:relative; z-index:3; min-height:720px; box-sizing:border-box; padding-top:clamp(4rem,8vw,7rem); padding-bottom:clamp(3rem,6vw,5rem); display:flex; flex-direction:column; justify-content:flex-end; align-items:flex-start; }
.rr-kicker,.rr-brap,.rr-title,.rr-hero-copy,.rr-next-event,.rr-hero-buttons { margin-left:0 !important; margin-right:auto !important; }
.rr-kicker { position:absolute; top:2rem; color:#16d7d1; font-size:.72rem; font-weight:900; letter-spacing:.22em; text-transform:uppercase; }
.rr-brap { margin-bottom:.35rem !important; color:#16d7d1; font-family:"Barlow Condensed","Arial Narrow",sans-serif; font-size:clamp(1.1rem,2vw,1.6rem); font-weight:800; letter-spacing:.18em; text-transform:uppercase; }
.rr-title { margin:0 !important; color:#fff; font-family:"Barlow Condensed","Arial Narrow",sans-serif; font-size:clamp(4.8rem,12vw,9.5rem) !important; font-weight:900 !important; line-height:.78 !important; letter-spacing:-.045em !important; text-transform:uppercase; }
.rr-title span { color:transparent; -webkit-text-stroke:1px rgba(255,255,255,.35); text-stroke:1px rgba(255,255,255,.35); }
.rr-hero-copy { max-width:620px; margin-top:1.5rem !important; color:rgba(255,255,255,.76); font-size:clamp(.95rem,1.5vw,1.15rem); line-height:1.65; }
.rr-next-event { max-width:760px; margin-top:1.75rem !important; padding:.85rem 1.15rem; border-top:1px solid rgba(255,255,255,.20); border-bottom:1px solid rgba(255,255,255,.20); background:rgba(0,0,0,.36); backdrop-filter:blur(5px); gap:1.6rem !important; }
.rr-next-label { margin:0 !important; color:#ffbc48; font-size:.65rem; font-weight:900; letter-spacing:.2em; text-transform:uppercase; }
.rr-next-city { margin:.1rem 0 0 !important; color:#fff; font-family:"Barlow Condensed","Arial Narrow",sans-serif; font-size:2rem !important; font-weight:900 !important; line-height:1; text-transform:uppercase; }
.rr-next-detail { margin:0 !important; color:rgba(255,255,255,.9); font-size:.8rem; }
.rr-hero-buttons { margin-top:1.4rem !important; gap:.7rem !important; }
.rr-btn .wp-block-button__link { border:0 !important; border-radius:0 !important; padding:.9rem 1.35rem !important; font-family:"Barlow Condensed","Arial Narrow",sans-serif; font-size:1.05rem; font-weight:900; letter-spacing:.03em; text-transform:uppercase; }
.rr-btn-enter .wp-block-button__link { background:#ffbc48 !important; color:#17100a !important; }
.rr-btn-ticket .wp-block-button__link { background:#16d7d1 !important; color:#071012 !important; }
@media(max-width:700px){.rr-hero,.rr-hero-inner{min-height:650px}.rr-hero{background-position:68% center}.rr-kicker{top:1.4rem}.rr-next-event{gap:.5rem !important}.rr-next-detail{width:100%}.rr-title{font-size:clamp(4rem,22vw,6.5rem)!important}}
.rr-site-header{padding-left:clamp(18px,2.4vw,42px)!important;padding-right:clamp(18px,2.4vw,42px)!important}.rr-header-logo{display:flex;width:180px;height:64px;align-items:center;overflow:visible;flex:0 0 auto;padding:5px 0}.rr-header-logo-image{display:block;max-width:100%;width:auto;height:54px;object-fit:contain;object-position:left center}.rr-site-header>.wp-block-group{margin-left:auto}@media(max-width:620px){.rr-header-logo{width:135px;height:58px}.rr-header-logo-image{height:48px}}
.rr-events-section{background:#111519;color:#fff;margin:0;padding:64px 0 82px}.rr-events-wrap{width:min(1500px,calc(100% - 64px));margin:0 auto}.rr-events-heading{margin-bottom:32px;border-bottom:1px solid rgba(255,255,255,.13);padding-bottom:18px}.rr-events-kicker{margin:0 0 6px;color:#20dbe4;text-transform:uppercase;letter-spacing:.16em;font-size:11px;font-weight:900}.rr-events-heading h2{margin:0;text-transform:uppercase;font-size:clamp(30px,3vw,52px);line-height:.95;letter-spacing:-.035em}.rr-events-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}.rr-event-card{background:#171c21;border:1px solid rgba(255,255,255,.09)}.rr-event-image{display:block;aspect-ratio:16/9;overflow:hidden;background:#22282e}.rr-event-image img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .3s ease}.rr-event-card:hover .rr-event-image img{transform:scale(1.025)}.rr-event-image-placeholder{display:block;width:100%;height:100%;background:linear-gradient(135deg,#172126,#26323a)}.rr-event-card-body{padding:24px}.rr-event-meta{color:#b7c0c6;font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.055em;line-height:1.5}.rr-event-date{color:#20dbe4}.rr-event-location{margin-top:3px}.rr-event-card h3{margin:16px 0 24px;font-size:clamp(22px,2vw,32px);line-height:1.02;text-transform:uppercase}.rr-event-card h3 a{color:#fff;text-decoration:none}.rr-event-more{display:inline-flex;gap:10px;background:#f5f15a;color:#0a0d0f!important;padding:12px 16px;font-size:12px;font-weight:900;text-transform:uppercase;text-decoration:none}.rr-event-more:hover{background:#20dbe4}.rr-events-empty{border:1px solid rgba(255,255,255,.12);padding:36px;display:flex;flex-direction:column;gap:8px;color:#c8d0d5}.rr-events-empty strong{color:#fff;text-transform:uppercase;font-size:24px}@media(max-width:900px){.rr-events-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.rr-events-wrap{width:min(100% - 36px,1500px)}}@media(max-width:620px){.rr-events-grid{grid-template-columns:1fr}.rr-events-section{padding:46px 0 58px}.rr-header-logo{width:145px}.rr-header-logo-image{transform:scale(.82);transform-origin:left center}}

/* v0.4.1 — presentation-only refinements */
/* Give desktop event cards more breathing room while retaining responsive stacking. */
.rr-events-grid {
  gap: clamp(32px, 3.25vw, 56px);
}

/* Tickera ticket table: improve contrast on the dark Rotary Revival event pages.
   Styling only — no Tickera markup, forms, quantities or cart behaviour is changed. */
.tc-event-table,
.tc-event-table th,
.tc-event-table td,
.tc-event-table a,
.tickera_table,
.tickera_table th,
.tickera_table td,
.tickera_table a,
table.event_tickets,
table.event_tickets th,
table.event_tickets td,
table.event_tickets a,
.tc_tickets_table,
.tc_tickets_table th,
.tc_tickets_table td,
.tc_tickets_table a {
  color: var(--rr-cyan) !important;
}

/* Common Tickera/WooCommerce Bridge ticket-table selectors used by Eveny. */
.tc_ticket,
.tc_ticket_type,
.tc_ticket_price,
.tc_ticket_cart,
.tc_event_date_title_front,
.tc_event_location_title_front,
.tc_event_date_front,
.tc_event_location_front {
  color: var(--rr-cyan) !important;
}

/* v0.4.4: WooCommerce/Tickera AJAX "View cart" link.
   Target the exact generated anchor with enough specificity to beat Eveny's global link styles. */
.rr-event-page .event_tickets.tickera a.added_to_cart.wc-forward,
.rr-event-page .tickera a.added_to_cart.wc-forward,
.rr-event-page a.added_to_cart.wc-forward {
  display: inline-block !important;
  margin: 12px 0 0 !important;
  padding: 10px 18px !important;
  color: #fff !important;
  background: transparent !important;
  border: 2px solid #fff !important;
  font-weight: 800 !important;
  line-height: 1.1 !important;
  text-decoration: none !important;
  text-transform: uppercase;
  width: auto !important;
  min-width: 0 !important;
}
.rr-event-page .event_tickets.tickera a.added_to_cart.wc-forward:hover,
.rr-event-page .tickera a.added_to_cart.wc-forward:hover,
.rr-event-page a.added_to_cart.wc-forward:hover {
  color: var(--rr-cyan) !important;
  border-color: var(--rr-cyan) !important;
  background: transparent !important;
}

@media (max-width: 900px) {
  .rr-events-grid { gap: 30px; }
}


/* v0.4.3 — contained Event header: details left, featured image right */
.rr-event-page { background: var(--rr-ink); color: var(--rr-white); }
.rr-event-hero {
  background: #111519;
  border-bottom: 5px solid var(--rr-cyan);
  padding: 48px 0;
}
.rr-event-hero-inner {
  width: min(1500px, calc(100% - 64px));
  margin: 0 auto;
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(360px, 46%);
  gap: clamp(36px, 5vw, 80px);
  align-items: center;
}
.rr-event-hero-copy { min-width: 0; }
.rr-event-hero-kicker {
  margin: 0 0 10px;
  color: var(--rr-cyan);
  font-size: 11px; font-weight: 900; letter-spacing: .18em; text-transform: uppercase;
}
.rr-event-hero h1 {
  margin: 0;
  color: #fff;
  font-family: "Barlow Condensed","Arial Narrow",sans-serif;
  font-size: clamp(3rem, 6vw, 6.5rem);
  font-weight: 900;
  line-height: .9;
  letter-spacing: -.035em;
  text-transform: uppercase;
}
.rr-event-hero-meta {
  display: flex; flex-wrap: wrap; gap: 10px 28px;
  margin-top: 28px; padding-top: 18px;
  border-top: 1px solid rgba(255,255,255,.24);
  color: #fff;
  font-family: var(--wp--preset--font-family--ibm-plex-mono), monospace;
  font-size: .82rem; font-weight: 700; letter-spacing: .04em; text-transform: uppercase;
}
.rr-event-hero-date { color: var(--rr-cyan); }
.rr-event-hero-image {
  width: 100%;
  display: flex;
  justify-content: flex-end;
  align-items: center;
}
.rr-event-hero-image img {
  display: block;
  width: auto;
  max-width: 100%;
  max-height: 520px;
  height: auto;
  object-fit: contain;
  object-position: center;
}
.rr-event-content { padding-top: 52px; padding-bottom: 80px; color: #fff; }
.rr-event-content p, .rr-event-content li, .rr-event-content h1, .rr-event-content h2,
.rr-event-content h3, .rr-event-content h4, .rr-event-content th, .rr-event-content td,
.rr-event-content label, .rr-event-content span:not(.amount) { color: #fff; }

/* Tickera ticket-table readability only; ticket/cart behaviour remains native Tickera. */
.rr-event-page .tc-event-table, .rr-event-page .tc-event-table *,
.rr-event-page .tickera_table, .rr-event-page .tickera_table *,
.rr-event-page table.event_tickets, .rr-event-page table.event_tickets *,
.rr-event-page .tc_tickets_table, .rr-event-page .tc_tickets_table *,
.rr-event-page .tc_ticket, .rr-event-page .tc_ticket_type,
.rr-event-page .tc_ticket_price, .rr-event-page .tc_ticket_cart,
.rr-event-page .tc_event_date_title_front, .rr-event-page .tc_event_location_title_front,
.rr-event-page .tc_event_date_front, .rr-event-page .tc_event_location_front { color:#fff !important; }

/* Tickera inserts a View Cart link after an AJAX add-to-cart. Keep it visible on the dark page. */
.rr-event-page a.added_to_cart,
.rr-event-page .added_to_cart,
.rr-event-page a.tc_view_cart,
.rr-event-page .tc_view_cart a,
.rr-event-page [class*="view_cart"] a,
.rr-event-page a[class*="view_cart"] {
  color: #fff !important;
  font-weight: 800;
  text-decoration: underline;
  text-underline-offset: 3px;
}
.rr-event-page a.added_to_cart:hover,
.rr-event-page a.tc_view_cart:hover,
.rr-event-page .tc_view_cart a:hover,
.rr-event-page [class*="view_cart"] a:hover,
.rr-event-page a[class*="view_cart"]:hover { color: var(--rr-cyan) !important; }

@media (max-width: 900px) {
  .rr-event-hero { padding: 38px 0; }
  .rr-event-hero-inner { grid-template-columns: 1fr; width: calc(100% - 36px); gap: 28px; }
  .rr-event-hero-image { justify-content: flex-start; }
  .rr-event-hero-image img { max-height: 520px; }
  .rr-event-content { padding-left: 18px; padding-right: 18px; padding-top: 38px; }
}
@media (max-width: 620px) {
  .rr-event-hero-meta { flex-direction: column; gap: 6px; }
  .rr-event-hero h1 { font-size: clamp(2.7rem, 15vw, 4.5rem); }
}


/* v0.5.0 — primary navigation, cart label and homepage content */
.rr-site-header{display:flex!important;align-items:center!important;padding:0 28px!important;gap:28px;z-index:1000}
.rr-header-logo{flex:0 0 auto}.rr-main-nav{display:flex;align-items:center;gap:clamp(18px,2.2vw,38px);margin-left:auto}
.rr-main-nav a{color:#fff!important;text-decoration:none!important;font-family:"Barlow Condensed","Arial Narrow",sans-serif;font-weight:800;font-size:14px;letter-spacing:.08em;text-transform:uppercase;white-space:nowrap}
.rr-main-nav a:hover{color:var(--rr-cyan)!important}.rr-header-actions{margin-left:10px!important;flex:0 0 auto}
.rr-header-actions .wc-block-mini-cart__amount:before{content:"CART  ";font-weight:900;letter-spacing:.08em;color:#fff}
.rr-header-actions .wc-block-mini-cart__amount{display:inline!important;visibility:visible!important;min-width:70px;color:#fff!important}
.rr-content-section,.rr-video-section,.rr-why-enter{border-bottom:1px solid rgba(255,255,255,.1)}
.rr-content-section{padding:90px 0;background:#080b0d}.rr-content-section:nth-of-type(even){background:#10171b}
.rr-content-wrap{width:min(1500px,calc(100% - 80px));margin:0 auto}.rr-split{display:grid;grid-template-columns:minmax(0,7fr) minmax(360px,5fr);gap:70px;align-items:center}
.rr-photo-mosaic{display:grid;grid-template-columns:1fr 1fr;gap:12px}.rr-photo-mosaic figure{margin:0;overflow:hidden;border:1px solid rgba(255,255,255,.1)}.rr-photo-mosaic .rr-photo-main{grid-row:span 2}.rr-photo-mosaic img{width:100%;height:100%;min-height:230px;object-fit:cover;display:block}
.rr-section-kicker{color:var(--rr-cyan)!important;font-size:11px!important;font-weight:900!important;letter-spacing:.22em!important;text-transform:uppercase;margin:0 0 14px!important}
.rr-section-copy h2,.rr-section-head h2,.rr-video-inner h2,.rr-partners h2,.rr-why-enter h2,.rr-page-intro h1{font-family:"Barlow Condensed","Arial Narrow",sans-serif;color:#fff!important;text-transform:uppercase;font-weight:900;line-height:.86;letter-spacing:-.025em;margin:0;font-size:clamp(3rem,5vw,5.8rem)}
.rr-section-copy h2 span,.rr-section-head h2 span{color:var(--rr-cyan)}.rr-section-copy>p:not(.rr-section-kicker):not(.rr-callout),.rr-section-head>p,.rr-partners p,.rr-why-enter p,.rr-video-inner p,.rr-page-intro p,.rr-page-copy p{color:rgba(255,255,255,.7)!important;line-height:1.7;font-size:16px}
.rr-callout{color:var(--rr-cyan)!important;font-family:"Barlow Condensed","Arial Narrow",sans-serif;font-size:25px!important;font-weight:800;text-transform:uppercase}
.rr-outline-button,.rr-cyan-button{display:inline-flex;margin-top:24px;padding:14px 20px;text-decoration:none!important;text-transform:uppercase;font-weight:900;font-size:13px;letter-spacing:.04em}.rr-outline-button{border:1px solid rgba(255,255,255,.35);color:#fff!important}.rr-outline-button:hover{border-color:var(--rr-cyan);color:var(--rr-cyan)!important}.rr-cyan-button{background:var(--rr-cyan);color:#071012!important}.rr-cyan-button:hover{background:#42f6f0;color:#071012!important}
.rr-section-head{display:flex;justify-content:space-between;align-items:end;gap:50px;margin-bottom:38px}.rr-section-head>p{max-width:470px}.rr-experience-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.rr-experience-grid article{background:#0b1013;border:1px solid rgba(255,255,255,.1);padding:28px;min-height:220px}.rr-experience-grid article>span{color:var(--rr-cyan);font-family:monospace;font-size:12px}.rr-experience-grid h3{color:#fff!important;font-family:"Barlow Condensed","Arial Narrow",sans-serif;text-transform:uppercase;font-size:30px;margin:35px 0 8px}.rr-experience-grid p{color:rgba(255,255,255,.58)!important;line-height:1.6}
.rr-video-section{position:relative;min-height:560px;display:flex;align-items:flex-end;overflow:hidden}.rr-video-bg,.rr-why-enter-bg{position:absolute;inset:0;background-size:cover;background-position:center}.rr-video-inner{position:relative;z-index:1;padding:90px 0;display:grid;grid-template-columns:1fr 1fr;align-items:end;gap:60px}.rr-video-inner h2{font-size:clamp(4.5rem,8vw,8rem)}.rr-video-card{justify-self:end;width:min(100%,480px);min-height:230px;border:1px solid rgba(255,255,255,.35);background:rgba(0,0,0,.35);padding:28px;display:flex;flex-direction:column;justify-content:flex-end;text-decoration:none!important}.rr-play{display:flex;width:58px;height:58px;border:1px solid var(--rr-cyan);border-radius:50%;align-items:center;justify-content:center;color:var(--rr-cyan);font-size:24px}.rr-video-card strong{margin-top:25px;color:#fff;font-family:"Barlow Condensed","Arial Narrow",sans-serif;text-transform:uppercase;font-size:28px}.rr-video-card small{color:var(--rr-cyan);text-transform:uppercase;font-weight:800;letter-spacing:.1em;margin-top:4px}
.rr-gallery-grid{display:grid;grid-template-columns:7fr 5fr;grid-template-rows:1fr 1fr;gap:14px}.rr-gallery-grid figure{margin:0;overflow:hidden;border:1px solid rgba(255,255,255,.1)}.rr-gallery-large{grid-row:span 2}.rr-gallery-grid img{display:block;width:100%;height:100%;min-height:260px;object-fit:cover}.rr-partners{background:#10171b}.rr-partners-inner{display:grid;grid-template-columns:1fr auto;align-items:center;gap:70px}.rr-partners-inner>div{max-width:850px}
.rr-why-enter{position:relative;padding:100px 0;overflow:hidden}.rr-why-enter .rr-content-wrap{position:relative;z-index:1}.rr-why-enter .rr-content-wrap>p:not(.rr-section-kicker){max-width:700px}.rr-page-shell{background:#080b0d;color:#fff;min-height:60vh;padding-bottom:90px}.rr-page-intro{width:min(1300px,calc(100% - 80px));margin:0 auto;padding:90px 0 50px}.rr-page-lead{max-width:900px;font-size:20px!important}.rr-page-copy{width:min(900px,calc(100% - 80px));margin:0 auto}.rr-page-copy h2{color:#fff;font-family:"Barlow Condensed","Arial Narrow",sans-serif;text-transform:uppercase;font-size:42px;margin-top:50px}.rr-full-gallery{width:min(1500px,calc(100% - 80px));margin:0 auto;display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.rr-full-gallery figure{margin:0}.rr-full-gallery img{width:100%;aspect-ratio:4/3;object-fit:cover;display:block}
@media(max-width:1050px){.rr-main-nav{gap:14px}.rr-main-nav a{font-size:12px}.rr-split{grid-template-columns:1fr}.rr-experience-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:780px){.rr-site-header{padding:0 14px!important;gap:10px}.rr-main-nav{display:none}.rr-content-wrap,.rr-page-intro,.rr-page-copy,.rr-full-gallery{width:min(100% - 36px,1500px)}.rr-content-section{padding:65px 0}.rr-section-head,.rr-partners-inner{display:block}.rr-section-head>p{margin-top:20px}.rr-experience-grid{grid-template-columns:1fr}.rr-video-inner{grid-template-columns:1fr;padding:65px 0}.rr-video-card{justify-self:stretch}.rr-gallery-grid{grid-template-columns:1fr;grid-template-rows:auto}.rr-gallery-large{grid-row:auto}.rr-full-gallery{grid-template-columns:1fr 1fr}.rr-header-actions .wc-block-mini-cart__amount:before{content:"CART ";font-size:10px}}

/* v0.5.1 — centred primary navigation, ticket CTA, video preview and clean content pages. */
@media(min-width:781px){
  .rr-site-header{position:relative!important;display:flex!important;align-items:center!important;justify-content:space-between!important}
  .rr-main-nav{position:absolute;left:50%;transform:translateX(-50%);margin:0!important;display:flex;align-items:center;justify-content:center;gap:clamp(22px,2.5vw,42px)}
  .rr-header-actions{margin-left:auto!important}
}
.rr-main-nav a,.rr-main-nav .rr-buy-tickets{font-family:inherit!important;font-size:var(--wp--preset--font-size--tiny,14px)!important;font-weight:700!important;letter-spacing:0!important;color:#fff!important;text-transform:uppercase;white-space:nowrap}
.rr-main-nav a:hover,.rr-main-nav .rr-buy-tickets:hover{color:#fff!important;opacity:.72}
.rr-buy-tickets{border:1px solid rgba(255,255,255,.38);padding:11px 18px;text-decoration:none!important}
.rr-video-preview{justify-self:end;width:min(100%,640px);aspect-ratio:16/9;border:1px solid rgba(255,255,255,.28);background:#000;box-shadow:0 18px 60px rgba(0,0,0,.35)}
.rr-video-preview iframe{display:block;width:100%;height:100%;border:0}
.rr-standard-page{background:#101416;min-height:65vh;border-top:1px solid rgba(255,255,255,.08)}
.rr-standard-page-inner{width:min(100% - 48px,1400px)!important;margin:0 auto!important;padding:90px 0 120px!important}
.rr-standard-page-inner>h1{font-family:"Barlow Condensed","Arial Narrow",sans-serif!important;font-size:clamp(4rem,8vw,8rem)!important;line-height:.88!important;text-transform:uppercase;color:#fff!important;margin:0 0 48px!important}
.rr-standard-page-inner .entry-content,.rr-standard-page-inner p,.rr-standard-page-inner li{color:rgba(255,255,255,.82)}
@media(max-width:780px){.rr-buy-tickets{border:0;padding:0}.rr-standard-page-inner{width:min(100% - 36px,1400px)!important;padding:60px 0 90px!important}}

/* v0.5.2 — clean Rotary Revival footer + simplified homepage hero */
.rr-footer { background:#080b0d; color:#fff; border-top:1px solid rgba(255,255,255,.12); }
.rr-footer-main { width:min(1500px,calc(100% - 80px)); margin:0 auto; padding:64px 0 58px; display:grid; grid-template-columns:minmax(0,1fr) minmax(340px,.65fr); gap:clamp(60px,10vw,180px); align-items:start; }
.rr-footer-brand { max-width:520px; }
.rr-footer-logo { display:inline-block; width:min(360px,100%); margin-bottom:24px; }
.rr-footer-logo img { display:block; width:100%; height:auto; }
.rr-footer-brand p { margin:0 0 22px; max-width:500px; color:rgba(255,255,255,.72); font-size:1rem; line-height:1.65; }
.rr-footer-brand strong,.rr-footer-ethos h3,.rr-footer-ethos-card strong { font-family:var(--wp--preset--font-family--heading,inherit); text-transform:uppercase; letter-spacing:.02em; }
.rr-footer-brand > strong { display:block; font-size:1.25rem; }
.rr-footer-ethos h3 { margin:0 0 16px; font-size:1.15rem; }
.rr-footer-ethos-card { padding:24px 26px; border:1px solid rgba(255,255,255,.18); border-radius:14px; background:rgba(255,255,255,.025); }
.rr-footer-ethos-card strong { display:block; margin-bottom:12px; }
.rr-footer-ethos-card p { margin:0; color:rgba(255,255,255,.72); line-height:1.5; }
.rr-footer-bottom { border-top:1px solid rgba(255,255,255,.12); padding:28px max(40px,calc((100% - 1500px)/2)); display:flex; justify-content:space-between; gap:24px; color:rgba(255,255,255,.58); font-size:.85rem; }
.rr-footer-bottom b { color:var(--rr-cyan,#16d7d1); }
.rr-hero-buttons { margin-top:1.8rem !important; }
.rr-hero-buttons .rr-btn-ticket .wp-block-button__link { min-width:160px; text-align:center; }
@media(max-width:800px){.rr-footer-main{width:calc(100% - 36px);grid-template-columns:1fr;gap:44px;padding:48px 0}.rr-footer-bottom{padding:24px 18px;flex-direction:column}.rr-footer-logo{width:min(310px,100%)}}


/* v0.5.3 — adaptive centred event layout.
   One event sits centred, two balance around centre, larger sets wrap naturally. */
.rr-events-grid {
  display: flex !important;
  flex-wrap: wrap;
  justify-content: center;
  align-items: stretch;
  gap: clamp(32px, 3.25vw, 56px);
}
.rr-events-grid > .rr-event-card {
  flex: 1 1 400px;
  width: 100%;
  max-width: 600px;
}
.rr-events-empty {
  max-width: 600px;
  margin-left: auto;
  margin-right: auto;
  text-align: center;
  align-items: center;
}
@media (max-width: 620px) {
  .rr-events-grid > .rr-event-card {
    flex-basis: 100%;
    max-width: 100%;
  }
}


/* v0.5.4 — cyan Rotary Revival mark in header/footer; scale tuned to Manus proportions. */
.rr-header-logo{width:76px!important;height:80px!important;padding:7px 0!important;display:flex!important;align-items:center!important;justify-content:flex-start!important;overflow:visible!important}
.rr-header-logo-image{width:66px!important;height:66px!important;max-width:none!important;object-fit:contain!important;object-position:center!important;display:block!important}
.rr-footer-brand{max-width:520px}
.rr-footer-logo{display:inline-block!important;width:112px!important;margin:0 0 22px!important}
.rr-footer-logo img{display:block!important;width:112px!important;height:112px!important;object-fit:contain!important}
@media(max-width:780px){.rr-header-logo{width:62px!important;height:68px!important}.rr-header-logo-image{width:56px!important;height:56px!important}.rr-footer-logo,.rr-footer-logo img{width:96px!important;height:96px!important}}


/* v0.5.5 — larger cyan brand lockup + current platform metadata. */
.rr-header-logo{width:auto!important;height:88px!important;gap:14px!important;padding:6px 0!important;text-decoration:none!important;flex:0 0 auto!important}
.rr-header-logo-image{width:76px!important;height:76px!important;flex:0 0 76px!important}
.rr-header-brand-text{display:block;color:#fff!important;font-family:inherit!important;font-size:20px!important;font-weight:800!important;line-height:1!important;letter-spacing:.02em!important;white-space:nowrap!important;text-transform:uppercase!important}
.rr-footer-logo{width:136px!important}
.rr-footer-logo img{width:136px!important;height:136px!important}
@media(max-width:780px){.rr-header-logo{height:72px!important;gap:9px!important}.rr-header-logo-image{width:60px!important;height:60px!important;flex-basis:60px!important}.rr-header-brand-text{font-size:16px!important}.rr-footer-logo,.rr-footer-logo img{width:112px!important;height:112px!important}}

/* v0.5.6 — mobile navigation + WooCommerce/Tickera responsive cleanup. */
.rr-mobile-nav{display:none}

/* WooCommerce product imagery: presentation only; WooCommerce still owns the product/image data. */
.woocommerce div.product div.images .woocommerce-product-gallery__wrapper,
.woocommerce div.product div.images .woocommerce-product-gallery__image{max-width:560px;margin-left:auto;margin-right:auto}
.woocommerce div.product div.images img{width:auto!important;max-width:100%!important;max-height:680px!important;object-fit:contain!important;margin:0 auto!important}

/* Exact WooCommerce Blocks cart/mini-cart image cell seen in the live markup. */
.wc-block-mini-cart__drawer .wc-block-cart-item__image{width:82px!important;min-width:82px!important;max-width:82px!important;padding-right:14px!important}
.wc-block-mini-cart__drawer .wc-block-cart-item__image img{display:block!important;width:82px!important;height:82px!important;max-width:82px!important;object-fit:contain!important}
.rr-cart-page .wc-block-cart-item__image{width:76px!important;min-width:76px!important;max-width:76px!important}
.rr-cart-page .wc-block-cart-item__image img{display:block!important;width:64px!important;height:64px!important;max-width:64px!important;object-fit:contain!important}

/* Cart uses our shell instead of Eveny's cart template/promo sections. */
.rr-cart-page{background:#101416!important;min-height:65vh}
.rr-cart-page-inner{width:min(100% - 48px,1200px)!important;margin:0 auto!important;padding:70px 0 100px!important}
.rr-cart-page-inner>h1{font-family:"Barlow Condensed","Arial Narrow",sans-serif!important;font-size:clamp(4rem,8vw,7rem)!important;line-height:.88!important;text-transform:uppercase;color:#fff!important;margin:0 0 44px!important}

/* Tickera form 2102 only: collapse its desktop field columns on phones. */
@media(max-width:780px){
  .fields-wrap.tc_form_id_2102{display:block!important;width:100%!important;max-width:100%!important}
  .fields-wrap.tc_form_id_2102 [class*="tc_field_col_"]{display:block!important;float:none!important;clear:both!important;width:100%!important;max-width:100%!important;margin-left:0!important;margin-right:0!important;box-sizing:border-box!important}
  .fields-wrap.tc_form_id_2102 input:not([type="radio"]):not([type="checkbox"]):not([type="submit"]),
  .fields-wrap.tc_form_id_2102 select,
  .fields-wrap.tc_form_id_2102 textarea{display:block!important;width:100%!important;max-width:100%!important;box-sizing:border-box!important}
  .fields-wrap.tc_form_id_2102 label{display:block!important;width:100%!important;max-width:100%!important;white-space:normal!important}
  .fields-wrap.tc_form_id_2102 .tc_radio_field,
  .fields-wrap.tc_form_id_2102 .tc_checkbox_field{width:100%!important;max-width:100%!important;white-space:normal!important}
}

@media(max-width:780px){
  .rr-site-header{min-height:68px!important;height:68px!important;display:flex!important;justify-content:flex-start!important;padding:0 12px!important;gap:8px!important}
  .rr-header-logo{width:58px!important;min-width:58px!important;height:64px!important;padding:3px 0!important}
  .rr-header-logo-image{width:56px!important;height:56px!important;max-width:56px!important;object-fit:contain!important}
  .rr-header-brand-text{display:none!important}
  .rr-main-nav{display:none!important}
  .rr-mobile-nav{display:block!important;position:relative;margin-left:auto;z-index:1005}
  .rr-mobile-nav>summary{list-style:none;display:flex;width:42px;height:42px;align-items:center;justify-content:center;flex-direction:column;gap:5px;cursor:pointer;border:1px solid rgba(255,255,255,.22)}
  .rr-mobile-nav>summary::-webkit-details-marker{display:none}
  .rr-mobile-nav>summary span{display:block;width:20px;height:2px;background:#fff}
  .rr-mobile-nav-panel{position:absolute;right:0;top:49px;width:min(78vw,300px);padding:10px;background:#101416;border:1px solid rgba(255,255,255,.18);box-shadow:0 16px 40px rgba(0,0,0,.45)}
  .rr-mobile-nav-panel a{display:block!important;padding:14px 12px!important;border-bottom:1px solid rgba(255,255,255,.1);color:#fff!important;text-decoration:none!important;text-transform:uppercase;font-weight:800!important}
  .rr-mobile-nav-panel a:last-child{border-bottom:0;background:var(--rr-cyan);color:#071012!important;margin-top:8px;text-align:center}
  .rr-header-actions{margin-left:0!important;flex:0 0 auto!important}
  .rr-header-actions .wc-block-mini-cart__amount{display:none!important}
  .rr-header-actions .wc-block-mini-cart__amount:before{content:none!important}
  .rr-cart-page-inner{width:calc(100% - 32px)!important;padding:48px 0 72px!important}
  .wc-block-mini-cart__drawer .wc-block-cart-item__image{width:66px!important;min-width:66px!important;max-width:66px!important}
  .wc-block-mini-cart__drawer .wc-block-cart-item__image img{width:64px!important;height:64px!important;max-width:64px!important}
}

/* v0.5.7 — WooCommerce cart/checkout polish based on inspected live markup. */
/* Woo Blocks keeps a hidden catalogue image beside the linked thumbnail. v0.5.6
   accidentally forced that hidden image visible. Honour the hidden state and size only
   the actual linked product thumbnail. */
.wc-block-mini-cart__drawer .wc-block-cart-item__image > img[hidden],
.wc-block-mini-cart__drawer .wc-block-cart-item__image img[hidden],
.rr-cart-page .wc-block-cart-item__image > img[hidden],
.rr-cart-page .wc-block-cart-item__image img[hidden]{display:none!important}
.wc-block-mini-cart__drawer .wc-block-cart-item__image > a{display:block!important;width:82px!important;max-width:82px!important}
.wc-block-mini-cart__drawer .wc-block-cart-item__image > a > img{display:block!important;width:82px!important;height:82px!important;max-width:82px!important;object-fit:contain!important}

/* Keep WooCommerce cart content legible on the Rotary Revival dark shell. */
.rr-cart-page,
.rr-cart-page .woocommerce,
.rr-cart-page .woocommerce-cart-form,
.rr-cart-page .cart_totals,
.rr-cart-page table,
.rr-cart-page th,
.rr-cart-page td,
.rr-cart-page label,
.rr-cart-page p,
.rr-cart-page strong,
.rr-cart-page .amount,
.rr-cart-page .product-name,
.rr-cart-page .product-name a,
.rr-cart-page .woocommerce-Price-amount,
.rr-cart-page .wc-block-cart-item__product,
.rr-cart-page .wc-block-cart-item__product a,
.rr-cart-page .wc-block-components-product-name,
.rr-cart-page .wc-block-components-product-name a,
.rr-cart-page .wc-block-components-quantity-selector input,
.rr-cart-page .wc-block-components-quantity-selector button{color:#fff!important}
.rr-cart-page .wc-block-components-quantity-selector,
.rr-cart-page input.qty{border-color:rgba(255,255,255,.28)!important;background:#101416!important;color:#fff!important}

/* Checkout now uses the same Rotary Revival shell as Cart. */
.rr-checkout-page{background:#101416!important;color:#fff!important;min-height:65vh}
.rr-checkout-page-inner{width:min(100% - 48px,1200px)!important;margin:0 auto!important;padding:70px 0 100px!important}
.rr-checkout-page-inner>h1{font-family:"Barlow Condensed","Arial Narrow",sans-serif!important;font-size:clamp(4rem,8vw,7rem)!important;line-height:.88!important;text-transform:uppercase;color:#fff!important;margin:0 0 44px!important}
.rr-checkout-page .woocommerce,
.rr-checkout-page .woocommerce-checkout,
.rr-checkout-page h2,
.rr-checkout-page h3,
.rr-checkout-page label,
.rr-checkout-page p,
.rr-checkout-page th,
.rr-checkout-page td,
.rr-checkout-page .amount{color:#fff!important}
.rr-checkout-page select{color:#fff!important;background-color:#101416!important;border-color:rgba(255,255,255,.28)!important}
.rr-checkout-page select option{color:#111!important;background:#fff!important}

@media(max-width:780px){
  .wc-block-mini-cart__drawer .wc-block-cart-item__image > a{width:64px!important;max-width:64px!important}
  .wc-block-mini-cart__drawer .wc-block-cart-item__image > a > img{width:64px!important;height:64px!important;max-width:64px!important}
  .rr-checkout-page-inner{width:calc(100% - 32px)!important;padding:48px 0 72px!important}
  .rr-cart-page .woocommerce-cart-form__cart-item td,
  .rr-cart-page .shop_table_responsive td{color:#fff!important}
  .rr-cart-page .woocommerce-cart-form__cart-item .product-name,
  .rr-cart-page .woocommerce-cart-form__cart-item .product-name a{color:#fff!important}
}

/* v0.5.8 — mini-cart alignment, Tickera terms popup contrast, checkout return route. */
/* WooCommerce Blocks mini-cart: keep the real linked thumbnail compact and align each row. */
.wc-block-mini-cart__drawer .wc-block-cart-items__row{
  grid-template-columns:64px minmax(0,1fr) auto!important;
  column-gap:16px!important;
  align-items:start!important;
}
.wc-block-mini-cart__drawer .wc-block-cart-item__image{
  width:64px!important;min-width:64px!important;max-width:64px!important;padding-right:0!important;
}
.wc-block-mini-cart__drawer .wc-block-cart-item__image > a{
  width:64px!important;max-width:64px!important;
}
.wc-block-mini-cart__drawer .wc-block-cart-item__image > a > img{
  width:64px!important;height:64px!important;max-width:64px!important;object-fit:contain!important;
}
.wc-block-mini-cart__drawer .wc-block-cart-item__product,
.wc-block-mini-cart__drawer .wc-block-cart-item__product a,
.wc-block-mini-cart__drawer .wc-block-components-product-name,
.wc-block-mini-cart__drawer .wc-block-components-product-name a,
.wc-block-mini-cart__drawer .wc-block-components-product-metadata,
.wc-block-mini-cart__drawer .wc-block-components-product-metadata *{
  color:#fff!important;
}
.wc-block-mini-cart__drawer .wc-block-cart-item__product{min-width:0!important;padding-left:0!important}
.wc-block-mini-cart__drawer .wc-block-components-product-name{display:block!important;line-height:1.25!important;margin:0 0 8px!important;text-decoration:none!important}
.wc-block-mini-cart__drawer .wc-block-cart-item__total{align-self:start!important;white-space:nowrap!important}

/* Tickera Terms & Conditions add-on uses the Colorbox popup. Preserve its white panel,
   but override the site's dark-page typography so the supplied Tickera content is readable. */
#colorbox #cboxContent,
#colorbox #cboxLoadedContent{background:#fff!important;color:#111!important}
#colorbox #cboxLoadedContent,
#colorbox #cboxLoadedContent p,
#colorbox #cboxLoadedContent div,
#colorbox #cboxLoadedContent span,
#colorbox #cboxLoadedContent strong,
#colorbox #cboxLoadedContent em,
#colorbox #cboxLoadedContent li,
#colorbox #cboxLoadedContent h1,
#colorbox #cboxLoadedContent h2,
#colorbox #cboxLoadedContent h3,
#colorbox #cboxLoadedContent h4,
#colorbox #cboxLoadedContent h5,
#colorbox #cboxLoadedContent h6{color:#111!important;background-color:transparent!important}
#colorbox #cboxLoadedContent a{color:#087f88!important}

/* Clear route back out of checkout. */
.rr-return-cart{display:inline-flex!important;align-items:center!important;margin:-18px 0 34px!important;color:#fff!important;text-decoration:none!important;text-transform:uppercase!important;font-weight:800!important;letter-spacing:.06em!important;font-size:13px!important;border-bottom:1px solid rgba(255,255,255,.38)!important;padding-bottom:5px!important}
.rr-return-cart:hover{color:var(--rr-cyan)!important;border-color:var(--rr-cyan)!important}

@media(max-width:780px){
  .wc-block-mini-cart__drawer .wc-block-cart-items__row{grid-template-columns:52px minmax(0,1fr) auto!important;column-gap:12px!important}
  .wc-block-mini-cart__drawer .wc-block-cart-item__image{width:52px!important;min-width:52px!important;max-width:52px!important}
  .wc-block-mini-cart__drawer .wc-block-cart-item__image > a{width:52px!important;max-width:52px!important}
  .wc-block-mini-cart__drawer .wc-block-cart-item__image > a > img{width:52px!important;height:52px!important;max-width:52px!important}
  .wc-block-mini-cart__drawer .wc-block-components-product-name{font-size:15px!important;line-height:1.25!important}
  .rr-return-cart{margin:-12px 0 28px!important}
}


/* v0.5.9 — mini-cart duplicate-title cleanup, Tickera terms contrast, sticky-header cart only. */
/* In Bridge mini-cart rows there can be a second generic product link in the product cell.
   Do not promote every anchor to white; style only Woo's canonical product-name component. */
.wc-block-mini-cart__drawer .wc-block-cart-item__product a:not(.wc-block-components-product-name){
  color:inherit!important;
}
.wc-block-mini-cart__drawer .wc-block-components-product-name,
.wc-block-mini-cart__drawer a.wc-block-components-product-name{
  color:#fff!important;
}

/* Tickera T&C popup variants. Keep the modal white and all supplied terms copy dark. */
#colorbox #cboxLoadedContent *,
#cboxLoadedContent .tc-terms-and-conditions,
#cboxLoadedContent .tc-terms-and-conditions *,
.tc_terms_popup,
.tc_terms_popup *,
.tc-terms-popup,
.tc-terms-popup *{
  color:#111!important;
}
#colorbox #cboxLoadedContent a,
.tc_terms_popup a,
.tc-terms-popup a{color:#087f88!important}

/* v0.5.8's inline return link is deliberately retired; Cart lives in the sticky header. */
.rr-return-cart{display:none!important}


/* v0.6.0 — evidence-based Woo mini-cart, Tickera Thickbox and checkout header fixes. */
/* Inspected Woo Blocks DOM contains both a plain-name span and linked product-name anchor.
   Keep the plain name; remove only the shop link duplicate. */
.wc-block-mini-cart__drawer .wc-block-cart-item__product > .wc-block-cart-item__wrap > span.wc-block-components-product-name,
.wc-block-mini-cart__drawer .wc-block-cart-item__product span.wc-block-components-product-name{
  display:block!important;
  color:#fff!important;
  line-height:1.25!important;
  margin:0 0 8px!important;
}
.wc-block-mini-cart__drawer .wc-block-cart-item__product a.wc-block-components-product-name{
  display:none!important;
}

/* Tickera Bridge opens its terms in WordPress Thickbox: #TB_window > #TB_ajaxContent. */
#TB_window,
#TB_ajaxContent{background:#fff!important;color:#111!important}
#TB_ajaxContent,
#TB_ajaxContent p,
#TB_ajaxContent div,
#TB_ajaxContent span,
#TB_ajaxContent strong,
#TB_ajaxContent em,
#TB_ajaxContent b,
#TB_ajaxContent i,
#TB_ajaxContent li,
#TB_ajaxContent ul,
#TB_ajaxContent ol,
#TB_ajaxContent h1,
#TB_ajaxContent h2,
#TB_ajaxContent h3,
#TB_ajaxContent h4,
#TB_ajaxContent h5,
#TB_ajaxContent h6{color:#111!important}
#TB_ajaxContent a{color:#087f88!important}


/* v0.6.1 — checkout uses a persistent cart control in header actions, not a nav text link.
   WooCommerce suppresses its Mini-Cart block on checkout, so this checkout-only control
   provides the native route back to /cart/ beside the Account control. */
.rr-checkout-cart-action{
  display:none!important;
  align-items:center!important;
  gap:7px!important;
  color:#fff!important;
  text-decoration:none!important;
  font-weight:900!important;
  font-size:12px!important;
  letter-spacing:.06em!important;
  white-space:nowrap!important;
  padding:8px 6px!important;
}
.rr-checkout-cart-action svg{width:22px!important;height:22px!important;display:block!important}
body.woocommerce-checkout .rr-checkout-cart-action,
body:has(.rr-checkout-page) .rr-checkout-cart-action{display:inline-flex!important}
body.woocommerce-checkout .rr-header-actions,
body:has(.rr-checkout-page) .rr-header-actions{gap:10px!important}
@media(max-width:780px){
  .rr-checkout-cart-action span{display:none!important}
  .rr-checkout-cart-action{padding:6px 2px!important}
  .rr-checkout-cart-action svg{width:21px!important;height:21px!important}
}


/* v0.6.2 — keep the Woo Blocks mini-cart deliberately concise.
   Product descriptions / metadata remain available elsewhere; suppress them only in the drawer. */
.wc-block-mini-cart__drawer .wc-block-components-product-metadata,
.wc-block-mini-cart__drawer .wc-block-components-product-metadata *,
.wc-block-mini-cart__drawer .wc-block-cart-item__product .wc-block-components-product-details,
.wc-block-mini-cart__drawer .wc-block-cart-item__product .wc-block-components-product-details *{
  display:none!important;
}

/* v0.6.3 — mobile header layout only.
   Rotor + burger stay together on the left; header actions stay together on the right.
   Existing Woo Mini-Cart / checkout Cart controls and their behaviour are unchanged. */
@media(max-width:780px){
  .rr-mobile-nav{margin-left:0!important;flex:0 0 auto!important}
  .rr-header-actions{margin-left:auto!important;display:flex!important;align-items:center!important;flex-wrap:nowrap!important;gap:10px!important}
  .rr-header-actions>.wp-block-woocommerce-mini-cart,
  .rr-header-actions>.wc-block-mini-cart,
  .rr-header-actions>.wp-block-woocommerce-customer-account,
  .rr-header-actions>.wc-block-customer-account,
  .rr-header-actions>.rr-checkout-cart-action{flex:0 0 auto!important;margin-top:0!important;margin-bottom:0!important;align-self:center!important}
}

/* v0.6.3 — mobile cart uses a direct Cart link instead of the Woo Mini-Cart trigger.
   Desktop keeps the native Woo Mini-Cart unchanged. Checkout retains its existing custom Cart control. */
.rr-mobile-cart-link{display:none!important}
@media(max-width:780px){
  .rr-header-actions>.wp-block-woocommerce-mini-cart,
  .rr-header-actions>.wc-block-mini-cart{display:none!important}
  .rr-mobile-cart-link{
    display:inline-flex!important;
    align-items:center!important;
    justify-content:center!important;
    flex:0 0 auto!important;
    width:28px!important;
    height:28px!important;
    padding:3px!important;
    color:#fff!important;
    text-decoration:none!important;
  }
  .rr-mobile-cart-link svg{display:block!important;width:22px!important;height:22px!important}
  body.woocommerce-checkout .rr-mobile-cart-link,
  body:has(.rr-checkout-page) .rr-mobile-cart-link{display:none!important}
}

/* v0.6.3 — mobile navigation panel follows the revised rotor + burger layout.
   The details control now sits beside the rotor, so anchor the panel back to the
   header's mobile gutter instead of extending it left from the burger. */
@media(max-width:780px){
  .rr-mobile-nav-panel{
    left:-66px!important;
    right:auto!important;
    width:calc(100vw - 24px)!important;
    max-width:none!important;
    box-sizing:border-box!important;
  }
}


/* v0.6.4 — managed primary menu. All mobile menu items share the same treatment;
   Cart and Account remain dedicated header controls outside this menu. */
@media(max-width:780px){
  .rr-mobile-nav-panel a:last-child{background:transparent!important;color:#fff!important;margin-top:0!important;text-align:left!important}
  .rr-mobile-nav-panel .menu-item:last-child a{border-bottom:0!important}
}


/* v0.6.5 — legacy WordPress page presentation.
   Give editable pages a consistent content shell and prevent old large headings
   from inheriting display typography so tightly that words visually run together. */
.rr-standard-page-inner .wp-block-post-content{
  padding-top:8px!important;
  padding-bottom:8px!important;
}
.rr-standard-page-inner .wp-block-post-content h1,
.rr-standard-page-inner .wp-block-post-content h2,
.rr-standard-page-inner .wp-block-post-content h3{
  line-height:1.02!important;
  letter-spacing:-.015em!important;
  word-spacing:.08em!important;
}
.rr-standard-page-inner .wp-block-post-content h1,
.rr-standard-page-inner .wp-block-post-content h2{
  font-size:clamp(2.4rem,4.5vw,4.8rem)!important;
}
.rr-standard-page-inner .wp-block-post-content > :first-child{margin-top:0!important}
.rr-standard-page-inner .wp-block-post-content > :last-child{margin-bottom:0!important}
@media(max-width:780px){
  .rr-standard-page-inner .wp-block-post-content h1,
  .rr-standard-page-inner .wp-block-post-content h2{font-size:clamp(2rem,10vw,3.2rem)!important}
}


/* v0.6.8 — tighten individual event hero and improve event-detail legibility. */
@media (min-width: 901px) {
  .rr-event-hero { padding: 32px 0; }
  .rr-event-hero-image img { max-height: 400px; }
  .rr-event-hero-meta {
    font-size: 1.08rem;
    line-height: 1.45;
    gap: 12px 32px;
  }
}
@media (max-width: 900px) {
  .rr-event-hero-meta { font-size: 1rem; line-height: 1.45; }
}


/* v0.6.9 — homepage event-card actions and tighter transition into following content. */
.rr-event-card-actions{display:flex;flex-wrap:wrap;gap:10px;align-items:center}
.rr-event-card-actions .rr-event-more{margin:0}
.rr-event-enter{background:var(--rr-cyan,#16d7d1)!important;color:#071012!important}
.rr-event-enter:hover{background:#42f6f0!important;color:#071012!important}
/* Reduce the combined bottom/top padding that appeared as an empty dark rectangle below Upcoming Events. */
.rr-events-section{padding-bottom:42px}
.rr-revival-intro{padding-top:48px}
@media(max-width:620px){
  .rr-event-card-actions{align-items:stretch}
  .rr-event-card-actions .rr-event-more{justify-content:center;text-align:center}
  .rr-events-section{padding-bottom:34px}
  .rr-revival-intro{padding-top:38px}
}


/* v0.6.11 — keep spectator CTA yellow on hover; entrant CTA remains cyan. */
.rr-event-card-actions .rr-event-spectator,
.rr-event-card-actions .rr-event-spectator:hover,
.rr-event-card-actions .rr-event-spectator:focus {
  background:#f5f15a !important;
  color:#0a0d0f !important;
}


/* v0.6.13 — intentional empty state for the dedicated Events page. */
.rr-page-shell-no-events{
  min-height:0;
  padding-bottom:0;
}
.rr-events-empty-page{
  width:min(900px,calc(100% - 80px));
  margin:0 auto;
  padding:clamp(70px,9vw,130px) 0;
  text-align:center;
}
.rr-events-empty-page h1{
  font-family:"Barlow Condensed","Arial Narrow",sans-serif;
  color:#fff!important;
  text-transform:uppercase;
  font-weight:900;
  font-size:clamp(3rem,6vw,6rem);
  line-height:.9;
  letter-spacing:-.025em;
  margin:0 0 22px;
}
.rr-events-empty-page p:not(.rr-section-kicker){
  max-width:680px;
  margin:0 auto;
  color:rgba(255,255,255,.7)!important;
  font-size:18px;
  line-height:1.65;
}
@media(max-width:780px){
  .rr-events-empty-page{width:min(100% - 36px,900px);padding:64px 0}
  .rr-events-empty-page p:not(.rr-section-kicker){font-size:16px}
}

/* v0.6.15 — checkout attendee labels and order-received contrast.
   Keep WooCommerce/Tickera generated copy legible on the dark Rotary Revival shell
   without changing form controls, payment UI or ticketing behaviour. */
.rr-checkout-page .fields-wrap,
.rr-checkout-page .fields-wrap h1,
.rr-checkout-page .fields-wrap h2,
.rr-checkout-page .fields-wrap h3,
.rr-checkout-page .fields-wrap h4,
.rr-checkout-page .fields-wrap h5,
.rr-checkout-page .fields-wrap h6,
.rr-checkout-page .fields-wrap label,
.rr-checkout-page [class*="attendee"]:not(input):not(select):not(textarea),
.rr-checkout-page [class*="attendee"] label{
  color:#fff!important;
}

body.woocommerce-order-received .woocommerce,
body.woocommerce-order-received .woocommerce h1,
body.woocommerce-order-received .woocommerce h2,
body.woocommerce-order-received .woocommerce h3,
body.woocommerce-order-received .woocommerce h4,
body.woocommerce-order-received .woocommerce h5,
body.woocommerce-order-received .woocommerce h6,
body.woocommerce-order-received .woocommerce p,
body.woocommerce-order-received .woocommerce li,
body.woocommerce-order-received .woocommerce th,
body.woocommerce-order-received .woocommerce td,
body.woocommerce-order-received .woocommerce address,
body.woocommerce-order-received .woocommerce strong,
body.woocommerce-order-received .woocommerce .amount,
body.woocommerce-order-received .woocommerce-order-details,
body.woocommerce-order-received .woocommerce-customer-details,
body.woocommerce-order-received .tc-order-details,
body.woocommerce-order-received .tc-order-details th,
body.woocommerce-order-received .tc-order-details td,
body.woocommerce-order-received .tc-order-details span{
  color:#fff!important;
}
body.woocommerce-order-received .woocommerce a,
body.woocommerce-order-received .tc-order-details a{
  color:var(--rr-cyan,#00d9f5)!important;
}
body.woocommerce-order-received .woocommerce a:hover,
body.woocommerce-order-received .woocommerce a:focus,
body.woocommerce-order-received .tc-order-details a:hover,
body.woocommerce-order-received .tc-order-details a:focus{
  color:#42f6f0!important;
}

/* v0.6.16 — Tickera checkout focus states + ticket/order confirmation contrast.
   Tickera's own field rules and WP global link styles can override inherited colours. */
form.checkout .tickera-input-field,
form.checkout .tickera-input-field:focus,
form.checkout .tickera-input-field:active,
form.checkout .tickera-input-field.valid,
form.checkout .tickera-input-field.invalid,
form.checkout input.tickera-input-field.owner-field,
form.checkout input.tickera-input-field.owner-field:focus,
form.checkout input.tickera-input-field.owner-field:active{
  color:#fff!important;
  -webkit-text-fill-color:#fff!important;
  caret-color:#fff;
}

/* Tickera ticket table on Woo order confirmation. Do not depend on the
   woocommerce-order-received body class: some legacy-template confirmations omit it. */
.woocommerce table.order-details,
.woocommerce table.order-details th,
.woocommerce table.order-details td,
.woocommerce table.order-details span,
.woocommerce table.order-details strong,
.woocommerce .tc-order-details,
.woocommerce .tc-order-details th,
.woocommerce .tc-order-details td,
.woocommerce .tc-order-details span{
  color:#fff!important;
}
.woocommerce table.order-details a:link,
.woocommerce table.order-details a:visited,
.woocommerce .tc-order-details a:link,
.woocommerce .tc-order-details a:visited{
  color:var(--rr-cyan,#00d9f5)!important;
  -webkit-text-fill-color:var(--rr-cyan,#00d9f5)!important;
  background:transparent!important;
}
.woocommerce table.order-details a:hover,
.woocommerce table.order-details a:focus,
.woocommerce table.order-details a:active,
.woocommerce .tc-order-details a:hover,
.woocommerce .tc-order-details a:focus,
.woocommerce .tc-order-details a:active{
  color:#42f6f0!important;
  -webkit-text-fill-color:#42f6f0!important;
  background:transparent!important;
}


/* v0.6.17 — Tickera Bridge for WooCommerce checkout/confirmation fixes.
   Bridge renders the ticket table inside the Woo legacy-template wrapper, but not
   necessarily inside a .woocommerce ancestor. Target Tickera's actual order-details
   markup directly so its foreground variable cannot make text/links black. */
body table.order-details.widefat,
body table.order-details.widefat th,
body table.order-details.widefat td,
body table.order-details.widefat span,
body table.order-details.widefat strong{
  color:#fff!important;
  -webkit-text-fill-color:#fff!important;
}
body table.order-details.widefat a,
body table.order-details.widefat a:link,
body table.order-details.widefat a:visited{
  color:var(--rr-cyan,#00d9f5)!important;
  -webkit-text-fill-color:var(--rr-cyan,#00d9f5)!important;
  background:transparent!important;
}
body table.order-details.widefat a:hover,
body table.order-details.widefat a:focus,
body table.order-details.widefat a:active{
  color:#42f6f0!important;
  -webkit-text-fill-color:#42f6f0!important;
  background:transparent!important;
}

/* Tickera Bridge stores required attendee fields with a sibling hidden
   tc_cart_required[] input. Surface that existing requirement visually only;
   validation and submission remain entirely Tickera/Bridge controlled. */
form.checkout .fields-wrap:has(> input[type="hidden"][name="tc_cart_required[]"]) > label::after{
  content:" *";
  color:#ff3b30!important;
  -webkit-text-fill-color:#ff3b30!important;
  font-weight:800;
}

/* v0.6.21: Gallery title should size to its content now that the WordPress gallery follows it. */
.rr-gallery-title-shell{
  min-height:0;
  padding-bottom:0;
}
.rr-gallery-title-shell .rr-page-intro{
  padding-bottom:40px;
}
