
/* ═══════════════════════════════════════════
   RING OF SPIES — Elementor Global CSS
   Paste into: Elementor > Site Settings > Custom CSS
   or Appearance > Customize > Additional CSS
═══════════════════════════════════════════ */

@import url('https://fonts.googleapis.com/css2?family=Cinzel+Decorative:wght@400;700;900&family=Cinzel:wght@400;500;700;900&family=Cormorant+Garamond:ital,wght@0,400;0,600;1,400;1,600&family=EB+Garamond:ital,wght@0,400;0,500;1,400&family=Playfair+Display:ital,wght@0,400;0,700;0,900;1,400&display=swap');

/* ── Design Tokens ── */
:root {
  --ros-black:  #060504;
  --ros-ink:    #0d0a07;
  --ros-deep:   #160f08;
  --ros-bark:   #1e1409;
  --ros-gold:   #c9911f;
  --ros-gold-b: #e8b840;
  --ros-gold-p: #f5dfa0;
  --ros-ember:  #7a1212;
  --ros-cream:  #f2e8d0;
  --ros-smoke:  #8a7860;
  --ros-mist:   #b8a888;
}

/* ── Body & Base ── */
body {
  background-color: var(--ros-black) !important;
  color: var(--ros-cream);
  font-family: 'EB Garamond', Georgia, serif;
  -webkit-font-smoothing: antialiased;
}

/* ── Film-grain overlay ── */
body::before {
  content: '';
  position: fixed;
  inset: 0;
  z-index: 9998;
  pointer-events: none;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='250' height='250'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='4' stitchTiles='stitch'/%3E%3CfeColorMatrix type='saturate' values='0'/%3E%3C/filter%3E%3Crect width='250' height='250' filter='url(%23n)' opacity='.05'/%3E%3C/svg%3E");
  opacity: .45;
  mix-blend-mode: overlay;
}

/* ── Scrollbar ── */
::-webkit-scrollbar { width: 3px; }
::-webkit-scrollbar-track { background: var(--ros-black); }
::-webkit-scrollbar-thumb { background: var(--ros-gold); }

/* ── Global section padding override ── */
.elementor-section.elementor-section-boxed > .elementor-container {
  max-width: 1200px;
}

/* ── Eyebrow / label style ── */
.ros-label {
  display: block;
  font-family: 'Cinzel', serif;
  font-size: clamp(.46rem,.65vw,.6rem);
  letter-spacing: .55em;
  text-transform: uppercase;
  color: var(--ros-gold);
  margin-bottom: 1rem;
}
.ros-label-line {
  display: flex;
  align-items: center;
  gap: 1.2rem;
}
.ros-label-line::before,
.ros-label-line::after {
  content: '';
  flex: 1;
  max-width: 72px;
  height: 1px;
  background: linear-gradient(90deg, transparent, var(--ros-gold), transparent);
}

/* ── SECTION: Hero ── */
.ros-hero-section {
  min-height: 100vh !important;
  position: relative;
  overflow: hidden;
}
.ros-hero-section .elementor-background-overlay {
  background: linear-gradient(
    180deg,
    rgba(6,5,4,.55) 0%,
    rgba(6,5,4,.12) 32%,
    rgba(6,5,4,.38) 65%,
    rgba(6,5,4,.97) 100%
  ),
  radial-gradient(ellipse 80% 50% at 50% 108%, rgba(90,13,13,.88) 0%, transparent 55%);
}
.ros-hero-logo {
  max-width: min(640px, 82vw);
  filter: drop-shadow(0 4px 40px rgba(0,0,0,.9)) drop-shadow(0 0 60px rgba(201,145,31,.1));
}

