/* sv-ev.css - events block (spec 6.5, 6.6, 8.3, 10): intro, film (stills list by default; pinned film only with the
   JS class .is-pinned, which sv-ev.js sets with motion + a tall enough screen), night stage, featured card, deck
   (swipe row < 1024 px; plain list or sticky stack .is-stack from 1024 px), dated list, Jouw eigen avond, private
   cards (/agenda), night cards (/feesten), loop + play-once (incl. the /feesten hero), dawn band. Prefixes sv-ev, sv-dawn. */
.sv-ev-film{--sv-ev-bar:0px;--sv-ev-veil:color-mix(in srgb,var(--sv-night) 78%,transparent)}
@media (max-width:1023px){.sv-ev-film{--sv-ev-bar:calc(78px + env(safe-area-inset-bottom))}}

/* ---------- intro (sand, normal flow) ---------- */
.sv-ev-intro{padding-block:var(--sv-section-pad) 40px}
.sv-ev-intro .sv-lead{margin-top:16px}
.sv-ev-intro__skip{margin-top:8px}

/* ---------- film, stills list (no JS, reduce motion, short screens): each still above its card ---------- */
.sv-ev-film{padding-block:40px clamp(48px,6vw,80px)}
.sv-ev-window,.sv-ev-rail{display:none}
.sv-ev-chapters{display:grid;gap:var(--sv-gap);width:100%;max-width:calc(var(--sv-max) + 2 * var(--sv-gutter));margin-inline:auto;padding-inline:var(--sv-gutter)}
@media (min-width:600px){.sv-ev-chapters{grid-template-columns:repeat(2,minmax(0,1fr))}}
.sv-ev-card{position:relative;display:grid;grid-template-columns:auto minmax(0,1fr);align-content:start;align-items:center;justify-items:start;gap:12px 16px;height:100%;padding:0 24px 28px;border-radius:var(--sv-r-night);background:var(--sv-night-2);box-shadow:var(--sv-shadow-night);overflow:hidden}
.sv-ev-card > *{grid-column:1/-1;margin:0}
.sv-ev-card > .sv-ev-cta{grid-column:1}
.sv-ev-card > .sv-ev-card__link{grid-column:2}
@media (max-width:599px){.sv-ev-card > .sv-ev-card__link{grid-column:1/-1}}
.sv-ev-card__line,.sv-ev-line{color:var(--sv-mist)}
.sv-ev-still{order:-1;justify-self:stretch;margin:0 -24px 8px}
.sv-ev-card .sv-ticket--info,.sv-ev-nightcard .sv-ticket--info{background:var(--sv-night);color:var(--sv-on-dark);box-shadow:inset 0 0 0 1px var(--sv-line-dark)}
.sv-ev-card .sv-ticket--info .sv-ticket__stub{background:var(--sv-night);color:var(--sv-mist)}

/* ---------- film, pinned: CSS-first with motion on a tall screen (so lazy images see the final layout before
   sv-ev.js runs); sv-ev.js adds .is-list when it cannot run the film, .is-pinned once it does ---------- */
