/* Fanfara lu' Andrii — stilul site-ului public: negru cald, alamă aurie, scrisul din „Lux discret” (titluri Cormorant Garamond, text Geist). */

/* Scrisul din aspectul „Lux discret” de pe temyro.ro: titluri Cormorant Garamond (serif subțire, 500/600),
   text Geist. Cormorant are literele mici mai scunde decât Playfair: `size-adjust` îl aduce la aceeași înălțime a majusculelor. */
@font-face { font-family: "Cormorant"; font-style: normal; font-display: swap; font-weight: 500; size-adjust: 113%;
  src: url(../fonturi/cormorant-latin-500.woff2) format("woff2");
  unicode-range: U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD; }
@font-face { font-family: "Cormorant"; font-style: normal; font-display: swap; font-weight: 500; size-adjust: 113%;
  src: url(../fonturi/cormorant-latin-ext-500.woff2) format("woff2");
  unicode-range: U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF; }
@font-face { font-family: "Cormorant"; font-style: italic; font-display: swap; font-weight: 500; size-adjust: 113%;
  src: url(../fonturi/cormorant-latin-500-italic.woff2) format("woff2");
  unicode-range: U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD; }
@font-face { font-family: "Cormorant"; font-style: italic; font-display: swap; font-weight: 500; size-adjust: 113%;
  src: url(../fonturi/cormorant-latin-ext-500-italic.woff2) format("woff2");
  unicode-range: U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF; }
@font-face { font-family: "Cormorant"; font-style: normal; font-display: swap; font-weight: 600; size-adjust: 113%;
  src: url(../fonturi/cormorant-latin-600.woff2) format("woff2");
  unicode-range: U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD; }
@font-face { font-family: "Cormorant"; font-style: normal; font-display: swap; font-weight: 600; size-adjust: 113%;
  src: url(../fonturi/cormorant-latin-ext-600.woff2) format("woff2");
  unicode-range: U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF; }
@font-face { font-family: "Cormorant"; font-style: italic; font-display: swap; font-weight: 600; size-adjust: 113%;
  src: url(../fonturi/cormorant-latin-600-italic.woff2) format("woff2");
  unicode-range: U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD; }
@font-face { font-family: "Cormorant"; font-style: italic; font-display: swap; font-weight: 600; size-adjust: 113%;
  src: url(../fonturi/cormorant-latin-ext-600-italic.woff2) format("woff2");
  unicode-range: U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF; }
@font-face { font-family: "Geist"; font-style: normal; font-display: swap; font-weight: 100 900;
  src: url(../fonturi/geist-latin.woff2) format("woff2");
  unicode-range: U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD; }
@font-face { font-family: "Geist"; font-style: normal; font-display: swap; font-weight: 100 900;
  src: url(../fonturi/geist-latin-ext.woff2) format("woff2");
  unicode-range: U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF; }

/* aspectele „Șampanie” (Fraunces) și „Galerie” (Syne), tot de pe temyro.ro: se descarcă doar când sunt alese */
@font-face { font-family: "Fraunces"; font-style: normal; font-display: swap; font-weight: 100 900;
  src: url(../fonturi/fraunces-latin.woff2) format("woff2");
  unicode-range: U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD; }
@font-face { font-family: "Fraunces"; font-style: normal; font-display: swap; font-weight: 100 900;
  src: url(../fonturi/fraunces-latin-ext.woff2) format("woff2");
  unicode-range: U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF; }
@font-face { font-family: "Fraunces"; font-style: italic; font-display: swap; font-weight: 100 900;
  src: url(../fonturi/fraunces-latin-italic.woff2) format("woff2");
  unicode-range: U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD; }
@font-face { font-family: "Fraunces"; font-style: italic; font-display: swap; font-weight: 100 900;
  src: url(../fonturi/fraunces-latin-ext-italic.woff2) format("woff2");
  unicode-range: U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF; }
@font-face { font-family: "Syne"; font-style: normal; font-display: swap; font-weight: 400 800; size-adjust: 92%;
  src: url(../fonturi/syne-latin.woff2) format("woff2");
  unicode-range: U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD; }
@font-face { font-family: "Syne"; font-style: normal; font-display: swap; font-weight: 400 800; size-adjust: 92%;
  src: url(../fonturi/syne-latin-ext.woff2) format("woff2");
  unicode-range: U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF; }
/* „g” și „j” din Syne au forme ciudate (Teodor, 1.10: „pe toată pagina nu se vede g-ul… j-ul”): doar aceste două litere
   vin din Montserrat (OFL, tot geometric și lat), la grosimea și înălțimea literelor Syne din jur. Familie separată,
   pusă înaintea lui Syne în --titlu (Galerie): ea are doar g și j, restul literelor trec mai departe la Syne. */
@font-face { font-family: "Syne GJ"; font-style: normal; font-display: swap; font-weight: 400 599; size-adjust: 89%;
  src: url(../fonturi/montserrat-gj-430.woff2) format("woff2"); unicode-range: U+0067,U+006A; }
@font-face { font-family: "Syne GJ"; font-style: normal; font-display: swap; font-weight: 600 800; size-adjust: 89%;
  src: url(../fonturi/montserrat-gj-600.woff2) format("woff2"); unicode-range: U+0067,U+006A; }