/* Hero frame corners */
.ros-frame-wrap {
  position: absolute;
  inset: clamp(.8rem,1.5vw,1.6rem);
  pointer-events: none;
  border: 1px solid rgba(201,145,31,.08);
  z-index: 5;
}
.ros-frame-wrap::before {
  content: '';
  position: absolute;
  inset: 8px;
  border: 1px solid rgba(201,145,31,.04);
}
.ros-corner {
  position: absolute;
  width: clamp(22px,3.2vw,44px);
  height: clamp(22px,3.2vw,44px);
  border-style: solid;
  border-color: rgba(201,145,31,.65);
}
.ros-corner-tl { top:-1px; left:-1px; border-width:2px 0 0 2px; }
.ros-corner-tr { top:-1px; right:-1px; border-width:2px 2px 0 0; }
.ros-corner-bl { bottom:-1px; left:-1px; border-width:0 0 2px 2px; }
.ros-corner-br { bottom:-1px; right:-1px; border-width:0 2px 2px 0; }

/* ── SECTION: Ticker bar ── */
.ros-ticker-section {
  background: linear-gradient(135deg, #3d0808 0%, #500a0a 50%, #3d0808 100%) !important;
  border-top: 1px solid rgba(201,145,31,.18);
  border-bottom: 1px solid rgba(201,145,31,.18);
  overflow: hidden;
}
.ros-ticker-track {
  display: flex;
  width: max-content;
  animation: rosTicker 34s linear infinite;
  white-space: nowrap;
}
.ros-ticker-item {
  padding: 0 3rem;
  font-family: 'Cinzel', serif;
  font-size: .6rem;
  letter-spacing: .18em;
  text-transform: uppercase;
  color: #f5dfa0;
}
.ros-ticker-item strong { color: #fff; }
@keyframes rosTicker { to { transform: translateX(-50%); } }

/* ── SECTION: Stats ── */
.ros-stats-section {
  background: var(--ros-ink) !important;
  border-bottom: 1px solid rgba(201,145,31,.08);
}
.ros-stat-item { text-align: center; }
.ros-stat-item .elementor-counter-number-wrapper {
  font-family: 'Playfair Display', serif !important;
  font-size: clamp(2rem,3.5vw,3.2rem) !important;
  font-weight: 900 !important;
  color: #e8b840 !important;
  text-shadow: 0 0 50px rgba(232,184,64,.25);
}
.ros-stat-item .elementor-counter-title {
  font-family: 'Cinzel', serif !important;
  font-size: .54rem !important;
  letter-spacing: .26em !important;
  text-transform: uppercase !important;
  color: var(--ros-smoke) !important;
  margin-top: .5rem;
  line-height: 1.6;
}
/* stat dividers */
.ros-stat-divider {
  border-right: 1px solid rgba(201,145,31,.1);
  min-height: 90px;
}
@media(max-width:767px) { .ros-stat-divider { border-right: none; border-bottom: 1px solid rgba(201,145,31,.1); } }

/* ── SECTION: Story ── */
.ros-story-section {
  background: linear-gradient(180deg, #060504 0%, #160f08 50%, #060504 100%) !important;
}
.ros-story-img-wrap {
  border: 1px solid rgba(201,145,31,.22);
  position: relative;
  overflow: hidden;
}
.ros-story-img-wrap img {
  width: 100%;
  aspect-ratio: 3/4;
  object-fit: cover;
  object-position: center top;
  display: block;
  transition: transform 8s ease;
}
.ros-story-img-wrap:hover img { transform: scale(1.04); }
.ros-story-img-wrap::after {
  content: '';
  position: absolute;
  bottom: 0; left: 0; right: 0;
  height: 38%;
  background: linear-gradient(0deg, rgba(6,5,4,.97) 0%, transparent 100%);
  pointer-events: none;
}
.ros-img-caption {
  position: absolute;
  bottom: .8rem; left: 0; right: 0;
  z-index: 2;
  text-align: center;
  font-family: 'Cinzel', serif;
  font-size: .5rem;
  letter-spacing: .2em;
  text-transform: uppercase;
  color: rgba(201,145,31,.5);
}
.ros-corner-frame {
  position: absolute;
  inset: -3px;
  pointer-events: none;
  z-index: 3;
}
.ros-corner-frame .c { position:absolute; width:24px; height:24px; border-style:solid; border-color:rgba(201,145,31,.6); }
.ros-corner-frame .c.tl { top:0;left:0;border-width:2px 0 0 2px; }
.ros-corner-frame .c.tr { top:0;right:0;border-width:2px 2px 0 0; }
.ros-corner-frame .c.bl { bottom:0;left:0;border-width:0 0 2px 2px; }
.ros-corner-frame .c.br { bottom:0;right:0;border-width:0 2px 2px 0; }

/* Pull quote */
.ros-pull-quote {
  border-left: 2px solid var(--ros-gold) !important;
  padding: 1.2rem 2rem !important;
  background: rgba(201,145,31,.06) !important;
}
.ros-pull-quote p {
  font-family: 'Cormorant Garamond', serif !important;
  font-style: italic;
  font-size: clamp(1rem,1.4vw,1.22rem) !important;
  color: #f0d080 !important;
  line-height: 1.65;
}

/* Spy tags */
.ros-spy-tags { display: flex; flex-wrap: wrap; gap: .5rem; margin-top: 1.5rem; }
.ros-spy-tag {
  padding: .32rem .9rem;
  font-family: 'Cinzel', serif;
  font-size: .5rem;
  letter-spacing: .18em;
  text-transform: uppercase;
  color: var(--ros-smoke);
  border: 1px solid rgba(201,145,31,.18);
  background: rgba(201,145,31,.04);
  transition: .25s;
}
.ros-spy-tag:hover {
  border-color: rgba(201,145,31,.45);
  color: #e8b840;
  background: rgba(201,145,31,.08);
}

/* ── SECTION: Why / Cards ── */
.ros-why-section {
  background: #160f08 !important;
  border-top: 1px solid rgba(201,145,31,.07);
  border-bottom: 1px solid rgba(201,145,31,.07);
}
.ros-icon-box-card {
  padding: 2.8rem 2.2rem;
  background: #160f08;
  border: 1px solid rgba(201,145,31,.1);
  transition: background .35s, transform .35s;
  height: 100%;
  position: relative;
  overflow: hidden;
}
.ros-icon-box-card::after {
  content: '';
  position: absolute;
  bottom: 0; left: 0; right: 0;
  height: 1px;
  background: linear-gradient(90deg, transparent, var(--ros-gold), transparent);
  transform: scaleX(0);
  transition: transform .4s;
  transform-origin: left;
}
.ros-icon-box-card:hover { background: rgba(201,145,31,.04); transform: translateY(-3px); }
.ros-icon-box-card:hover::after { transform: scaleX(1); }
.ros-card-num {
  font-family: 'Playfair Display', serif;
  font-size: 5rem;
  font-weight: 900;
  line-height: .9;
  color: rgba(201,145,31,.08);
  margin-bottom: .5rem;
  transition: color .35s;
}
.ros-icon-box-card:hover .ros-card-num { color: rgba(201,145,31,.16); }

/* Fact strip */
.ros-fact-strip {
  background: var(--ros-ink) !important;
  border: 1px solid rgba(201,145,31,.12);
}
.ros-fact-cell {
  text-align: center;
  padding: 2rem 1.5rem;
  border-right: 1px solid rgba(201,145,31,.08);
}
.ros-fact-cell:last-child { border-right: none; }
.ros-fact-cell:hover { background: rgba(201,145,31,.03); }
.ros-fact-num {
  font-family: 'Playfair Display', serif;
  font-size: clamp(1.6rem,2.8vw,2.3rem);
  font-weight: 900;
  color: #e8b840;
  line-height: 1;
  text-shadow: 0 0 40px rgba(232,184,64,.25);
}
.ros-fact-lbl {
  font-family: 'Cinzel', serif;
  font-size: .5rem;
  letter-spacing: .2em;
  text-transform: uppercase;
  color: var(--ros-smoke);
  margin-top: .4rem;
  line-height: 1.6;
}

/* ── SECTION: Gallery ── */
.ros-gallery-section { background: var(--ros-black) !important; }
.ros-gallery-grid {
  display: grid;
  grid-template-columns: 1.5fr 1fr 1fr;
  grid-template-rows: 300px 300px;
  gap: 3px;
  width: 100%;
}
.ros-gal-main { grid-row: 1/3; position: relative; overflow: hidden; }
.ros-gal-cell { position: relative; overflow: hidden; }
.ros-gal-cell img, .ros-gal-main img {
  width: 100%; height: 100%;
  object-fit: cover;
  display: block;
  transition: transform .7s cubic-bezier(.16,1,.3,1);
}
.ros-gal-cell:hover img, .ros-gal-main:hover img { transform: scale(1.06); }
.ros-gal-overlay {
  position: absolute;
  bottom: 0; left: 0; right: 0;
  padding: 3rem 1.8rem 1.4rem;
  background: linear-gradient(0deg, rgba(6,5,4,.92) 0%, transparent 100%);
  pointer-events: none;
}
.ros-gal-tag { font-family:'Cinzel',serif; font-size:.52rem; letter-spacing:.3em; text-transform:uppercase; color:var(--ros-gold); }
.ros-gal-name { font-family:'Playfair Display',serif; font-size:1.3rem; font-weight:700; color:var(--ros-cream); }
.ros-gal-sm-cap {
  position: absolute;
  bottom: .7rem; left: .8rem; right: .8rem;
  font-family: 'Cormorant Garamond', serif;
  font-style: italic; font-size: .82rem;
  color: #f0d080;
  pointer-events: none;
}
@media(max-width:860px) {
  .ros-gallery-grid { grid-template-columns:1fr 1fr; grid-template-rows:auto; }
  .ros-gal-main { grid-row:auto; grid-column:1/3; height:260px; }
  .ros-gal-cell { height:200px; }
}
@media(max-width:520px) {
  .ros-gallery-grid { grid-template-columns:1fr; }
  .ros-gal-main,.ros-gal-cell { grid-column:1; height:200px; }
}

/* ── SECTION: Trailer ── */
.ros-trailer-section { background: var(--ros-ink) !important; }
.ros-stage-wrap {
  position: relative;
  max-width: 860px;
  margin: 0 auto;
  aspect-ratio: 16/9;
  cursor: pointer;
  border: 1px solid rgba(201,145,31,.22);
  overflow: hidden;
  background-size: cover;
  background-position: center 40%;
}
.ros-film-top, .ros-film-bot {
  position: absolute; left:0; right:0; z-index:2;
  height: 32px;
  background: repeating-linear-gradient(90deg,rgba(0,0,0,.92) 0,rgba(0,0,0,.92) 12px,rgba(0,0,0,.35) 12px,rgba(0,0,0,.35) 16px);
  pointer-events: none;
}
.ros-film-top { top:0; }
.ros-film-bot { bottom:0; }
.ros-play-zone {
  position: absolute; inset: 32px; z-index:3;
  display: flex; flex-direction:column;
  align-items:center; justify-content:center; gap:1.4rem;
}
.ros-play-btn {
  width: clamp(64px,8vw,88px);
  height: clamp(64px,8vw,88px);
  border-radius: 50%;
  background: rgba(201,145,31,.12);
  border: 1.5px solid rgba(201,145,31,.6);
  display: flex; align-items:center; justify-content:center;
  font-size: clamp(1.4rem,2.2vw,1.8rem);
  color: #e8b840;
  backdrop-filter: blur(8px);
  box-shadow: 0 0 60px rgba(201,145,31,.2),0 4px 30px rgba(0,0,0,.6);
  transition: .4s;
  position: relative;
}
.ros-play-btn::before, .ros-play-btn::after {
  content: ''; position:absolute; border-radius:50%;
  border: 1px solid rgba(201,145,31,.18);
  animation: rosRipple 2.5s ease-out infinite;
}
.ros-play-btn::before { inset:-10px; }
.ros-play-btn::after { inset:-22px; animation-delay:.6s; }
@keyframes rosRipple { 0%{transform:scale(1);opacity:.6} 100%{transform:scale(1.6);opacity:0} }
.ros-stage-wrap:hover .ros-play-btn {
  background: rgba(201,145,31,.28);
  border-color: #e8b840;
  transform: scale(1.1);
  box-shadow: 0 0 90px rgba(201,145,31,.45);
}
.ros-stage-label {
  font-family: 'Cinzel',serif;
  font-size: .58rem;
  letter-spacing: .3em;
  text-transform: uppercase;
  color: var(--ros-smoke);
}
.ros-stage-label::before, .ros-stage-label::after { content:' — '; color:var(--ros-gold); }
.ros-stage-iframe {
  position: absolute; inset:32px; z-index:10;
  border:none; background:#000; display:none;
}
.ros-stage-iframe.active { display:block; }

/* Scene thumbs */
.ros-scene-grid {
  display: grid;
  grid-template-columns: repeat(4,1fr);
  gap: .8rem;
  max-width: 860px;
  margin: 1.2rem auto 0;
}
@media(max-width:600px) { .ros-scene-grid { grid-template-columns:1fr 1fr; } }
.ros-scene-thumb {
  aspect-ratio:16/9; overflow:hidden;
  border: 1px solid rgba(201,145,31,.12);
  position: relative; cursor:pointer;
  transition: .3s;
}
.ros-scene-thumb img { width:100%;height:100%;object-fit:cover;display:block;transition:transform .4s; }
.ros-scene-thumb:hover { border-color:rgba(201,145,31,.45);transform:translateY(-2px); }
.ros-scene-thumb:hover img { transform:scale(1.08); }
.ros-scene-thumb::after {
  content:attr(data-lbl);
  position:absolute; bottom:0;left:0;right:0;
  padding:.3rem .5rem;
  background:rgba(6,5,4,.85);
  font-family:'Cinzel',serif; font-size:.47rem; letter-spacing:.14em;
  text-transform:uppercase; color:var(--ros-gold); text-align:center;
}

/* ── SECTION: Tickets ── */
.ros-tickets-section {
  background: linear-gradient(160deg, #160f08 0%, #1e1409 50%, #160f08 100%) !important;
  border-top: 1px solid rgba(201,145,31,.08);
}
.elementor-price-table {
  background: rgba(255,255,255,.03) !important;
  border: 1px solid rgba(201,145,31,.18) !important;
  border-radius: 0 !important;
}
.elementor-price-table.elementor-ribbon:before { border-radius:0 !important; }
.elementor-price-table__header { background: transparent !important; }
.elementor-price-table__footer { background: transparent !important; }

.ros-group-box {
  background: rgba(201,145,31,.04) !important;
  border: 1px solid rgba(201,145,31,.18);
  padding: 3rem;
  text-align: center;
}
.ros-group-box h3 {
  font-family: 'Playfair Display',serif;
  font-size: 1.6rem;
  font-weight: 700;
  color: var(--ros-cream);
}

/* ── SECTION: Testimonials ── */
.ros-testi-section {
  border-top: 1px solid rgba(201,145,31,.08);
}
.ros-testi-section .elementor-background-overlay {
  background: linear-gradient(180deg, rgba(22,14,7,.93) 0%, rgba(6,5,4,.98) 100%);
}
.ros-hero-quote {
  background: rgba(201,145,31,.06);
  border: 1px solid rgba(201,145,31,.22);
  padding: clamp(2rem,4vw,3.5rem);
  text-align: center;
  position: relative;
}
.ros-hero-quote::before { content:'"'; position:absolute; top:.5rem;left:1rem; font-family:'Playfair Display',serif; font-size:5rem; line-height:1; color:rgba(201,145,31,.18); pointer-events:none; }
.ros-hero-quote::after  { content:'"'; position:absolute; bottom:-.5rem;right:1rem; font-family:'Playfair Display',serif; font-size:5rem; line-height:1; color:rgba(201,145,31,.18); pointer-events:none; }
.ros-hero-quote blockquote {
  font-family: 'Cormorant Garamond', serif;
  font-style: italic;
  font-size: clamp(1.05rem,1.65vw,1.4rem);
  color: var(--ros-cream);
  line-height: 1.7;
  max-width: 75ch;
  margin: 0 auto 1.2rem;
}
.ros-hero-quote footer {
  font-family: 'Cinzel',serif;
  font-size: .55rem;
  letter-spacing: .28em;
  text-transform: uppercase;
  color: var(--ros-gold);
}
.ros-review-card {
  background: rgba(255,255,255,.025) !important;
  border: 1px solid rgba(201,145,31,.1);
  padding: 2.2rem 2rem;
  transition: border-color .3s, transform .3s;
}
.ros-review-card:hover { border-color: rgba(201,145,31,.28); transform:translateY(-3px); }
.ros-stars { color:var(--ros-gold); font-size:.85rem; letter-spacing:.2em; margin-bottom:1.2rem; }
.ros-review-text { font-family:'Cormorant Garamond',serif; font-style:italic; font-size:1rem; color:var(--ros-mist); line-height:1.75; margin-bottom:1.4rem; }
.ros-review-attr { font-family:'Cinzel',serif; font-size:.52rem; letter-spacing:.16em; text-transform:uppercase; color:var(--ros-smoke); border-top:1px solid rgba(201,145,31,.08); padding-top:1rem; }
.ros-review-attr strong { color:var(--ros-gold); display:block; margin-bottom:.2rem; }

/* ── SECTION: Email ── */
.ros-email-section {
  background: linear-gradient(155deg, #3d0808 0%, #3a0606 50%, #3d0808 100%) !important;
  border-top: 1px solid rgba(201,145,31,.18);
  border-bottom: 1px solid rgba(201,145,31,.18);
}
.ros-email-section .elementor-form .elementor-field-group { margin-bottom: 0; }
.ros-email-section input[type="email"] {
  background: rgba(0,0,0,.5) !important;
  border: 1px solid rgba(201,145,31,.5) !important;
  border-right: none !important;
  border-radius: 0 !important;
  color: #f2e8d0 !important;
  padding: 1rem 1.4rem !important;
  font-family: 'EB Garamond',serif !important;
  font-size: 1rem !important;
}
.ros-email-section input[type="email"]::placeholder { color: rgba(255,255,255,.3) !important; }
.ros-email-section .elementor-button {
  background: var(--ros-gold) !important;
  color: #060504 !important;
  border-radius: 0 !important;
  font-family: 'Cinzel',serif !important;
  font-size: .62rem !important;
  font-weight: 700 !important;
  letter-spacing: .22em !important;
  text-transform: uppercase !important;
  padding: 1rem 1.8rem !important;
  border: none !important;
  transition: background .25s !important;
}
.ros-email-section .elementor-button:hover { background: #e8b840 !important; }
.ros-lead-box {
  display: flex; gap: 1.4rem; align-items: center;
  background: rgba(0,0,0,.32);
  border: 1px solid rgba(201,145,31,.22);
  padding: 1.5rem 2rem;
}
@media(max-width:540px) { .ros-lead-box { flex-direction:column; text-align:center; } }
.ros-lead-label { font-family:'Cinzel',serif; font-size:.55rem; letter-spacing:.22em; text-transform:uppercase; color:var(--ros-gold); margin-bottom:.3rem; }
.ros-lead-desc { font-size:.88rem; color:rgba(255,255,255,.65); line-height:1.55; }
.ros-lead-desc strong { color:#f5dfa0; }

/* ── SECTION: Partners ── */
.ros-partners-section { background:var(--ros-black) !important; border-top:1px solid rgba(201,145,31,.08); }
.ros-sponsor-card {
  background: rgba(255,255,255,.025);
  border: 1px solid rgba(201,145,31,.14);
  padding: 2.8rem 2.2rem;
  transition: transform .3s, box-shadow .3s, border-color .3s;
}
.ros-sponsor-card:hover { transform:translateY(-4px); box-shadow:0 24px 55px rgba(0,0,0,.45); border-color:rgba(201,145,31,.35); }
.ros-sponsor-card.featured { border-color:var(--ros-gold); background:rgba(201,145,31,.07); }
.ros-logo-pill {
  height: 52px; padding: 0 1.5rem;
  background: rgba(255,255,255,.025);
  border: 1px solid rgba(201,145,31,.1);
  display: inline-flex; align-items:center; justify-content:center;
  font-family: 'Cinzel',serif; font-size:.49rem; letter-spacing:.16em;
  text-transform:uppercase; color:rgba(201,145,31,.28);
  transition: .28s;
}
.ros-logo-pill:hover { background:rgba(201,145,31,.05); border-color:rgba(201,145,31,.28); color:rgba(201,145,31,.65); }

/* ── SECTION: Final CTA ── */
.ros-final-section {
  background: linear-gradient(155deg, #160f08 0%, #1e1409 45%, #160f08 100%) !important;
  border-top: 1px solid rgba(201,145,31,.12);
  text-align: center;
}
.ros-final-section .elementor-background-overlay {
  background:
    radial-gradient(ellipse 65% 60% at 50% 50%, rgba(201,145,31,.06) 0%, transparent 60%),
    radial-gradient(ellipse 55% 50% at 50% 105%, rgba(122,18,18,.24) 0%, transparent 60%);
}

/* Countdown */
.ros-countdown { display:inline-flex; flex-direction:column; align-items:center; gap:.6rem; padding:1.4rem 3rem; margin-bottom:2.5rem; background:rgba(122,18,18,.18); border:1px solid rgba(201,145,31,.2); }
.ros-cd-label { font-family:'Cinzel',serif; font-size:.52rem; letter-spacing:.3em; text-transform:uppercase; color:var(--ros-smoke); }
.ros-cd-digits { display:flex; gap:1.5rem; align-items:center; }
.ros-cd-unit { text-align:center; }
.ros-cd-val { font-family:'Playfair Display',serif; font-weight:900; font-size:clamp(2.2rem,4.5vw,3.8rem); color:#d44c20; line-height:1; min-width:2.2ch; display:inline-block; }
.ros-cd-key { font-family:'Cinzel',serif; font-size:.48rem; letter-spacing:.25em; text-transform:uppercase; color:var(--ros-smoke); margin-top:.3rem; }
.ros-cd-colon { font-family:'Playfair Display',serif; font-size:2.5rem; font-weight:900; color:rgba(201,145,31,.35); margin-top:-.5rem; animation:rosBlink 1s ease-in-out infinite; }
@keyframes rosBlink { 0%,100%{opacity:.35} 50%{opacity:.85} }

/* Price pills */
.ros-price-row { display:flex; gap:1.2rem; justify-content:center; flex-wrap:wrap; margin-bottom:2.5rem; }
.ros-price-pill { display:flex; flex-direction:column; align-items:center; gap:.3rem; padding:1.2rem 2.2rem; border:1px solid rgba(201,145,31,.22); background:rgba(255,255,255,.02); min-width:145px; position:relative; overflow:hidden; transition:.3s; }
.ros-price-pill:hover { border-color:rgba(201,145,31,.5); transform:translateY(-3px); background:rgba(201,145,31,.06); }
.ros-price-pill.hot { border-color:var(--ros-gold); background:rgba(201,145,31,.1); }
.ros-pp-badge { position:absolute; top:0;right:0; background:var(--ros-gold); color:#060504; font-family:'Cinzel',serif; font-size:.44rem; font-weight:700; letter-spacing:.15em; text-transform:uppercase; padding:.18rem .6rem; }
.ros-pp-tier { font-family:'Cinzel',serif; font-size:.5rem; letter-spacing:.25em; text-transform:uppercase; color:var(--ros-gold); }
.ros-pp-price { font-family:'Playfair Display',serif; font-size:2.2rem; font-weight:900; color:#e8b840; line-height:1; }
.ros-pp-name { font-family:'Cormorant Garamond',serif; font-style:italic; font-size:.85rem; color:var(--ros-smoke); }

/* Trust bar */
.ros-trust-bar { display:flex; align-items:center; justify-content:center; flex-wrap:wrap; gap:2rem; margin-bottom:2.5rem; }
.ros-trust-item { font-family:'Cinzel',serif; font-size:.5rem; letter-spacing:.16em; text-transform:uppercase; color:var(--ros-smoke); display:flex; align-items:center; gap:.4rem; }
.ros-trust-item::before { content:'✓'; color:#e8b840; font-weight:700; }

/* QR block */
.ros-qr-wrap { display:flex; flex-direction:column; align-items:center; gap:.9rem; margin-top:1.5rem; }
.ros-qr-label { font-family:'Cinzel',serif; font-size:.52rem; letter-spacing:.3em; text-transform:uppercase; color:var(--ros-smoke); }
.ros-qr-box { padding:10px; background:#fff; display:inline-block; border:3px solid rgba(201,145,31,.45); box-shadow:0 0 35px rgba(201,145,31,.12); }
.ros-qr-sub { font-family:'Cormorant Garamond',serif; font-style:italic; font-size:.82rem; color:var(--ros-smoke); }

/* ── Navigation ── */
.ros-nav {
  background: transparent !important;
  transition: background .5s, box-shadow .5s;
}
.ros-nav.scrolled {
  background: rgba(6,5,4,.94) !important;
  backdrop-filter: blur(24px);
  box-shadow: 0 1px 40px rgba(0,0,0,.6);
}
.ros-nav .elementor-nav-menu a {
  font-family: 'Cinzel',serif !important;
  font-size: .54rem !important;
  letter-spacing: .2em !important;
  text-transform: uppercase !important;
  color: #8a7860 !important;
  transition: color .25s !important;
}
.ros-nav .elementor-nav-menu a:hover { color: #e8b840 !important; }
.ros-nav .elementor-nav-menu--main .elementor-item:hover:not(.elementor-item--active):after,
.ros-nav .elementor-nav-menu--main .elementor-item:focus:not(.elementor-item--active):after {
  background-color: #e8b840 !important;
}

/* ── Footer ── */
.ros-footer-section { background:var(--ros-black) !important; border-top:1px solid rgba(201,145,31,.1); }
.ros-f250-stripe {
  display:flex; align-items:center; justify-content:center;
  gap:2rem; flex-wrap:wrap;
  padding:1.8rem;
  background:linear-gradient(135deg, rgba(61,8,8,.18), rgba(6,5,4,.55), rgba(0,22,70,.12));
  border-top:1px solid rgba(201,145,31,.1);
  border-bottom:1px solid rgba(201,145,31,.1);
}
.ros-f-links a { font-size:.87rem; color:var(--ros-smoke); transition:color .22s; }
.ros-f-links a:hover { color:#e8b840; }

/* ── Scroll reveal ── */
[data-ros-sr] { opacity:0; transform:translateY(24px); transition:opacity .9s cubic-bezier(.16,1,.3,1), transform .9s cubic-bezier(.16,1,.3,1); }
[data-ros-sr="left"]  { transform:translateX(-24px); }
[data-ros-sr="right"] { transform:translateX(24px); }
[data-ros-sr="scale"] { transform:scale(.97) translateY(14px); }
[data-ros-sr].ros-visible { opacity:1; transform:none; }

/* ── Section heading style ── */
.ros-section-h { font-family:'Playfair Display',serif !important; font-weight:900 !important; color:var(--ros-cream) !important; line-height:1.1 !important; }
.ros-section-h em { font-style:italic; color:#e8b840; }

/* ── Responsive ── */
@media(max-width:767px) {
  .ros-hero-section { min-height:100svh; }
  .ros-gallery-grid, .ros-scene-grid { gap:2px; }
  .ros-price-row { gap:.8rem; }
  .ros-price-pill { min-width:110px; padding:1rem 1.2rem; }
}
