@font-face{font-family:SpomenSerif;src:url("../fonts/instrument-serif/InstrumentSerif-Regular.ttf") format("truetype");font-style:normal;font-weight:400;font-display:swap}
@font-face{font-family:SpomenSerif;src:url("../fonts/instrument-serif/InstrumentSerif-Italic.ttf") format("truetype");font-style:italic;font-weight:400;font-display:swap}
@font-face{font-family:SpomenSans;src:url("../fonts/manrope/Manrope-Variable.ttf") format("truetype-variations");font-style:normal;font-weight:200 800;font-display:swap}

:root{
  --sp-ink:#07111b;
  --sp-ink-2:#0b1520;
  --sp-ink-3:#101a26;
  --sp-ivory:#f2e9dc;
  --sp-muted:#aeb4bc;
  --sp-dim:#858e99;
  --sp-amber:#d69a72;
  --sp-copper:#c47b55;
  --sp-glow:#e1b38d;
  --sp-wine:#78404a;
  --sp-line:rgb(242 233 220/.14);
  --sp-panel:rgb(255 255 255/.035);
  --sp-ease:cubic-bezier(.22,.61,.36,1);
  --sp-serif:SpomenSerif,"Times New Roman",serif;
  --sp-sans:SpomenSans,Arial,sans-serif;
}

html{color-scheme:dark;scroll-behavior:smooth;background:var(--sp-ink)}
body{margin:0;min-width:320px;background:var(--sp-ink);color:var(--sp-ivory);font-family:var(--sp-sans);text-rendering:optimizeLegibility}
::selection{background:rgb(214 154 114/.28);color:var(--sp-ivory)}
a{color:inherit}
:focus-visible{outline:2px solid var(--sp-glow)!important;outline-offset:4px}

.spomen-site-header{display:flex;align-items:center;justify-content:space-between;gap:24px;min-height:78px;padding:0 clamp(20px,5vw,76px);border-bottom:1px solid var(--sp-line);background:rgb(7 17 27/.86);backdrop-filter:blur(18px);color:var(--sp-ivory)}
.spomen-site-header__brand{font:400 27px/1 var(--sp-serif);letter-spacing:.27em;text-decoration:none}
.spomen-site-header__brand small{display:block;margin-top:7px;color:var(--sp-dim);font:500 8px/1.2 var(--sp-sans);letter-spacing:.25em}
.spomen-site-header__nav{display:flex;align-items:center;gap:clamp(16px,3vw,42px);font-size:11px;letter-spacing:.08em;text-transform:uppercase}
.spomen-site-header__nav a{text-decoration:none;color:var(--sp-muted);transition:color 220ms var(--sp-ease)}
.spomen-site-header__nav a:hover{color:var(--sp-ivory)}
.spomen-site-header__nav .is-primary{padding:11px 18px;border:1px solid rgb(225 179 141/.42);border-radius:999px;color:var(--sp-ivory)}

/* The customer creation, preview and status flow stays functionally unchanged, but
   shares the same dark museum-like material system as the cinematic home. */