@media (min-height:560px){
.sv-motion .sv-ev-film:not(.is-list){height:400svh;padding:0}
.sv-motion .sv-ev-film:not(.is-list) .sv-ev-stage{position:sticky;top:0;height:calc(100svh - var(--sv-ev-bar));overflow:hidden;background:var(--sv-night)}
.sv-motion .sv-ev-film:not(.is-list) .sv-ev-window{display:block;position:absolute;inset:0;z-index:0;overflow:hidden;background:var(--sv-night)}
.sv-motion .sv-ev-film:not(.is-list) .sv-ev-window::after{content:"";position:absolute;inset:0;background:var(--sv-scrim),linear-gradient(to right,var(--sv-ev-veil),transparent 45%);pointer-events:none}
.sv-ev-poster,.sv-ev-poster img,.sv-ev-canvas{position:absolute;inset:0;width:100%;height:100%}
.sv-ev-poster img{object-fit:cover;object-position:58% 60%}
.sv-ev-canvas{transform-origin:58% 60%}
.sv-motion .sv-ev-film:not(.is-list) .sv-ev-still,.sv-motion .sv-ev-film:not(.is-list) .sv-ev-card__link,.is-lite .sv-ev-birds{display:none}
.sv-ev-birds{position:absolute;inset:0;pointer-events:none;color:var(--sv-on-dark)}
.sv-ev-bird{position:absolute;left:0;top:0;width:34px;opacity:.25;will-change:transform}
.sv-ev-bird + .sv-ev-bird{width:46px;opacity:.35}
.sv-ev-bird + .sv-ev-bird + .sv-ev-bird{width:62px;opacity:.5}
.sv-ev-skip{position:absolute;top:12px;right:var(--sv-gutter);z-index:1;display:flex;align-items:center;min-height:48px;color:var(--sv-on-dark);font:600 .9375rem/1 var(--sv-font-text);text-underline-offset:4px}
.sv-ev-window > .sv-chip--ai{position:absolute;right:var(--sv-gutter);bottom:14px;z-index:1}
.sv-ev-progress{position:absolute;left:0;right:0;bottom:0;z-index:1;height:2px}
.sv-ev-progress__bar{display:block;height:100%;background:var(--sv-lime);transform:scaleX(var(--sv-ev-load,0));transform-origin:0 50%;transition:transform .2s linear}
.sv-ev-rail__btn{display:flex;align-items:center;gap:10px;min-height:48px;color:var(--sv-mist);font:600 .8125rem/1.1 var(--sv-font-text);letter-spacing:.04em}
.sv-ev-rail__btn.is-active{color:var(--sv-lime)}
.sv-ev-rail__dot{width:12px;height:12px;border-radius:50%;background:var(--sv-night);box-shadow:inset 0 0 0 2px currentColor}
.is-active > .sv-ev-rail__dot{background:var(--sv-lime)}
.sv-motion .sv-ev-film:not(.is-list) .sv-ev-chapters{grid-template-columns:minmax(0,1fr);perspective:900px}
.sv-motion .sv-ev-film:not(.is-list) .sv-ev-chapters > li{grid-area:1/1;align-self:end}
.sv-motion .sv-ev-film:not(.is-list) .sv-ev-card{height:auto;opacity:0;transform:translateY(16px) rotateX(6deg);transform-origin:50% 100%;pointer-events:none;transition:opacity .32s var(--sv-ease),transform .32s var(--sv-ease)}
.sv-motion .sv-ev-film:not(.is-list) .sv-ev-card.is-active,.sv-motion .sv-ev-film:not(.is-list,.is-pinned) li:first-child > .sv-ev-card{opacity:1;transform:none;pointer-events:auto}
/* fix round 1: the chapter button is secondary in the stills list (a grid of four cards) and lime while pinned (one
   card at a time), so a screen never shows a row of lime pills */
.sv-motion .sv-ev-film:not(.is-list) .sv-ev-card > .sv-ev-cta{background:var(--sv-lime);color:var(--sv-night);box-shadow:inset 0 -2px 0 var(--sv-lime-deep)}
.sv-motion .sv-ev-film:not(.is-list) .sv-ev-card > .sv-ev-cta:hover{background:var(--sv-lime-hover)}
}
@media (min-width:1024px) and (min-height:560px){
  .sv-motion .sv-ev-film:not(.is-list) .sv-ev-stage{height:100svh}
  .sv-ev-skip{top:calc(var(--sv-header-h) + 12px)}
  .sv-ev-window > .sv-chip--ai{bottom:24px}
  .sv-motion .sv-ev-film:not(.is-list) .sv-ev-rail{display:block;position:absolute;left:24px;top:50%;z-index:1;transform:translateY(-50%)}
  .sv-ev-rail__track{position:absolute;left:5px;top:24px;bottom:24px;width:2px;background:color-mix(in srgb,var(--sv-on-dark) 35%,transparent)}
  .sv-ev-rail__fill,.sv-ev-rail__sun{display:none}
  .sv-ev-rail__list{position:relative}
  .sv-ev-rail__btn{text-shadow:0 1px 6px var(--sv-night)}
  .sv-ev-rail__btn:not(.is-active){color:var(--sv-on-dark)}
  .sv-motion .sv-ev-film:not(.is-list) .sv-ev-chapters{position:absolute;left:max(188px,calc((100vw - var(--sv-max)) / 2 + 24px));bottom:48px;z-index:1;width:440px;padding:0}
  /* ticket-shaped: two notches + a perforation above the button row */
  .sv-motion .sv-ev-film:not(.is-list) .sv-ev-card{padding:28px;-webkit-mask:radial-gradient(circle 10px at 0 calc(100% - 92px),transparent 98%,black) left/51% 100% no-repeat,radial-gradient(circle 10px at 100% calc(100% - 92px),transparent 98%,black) right/51% 100% no-repeat;mask:radial-gradient(circle 10px at 0 calc(100% - 92px),transparent 98%,black) left/51% 100% no-repeat,radial-gradient(circle 10px at 100% calc(100% - 92px),transparent 98%,black) right/51% 100% no-repeat}
  .sv-motion .sv-ev-film:not(.is-list) .sv-ev-card::after{content:"";position:absolute;left:16px;right:16px;bottom:92px;border-top:1.5px dashed var(--sv-line-dark)}
  .sv-motion .sv-ev-film:not(.is-list) .sv-ev-card > .sv-ticket{margin-bottom:20px}
  .sv-motion .sv-ev-film:not(.is-list) .sv-ev-card__link{display:inline-flex}
  /* fix round 1: the last frame fades into night at the stage's bottom edge, so the night stage below starts without a
     straight photo cut (in the window's own overlay: the AI chip and the progress line stay on top) */
  .sv-motion .sv-ev-film:not(.is-list) .sv-ev-window::after{background:linear-gradient(transparent calc(100% - 160px),var(--sv-night)),var(--sv-scrim),linear-gradient(to right,var(--sv-ev-veil),transparent 45%)}
}
@media (max-width:1023px) and (min-height:560px){
  .sv-motion .sv-ev-film:not(.is-list){height:260svh}
  .sv-motion .sv-ev-film:not(.is-list) .sv-ev-stage{display:flex;flex-direction:column}
  .sv-motion .sv-ev-film:not(.is-list) .sv-ev-window{position:relative;flex:1 1 auto;min-height:200px}
  .sv-ev-poster img{object-position:50% 55%}
  .sv-ev-canvas{transform-origin:50% 55%}
  .sv-ev-bird ~ .sv-ev-bird{display:none}
  /* the sun progress bar under the window, with the four words */
  .sv-motion .sv-ev-film:not(.is-list) .sv-ev-rail{display:block;flex:none;padding:12px var(--sv-gutter) 0}
  .sv-ev-rail__track{position:relative;height:2px;margin:0 12.5%;overflow:visible;background:color-mix(in srgb,var(--sv-on-dark) 25%,transparent)}
  .sv-ev-rail__fill{position:absolute;inset:0;background:var(--sv-sun);transform:scaleX(var(--sv-ev-p,0));transform-origin:0 50%}
  .sv-ev-rail__sun{position:absolute;left:0;top:0;width:100%;transform:translateX(calc(var(--sv-ev-p,0) * 100%))}
  .sv-ev-rail__sun::before{content:"";position:absolute;left:-7px;top:-6px;width:14px;height:14px;border-radius:50%;background:var(--sv-sun);box-shadow:0 0 0 4px color-mix(in srgb,var(--sv-sun) 25%,transparent)}
  .sv-ev-rail__list{display:grid;grid-template-columns:repeat(4,minmax(0,1fr))}
  .sv-ev-rail__btn{justify-content:center;min-height:48px;font-size:.75rem;text-align:center}
  .sv-ev-rail__dot{display:none}
  .sv-motion .sv-ev-film:not(.is-list) .sv-ev-chapters{display:grid;flex:none;padding:4px var(--sv-gutter) 16px}
  .sv-motion .sv-ev-film:not(.is-list) .sv-ev-card{padding:0;border-radius:0;background:none;box-shadow:none;overflow:visible}
  .sv-motion .sv-ev-film:not(.is-list) .sv-ev-card .sv-eyebrow{font-size:.75rem}
  .sv-motion .sv-ev-film:not(.is-list) .sv-ev-card > .sv-ev-cta{grid-column:1/-1;justify-self:stretch;--sv-btn-h:52px}
  /* the price as one inline sun chip */
  .sv-motion .sv-ev-film:not(.is-list) .sv-ev-card .sv-ticket{-webkit-mask:none;mask:none;border-radius:6px;box-shadow:none;background:var(--sv-sun);color:var(--sv-night)}
  .sv-motion .sv-ev-film:not(.is-list) .sv-ev-card .sv-ticket--info{background:var(--sv-night-2);color:var(--sv-on-dark)}
  .sv-motion .sv-ev-film:not(.is-list) .sv-ev-card .sv-ticket__body{flex-direction:row;align-items:baseline;flex-wrap:wrap;gap:0 6px;padding:5px 10px}
  .sv-motion .sv-ev-film:not(.is-list) .sv-ev-card .sv-ticket__price{font:700 .9375rem/1.25 var(--sv-font-text);color:inherit}
  .sv-motion .sv-ev-film:not(.is-list) .sv-ev-card .sv-ticket__stub{flex:none;padding:0 10px;background:none;border-left:1px dashed currentColor;color:inherit;font-size:.75rem;writing-mode:horizontal-tb}
}

