/* Scènes de diffusion Gyp Sea — composition logique 1080 × 1920 px.
   Charte reprise de gypsea-stbarth.com : Playfair Display (titres capitales, sous-titres italiques),
   Albert Sans (textes, étiquettes capitales espacées), marine #305371, ciel #5F9BC6, sable #F1ECE6, blanc cassé #F8F6F3. */
@font-face { font-family: 'GS Serif'; src: url(../fonts/PlayfairDisplay-Regular.ttf) format('truetype'); font-weight: 400; font-style: normal; font-display: block; }
@font-face { font-family: 'GS Serif'; src: url(../fonts/PlayfairDisplay-Italic.ttf) format('truetype'); font-weight: 400; font-style: italic; font-display: block; }
@font-face { font-family: 'GS Sans'; src: url(../fonts/AlbertSans-Regular.ttf) format('truetype'); font-weight: 400; font-display: block; }
@font-face { font-family: 'GS Sans'; src: url(../fonts/AlbertSans-Medium.ttf) format('truetype'); font-weight: 500; font-display: block; }
@font-face { font-family: 'GS Sans'; src: url(../fonts/AlbertSans-SemiBold.ttf) format('truetype'); font-weight: 600; font-display: block; }
@font-face { font-family: 'GS Sans'; src: url(../fonts/AlbertSans-Bold.ttf) format('truetype'); font-weight: 700; font-display: block; }

.st {
  --navy: #305371; --navy-d: #25425C; --sky: #5F9BC6; --sky-l: #A9C8DF; --sky-xl: #DCE7F0; --sand: #F1ECE6; --off: #F8F6F3;
  --si-red: #E2532F; --si-blue: #305371;
  position: relative; width: 1080px; height: 1920px; overflow: hidden; background: var(--off); color: var(--navy);
  font-family: 'GS Sans', sans-serif; -webkit-font-smoothing: antialiased; text-rendering: geometricPrecision;
  transform-origin: 0 0; contain: strict; user-select: none;
}
.st * { box-sizing: border-box; }
.st .scene { position: absolute; inset: 0; }
.st .a { position: absolute; }
.st .imgbox { overflow: hidden; }
.st .imgbox img { position: absolute; left: 0; top: 0; width: 100%; height: 100%; object-fit: cover; transform-origin: 50% 50%; }
.st .serif { font-family: 'GS Serif', serif; font-weight: 400; }
.st .caps { text-transform: uppercase; letter-spacing: 0.015em; }
.st .it { font-family: 'GS Serif', serif; font-style: italic; color: var(--sky); }
.st .label { font-weight: 600; font-size: 24px; letter-spacing: 0.2em; text-transform: uppercase; }
.st .lines .ln { position: relative; display: block; overflow: hidden; padding: 0.08em 0 0.16em; margin: -0.08em 0 -0.16em; white-space: nowrap; }
.st .lines .ln > span { display: inline-block; will-change: transform; }
.st .center, .st .center .ln { text-align: center; }
.st .rule { height: 1.5px; background: currentColor; transform-origin: 50% 50%; }
.st .rule.l { transform-origin: 0 50%; }
.st .lbg { overflow: hidden; }
.st .lbg .glow { position: absolute; border-radius: 50%; }
.st .tide { z-index: 50; pointer-events: none; }
.st .note { font-size: 20px; letter-spacing: 0.16em; text-transform: uppercase; font-weight: 600; }
.st .btn { display: inline-flex; align-items: center; justify-content: center; height: 78px; padding: 0 44px; font-weight: 600; font-size: 22px; letter-spacing: 0.2em; text-transform: uppercase; white-space: nowrap; }
.st .logo { display: block; }

/* Super Island : identité de l'événement conservée */
.st .si-name { font-family: 'GS Sans', sans-serif; font-weight: 700; color: var(--si-blue); letter-spacing: 0.01em; text-align: center; line-height: 1.02; }
.st .si-name small { font-size: 0.42em; font-weight: 700; vertical-align: 0.55em; margin: 0 .2em; }
.st .si-date { font-family: 'GS Sans', sans-serif; font-weight: 700; color: var(--si-red); letter-spacing: 0.04em; }
.st .card { background: #FBF3EA; box-shadow: 0 24px 60px rgba(48, 83, 113, .2), 0 2px 6px rgba(48, 83, 113, .1); overflow: hidden; }
.st .card img { position: absolute; left: 0; top: 0; width: 100%; height: 100%; object-fit: cover; }

/* QR : pixels nets, jamais lissés */
.st .qr img { image-rendering: pixelated; image-rendering: crisp-edges; width: 370px; height: 370px; position: absolute; }
