/* Brand colors are surfaces; foregrounds are chosen for their actual contrast. */
:is(#yalla-theme,body[data-theme]) { --yalla-green:#008924; --yalla-red:#ff0029; --yalla-white:#fafaf7; --yalla-black:#161616; }
:is(#yalla-theme,body[data-theme]) .framer-text { opacity:1!important; }
:is(#yalla-theme,body[data-theme]) .framer-text :is(a,span) { color:inherit!important; --framer-text-color:inherit!important; }
:is(#yalla-theme,body[data-theme]) :is([data-framer-name="Hero"],[data-framer-name="Final"]) { --surface-ink:#ffffff; }
:is(#yalla-theme,body[data-theme]) [data-framer-name="Hero Photo"]:after { background:rgba(0,0,0,.60)!important; }
:is(#yalla-theme,body[data-theme]) [data-framer-name="Final"]>[data-framer-name="Shade"] { background:rgba(0,0,0,.60)!important; }
:is(#yalla-theme,body[data-theme]) [data-framer-name="Final"] [data-framer-name="Hours Plate"] { --surface-ink:#161616; }
:is(#yalla-theme,body[data-theme]) [data-framer-name="Final"] [data-framer-name="Hours Plate"] .framer-text { color:#161616!important; --framer-text-color:#161616!important; }
:is(#yalla-theme,body[data-theme]) [data-framer-name="Final"] [data-framer-name="Primary"] .framer-text { color:var(--on-brand)!important; --framer-text-color:var(--on-brand)!important; }
:is(#yalla-theme,body[data-theme]) [data-framer-name="Sticker"] .framer-text { color:var(--on-accent)!important; --framer-text-color:var(--on-accent)!important; }
:is(#yalla-theme,body[data-theme]) [data-yalla-custom="event-list"] [data-framer-name="Event Row"]:is(:hover,:focus-visible) .framer-text { color:var(--on-brand)!important; --framer-text-color:var(--on-brand)!important; }
:is(#yalla-theme,body[data-theme]) [data-framer-name="Parent Quote"] .framer-text { color:#161616!important; --framer-text-color:#161616!important; }
:is(#yalla-theme,body[data-theme]) :is(.invite-copy,.invite-details,.invite-note,.invite-eyebrow) { color:#161616; opacity:1; }
:is(#yalla-theme,body[data-theme]) .invite-button { background:var(--brand); color:var(--on-brand); }
:is(#yalla-theme,body[data-theme]) [data-framer-name="Menu Button"] :is(svg *,[data-framer-name="Bar"]) { stroke:#161616!important; }
:is(#yalla-theme,body[data-theme]) [data-framer-name="Menu Button"] [data-framer-name="Bar"] { background:#161616!important; }
:is(#yalla-theme,body[data-theme]) :is(a,button,[tabindex]):focus-visible { outline:3px solid currentColor; outline-offset:4px; }

/* White foregrounds throughout the red color fields. */
:is(#yalla-theme,body[data-theme="mixed"],body[data-theme="red"]) [data-framer-name="Check In"] { background:#ff0029!important; --surface-ink:#fff; --lab-line:#ffffff55; }
:is(#yalla-theme,body[data-theme="mixed"],body[data-theme="red"]) [data-framer-name="Check In"] .framer-text { color:#fff!important; --framer-text-color:#fff!important; }
:is(#yalla-theme,body[data-theme]) [data-framer-name="Hero"] :is([data-framer-name="Corner"],[data-framer-name="Open Line"]) { display:none!important; }
:is(#yalla-theme,body[data-theme]) [data-framer-name="Sticker"] .framer-text { color:#fff!important; --framer-text-color:#fff!important; font-weight:700!important; }
:is(#yalla-theme,body[data-theme]) [data-framer-name="Hero"] [data-framer-name="Sticker Line"]:last-child .framer-text { font-size:20px!important; font-weight:700!important; }
:is(#yalla-theme,body[data-theme]) :is([data-framer-name="Hero"],[data-framer-name="Parties"]) a[name="Button"] { background:#ff0029!important; --border-color:#ff0029!important; --surface-ink:#fff; }
:is(#yalla-theme,body[data-theme]) :is([data-framer-name="Hero"],[data-framer-name="Parties"]) a[name="Button"] .framer-text { color:#fff!important; --framer-text-color:#fff!important; font-size:20px!important; font-weight:700!important; }
:is(#yalla-theme,body[data-theme="mixed"]) [data-framer-name="Check In"] :is([data-framer-name="H2"],[data-framer-name="Step Title"],[data-framer-name="Time"]) .framer-text,
:is(#yalla-theme,body[data-theme="red"]) [data-framer-name="Check In"] :is([data-framer-name="H2"],[data-framer-name="Step Title"],[data-framer-name="Time"]) .framer-text { color:#fff!important; --framer-text-color:#fff!important; font-weight:700!important; }
/* Bowlby One is already heavy: avoid synthetic bold and colliding step letters. */
:is(#yalla-theme,body[data-theme]) [data-framer-name="Check In"] :is([data-framer-name="Time"],[data-framer-name="Step Title"]) .framer-text { font-weight:400!important; letter-spacing:.02em!important; --framer-letter-spacing:.02em!important; }
:is(#yalla-theme,body[data-theme]) [data-framer-name="Parties"] :is([data-framer-name="Ticket Bounce"],[data-framer-name="Ticket Mega"],[data-framer-name="Ticket Ultimate"]) { transition:transform 200ms ease!important; }
@media (hover:hover) and (pointer:fine) and (prefers-reduced-motion:no-preference) {
  :is(#yalla-theme,body[data-theme]) [data-framer-name="Parties"] :is([data-framer-name="Ticket Bounce"],[data-framer-name="Ticket Mega"],[data-framer-name="Ticket Ultimate"]):hover { transform:translate3d(6px,-4px,0) rotate(0deg)!important; }
}

/* Shared pill-button states, including the header and hero discovery CTAs. */
:is(#yalla-theme,body[data-theme]) [data-framer-name] a[data-reset="button"][data-framer-name] {
 --button-fill:#ff0029; --button-hover:#d40023; --button-pressed:#b6001e;
 --surface-ink:#fff; --border-color:var(--button-fill)!important;
 background:var(--button-fill)!important; color:#fff!important;
 transition:background-color 160ms ease,border-color 160ms ease,box-shadow 160ms ease;
}
:is(#yalla-theme,body[data-theme]) [data-framer-name] a[data-reset="button"][data-framer-name] .framer-text {
 color:#fff!important; --framer-text-color:#fff!important;
}
@media (hover:hover) and (pointer:fine) {
 :is(#yalla-theme,body[data-theme]) [data-framer-name] a[data-reset="button"][data-framer-name][href]:not([aria-disabled="true"]):hover {
  background:var(--button-hover)!important; --border-color:var(--button-hover)!important;
 }
 :is(#yalla-theme,body[data-theme]) [data-framer-name="Menu Button"]:hover { background:#e4eee6!important; }
}
:is(#yalla-theme,body[data-theme]) [data-framer-name] a[data-reset="button"][data-framer-name][href]:not([aria-disabled="true"]):active {
 background:var(--button-pressed)!important; --border-color:var(--button-pressed)!important;
}
:is(#yalla-theme,body[data-theme]) [data-framer-name] a[data-reset="button"][data-framer-name]:focus-visible {
 outline:3px solid #161616!important; outline-offset:4px; box-shadow:0 0 0 4px #fafaf7;
}
:is(#yalla-theme,body[data-theme]) [data-framer-name] a[data-reset="button"][aria-disabled="true"] {
 background:#e1e5df!important; --border-color:#e1e5df!important; color:#4b554d!important;
 opacity:1!important; cursor:not-allowed!important;
}
:is(#yalla-theme,body[data-theme]) [data-framer-name] a[data-reset="button"][aria-disabled="true"] .framer-text {
 color:#4b554d!important; --framer-text-color:#4b554d!important;
}
:is(#yalla-theme,body[data-theme]) [data-framer-name="Menu Button"]:active { background:#d2e6d7!important; }
:is(#yalla-theme,body[data-theme]) [data-framer-name="Minutes Picker"] [data-framer-name^="Tab "] { cursor:pointer; }
@media (hover:hover) and (pointer:fine) {
 :is(#yalla-theme,body[data-theme]) [data-framer-name="Minutes Picker"] [data-framer-name^="Tab "]:hover { box-shadow:inset 0 -3px 0 #00612d; }
}
:is(#yalla-theme,body[data-theme]) [data-framer-name="Minutes Picker"] [data-framer-name^="Tab "]:active { box-shadow:inset 0 -4px 0 #005518; }
:is(#yalla-theme,body[data-theme]) [data-framer-name="Minutes Picker"] [data-framer-name^="Tab "]:focus-visible { outline:3px solid #161616!important; outline-offset:-4px; }
:is(#yalla-theme,body[data-theme]) :is([data-framer-name="Hero Link"],[data-framer-name="Party Link"],[data-framer-name="Safety Link"],[data-framer-name="Events Link"],[data-framer-name="Memberships"],[data-framer-name="Zones Intro"],[data-framer-name="Nav"]) a {
 color:var(--surface-ink)!important; text-underline-offset:.2em; text-decoration-thickness:1.5px;
}
@media (hover:hover) and (pointer:fine) {
 :is(#yalla-theme,body[data-theme]) :is([data-framer-name="Hero Link"],[data-framer-name="Party Link"],[data-framer-name="Safety Link"],[data-framer-name="Events Link"],[data-framer-name="Memberships"],[data-framer-name="Zones Intro"],[data-framer-name="Nav"]) a:hover { text-decoration:underline!important; }
}
@media (prefers-reduced-motion:reduce) {
 :is(#yalla-theme,body[data-theme]) [data-framer-name] a[data-reset="button"][data-framer-name] { transition:none; }
}
@media (prefers-reduced-motion:reduce) {
  :is(#yalla-theme,body[data-theme]) [data-framer-name="Parties"] :is([data-framer-name="Ticket Bounce"],[data-framer-name="Ticket Mega"],[data-framer-name="Ticket Ultimate"]) { transition:none!important; }
}

/* Continuous red footer: retain the template's content grid and animated wordmark. */
:is(#yalla-theme,body[data-theme]) [data-framer-name="Footer"] { position:relative; background:#ff0029!important; --surface-ink:#fff; --lab-line:#ffffff55; }
:is(#yalla-theme,body[data-theme]) [data-framer-name="Footer"] .framer-text { color:#fff!important; --framer-text-color:#fff!important; }
:is(#yalla-theme,body[data-theme]) [data-framer-name="Footer Wordmark Wrap"] {
 background:#ff0029!important;
 box-shadow:0 0 0 100vmax #ff0029;
 clip-path:inset(0 -100vmax);
}
:is(#yalla-theme,body[data-theme]) [data-framer-name="Footer Wordmark"] .bw-word { color:#fff!important; }
:is(#yalla-theme,body[data-theme]) [data-framer-name="Footer"]::before {
 content:""; position:absolute; inset:0 0 auto; height:34px; z-index:2; pointer-events:none;
 background:#ff0029 var(--cms-pattern,none) repeat-x 0 center / 561.038961px 120px;
 animation:yalla-pattern-ticker 24s linear infinite;
}
@media (prefers-reduced-motion:reduce) {
 :is(#yalla-theme,body[data-theme]) [data-framer-name="Footer"]::before { animation:none; }
}

/* Phone layouts use a quiet reading surface and one consistent gallery gutter. */
@media (max-width:809px) {
 :is(#yalla-theme,body[data-theme]) [data-framer-name="Hero"] { background:#fafaf7!important; --surface-ink:#161616; --lab-fg:#008924; --lab-line:#16161633; }
 :is(#yalla-theme,body[data-theme]) [data-framer-name="Hero Facts"] .framer-text { color:#161616!important; --framer-text-color:#161616!important; }
 :is(#yalla-theme,body[data-theme]) [data-framer-name="Hero Facts"] a[name="Button"] .framer-text { color:#fff!important; --framer-text-color:#fff!important; }
 :is(#yalla-theme,body[data-theme]) [data-framer-name="Hero Facts"] [data-border="true"] { --border-color:#16161633!important; }
 :is(#yalla-theme,body[data-theme]) [data-framer-name="Hero Wordmark"] .bw-word { color:#008924!important; }
 :is(#yalla-theme,body[data-theme]) [data-framer-name="Minutes Picker"] :is([data-framer-name="Tab 60"],[data-framer-name="Tab 90"],[data-framer-name="Tab 120"])::after { border:0!important; }
 :is(#yalla-theme,body[data-theme]) [data-framer-name="Minutes Picker"] [tabindex]:focus-visible { outline-color:#008924; }
 :is(#yalla-theme,body[data-theme]) [data-framer-name="Zones"] { padding-left:20px!important; padding-right:20px!important; }
 :is(#yalla-theme,body[data-theme]) [data-framer-name="Collage"] { gap:32px!important; }
 :is(#yalla-theme,body[data-theme]) [data-framer-name="Collage"] :is([data-framer-name="Column 1"],[data-framer-name="Column 2"]) { align-items:stretch!important; gap:32px!important; translate:none!important; transform:none!important; }
 :is(#yalla-theme,body[data-theme]) [data-framer-name="Collage"] :is([data-framer-name="Column 1"],[data-framer-name="Column 2"]) > a { width:100%!important; max-width:none!important; align-self:stretch!important; }
 :is(#yalla-theme,body[data-theme]) [data-framer-name="Zones"] [data-framer-name="Caption"] { flex-direction:column!important; align-items:flex-start!important; gap:8px!important; width:100%!important; }
 :is(#yalla-theme,body[data-theme]) [data-framer-name="Zones"] [data-framer-name="Caption"] > * { width:100%!important; min-width:0!important; }
 :is(#yalla-theme,body[data-theme]) [data-framer-name="Zones"] [data-framer-name="Caption"] .framer-text { white-space:normal!important; overflow-wrap:break-word; }
 :is(#yalla-theme,body[data-theme]) [data-yalla-custom="event-list"] [data-framer-name="Event Row"]:is(:hover,:focus-visible,:active) { background:#fafaf7!important; --surface-ink:#161616; }
 :is(#yalla-theme,body[data-theme]) [data-yalla-custom="event-list"] [data-framer-name="Event Row"]:is(:hover,:focus-visible,:active) .framer-text { color:#161616!important; --framer-text-color:#161616!important; }
}