/* ---------- night stage ---------- */
.sv-ev-night{position:relative}
.sv-ev-night__inner{position:relative;z-index:1;padding-block:var(--sv-section-pad)}
.sv-ev-night__head{max-width:var(--sv-text-max);margin-bottom:clamp(32px,5vw,48px)}
.sv-ev-night__head .sv-lead{margin-top:16px}
.sv-ev-backdrop,.sv-ev-backdrop__bird{display:none}
@media (min-width:1024px){
  /* sticky for the whole night stage; the content is pulled up over it (a negative margin on the backdrop itself
     would let the sticky box run 100svh past the end of the stage, over the dawn band) */
  .sv-ev-backdrop{display:block;position:sticky;top:0;height:100svh;overflow:hidden;pointer-events:none}
  .sv-ev-backdrop + .sv-ev-night__inner{margin-top:-100svh}
  .sv-ev-backdrop picture,.sv-ev-backdrop img{width:100%;height:100%;object-fit:cover}
  .sv-ev-backdrop::after{content:"";position:absolute;inset:0;background:var(--sv-night);opacity:.55}
  .sv-js .sv-ev-backdrop__bird{display:block;position:absolute;left:18%;top:16%;z-index:1;width:56px;color:var(--sv-on-dark);opacity:.3}
  .sv-js .sv-ev-backdrop__bird + .sv-ev-backdrop__bird{left:64%;top:27%;width:38px}
  /* fix round 1: both ends of the dimmed backdrop fade into night (no straight photo edge after the film, before the
     dawn band or the closing band) */
  .sv-ev-night::before,.sv-ev-night::after{content:"";position:absolute;left:0;right:0;z-index:1;pointer-events:none}
  .sv-ev-night::before{top:0;height:200px;background:linear-gradient(var(--sv-night),transparent)}
  .sv-ev-night::after{bottom:0;height:240px;background:linear-gradient(transparent,var(--sv-night))}
  .sv-ev-night__inner{z-index:2}
}
/* fix round 1 (WCAG 2.2.2): the two backdrop birds drift with the scroll through the night stage instead of a 40 s
   endless loop; without scroll timelines they stay still at their places */