:root {
  /* negrul cald al scenei */
  --negru: #0b0a08;
  --negru-2: #13110d;
  --negru-3: #1b1812;
  --negru-4: #25211a;
  /* alama */
  --aur: #e0b25a;
  --aur-deschis: #f6dea0;
  --aur-inchis: #a8741f;
  --aur-rgb: 224 178 90;
  --aur-linie: rgb(var(--aur-rgb) / .22);
  --aur-linie-2: rgb(var(--aur-rgb) / .4);
  /* aurul din text (titluri, cifre) și cel din butoane: la aspectele deschise sunt diferite (contrast) */
  --aur-gradient: linear-gradient(100deg, #b07a22 0%, #f3d38a 30%, #e0ac48 52%, #fff1c9 70%, #c18a2c 100%);
  --aur-buton: var(--aur-gradient);
  --pe-aur: #1a1206;
  --fundal-rgb: 11 10 8;
  --fundal-2-rgb: 19 17 13;
  /* textul */
  /* textul („Lux discret”: fildeș stins, gri cald) */
  --text: #e8e2d3;
  --text-2: #bfb8a8;
  --text-3: #9b958a;
  --text-rgb: 232 226 211;
  --rosu: #d94a3d;
  --verde: #6fcf8f;
  --verde-text: #d8f5e2;
  --rosu-text: #ff9b8f;
  --rosu-text-2: #ffd6d0;
  --rosu-icon: #ff8a7d;
  --umbra: rgb(0 0 0 / .8);
  --suprafata-seara: #221c12;
  --cadre-fundal: linear-gradient(160deg, #1d1810, #0e0c09 70%);
  --coperta-fundal: #3a2c16;
  --filtru-calendar: invert(.8) sepia(.6) saturate(3) hue-rotate(5deg);
  /* ploaia de instrumente (site.js citește culorile de aici) */
  --ploaie-culori: #fff1c9 #f3d38a #e0ac48 #a8741f;
  --ploaie-umbra: rgb(240 190 90 / .45);
  --font: "Geist", system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;
  --titlu: "Cormorant", Georgia, "Times New Roman", serif;
  /* greutatea titlurilor mari, a celor mici și spațierea literelor (diferă de la un aspect la altul) */
  --titlu-w: 500;
  --titlu-w2: 600;
  --titlu-ls: .02em;
  --lat: 1240px;
  --margine: clamp(18px, 4vw, 40px);
  --antet: 76px;
  --raza: 20px;
  --usor: cubic-bezier(.2, .7, .2, 1);
  color-scheme: dark;
}

*, *::before, *::after { box-sizing: border-box; }
html { -webkit-text-size-adjust: 100%; text-size-adjust: 100%; scroll-padding-top: calc(var(--antet) + 16px); background: var(--negru); }
@media (prefers-reduced-motion: no-preference) { html { scroll-behavior: smooth; } }
body { margin: 0; min-height: 100vh; background: var(--negru); color: var(--text); font: 400 1rem/1.65 var(--font); -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale; overflow-x: hidden; }
/* un strat fin de „grăunțe”, ca pe o fotografie de scenă (amestec normal: „overlay” pe tot ecranul
   se recalcula la fiecare cadru și încetinea derularea pe plăcile video slabe) */
body::before { content: ""; position: fixed; inset: 0; z-index: 1000; pointer-events: none; opacity: .04;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='160' height='160'%3E%3Cfilter id='g'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.85' numOctaves='3' stitchTiles='stitch'/%3E%3CfeColorMatrix values='0 0 0 0 1 0 0 0 0 1 0 0 0 0 1 0 0 0 .55 0'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23g)'/%3E%3C/svg%3E"); }
img, video, canvas, svg { max-width: 100%; }
img { height: auto; }
a { color: var(--aur); text-underline-offset: .18em; text-decoration-thickness: 1px; }
a:hover { color: var(--aur-deschis); }
::selection { background: var(--aur); color: var(--negru); }
:focus-visible { outline: 2px solid var(--aur); outline-offset: 3px; border-radius: 6px; }
h1, h2, h3, h4 { margin: 0 0 .5em; font-family: var(--titlu); font-weight: var(--titlu-w2); line-height: 1.08; letter-spacing: var(--titlu-ls); font-synthesis-weight: none; color: var(--text); text-wrap: balance; }
p { margin: 0 0 1em; }
button { font: inherit; color: inherit; }
main { display: block; outline: none; }
main:focus { outline: none; }

.i { width: 1.2em; height: 1.2em; flex: none; fill: none; stroke: currentColor; stroke-width: 1.6; stroke-linecap: round; stroke-linejoin: round; vertical-align: -.2em; }
.ascuns { position: absolute !important; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; border: 0; }
.lat { width: 100%; max-width: calc(var(--lat) + 2 * var(--margine)); margin: 0 auto; padding: 0 var(--margine); }
.lat.ingust { max-width: calc(820px + 2 * var(--margine)); }
.lat.mediu { max-width: calc(1040px + 2 * var(--margine)); }
.text-centru { text-align: center; }
.numar { display: inline-block; min-width: 1.7em; padding: 0 .5em; border-radius: 999px; background: var(--negru-4); color: var(--text-2); font: 700 .72em/1.9 var(--font); text-align: center; letter-spacing: 0; vertical-align: .15em; }
.ajutor { color: var(--text-3); font-size: .9rem; }
.ajutor-mare { color: var(--text-2); font-size: 1.02rem; max-width: 52ch; }
.sari-la-continut { position: fixed; top: 10px; left: 10px; z-index: 2000; padding: 10px 16px; border-radius: 999px; background: var(--aur); color: var(--negru); font-weight: 700; transform: translateY(-160%); transition: transform .2s; }
.sari-la-continut:focus { transform: none; color: var(--negru); }

/* ---------- tipografie ---------- */
.titlu-urias { font-size: clamp(2.6rem, 1.4rem + 5vw, 6rem); font-weight: var(--titlu-w); line-height: 1.02; letter-spacing: var(--titlu-ls); }
.titlu-mare { font-size: clamp(2.1rem, 1.3rem + 3.2vw, 4rem); font-weight: var(--titlu-w); letter-spacing: var(--titlu-ls); }
.titlu-mediu { font-size: clamp(1.7rem, 1.2rem + 1.8vw, 2.6rem); font-weight: var(--titlu-w); letter-spacing: var(--titlu-ls); }
.titlu-urias em, .titlu-mare em, .titlu-mediu em, .film-nume .fn-andrii, .bc-text em, .text-auriu {
  font-style: italic; font-weight: var(--titlu-w); background: var(--aur-gradient); background-size: 220% 100%; -webkit-background-clip: text; background-clip: text; color: transparent; -webkit-text-fill-color: transparent;
  padding: 0 .06em .04em 0; }
@media (prefers-reduced-motion: no-preference) {
  /* de câteva ori și gata (dus-întors); sloganul o pornește când apare (site.js). Din `filter`, nu din
     background-position: o face placa video, fără să repicteze textul (PageSpeed, „animații necompuse”, 1.10) */
  .titlu-urias em, .film-nume .fn-andrii, .film-slogan.straluceste { animation: stralucire 2.8s ease-in-out 4 alternate; }
}
@keyframes stralucire { from { filter: brightness(1); } to { filter: brightness(1.38); } }
.eticheta-sectiune { display: inline-flex; align-items: center; gap: 12px; margin: 0 0 18px; font: 700 .72rem/1.2 var(--font); letter-spacing: .26em; text-transform: uppercase; color: var(--aur); }
.eticheta-sectiune::before { content: ""; width: 34px; height: 1px; background: currentColor; opacity: .7; }
.cap-centru .eticheta-sectiune::after { content: ""; width: 34px; height: 1px; background: currentColor; opacity: .7; }
.lead { font-size: clamp(1.12rem, 1rem + .5vw, 1.4rem); line-height: 1.55; color: var(--text-2); max-width: 40ch; }
.text-mare { font-size: clamp(1.04rem, .98rem + .3vw, 1.2rem); line-height: 1.7; color: var(--text-2); max-width: 58ch; }
.text-centru .text-mare, .cap-centru .text-mare, .text-mare.text-centru { margin-left: auto; margin-right: auto; }
.text-lung p { margin-bottom: 1.2em; }
.text-lung p:last-child { margin-bottom: 0; }

/* ---------- butoane ---------- */
.buton { --b-bg: var(--negru-3); --b-text: var(--text); --b-linie: var(--aur-linie-2);
  display: inline-flex; align-items: center; justify-content: center; gap: .6em; min-height: 50px; padding: .8em 1.6em; border: 1px solid var(--b-linie); border-radius: 999px;
  background: var(--b-bg); color: var(--b-text); font: 700 .8rem/1.2 var(--font); letter-spacing: .12em; text-transform: uppercase; text-decoration: none; cursor: pointer;
  transition: transform .25s var(--usor), box-shadow .25s var(--usor), background .25s, color .25s, border-color .25s; }
.buton:hover { color: var(--b-text); transform: translateY(-2px); }
.buton:active { transform: none; }
.buton .i { width: 1.25em; height: 1.25em; }
.buton-auriu { --b-bg: var(--aur-buton); --b-text: var(--pe-aur); --b-linie: transparent; background: var(--b-bg); background-size: 200% 100%; background-position: 20% 50%; box-shadow: 0 10px 30px -12px rgb(var(--aur-rgb) / .55), inset 0 1px 0 rgb(255 255 255 / .45); }
.buton-auriu:hover { background-position: 80% 50%; box-shadow: 0 16px 38px -12px rgb(var(--aur-rgb) / .7), inset 0 1px 0 rgb(255 255 255 / .5); }
.buton-contur { --b-bg: transparent; --b-text: var(--aur-deschis); }
.buton-contur:hover { --b-bg: rgb(var(--aur-rgb) / .1); border-color: var(--aur); }
.buton-mic { min-height: 40px; padding: .6em 1.1em; font-size: .7rem; }
.buton-mare { min-height: 60px; padding: 1em 2em; font-size: .86rem; }
.buton-lat { width: 100%; }
.butoane { display: flex; flex-wrap: wrap; gap: 12px; margin-top: 28px; }
.butoane-centru { justify-content: center; align-items: center; }
.link-sageata { display: inline-flex; align-items: center; gap: .5em; padding: 6px 0; border-bottom: 1px solid var(--aur-linie-2); color: var(--aur-deschis); font: 700 .78rem/1.2 var(--font); letter-spacing: .16em; text-transform: uppercase; text-decoration: none; }
.link-sageata .i { transition: transform .25s var(--usor); }
.link-sageata:hover { border-color: var(--aur); }
.link-sageata:hover .i { transform: translateX(4px); }

/* ---------- sigla ---------- */
.sigla { display: inline-flex; align-items: center; gap: 10px; color: var(--text); white-space: nowrap; }
/* emblema din sigla fanfarei (FA în hexagon), colorată prin mască: aurie, neagră sau argintie, după aspect */
.sigla-embl, .sigla-completa { display: block; flex: none; background: currentColor; color: var(--aur);
  -webkit-mask: url(../img/sigla-emblema.svg) center / contain no-repeat; mask: url(../img/sigla-emblema.svg) center / contain no-repeat; }
.sigla-embl { width: 38px; height: 43px; }
.sigla-completa { width: min(230px, 64vw); aspect-ratio: 3724 / 3372; -webkit-mask-image: url(../img/sigla-completa.svg); mask-image: url(../img/sigla-completa.svg); }
.sigla-text { font-family: var(--titlu); font-size: 1.3rem; font-weight: var(--titlu-w2); line-height: 1; letter-spacing: var(--titlu-ls); }
.sigla-fanfara { font-weight: var(--titlu-w2); }
.sigla-nume { font-style: italic; font-weight: var(--titlu-w2); color: var(--aur); }
.sigla-mare .sigla-embl { width: 46px; height: 52px; }
.sigla-mare .sigla-text { font-size: min(1.8rem, 7.2vw); }

/* ---------- antet ---------- */
.antet { position: fixed; top: 0; left: 0; right: 0; z-index: 100; height: var(--antet); transition: background .35s, box-shadow .35s, transform .35s var(--usor); }
.antet::after { content: ""; position: absolute; left: 0; right: 0; bottom: 0; height: 1px; background: linear-gradient(90deg, transparent, var(--aur-linie), transparent); opacity: 0; transition: opacity .35s; }
/* plin, fără transparență: înainte (86% + blur) textele mari de sub antet se vedeau prin el, încețoșate, peste sigla
   „Fanfara lu' Andrii” (Teodor, 1.10, pe iPhone: „unele texte nu se văd bine… se suprapun”) */
.antet.solid { background: rgb(var(--fundal-rgb)); box-shadow: 0 10px 30px -20px var(--umbra); }
.antet.solid::after { opacity: 1; }
.antet-in { display: flex; align-items: center; gap: 24px; height: 100%; }
.antet-sigla { text-decoration: none; margin-right: auto; }
.antet-sigla:hover .sigla-embl { transform: rotate(-6deg) scale(1.05); }
.sigla-embl { transition: transform .4s var(--usor); }
.antet-nav ul { display: flex; gap: 4px; margin: 0; padding: 0; list-style: none; }
.antet-nav a { position: relative; display: block; padding: 10px 12px; color: var(--text); font: 600 .84rem/1 var(--font); letter-spacing: .02em; text-decoration: none; white-space: nowrap; }
.antet-nav a::after { content: ""; position: absolute; left: 12px; right: 12px; bottom: 3px; height: 1px; background: var(--aur); transform: scaleX(0); transform-origin: left; transition: transform .3s var(--usor); }
.antet-nav a:hover { color: var(--aur-deschis); }
.antet-nav a:hover::after, .antet-nav a[aria-current="page"]::after { transform: scaleX(1); }
.antet-nav a[aria-current="page"] { color: var(--aur-deschis); }
.antet-meniu-buton { display: none; align-items: center; justify-content: center; width: 46px; height: 46px; padding: 0; border: 1px solid var(--aur-linie-2); border-radius: 50%; background: rgb(var(--fundal-rgb) / .5); color: var(--text); cursor: pointer; }
.antet-meniu-buton .i { width: 22px; height: 22px; }
.pag-acasa .antet:not(.solid) { background: linear-gradient(180deg, rgb(0 0 0 / .55), transparent); }

.meniu-telefon { position: fixed; inset: 0; z-index: 99; display: flex; flex-direction: column; justify-content: space-between; padding: calc(var(--antet) + 24px) var(--margine) max(28px, env(safe-area-inset-bottom)); background: radial-gradient(120% 70% at 80% 0%, rgb(var(--aur-rgb) / .12), transparent 60%), var(--negru); overflow-y: auto; }
.meniu-telefon[hidden] { display: none; }
.meniu-telefon ul { margin: 0; padding: 0; list-style: none; }
.meniu-telefon li { border-bottom: 1px solid var(--aur-linie); }
.meniu-telefon nav a { display: block; padding: 13px 0; color: var(--text); font: var(--titlu-w) clamp(1.3rem, 5.4vw, 1.75rem)/1.15 var(--titlu); letter-spacing: var(--titlu-ls); text-decoration: none; }
.meniu-telefon nav a[aria-current="page"] { color: var(--aur); font-style: italic; }
.meniu-jos { display: grid; gap: 12px; margin-top: 32px; }
body.meniu-deschis { overflow: hidden; }

/* ---------- secțiuni ---------- */
.sectiune { position: relative; padding: clamp(72px, 10vw, 140px) 0; }
.sectiune + .sectiune { padding-top: clamp(24px, 4vw, 60px); }
.sectiune-inchisa { background: var(--negru-2); border-top: 1px solid var(--aur-linie); border-bottom: 1px solid var(--aur-linie); }
.sectiune + .sectiune-inchisa, .sectiune-inchisa + .sectiune { padding-top: clamp(72px, 10vw, 140px); }
.cap-sectiune { margin-bottom: clamp(36px, 5vw, 64px); }
.cap-sectiune .text-mare { margin-bottom: 0; }
.cap-centru { text-align: center; }
.cap-rand { display: flex; align-items: flex-end; justify-content: space-between; gap: 24px; flex-wrap: wrap; }
.dor-ornament { display: flex; justify-content: center; margin-bottom: 24px; color: var(--aur); }
.dor-ornament .i { width: 54px; height: 54px; stroke-width: 1.1; }

/* ---------- filmul de sus (assets/js/film.js) ---------- */
/* fără JavaScript sau cu „mișcare redusă”: un prim ecran static cu poza, numele și sloganul */
.film { position: relative; }
.film.film-activ { height: 560vh; }
.film-scena { position: sticky; top: 0; height: 100vh; height: 100svh; min-height: 560px; overflow: hidden; }
.film-straturi, .film-layer { position: absolute; inset: 0; margin: 0; }
/* fundalul scenei stă cu imaginea: în ultimele 2 secunde se sting împreună și rămâne fundalul paginii (film.ts) */
.film-straturi { background: radial-gradient(90% 70% at 50% 40%, #2a2114 0%, var(--negru) 70%); }
.film-layer { opacity: 0; will-change: opacity; }
.film-layer:first-child { opacity: 1; }
.film-poster, .film-clip { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; object-position: 50% 50%; }
.film-clip { opacity: 0; transition: opacity .24s ease-out; }
.film-layer[data-painted] .film-clip { opacity: 1; }
.film-umbra { position: absolute; inset: 0; pointer-events: none; opacity: 0; }
.film-umbra-sus { opacity: 1; background: linear-gradient(180deg, rgb(0 0 0 / .5) 0%, transparent 22%); }
.film-umbra-mijloc { opacity: 1; background: radial-gradient(ellipse 80% 70% at 50% 52%, rgb(0 0 0 / .72) 0%, rgb(0 0 0 / .45) 55%, rgb(0 0 0 / .18) 100%); }
.film-umbra-jos { background: linear-gradient(180deg, transparent 45%, rgb(0 0 0 / .75) 100%); }
.film-intro { position: absolute; inset: 0; display: flex; flex-direction: column; align-items: center; justify-content: center; padding: calc(var(--antet) + 10px) var(--margine) 80px; text-align: center; }
/* sloganul, imediat sub film */
.slogan { position: relative; padding: clamp(64px, 9vw, 120px) 0 clamp(40px, 6vw, 80px); text-align: center; background: radial-gradient(60% 80% at 50% 0%, rgb(var(--aur-rgb) / .14), transparent 70%); }
.slogan::before { content: ""; position: absolute; left: 0; right: 0; top: 0; height: 1px; background: linear-gradient(90deg, transparent, var(--aur-linie-2), transparent); }
.slogan-in { display: flex; flex-direction: column; align-items: center; }
.slogan .film-slogan { margin-left: auto; margin-right: auto; filter: none; }
.film-intro .supratitlu { margin: 0 0 18px; font: 700 clamp(.64rem, .56rem + .3vw, .8rem)/1.3 var(--font); letter-spacing: .32em; text-transform: uppercase; color: var(--aur-deschis); text-shadow: 0 1px 12px rgb(0 0 0 / .8); }
.film-nume { display: flex; flex-direction: column; align-items: center; margin: 0; font-size: clamp(3.4rem, 1.6rem + 8vw, 9.5rem); font-weight: var(--titlu-w); line-height: .92; letter-spacing: var(--titlu-ls); text-shadow: 0 6px 40px rgb(0 0 0 / .5); }
.fn-fanfara { font-weight: var(--titlu-w2); color: var(--text); }
.film-nume .fn-andrii { font-size: .72em; margin-top: .02em; text-shadow: none; filter: drop-shadow(0 4px 24px rgb(0 0 0 / .6)); }
.film-indiciu { position: absolute; left: 50%; bottom: 26px; display: flex; flex-direction: column; align-items: center; gap: 8px; margin: 0; transform: translateX(-50%); font: 700 .62rem/1 var(--font); letter-spacing: .3em; text-transform: uppercase; color: rgb(255 255 255 / .85); }
.film-indiciu .i { width: 26px; height: 26px; color: var(--aur); }
@media (prefers-reduced-motion: no-preference) { .film-indiciu .i { animation: indiciu 1.8s ease-in-out infinite; } }
@keyframes indiciu { 0%, 100% { transform: translateY(0); } 50% { transform: translateY(6px); } }
.film-slogan { max-width: 17ch; margin: 0 0 clamp(26px, 4vh, 44px); font: italic var(--titlu-w) clamp(2.2rem, 1.2rem + 4.2vw, 5.4rem)/1.05 var(--titlu); letter-spacing: var(--titlu-ls);
  background: var(--aur-gradient); background-size: 220% 100%; -webkit-background-clip: text; background-clip: text; color: transparent; -webkit-text-fill-color: transparent; filter: drop-shadow(0 4px 30px rgb(0 0 0 / .65)); text-wrap: balance; }
.ghilimea { font-weight: 400; opacity: .8; }
.film-sari { position: absolute; right: var(--margine); bottom: 20px; display: none; padding: 9px 14px; border-radius: 999px; background: rgb(0 0 0 / .45); color: var(--text-2); font: 700 .62rem/1 var(--font); letter-spacing: .16em; text-transform: uppercase; text-decoration: none; }
.film-sari:hover { color: var(--aur-deschis); }
.film-activ .film-sari { display: inline-block; }
/* butonul de sunet (film-sursa/sunet.ts): bare care „cântă” cât merge muzica */
.film-sunet { position: absolute; left: var(--margine); bottom: 16px; z-index: 5; display: none; align-items: center; gap: 10px; min-height: 44px; padding: 8px 16px 8px 12px; border: 1px solid var(--aur-linie-2); border-radius: 999px; background: rgb(var(--fundal-rgb) / .55); backdrop-filter: blur(8px); -webkit-backdrop-filter: blur(8px); color: var(--aur-deschis); font: 700 .66rem/1 var(--font); letter-spacing: .16em; text-transform: uppercase; cursor: pointer; transition: border-color .3s, background .3s; }
.film-sunet:hover { border-color: var(--aur); background: rgb(var(--fundal-rgb) / .75); }
.film-activ .film-sunet { display: inline-flex; }
.fs-bare { display: inline-flex; align-items: flex-end; gap: 2px; width: 16px; height: 14px; }
.fs-bare i { flex: 1; height: 30%; border-radius: 1px; background: currentColor; transition: height .3s; }
.film-sunet.canta .fs-bare i { height: 100%; transform-origin: bottom; }
@media (prefers-reduced-motion: no-preference) {
  .film-sunet.canta .fs-bare i { animation: egalizator .9s ease-in-out infinite alternate; }
  .film-sunet.canta .fs-bare i:nth-child(2) { animation-delay: -.3s; animation-duration: .7s; }
  .film-sunet.canta .fs-bare i:nth-child(3) { animation-delay: -.6s; animation-duration: 1.1s; }
  .film-sunet.canta .fs-bare i:nth-child(4) { animation-delay: -.15s; animation-duration: .8s; }
  /* chemarea butonului: un inel (::after) care apare și dispare din opacity, nu box-shadow animat */
  .film-sunet::after { content: ""; position: absolute; inset: -1px; border-radius: inherit; box-shadow: 0 0 0 8px rgb(var(--aur-rgb) / .18); opacity: 0; pointer-events: none; }
  .film-sunet:not(.canta)::after { animation: cheama 2.6s ease-in-out 1.5s 3; }
  /* pe iPhone, după o tragere cu degetul fără sunet (sunet.ts): o chemare mai vizibilă */
  .film-sunet.cheama-iar:not(.canta)::after { box-shadow: 0 0 0 10px rgb(var(--aur-rgb) / .32), inset 0 0 0 1px var(--aur); animation: cheama 1.1s ease-in-out 0s 3; }
}
@keyframes egalizator { from { transform: scaleY(.25); } to { transform: scaleY(1); } }
@keyframes cheama { 0%, 100% { opacity: 0; } 50% { opacity: 1; } }
.film:not(.film-activ) .film-indiciu { display: none; }



/* filmările care rulează singure, fără sunet, peste copertă (în locul butonului de play, 1.10): apar lin abia când
   chiar rulează — până atunci, și dacă nu pornesc deloc, se vede poza */
.previz { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; opacity: 0; pointer-events: none; background: transparent; transition: opacity .9s var(--usor), transform 1.2s var(--usor), filter .6s; }
.previz-merge > .previz { opacity: 1; }

/* ---------- video-uri ---------- */
.video-coperta { position: relative; display: block; width: 100%; aspect-ratio: var(--raport, 16 / 9); max-height: 82vh; margin: 0 auto; padding: 0; overflow: hidden; border: 1px solid var(--aur-linie); border-radius: var(--raza); background: radial-gradient(80% 80% at 30% 20%, var(--coperta-fundal), var(--negru-2)); cursor: pointer; box-shadow: 0 40px 90px -40px var(--umbra); }
.video-coperta .vc-poza { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; transition: transform 1.2s var(--usor), filter .6s; }
.video-coperta:hover :is(.vc-poza, .vc-video) { transform: scale(1.04); filter: brightness(.8); }
.video-coperta::after { content: ""; position: absolute; inset: 0; background: linear-gradient(180deg, transparent 50%, rgb(0 0 0 / .6)); pointer-events: none; }
.vc-eticheta { position: absolute; left: 20px; bottom: 18px; z-index: 2; font: 700 .7rem/1.2 var(--font); letter-spacing: .2em; text-transform: uppercase; color: var(--aur-deschis); }
.video-pornit { position: relative; width: 100%; aspect-ratio: var(--raport, 16 / 9); max-height: 82vh; margin: 0 auto; overflow: hidden; border-radius: var(--raza); background: #000; }
.video-pornit video { display: block; width: 100%; height: 100%; object-fit: contain; background: #000; }
.video-curand { position: relative; display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 22px; width: 100%; aspect-ratio: 16 / 9; overflow: hidden; border: 1px solid var(--aur-linie); border-radius: var(--raza);
  background: radial-gradient(60% 70% at 50% 45%, rgb(var(--aur-rgb) / .16), transparent 70%), repeating-linear-gradient(120deg, rgb(var(--aur-rgb) / .03) 0 2px, transparent 2px 14px), var(--negru-2); }
.vcur-embl { position: relative; display: block; width: 62px; height: 70px; background: currentColor; color: var(--aur); opacity: .92;
  -webkit-mask: url(../img/sigla-emblema.svg) center / contain no-repeat; mask: url(../img/sigla-emblema.svg) center / contain no-repeat; }
.vcur-text { font: 700 .72rem/1.2 var(--font); letter-spacing: .22em; text-transform: uppercase; color: var(--aur-deschis); }
.vcur-inele { position: absolute; left: 50%; top: 50%; width: 0; height: 0; }
.vcur-inele i { position: absolute; left: -110px; top: -130px; width: 220px; height: 220px; border: 1px solid var(--aur-linie-2); border-radius: 50%; }
@media (prefers-reduced-motion: no-preference) {
  .vcur-inele i { animation: unda-lenta 4.5s ease-out infinite; }
  .vcur-inele i:nth-child(2) { animation-delay: 1.5s; }
  .vcur-inele i:nth-child(3) { animation-delay: 3s; }
}
@keyframes unda-lenta { 0% { transform: scale(.4); opacity: 0; } 20% { opacity: .9; } 100% { transform: scale(2.2); opacity: 0; } }

/* fereastra mare pentru video (butonul „Tu aduci oamenii…”, galeria) */
.fereastra-video { width: 100vw; max-width: 100vw; height: 100vh; height: 100dvh; max-height: 100dvh; margin: 0; padding: 0; border: 0; background: rgb(5 4 3 / .96); color: var(--text); }
.fereastra-video::backdrop { background: rgb(0 0 0 / .8); }
.fereastra-video[open] { display: flex; align-items: center; justify-content: center; }
.fv-cadru { position: relative; display: flex; align-items: center; justify-content: center; width: 100%; height: 100%; padding: 64px 16px 24px; }
.fv-loc { display: flex; align-items: center; justify-content: center; width: 100%; height: 100%; }
.fv-loc video, .fv-loc img { max-width: 100%; max-height: 100%; border-radius: 12px; background: #000; box-shadow: 0 30px 80px rgb(0 0 0 / .7); }
.fv-inchide { position: absolute; top: 14px; right: 14px; z-index: 3; display: inline-flex; align-items: center; justify-content: center; width: 48px; height: 48px; padding: 0; border: 1px solid var(--aur-linie-2); border-radius: 50%; background: rgb(0 0 0 / .5); color: var(--text); cursor: pointer; }
.fv-inchide:hover { border-color: var(--aur); color: var(--aur-deschis); }
.fv-inchide .i { width: 22px; height: 22px; }
.fv-nav { position: absolute; top: 50%; z-index: 3; display: inline-flex; align-items: center; justify-content: center; width: 52px; height: 52px; margin-top: -26px; padding: 0; border: 1px solid var(--aur-linie-2); border-radius: 50%; background: rgb(0 0 0 / .5); color: var(--text); cursor: pointer; }
.fv-nav:hover { border-color: var(--aur); }
.fv-inapoi { left: 14px; }
.fv-inainte { right: 14px; }
.fv-titlu { position: absolute; left: 0; right: 0; bottom: 10px; margin: 0; padding: 0 70px; text-align: center; color: var(--text-2); font-size: .9rem; }
.fv-curand { max-width: 460px; padding: 40px 28px; text-align: center; }
.fv-curand .vcur-embl { margin: 0 auto 22px; }
.fv-curand h2 { font-size: clamp(1.8rem, 1.2rem + 2vw, 2.6rem); }
.fv-curand p { color: var(--text-2); }

/* ---------- prima pagină: povestea, dorul, cadrele ---------- */
.poveste-grila { display: grid; grid-template-columns: minmax(0, 1.25fr) minmax(0, 1fr); gap: clamp(32px, 5vw, 80px); align-items: center; }
.poveste-text .titlu-mare { font-size: clamp(2rem, 1.3rem + 2.6vw, 3.4rem); }
.dor { text-align: center; overflow: hidden; }
.dor::before { content: ""; position: absolute; left: 50%; top: 50%; width: min(900px, 120vw); aspect-ratio: 1; transform: translate(-50%, -50%); background: radial-gradient(circle, rgb(var(--aur-rgb) / .12), transparent 62%); pointer-events: none; }
.dor-in { position: relative; }
.dor .titlu-urias { font-size: clamp(2.3rem, 1.2rem + 4.6vw, 5.4rem); }
.dor .text-mare { margin: 28px auto 0; }
.buton-cadre { position: relative; display: grid; place-items: center; align-content: center; gap: 22px; width: 100%; min-height: clamp(380px, 56vw, 640px); padding: 48px 24px; overflow: hidden; border: 1px solid var(--aur-linie-2); border-radius: calc(var(--raza) + 8px); cursor: pointer; text-align: center; color: var(--text);
  background: radial-gradient(70% 90% at 50% 110%, rgb(var(--aur-rgb) / .28), transparent 60%), radial-gradient(50% 60% at 15% 0%, rgb(217 74 61 / .14), transparent 60%), var(--cadre-fundal); }
.buton-cadre .bc-poza { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; transition: transform 1.6s var(--usor); }
.buton-cadre:hover :is(.bc-poza, .bc-video) { transform: scale(1.05); }
.bc-umbra { position: absolute; inset: 0; background: radial-gradient(ellipse 70% 70% at 50% 50%, rgb(0 0 0 / .55), rgb(0 0 0 / .25)); }
.buton-cadre:not(.are-poster) .bc-umbra { display: none; }
.bc-text { position: relative; max-width: 18ch; font: var(--titlu-w) clamp(2rem, 1.1rem + 3.6vw, 4.4rem)/1.05 var(--titlu); letter-spacing: var(--titlu-ls); text-wrap: balance; text-shadow: 0 4px 30px rgb(0 0 0 / .5); }
.bc-text em { text-shadow: none; }
.bc-sub { position: relative; font: 700 .72rem/1.3 var(--font); letter-spacing: .2em; text-transform: uppercase; color: var(--aur-deschis); }
.buton-cadre > * { position: relative; }
.buton-cadre > .bc-poza, .buton-cadre > .bc-video, .buton-cadre > .bc-umbra { position: absolute; }

/* ---------- pachete ---------- */
.pachete { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 16px; margin: 0; padding: 0; list-style: none; }
.pachet { position: relative; display: flex; flex-direction: column; padding: 30px 26px 28px; border: 1px solid var(--aur-linie); border-radius: var(--raza); background: linear-gradient(180deg, var(--negru-3), var(--negru-2)); transition: transform .35s var(--usor), border-color .35s, box-shadow .35s; }
.pachet:hover { transform: translateY(-6px); border-color: var(--aur-linie-2); box-shadow: 0 30px 60px -30px var(--umbra), 0 0 0 1px rgb(var(--aur-rgb) / .08); }
.pachet-seara { border-color: var(--aur-linie-2); background: radial-gradient(90% 60% at 50% 0%, rgb(var(--aur-rgb) / .16), transparent 70%), linear-gradient(180deg, var(--suprafata-seara), var(--negru-2)); }
.pachet-durata { display: flex; align-items: baseline; gap: 8px; margin: 0 0 18px; }
.pd-mare { font: var(--titlu-w2) 3.4rem/1 var(--titlu); background: var(--aur-gradient); -webkit-background-clip: text; background-clip: text; color: transparent; -webkit-text-fill-color: transparent; }
.pd-mare .i { width: 52px; height: 52px; color: var(--aur); stroke-width: 1.2; }
.pd-u { font: 700 .72rem/1 var(--font); letter-spacing: .2em; text-transform: uppercase; color: var(--text-3); }
.pachet h3 { font-size: 1.45rem; margin-bottom: .4em; }
.pachet p { color: var(--text-2); font-size: .95rem; }
.pachet-pret { margin: auto 0 0; padding-top: 16px; border-top: 1px solid var(--aur-linie); color: var(--aur-deschis) !important; font: 700 .86rem/1.3 var(--font) !important; letter-spacing: .08em; text-transform: uppercase; }
.pachet .buton { margin-top: 18px; align-self: flex-start; }

/* ---------- galerie ---------- */
.galerie { columns: 4 240px; column-gap: 14px; margin: 0; padding: 0; list-style: none; }
.galerie-mica { columns: 3 220px; }
.gal-el { break-inside: avoid; margin: 0 0 14px; }
.gal-link { position: relative; display: block; overflow: hidden; border-radius: 14px; background: var(--negru-3); color: var(--text); }
.gal-poza { display: block; width: 100%; height: auto; transition: transform .8s var(--usor), filter .5s; }
.gal-link:hover :is(.gal-poza, .gal-previz) { transform: scale(1.05); filter: brightness(.82); }
.gal-link::after { content: ""; position: absolute; inset: 0; border: 1px solid var(--aur-linie); border-radius: inherit; pointer-events: none; }
.gal-durata { position: absolute; right: 10px; bottom: 10px; padding: 3px 8px; border-radius: 999px; background: rgb(0 0 0 / .65); font: 700 .72rem/1.3 var(--font); }
.gal-titlu { position: absolute; left: 0; right: 0; bottom: 0; padding: 30px 14px 12px; background: linear-gradient(180deg, transparent, rgb(0 0 0 / .8)); font-size: .88rem; font-weight: 600; opacity: 0; transform: translateY(8px); transition: opacity .3s, transform .3s; }
.gal-link:hover .gal-titlu, .gal-link:focus-visible .gal-titlu { opacity: 1; transform: none; }
.filtre { display: flex; flex-wrap: wrap; gap: 8px; margin-bottom: 28px; }
.filtru { display: inline-flex; align-items: center; gap: 8px; padding: 9px 16px; border: 1px solid var(--aur-linie); border-radius: 999px; color: var(--text-2); font-weight: 700; font-size: .86rem; text-decoration: none; }
.filtru:hover { border-color: var(--aur-linie-2); color: var(--text); }
.filtru[aria-current="page"] { border-color: var(--aur); background: rgb(var(--aur-rgb) / .12); color: var(--aur-deschis); }
.paginare { display: flex; align-items: center; justify-content: center; gap: 18px; margin-top: 36px; color: var(--text-3); }
.paginare a { display: inline-flex; align-items: center; gap: 8px; padding: 12px 20px; border: 1px solid var(--aur-linie-2); border-radius: 999px; color: var(--aur-deschis); font-weight: 700; text-decoration: none; }
.gol-mare { position: relative; display: grid; justify-items: center; gap: 12px; padding: clamp(48px, 8vw, 90px) 24px; overflow: hidden; border: 1px dashed var(--aur-linie-2); border-radius: var(--raza); text-align: center; }
.gol-mare .text-mare { margin: 0 auto; }
.gol-iconita { width: 56px; height: 56px; color: var(--aur); stroke-width: 1.2; }

/* story-uri */
.story-rand { padding: 8px 0 0; }
/* pe prima pagină: sub slogan, pe centru (Teodor, 30.09: story-urile pe toate paginile) */
.story-acasa { position: relative; padding: 0 0 clamp(28px, 4vw, 52px); }
.story-acasa .story-lista { justify-content: safe center; }
.story-lista { display: flex; gap: 18px; margin: 0; padding: 4px 2px 10px; list-style: none; overflow-x: auto; scrollbar-width: none; }
.story-lista::-webkit-scrollbar { display: none; }
.story-cerc { display: grid; justify-items: center; gap: 8px; padding: 0; border: 0; background: none; cursor: pointer; }
.story-inel { position: relative; display: block; width: 78px; height: 78px; padding: 3px; border-radius: 50%; background: var(--aur-gradient); }
.story-inel img { display: block; width: 100%; height: 100%; border: 3px solid var(--negru); border-radius: 50%; object-fit: cover; background: var(--negru-3); }
.story-arhiva .story-inel { background: var(--negru-4); }
.story-fara-poza { display: grid; place-items: center; width: 100%; height: 100%; border: 3px solid var(--negru); border-radius: 50%; background: var(--negru-3); }
.story-fara-poza .vcur-embl { width: 40%; height: 46%; }
.story-cand { font-size: .74rem; color: var(--text-2); }
.story-vizualizator { position: fixed; inset: 0; z-index: 300; display: flex; align-items: center; justify-content: center; background: rgb(0 0 0 / .94); }
.story-vizualizator[hidden] { display: none; }
.sv-cadru { position: relative; width: min(100vw, calc(100dvh * 9 / 16)); height: min(100dvh, calc(100vw * 16 / 9)); overflow: hidden; background: #000; }
@media (min-width: 700px) { .sv-cadru { border-radius: 16px; height: min(94dvh, calc(100vw * 16 / 9)); width: min(100vw, calc(94dvh * 9 / 16)); } }
.sv-media { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; }
.sv-bare { position: absolute; top: 10px; left: 10px; right: 10px; z-index: 3; display: flex; gap: 4px; }
.sv-bare span { flex: 1; height: 3px; overflow: hidden; border-radius: 2px; background: rgb(255 255 255 / .3); }
.sv-bare i { display: block; width: 0; height: 100%; background: #fff; }
.sv-bare .gata i { width: 100%; }
.sv-bare .acum i { animation: bara var(--durata) linear forwards; }
.story-vizualizator.pauza .sv-bare .acum i { animation-play-state: paused; }
@keyframes bara { to { width: 100%; } }
.sv-sus { position: absolute; top: 22px; left: 12px; right: 12px; z-index: 3; display: flex; align-items: center; gap: 10px; color: #fff; font-size: .82rem; text-shadow: 0 1px 6px rgb(0 0 0 / .6); }
.sv-sus .i-sigla { width: 30px; height: 30px; padding: 5px; border-radius: 50%; background: var(--negru); color: var(--aur); }
.sv-inchide { margin-left: auto; display: inline-flex; width: 40px; height: 40px; align-items: center; justify-content: center; padding: 0; border: 0; background: none; color: #fff; cursor: pointer; }
.sv-zona { position: absolute; top: 60px; bottom: 120px; z-index: 2; width: 35%; border: 0; background: none; cursor: pointer; }
.sv-zona-st { left: 0; }
.sv-zona-dr { right: 0; width: 65%; }
.sv-text { position: absolute; left: 0; right: 0; bottom: 0; z-index: 3; padding: 60px 18px 22px; background: linear-gradient(180deg, transparent, rgb(0 0 0 / .75)); color: #fff; }
.sv-text p { margin: 0 0 12px; font-size: 1.05rem; font-weight: 600; white-space: pre-line; }
.sv-actiuni { display: flex; flex-wrap: wrap; gap: 10px; }
.sv-actiuni a, .sv-actiuni button { display: inline-flex; align-items: center; gap: 8px; padding: 10px 16px; border: 0; border-radius: 999px; background: var(--aur); color: var(--negru); font-weight: 700; font-size: .84rem; text-decoration: none; cursor: pointer; }
.sv-actiuni button { background: rgb(255 255 255 / .16); color: #fff; }

/* ---------- mesaje ---------- */
.carusel-mesaje { position: relative; max-width: 940px; margin: 0 auto; padding: clamp(36px, 5vw, 64px) clamp(22px, 5vw, 72px) 28px; border: 1px solid var(--aur-linie); border-radius: calc(var(--raza) + 8px); background: radial-gradient(80% 90% at 50% 0%, rgb(var(--aur-rgb) / .1), transparent 70%), var(--negru-2); text-align: center; }
.cm-ghilimele { display: block; width: 58px; height: 58px; margin: 0 auto 10px; color: var(--aur); stroke-width: 1.1; }
.cm-pista { position: relative; display: grid; }
.cm-slide { grid-area: 1 / 1; }
.cm-slide[hidden] { display: block; visibility: hidden; opacity: 0; }
.cm-slide { transition: opacity .6s; }
.mesaj { margin: 0; }
.mesaj blockquote { margin: 0; }
.mesaj-mare blockquote p { font: italic var(--titlu-w) clamp(1.3rem, 1rem + 1.4vw, 2rem)/1.45 var(--titlu); color: var(--text); text-wrap: balance; }
.mesaj figcaption { display: grid; gap: 2px; margin-top: 18px; }
.mesaj figcaption strong { font-weight: 800; color: var(--aur-deschis); letter-spacing: .04em; }
.mesaj figcaption span { color: var(--text-3); font-size: .86rem; }
.cm-control { display: flex; align-items: center; justify-content: center; gap: 10px; margin-top: 26px; }
.cm-buton { display: inline-flex; align-items: center; justify-content: center; width: 42px; height: 42px; padding: 0; border: 1px solid var(--aur-linie-2); border-radius: 50%; background: none; color: var(--text); cursor: pointer; }
.cm-buton:hover { border-color: var(--aur); color: var(--aur-deschis); }
.cm-puncte { display: flex; gap: 6px; margin: 0 8px; }
.cm-puncte i { width: 7px; height: 7px; border-radius: 50%; background: var(--negru-4); transition: background .3s, transform .3s; }
.cm-puncte i.activ { background: var(--aur); transform: scale(1.3); }
.mesaje-grila { columns: 3 280px; column-gap: 18px; margin-top: 32px; }
.mesaje-grila .mesaj { break-inside: avoid; margin: 0 0 18px; padding: 24px 24px 22px; border: 1px solid var(--aur-linie); border-radius: var(--raza); background: var(--negru-2); }
.mesaje-grila .mesaj p { color: var(--text); }
.gol-mesaje { padding: 24px 0 8px; }

/* ---------- pagini interioare ---------- */
.erou-pagina { position: relative; padding: calc(var(--antet) + clamp(48px, 8vw, 110px)) 0 clamp(40px, 6vw, 80px); overflow: hidden;
  background: radial-gradient(70% 90% at 85% -10%, rgb(var(--aur-rgb) / .16), transparent 60%), radial-gradient(50% 60% at 0% 100%, rgb(217 74 61 / .08), transparent 60%); }
.erou-pagina::after { content: ""; position: absolute; left: var(--margine); right: var(--margine); bottom: 0; height: 1px; background: linear-gradient(90deg, transparent, var(--aur-linie-2), transparent); }
.erou-mic { padding-bottom: 30px; }
.erou-pagina .lead { margin-bottom: 0; }
.firimituri ol { display: flex; flex-wrap: wrap; gap: 6px; margin: 0 0 28px; padding: 0; list-style: none; font-size: .8rem; color: var(--text-3); }
.firimituri li + li::before { content: "/"; margin-right: 6px; opacity: .5; }
.firimituri a { color: var(--text-2); text-decoration: none; }
.firimituri a:hover { color: var(--aur-deschis); }
.capitol-grila { display: grid; grid-template-columns: minmax(120px, .45fr) 1fr; gap: clamp(24px, 5vw, 80px); align-items: start; }
.capitol-nr { margin: 0; font: italic var(--titlu-w2) clamp(5rem, 3rem + 9vw, 12rem)/.8 var(--titlu); background: var(--aur-gradient); -webkit-background-clip: text; background-clip: text; color: transparent; -webkit-text-fill-color: transparent; opacity: .9; }
.capitol-invers .capitol-grila { grid-template-columns: 1fr minmax(120px, .45fr); }
.capitol-invers .capitol-nr { order: 2; text-align: right; }
.capitol-text .text-lung { color: var(--text-2); font-size: 1.1rem; line-height: 1.8; max-width: 62ch; }
.citat-mare { text-align: center; }
.citat-mare figure { margin: 0 auto; }
.citat-ghilimele { width: 64px; height: 64px; color: var(--aur); stroke-width: 1; }
.citat-mare blockquote { margin: 16px 0 20px; }
.citat-mare blockquote p { font: italic var(--titlu-w2) clamp(1.8rem, 1.1rem + 2.8vw, 3.4rem)/1.2 var(--titlu); color: var(--text); text-wrap: balance; }
.citat-mare figcaption { font: 700 .8rem/1 var(--font); letter-spacing: .24em; text-transform: uppercase; color: var(--aur); }
.poveste-video-mare { padding-top: clamp(40px, 6vw, 80px); }
.carduri-tipuri { display: grid; grid-template-columns: repeat(auto-fit, minmax(240px, 1fr)); gap: 16px; margin: 0; padding: 0; list-style: none; }
.card-tip { padding: 28px 26px; border: 1px solid var(--aur-linie); border-radius: var(--raza); background: var(--negru-2); transition: border-color .3s, transform .35s var(--usor); }
.card-tip:hover { border-color: var(--aur-linie-2); transform: translateY(-4px); }
.ct-nr { display: block; margin-bottom: 18px; font: italic var(--titlu-w2) 1.2rem/1 var(--titlu); color: var(--aur); }
.card-tip h3 { font-size: 1.5rem; }
.card-tip p { color: var(--text-2); margin: 0; }

/* ---------- prima pagină: unde am cântat (scenele și colaborările lor, 1.10) ---------- */
.scene { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 16px; margin: 0; padding: 0; list-style: none; }
.scena { display: flex; }
.scena-in { display: flex; flex-direction: column; gap: 10px; width: 100%; padding: 28px 26px 24px; border: 1px solid var(--aur-linie); border-radius: var(--raza); background: var(--negru-2); color: var(--text); text-decoration: none; transition: border-color .3s, transform .35s var(--usor); }
a.scena-in:hover, a.scena-in:focus-visible { border-color: var(--aur-linie-2); transform: translateY(-4px); }
.scena-nr { display: block; margin-bottom: 6px; font: italic var(--titlu-w2) 1.2rem/1 var(--titlu); color: var(--aur); }
.scena h3 { margin: 0; font-size: 1.45rem; }
.scena p { margin: 0; color: var(--text-2); }
.scena-unde { display: inline-flex; align-items: center; gap: 6px; margin-top: auto; padding-top: 8px; font: 700 .7rem/1.2 var(--font); letter-spacing: .18em; text-transform: uppercase; color: var(--aur-deschis); }
.scena-unde .i { width: 14px; height: 14px; transition: transform .3s var(--usor); }
a.scena-in:hover .scena-unde .i { transform: translateX(4px); }
.scene-retele { display: flex; flex-wrap: wrap; align-items: center; justify-content: center; gap: 12px 16px; margin-top: clamp(28px, 4vw, 44px); }
.scene-retele p { margin: 0; color: var(--text-2); }
.scene-retele ul { display: flex; flex-wrap: wrap; justify-content: center; gap: 10px; margin: 0; padding: 0; list-style: none; }
.scene-retele .i { width: 16px; height: 16px; }
@media (max-width: 1000px) { .scene { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (max-width: 640px) { .scene { grid-template-columns: minmax(0, 1fr); } .scena-in { padding: 22px 20px 20px; } }
.pasi { display: grid; grid-template-columns: repeat(auto-fit, minmax(220px, 1fr)); gap: 0; margin: 0; padding: 0; list-style: none; counter-reset: pas; }
.pasi li { position: relative; padding: 70px 26px 10px 0; counter-increment: pas; }
.pasi li::before { content: counter(pas); position: absolute; left: 0; top: 0; display: flex; align-items: center; justify-content: center; width: 48px; height: 48px; border: 1px solid var(--aur); border-radius: 50%; color: var(--aur); font: italic var(--titlu-w2) 1.3rem/1 var(--titlu); background: var(--negru-2); z-index: 1; }
.pasi li::after { content: ""; position: absolute; left: 48px; right: 0; top: 24px; height: 1px; background: linear-gradient(90deg, var(--aur-linie-2), transparent); }
.pasi li:last-child::after { display: none; }
.pasi h3 { font-size: 1.35rem; }
.pasi p { color: var(--text-2); margin: 0; }
.distractie .text-lung { margin: 28px auto 0; text-align: center; }
.text-legal h2 { margin-top: 1.6em; font-size: 1.5rem; }
.text-legal p { color: var(--text-2); }
.text-legal .nota-legala { font-size: .86rem; color: var(--text-3); }
/* datele de identificare (Informații legale, Confidențialitate) */
.date-legale { display: grid; grid-template-columns: minmax(150px, max-content) 1fr; gap: 8px 22px; margin: 0 0 1.4em; padding: 18px 20px; border: 1px solid var(--aur-linie); border-radius: var(--raza); }
.date-legale dt { color: var(--text-3); font-size: .9rem; }
.date-legale dd { margin: 0; color: var(--text); overflow-wrap: anywhere; }
@media (max-width: 520px) { .date-legale { grid-template-columns: 1fr; gap: 2px; } .date-legale dd { margin-bottom: 10px; } }
.pagina-404 { padding: calc(var(--antet) + 90px) 0 120px; }
.p404-cifre { display: flex; align-items: center; justify-content: center; gap: .1em; margin: 0 0 12px; font: var(--titlu-w2) clamp(6rem, 4rem + 10vw, 12rem)/1 var(--titlu); color: var(--aur); }
.p404-cifre .i { width: .9em; height: .9em; stroke-width: 1; }

/* ---------- rezervare ---------- */
.rezervare { background: radial-gradient(60% 50% at 20% 0%, rgb(var(--aur-rgb) / .08), transparent 70%); }
/* calendarul zilelor libere a fost scos de pe site (1.10): îl vede doar administrarea */

.formular { display: grid; gap: 16px; }
.card-formular { padding: clamp(22px, 3vw, 36px); border: 1px solid var(--aur-linie); border-radius: var(--raza); background: var(--negru-2); }
.rezervare-formular .formular { margin-top: 22px; padding: clamp(20px, 3vw, 32px); border: 1px solid var(--aur-linie); border-radius: var(--raza); background: var(--negru-2); }
.doua { display: grid; grid-template-columns: 1fr 1fr; gap: 16px; }
.camp { display: grid; gap: 7px; min-width: 0; }
.camp > span:first-child, legend { font-weight: 700; font-size: .88rem; color: var(--text); }
.camp small, legend small { font-weight: 500; color: var(--text-3); }
input:not([type=checkbox]):not([type=radio]), select, textarea { width: 100%; min-height: 50px; padding: 12px 14px; border: 1px solid rgb(var(--aur-rgb) / .25); border-radius: 12px; background: var(--negru); color: var(--text); font: 500 1rem/1.4 var(--font); transition: border-color .2s, box-shadow .2s; }
textarea { min-height: 110px; resize: vertical; }
input:focus, select:focus, textarea:focus { outline: none; border-color: var(--aur); box-shadow: 0 0 0 3px rgb(var(--aur-rgb) / .18); }
input[aria-invalid="true"], select[aria-invalid="true"], textarea[aria-invalid="true"] { border-color: var(--rosu); }
input::-webkit-calendar-picker-indicator { filter: var(--filtru-calendar); cursor: pointer; }
.eroare { color: var(--rosu-text); font-size: .84rem; font-weight: 600; }
fieldset { margin: 0; padding: 0; border: 0; min-width: 0; }
legend { margin-bottom: 8px; padding: 0; }
.ap-grila { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 8px; }
.ap-card { position: relative; display: grid; gap: 4px; padding: 14px 12px; border: 1px solid rgb(var(--aur-rgb) / .25); border-radius: 12px; background: var(--negru); cursor: pointer; transition: border-color .2s, background .2s; }
.ap-card input { position: absolute; opacity: 0; pointer-events: none; }
.ap-card:hover { border-color: var(--aur-linie-2); }
.ap-card:has(input:checked) { border-color: var(--aur); background: rgb(var(--aur-rgb) / .12); box-shadow: inset 0 0 0 1px var(--aur); }
.ap-card:has(input:focus-visible) { outline: 2px solid var(--aur); outline-offset: 2px; }
.ap-card:has(input:disabled) { opacity: .4; cursor: not-allowed; }
.ap-nume { font-weight: 800; font-size: .92rem; }
.ap-pret { font-size: .74rem; color: var(--text-3); }
.bifa { display: flex; align-items: flex-start; gap: 10px; font-size: .9rem; color: var(--text-2); cursor: pointer; }
.bifa input { flex: none; width: 20px; height: 20px; margin: 2px 0 0; accent-color: var(--aur); }
.alerta { display: flex; gap: 12px; align-items: flex-start; margin: 0 0 16px; padding: 14px 18px; border: 1px solid; border-radius: 14px; }
.alerta .i { flex: none; width: 24px; height: 24px; margin-top: 1px; }
.alerta p { margin: 4px 0 0; }
.alerta-ok { border-color: rgb(111 207 143 / .4); background: rgb(111 207 143 / .08); color: var(--verde-text); }
.alerta-ok .i { color: var(--verde); }
.alerta-eroare { border-color: rgb(217 74 61 / .5); background: rgb(217 74 61 / .08); color: var(--rosu-text-2); }
.alerta-eroare .i { color: var(--rosu-icon); }
.alerta-mare { padding: 18px 20px; }

/* ---------- final și subsol ---------- */
.final { text-align: center; overflow: hidden; border-top: 1px solid var(--aur-linie); background: radial-gradient(60% 100% at 50% 100%, rgb(var(--aur-rgb) / .16), transparent 70%); }
.final .text-mare { margin: 20px auto 0; }
.final .text-mare a { color: var(--aur-deschis); }
.subsol { padding: clamp(56px, 7vw, 90px) 0 28px; border-top: 1px solid var(--aur-linie); background: var(--negru-2); }
.subsol-sus { display: grid; grid-template-columns: 1.4fr 1fr 1fr; gap: 40px; }
.subsol-sigla { display: inline-block; margin-bottom: 18px; text-decoration: none; }
.subsol-brand p { max-width: 36ch; color: var(--text-2); }
.subsol-col h2 { margin-bottom: 14px; font: 700 .72rem/1.2 var(--font); letter-spacing: .24em; text-transform: uppercase; color: var(--aur); }
.subsol-col ul { margin: 0; padding: 0; list-style: none; display: grid; gap: 8px; }
.subsol-col a { display: inline-flex; align-items: center; gap: 10px; color: var(--text-2); text-decoration: none; }
.subsol-col a:hover { color: var(--aur-deschis); }
.subsol-contact .i { color: var(--aur); }
.retele { display: flex; gap: 10px; margin: 18px 0 0; padding: 0; list-style: none; }
.retele a { display: inline-flex; align-items: center; justify-content: center; width: 44px; height: 44px; border: 1px solid var(--aur-linie-2); border-radius: 50%; color: var(--text); }
.retele a:hover { border-color: var(--aur); color: var(--aur-deschis); }
.subsol-jos { display: flex; flex-wrap: wrap; justify-content: space-between; gap: 12px; margin-top: 48px; padding-top: 22px; border-top: 1px solid var(--aur-linie); color: var(--text-3); font-size: .84rem; }
.subsol-jos p { margin: 0; }
.subsol-jos a { color: var(--text-2); }
.subsol-legal { display: flex; flex-wrap: wrap; gap: 6px 18px; }

.poza-lipsa { display: block; aspect-ratio: 4 / 3; background: var(--negru-3); }

/* ---------- ploaia de instrumente (site.js): un strat fix în spatele conținutului primei pagini ----------
   Fiecare instrument e o imagine mică mutată doar prin `transform` (animație CSS): o face placa video, fără
   JavaScript la fiecare cadru și fără repictare. Stratul începe sub antet (antetul are blur și n-ar trebui
   recalculat la fiecare cadru) și merge doar după film (clasa .activ, din site.js). */
.ploaie-instrumente { position: fixed; left: 0; right: 0; top: var(--antet); bottom: 0; z-index: 0; overflow: hidden; pointer-events: none; visibility: hidden; contain: strict; }
.ploaie-instrumente.activ { visibility: visible; }
.pi { position: absolute; top: 0; left: 0; display: block; will-change: transform, translate;
  animation: pi-cade linear infinite paused, pi-leagan ease-in-out infinite alternate paused; }
.pi img { display: block; width: 100%; height: 100%; }
.ploaie-instrumente.activ .pi { animation-play-state: running; }
/* căderea pe `translate` (în coordonatele paginii), legănarea și rotirea pe `transform`: un singur strat pe instrument */
@keyframes pi-cade { from { translate: 0 -140px; } to { translate: 0 100vh; } }
@keyframes pi-leagan { from { transform: translateX(calc(var(--amp) * -1)) rotate(var(--r1)); } to { transform: translateX(var(--amp)) rotate(var(--r2)); } }
@media (prefers-reduced-motion: reduce) {
  .pi { animation: none; translate: 0 var(--y); transform: rotate(var(--r1)); }
}
/* conținutul primei pagini stă peste ploaie (filmul peste tot restul); subsolul lasă ploaia să se vadă ușor */
.pag-acasa main, .pag-acasa .subsol { position: relative; z-index: 1; }
.pag-acasa .film { z-index: 2; }
.pag-acasa .subsol { background: rgb(var(--fundal-2-rgb) / .82); }

/* ================= aspectele site-ului (Administrare → Aspect) =================
   „Lux discret” (implicit, mai sus), „Șampanie” și „Galerie” — după aspectele premium de pe temyro.ro.
   Se schimbă doar jetoanele (culori, fonturi, greutăți); componentele rămân aceleași. */

html[data-aspect="sampanie"] {
  /* Șampanie: crem cald, serif moale (Fraunces), lumini aurii în spatele titlurilor */
  --negru: #f3ede3; --negru-2: #faf6ef; --negru-3: #efe6d8; --negru-4: #e6dac7;
  --fundal-rgb: 243 237 227; --fundal-2-rgb: 250 246 239;
  --aur: #85652a; --aur-deschis: #7d5d24; --aur-inchis: #6e521f; --aur-rgb: 156 120 54;
  --aur-linie: rgb(156 120 54 / .28); --aur-linie-2: rgb(156 120 54 / .5);
  --aur-gradient: linear-gradient(100deg, #6f5220 0%, #9c7836 32%, #7d5d24 52%, #a8843f 72%, #6f5220 100%);
  --aur-buton: linear-gradient(100deg, #c9a55a 0%, #ecd9a6 32%, #d6b76e 52%, #f3e6c2 72%, #c39c4c 100%);
  --pe-aur: #2a1f10;
  --text: #17130f; --text-2: #4a4238; --text-3: #6b6155; --text-rgb: 23 19 15;
  --verde-text: #1f6b3d; --rosu-text: #b3261e; --rosu-text-2: #8c1d18; --rosu-icon: #c0392b;
  --umbra: rgb(90 60 20 / .18);
  --suprafata-seara: #f1e4cc; --cadre-fundal: linear-gradient(160deg, #efe3cf, #f8f2e8 70%); --coperta-fundal: #e9dcc5;
  --filtru-calendar: none;
  --ploaie-culori: #a8843f #c9a55a #9c7836 #6f5220; --ploaie-umbra: rgb(156 120 54 / .3);
  --titlu: "Fraunces", Georgia, "Times New Roman", serif; --titlu-w: 600; --titlu-w2: 600; --titlu-ls: -.02em;
  color-scheme: light;
}
html[data-aspect="galerie"] {
  /* Galerie: mult alb, litere de expoziție (Syne), pozele în rame */
  --negru: #ffffff; --negru-2: #f6f6f6; --negru-3: #efefef; --negru-4: #e4e4e4;
  --fundal-rgb: 255 255 255; --fundal-2-rgb: 246 246 246;
  --aur: #111111; --aur-deschis: #111111; --aur-inchis: #000000; --aur-rgb: 17 17 17;
  --aur-linie: rgb(0 0 0 / .12); --aur-linie-2: rgb(0 0 0 / .3);
  --aur-gradient: linear-gradient(100deg, #111 0%, #111 100%);
  --aur-buton: linear-gradient(100deg, #111 0%, #2b2b2b 50%, #111 100%);
  --pe-aur: #ffffff;
  --text: #111111; --text-2: #333333; --text-3: #555555; --text-rgb: 17 17 17;
  --verde-text: #1f6b3d; --rosu-text: #b3261e; --rosu-text-2: #8c1d18; --rosu-icon: #c0392b;
  --umbra: rgb(0 0 0 / .14);
  --suprafata-seara: #f1f1f1; --cadre-fundal: linear-gradient(160deg, #f1f1f1, #fafafa 70%); --coperta-fundal: #e9e9e9;
  --filtru-calendar: none;
  --ploaie-culori: #1a1a1a #3a3a3a #5a5a5a #111111; --ploaie-umbra: rgb(0 0 0 / .15);
  --titlu: "Syne GJ", "Syne", "Helvetica Neue", Arial, sans-serif; --titlu-w: 700; --titlu-w2: 700; --titlu-ls: -.02em;
  --raza: 6px;
  color-scheme: light;
  font-synthesis-style: none; /* Syne nu are italic: literele rămân drepte */
}

/* insulele întunecate: filmul, antetul peste film, ferestrele video/story și pozele cu text peste ele
   rămân pe negru la orice aspect (textul alb peste imagine) */
html:is([data-aspect="sampanie"], [data-aspect="galerie"]) :is(.film, .fereastra-video, .story-vizualizator, .video-coperta, .buton-cadre.are-poster, .gal-link),
html:is([data-aspect="sampanie"], [data-aspect="galerie"]) .pag-acasa:not(.meniu-deschis) .antet:not(.solid) {
  --negru: #0b0a08; --negru-2: #13110d; --negru-3: #1b1812; --negru-4: #25211a;
  --fundal-rgb: 11 10 8; --fundal-2-rgb: 19 17 13;
  --text: #e8e2d3; --text-2: #bfb8a8; --text-3: #9b958a; --text-rgb: 232 226 211;
  --aur: #e0b25a; --aur-deschis: #f6dea0; --aur-inchis: #a8741f; --aur-rgb: 224 178 90;
  --aur-linie: rgb(224 178 90 / .22); --aur-linie-2: rgb(224 178 90 / .4);
  --aur-gradient: linear-gradient(100deg, #b07a22 0%, #f3d38a 30%, #e0ac48 52%, #fff1c9 70%, #c18a2c 100%);
  --aur-buton: var(--aur-gradient); --pe-aur: #1a1206; --umbra: rgb(0 0 0 / .8);
  color: var(--text);
  color-scheme: dark;
}
html[data-aspect="galerie"] :is(.film, .fereastra-video, .story-vizualizator, .video-coperta, .buton-cadre.are-poster, .gal-link),
html[data-aspect="galerie"] .pag-acasa:not(.meniu-deschis) .antet:not(.solid) {
  --aur: #e6e6e6; --aur-deschis: #ffffff; --aur-inchis: #bdbdbd; --aur-rgb: 230 230 230;
  --aur-linie: rgb(255 255 255 / .2); --aur-linie-2: rgb(255 255 255 / .4);
  --aur-gradient: linear-gradient(100deg, #bdbdbd 0%, #ffffff 35%, #d6d6d6 60%, #ffffff 80%, #bdbdbd 100%);
  --aur-buton: var(--aur-gradient); --pe-aur: #111111;
}

/* pe fundal deschis: fără umbra de text a butonului mare (e pentru text peste poză) și o ploaie mai discretă */
html:is([data-aspect="sampanie"], [data-aspect="galerie"]) .buton-cadre:not(.are-poster) .bc-text { text-shadow: none; }
html[data-aspect="sampanie"] .ploaie-instrumente { opacity: .85; }
html[data-aspect="galerie"] .ploaie-instrumente { opacity: .5; }
html[data-aspect="galerie"] .meniu-telefon nav a[aria-current="page"] { text-decoration: underline; text-decoration-thickness: 2px; text-underline-offset: .18em; }

/* grăunțele de film sunt doar la „Lux discret” */
html:is([data-aspect="sampanie"], [data-aspect="galerie"]) body::before { display: none; }

/* Șampanie — „lumini aurii în spatele titlurilor”: o lumină caldă sub fiecare titlu de secțiune */
html[data-aspect="sampanie"] .cap-sectiune { position: relative; isolation: isolate; }
html[data-aspect="sampanie"] .cap-sectiune::before { content: ""; position: absolute; inset: -40px 0; z-index: -1; pointer-events: none;
  background: radial-gradient(45% 75% at 50% 50%, rgb(var(--aur-rgb) / .16), transparent 72%); }
html[data-aspect="sampanie"] .cap-sectiune:not(.cap-centru)::before { background: radial-gradient(40% 75% at 22% 50%, rgb(var(--aur-rgb) / .16), transparent 72%); }

/* Galerie — fără luminile aurii, cu pozele în rame (paspartu alb, linie fină, umbră) */
/* cuvintele evidențiate: negre și la fel de groase ca restul titlului (înainte gri #6b6b6b, apoi mai subțiri —
   Teodor, 1.10: „titlurile astea nu au același scris… să fie toate îngroșate”) */
html[data-aspect="galerie"] :is(.titlu-urias, .titlu-mare, .titlu-mediu) em,
html[data-aspect="galerie"] .text-auriu { background: none; color: var(--text); -webkit-text-fill-color: currentColor; }
html[data-aspect="galerie"] :is(.titlu-urias, .titlu-mare, .titlu-mediu, .bc-text, .film-slogan) em { font-weight: var(--titlu-w); }
html[data-aspect="galerie"] .slogan .film-slogan { background: none; color: var(--text); -webkit-text-fill-color: currentColor; filter: none; }
html[data-aspect="galerie"] :is(.slogan, .erou-pagina, .final, .rezervare) { background: none; }
html[data-aspect="galerie"] .dor::before { display: none; }
html[data-aspect="galerie"] :is(.carusel-mesaje, .pachet-seara, .video-curand, .buton-cadre:not(.are-poster)) { background: var(--negru-2); }
html[data-aspect="galerie"] .meniu-telefon { background: var(--negru); }
html[data-aspect="galerie"] :is(.gal-link, .video-coperta, .buton-cadre.are-poster) { border-radius: 2px;
  box-shadow: 0 0 0 7px #fff, 0 0 0 8px rgb(0 0 0 / .08), 0 22px 44px -26px rgb(0 0 0 / .5); }
html[data-aspect="galerie"] .gal-link::after { border-color: rgb(0 0 0 / .1); }
/* Syne e lată: titlurile mari puțin mai mici pe ecranele înguste */
html[data-aspect="galerie"] .titlu-urias { font-size: clamp(2.1rem, .9rem + 5.2vw, 5.6rem); }
html[data-aspect="galerie"] .galerie { column-gap: 30px; }
html[data-aspect="galerie"] .gal-el { margin-bottom: 30px; padding: 8px 8px 0; }
@media (max-width: 700px) {
  html[data-aspect="galerie"] .galerie { column-gap: 14px; }
  html[data-aspect="galerie"] .gal-el { margin-bottom: 18px; padding: 6px 6px 0; }
}

/* ---------- apariția la derulare ---------- */
@media (prefers-reduced-motion: no-preference) {
  .apare { opacity: 0; transform: translateY(26px); transition: opacity .9s var(--usor), transform .9s var(--usor); }
  .apare.vizibil { opacity: 1; transform: none; }
}

/* ---------- ecrane mai mici ---------- */
@media (max-width: 1180px) {
  .antet-nav a { padding: 10px 8px; font-size: .8rem; }
  .antet-nav a::after { left: 8px; right: 8px; }
}
@media (max-width: 1060px) {
  :root { --antet: 68px; }
  .antet-nav, .antet-cta { display: none; }
  .antet-meniu-buton { display: inline-flex; }
  .pachete { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .poveste-grila { grid-template-columns: 1fr; }
  .subsol-sus { grid-template-columns: 1fr 1fr; }
  .subsol-brand { grid-column: 1 / -1; }
}
@media (max-width: 700px) {
  .sigla-embl { width: 29px; height: 33px; }
  .sigla-text { font-size: 1.12rem; }
  .film.film-activ { height: 470vh; }
  .film-nume { font-size: clamp(3.1rem, 16vw, 5rem); }
  .film-sunet, .film-sari { bottom: max(14px, env(safe-area-inset-bottom)); }
  /* pe telefon, „Derulează” stă deasupra butoanelor de jos (altfel se suprapune cu „Pornește sunetul”) */
  .film-indiciu { bottom: calc(max(14px, env(safe-area-inset-bottom)) + 62px); }
  .pachete { grid-template-columns: 1fr; }
  .doua { grid-template-columns: 1fr; }
  .ap-grila { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .capitol-grila, .capitol-invers .capitol-grila { grid-template-columns: 1fr; gap: 8px; }
  .capitol-invers .capitol-nr { order: 0; text-align: left; }
  .capitol-nr { font-size: 5.5rem; }
  .subsol-sus { grid-template-columns: 1fr; gap: 32px; }
  .galerie { columns: 2 140px; column-gap: 8px; }
  .gal-el { margin-bottom: 8px; }
  .gal-link { border-radius: 10px; }
  .pasi li { padding-right: 0; }
  .pasi li::after { display: none; }
  .butoane .buton { flex: 1 1 auto; }
  .cap-rand .buton { width: 100%; }
  .fv-nav { top: auto; bottom: 16px; margin: 0; }
  .fv-cadru { padding-bottom: 80px; }
  .fv-titlu { bottom: 28px; }
}
@media (max-width: 380px) {
  /* ecranele foarte înguste: butoanele de jos ale filmului mai strânse, ca să încapă unul lângă altul */
  .film-sunet { gap: 8px; padding: 8px 12px 8px 10px; font-size: .6rem; letter-spacing: .08em; }
  .film-sari { padding: 9px 10px; font-size: .6rem; letter-spacing: .08em; }
}
@media (prefers-reduced-motion: reduce) {
  .film.film-activ { height: auto; }
  *, *::before, *::after { animation-duration: .001ms !important; animation-iteration-count: 1 !important; transition-duration: .001ms !important; }
}
.nw { white-space: nowrap; }