html:has(#spomen-create-memory),html:has(#spomen-payment),html:has(.revolut-status){background:var(--sp-ink)}
body:has(#spomen-create-memory),body:has(#spomen-payment),body:has(.revolut-status){background:radial-gradient(circle at 78% 12%,rgb(196 123 85/.09),transparent 30rem),linear-gradient(150deg,var(--sp-ink-2),var(--sp-ink));color:var(--sp-ivory)}
#spomen-create-memory{--memory-cream:transparent;--memory-paper:rgb(255 255 255/.04);--memory-ink:var(--sp-ivory);--memory-muted:var(--sp-muted);--memory-line:var(--sp-line);--memory-wine:var(--sp-glow);--memory-gold:var(--sp-amber);min-height:100vh;background:transparent!important;color:var(--sp-ivory)!important;color-scheme:dark!important;font-family:var(--sp-sans)!important}
#spomen-create-memory .memory-shell{max-width:1280px!important;padding-top:0!important}
#spomen-create-memory .memory-header{min-height:88px;padding:0!important}
#spomen-create-memory .memory-brand{color:var(--sp-ivory)!important;font-family:var(--sp-serif)!important;letter-spacing:.25em!important}
#spomen-create-memory a.memory-brand{text-decoration:none}
#spomen-create-memory .memory-brand small{color:var(--sp-dim)!important}
#spomen-create-memory .memory-intro{padding-block:clamp(44px,7vw,92px) 38px!important}
#spomen-create-memory .memory-intro h1,#spomen-create-memory .date-intro h2,#spomen-create-memory .audio-section h2,#spomen-create-memory .review-heading h2{color:var(--sp-ivory)!important;font-family:var(--sp-serif)!important}
#spomen-create-memory .memory-intro h1 em,#spomen-create-memory .date-intro h2 em{color:var(--sp-glow)!important}
#spomen-create-memory .memory-intro p,#spomen-create-memory .memory-help,#spomen-create-memory .file-limits,#spomen-create-memory .location-note,#spomen-create-memory .content-check-disclosure,#spomen-create-memory .preview-note{color:var(--sp-muted)!important}
#spomen-create-memory .memory-steps{border-color:var(--sp-line)!important}
#spomen-create-memory .memory-step{color:var(--sp-dim)!important}
#spomen-create-memory .memory-step[aria-current=step]{color:var(--sp-ivory)!important;border-bottom-color:var(--sp-amber)!important}
#spomen-create-memory .step-number{border-color:var(--sp-line)!important}
#spomen-create-memory .memory-step[aria-current=step] .step-number{background:var(--sp-amber)!important;border-color:var(--sp-amber)!important;color:var(--sp-ink)!important}
#spomen-create-memory .field-heading label,#spomen-create-memory .field-label,#spomen-create-memory .file-name{color:var(--sp-ivory)!important}
#spomen-create-memory input,#spomen-create-memory textarea,#spomen-create-memory select{color:var(--sp-ivory)!important;color-scheme:dark!important}
#spomen-create-memory .memory-input,#spomen-create-memory .memory-story{border-color:var(--sp-line)!important;background:rgb(255 255 255/.04)!important;box-shadow:inset 0 1px 0 rgb(255 255 255/.025)!important}
#spomen-create-memory .memory-input:focus,#spomen-create-memory .memory-story:focus,#spomen-create-memory select:focus{border-color:rgb(225 179 141/.62)!important;box-shadow:0 0 0 4px rgb(214 154 114/.08)!important}
#spomen-create-memory .memory-input::placeholder,#spomen-create-memory .memory-story::placeholder{color:var(--sp-dim)!important}
#spomen-create-memory .memory-drop{position:relative;min-height:180px!important;border:1px solid rgb(225 179 141/.25)!important;border-radius:16px!important;background:radial-gradient(circle at 50% 0,rgb(214 154 114/.08),transparent 62%),rgb(255 255 255/.025)!important}
#spomen-create-memory .memory-drop::before{content:"↥";display:grid;width:42px;height:42px;margin-bottom:9px;place-items:center;border:1px solid rgb(225 179 141/.35);border-radius:50%;color:var(--sp-glow);font-size:20px}
#spomen-create-memory .drop-caption{color:var(--sp-ivory)!important;font:400 27px/1.15 var(--sp-serif)!important}
#spomen-create-memory .memory-file-trigger,#spomen-create-memory .memory-link-button,#spomen-create-memory .content-check-retry button{color:var(--sp-glow)!important}
#spomen-create-memory .file-ready,#spomen-create-memory .content-check-status,#spomen-create-memory .preview-content-warning{border-color:var(--sp-line)!important;background:var(--sp-panel)!important;color:var(--sp-ivory)!important}
#spomen-create-memory .audio-section,#spomen-create-memory .pane-actions{border-color:var(--sp-line)!important}
#spomen-create-memory .record-button{border-color:rgb(225 179 141/.32)!important;background:var(--sp-panel)!important;color:var(--sp-ivory)!important}
#spomen-create-memory audio{color-scheme:dark!important}
#spomen-create-memory .primary-action{border-color:var(--sp-ivory)!important;background:var(--sp-ivory)!important;color:var(--sp-ink)!important;box-shadow:0 12px 32px -20px rgb(225 179 141/.75)}
#spomen-create-memory .primary-action:hover{border-color:var(--sp-glow)!important;background:var(--sp-glow)!important}
#spomen-create-memory .back-action{color:var(--sp-muted)!important}
#spomen-create-memory .memory-preview-card{border-color:rgb(225 179 141/.23)!important;border-radius:14px!important;background:linear-gradient(155deg,rgb(255 255 255/.055),rgb(255 255 255/.018))!important;box-shadow:0 28px 70px -50px rgb(0 0 0/.9)!important}
#spomen-create-memory .preview-media{background:var(--sp-ink-3)!important}
#spomen-create-memory .preview-empty{background:radial-gradient(circle at 50% 35%,rgb(214 154 114/.1),transparent 60%),var(--sp-ink-3)!important;color:var(--sp-glow)!important}
#spomen-create-memory .preview-empty p,#spomen-create-memory .preview-memory-title{color:var(--sp-ivory)!important}
#spomen-create-memory .preview-memory-story,#spomen-create-memory .preview-memory-place,#spomen-create-memory .preview-bottom p{color:var(--sp-muted)!important}
#spomen-create-memory .preview-bottom{border-color:var(--sp-line)!important}
#spomen-create-memory .memory-calendar{border-color:var(--sp-line)!important;background:rgb(255 255 255/.035)!important;box-shadow:none!important}
#spomen-create-memory .memory-calendar::before,#spomen-create-memory .memory-calendar::after{display:none!important}
#spomen-create-memory .calendar-selection{border-color:var(--sp-line)!important}
#spomen-create-memory .selected-day,#spomen-create-memory .calendar-nav button{color:var(--sp-glow)!important}
#spomen-create-memory .selected-month,#spomen-create-memory .calendar-grid button{color:var(--sp-ivory)!important}
#spomen-create-memory .calendar-grid button:hover:not(:disabled){background:rgb(255 255 255/.06)!important}
#spomen-create-memory .calendar-grid button[aria-pressed=true]{border-color:var(--sp-amber)!important;background:var(--sp-amber)!important;color:var(--sp-ink)!important}
#spomen-create-memory .preview-payment-method{border-color:var(--sp-line)!important;background:var(--sp-panel)!important}
#spomen-create-memory .preview-payment-action{border-color:rgb(225 179 141/.4)!important;background:transparent!important;color:var(--sp-ivory)!important}
#spomen-create-memory .preview-payment-action:hover{background:var(--sp-ivory)!important;color:var(--sp-ink)!important}
#spomen-create-memory .memory-footer{border-color:var(--sp-line)!important;color:var(--sp-dim)!important}

/* Payment and reservation hand-off. */
#spomen-payment{--payment-cream:transparent;--payment-paper:rgb(255 255 255/.04);--payment-ink:var(--sp-ivory);--payment-muted:var(--sp-muted);--payment-line:var(--sp-line);--payment-wine:var(--sp-glow);--payment-gold:var(--sp-amber);min-height:100vh;background:transparent!important;color:var(--sp-ivory)!important;color-scheme:dark!important}
#spomen-payment .payment-header,#spomen-payment .payment-journey,#spomen-payment .payment-footer{border-color:var(--sp-line)!important}
#spomen-payment .payment-brand,#spomen-payment .payment-heading-block h1,#spomen-payment .summary-body h2{color:var(--sp-ivory)!important;font-family:var(--sp-serif)!important}
#spomen-payment .payment-method,#spomen-payment .summary-paper,#spomen-payment .payment-state-card{border-color:var(--sp-line)!important;background:var(--sp-panel)!important;box-shadow:none!important}
#spomen-payment .payment-method.is-selected{border-color:rgb(225 179 141/.5)!important;box-shadow:0 0 0 1px rgb(225 179 141/.12),0 20px 60px -45px rgb(214 154 114/.6)!important}
#spomen-payment .payment-primary{background:var(--sp-ivory)!important;border-color:var(--sp-ivory)!important;color:var(--sp-ink)!important}
#spomen-payment .summary-photo,#spomen-payment .summary-placeholder{background:var(--sp-ink-3)!important}
#spomen-payment .summary-opening,#spomen-payment .reservation-clock{border-color:var(--sp-line)!important;background:rgb(255 255 255/.03)!important}

.revolut-status{min-height:100vh;padding:clamp(24px,5vw,72px);background:radial-gradient(circle at 75% 0,rgb(196 123 85/.1),transparent 34rem),var(--sp-ink);color:var(--sp-ivory);font-family:var(--sp-sans)}
.revolut-status>header{border-color:var(--sp-line)!important}.revolut-status>header a{font-family:var(--sp-serif);letter-spacing:.23em;text-decoration:none}.revolut-paper{border-color:var(--sp-line)!important;background:var(--sp-panel)!important;color:var(--sp-ivory)!important;box-shadow:none!important}

/* Archive overrides keep every existing selector and AJAX behavior intact. */
body:has(#spomen-archive-cream),body:has(.archive-memory){background:var(--sp-ink);color:var(--sp-ivory)}
#spomen-archive-cream{--album-paper:transparent;--album-ink:var(--sp-ivory);--album-wine:var(--sp-glow);--album-muted:var(--sp-muted);--album-rule:var(--sp-line);--album-gold:var(--sp-amber);background:radial-gradient(circle at 85% 8%,rgb(196 123 85/.09),transparent 32rem),linear-gradient(165deg,var(--sp-ink-2),var(--sp-ink))!important;color:var(--sp-ivory)!important;color-scheme:dark}
#spomen-archive-cream .sac-page{width:min(100%,1340px)!important}
#spomen-archive-cream .sac-header{min-height:90px!important}
#spomen-archive-cream .sac-wordmark{color:var(--sp-ivory)!important;letter-spacing:.25em!important}
#spomen-archive-cream .sac-watermark{color:rgb(225 179 141/.045)!important}
#spomen-archive-cream .sac-intro h1,#spomen-archive-cream .sac-calendar-heading h2,#spomen-archive-cream .sac-day-heading h2,#spomen-archive-cream .sac-empty-title{color:var(--sp-ivory)!important;font-family:var(--sp-serif)!important}
#spomen-archive-cream .sac-intro h1 em{color:var(--sp-glow)!important}
#spomen-archive-cream .sac-seal,#spomen-archive-cream .sac-date-number{color:var(--sp-glow)!important}
#spomen-archive-cream .sac-live i{background:var(--sp-amber)!important;box-shadow:0 0 12px rgb(214 154 114/.65)}
#spomen-archive-cream .sac-day{border-radius:7px!important}
#spomen-archive-cream .sac-day:not(.is-future):hover{border-color:rgb(225 179 141/.24)!important;background:rgb(255 255 255/.035)!important}
#spomen-archive-cream .sac-day.is-selected{border-color:var(--sp-glow)!important;background:rgb(214 154 114/.08)!important}
#spomen-archive-cream .sac-day.sac-has-memory i{background:var(--sp-amber)!important;box-shadow:0 0 8px var(--sp-amber)}
#spomen-archive-cream .sac-title-list.archive__memory-list li.is-target{background:rgb(214 154 114/.055)!important}
#spomen-archive-cream .sac-row-title,#spomen-archive-cream .sac-row-title:is(a){color:var(--sp-ivory)!important}
#spomen-archive-cream .sac-leave,#spomen-payment-confirmation .receipt-primary{background:var(--sp-wine)!important;color:var(--sp-ivory)!important}
#spomen-payment-confirmation{--receipt-paper:var(--sp-ink-2);--receipt-ink:var(--sp-ivory);--receipt-muted:var(--sp-muted);--receipt-rule:var(--sp-line);--receipt-bronze:var(--sp-glow);--receipt-wine:var(--sp-glow);--receipt-green:var(--sp-glow);color:var(--sp-ivory)!important}
#spomen-payment-confirmation .receipt-archive-memory,#spomen-payment-confirmation .receipt-memory,#spomen-payment-confirmation dialog.receipt-sheet{border-color:var(--sp-line)!important;background:linear-gradient(155deg,rgb(255 255 255/.05),rgb(255 255 255/.018)),var(--sp-ink-2)!important;color:var(--sp-ivory)!important}
#spomen-payment-confirmation .receipt-locked-content{background:rgb(255 255 255/.035)!important;color:var(--sp-muted)!important}
#spomen-payment-confirmation .receipt-locked-heading{color:var(--sp-ivory)!important}
#spomen-payment-confirmation dialog.receipt-sheet::backdrop{background:rgb(3 8 13/.78)!important}
.archive-memory{min-height:100vh;padding:0 clamp(20px,5vw,76px) 80px;background:radial-gradient(circle at 70% 0,rgb(196 123 85/.08),transparent 34rem),var(--sp-ink);color:var(--sp-ivory)}
.archive-memory .archive__header{border-color:var(--sp-line)!important}.archive-memory .archive__brand{color:var(--sp-ivory)!important}.archive-memory__back{color:var(--sp-glow)!important}.archive-memory__article h1,.archive-memory__article time{color:var(--sp-ivory)!important}.archive-memory__location{color:var(--sp-muted)!important}.archive-memory__visual{background:var(--sp-ink-3)!important}.archive-memory__story{color:var(--sp-ivory)!important}

@media(max-width:700px){
  .spomen-site-header{min-height:68px;padding-inline:18px}.spomen-site-header__brand{font-size:23px}.spomen-site-header__nav{gap:16px}.spomen-site-header__nav a:not(.is-primary){display:none}
  #spomen-create-memory .memory-shell{padding-inline:18px!important}
  #spomen-create-memory .memory-intro{align-items:flex-start!important;padding-top:38px!important}
  #spomen-create-memory .memory-drop{min-height:160px!important}
  #spomen-create-memory .memory-preview-card{border-radius:12px!important}
}

@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation-duration:.001ms!important;animation-iteration-count:1!important;scroll-behavior:auto!important;transition-duration:.001ms!important}}