@supports (animation-timeline:view()){
  @media (min-width:1024px){
    .sv-ev-night{view-timeline-name:--sv-ev-night}
    .sv-motion .sv-ev-backdrop__bird{left:0;animation:sv-ev-drift linear both;animation-timeline:--sv-ev-night}
    .sv-motion .sv-ev-backdrop__bird + .sv-ev-backdrop__bird{left:0;animation-name:sv-ev-drift-b}
  }
}
@keyframes sv-ev-drift{from{transform:translate3d(-10vw,0,0)}50%{transform:translate3d(50vw,3vh,0)}to{transform:translate3d(110vw,0,0)}}
@keyframes sv-ev-drift-b{from{transform:translate3d(30vw,6vh,0)}to{transform:translate3d(108vw,2vh,0)}}

/* ---------- featured card + night cards (self-contained night colours) ---------- */
.sv-ev-featured,.sv-ev-nightcard{position:relative;display:flex;flex-direction:column;border-radius:var(--sv-r-night);background:var(--sv-night-2);color:var(--sv-on-dark);box-shadow:var(--sv-shadow-night);overflow:hidden}
.sv-ev-featured .sv-stamp,.sv-ev-nightcard .sv-stamp{color:var(--sv-lime)}
.sv-ev-media{position:relative;overflow:hidden;background:var(--sv-night)}
.sv-ev-media picture,.sv-ev-media img{width:100%;height:100%;object-fit:cover}
.sv-ev-nightcard .sv-ev-media{aspect-ratio:4/3}
.sv-ev-media--fulmar{display:grid;place-items:center;color:var(--sv-on-dark)}
.sv-ev-media--fulmar .sv-fulmar{width:min(160px,40%);opacity:.85}
.sv-ev-body{display:flex;flex:1;flex-direction:column;align-items:flex-start;gap:12px;padding:clamp(24px,3.5vw,44px)}
.sv-ev-body > *{margin:0}
.sv-ev-body > .sv-ev-cta{margin-top:auto}
.sv-ev-body > .sv-ticket{margin-bottom:6px}
@media (min-width:600px){.sv-ev-featured{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));align-items:center}.sv-ev-featured .sv-ev-media{align-self:stretch}}
@media (min-width:1024px){
  .sv-ev-featured{grid-template-columns:7fr 5fr}
  .sv-ev-deck .sv-ev-nightcard{display:grid;grid-template-columns:7fr 5fr;align-items:center}
  .sv-ev-deck .sv-ev-media{width:100%}
  .sv-ev-deck.is-stack .sv-ev-media{align-self:stretch;height:100%}
}
.sv-ev-loop{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:0;pointer-events:none;transition:opacity .4s var(--sv-ease)}
.sv-ev-loop.is-playing{opacity:1}
.sv-ev-playonce{position:absolute;top:14px;right:14px;z-index:2;display:inline-flex;align-items:center;gap:6px;min-height:48px;padding:0 16px 0 12px;border-radius:var(--sv-r-pill);background:var(--sv-ev-veil,color-mix(in srgb,var(--sv-night) 78%,transparent));color:var(--sv-on-dark);font:600 .875rem/1.1 var(--sv-font-text)}
.sv-ev-playonce .sv-icon{width:20px;height:20px}
.sv-ev-playonce[aria-disabled="true"]{opacity:.6}

/* ---------- deck: swipe row < 1024 px, list or sticky stack >= 1024 px ---------- */
.sv-ev-deck{margin-top:clamp(32px,5vw,64px)}
@media (max-width:1023px){
  .sv-ev-deck{display:flex;gap:12px;margin-inline:calc(-1 * var(--sv-gutter));padding:6px var(--sv-gutter) 18px;overflow-x:auto;scroll-snap-type:x mandatory;scroll-padding-inline:var(--sv-gutter);overscroll-behavior-x:contain;scrollbar-width:none}
  .sv-ev-deck::-webkit-scrollbar{display:none}
  .sv-ev-deck > *{flex:0 0 min(84vw,440px);scroll-snap-align:start;transition:transform .2s var(--sv-ease)}
  .sv-motion:not(.sv-lite) .sv-ev-deck > .is-active{transform:translateY(-4px)}
  /* fix round 1: the cards to the right of the first one render, and fetch their image, only when they come near */
  .sv-ev-deck > :nth-child(n+2) .sv-ev-media{content-visibility:auto}
}
@media (min-width:1024px){
  .sv-ev-deck{display:grid;gap:24px;max-width:calc(var(--sv-max) * 10 / 12);margin-inline:auto}
  .sv-ev-swipe{display:none!important}
  .sv-ev-deck.is-stack{display:block}
  .sv-ev-deck.is-stack > *{position:sticky;top:calc(96px + var(--sv-ev-i,0) * 16px);height:min(70svh,620px);margin-bottom:24px;transform:scale(calc(1 - .08 * var(--sv-ev-cover,0)));transform-origin:50% 0}
  .sv-ev-deck.is-stack > *::after{content:"";position:absolute;inset:0;background:var(--sv-night);opacity:calc(.5 * var(--sv-ev-cover,0));pointer-events:none}
  .sv-ev-deck.is-stack::after{content:"";display:block;height:30svh}
  .sv-ev-deck.is-stack .sv-ev-media img{transform:translateY(var(--sv-ev-par,0%)) scale(1.14)}
  .sv-ev-deck.is-stack > .sv-ev-nightcard--souvenir{height:min(44svh,380px)} /* one bird + two lines: no 620 px of empty night */
}
.sv-ev-swipe{display:grid;justify-items:center;gap:2px}
.sv-ev-dots{display:flex;justify-content:center;width:100%;max-width:100%}
.sv-ev-dot{display:grid;place-items:center;flex:0 1 48px;min-width:30px;height:48px}
.sv-ev-dot::before{content:"";width:8px;height:8px;border-radius:50%;background:var(--sv-mist);opacity:.45}
.sv-ev-dot[aria-current="true"]::before{background:var(--sv-lime);opacity:1}
@media (forced-colors:active){.sv-ev-dot::before{forced-color-adjust:none;background:CanvasText;opacity:1}.sv-ev-dot[aria-current="true"]::before{background:Highlight;width:12px;height:12px}}
.sv-ev-count{color:var(--sv-mist);font:600 .875rem/1.4 var(--sv-font-text)}
.sv-ev-count__n{margin-right:.75em;color:var(--sv-on-dark);font-feature-settings:"tnum"}
.sv-ev-count__n:empty{display:none}

/* ---------- Ook voor je eigen feest (/agenda) + /feesten night cards ---------- */
.sv-ev-own-feest,.sv-ev-list,.sv-ev-own{margin-top:clamp(48px,7vw,96px)}
.sv-ev-own-feest > h3,.sv-ev-list > h3{margin-bottom:20px}
.sv-ev-private{display:grid;gap:var(--sv-gap)}
@media (min-width:600px){.sv-ev-private{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (min-width:1024px){.sv-ev-private{grid-template-columns:repeat(4,minmax(0,1fr))}}
.sv-ev-nightcard--compact .sv-ev-body{padding:24px 20px}
.sv-ev-nightcard--compact .sv-ev-cta{width:100%;padding:0 14px;white-space:normal}
.sv-ev-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,280px),1fr));gap:var(--sv-gap)}

/* ---------- Binnenkort op datum ---------- */
.sv-ev-list{max-width:820px}
.sv-ev-month{margin:24px 0 10px;color:var(--sv-sun)}
.sv-ev-rows{display:grid;gap:8px}
.sv-ev-row{display:flex;flex-wrap:wrap;align-items:center;gap:8px 16px;padding:16px 20px;border-radius:var(--sv-r-card);background:var(--sv-night-2)}
.sv-ev-row .sv-stamp{min-width:7.5em}
.sv-ev-row__title{flex:1 1 12em;font:600 1.125rem/1.3 var(--sv-font-head)}
.sv-ev-row__time,.sv-ev-row__price{color:var(--sv-mist);font-feature-settings:"tnum"}
.sv-ev-row > .sv-btn{margin-left:auto}
.sv-ev-empty{padding:clamp(20px,3vw,32px);border:1px solid var(--sv-line-dark);border-radius:var(--sv-r-card);background:var(--sv-night-2)} /* fix round 1: own fill, readable over any backdrop */
.sv-ev-empty p{max-width:56ch;color:var(--sv-mist)}
.sv-ev-empty__actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:20px}

/* ---------- Jouw eigen avond (21:9 + overlay on desktop; 4:5 + text below on phones) ---------- */
.sv-ev-own{position:relative;border-radius:var(--sv-r-night);background:var(--sv-night-2);overflow:hidden}
.sv-ev-own__text{display:grid;justify-items:start;gap:12px;padding:24px}
.sv-ev-own__text > *{margin:0}
.sv-ev-own__text p{max-width:44ch}
@media (min-width:1024px){
  .sv-ev-own__media::after{content:"";position:absolute;inset:0;background:var(--sv-scrim),linear-gradient(to right,var(--sv-ev-veil,color-mix(in srgb,var(--sv-night) 70%,transparent)),transparent 60%);pointer-events:none}
  .sv-ev-own__media > .sv-chip--ai{left:auto;right:14px}
  .sv-ev-own__text{position:absolute;left:0;bottom:0;z-index:1;max-width:600px;padding:48px}
}

/* ---------- dawn band (6.6): night -> sand, text on the light half, no motion ---------- */
.sv-dawn{display:flex;align-items:flex-end;min-height:max(32svh,300px);padding:72px 0 40px;background:linear-gradient(var(--sv-night),var(--sv-night-2) 15%,var(--sv-sand-2) 48%,var(--sv-sand));color:var(--sv-text);text-align:center}
.sv-dawn__text{max-width:52ch;margin:10px auto 0;color:var(--sv-muted)}
