@import url("https://fonts.googleapis.com/css2?family=Cormorant+Garamond:wght@500;600;700&family=Manrope:wght@400;500;600;700;800&display=swap");

:root{
  --bg:#070405;
  --bg-2:#0d0708;
  --bg-3:#150d0d;
  --panel:rgba(255,255,255,.045);
  --panel-2:rgba(255,255,255,.065);
  --line:rgba(255,255,255,.08);
  --line-strong:rgba(232,211,179,.16);
  --text:#f7efe5;
  --muted:rgba(247,239,229,.74);
  --muted-soft:rgba(247,239,229,.56);
  --gold:#c99d62;
  --gold-soft:#ead6ba;
  --gold-deep:#8b6330;
  --shadow:0 26px 80px rgba(0,0,0,.34);
  --shadow-soft:0 14px 34px rgba(0,0,0,.24);
  --radius:30px;
  --radius-sm:22px;
  --max:1260px;
}

*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{
  margin:0;
  font-family:"Manrope",system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
  color:var(--text);
  background:
    radial-gradient(circle at 12% 0%, rgba(201,157,98,.12), transparent 22%),
    radial-gradient(circle at 88% 8%, rgba(201,157,98,.08), transparent 18%),
    linear-gradient(180deg, #120a0b 0%, #080405 40%, #060304 100%);
}

a{color:inherit;text-decoration:none}
img,video{max-width:100%;display:block}
.container{width:min(var(--max), calc(100% - 40px));margin:0 auto}
.scroll-progress{position:fixed;top:0;left:0;height:3px;width:0;background:linear-gradient(90deg,var(--gold-soft),var(--gold));z-index:999}

.site-header{position:sticky;top:0;z-index:80;padding:14px 0;backdrop-filter:saturate(140%) blur(14px)}
.header-shell{
  display:flex;align-items:center;justify-content:space-between;gap:20px;
  padding:10px 12px 10px 18px;
  border:1px solid rgba(255,255,255,.08);
  background:linear-gradient(180deg, rgba(10,7,7,.78), rgba(8,5,5,.52));
  border-radius:999px;
  box-shadow:var(--shadow-soft);
  transition:transform .25s ease, background .25s ease, border-color .25s ease;
}
.site-header.scrolled .header-shell{
  background:linear-gradient(180deg, rgba(8,5,5,.9), rgba(8,5,5,.74));
  border-color:rgba(232,211,179,.14);
  transform:translateY(-2px);
}
.brand{display:flex;flex-direction:column;gap:2px;line-height:1}
.brand small,.kicker,.eyebrow,.offer-top small,.gallery-copy span,.media-badge span{
  font-size:11px;letter-spacing:.22em;text-transform:uppercase;color:rgba(247,239,229,.66)
}
.brand strong{
  font-family:"Cormorant Garamond",Georgia,serif;
  font-size:38px;
  font-weight:700;
  letter-spacing:-.02em;
}
nav,.header-actions,.hero-actions,.hero-trust,.bullet-pills,.footer-pills,.footer-bottom-links,.footer-links-list,.footer-meta-list,.cta-banner-actions{display:flex;flex-wrap:wrap;gap:12px}
nav a,.mobile-nav a{font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.16em;color:rgba(247,239,229,.8)}
nav a.active,.mobile-nav a.active{color:var(--text)}
nav a.active::after,.mobile-nav a.active::after{content:"";display:block;height:2px;background:linear-gradient(90deg,var(--gold-soft),var(--gold));margin-top:6px;border-radius:99px}

.btn{
  display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:0 20px;border-radius:999px;
  border:1px solid rgba(255,255,255,.1);
  font-size:11px;font-weight:800;letter-spacing:.16em;text-transform:uppercase;
  transition:transform .22s ease, box-shadow .22s ease, border-color .22s ease, background .22s ease, color .22s ease;
}
.btn:hover,.mini-link:hover,.quick-action:hover{transform:translateY(-2px)}
.btn-gold{
  background:linear-gradient(135deg,var(--gold-soft),var(--gold));
  color:#24160c;
  box-shadow:0 16px 38px rgba(201,157,98,.2);
}
.btn-gold:hover{box-shadow:0 20px 42px rgba(201,157,98,.28)}
.btn-ghost{background:rgba(255,255,255,.03)}
.btn-ghost:hover{border-color:rgba(232,211,179,.2);background:rgba(255,255,255,.06)}
.menu-toggle{display:none;border:1px solid rgba(255,255,255,.1);background:rgba(255,255,255,.04);color:var(--text);width:44px;height:44px;border-radius:999px;cursor:pointer}
.mobile-nav{display:none;padding:18px;border-radius:22px;border:1px solid var(--line);background:rgba(8,5,5,.92);margin-top:12px}

.page-hero{position:relative;padding:88px 0 42px;overflow:hidden;isolation:isolate}
.page-hero::before{
  content:"";position:absolute;inset:0;
  background:
    radial-gradient(circle at 50% 14%, rgba(201,157,98,.17), transparent 18%),
    linear-gradient(180deg, rgba(8,5,5,.18), rgba(8,5,5,.72));
  pointer-events:none;z-index:-1;
}
.page-hero:not(.home-hero)::after{
  content:"";position:absolute;inset:0;
  background:
    linear-gradient(90deg, rgba(6,4,4,.9), rgba(6,4,4,.54) 55%, rgba(6,4,4,.82)),
    url('city-hero-premium.webp') center/cover no-repeat;
  opacity:.34;z-index:-2;
}
.home-hero{min-height:88svh;display:flex;align-items:center}
.hero-video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:.30;filter:saturate(108%) contrast(104%)}
.hero-video-overlay{position:absolute;inset:0;background:linear-gradient(180deg, rgba(7,4,5,.28), rgba(7,4,5,.72) 74%, rgba(7,4,5,.9))}
.page-hero-inner{position:relative;z-index:1;max-width:980px;padding:48px 0;min-height:58svh;display:flex;flex-direction:column;justify-content:center}
.eyebrow{display:inline-flex;align-self:flex-start;padding:10px 14px;border-radius:999px;border:1px solid var(--line);background:rgba(255,255,255,.03)}
.page-hero h1{
  margin:18px 0 12px;
  font-family:"Cormorant Garamond",Georgia,serif;
  font-size:clamp(58px,8vw,96px);
  font-weight:700;
  line-height:.9;
  letter-spacing:-.035em;
  max-width:900px;
  text-wrap:balance;
  text-shadow:0 10px 30px rgba(0,0,0,.24);
}
.page-hero p{margin:0;max-width:780px;font-size:clamp(17px,2vw,20px);line-height:1.86;color:var(--muted)}
.hero-actions{margin-top:28px}
.hero-trust{margin-top:18px}
.hero-trust span,.bullet-pills span,.footer-pill{
  padding:11px 15px;border-radius:999px;border:1px solid rgba(255,255,255,.08);
  background:rgba(255,255,255,.03)
}
.hero-info-bar{
  display:grid;grid-template-columns:repeat(3,1fr);gap:10px;width:min(860px,100%);margin-top:24px;padding:12px;
  border-radius:24px;border:1px solid rgba(255,255,255,.09);
  background:linear-gradient(180deg, rgba(255,255,255,.05), rgba(255,255,255,.028));
  backdrop-filter:blur(12px)
}
.hero-info-item{padding:15px 16px;border-radius:18px;background:rgba(255,255,255,.03);border:1px solid rgba(255,255,255,.04)}
.hero-info-item b{display:block;margin-bottom:6px;font-size:11px;letter-spacing:.16em;text-transform:uppercase;color:rgba(247,239,229,.58)}
.hero-info-item span{font-size:15px;color:var(--text)}

.site-main{padding-bottom:34px}
.section{padding:46px 0}
.section-intro{max-width:840px;margin-bottom:24px}
.section-intro.center{text-align:center;margin-inline:auto;margin-bottom:32px}
.section-intro h2,.panel h2,.cta-banner h2{
  margin:10px 0 0;
  font-family:"Cormorant Garamond",Georgia,serif;
  font-size:clamp(40px,5vw,62px);
  font-weight:700;
  line-height:.95;
  letter-spacing:-.03em;
  text-wrap:balance;
}
.section-intro p,.panel p,.review-item,.contact-row,.faq-answer p,.footer-brand p,.footer-note-list,.small-muted,.form-note{color:var(--muted);line-height:1.84}
.split-grid,.contact-grid{display:grid;grid-template-columns:1.04fr .96fr;gap:20px;align-items:start}
.split-home{align-items:center}

.panel,.faq-item,.review-item,.contact-row,.offer-card,.feature-card,.gallery-card,.cta-banner{
  border:1px solid var(--line);
  background:linear-gradient(180deg, rgba(255,255,255,.06), rgba(255,255,255,.03));
  border-radius:var(--radius);
  box-shadow:var(--shadow);
}
.panel{
  position:relative;
  padding:32px;
  overflow:hidden;
  display:flex;
  flex-direction:column;
  gap:0;
}
.panel::after,.offer-card::after,.feature-card::after,.cta-banner::after{
  content:"";position:absolute;inset:auto 18px 0 18px;height:1px;
  background:linear-gradient(90deg, transparent, rgba(232,211,179,.24), transparent);
}
.panel.luxe{background:linear-gradient(180deg, rgba(201,157,98,.11), rgba(255,255,255,.03))}
.panel.dark-panel{background:linear-gradient(180deg, rgba(255,255,255,.03), rgba(255,255,255,.018))}
.panel > *{position:relative;z-index:1}

.media-panel{
  position:relative;
  overflow:hidden;
  padding:18px;
  background:linear-gradient(180deg, rgba(255,255,255,.06), rgba(255,255,255,.02));
}
.media-panel::before{
  content:"";
  position:absolute;
  inset:18px;
  z-index:1;
  border-radius:calc(var(--radius) - 12px);
  background:linear-gradient(180deg, rgba(6,4,4,.06), rgba(6,4,4,.22) 56%, rgba(6,4,4,.44));
  pointer-events:none;
}
.media-panel img{
  position:relative;
  z-index:0;
  width:100%;
  height:auto;
  display:block;
  border-radius:calc(var(--radius) - 12px);
  aspect-ratio:auto;
  object-fit:cover;
  object-position:center center;
  transform:none;
  transition:transform .45s ease;
}
.media-panel.media-panel-portrait img{object-position:center top}
.media-panel.media-panel-wide img{object-position:center center}
.media-panel:hover img{transform:scale(1.02)}
.media-badge{
  position:absolute;left:36px;bottom:36px;z-index:2;
  width:min(320px, calc(100% - 72px));
  padding:18px 18px 16px;border-radius:20px;
  background:linear-gradient(180deg, rgba(8,5,5,.66), rgba(8,5,5,.82));
  border:1px solid rgba(255,255,255,.1);backdrop-filter:blur(10px)
}
.media-badge strong{display:block;font-size:30px;font-family:"Cormorant Garamond",Georgia,serif;line-height:.95}

.feature-grid,.offer-grid,.gallery-grid{display:grid;gap:18px}
.feature-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
.feature-grid-4{grid-template-columns:repeat(4,minmax(0,1fr))}
.offer-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
.gallery-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
.feature-card,.offer-card{
  position:relative;
  padding:26px;
  min-height:260px;
  display:flex;
  flex-direction:column;
  gap:14px;
  overflow:hidden;
}
.feature-card::before,.offer-card::before{
  content:"";position:absolute;inset:0 0 auto 0;height:1px;
  background:linear-gradient(90deg, transparent, rgba(232,211,179,.2), transparent);
}
.feature-card h3,.offer-card h3,.gallery-copy h3,.faq-item summary{
  margin:0;
  font-family:"Cormorant Garamond",Georgia,serif;
  font-size:clamp(30px,2vw,38px);
  font-weight:700;
  line-height:.94;
  letter-spacing:-.03em;
}
.feature-card p{margin:0;color:var(--muted);line-height:1.82}
.offer-top{min-height:16px}
.offer-card .price{margin:2px 0 0;font-size:12px;font-weight:800;letter-spacing:.2em;text-transform:uppercase;color:var(--gold-soft)}
.offer-card ul,.footer-note-list{margin:6px 0 0;padding:0;list-style:none;display:grid;gap:10px}
.offer-card ul{margin-top:auto}
.offer-card li,.footer-note-list li{position:relative;padding-left:18px;color:var(--muted)}
.offer-card li::before,.footer-note-list li::before{content:"•";position:absolute;left:0;color:var(--gold)}
.offer-card.featured{
  background:linear-gradient(180deg, rgba(201,157,98,.17), rgba(255,255,255,.035));
  transform:translateY(-8px);
  border-color:rgba(232,211,179,.14);
}

.gallery-panel{padding:18px;overflow:hidden}
.gallery-grid.home-gallery{
  grid-template-columns:repeat(12,minmax(0,1fr));
  align-items:stretch;
}
.gallery-card{
  position:relative;
  overflow:hidden;
  min-height:auto;
  grid-column:span 6;
  aspect-ratio:4 / 3;
  border-radius:24px;
  box-shadow:var(--shadow-soft);
  background:rgba(255,255,255,.03);
}
.gallery-card.tall{grid-row:span 1;aspect-ratio:4 / 3}
.gallery-card.featured-wide{grid-column:1 / -1;aspect-ratio:16 / 9}
.gallery-card img{width:100%;height:100%;object-fit:cover;object-position:center;transition:transform .55s ease, filter .55s ease;filter:saturate(104%) contrast(103%)}
.gallery-card:hover img{transform:scale(1.05);filter:saturate(110%) contrast(106%)}
.gallery-card::after{
  content:"";position:absolute;inset:0;
  background:linear-gradient(180deg, rgba(8,5,5,.04), rgba(8,5,5,.2) 45%, rgba(8,5,5,.82));
}
.gallery-copy{position:absolute;left:18px;right:18px;bottom:18px;z-index:1;padding:18px 18px 16px;border-radius:18px;background:linear-gradient(180deg, rgba(8,5,5,.12), rgba(8,5,5,.68));backdrop-filter:blur(8px)}
.gallery-copy h3{font-size:clamp(26px,2vw,34px)}

.review-list,.contact-list,.faq-list{display:grid;gap:12px}
.review-item,.contact-row{padding:18px 20px;border-radius:20px;background:rgba(255,255,255,.03)}
.contact-grid .panel{height:100%}
.form-shell form,.contact-form form{display:grid;gap:12px;margin-top:14px}
.form-shell input,.form-shell textarea,.contact-form input,.contact-form textarea{
  width:100%;padding:16px 16px;border-radius:18px;border:1px solid var(--line);
  background:rgba(255,255,255,.035);color:var(--text);font:inherit
}
.form-shell textarea,.contact-form textarea{min-height:150px;resize:vertical}
.form-shell button,.contact-form button{
  appearance:none;border:none;cursor:pointer;min-height:48px;border-radius:999px;
  background:linear-gradient(135deg,var(--gold-soft),var(--gold));color:#24160c;
  font-size:11px;font-weight:800;letter-spacing:.14em;text-transform:uppercase
}

.faq-item{padding:20px 22px;background:rgba(255,255,255,.03)}
.faq-item summary{cursor:pointer;list-style:none;padding-right:36px;position:relative}
.faq-item summary::-webkit-details-marker{display:none}
.faq-item summary::after{content:"+";position:absolute;right:0;top:-2px;font-family:"Manrope",sans-serif;font-size:24px;color:var(--gold-soft)}
.faq-item[open] summary::after{content:"–"}
.faq-answer{padding-top:12px}

.mini-links{
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(180px,1fr));
  gap:14px;
}
.mini-links.dense{grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:12px}
.mini-link{
  position:relative;
  min-height:86px;
  display:flex;
  align-items:flex-end;
  padding:18px;
  border-radius:22px;
  border:1px solid rgba(255,255,255,.08);
  background:linear-gradient(180deg, rgba(255,255,255,.055), rgba(255,255,255,.03));
  color:var(--text);
  font-size:14px;
  font-weight:700;
  letter-spacing:.02em;
  box-shadow:var(--shadow-soft);
  overflow:hidden;
}
.mini-link::before{
  content:"";position:absolute;left:18px;top:18px;width:42px;height:1px;
  background:linear-gradient(90deg, var(--gold-soft), transparent);
}
.mini-link::after{
  content:"↗";position:absolute;right:16px;top:14px;
  color:rgba(247,239,229,.34);font-size:20px;line-height:1;
}

.footer-cta-section{padding-top:18px}
.cta-banner{
  position:relative;
  padding:30px;
  display:flex;align-items:center;justify-content:space-between;gap:18px;
  background:linear-gradient(135deg, rgba(201,157,98,.16), rgba(255,255,255,.035));
  overflow:hidden;
}
.cta-banner::before{
  content:"";position:absolute;right:-120px;top:-140px;width:320px;height:320px;border-radius:50%;
  background:radial-gradient(circle, rgba(232,211,179,.18), transparent 64%);
}
.site-footer{padding:38px 0 92px}
.footer-wrap{padding-top:10px}
.footer-grid{display:grid;grid-template-columns:1.2fr .8fr .8fr .9fr;gap:20px}
.footer-brand-mark strong{font-family:"Cormorant Garamond",Georgia,serif;font-size:42px;display:block;line-height:.92}
.footer-col h4{margin:0 0 12px;font-size:12px;letter-spacing:.16em;text-transform:uppercase;color:rgba(247,239,229,.6)}
.footer-links-list,.footer-meta-list{display:grid;gap:10px}
.footer-bottom{margin-top:20px;padding-top:18px;border-top:1px solid var(--line);display:flex;justify-content:space-between;gap:16px;color:rgba(247,239,229,.58);font-size:13px}

.quick-actions{position:fixed;right:18px;bottom:18px;display:grid;gap:10px;z-index:90}
.quick-action{
  width:56px;height:56px;display:flex;align-items:center;justify-content:center;border-radius:999px;
  border:1px solid rgba(255,255,255,.11);background:rgba(8,5,5,.84);
  box-shadow:var(--shadow-soft);backdrop-filter:blur(12px)
}
.quick-action__icon{width:24px;height:24px}

.reveal-up{opacity:0;transform:translateY(18px);transition:opacity .55s ease, transform .55s ease}
.reveal-up.is-visible{opacity:1;transform:none}



.section-cd-showcase{
  padding-top:8px;
  padding-bottom:26px;
}

.cd-showcase-intro{
  max-width:860px;
  margin-bottom:28px;
}

.cd-showcase-wrap{
  position:relative;
  display:grid;
  grid-template-columns:repeat(3, minmax(0, 1fr));
  align-items:end;
  gap:22px;
  padding:10px 12px 0;
  perspective:1600px;
  transform-style:preserve-3d;
}

.cd-showcase-wrap::before{
  content:"";
  position:absolute;
  left:4%;
  right:4%;
  bottom:42px;
  height:1px;
  background:linear-gradient(90deg, rgba(255,255,255,0), rgba(232,211,179,.16), rgba(255,255,255,0));
  pointer-events:none;
}

.cd-showcase-item{
  --cd-size:280px;
  --cd-depth-y:0px;
  --cd-shift-x:0px;
  --cd-tilt-x:0deg;
  --cd-tilt-y:0deg;
  --cd-hover-lift:0px;
  --cd-shadow-boost:0;
  position:relative;
  display:flex;
  flex-direction:column;
  align-items:center;
  gap:16px;
  text-align:center;
  color:var(--text);
  isolation:isolate;
  transform:translate3d(var(--cd-shift-x), calc(var(--cd-depth-y) + var(--cd-hover-lift)), 0) rotateX(var(--cd-tilt-x)) rotateY(var(--cd-tilt-y));
  transform-style:preserve-3d;
  transition:transform .55s cubic-bezier(.22,.61,.36,1), filter .32s ease;
  will-change:transform;
}

.cd-showcase-item:hover{
  --cd-hover-lift:-7px;
  filter:brightness(1.03);
}

.cd-left{margin-bottom:22px}
.cd-center{--cd-size:360px}
.cd-right{margin-bottom:28px}

.cd-disc{
  position:relative;
  width:min(100%, var(--cd-size));
  aspect-ratio:1;
  border-radius:50%;
  padding:10px;
  overflow:hidden;
  border:1px solid rgba(232,211,179,.16);
  background:
    linear-gradient(145deg, rgba(255,255,255,.18), rgba(255,255,255,.02) 48%, rgba(255,255,255,.08)),
    radial-gradient(circle at 30% 24%, rgba(255,233,198,.18), transparent 26%),
    rgba(10,7,7,.86);
  box-shadow:0 calc(32px + (var(--cd-shadow-boost) * 10px)) calc(70px + (var(--cd-shadow-boost) * 12px)) rgba(0,0,0,.38), 0 0 0 1px rgba(255,255,255,.04) inset;
  transform:translateZ(calc(18px + (var(--cd-shadow-boost) * 5px)));
  animation:cdSpin 34s linear infinite;
  will-change:transform;
}

.cd-left .cd-disc{animation-duration:38s}
.cd-center .cd-disc{animation-duration:30s}
.cd-right .cd-disc{animation-duration:42s}

.cd-showcase-item:hover .cd-disc{animation-play-state:paused}

.cd-disc img{
  width:100%;
  height:100%;
  object-fit:cover;
  border-radius:50%;
  filter:saturate(1.05) contrast(1.03);
}

.cd-disc::before{
  content:"";
  position:absolute;
  inset:4%;
  border-radius:50%;
  background:
    repeating-radial-gradient(circle at center, rgba(255,255,255,0) 0 8px, rgba(255,255,255,.055) 8.3px 8.9px),
    radial-gradient(circle at 28% 20%, rgba(255,255,255,.24), rgba(255,255,255,0) 34%),
    radial-gradient(circle at 70% 78%, rgba(255,220,170,.1), rgba(255,220,170,0) 24%);
  mix-blend-mode:screen;
  opacity:.44;
  pointer-events:none;
}

.cd-disc::after{
  content:"";
  position:absolute;
  inset:43%;
  border-radius:50%;
  background:
    radial-gradient(circle, rgba(8,5,5,.98) 0 28%, rgba(234,214,186,.96) 29% 36%, rgba(32,19,12,.95) 37% 53%, rgba(0,0,0,0) 54%);
  box-shadow:0 0 0 1px rgba(255,255,255,.05), 0 0 20px rgba(201,157,98,.12);
  pointer-events:none;
}

.cd-meta{
  display:flex;
  flex-direction:column;
  gap:5px;
}

.cd-meta strong{
  font-size:13px;
  font-weight:800;
  letter-spacing:.16em;
  text-transform:uppercase;
}

.cd-meta small{
  font-size:13px;
  color:var(--muted-soft);
}

@keyframes cdSpin{
  from{transform:rotate(0deg)}
  to{transform:rotate(360deg)}
}

@media (max-width:1100px){
  nav{display:none}
  .menu-toggle{display:inline-flex;align-items:center;justify-content:center}
  .mobile-nav.show{display:grid;gap:12px}
  .feature-grid,.feature-grid-4,.offer-grid,.footer-grid,.split-grid,.contact-grid{grid-template-columns:1fr}
  .gallery-grid.home-gallery{grid-template-columns:1fr 1fr}
  .gallery-card,.gallery-card.tall,.gallery-card.featured-wide{grid-column:auto;aspect-ratio:4 / 3}
  .hero-info-bar{grid-template-columns:1fr}
  .cta-banner{flex-direction:column;align-items:flex-start}
  .media-panel.media-panel-portrait img{object-position:center top}
}

@media (max-width:760px){
  .container{width:min(var(--max), calc(100% - 24px))}
  .site-header{padding:10px 0}
  .header-shell{border-radius:24px;align-items:flex-start}
  .brand strong{font-size:32px}
  .header-actions .btn-ghost{display:none}
  .page-hero{padding-top:78px}
  .home-hero{min-height:auto}
  .page-hero-inner{padding:28px 0 10px;min-height:auto}
  .page-hero h1{font-size:clamp(48px,15vw,74px)}
  .panel,.faq-item,.feature-card,.offer-card,.cta-banner{padding:24px}
  .page-hero p{font-size:16px}
  .section{padding:34px 0}
  .gallery-grid.home-gallery{grid-template-columns:1fr}
  .gallery-card,.gallery-card.tall,.gallery-card.featured-wide{grid-column:auto;aspect-ratio:4 / 3}
  .gallery-copy{left:14px;right:14px;bottom:14px}
  .mini-links,.mini-links.dense{grid-template-columns:1fr 1fr}
  .quick-actions{right:12px;bottom:12px}
  .quick-action{width:50px;height:50px}
  .footer-bottom{flex-direction:column;align-items:flex-start}
}


/* v9 polish */
body{overflow-x:hidden}
.header-shell{padding:12px 12px 12px 18px;background:linear-gradient(180deg, rgba(10,7,7,.82), rgba(8,5,5,.58));}
.brand strong{font-size:34px}
.btn{min-height:50px;padding:0 22px}
.page-hero::before{background:radial-gradient(circle at 50% 14%, rgba(201,157,98,.18), transparent 19%),linear-gradient(180deg, rgba(8,5,5,.14), rgba(8,5,5,.76));}
.hero-video{opacity:.34;filter:saturate(110%) contrast(105%)}
.hero-video-overlay{background:linear-gradient(180deg, rgba(7,4,5,.26), rgba(7,4,5,.68) 68%, rgba(7,4,5,.92))}
.page-hero-inner{max-width:920px;padding:56px 0;}
.page-hero h1{line-height:.94;max-width:960px}
.hero-info-bar{gap:14px;padding:14px}
.section{padding:54px 0}
.section-intro{margin-bottom:28px}
.split-grid,.contact-grid{gap:24px}
.panel{padding:36px}
.panel p + p{margin-top:14px}
.panel.luxe{background:linear-gradient(180deg, rgba(201,157,98,.12), rgba(255,255,255,.028))}
.split-home-polished .panel.luxe{justify-content:center}

.media-panel{display:flex;align-items:stretch;justify-content:center;padding:18px;min-height:520px}
.media-panel::before{inset:18px;border-radius:calc(var(--radius) - 12px);background:linear-gradient(180deg, rgba(6,4,4,.05), rgba(6,4,4,.18) 52%, rgba(6,4,4,.42));}
.media-panel img{width:100%;height:100%;max-height:none;border-radius:calc(var(--radius) - 12px);object-fit:cover;object-position:center 24%;box-shadow:0 20px 60px rgba(0,0,0,.18)}
.media-panel-landscape img{aspect-ratio:4 / 3;}
.media-panel-wide{min-height:420px}
.media-panel-wide img{aspect-ratio:10 / 7;object-position:center 38%;}
.media-panel-portrait{min-height:640px;align-items:center;background:linear-gradient(180deg, rgba(255,255,255,.065), rgba(255,255,255,.028));}
.media-panel-portrait img{width:min(100%, 470px);height:auto;aspect-ratio:3 / 4;object-position:center 18%;}
.media-panel-editorial .media-badge{background:linear-gradient(180deg, rgba(8,5,5,.54), rgba(8,5,5,.8));}
.media-panel-soft img{object-position:center 42%}
.media-badge{left:34px;bottom:34px;padding:16px 18px 14px;backdrop-filter:blur(14px)}
.media-badge strong{font-size:28px}

.feature-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
.feature-grid-4{grid-template-columns:repeat(2,minmax(0,1fr))}
.feature-card,.offer-card{min-height:236px;padding:28px}
.feature-card h3,.offer-card h3,.gallery-copy h3,.faq-item summary{line-height:1}
.offer-card.featured{transform:translateY(-6px)}

.gallery-panel{padding:20px}
.gallery-grid.home-gallery{grid-template-columns:repeat(12,minmax(0,1fr));gap:16px}
.gallery-card{min-height:0;background:rgba(255,255,255,.04);border-radius:26px}
.gallery-card img{display:block;width:100%;height:auto;aspect-ratio:4 / 3;object-fit:cover;object-position:center 28%}
.gallery-card.featured-wide img{aspect-ratio:16 / 9;object-position:center 34%}
.gallery-card.gallery-card-band img{object-position:center 36%}
.gallery-card.gallery-card-moment img{object-position:center 24%}
.gallery-card.gallery-card-close img{object-position:center 16%}
.gallery-copy{padding:16px 16px 14px;background:linear-gradient(180deg, rgba(8,5,5,.08), rgba(8,5,5,.72));}
.gallery-copy h3{font-size:clamp(24px,2vw,32px)}

.mini-links.dense{grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:12px}
.mini-link{min-height:80px;padding:18px 18px 16px;border-radius:20px}
.mini-link::after{top:12px}
.cities-filter-shell{display:grid;gap:10px;max-width:680px;margin:0 0 20px}
.city-search-input{width:100%;padding:16px 18px;border-radius:18px;border:1px solid var(--line);background:rgba(255,255,255,.04);color:var(--text);font:inherit}
.city-search-input::placeholder{color:rgba(247,239,229,.45)}
.city-search-meta{font-size:14px;color:var(--muted);line-height:1.7}
.cities-grid .mini-link.is-hidden{display:none}

@media (max-width:1100px){
  .feature-grid-4{grid-template-columns:repeat(2,minmax(0,1fr))}
  .media-panel{min-height:0}
  .media-panel-portrait{min-height:0}
  .media-panel-portrait img{width:100%;max-width:540px}
}

@media (max-width:760px){
  .brand strong{font-size:30px}
  .page-hero-inner{padding:34px 0 12px}
  .section{padding:38px 0}
  .panel{padding:24px}
  .feature-grid-4,.feature-grid,.offer-grid{grid-template-columns:1fr}
  .media-panel,.media-panel-portrait,.media-panel-wide{min-height:0}
  .media-panel img,.media-panel-landscape img,.media-panel-wide img,.media-panel-portrait img{width:100%;aspect-ratio:auto;height:auto;max-height:none}
  .media-badge{left:24px;right:24px;bottom:24px;width:auto}
  .mini-links.dense{grid-template-columns:1fr 1fr}
}


/* v10 mild glam polish */
.site-header{backdrop-filter:blur(14px)}
.page-hero::after,.home-hero::after{content:"";position:absolute;inset:0;pointer-events:none;background:radial-gradient(circle at 15% 20%, rgba(255,210,120,.16), transparent 28%),radial-gradient(circle at 85% 18%, rgba(255,180,90,.12), transparent 22%),linear-gradient(180deg, rgba(255,220,140,.04), transparent 28%);mix-blend-mode:screen}
.offer-card,.feature-card,.mini-link{position:relative;overflow:hidden}
.offer-card::before,.feature-card::before,.mini-link::before,.cta-banner-kitsch::before{content:"";position:absolute;inset:-1px;border-radius:inherit;padding:1px;background:linear-gradient(135deg, rgba(255,230,170,.55), rgba(201,157,98,.18), rgba(255,230,170,.05));-webkit-mask:linear-gradient(#000 0 0) content-box, linear-gradient(#000 0 0);-webkit-mask-composite:xor;mask-composite:exclude;pointer-events:none}
.offer-card::after,.feature-card::after{content:"";position:absolute;top:-30%;left:-40%;width:60%;height:160%;background:linear-gradient(90deg, transparent, rgba(255,220,160,.12), transparent);transform:rotate(18deg);pointer-events:none}
.cta-banner-kitsch{position:relative;background:linear-gradient(135deg, rgba(201,157,98,.24), rgba(50,18,10,.85));box-shadow:0 24px 80px rgba(0,0,0,.35), inset 0 1px 0 rgba(255,235,190,.15)}
.kicker{letter-spacing:.18em}
.brand strong,.section-intro h2,.page-hero h1,.media-badge strong{ text-shadow:0 1px 0 rgba(255,255,255,.05), 0 10px 30px rgba(201,157,98,.15)}
.btn-gold{box-shadow:0 10px 30px rgba(201,157,98,.22), inset 0 1px 0 rgba(255,248,220,.18)}
.footer-brand-mark strong{ text-shadow:0 8px 28px rgba(201,157,98,.16)}


/* v11 authentic media */
.gallery-mosaic{grid-template-columns:repeat(12,minmax(0,1fr));gap:16px}
.gallery-mosaic .gallery-card{grid-column:span 4;aspect-ratio:4 / 3}
.gallery-mosaic .gallery-card.portrait{aspect-ratio:3 / 4}
.gallery-mosaic .gallery-card.featured-wide{grid-column:1 / -1;aspect-ratio:16 / 9}
.gallery-mosaic-compact .gallery-card{grid-column:span 4}
.media-video-card{position:relative;padding:18px;overflow:hidden;display:flex;align-items:stretch;justify-content:center;min-height:420px;background:linear-gradient(180deg, rgba(255,255,255,.06), rgba(255,255,255,.02))}
.media-video-card::before{content:"";position:absolute;inset:18px;border-radius:calc(var(--radius) - 12px);background:linear-gradient(180deg, rgba(6,4,4,.04), rgba(6,4,4,.18) 52%, rgba(6,4,4,.4));pointer-events:none;z-index:1}
.media-video-card video{position:relative;z-index:0;width:100%;height:100%;object-fit:cover;border-radius:calc(var(--radius) - 12px);box-shadow:0 20px 60px rgba(0,0,0,.18);background:#000}
.media-video-card.compact{min-height:360px}
.gallery-mosaic .gallery-copy h3{font-size:clamp(22px,2vw,30px)}
.gallery-mosaic .gallery-card img{object-position:center 30%}
.gallery-mosaic .gallery-card.portrait img{aspect-ratio:3 / 4}
.gallery-mosaic .gallery-card.featured-wide img{aspect-ratio:16 / 9}
@media (max-width:1100px){
  .gallery-mosaic,.gallery-grid.gallery-mosaic{grid-template-columns:1fr 1fr}
  .gallery-mosaic .gallery-card,.gallery-mosaic .gallery-card.portrait,.gallery-mosaic-compact .gallery-card{grid-column:auto;aspect-ratio:4 / 3}
  .gallery-mosaic .gallery-card.featured-wide{grid-column:1 / -1;aspect-ratio:16 / 9}
}
@media (max-width:760px){
  .gallery-mosaic,.gallery-grid.gallery-mosaic{grid-template-columns:1fr}
  .gallery-mosaic .gallery-card,.gallery-mosaic .gallery-card.portrait,.gallery-mosaic .gallery-card.featured-wide,.gallery-mosaic-compact .gallery-card{grid-column:auto;aspect-ratio:4 / 3}
  .media-video-card{min-height:0}
}


/* v12 refined nav, gallery and effects */
:root{--header-radius:26px;--header-bg:linear-gradient(180deg, rgba(11,8,8,.9), rgba(8,5,5,.76));}
body::before,body::after{content:"";position:fixed;inset:auto;pointer-events:none;z-index:-1;border-radius:50%;filter:blur(80px);opacity:.5;animation:floatGlow 14s ease-in-out infinite alternate;}
body::before{width:320px;height:320px;left:-80px;top:140px;background:radial-gradient(circle, rgba(201,157,98,.16), transparent 62%);}
body::after{width:360px;height:360px;right:-80px;top:40vh;background:radial-gradient(circle, rgba(255,205,120,.08), transparent 66%);animation-duration:18s;}
@keyframes floatGlow{from{transform:translateY(-12px) scale(1)}to{transform:translateY(18px) scale(1.08)}}
.site-header{padding:16px 0}.header-shell{padding:12px 14px 12px 16px;border-radius:var(--header-radius);background:var(--header-bg);border-color:rgba(232,211,179,.14);box-shadow:0 18px 40px rgba(0,0,0,.28), inset 0 1px 0 rgba(255,240,220,.05);display:grid;grid-template-columns:auto 1fr auto;align-items:center}.site-header.scrolled .header-shell{transform:translateY(-2px);box-shadow:0 22px 52px rgba(0,0,0,.34), inset 0 1px 0 rgba(255,240,220,.06)}
.brand{flex-direction:row;align-items:center;gap:12px;min-width:0}.brand-mark{width:46px;height:46px;border-radius:16px;display:grid;place-items:center;font-size:14px;font-weight:800;letter-spacing:.16em;text-transform:uppercase;color:#23150c;background:linear-gradient(135deg,var(--gold-soft),var(--gold));box-shadow:0 12px 26px rgba(201,157,98,.22)}.brand-text{display:flex;flex-direction:column;gap:2px;min-width:0}.brand strong{font-size:32px}.brand small{letter-spacing:.2em}
.site-nav{display:flex;justify-content:center;align-items:center;gap:4px;padding:6px;border-radius:999px;background:rgba(255,255,255,.03);border:1px solid rgba(255,255,255,.06);margin:0 16px}.site-nav a,.mobile-nav a{position:relative;padding:10px 12px;border-radius:999px;font-size:11px;font-weight:800;letter-spacing:.14em;color:rgba(247,239,229,.78);transition:color .2s ease, background .2s ease, transform .2s ease}.site-nav a:hover,.mobile-nav a:hover{background:rgba(255,255,255,.06);color:var(--text)}.site-nav a.active,.mobile-nav a.active{background:linear-gradient(135deg, rgba(201,157,98,.16), rgba(255,255,255,.04));color:var(--text);box-shadow:inset 0 0 0 1px rgba(232,211,179,.14)}.site-nav a.active::after,.mobile-nav a.active::after{display:none}
.header-actions{gap:10px;align-items:center}.btn-phone{background:rgba(255,255,255,.045)}
.menu-toggle{display:none;align-items:center;justify-content:center;gap:4px;padding:0 12px;width:auto;min-width:48px}.menu-toggle span{display:block;width:16px;height:2px;border-radius:99px;background:var(--text);transition:transform .2s ease, opacity .2s ease}.menu-toggle.is-open span:nth-child(1){transform:translateY(6px) rotate(45deg)}.menu-toggle.is-open span:nth-child(2){opacity:0}.menu-toggle.is-open span:nth-child(3){transform:translateY(-6px) rotate(-45deg)}
.mobile-nav{display:none;grid-template-columns:1fr 1fr;gap:10px;padding:14px;border-radius:22px;border:1px solid var(--line);background:rgba(8,5,5,.94);margin-top:12px;box-shadow:var(--shadow-soft)}
.media-clean,.photo-grid-clean .gallery-card,.gallery-wall .gallery-card{position:relative}.media-clean::after,.photo-grid-clean .gallery-card::before,.gallery-wall .gallery-card::before{content:"↗";position:absolute;top:14px;right:14px;width:34px;height:34px;display:grid;place-items:center;border-radius:999px;background:rgba(8,5,5,.56);border:1px solid rgba(255,255,255,.1);color:var(--gold-soft);font-size:18px;z-index:3;backdrop-filter:blur(10px);opacity:0;transform:translateY(6px);transition:opacity .25s ease, transform .25s ease}.media-clean:hover::after,.photo-grid-clean .gallery-card:hover::before,.gallery-wall .gallery-card:hover::before{opacity:1;transform:none}
.gallery-copy,.media-badge{display:none!important}
.photo-grid-clean{gap:16px}.photo-grid-clean .gallery-card{border:1px solid rgba(255,255,255,.08);background:rgba(255,255,255,.03)}.photo-grid-clean .gallery-card::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg, rgba(8,5,5,.02), rgba(8,5,5,.1) 45%, rgba(8,5,5,.22));opacity:0;transition:opacity .25s ease}.photo-grid-clean .gallery-card:hover::after{opacity:1}
.gallery-wall{columns:3 300px;column-gap:16px}.gallery-wall .gallery-card{break-inside:avoid;margin:0 0 16px;aspect-ratio:auto!important;min-height:0!important;border-radius:24px;border:1px solid rgba(255,255,255,.08);background:rgba(255,255,255,.03);overflow:hidden;box-shadow:var(--shadow-soft)}.gallery-wall .gallery-card img{width:100%;height:auto!important;aspect-ratio:auto!important;object-fit:cover;display:block;transition:transform .4s ease, filter .4s ease}.gallery-wall .gallery-card:hover img{transform:scale(1.018);filter:saturate(108%) contrast(103%)}
.media-panel,.media-video-card{border-color:rgba(232,211,179,.12)}.media-panel::before,.media-video-card::before{background:linear-gradient(180deg, rgba(6,4,4,.02), rgba(6,4,4,.08) 40%, rgba(6,4,4,.18))}.media-panel img{object-position:center 28%}.media-panel-wide img{aspect-ratio:4/3;object-position:center 34%}.media-panel-portrait img{aspect-ratio:auto;max-height:740px;object-fit:cover}.media-video-card video{aspect-ratio:16/9;height:auto}
.quick-action{transition:transform .22s ease, box-shadow .22s ease, border-color .22s ease, background .22s ease}.quick-action:hover{box-shadow:0 18px 40px rgba(0,0,0,.3), 0 0 0 6px rgba(201,157,98,.08)}
.btn-gold,.footer-pill,.hero-trust span{position:relative;overflow:hidden}.btn-gold::after,.footer-pill::after{content:"";position:absolute;inset:0;transform:translateX(-115%) skewX(-18deg);background:linear-gradient(90deg, transparent, rgba(255,255,255,.28), transparent);transition:transform .6s ease}.btn-gold:hover::after,.footer-pill:hover::after{transform:translateX(115%) skewX(-18deg)}
.lightbox{position:fixed;inset:0;display:flex;align-items:center;justify-content:center;padding:24px;background:rgba(5,3,3,.86);backdrop-filter:blur(16px);opacity:0;pointer-events:none;transition:opacity .25s ease;z-index:120}.lightbox.is-open{opacity:1;pointer-events:auto}.lightbox-stage{position:relative;max-width:min(92vw,1200px);max-height:85vh;display:flex;flex-direction:column;align-items:center;gap:14px}.lightbox-image{max-width:100%;max-height:78vh;border-radius:24px;box-shadow:0 24px 80px rgba(0,0,0,.42);border:1px solid rgba(255,255,255,.12)}.lightbox-caption{font-size:14px;line-height:1.6;color:var(--muted);text-align:center;max-width:780px}.lightbox-close,.lightbox-nav{appearance:none;border:none;cursor:pointer;display:grid;place-items:center;background:rgba(255,255,255,.06);color:var(--text);border:1px solid rgba(255,255,255,.12);backdrop-filter:blur(10px)}.lightbox-close{position:absolute;top:20px;right:20px;width:52px;height:52px;border-radius:999px;font-size:28px;z-index:3}.lightbox-nav{position:absolute;top:50%;transform:translateY(-50%);width:52px;height:52px;border-radius:999px;font-size:28px}.lightbox-prev{left:20px}.lightbox-next{right:20px}
@media (max-width:1220px){.site-nav{gap:2px}.site-nav a{padding:10px 10px}}
@media (max-width:1100px){.header-shell{grid-template-columns:auto auto;grid-template-areas:"brand actions"}.brand{grid-area:brand}.header-actions{grid-area:actions}.site-nav{display:none}.menu-toggle{display:inline-flex}.mobile-nav.show{display:grid}.gallery-wall{columns:2 260px}}
@media (max-width:760px){.site-header{padding:10px 0}.header-shell{display:flex;align-items:center;justify-content:space-between;border-radius:22px;padding:10px 12px}.brand-mark{width:42px;height:42px;border-radius:14px}.brand strong{font-size:28px}.mobile-nav{grid-template-columns:1fr 1fr}.gallery-wall{columns:1 100%}.lightbox{padding:18px}.lightbox-nav{display:none}.lightbox-close{top:14px;right:14px;width:46px;height:46px}.btn-phone{display:none}}


/* v13 full width header */
.site-header > .container{width:calc(100% - 28px);max-width:none}
.header-shell{width:100%;grid-template-columns:auto minmax(0,1fr) auto;padding:12px 18px;border-radius:24px}
.site-nav{width:100%;margin:0 18px;justify-content:center;flex-wrap:nowrap;overflow:auto hidden;scrollbar-width:none}
.site-nav::-webkit-scrollbar{display:none}
@media (max-width:1100px){.site-header > .container{width:calc(100% - 20px)}.header-shell{padding:12px 14px}}
@media (max-width:760px){.site-header > .container{width:calc(100% - 12px)}.header-shell{padding:10px 12px;border-radius:20px}}


/* v14 nav logo + glass polish */
.brand-logo-wrap{
  display:flex;
  align-items:center;
  justify-content:flex-start;
  flex:0 0 auto;
  min-width:0;
}
.brand-logo{
  display:block;
  width:clamp(170px, 14vw, 260px);
  height:auto;
  object-fit:contain;
  filter:drop-shadow(0 8px 20px rgba(201,157,98,.16));
}
.brand-mark,.brand-text{display:none !important}
.footer-brand-mark{
  display:flex;
  align-items:center;
  min-height:56px;
}
.footer-logo{
  display:block;
  width:min(260px, 100%);
  height:auto;
  object-fit:contain;
  filter:drop-shadow(0 8px 18px rgba(201,157,98,.12));
}
.header-shell{
  padding:12px 18px;
  border-radius:30px;
  backdrop-filter:blur(16px);
  -webkit-backdrop-filter:blur(16px);
}
.site-nav{
  flex:1 1 auto;
  justify-content:center;
  align-items:center;
  gap:8px;
  padding:0 !important;
  margin:0 18px;
  background:transparent !important;
  border:none !important;
  border-radius:0 !important;
  box-shadow:none !important;
}
.site-nav a{
  padding:10px 13px;
  border-radius:999px;
}
.site-nav a:hover,
.mobile-nav a:hover{
  background:rgba(255,255,255,.045);
}
.site-nav a.active,
.mobile-nav a.active{
  background:linear-gradient(180deg, rgba(255,255,255,.08), rgba(255,255,255,.04));
  border:1px solid rgba(232,211,179,.16);
  box-shadow:0 10px 24px rgba(0,0,0,.12), inset 0 1px 0 rgba(255,255,255,.06);
}
.panel,.faq-item,.review-item,.contact-row,.offer-card,.feature-card,.gallery-card,.cta-banner,.media-panel,.form-shell,.cities-filter-shell{
  background:linear-gradient(180deg, rgba(255,255,255,.11), rgba(255,255,255,.045)) !important;
  border:1px solid rgba(255,255,255,.11);
  backdrop-filter:blur(16px);
  -webkit-backdrop-filter:blur(16px);
  box-shadow:0 24px 65px rgba(0,0,0,.26), inset 0 1px 0 rgba(255,255,255,.07);
}
.panel::before,.offer-card::before,.feature-card::before,.gallery-card::before,.cta-banner::before,.faq-item::before,.review-item::before,.contact-row::before,.form-shell::before,.cities-filter-shell::before{
  content:"";
  position:absolute;
  inset:0 0 auto 0;
  height:42%;
  border-radius:inherit;
  background:linear-gradient(180deg, rgba(255,255,255,.08), rgba(255,255,255,0));
  pointer-events:none;
}
.gallery-card,
.offer-card,
.feature-card,
.review-item,
.faq-item,
.contact-row,
.form-shell,
.cities-filter-shell,
.cta-banner,
.panel{
  position:relative;
  overflow:hidden;
}
.gallery-card img,
.media-panel img,
.media-video-card video{
  transform:translateZ(0);
}
.gallery-card:hover,
.offer-card:hover,
.feature-card:hover,
.panel:hover{
  transform:translateY(-2px);
  transition:transform .28s ease, box-shadow .28s ease;
  box-shadow:0 28px 75px rgba(0,0,0,.30), inset 0 1px 0 rgba(255,255,255,.08);
}
@media (max-width: 1180px){
  .brand-logo{width:210px}
  .site-nav{margin:0 10px}
}
@media (max-width: 980px){
  .brand-logo{width:190px}
  .site-nav{display:none}
  .header-shell{padding:12px 14px}
}
@media (max-width: 640px){
  .brand-logo{width:170px}
  .footer-logo{width:min(220px,100%)}
}


/* v15 luxe sweep + fancy site effects */
:root{
  --sheen-strong: rgba(255,246,225,.22);
  --sheen-soft: rgba(255,255,255,.05);
  --spot-gold: rgba(255,241,212,.16);
}
@keyframes cardSheenSweep{
  0%,10%{background-position:50% 0, 50% 0, 180% 0}
  48%{background-position:50% 0, 50% 0, -70% 0}
  100%{background-position:50% 0, 50% 0, -70% 0}
}
@keyframes microPulse{
  0%,100%{box-shadow:0 24px 65px rgba(0,0,0,.26), inset 0 1px 0 rgba(255,255,255,.07)}
  50%{box-shadow:0 28px 72px rgba(0,0,0,.3), inset 0 1px 0 rgba(255,255,255,.09), 0 0 0 1px rgba(255,239,211,.03)}
}
.section{position:relative;isolation:isolate}
.section::after{
  content:"";
  position:absolute;
  right:-80px;
  top:20px;
  width:260px;
  height:260px;
  border-radius:50%;
  background:radial-gradient(circle, rgba(201,157,98,.08), transparent 68%);
  filter:blur(10px);
  opacity:.65;
  pointer-events:none;
  z-index:-1;
  animation:floatGlow 14s ease-in-out infinite alternate;
}
.panel,.faq-item,.review-item,.contact-row,.offer-card,.feature-card,.gallery-card,.cta-banner,.media-panel,.form-shell,.cities-filter-shell,.hero-info-item,.quick-action{
  position:relative;
  overflow:hidden;
  isolation:isolate;
  background:
    radial-gradient(220px circle at var(--mx, 50%) var(--my, 0%), var(--spot-gold), transparent 48%) 50% 0/100% 100% no-repeat,
    linear-gradient(180deg, rgba(255,255,255,.11), rgba(255,255,255,.045)) 50% 0/100% 100% no-repeat,
    linear-gradient(118deg, transparent 14%, rgba(255,255,255,.015) 24%, var(--sheen-strong) 33%, var(--sheen-soft) 40%, transparent 52%) 180% 0/240% 100% no-repeat !important;
  border-color:rgba(255,255,255,.11);
  animation:cardSheenSweep 9s cubic-bezier(.4,0,.2,1) infinite, microPulse 7.5s ease-in-out infinite;
  will-change:transform, box-shadow, background-position;
}
.panel::before,.offer-card::before,.feature-card::before,.gallery-card::before,.cta-banner::before,.faq-item::before,.review-item::before,.contact-row::before,.form-shell::before,.cities-filter-shell::before{
  background:linear-gradient(180deg, rgba(255,255,255,.1), rgba(255,255,255,0));
}
.panel:hover,.faq-item:hover,.review-item:hover,.contact-row:hover,.offer-card:hover,.feature-card:hover,.gallery-card:hover,.cta-banner:hover,.media-panel:hover,.form-shell:hover,.cities-filter-shell:hover,.hero-info-item:hover,.quick-action:hover{
  transform:translateY(-4px);
  box-shadow:0 32px 86px rgba(0,0,0,.34), inset 0 1px 0 rgba(255,255,255,.1), 0 0 0 1px rgba(255,234,203,.06);
  background-position:50% 0, 50% 0, -35% 0 !important;
}
.gallery-card img,.media-panel img,.media-video-card video{
  transition:transform .65s ease, filter .65s ease, box-shadow .65s ease;
}
.gallery-card:hover img,.media-panel:hover img{
  transform:scale(1.03);
  filter:saturate(112%) contrast(106%) brightness(1.03);
}
.media-video-card{
  box-shadow:0 28px 76px rgba(0,0,0,.28), inset 0 1px 0 rgba(255,255,255,.07);
}
.media-video-card::after{
  content:"";
  position:absolute;
  inset:0;
  background:linear-gradient(118deg, transparent 20%, rgba(255,246,225,.16) 34%, transparent 48%);
  background-size:220% 100%;
  background-position:170% 0;
  mix-blend-mode:screen;
  opacity:.55;
  pointer-events:none;
  animation:cardSheenSweep 10s cubic-bezier(.4,0,.2,1) infinite;
}
.hero-info-item,.quick-action,.footer-pill,.btn-ghost,.btn-phone,.site-nav a{
  position:relative;
  overflow:hidden;
}
.hero-info-item::after,.quick-action::after,.footer-pill::after,.btn-ghost::after,.btn-phone::after,.site-nav a::before{
  content:"";
  position:absolute;
  inset:0;
  background:linear-gradient(115deg, transparent 18%, rgba(255,245,220,.18) 34%, transparent 52%);
  background-size:220% 100%;
  background-position:160% 0;
  pointer-events:none;
  opacity:.5;
  transition:background-position .65s ease, opacity .3s ease;
}
.hero-info-item:hover::after,.quick-action:hover::after,.footer-pill:hover::after,.btn-ghost:hover::after,.btn-phone:hover::after,.site-nav a:hover::before,.site-nav a.active::before{
  background-position:-40% 0;
  opacity:.8;
}
.site-nav a{
  backdrop-filter:blur(10px);
  -webkit-backdrop-filter:blur(10px);
}
.page-hero h1,.section-intro h2,.panel h2,.cta-banner h2{
  text-shadow:0 14px 34px rgba(0,0,0,.22), 0 0 24px rgba(201,157,98,.05);
}
.section-intro p,.panel p,.faq-answer p,.review-item,.contact-row{
  text-wrap:pretty;
}
.footer-brand,.footer-links-list a,.footer-bottom-links a{
  transition:transform .25s ease, color .25s ease, text-shadow .25s ease;
}
.footer-links-list a:hover,.footer-bottom-links a:hover{
  color:var(--gold-soft);
  text-shadow:0 0 18px rgba(201,157,98,.2);
  transform:translateX(2px);
}
@media (max-width: 760px){
  .section::after{width:180px;height:180px;right:-70px;top:0;opacity:.4}
  .panel,.faq-item,.review-item,.contact-row,.offer-card,.feature-card,.gallery-card,.cta-banner,.media-panel,.form-shell,.cities-filter-shell,.hero-info-item,.quick-action{
    animation-duration:10.5s, 8.5s;
  }
}


/* v16 glass sweep only + wow moments + repertoar refresh */
:root{
  --glass-top: rgba(255,255,255,.12);
  --glass-bottom: rgba(255,255,255,.05);
  --glass-line: rgba(255,255,255,.12);
  --glass-sweep-1: rgba(255,248,234,.00);
  --glass-sweep-2: rgba(255,248,234,.11);
  --glass-sweep-3: rgba(255,255,255,.23);
  --glass-sweep-4: rgba(255,248,234,.02);
}
@keyframes glassSweepLong{
  0%,12%{transform:translateX(-160%) skewX(-18deg);opacity:0}
  18%{opacity:.0}
  28%{opacity:.72}
  44%{opacity:.12}
  100%{transform:translateX(240%) skewX(-18deg);opacity:0}
}
@keyframes softGlowFloat{
  0%,100%{transform:translate3d(0,0,0) scale(1);opacity:.55}
  50%{transform:translate3d(16px,-12px,0) scale(1.06);opacity:.82}
}
@keyframes marqueeMove{
  from{transform:translateX(0)}
  to{transform:translateX(-50%)}
}
@keyframes titleShine{
  0%,100%{background-position:0% 50%}
  50%{background-position:100% 50%}
}
.page-hero,
.footer-cta-section,
.section-intro,
.song-showcase,
.song-group{position:relative;isolation:isolate}
.page-hero::before,
.footer-cta-section::before{
  content:"";
  position:absolute;
  inset:auto auto -120px -80px;
  width:280px;
  height:280px;
  background:radial-gradient(circle, rgba(203,156,90,.14), rgba(203,156,90,0) 70%);
  filter:blur(18px);
  animation:softGlowFloat 12s ease-in-out infinite;
  pointer-events:none;
  z-index:-1;
}
.page-hero::after{
  content:"";
  position:absolute;
  inset:0;
  background:
    radial-gradient(circle at 18% 28%, rgba(255,255,255,.10) 0 2px, transparent 3px),
    radial-gradient(circle at 78% 22%, rgba(255,240,214,.12) 0 2px, transparent 3px),
    radial-gradient(circle at 66% 60%, rgba(255,255,255,.08) 0 1.5px, transparent 2.5px),
    radial-gradient(circle at 32% 72%, rgba(255,240,214,.08) 0 1.5px, transparent 2.5px);
  opacity:.5;
  pointer-events:none;
}
.page-hero h1,
.section-intro h2,
.panel h2,
.cta-banner h2,
.song-showcase h2{
  background:linear-gradient(90deg, #f5ebda 0%, #dcb87a 22%, #fff4dd 50%, #d0a261 78%, #f4e6cb 100%);
  background-size:220% 220%;
  -webkit-background-clip:text;
  background-clip:text;
  color:transparent;
  animation:titleShine 11s ease-in-out infinite;
}
.section-intro h2::after,
.page-hero h1::after,
.song-showcase h2::after{
  content:"";
  display:block;
  width:88px;
  height:2px;
  margin-top:14px;
  border-radius:999px;
  background:linear-gradient(90deg, rgba(255,255,255,0), rgba(224,190,131,.95), rgba(255,255,255,0));
  box-shadow:0 0 22px rgba(224,190,131,.28);
}
.panel,.faq-item,.review-item,.contact-row,.offer-card,.feature-card,.gallery-card,.cta-banner,.media-panel,.media-video-card,.form-shell,.cities-filter-shell,.hero-info-item,.quick-action{
  background:linear-gradient(180deg, var(--glass-top), var(--glass-bottom)) !important;
  border:1px solid var(--glass-line) !important;
  box-shadow:0 24px 70px rgba(0,0,0,.28), inset 0 1px 0 rgba(255,255,255,.08), 0 0 0 1px rgba(255,255,255,.02);
  animation:microPulse 8s ease-in-out infinite !important;
  will-change:transform, box-shadow;
}
.panel::after,.offer-card::after,.feature-card::after,.gallery-card::after,.cta-banner::after,.faq-item::after,.review-item::after,.contact-row::after,.form-shell::after,.cities-filter-shell::after,.hero-info-item::before,.quick-action::before,.media-panel::after,.media-video-card::after{
  content:"";
  position:absolute;
  inset:-25% auto -25% -35%;
  width:42%;
  background:linear-gradient(104deg, var(--glass-sweep-1) 0%, var(--glass-sweep-2) 34%, var(--glass-sweep-3) 50%, var(--glass-sweep-4) 62%, var(--glass-sweep-1) 100%);
  mix-blend-mode:screen;
  opacity:.0;
  pointer-events:none;
  animation:glassSweepLong 8.5s cubic-bezier(.4,0,.2,1) infinite;
}
.panel::before,.offer-card::before,.feature-card::before,.gallery-card::before,.cta-banner::before,.faq-item::before,.review-item::before,.contact-row::before,.form-shell::before,.cities-filter-shell::before{
  background:linear-gradient(180deg, rgba(255,255,255,.12), rgba(255,255,255,0)) !important;
}
.panel:hover,.faq-item:hover,.review-item:hover,.contact-row:hover,.offer-card:hover,.feature-card:hover,.gallery-card:hover,.cta-banner:hover,.media-panel:hover,.form-shell:hover,.cities-filter-shell:hover,.hero-info-item:hover,.quick-action:hover{
  transform:translateY(-4px) !important;
  box-shadow:0 30px 84px rgba(0,0,0,.34), inset 0 1px 0 rgba(255,255,255,.11), 0 0 0 1px rgba(255,235,203,.05) !important;
}
.panel:hover::after,.offer-card:hover::after,.feature-card:hover::after,.gallery-card:hover::after,.cta-banner:hover::after,.faq-item:hover::after,.review-item:hover::after,.contact-row:hover::after,.form-shell:hover::after,.cities-filter-shell:hover::after,.hero-info-item:hover::before,.quick-action:hover::before,.media-panel:hover::after,.media-video-card:hover::after{
  opacity:.88;
}
.media-video-card::after{width:36%;opacity:.24}
.gallery-card:hover img,.media-panel:hover img,.media-video-card:hover video{
  transform:scale(1.03) !important;
  filter:saturate(110%) contrast(104%) brightness(1.03);
}
.btn-gold,.btn-ghost,.btn-phone,.footer-pill,.site-nav a{
  position:relative;
  overflow:hidden;
}
.btn-gold::after,.btn-ghost::after,.btn-phone::after,.footer-pill::after,.site-nav a::before{
  content:"";
  position:absolute;
  inset:0 auto 0 -55%;
  width:45%;
  background:linear-gradient(105deg, transparent 0%, rgba(255,247,228,.34) 48%, transparent 100%);
  transform:skewX(-18deg);
  opacity:0;
  pointer-events:none;
  transition:opacity .2s ease;
}
.btn-gold:hover::after,.btn-ghost:hover::after,.btn-phone:hover::after,.footer-pill:hover::after,.site-nav a:hover::before,.site-nav a.active::before{
  opacity:1;
  animation:glassSweepLong 1.15s ease forwards;
}
.hero-marquee,
.song-marquee{
  position:relative;
  margin-top:20px;
  border-radius:999px;
  overflow:hidden;
  border:1px solid rgba(255,255,255,.10);
  background:linear-gradient(180deg, rgba(255,255,255,.09), rgba(255,255,255,.035));
  backdrop-filter:blur(14px);
  -webkit-backdrop-filter:blur(14px);
  box-shadow:0 16px 40px rgba(0,0,0,.18), inset 0 1px 0 rgba(255,255,255,.08);
}
.hero-marquee::before,
.song-marquee::before{
  content:"";
  position:absolute;
  inset:0;
  background:linear-gradient(90deg, rgba(9,6,7,1), rgba(9,6,7,0) 12%, rgba(9,6,7,0) 88%, rgba(9,6,7,1));
  pointer-events:none;
  z-index:2;
}
.hero-marquee-track,
.song-marquee-track{
  display:flex;
  gap:18px;
  width:max-content;
  padding:12px 20px;
  animation:marqueeMove 28s linear infinite;
}
.hero-marquee-track span,
.song-marquee-track span{
  display:inline-flex;
  align-items:center;
  gap:10px;
  font-size:.84rem;
  letter-spacing:.18em;
  text-transform:uppercase;
  color:var(--gold-soft);
  white-space:nowrap;
}
.hero-marquee-track span::after,
.song-marquee-track span::after{
  content:"✦";
  color:rgba(223,189,130,.82);
}
.song-showcase{
  display:grid;
  grid-template-columns:1.1fr .9fr;
  gap:24px;
  align-items:center;
}
.song-showcase .song-showcase-copy p{max-width:60ch}
.song-pills{
  display:flex;
  flex-wrap:wrap;
  gap:12px;
  justify-content:flex-end;
}
.song-pill{
  display:inline-flex;
  align-items:center;
  padding:12px 16px;
  border-radius:999px;
  background:linear-gradient(180deg, rgba(255,255,255,.10), rgba(255,255,255,.04));
  border:1px solid rgba(255,255,255,.12);
  color:#fff5e5;
  box-shadow:0 12px 30px rgba(0,0,0,.18), inset 0 1px 0 rgba(255,255,255,.08);
  backdrop-filter:blur(14px);
  -webkit-backdrop-filter:blur(14px);
  font-weight:700;
}
.song-pill.is-featured{
  color:#120a06;
  background:linear-gradient(180deg, #f4dcb6, #d8b171);
  border-color:rgba(255,255,255,.22);
}
.song-group-grid{
  display:grid;
  grid-template-columns:repeat(2, minmax(0, 1fr));
  gap:22px;
}
.song-group{
  padding:26px;
}
.song-group-head{
  display:flex;
  gap:14px;
  align-items:flex-start;
  margin-bottom:18px;
}
.song-group-head h3{
  margin:0 0 6px;
  font-size:1.24rem;
}
.song-group-head p{
  margin:0;
  color:var(--text-soft);
  font-size:.96rem;
}
.song-group-icon{
  flex:0 0 auto;
  width:44px;
  height:44px;
  border-radius:14px;
  display:grid;
  place-items:center;
  background:linear-gradient(180deg, rgba(255,255,255,.12), rgba(255,255,255,.04));
  border:1px solid rgba(255,255,255,.12);
  color:var(--gold-soft);
  font-weight:800;
}
.song-list{
  list-style:none;
  padding:0;
  margin:0;
  display:grid;
  gap:10px;
}
.song-list li{
  display:grid;
  grid-template-columns:44px 1fr;
  align-items:center;
  gap:12px;
  padding:12px 14px;
  border-radius:16px;
  background:linear-gradient(180deg, rgba(255,255,255,.08), rgba(255,255,255,.03));
  border:1px solid rgba(255,255,255,.1);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.05);
}
.song-no{
  width:32px;
  height:32px;
  border-radius:10px;
  display:grid;
  place-items:center;
  background:linear-gradient(180deg, rgba(215,181,123,.28), rgba(215,181,123,.10));
  color:var(--gold-soft);
  font-weight:800;
  font-size:.84rem;
}
.song-title{
  color:#fff4e0;
  font-weight:650;
}
.section-tight{padding-top:0}
@media (max-width: 980px){
  .song-showcase{grid-template-columns:1fr}
  .song-pills{justify-content:flex-start}
  .song-group-grid{grid-template-columns:1fr}
}
@media (max-width: 640px){
  .hero-marquee-track,
  .song-marquee-track{padding:11px 16px;gap:14px}
  .hero-marquee-track span,
  .song-marquee-track span{font-size:.74rem;letter-spacing:.14em}
  .song-group{padding:20px}
  .song-list li{grid-template-columns:38px 1fr;padding:11px 12px}
  .song-group-icon{width:40px;height:40px}
}
@media (prefers-reduced-motion: reduce){
  .hero-marquee-track,.song-marquee-track{animation:none}
  .panel::after,.offer-card::after,.feature-card::after,.gallery-card::after,.cta-banner::after,.faq-item::after,.review-item::after,.contact-row::after,.form-shell::after,.cities-filter-shell::after,.hero-info-item::before,.quick-action::before,.media-panel::after,.media-video-card::after,
  .btn-gold::after,.btn-ghost::after,.btn-phone::after,.footer-pill::after,.site-nav a::before,
  .page-hero h1,.section-intro h2,.panel h2,.cta-banner h2,.song-showcase h2{animation:none!important}
}


/* v17 hero entrance + audio teaser + brutal atmosphere gallery */

body.page-loaded .site-header{animation:headerFloatIn .9s cubic-bezier(.2,.8,.2,1) both}
@keyframes headerFloatIn{from{opacity:0;transform:translateY(-18px)}to{opacity:1;transform:none}}
.hero-stage{position:relative}
.hero-stage::after{content:"";position:absolute;inset:auto auto 8% 6%;width:42vw;max-width:560px;height:42vw;max-height:560px;border-radius:50%;background:radial-gradient(circle, rgba(255,218,155,.12), transparent 64%);filter:blur(8px);pointer-events:none;opacity:.7}
.hero-stage.hero-ready .hero-item{opacity:1;transform:none;filter:none}
.hero-item{opacity:0;transform:translateY(26px);filter:blur(8px)}
.hero-ready .hero-item:nth-child(1){transition:opacity .65s ease .08s, transform .75s cubic-bezier(.19,1,.22,1) .08s, filter .65s ease .08s}
.hero-ready .hero-item:nth-child(2){transition:opacity .72s ease .18s, transform .85s cubic-bezier(.19,1,.22,1) .18s, filter .72s ease .18s}
.hero-ready .hero-item:nth-child(3){transition:opacity .72s ease .28s, transform .85s cubic-bezier(.19,1,.22,1) .28s, filter .72s ease .28s}
.hero-ready .hero-item:nth-child(4){transition:opacity .72s ease .38s, transform .85s cubic-bezier(.19,1,.22,1) .38s, filter .72s ease .38s}
.hero-ready .hero-item:nth-child(5){transition:opacity .72s ease .48s, transform .85s cubic-bezier(.19,1,.22,1) .48s, filter .72s ease .48s}
.hero-ready .hero-item:nth-child(6){transition:opacity .72s ease .58s, transform .85s cubic-bezier(.19,1,.22,1) .58s, filter .72s ease .58s}
.hero-ready .hero-item:nth-child(7){transition:opacity .72s ease .68s, transform .85s cubic-bezier(.19,1,.22,1) .68s, filter .72s ease .68s}
.hero-title .hero-line{display:block;overflow:hidden}
.hero-title .hero-line + .hero-line{margin-top:.04em}
.hero-title .hero-line{position:relative}
.hero-title .hero-line::after{content:"";position:absolute;left:0;right:0;bottom:-.1em;height:1px;background:linear-gradient(90deg, rgba(255,255,255,0), rgba(255,220,160,.45), rgba(255,255,255,0));opacity:.45;transform:scaleX(0);transform-origin:left center;transition:transform .9s ease .8s}
.hero-ready .hero-title .hero-line::after{transform:scaleX(1)}
.hero-lead{max-width:760px}
.btn-glass{background:linear-gradient(180deg, rgba(255,255,255,.08), rgba(255,255,255,.04));backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px)}
.audio-teaser-trigger{gap:10px}
.audio-teaser-icon,.audio-teaser-chip__play{width:28px;height:28px;border-radius:999px;display:grid;place-items:center;background:linear-gradient(135deg, var(--gold-soft), var(--gold));color:#21140a;font-size:12px;box-shadow:0 8px 18px rgba(201,157,98,.22)}
.audio-eq{display:inline-flex;align-items:flex-end;gap:3px;height:16px}
.audio-eq i{display:block;width:3px;height:6px;border-radius:99px;background:rgba(255,240,220,.9);animation:eqBounce 1s ease-in-out infinite}
.audio-eq i:nth-child(2){animation-delay:.15s}.audio-eq i:nth-child(3){animation-delay:.3s}
.audio-teaser-trigger:not(.is-playing) .audio-eq i{animation-play-state:paused;opacity:.55}
.audio-teaser-trigger.is-playing .audio-eq i{animation-play-state:running}
@keyframes eqBounce{0%,100%{height:6px;opacity:.55}50%{height:15px;opacity:1}}
.audio-teaser-bar{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:14px;align-items:center;width:min(860px,100%);margin-top:15px;padding:14px 16px;border-radius:24px;border:1px solid rgba(255,255,255,.12);background:linear-gradient(180deg, rgba(255,255,255,.08), rgba(255,255,255,.035));backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);box-shadow:0 18px 42px rgba(0,0,0,.22)}
.audio-teaser-chip{appearance:none;border:none;cursor:pointer;display:flex;align-items:center;gap:12px;padding:10px 12px;border-radius:18px;background:rgba(255,255,255,.045);color:var(--text);text-align:left;box-shadow:inset 0 1px 0 rgba(255,255,255,.05)}
.audio-teaser-chip span small{display:block;margin-top:2px;color:var(--muted-soft);font-size:12px}
.audio-progress{position:relative;height:8px;border-radius:999px;background:rgba(255,255,255,.08);overflow:hidden}
.audio-progress span{position:absolute;left:0;top:0;height:100%;width:0%;border-radius:inherit;background:linear-gradient(90deg, var(--gold-soft), var(--gold));box-shadow:0 0 24px rgba(201,157,98,.32)}
.audio-meta{display:grid;gap:4px;text-align:right}.audio-state{font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:rgba(247,239,229,.66)}.audio-duration{font-size:13px;color:var(--text)}
.card-sheen{position:absolute;top:-30%;left:-75%;width:46%;height:170%;background:linear-gradient(90deg, rgba(255,255,255,0), rgba(255,255,255,.12), rgba(255,255,255,0));transform:rotate(18deg);filter:blur(2px);pointer-events:none;mix-blend-mode:screen;animation:cardSheen 7.8s ease-in-out infinite;z-index:1}
.panel > .card-sheen,.offer-card > .card-sheen,.feature-card > .card-sheen,.gallery-card > .card-sheen,.mini-link > .card-sheen,.hero-info-item > .card-sheen,.song-group > .card-sheen,.song-pill > .card-sheen,.cta-banner > .card-sheen,.gallery-filter > .card-sheen,.gallery-spotlight > .card-sheen,.atmos-card > .card-sheen{z-index:0}
@keyframes cardSheen{0%,72%,100%{transform:translateX(0) rotate(18deg);opacity:0}8%,18%{opacity:1}30%{transform:translateX(420%) rotate(18deg);opacity:0}}
.section-atmosphere{padding-top:26px}
.section-intro-atmosphere{max-width:880px}
.atmos-grid{display:grid;grid-template-columns:1.15fr .85fr .85fr;gap:18px;grid-auto-rows:minmax(220px, auto)}
.atmos-card{position:relative;overflow:hidden;border-radius:30px;border:1px solid rgba(255,255,255,.11);background:linear-gradient(180deg, rgba(255,255,255,.08), rgba(255,255,255,.035));min-height:240px;box-shadow:var(--shadow-soft);isolation:isolate}
.atmos-card img{width:100%;height:100%;object-fit:cover;transition:transform .6s ease, filter .6s ease}
.atmos-card::before{content:"";position:absolute;inset:0;background:linear-gradient(180deg, rgba(8,5,5,.02), rgba(8,5,5,.14) 36%, rgba(8,5,5,.82));z-index:1}
.atmos-card:hover img{transform:scale(1.05);filter:saturate(108%) contrast(105%)}
.atmos-card-main{grid-column:1 / span 2;grid-row:span 2;min-height:520px}.atmos-card-tall{grid-row:span 2;min-height:520px}.atmos-card-wide{grid-column:2 / span 2;min-height:250px}
.atmos-copy{position:absolute;left:22px;right:22px;bottom:22px;z-index:2;padding:18px 18px 16px;border-radius:22px;background:linear-gradient(180deg, rgba(8,5,5,.14), rgba(8,5,5,.68));backdrop-filter:blur(10px)}
.atmos-copy span,.gallery-spotlight-copy span{display:inline-flex;padding:8px 12px;border-radius:999px;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.1);font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:rgba(247,239,229,.84)}
.atmos-copy h3,.gallery-spotlight-copy h3{margin:12px 0 0;font-family:"Cormorant Garamond",Georgia,serif;font-size:clamp(30px, 2.4vw, 42px);line-height:.96;letter-spacing:-.03em;text-wrap:balance}
.atmos-stats-rail{display:flex;flex-wrap:wrap;gap:10px;justify-content:center;margin-top:15px;padding:0 4px}.atmos-stats-rail span{padding:12px 16px;border-radius:999px;border:1px solid rgba(255,255,255,.1);background:rgba(255,255,255,.035);font-size:11px;font-weight:800;letter-spacing:.18em;color:rgba(247,239,229,.84)}
.section-gallery-showcase{padding-top:18px;padding-bottom:8px}
.gallery-showcase-grid{display:grid;grid-template-columns:1.2fr .8fr;gap:18px}.gallery-spotlight{position:relative;overflow:hidden;min-height:320px;border-radius:30px;border:1px solid rgba(255,255,255,.11);background:linear-gradient(180deg, rgba(255,255,255,.08), rgba(255,255,255,.035));box-shadow:var(--shadow-soft);isolation:isolate}.gallery-spotlight-main{min-height:660px;grid-row:span 2}.gallery-spotlight img{width:100%;height:100%;object-fit:cover;transition:transform .6s ease, filter .6s ease}.gallery-spotlight::before{content:"";position:absolute;inset:0;background:linear-gradient(180deg, rgba(8,5,5,.02), rgba(8,5,5,.18) 40%, rgba(8,5,5,.84));z-index:1}.gallery-spotlight:hover img{transform:scale(1.04);filter:saturate(110%) contrast(106%)}
.gallery-spotlight-copy{position:absolute;left:22px;right:22px;bottom:22px;z-index:2;padding:18px;border-radius:24px;background:linear-gradient(180deg, rgba(8,5,5,.14), rgba(8,5,5,.68));backdrop-filter:blur(10px)}
.gallery-filters{display:flex;flex-wrap:wrap;justify-content:center;gap:10px;margin:0 auto 22px;max-width:920px}.gallery-filter{position:relative;appearance:none;border:1px solid rgba(255,255,255,.1);background:linear-gradient(180deg, rgba(255,255,255,.07), rgba(255,255,255,.03));color:rgba(247,239,229,.82);padding:12px 16px;border-radius:999px;font-size:11px;font-weight:800;letter-spacing:.15em;text-transform:uppercase;cursor:pointer;overflow:hidden;backdrop-filter:blur(12px)}
.gallery-filter.is-active{background:linear-gradient(135deg, rgba(201,157,98,.2), rgba(255,255,255,.05));color:var(--text);border-color:rgba(232,211,179,.2);box-shadow:0 14px 30px rgba(0,0,0,.18), inset 0 1px 0 rgba(255,255,255,.08)}
.gallery-wall-atmos .gallery-card{transition:opacity .3s ease, transform .3s ease}.gallery-wall-atmos .gallery-card.is-hidden{display:none}
@media (max-width:1100px){.audio-teaser-bar{grid-template-columns:1fr;align-items:start}.audio-meta{text-align:left}.atmos-grid{grid-template-columns:1fr 1fr}.atmos-card-main{grid-column:1 / -1;grid-row:auto;min-height:420px}.atmos-card-tall{grid-row:auto;min-height:320px}.atmos-card-wide{grid-column:1 / -1}.gallery-showcase-grid{grid-template-columns:1fr}.gallery-spotlight-main{min-height:520px;grid-row:auto}}
@media (max-width:760px){.hero-title .hero-line + .hero-line{margin-top:.08em}.audio-teaser-bar{padding:14px}.audio-teaser-chip{width:100%;justify-content:flex-start}.audio-progress{width:100%}.atmos-grid{grid-template-columns:1fr}.atmos-card,.atmos-card-main,.atmos-card-tall,.atmos-card-wide{grid-column:auto;grid-row:auto;min-height:300px}.atmos-copy,.gallery-spotlight-copy{left:16px;right:16px;bottom:16px;padding:16px}.gallery-spotlight,.gallery-spotlight-main{min-height:340px}.gallery-filters{justify-content:flex-start;overflow:auto hidden;padding-bottom:4px}.gallery-filter{white-space:nowrap}}
@media (prefers-reduced-motion:reduce){.hero-item,.card-sheen,.audio-eq i,.hero-title .hero-line::after{animation:none!important;transition:none!important;opacity:1!important;transform:none!important;filter:none!important}}


/* v18 stronger visible hero entrance */
.hero-stage{position:relative;overflow:hidden}
.hero-stage::before{content:"";position:absolute;top:-18%;bottom:-18%;left:-22%;width:34%;background:linear-gradient(90deg, rgba(255,255,255,0), rgba(255,228,175,.14), rgba(255,255,255,0));transform:translateX(-135%) skewX(-20deg);opacity:0;pointer-events:none;z-index:0;mix-blend-mode:screen;filter:blur(2px)}
.hero-stage.hero-ready::before{animation:heroSweep 1.45s cubic-bezier(.19,1,.22,1) .18s both}
@keyframes heroSweep{0%{opacity:0;transform:translateX(-135%) skewX(-20deg)}15%{opacity:.95}100%{opacity:0;transform:translateX(360%) skewX(-20deg)}}
.hero-video{transform:translate3d(0,var(--hero-parallax,0px),0) scale(var(--hero-scale,1.12));opacity:var(--hero-video-opacity,0);filter:blur(var(--hero-video-blur,18px)) saturate(118%) contrast(108%);transition:transform 1.45s cubic-bezier(.19,1,.22,1), opacity 1.05s ease, filter 1.15s ease;will-change:transform,opacity,filter}
.hero-stage.hero-ready .hero-video{--hero-scale:1.04;--hero-video-opacity:.36;--hero-video-blur:0px}
.hero-video-overlay{transition:opacity 1.05s ease, background 1.05s ease;opacity:var(--hero-overlay-opacity,0)}
.hero-stage.hero-ready .hero-video-overlay{--hero-overlay-opacity:1}
.page-hero-inner.hero-entrance{transform:translateY(34px) scale(.985);opacity:0;filter:blur(10px);transition:transform 1s cubic-bezier(.19,1,.22,1), opacity .82s ease, filter .9s ease;will-change:transform,opacity,filter}
.hero-stage.hero-ready .page-hero-inner.hero-entrance{transform:none;opacity:1;filter:none}
.hero-stage.hero-ready .hero-item{opacity:1;transform:none;filter:none}
.hero-item{opacity:0;transform:translateY(34px);filter:blur(10px)}
@media (prefers-reduced-motion:reduce){.hero-stage::before,.page-hero-inner.hero-entrance,.hero-video,.hero-video-overlay,.hero-item{animation:none!important;transition:none!important;opacity:1!important;transform:none!important;filter:none!important}}


/* v19 hero fix + stronger first screen polish */
.page-hero h1,
.hero-title{
  color:#f7eee0;
  background:none !important;
  -webkit-background-clip:border-box !important;
  background-clip:border-box !important;
  text-shadow:0 2px 0 rgba(255,255,255,.04), 0 18px 48px rgba(0,0,0,.42), 0 0 42px rgba(229,177,95,.12);
}
.hero-title{
  max-width:min(920px, 100%);
  margin:16px 0 14px;
}
.hero-title .hero-line{
  display:block;
  color:#f7eee0;
  background:linear-gradient(180deg, #fff6e6 0%, #f3d3a0 58%, #fff3df 100%);
  -webkit-background-clip:text;
  background-clip:text;
  -webkit-text-fill-color:transparent;
  color:transparent;
  padding-bottom:.05em;
}
.hero-title .hero-line:first-child{font-size:clamp(56px, 7vw, 98px)}
.hero-title .hero-line:last-child{font-size:clamp(34px, 4.2vw, 60px); line-height:.96}
.hero-lead{max-width:680px;font-size:clamp(18px,1.95vw,22px);color:rgba(250,242,232,.88)}
.home-hero{min-height:94svh}
.page-hero-inner{padding:62px 0 26px;min-height:68svh}
.hero-video{
  object-position:center 38%;
  transform:translate3d(0,var(--hero-parallax,0px),0) scale(var(--hero-scale,1.16));
}
.hero-stage.hero-ready .hero-video{--hero-scale:1.05;--hero-video-opacity:.62;--hero-video-blur:0px}
.hero-video-overlay{
  background:
    linear-gradient(90deg, rgba(5,3,3,.84) 0%, rgba(5,3,3,.64) 34%, rgba(5,3,3,.34) 62%, rgba(5,3,3,.54) 100%),
    linear-gradient(180deg, rgba(6,4,4,.16) 0%, rgba(6,4,4,.38) 45%, rgba(6,4,4,.78) 100%);
}
.hero-stage::after{inset:auto auto 6% -2%;width:34vw;height:34vw;opacity:.86;filter:blur(20px)}
.hero-stage::before{width:28%;filter:blur(1px)}
.eyebrow{background:linear-gradient(180deg, rgba(255,255,255,.08), rgba(255,255,255,.035));border-color:rgba(255,255,255,.12);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);color:#f5e8d2;letter-spacing:.16em;text-transform:uppercase;font-size:11px;font-weight:800}
.site-header{padding:10px 0;backdrop-filter:blur(12px) saturate(135%)}
.header-shell{padding:9px 16px !important;border-radius:22px;box-shadow:0 16px 36px rgba(0,0,0,.26), inset 0 1px 0 rgba(255,240,220,.05)}
.brand-logo{width:clamp(180px, 14vw, 250px)}
.site-nav{margin:0 14px;gap:6px}
.site-nav a{padding:9px 12px;font-size:10.5px;letter-spacing:.16em}
.header-actions{gap:8px}
.header-actions .btn{padding:11px 16px}
.btn-phone{font-size:12px;letter-spacing:.16em}
.hero-actions{display:flex;align-items:center;gap:12px;margin-top:24px}
.hero-actions .btn{min-height:52px}
.hero-actions .btn-glass{padding-inline:16px;gap:10px}
.audio-teaser-trigger .audio-teaser-label{white-space:nowrap}
.hero-mini-links{display:flex;flex-wrap:wrap;gap:16px;margin-top:14px}
.hero-mini-links a{color:rgba(245,231,209,.8);font-size:12px;letter-spacing:.16em;text-transform:uppercase;font-weight:800;position:relative;padding-bottom:6px}
.hero-mini-links a::after{content:"";position:absolute;left:0;right:0;bottom:0;height:1px;background:linear-gradient(90deg, rgba(255,255,255,0), rgba(232,211,179,.46), rgba(255,255,255,0));opacity:.75}
.hero-trust{gap:10px;margin-top:20px}.hero-trust span{padding:10px 14px;font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:#f2e6d2;background:linear-gradient(180deg, rgba(255,255,255,.07), rgba(255,255,255,.03));border-color:rgba(255,255,255,.1)}
.hero-info-bar{grid-template-columns:repeat(3, minmax(0,1fr));gap:10px;width:min(760px,100%);margin-top:16px;padding:8px;border-radius:18px;background:linear-gradient(180deg, rgba(255,255,255,.06), rgba(255,255,255,.025));border-color:rgba(255,255,255,.1);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px)}
.hero-info-item{padding:12px 14px;border-radius:14px;background:rgba(255,255,255,.03)}
.hero-info-item b{font-size:10px;letter-spacing:.18em}
.hero-info-item span{font-size:14px;line-height:1.45}
.hero-marquee{margin-top:16px}.hero-marquee-track{padding:12px 20px;border-radius:999px;background:rgba(255,255,255,.035);border:1px solid rgba(255,255,255,.08)}
.audio-teaser-bar{width:min(720px,100%);margin-top:14px;padding:12px 14px;border-radius:20px;grid-template-columns:auto minmax(0,1fr) auto}
.audio-teaser-chip{padding:9px 11px;border-radius:16px}
.audio-teaser-chip__play,.audio-teaser-icon{width:26px;height:26px}
.quick-actions{right:16px;bottom:16px;gap:10px}
.quick-action{width:54px;height:54px;border-radius:18px;border:1px solid rgba(232,211,179,.18);background:linear-gradient(180deg, rgba(255,255,255,.1), rgba(255,255,255,.04));backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);box-shadow:0 20px 44px rgba(0,0,0,.28), inset 0 1px 0 rgba(255,255,255,.09)}
.quick-action__icon{width:22px;height:22px;filter:drop-shadow(0 6px 12px rgba(201,157,98,.22))}
@media (max-width:1100px){
  .page-hero-inner{padding:56px 0 18px}
  .hero-title .hero-line:first-child{font-size:clamp(50px, 8vw, 82px)}
  .hero-title .hero-line:last-child{font-size:clamp(30px, 4.4vw, 48px)}
  .site-nav{display:none}
  .header-shell{padding:10px 14px !important}
}
@media (max-width:760px){
  .home-hero{min-height:auto}
  .page-hero-inner{padding:34px 0 14px;min-height:auto}
  .hero-title{margin:14px 0 10px}
  .hero-title .hero-line:first-child{font-size:clamp(40px, 11vw, 58px)}
  .hero-title .hero-line:last-child{font-size:clamp(25px, 7vw, 36px)}
  .hero-actions{gap:10px}
  .hero-actions .btn{min-height:48px}
  .hero-mini-links{gap:12px}
  .hero-info-bar{grid-template-columns:1fr}
  .audio-teaser-bar{grid-template-columns:1fr;gap:12px}
  .quick-action{width:50px;height:50px;border-radius:16px}
}


/* v20 hero alignment + unified inner hero image + scroll reveal quick actions */
.page-hero.page-hero-unified::after{
  background:
    linear-gradient(90deg, rgba(6,4,4,.88), rgba(6,4,4,.52) 52%, rgba(6,4,4,.82)),
    url('uploads/elegant-event.webp') center 28%/cover no-repeat;
  opacity:.56;
}

.home-hero{display:block;min-height:92svh}
.page-hero-inner{justify-content:flex-start;padding:42px 0 24px;min-height:60svh}
.home-hero .page-hero-inner{padding-top:32px;min-height:64svh}
.page-hero.page-hero-unified .page-hero-inner{padding-top:38px;min-height:54svh}
.page-hero.page-hero-unified .eyebrow{margin-top:2px}

.quick-actions{opacity:0;visibility:hidden;pointer-events:none;transform:translateY(18px) scale(.96);transition:opacity .3s ease, transform .35s cubic-bezier(.19,1,.22,1), visibility .3s ease}
.quick-actions.is-visible{opacity:1;visibility:visible;pointer-events:auto;transform:translateY(0) scale(1)}

.atmos-grid{
  grid-template-columns:1.15fr .85fr .85fr;
  grid-template-areas:
    'main main tall'
    'main main tall'
    'stage band tall'
    'wide wide wide';
  gap:18px;
  align-items:stretch;
  grid-auto-rows:minmax(160px, auto);
}
.atmos-card-main,.atmos-card-tall,.atmos-card-wide{grid-column:auto;grid-row:auto}
.atmos-card-main{grid-area:main;min-height:560px}
.atmos-card-tall{grid-area:tall;min-height:560px}
.atmos-grid > .atmos-card:nth-child(3){grid-area:stage;min-height:255px}
.atmos-grid > .atmos-card:nth-child(4){grid-area:band;min-height:255px}
.atmos-card-wide{grid-area:wide;min-height:280px}
.atmos-copy{padding:18px 18px 16px;border-radius:20px}
.atmos-copy h3{font-size:clamp(26px,2vw,36px);line-height:1}

@media (max-width:1100px){
  .page-hero-inner{padding:34px 0 18px;min-height:54svh}
  .home-hero .page-hero-inner{padding-top:26px;min-height:58svh}
  .page-hero.page-hero-unified .page-hero-inner{padding-top:34px;min-height:50svh}
  .atmos-grid{
    grid-template-columns:1fr 1fr;
    grid-template-areas:
      'main main'
      'tall stage'
      'band wide';
    grid-auto-rows:minmax(220px, auto);
  }
  .atmos-card-main{min-height:440px}
  .atmos-card-tall,.atmos-grid > .atmos-card:nth-child(3),.atmos-grid > .atmos-card:nth-child(4),.atmos-card-wide{min-height:300px}
}

@media (max-width:760px){
  .page-hero-inner{padding:26px 0 16px;min-height:auto}
  .home-hero .page-hero-inner{padding-top:22px;min-height:auto}
  .page-hero.page-hero-unified .page-hero-inner{padding-top:26px;min-height:auto}
  .atmos-grid{grid-template-columns:1fr;grid-template-areas:none;grid-auto-rows:auto}
  .atmos-card,.atmos-card-main,.atmos-card-tall,.atmos-card-wide,.atmos-grid > .atmos-card:nth-child(3),.atmos-grid > .atmos-card:nth-child(4){grid-area:auto;min-height:300px}
}


/* ===== Visual polish lift v21 ===== */
html,body{overflow-x:hidden}
body::before,
body::after{
  content:"";
  position:fixed;
  inset:0;
  pointer-events:none;
  z-index:0;
}
body::before{
  background:
    radial-gradient(circle at 10% 12%, rgba(255,220,160,.12), transparent 18%),
    radial-gradient(circle at 84% 6%, rgba(201,157,98,.12), transparent 20%),
    radial-gradient(circle at 50% 100%, rgba(201,157,98,.08), transparent 24%),
    linear-gradient(180deg, rgba(255,255,255,.015), rgba(255,255,255,0));
  opacity:.58;
}
body::after{
  background:
    radial-gradient(circle at center, transparent 38%, rgba(0,0,0,.18) 100%),
    repeating-linear-gradient(90deg, rgba(255,255,255,.012) 0 1px, transparent 1px 4px),
    repeating-linear-gradient(0deg, rgba(255,255,255,.008) 0 1px, transparent 1px 4px);
  mix-blend-mode:soft-light;
  opacity:.16;
}
.site-main,.site-footer,.footer-cta-section,.site-header{position:relative;z-index:1}
.section{position:relative;padding:58px 0}
.section::before{
  content:"";
  position:absolute;
  left:50%;
  top:0;
  width:min(1180px, calc(100% - 42px));
  height:1px;
  transform:translateX(-50%);
  background:linear-gradient(90deg, transparent, rgba(232,211,179,.13), transparent);
}
.site-main > .section:first-child::before{display:none}

.site-header{padding:12px 0;backdrop-filter:blur(13px) saturate(140%)}
.header-shell{
  position:relative;
  overflow:hidden;
  border-color:rgba(255,255,255,.09);
  background:linear-gradient(180deg, rgba(12,8,8,.84), rgba(8,5,5,.58));
  box-shadow:0 20px 56px rgba(0,0,0,.34), inset 0 1px 0 rgba(255,244,225,.06);
}
.header-shell::before{
  content:"";
  position:absolute;
  left:18px;
  right:18px;
  top:0;
  height:1px;
  background:linear-gradient(90deg, transparent, rgba(255,232,196,.55), transparent);
}
.header-shell::after{
  content:"";
  position:absolute;
  left:18%;
  right:18%;
  bottom:-28px;
  height:46px;
  background:radial-gradient(circle, rgba(201,157,98,.2), transparent 68%);
  filter:blur(20px);
  opacity:.7;
}
.brand-logo{
  height:58px;
  width:auto;
  filter:drop-shadow(0 10px 28px rgba(201,157,98,.18));
  transition:transform .35s ease, filter .35s ease;
}
.brand-logo-wrap:hover .brand-logo{transform:translateY(-1px) scale(1.015);filter:drop-shadow(0 12px 34px rgba(201,157,98,.24))}
.site-nav{align-items:center;justify-content:center}
.site-nav a{
  position:relative;
  padding:10px 12px;
  border-radius:999px;
  transition:background .25s ease, color .25s ease, transform .25s ease;
}
.site-nav a::after{display:none!important}
.site-nav a:hover,
.site-nav a.active{
  color:var(--text);
  background:linear-gradient(180deg, rgba(255,255,255,.07), rgba(255,255,255,.03));
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.05);
}
.site-nav a::before{
  content:"";
  position:absolute;
  left:14px;
  right:14px;
  bottom:7px;
  height:2px;
  border-radius:999px;
  background:linear-gradient(90deg, transparent, rgba(255,228,188,.92), transparent);
  transform:scaleX(.2);
  opacity:0;
  transition:transform .25s ease, opacity .25s ease;
}
.site-nav a:hover::before,
.site-nav a.active::before{transform:scaleX(1);opacity:1}

.page-hero,
.page-hero.page-hero-unified,
.hero-stage{overflow:hidden}
.hero-stage .page-hero-inner,
.page-hero.page-hero-unified .page-hero-inner{position:relative;isolation:isolate}
.hero-stage .page-hero-inner::before,
.hero-stage .page-hero-inner::after,
.page-hero.page-hero-unified .page-hero-inner::before,
.page-hero.page-hero-unified .page-hero-inner::after{
  content:"";
  position:absolute;
  border-radius:999px;
  pointer-events:none;
  z-index:-1;
  filter:blur(8px);
}
.hero-stage .page-hero-inner::before,
.page-hero.page-hero-unified .page-hero-inner::before{
  width:min(32vw, 420px);
  height:min(32vw, 420px);
  right:-120px;
  top:14%;
  background:radial-gradient(circle, rgba(255,227,184,.16), rgba(201,157,98,.08) 42%, transparent 72%);
  animation:heroOrbFloat 9s ease-in-out infinite;
}
.hero-stage .page-hero-inner::after,
.page-hero.page-hero-unified .page-hero-inner::after{
  width:min(18vw, 220px);
  height:min(18vw, 220px);
  left:-40px;
  top:2%;
  background:radial-gradient(circle, rgba(255,237,212,.13), rgba(201,157,98,.06) 38%, transparent 72%);
  animation:heroOrbFloat 7s ease-in-out infinite reverse;
}
.hero-title .hero-line{display:block}
.hero-title .hero-line:last-child{
  background:linear-gradient(180deg, #fff8ef 0%, #f1dfc3 42%, #c99d62 100%);
  -webkit-background-clip:text;
  background-clip:text;
  color:transparent;
  text-shadow:none;
}
.hero-lead{max-width:760px}
.hero-mini-links a{
  position:relative;
  padding:10px 16px;
  border-radius:999px;
  border:1px solid rgba(255,255,255,.08);
  background:rgba(255,255,255,.03);
  transition:transform .25s ease, background .25s ease, border-color .25s ease;
}
.hero-mini-links a:hover{transform:translateY(-2px);background:rgba(255,255,255,.06);border-color:rgba(255,230,195,.16)}
.hero-info-bar,
.audio-teaser-bar{
  box-shadow:0 18px 44px rgba(0,0,0,.24), inset 0 1px 0 rgba(255,255,255,.05);
}
.audio-teaser-bar{
  position:relative;
  overflow:hidden;
  background:linear-gradient(180deg, rgba(255,255,255,.08), rgba(255,255,255,.035));
  border:1px solid rgba(255,255,255,.09);
}
.audio-teaser-bar::before{
  content:"";
  position:absolute;
  inset:0;
  background:linear-gradient(110deg, transparent, rgba(255,235,205,.08), transparent 56%);
  transform:translateX(-100%);
  animation:teaserSweep 7s ease-in-out infinite;
}
.audio-progress span{background:linear-gradient(90deg, #f5e7d1, #c99d62);box-shadow:0 0 18px rgba(201,157,98,.45)}
.audio-teaser-chip{background:rgba(255,255,255,.045);border:1px solid rgba(255,255,255,.08)}
.audio-teaser-chip__play,
.audio-teaser-icon{box-shadow:0 0 0 1px rgba(255,255,255,.08), 0 10px 22px rgba(201,157,98,.18)}

.offer-grid{gap:20px}
.offer-card{
  position:relative;
  min-height:312px;
  padding:28px;
  justify-content:flex-end;
  gap:10px;
  isolation:isolate;
  overflow:hidden;
  background-size:cover;
  background-position:center;
  box-shadow:0 22px 54px rgba(0,0,0,.3), inset 0 1px 0 rgba(255,255,255,.05);
}
.offer-card > *{position:relative;z-index:2}
.offer-card::after{
  content:"";
  position:absolute;
  inset:0;
  height:auto;
  background:linear-gradient(180deg, rgba(7,4,4,.06), rgba(7,4,4,.28) 42%, rgba(7,4,4,.92) 100%);
}
.offer-card:nth-child(1){background-image:url('uploads/elegant-event.webp')}
.offer-card:nth-child(2){background-image:url('uploads/home-celebration.webp')}
.offer-card:nth-child(3){background-image:url('uploads/stage-neon.webp')}
.offer-card .offer-top small{
  display:inline-flex;
  padding:8px 12px;
  border-radius:999px;
  background:rgba(255,255,255,.09);
  border:1px solid rgba(255,255,255,.1);
  color:rgba(255,247,235,.84);
  backdrop-filter:blur(10px);
}
.offer-card p{max-width:34ch}
.offer-card .btn-ghost{
  background:rgba(255,255,255,.075);
  backdrop-filter:blur(10px);
  -webkit-backdrop-filter:blur(10px);
}
.offer-card.featured{transform:translateY(-8px) scale(1.01);border-color:rgba(255,232,202,.2)}

.panel,
.faq-item,
.review-item,
.contact-row,
.feature-card,
.gallery-card,
.cta-banner,
.media-panel,
.form-shell,
.cities-filter-shell,
.hero-info-item,
.quick-action{
  --spot-x:50%;
  --spot-y:50%;
  background-image:
    radial-gradient(circle at var(--spot-x) var(--spot-y), rgba(255,225,175,.12), transparent 34%),
    linear-gradient(180deg, rgba(255,255,255,.07), rgba(255,255,255,.03));
  background-blend-mode:screen, normal;
}
.panel::before,
.faq-item::before,
.review-item::before,
.contact-row::before,
.feature-card::before,
.gallery-card::before,
.cta-banner::before,
.media-panel::before,
.form-shell::before,
.cities-filter-shell::before{
  box-shadow:inset 0 1px 0 rgba(255,255,255,.03);
}

.atmos-card{
  border-color:rgba(255,255,255,.12);
  box-shadow:0 24px 64px rgba(0,0,0,.34), inset 0 1px 0 rgba(255,255,255,.06);
}
.atmos-copy{
  background:linear-gradient(180deg, rgba(8,5,5,.16), rgba(8,5,5,.74));
  border:1px solid rgba(255,255,255,.08);
  box-shadow:0 18px 44px rgba(0,0,0,.24);
}
.atmos-stats-rail span{background:rgba(255,255,255,.045);box-shadow:inset 0 1px 0 rgba(255,255,255,.04)}

.gallery-card,
.media-panel,
.cta-banner,
.panel{box-shadow:0 22px 58px rgba(0,0,0,.3), inset 0 1px 0 rgba(255,255,255,.04)}
.gallery-card img,
.media-panel img,
.media-panel video{transition:transform .7s ease, filter .7s ease}
.gallery-card:hover img,
.media-panel:hover img,
.media-panel:hover video{transform:scale(1.035);filter:saturate(108%) contrast(104%)}

.footer-cta-section{padding-top:8px}
.cta-banner{
  position:relative;
  overflow:hidden;
  background:
    radial-gradient(circle at 85% 20%, rgba(255,226,181,.14), transparent 24%),
    linear-gradient(135deg, rgba(201,157,98,.26), rgba(50,18,10,.92));
}
.cta-banner::before{opacity:1}
.site-footer{padding-top:26px}
.footer-wrap{
  position:relative;
  padding:28px;
  border:1px solid rgba(255,255,255,.08);
  border-radius:34px;
  background:linear-gradient(180deg, rgba(255,255,255,.05), rgba(255,255,255,.025));
  box-shadow:0 22px 64px rgba(0,0,0,.32), inset 0 1px 0 rgba(255,255,255,.04);
  overflow:hidden;
}
.footer-wrap::before{
  content:"";
  position:absolute;
  inset:0;
  background:radial-gradient(circle at 12% 0%, rgba(255,224,177,.1), transparent 22%), radial-gradient(circle at 92% 10%, rgba(201,157,98,.08), transparent 20%);
  pointer-events:none;
}
.footer-grid,
.footer-bottom{position:relative;z-index:1}
.footer-pills{margin-top:18px}
.footer-pill{background:rgba(255,255,255,.045);border-color:rgba(255,255,255,.1)}

.quick-actions{right:18px;bottom:18px;gap:12px}
.quick-action{
  width:58px;
  height:58px;
  border-radius:20px;
  border:1px solid rgba(255,255,255,.1);
  background:linear-gradient(180deg, rgba(255,255,255,.08), rgba(255,255,255,.03));
  box-shadow:0 16px 34px rgba(0,0,0,.26);
  backdrop-filter:blur(12px);
}
.quick-action__icon{width:24px;height:24px}

.tilt-luxe{transform-style:preserve-3d;will-change:transform;transition:transform .45s cubic-bezier(.19,1,.22,1), box-shadow .45s ease}
.tilt-luxe:hover{box-shadow:0 28px 76px rgba(0,0,0,.36), 0 0 0 1px rgba(255,244,225,.05)}

.hero-sparks{
  position:absolute;
  inset:0;
  pointer-events:none;
  overflow:hidden;
  z-index:0;
}
.hero-spark{
  position:absolute;
  width:8px;
  height:8px;
  border-radius:999px;
  background:radial-gradient(circle, rgba(255,246,230,.98) 0%, rgba(235,202,155,.78) 34%, rgba(201,157,98,.22) 62%, transparent 76%);
  box-shadow:0 0 12px rgba(201,157,98,.16), 0 0 24px rgba(201,157,98,.08);
  opacity:.24;
  animation:heroSparkFloat var(--spark-dur, 7s) ease-in-out infinite;
  animation-delay:var(--spark-delay, 0s);
}

body[data-page="o-nama-html"] .page-hero.page-hero-unified::after{background:linear-gradient(90deg, rgba(6,4,4,.92), rgba(6,4,4,.58) 55%, rgba(6,4,4,.84)), url('uploads/mica-full-portrait.webp') center 18%/cover no-repeat;opacity:.38}
body[data-page="svadbe-html"] .page-hero.page-hero-unified::after{background:linear-gradient(90deg, rgba(6,4,4,.92), rgba(6,4,4,.58) 55%, rgba(6,4,4,.84)), url('uploads/elegant-event.webp') center/cover no-repeat;opacity:.38}
body[data-page="galerija-html"] .page-hero.page-hero-unified::after{background:linear-gradient(90deg, rgba(6,4,4,.9), rgba(6,4,4,.56) 55%, rgba(6,4,4,.84)), url('uploads/crowd-energy.webp') center/cover no-repeat;opacity:.36}
body[data-page="repertoar-html"] .page-hero.page-hero-unified::after{background:linear-gradient(90deg, rgba(6,4,4,.92), rgba(6,4,4,.56) 55%, rgba(6,4,4,.84)), url('uploads/trumpet-live-close.webp') center/cover no-repeat;opacity:.38}
body[data-page="cene-html"] .page-hero.page-hero-unified::after{background:linear-gradient(90deg, rgba(6,4,4,.92), rgba(6,4,4,.56) 55%, rgba(6,4,4,.84)), url('uploads/home-celebration.webp') center/cover no-repeat;opacity:.36}
body[data-page="kontakt-html"] .page-hero.page-hero-unified::after{background:linear-gradient(90deg, rgba(6,4,4,.92), rgba(6,4,4,.56) 55%, rgba(6,4,4,.84)), url('uploads/studio-selfie.webp') center 28%/cover no-repeat;opacity:.35}
body[data-page="kucni-dogadaji-html"] .page-hero.page-hero-unified::after{background:linear-gradient(90deg, rgba(6,4,4,.92), rgba(6,4,4,.56) 55%, rgba(6,4,4,.84)), url('uploads/home-celebration.webp') center/cover no-repeat;opacity:.38}
body[data-page="mature-html"] .page-hero.page-hero-unified::after{background:linear-gradient(90deg, rgba(6,4,4,.92), rgba(6,4,4,.56) 55%, rgba(6,4,4,.84)), url('uploads/stage-neon.webp') center/cover no-repeat;opacity:.38}

@keyframes heroOrbFloat{
  0%,100%{transform:translate3d(0,0,0) scale(1)}
  50%{transform:translate3d(0,-12px,0) scale(1.03)}
}
@keyframes teaserSweep{
  0%,18%{transform:translateX(-100%)}
  34%,100%{transform:translateX(135%)}
}
@keyframes heroSparkFloat{
  0%,100%{transform:translate3d(0,0,0) scale(.82);opacity:.1}
  50%{transform:translate3d(0,-14px,0) scale(1.02);opacity:.24}
}

@media (max-width:1100px){
  .offer-card{min-height:280px}
}
@media (max-width:760px){
  .section{padding:40px 0}
  .header-shell::after{display:none}
  .brand-logo{height:46px}
  .site-nav a{padding:8px 10px}
  .hero-stage .page-hero-inner::before,
  .hero-stage .page-hero-inner::after,
  .page-hero.page-hero-unified .page-hero-inner::before,
  .page-hero.page-hero-unified .page-hero-inner::after{opacity:.65}
  .offer-card{min-height:260px;padding:24px}
  .footer-wrap{padding:22px 18px;border-radius:26px}
  .quick-action{width:54px;height:54px;border-radius:18px}
}
@media (prefers-reduced-motion:reduce){
  .hero-stage .page-hero-inner::before,
  .hero-stage .page-hero-inner::after,
  .page-hero.page-hero-unified .page-hero-inner::before,
  .page-hero.page-hero-unified .page-hero-inner::after,
  .hero-spark,
  .audio-teaser-bar::before{animation:none!important}
}


/* v22 unified hero, spacing cleanup, smaller media */
:root{
  --hero-frame-min: clamp(560px, calc(100svh - 96px), 760px);
  --hero-frame-top: clamp(108px, 11vw, 146px);
  --hero-frame-bottom: clamp(44px, 6vw, 78px);
  --section-space-v22: clamp(34px, 4.6vw, 56px);
}

.page-hero,
.home-hero{
  min-height: 100svh;
  padding: 0;
}

.page-hero:not(.home-hero)::after{opacity:.12 !important}

.page-hero.hero-stage .hero-video{
  object-position: center 34%;
  filter: blur(var(--hero-video-blur, 16px)) saturate(108%) contrast(105%) brightness(.78);
}

.page-hero.hero-stage.hero-ready .hero-video{--hero-scale:1.04;--hero-video-opacity:.56;--hero-video-blur:0px}

.page-hero.hero-stage .hero-video-overlay{
  background: linear-gradient(180deg, rgba(7,4,5,.24), rgba(7,4,5,.72) 68%, rgba(7,4,5,.92));
}

.page-hero-inner,
.home-hero .page-hero-inner,
.page-hero.page-hero-unified .page-hero-inner{
  max-width: 980px;
  min-height: var(--hero-frame-min);
  padding: var(--hero-frame-top) 0 var(--hero-frame-bottom);
  justify-content: center;
}

.page-hero h1,
.page-hero .hero-title{
  margin: 18px 0 14px;
  max-width: 980px;
}

.page-hero h1{font-size:clamp(54px, 7vw, 92px);line-height:.92}
.page-hero p,
.hero-lead{max-width:760px}
.page-hero .hero-actions{margin-top:26px}
.page-hero .hero-trust{margin-top:18px}
.page-hero .hero-info-bar{margin-top:18px}

.site-main{padding-bottom:40px}
.section{padding:var(--section-space-v22) 0}
.section-intro{margin-bottom:clamp(18px, 2.2vw, 28px)}
.split-grid,
.contact-grid,
.feature-grid,
.offer-grid,
.gallery-grid{gap:clamp(16px, 2vw, 24px)}
.panel{padding:clamp(24px, 2.7vw, 34px)}

.media-panel{min-height:clamp(320px, 36vw, 480px)}
.media-panel-wide{min-height:clamp(300px, 32vw, 410px)}
.media-panel-portrait{min-height:clamp(420px, 46vw, 560px)}
.media-panel img{width:100%;height:100%;max-height:520px;object-fit:cover}
.media-panel-wide img{aspect-ratio:4 / 3;max-height:420px;object-position:center 32%}
.media-panel-portrait img{width:min(100%,420px);max-height:560px;aspect-ratio:3 / 4;object-position:center 18%}

.gallery-grid.home-gallery .gallery-card img{max-height:360px}
.gallery-card.featured-wide img{aspect-ratio:16 / 10;max-height:360px}
.gallery-spotlight{min-height:280px}
.gallery-spotlight-main{min-height:520px}

@media (max-width:1100px){
  :root{--hero-frame-min:clamp(520px, calc(100svh - 92px), 680px)}
  .gallery-spotlight-main{min-height:460px}
}

@media (max-width:760px){
  .section-cd-showcase{padding-top:0;padding-bottom:16px}
  .cd-showcase-intro{margin-bottom:20px}
  .cd-showcase-wrap{grid-template-columns:1fr;gap:18px;padding:0;perspective:none}
  .cd-showcase-wrap::before{display:none}
  .cd-showcase-item,.cd-left,.cd-right{margin-bottom:0;transform:none !important}
  .cd-center{--cd-size:min(86vw, 360px)}
  .cd-showcase-item{--cd-size:min(72vw, 290px)}
  .cd-meta strong{font-size:12px}
  .cd-meta small{font-size:12px}

  :root{
    --hero-frame-min: auto;
    --hero-frame-top: 118px;
    --hero-frame-bottom: 34px;
    --section-space-v22: 38px;
  }

  .page-hero,
  .home-hero{min-height:auto}

  .page-hero-inner,
  .home-hero .page-hero-inner,
  .page-hero.page-hero-unified .page-hero-inner{
    min-height:auto;
    padding:var(--hero-frame-top) 0 var(--hero-frame-bottom);
  }

  .page-hero h1{font-size:clamp(38px, 11vw, 56px)}
  .page-hero .hero-actions{gap:10px}
  .page-hero .hero-info-bar{grid-template-columns:1fr}
  .media-panel,
  .media-panel-wide,
  .media-panel-portrait{min-height:auto}
  .media-panel img,
  .media-panel-wide img,
  .media-panel-portrait img{height:auto;max-height:none}
  .gallery-spotlight,
  .gallery-spotlight-main{min-height:340px}
}


/* ===== V23 polish: uniform spacing, cleaner light effects, mobile tune-up ===== */
:root{
  --section-space:72px;
  --section-space-tablet:58px;
  --section-space-mobile:42px;
}

.page-hero,
.page-hero.page-hero-unified,
.page-hero.home-hero{
  min-height:clamp(640px, 84svh, 860px);
  padding:92px 0 46px;
}

.page-hero-inner{
  max-width:980px;
  min-height:clamp(520px, 66svh, 700px);
  padding:64px 0 38px;
}

.page-hero h1{
  max-width:980px;
}

.page-hero p,
.hero-lead{
  max-width:760px;
}

.section{
  padding:var(--section-space) 0;
}

.hero-sparks,
.card-sheen{
  display:none !important;
}

.btn,
.footer-pill,
.gallery-filter,
.hero-trust span,
.hero-info-item,
.cta-banner,
.panel.luxe,
.offer-card.featured{
  position:relative;
  overflow:hidden;
}

.btn-gold{
  box-shadow:0 16px 38px rgba(201,157,98,.18), 0 0 32px rgba(201,157,98,.08);
  animation:goldPulse 5.5s ease-in-out infinite;
}

.btn-gold::after,
.footer-pill::after,
.gallery-filter::after,
.hero-info-item::after,
.cta-banner::before,
.panel.luxe::before,
.offer-card.featured::before{
  content:"";
  position:absolute;
  inset:-1px;
  border-radius:inherit;
  pointer-events:none;
  background:radial-gradient(circle at 22% 18%, rgba(255,245,219,.14), transparent 36%), radial-gradient(circle at 78% 86%, rgba(201,157,98,.10), transparent 32%);
  opacity:.85;
}

.btn-gold::before{
  content:"";
  position:absolute;
  top:-30%;
  bottom:-30%;
  left:-34%;
  width:22%;
  background:linear-gradient(90deg, rgba(255,255,255,0), rgba(255,251,240,.4), rgba(255,255,255,0));
  transform:skewX(-18deg);
  animation:buttonSweep 6.8s ease-in-out infinite;
  pointer-events:none;
}

.section-intro h2::after,
.panel h2::after{
  content:"";
  display:block;
  width:92px;
  max-width:34%;
  height:2px;
  margin-top:16px;
  border-radius:999px;
  background:linear-gradient(90deg, transparent, rgba(234,214,186,.94), transparent);
  box-shadow:0 0 18px rgba(201,157,98,.16);
}

.section-intro.center h2::after{
  margin-inline:auto;
}

.section-intro h2,
.panel h2{
  position:relative;
}

.media-panel img,
.gallery-card img,
.atmos-card img{
  object-fit:cover;
}

.home-intro-portrait{
  padding:18px;
}

.home-intro-portrait img{
  width:min(100%, 540px);
  margin-inline:auto;
  aspect-ratio:4 / 5;
  max-height:640px;
  object-fit:cover;
  object-position:center top;
}

.home-gallery .gallery-card img,
.gallery-mosaic .gallery-card img,
.photo-grid-clean .gallery-card img{
  aspect-ratio:4 / 3;
  max-height:430px;
}

.atmos-card img{
  aspect-ratio:4 / 3;
}

.lightbox-stage{
  max-width:min(84vw, 980px);
  max-height:78vh;
}

.lightbox-image{
  max-height:70vh;
}

.form-status{
  margin-top:14px;
  padding:14px 16px;
  border-radius:18px;
  border:1px solid rgba(255,255,255,.1);
  background:rgba(255,255,255,.045);
  color:var(--text);
  line-height:1.65;
}

.form-status.is-success{
  border-color:rgba(104, 211, 145, .24);
  background:rgba(104, 211, 145, .08);
}

.form-status.is-error{
  border-color:rgba(255, 129, 129, .22);
  background:rgba(255, 129, 129, .08);
}

.hp-field{
  position:absolute !important;
  left:-9999px !important;
  width:1px !important;
  height:1px !important;
  opacity:0 !important;
  pointer-events:none !important;
}

.contact-form button[disabled]{
  opacity:.72;
  cursor:wait;
}

.page-hero:not(.home-hero)::after{
  opacity:.18;
}

.hero-video{
  opacity:.42;
}

.hero-video-overlay{
  background:linear-gradient(180deg, rgba(7,4,5,.26), rgba(7,4,5,.68) 72%, rgba(7,4,5,.88));
}

.quick-actions{
  gap:12px;
}

.quick-action{
  width:60px;
  height:60px;
}

@keyframes goldPulse{
  0%,100%{box-shadow:0 16px 38px rgba(201,157,98,.16), 0 0 24px rgba(201,157,98,.05)}
  50%{box-shadow:0 18px 44px rgba(201,157,98,.22), 0 0 34px rgba(201,157,98,.12)}
}

@keyframes buttonSweep{
  0%, 72%, 100%{transform:translateX(-180%) skewX(-18deg); opacity:0}
  8%, 16%{opacity:.9}
  24%{transform:translateX(660%) skewX(-18deg); opacity:0}
}

@media (max-width:1100px){
  .section{padding:var(--section-space-tablet) 0;}
  .page-hero,
  .page-hero.page-hero-unified,
  .page-hero.home-hero{min-height:720px;padding:88px 0 36px;}
  .page-hero-inner{min-height:540px;padding:54px 0 30px;}
  .split-grid,
  .contact-grid{grid-template-columns:1fr;gap:18px;}
  .offer-grid,
  .feature-grid,
  .feature-grid-4,
  .gallery-grid{grid-template-columns:repeat(2, minmax(0, 1fr));}
  .home-intro-portrait img{max-height:560px;}
}

@media (max-width:760px){
  .container{width:min(var(--max), calc(100% - 22px));}
  .site-main{padding-bottom:24px;}
  .section{padding:var(--section-space-mobile) 0;}
  .page-hero,
  .page-hero.page-hero-unified,
  .page-hero.home-hero{min-height:100svh;padding:84px 0 18px;}
  .page-hero-inner{min-height:auto;padding:36px 0 22px;}
  .page-hero h1{font-size:clamp(42px, 14vw, 64px);line-height:.92;}
  .page-hero p,
  .hero-lead{font-size:15px;line-height:1.72;}
  .hero-actions{gap:10px;}
  .hero-actions .btn{width:100%;}
  .hero-trust{gap:8px;}
  .hero-trust span{padding:10px 12px;}
  .hero-info-bar{grid-template-columns:1fr;gap:10px;padding:10px;border-radius:20px;}
  .offer-grid,
  .feature-grid,
  .feature-grid-4,
  .gallery-grid,
  .gallery-mosaic{grid-template-columns:1fr;}
  .offer-card,
  .feature-card{min-height:unset;}
  .media-panel,
  .gallery-card,
  .atmos-card,
  .panel,
  .cta-banner,
  .form-shell{border-radius:24px;}
  .media-panel img,
  .gallery-card img,
  .atmos-card img,
  .home-gallery .gallery-card img,
  .gallery-mosaic .gallery-card img,
  .photo-grid-clean .gallery-card img{aspect-ratio:4 / 3;max-height:420px;}
  .home-intro-portrait img{aspect-ratio:4 / 5;max-height:460px;}
  .lightbox{padding:16px;}
  .lightbox-stage{max-width:min(82vw, 880px);max-height:74vh;}
  .lightbox-image{max-height:66vh;}
  .contact-form input,
  .contact-form textarea,
  .form-shell input,
  .form-shell textarea{font-size:16px;}
  .quick-actions{right:10px;bottom:14px;gap:10px;}
  .quick-action{width:54px;height:54px;border-radius:18px;}
}

@media (prefers-reduced-motion:reduce){
  .btn-gold,
  .btn-gold::before{animation:none !important;}
}


/* ===== V24 hero lift + refined sparkle system ===== */
:root{
  --hero-v24-min: clamp(520px, 72svh, 720px);
  --hero-v24-top: clamp(96px, 10.5vh, 118px);
  --hero-v24-bottom: clamp(34px, 5vh, 56px);
}

.page-hero,
.page-hero.page-hero-unified,
.page-hero.home-hero{
  min-height:clamp(640px, 90svh, 860px);
  padding:0;
  display:flex;
  align-items:stretch;
}

.page-hero-inner,
.home-hero .page-hero-inner,
.page-hero.page-hero-unified .page-hero-inner{
  max-width:980px;
  min-height:var(--hero-v24-min);
  padding:var(--hero-v24-top) 0 var(--hero-v24-bottom);
  justify-content:flex-start;
}

.page-hero h1,
.page-hero .hero-title{
  margin:12px 0 12px;
}

.page-hero .hero-actions{margin-top:22px}
.page-hero .hero-trust{margin-top:16px}
.page-hero .hero-info-bar{margin-top:16px}
.page-hero .hero-mini-links{margin-top:12px}
.page-hero .hero-marquee{margin-top:14px}
.page-hero .eyebrow{margin-top:0}

.hero-video{object-position:center 30%}
.page-hero.hero-stage .hero-video{object-position:center 30%}
.hero-stage .page-hero-inner::before,
.page-hero.page-hero-unified .page-hero-inner::before{top:8%;right:-88px;opacity:.88}
.hero-stage .page-hero-inner::after,
.page-hero.page-hero-unified .page-hero-inner::after{top:0;left:-24px;opacity:.72}

.site-sparkle-layer{
  position:fixed;
  inset:0;
  pointer-events:none;
  z-index:0;
  overflow:hidden;
  mix-blend-mode:screen;
  opacity:.58;
}

.site-sparkle-layer .lux-dust{
  position:absolute;
  width:var(--dust-size, 8px);
  height:var(--dust-size, 8px);
  border-radius:999px;
  background:radial-gradient(circle, rgba(255,251,242,.98) 0%, rgba(255,228,183,.92) 34%, rgba(255,214,156,.22) 56%, rgba(255,214,156,0) 76%);
  box-shadow:0 0 8px rgba(255,224,176,.14);
  opacity:0;
  transform:translate3d(0, 18px, 0) scale(.35);
  animation:ambientSparkle var(--dust-dur, 10s) ease-in-out infinite;
  animation-delay:var(--dust-delay, 0s);
}

.sparkle-host{
  position:relative;
  isolation:isolate;
}

.micro-sparkle{
  position:absolute;
  left:var(--spark-x, 50%);
  top:var(--spark-y, 50%);
  width:var(--spark-size, 10px);
  height:var(--spark-size, 10px);
  pointer-events:none;
  z-index:2;
  opacity:0;
  transform:translate(-50%, -50%) rotate(45deg) scale(.35);
  background:radial-gradient(circle, rgba(255,248,236,.98) 0%, rgba(255,227,184,.92) 42%, rgba(255,214,160,.26) 66%, rgba(255,214,160,0) 78%);
  filter:drop-shadow(0 0 6px rgba(255,222,170,.18));
  animation:microTwinkle var(--spark-dur, 6.5s) ease-in-out infinite;
  animation-delay:var(--spark-delay, 0s);
}

.micro-sparkle::before,
.micro-sparkle::after{
  content:"";
  position:absolute;
  left:50%;
  top:50%;
  transform:translate(-50%, -50%);
  border-radius:999px;
  background:linear-gradient(90deg, rgba(255,255,255,0), rgba(255,246,226,.96), rgba(255,255,255,0));
}

.micro-sparkle::before{
  width:1px;
  height:calc(var(--spark-size, 10px) * 2.5);
}

.micro-sparkle::after{
  width:calc(var(--spark-size, 10px) * 2.5);
  height:1px;
}

.page-hero .micro-sparkle{z-index:1}
.site-footer .micro-sparkle,
.cta-banner .micro-sparkle,
.panel.luxe .micro-sparkle,
.offer-card.featured .micro-sparkle,
.hero-info-bar .micro-sparkle{opacity:.012}

@keyframes ambientSparkle{
  0%,100%{opacity:0;transform:translate3d(0,18px,0) scale(.35)}
  18%{opacity:.08}
  36%{opacity:.24;transform:translate3d(0,-4px,0) scale(.82)}
  56%{opacity:.1;transform:translate3d(0,-12px,0) scale(.6)}
  74%{opacity:.18;transform:translate3d(0,-22px,0) scale(.9)}
  88%{opacity:0;transform:translate3d(0,-30px,0) scale(.34)}
}

@keyframes microTwinkle{
  0%,100%{opacity:0;transform:translate(-50%, -50%) rotate(45deg) scale(.3)}
  12%{opacity:0}
  24%{opacity:.32;transform:translate(-50%, -50%) rotate(45deg) scale(.84)}
  38%{opacity:.1;transform:translate(-50%, -50%) rotate(45deg) scale(.52)}
  56%{opacity:.26;transform:translate(-50%, -50%) rotate(45deg) scale(.9)}
  74%{opacity:.08;transform:translate(-50%, -50%) rotate(45deg) scale(.46)}
  86%{opacity:.18;transform:translate(-50%, -50%) rotate(45deg) scale(.78)}
}

@media (max-width:1100px){
  :root{
    --hero-v24-min: clamp(500px, 70svh, 660px);
    --hero-v24-top: clamp(88px, 9.6vh, 108px);
    --hero-v24-bottom: 46px;
  }

  .page-hero,
  .page-hero.page-hero-unified,
  .page-hero.home-hero{min-height:740px}
}

@media (max-width:760px){
  :root{
    --hero-v24-min: auto;
    --hero-v24-top: 92px;
    --hero-v24-bottom: 28px;
  }

  .page-hero,
  .page-hero.page-hero-unified,
  .page-hero.home-hero{
    min-height:100svh;
    padding:0;
  }

  .page-hero-inner,
  .home-hero .page-hero-inner,
  .page-hero.page-hero-unified .page-hero-inner{
    min-height:auto;
    padding:var(--hero-v24-top) 0 var(--hero-v24-bottom);
    justify-content:flex-start;
  }

  .page-hero h1,
  .page-hero .hero-title{margin:10px 0 10px}
  .hero-video,
  .page-hero.hero-stage .hero-video{object-position:center 26%}
  .site-sparkle-layer .lux-dust:nth-child(n+11){display:none}
}

@media (prefers-reduced-motion:reduce){
  .cd-disc{animation:none !important}
  .site-sparkle-layer .lux-dust{animation:none !important;opacity:.08 !important;transform:translate3d(0, 0, 0) scale(.62)}
  .micro-sparkle{animation:none !important;opacity:.1 !important;transform:translate(-50%, -50%) rotate(45deg) scale(.6)}
}


/* v28 visual wow pass */
.section-wave-divider{
  padding-top:4px;
  padding-bottom:22px;
}
.wave-divider-shell{
  position:relative;
  overflow:hidden;
  isolation:isolate;
  padding:24px 26px 20px;
  border-radius:32px;
  border:1px solid rgba(232,211,179,.12);
  background:linear-gradient(180deg, rgba(255,255,255,.07), rgba(255,255,255,.03));
  box-shadow:0 24px 64px rgba(0,0,0,.28), inset 0 1px 0 rgba(255,245,225,.07);
}
.wave-divider-shell::before{
  content:"";
  position:absolute;
  inset:auto -6% -80px auto;
  width:260px;
  height:260px;
  border-radius:50%;
  background:radial-gradient(circle, rgba(201,157,98,.18), transparent 68%);
  filter:blur(18px);
  opacity:.7;
  pointer-events:none;
}
.wave-divider-shell::after{
  content:"";
  position:absolute;
  left:26px;
  right:26px;
  top:0;
  height:1px;
  background:linear-gradient(90deg, transparent, rgba(255,230,194,.52), transparent);
  pointer-events:none;
}
.wave-divider-head{
  display:grid;
  gap:8px;
  justify-items:center;
  text-align:center;
  margin-bottom:12px;
}
.wave-kicker{
  display:inline-flex;
  align-items:center;
  gap:10px;
  padding:9px 14px;
  border-radius:999px;
  border:1px solid rgba(255,255,255,.08);
  background:rgba(255,255,255,.04);
  color:rgba(247,239,229,.82);
  font-size:11px;
  font-weight:800;
  letter-spacing:.18em;
  text-transform:uppercase;
}
.wave-kicker::before,
.wave-kicker::after{
  content:"";
  width:18px;
  height:1px;
  background:linear-gradient(90deg, transparent, rgba(255,223,170,.78), transparent);
}
.wave-divider-copy{
  margin:0;
  max-width:720px;
  color:rgba(247,239,229,.72);
  text-wrap:balance;
}
.wave-divider{
  display:flex;
  align-items:flex-end;
  justify-content:center;
  gap:7px;
  min-height:88px;
  margin:4px auto 10px;
  padding:0 8px;
}
.wave-divider span{
  --bar-h:48px;
  --bar-d:6.2s;
  --bar-delay:0s;
  display:block;
  width:clamp(5px, .7vw, 8px);
  height:var(--bar-h);
  border-radius:999px;
  background:linear-gradient(180deg, rgba(255,244,220,.96), rgba(232,211,179,.92) 46%, rgba(201,157,98,.42));
  box-shadow:0 0 0 1px rgba(255,255,255,.04), 0 0 18px rgba(201,157,98,.18);
  transform-origin:center bottom;
  animation:wavePulse var(--bar-d) ease-in-out infinite;
  animation-delay:var(--bar-delay);
  opacity:.9;
}
@keyframes wavePulse{
  0%,100%{transform:scaleY(.84); opacity:.62}
  18%{transform:scaleY(1.06); opacity:.86}
  38%{transform:scaleY(.7); opacity:.56}
  58%{transform:scaleY(1.18); opacity:1}
  78%{transform:scaleY(.9); opacity:.72}
}
.section-hero-ribbon{
  padding:8px 0 0;
}
.hero-ribbon-shell{
  position:relative;
  overflow:hidden;
  padding:12px 0;
  border-radius:999px;
  border:1px solid rgba(232,211,179,.11);
  background:linear-gradient(180deg, rgba(255,255,255,.055), rgba(255,255,255,.026));
  box-shadow:0 18px 46px rgba(0,0,0,.18), inset 0 1px 0 rgba(255,255,255,.06);
}
.hero-ribbon-shell::before,
.hero-ribbon-shell::after{
  content:"";
  position:absolute;
  top:0;
  bottom:0;
  width:72px;
  pointer-events:none;
  z-index:2;
}
.hero-ribbon-shell::before{
  left:0;
  background:linear-gradient(90deg, rgba(8,5,5,.98), rgba(8,5,5,0));
}
.hero-ribbon-shell::after{
  right:0;
  background:linear-gradient(270deg, rgba(8,5,5,.98), rgba(8,5,5,0));
}
.hero-ribbon-track{
  display:flex;
  align-items:center;
  gap:18px;
  width:max-content;
  padding-inline:20px;
  animation:heroRibbonMove 30s linear infinite;
}
.hero-ribbon-track span{
  position:relative;
  padding-right:18px;
  color:rgba(247,239,229,.8);
  font-size:11px;
  font-weight:800;
  letter-spacing:.18em;
  text-transform:uppercase;
  white-space:nowrap;
}
.hero-ribbon-track span::after{
  content:"";
  position:absolute;
  right:0;
  top:50%;
  width:6px;
  height:6px;
  border-radius:50%;
  background:radial-gradient(circle, rgba(255,226,170,.95), rgba(201,157,98,.3));
  transform:translateY(-50%);
  box-shadow:0 0 14px rgba(201,157,98,.22);
}
@keyframes heroRibbonMove{
  from{transform:translateX(0)}
  to{transform:translateX(-50%)}
}
.lux-sweep-host{
  position:relative;
  overflow:hidden;
  isolation:isolate;
}
.lux-sweep{
  position:absolute;
  inset:-18%;
  background:linear-gradient(105deg, transparent 38%, rgba(255,245,224,.02) 43%, rgba(255,255,255,.14) 49%, rgba(255,225,170,.12) 52%, transparent 58%);
  transform:translate3d(-145%, 0, 0) skewX(-18deg);
  filter:blur(2px);
  mix-blend-mode:screen;
  opacity:0;
  pointer-events:none;
  animation:luxSweep 12.8s cubic-bezier(.22,.61,.36,1) infinite;
  z-index:2;
}
@keyframes luxSweep{
  0%,72%,100%{transform:translate3d(-145%,0,0) skewX(-18deg);opacity:0}
  8%,14%{opacity:.34}
  28%{transform:translate3d(280%,0,0) skewX(-18deg);opacity:0}
}
.hero-video-overlay > .lux-sweep{opacity:.22; animation-duration:16s}
.media-panel > .lux-sweep,
.gallery-card > .lux-sweep,
.cd-disc > .lux-sweep,
.offer-card.featured > .lux-sweep,
.cta-banner > .lux-sweep{opacity:.3}

@media (max-width:1100px){
  .hero-ribbon-track{animation-duration:24s}
}
@media (max-width:760px){
  .section-wave-divider{padding-top:2px;padding-bottom:16px}
  .wave-divider-shell{padding:18px 16px 16px;border-radius:24px}
  .wave-divider-shell::after{left:16px;right:16px}
  .wave-divider{gap:5px;min-height:62px;margin-bottom:6px}
  .wave-divider span{width:4px;box-shadow:0 0 12px rgba(201,157,98,.16)}
  .wave-kicker{font-size:10px;letter-spacing:.14em;padding:8px 12px}
  .wave-kicker::before,.wave-kicker::after{width:10px}
  .hero-ribbon-shell{padding:10px 0}
  .hero-ribbon-shell::before,.hero-ribbon-shell::after{width:36px}
  .hero-ribbon-track{gap:14px;animation-duration:20s}
  .hero-ribbon-track span{font-size:10px;letter-spacing:.14em;padding-right:14px}
}
@media (prefers-reduced-motion:reduce){
  .wave-divider span,
  .hero-ribbon-track,
  .lux-sweep{animation:none !important;opacity:.22}
}

/* ===== v29 visual polish inspired by trubaci.rs ===== */
:root{
  --gold-2:#e8c796;
  --wine:#2a1113;
}
body::before{
  content:"";
  position:fixed;
  inset:0;
  pointer-events:none;
  background:
    radial-gradient(circle at 14% 10%, rgba(232,199,150,.08), transparent 20%),
    radial-gradient(circle at 82% 0%, rgba(232,199,150,.06), transparent 18%),
    linear-gradient(180deg, rgba(255,255,255,.015), transparent 26%);
  z-index:0;
}
.site-topline{
  position:relative;
  z-index:82;
  border-bottom:1px solid rgba(255,255,255,.06);
  background:linear-gradient(180deg, rgba(18,10,10,.9), rgba(9,5,6,.75));
  backdrop-filter:blur(10px) saturate(140%);
}
.site-topline__inner{
  min-height:42px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:16px;
  color:rgba(247,239,229,.74);
  font-size:11px;
  letter-spacing:.14em;
  text-transform:uppercase;
}
.site-topline__left,
.site-topline__right{
  display:flex;
  align-items:center;
  gap:10px 16px;
  flex-wrap:wrap;
}
.site-topline__left strong,
.site-topline__right a{
  color:var(--gold-soft);
  font-weight:800;
}
.site-topline__dot{
  width:5px;
  height:5px;
  border-radius:50%;
  background:radial-gradient(circle, var(--gold-soft), var(--gold));
  box-shadow:0 0 14px rgba(201,157,98,.32);
}
.site-header{padding:12px 0 14px}
.site-header::before{
  content:"";
  position:absolute;
  inset:8px 0 auto;
  height:1px;
  background:linear-gradient(90deg, transparent, rgba(232,211,179,.18), transparent);
  opacity:.8;
}
.header-shell{
  background:linear-gradient(180deg, rgba(18,10,11,.82), rgba(8,5,5,.62));
  border-color:rgba(255,237,213,.1);
  box-shadow:0 18px 48px rgba(0,0,0,.24), inset 0 1px 0 rgba(255,255,255,.045);
}
.site-header.scrolled .header-shell{
  background:linear-gradient(180deg, rgba(10,6,7,.94), rgba(7,4,4,.82));
  box-shadow:0 22px 58px rgba(0,0,0,.32), inset 0 1px 0 rgba(255,255,255,.05);
}
nav a,.mobile-nav a{position:relative}
nav a::before,.mobile-nav a::before{
  content:"";
  position:absolute;
  left:50%;
  bottom:-8px;
  width:0;
  height:2px;
  border-radius:99px;
  background:linear-gradient(90deg, var(--gold-soft), var(--gold));
  transform:translateX(-50%);
  transition:width .28s ease;
}
nav a:hover::before,.mobile-nav a:hover::before,
nav a.active::before,.mobile-nav a.active::before{width:100%}
nav a.active::after,.mobile-nav a.active::after{display:none}
.brand-logo-wrap{
  padding:7px 10px;
  border-radius:18px;
  background:linear-gradient(180deg, rgba(255,255,255,.05), rgba(255,255,255,.02));
  border:1px solid rgba(255,255,255,.06);
}
.brand-logo{
  height:56px;
  width:auto;
  filter:drop-shadow(0 8px 20px rgba(0,0,0,.24));
}
.btn.btn-phone{
  background:rgba(255,255,255,.045);
  border-color:rgba(232,211,179,.12);
}
.btn-gold{
  background:linear-gradient(135deg, #f1d9b6 0%, #d7ab71 52%, #c89352 100%);
}
.home-hero{
  min-height:90svh;
}
.home-hero::before{
  background:
    radial-gradient(circle at 50% 10%, rgba(232,199,150,.18), transparent 20%),
    radial-gradient(circle at 82% 20%, rgba(232,199,150,.08), transparent 18%),
    linear-gradient(180deg, rgba(8,5,5,.14), rgba(8,5,5,.74));
}
.hero-video{opacity:.28;filter:saturate(112%) contrast(108%) brightness(.78)}
.hero-video-overlay{
  background:
    linear-gradient(90deg, rgba(7,4,5,.84), rgba(7,4,5,.38) 44%, rgba(7,4,5,.74)),
    linear-gradient(180deg, rgba(7,4,5,.22), rgba(7,4,5,.78) 72%, rgba(7,4,5,.92));
}
.page-hero-inner{
  max-width:1040px;
}
.page-hero h1{
  max-width:980px;
  letter-spacing:-.04em;
  text-shadow:0 14px 44px rgba(0,0,0,.3);
}
.page-hero h1 .hero-line:first-child{opacity:.92}
.page-hero h1 .hero-line:last-child{
  color:#fff6eb;
}
.eyebrow{
  background:linear-gradient(180deg, rgba(255,255,255,.055), rgba(255,255,255,.022));
  border-color:rgba(232,211,179,.14);
  box-shadow:0 10px 28px rgba(0,0,0,.16);
}
.hero-mini-links a{
  position:relative;
  color:rgba(247,239,229,.84);
}
.hero-mini-links a::after{
  content:"→";
  margin-left:8px;
  color:var(--gold-soft);
}
.hero-info-bar{
  background:linear-gradient(180deg, rgba(255,255,255,.065), rgba(255,255,255,.03));
  border-color:rgba(255,237,213,.1);
  box-shadow:0 16px 44px rgba(0,0,0,.2), inset 0 1px 0 rgba(255,255,255,.04);
}
.hero-info-item,
.hero-trust span,
.footer-pill,
.quick-action{
  background:linear-gradient(180deg, rgba(255,255,255,.055), rgba(255,255,255,.028));
  border-color:rgba(255,255,255,.08);
}
.section{position:relative}
.section::before{
  content:"";
  position:absolute;
  left:0;
  right:0;
  top:0;
  height:1px;
  background:linear-gradient(90deg, transparent, rgba(232,211,179,.08), transparent);
  pointer-events:none;
}
.section:first-of-type::before,
.section-cd-showcase::before,
.footer-cta-section::before,
.site-footer::before{display:none}
.panel,.offer-card,.gallery-card,.feature-card,.cta-banner,.faq-item,.review-item,.contact-row,.media-panel,.form-shell,.cities-filter-shell{
  border-color:rgba(255,255,255,.09);
  box-shadow:0 22px 62px rgba(0,0,0,.24);
}
.panel.luxe,
.offer-card.featured,
.cta-banner{
  border-color:rgba(232,211,179,.16);
}
.offer-card{
  background-size:cover;
  background-position:center;
}
.offer-card::after{
  background:linear-gradient(180deg, rgba(10,6,6,.18), rgba(10,6,6,.82));
}
.offer-card .btn-ghost{
  background:rgba(255,255,255,.06);
  border-color:rgba(255,255,255,.1);
}
.atmos-card::before{
  background:linear-gradient(180deg, rgba(8,5,5,.02), rgba(8,5,5,.18) 32%, rgba(8,5,5,.86));
}
.atmos-stats-rail{
  border:1px solid rgba(255,255,255,.08);
  background:linear-gradient(180deg, rgba(255,255,255,.05), rgba(255,255,255,.02));
  box-shadow:0 14px 34px rgba(0,0,0,.18);
}
.process-strip-section{padding-top:14px}
.process-strip{
  position:relative;
  overflow:hidden;
  padding:28px;
  border-radius:32px;
  border:1px solid rgba(255,255,255,.09);
  background:
    radial-gradient(circle at 0% 0%, rgba(232,199,150,.11), transparent 28%),
    linear-gradient(180deg, rgba(255,255,255,.06), rgba(255,255,255,.03));
  box-shadow:0 24px 68px rgba(0,0,0,.26);
}
.process-strip::before{
  content:"";
  position:absolute;
  inset:0;
  background:linear-gradient(120deg, rgba(255,255,255,.03), transparent 30%, transparent 70%, rgba(255,230,190,.04));
  pointer-events:none;
}
.process-strip-head{
  display:flex;
  align-items:end;
  justify-content:space-between;
  gap:16px 24px;
  margin-bottom:22px;
}
.process-strip-head h2{
  margin:8px 0 0;
  font-family:"Cormorant Garamond", Georgia, serif;
  font-size:clamp(36px, 5vw, 58px);
  line-height:.95;
  letter-spacing:-.03em;
}
.process-strip-head p{max-width:560px;margin:0;color:var(--muted);line-height:1.8}
.process-strip-grid{
  display:grid;
  grid-template-columns:repeat(3, minmax(0,1fr));
  gap:16px;
}
.process-card{
  position:relative;
  padding:24px 22px 22px;
  border-radius:26px;
  border:1px solid rgba(255,255,255,.08);
  background:linear-gradient(180deg, rgba(255,255,255,.055), rgba(255,255,255,.025));
  min-height:220px;
}
.process-card::after{
  content:"";
  position:absolute;
  inset:auto 18px 0 18px;
  height:1px;
  background:linear-gradient(90deg, transparent, rgba(232,211,179,.24), transparent);
}
.process-step{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  width:46px;
  height:46px;
  border-radius:16px;
  background:linear-gradient(135deg, rgba(241,217,182,.2), rgba(201,157,98,.12));
  border:1px solid rgba(232,211,179,.14);
  color:var(--gold-soft);
  font-size:12px;
  font-weight:800;
  letter-spacing:.16em;
  text-transform:uppercase;
}
.process-card h3{
  margin:18px 0 10px;
  font-family:"Cormorant Garamond", Georgia, serif;
  font-size:34px;
  line-height:.95;
}
.process-card p{margin:0;color:var(--muted);line-height:1.78}
.site-footer{
  padding-top:34px;
  background:
    linear-gradient(180deg, rgba(255,255,255,.02), rgba(255,255,255,0)),
    linear-gradient(180deg, rgba(10,6,6,.34), rgba(6,3,4,.66));
}
.site-footer .footer-wrap{
  position:relative;
  padding:28px;
  border-radius:34px;
  border:1px solid rgba(255,255,255,.08);
  background:linear-gradient(180deg, rgba(255,255,255,.04), rgba(255,255,255,.018));
  box-shadow:0 22px 62px rgba(0,0,0,.24);
}
.site-footer .footer-wrap::before{
  content:"";
  position:absolute;
  left:22px;
  right:22px;
  top:0;
  height:1px;
  background:linear-gradient(90deg, transparent, rgba(232,211,179,.26), transparent);
}
.footer-col h4{
  margin:0 0 12px;
  font-size:11px;
  letter-spacing:.2em;
  text-transform:uppercase;
  color:rgba(247,239,229,.58);
}
.footer-links-list a,.footer-meta-list a{
  color:rgba(247,239,229,.84);
}
.footer-bottom{
  margin-top:15px;
  padding-top:18px;
  border-top:1px solid rgba(255,255,255,.07);
}
.footer-stats-visual{
  display:grid;
  grid-template-columns:repeat(5, minmax(0,1fr));
  gap:10px;
  margin-top:20px;
}
.footer-stat-card{
  padding:16px 14px;
  border-radius:20px;
  border:1px solid rgba(255,255,255,.07);
  background:linear-gradient(180deg, rgba(255,255,255,.05), rgba(255,255,255,.02));
  text-align:center;
}
.footer-stat-card b{
  display:block;
  font-size:26px;
  line-height:1;
  font-family:"Cormorant Garamond", Georgia, serif;
}
.footer-stat-card span{
  display:block;
  margin-top:7px;
  font-size:10px;
  letter-spacing:.18em;
  text-transform:uppercase;
  color:rgba(247,239,229,.58);
}
.quick-actions{
  right:20px;
  bottom:20px;
}
.quick-action{
  box-shadow:0 16px 32px rgba(0,0,0,.22);
}
.quick-action-top{
  background:linear-gradient(135deg, rgba(241,217,182,.18), rgba(201,157,98,.14));
}
@media (max-width:980px){
  .site-topline__inner,
  .process-strip-head{align-items:flex-start;flex-direction:column}
  .process-strip-grid,
  .footer-stats-visual{grid-template-columns:1fr 1fr}
}
@media (max-width:760px){
  .site-topline__inner{min-height:auto;padding:10px 0;font-size:10px;letter-spacing:.12em}
  .site-topline__left,.site-topline__right{gap:8px 12px}
  .brand-logo{height:48px}
  .header-shell{padding:10px 10px 10px 12px}
  .home-hero{min-height:calc(100svh - 20px)}
  .process-strip{padding:20px}
  .process-strip-grid,
  .footer-stats-visual{grid-template-columns:1fr}
  .process-card{min-height:auto}
  .site-footer .footer-wrap{padding:22px 18px 20px;border-radius:26px}
}
@media (prefers-reduced-motion:reduce){
  .site-topline,.site-footer .footer-wrap,.process-strip{backdrop-filter:none}
}


/* v30 homepage + topline polish */
.site-topline__right a{
  padding:6px 10px;
  border-radius:999px;
  border:1px solid rgba(255,255,255,.06);
  background:linear-gradient(180deg, rgba(255,255,255,.03), rgba(255,255,255,.015));
}
.site-topline__right a:hover{
  color:#fff4df;
  border-color:rgba(232,211,179,.16);
  background:linear-gradient(180deg, rgba(255,255,255,.06), rgba(255,255,255,.02));
}
.home-hero .page-hero-inner{padding-top:26px}
.home-hero .hero-title{max-width:1020px}
.home-hero .hero-lead{max-width:720px}
.home-hero .hero-info-item{min-height:74px;display:flex;flex-direction:column;justify-content:center}
.home-hero .hero-marquee-track{box-shadow:inset 0 1px 0 rgba(255,255,255,.04), 0 14px 30px rgba(0,0,0,.18)}
.section-cd-showcase{padding-top:20px}
.cd-showcase-wrap{margin-top:8px}
.process-strip-head .kicker,.process-strip-head h2,.process-card h3{color:#fff4e4}
.process-card{box-shadow:0 18px 48px rgba(0,0,0,.22)}
.process-card p{color:rgba(247,239,229,.72)}
.footer-stats-visual{margin-top:24px}
.footer-stat-card b{font-size:clamp(22px, 2vw, 30px)}
.footer-stat-card span{line-height:1.5}
@media (max-width:760px){
  .site-topline__right a{padding:5px 9px}
  .section-cd-showcase{padding-top:8px}
  .process-strip-head h2{font-size:clamp(30px, 8.5vw, 42px)}
  .footer-stat-card b{font-size:24px}
}

/* Promo popup */
.promo-popup{
  position:fixed;
  inset:0;
  z-index:9998;
  display:grid;
  place-items:center;
  padding:24px;
  opacity:0;
  visibility:hidden;
  pointer-events:none;
  transition:opacity .35s ease, visibility .35s ease;
}
.promo-popup.is-visible{
  opacity:1;
  visibility:visible;
  pointer-events:auto;
}
.promo-popup__backdrop{
  position:absolute;
  inset:0;
  background:radial-gradient(circle at top, rgba(201,157,98,.18), transparent 42%), rgba(5,4,4,.76);
  backdrop-filter:blur(6px);
}
.promo-popup__dialog{
  position:relative;
  z-index:1;
  width:min(100%, 468px);
  padding:28px 24px 24px;
  border-radius:24px;
  border:1px solid rgba(255,230,190,.18);
  background:
    linear-gradient(180deg, rgba(255,243,220,.1), rgba(255,243,220,.03)),
    radial-gradient(circle at top, rgba(226,189,126,.18), transparent 55%),
    rgba(15,10,10,.96);
  box-shadow:0 24px 90px rgba(0,0,0,.52), inset 0 1px 0 rgba(255,255,255,.08);
  text-align:center;
  transform:translateY(16px) scale(.96);
  transition:transform .42s cubic-bezier(.22,1,.36,1), opacity .35s ease;
  opacity:0;
  overflow:hidden;
}
.promo-popup__dialog::before{
  content:"";
  position:absolute;
  inset:0;
  border-radius:inherit;
  padding:1px;
  background:linear-gradient(135deg, rgba(255,232,202,.65), rgba(201,157,98,.18), rgba(255,232,202,.08));
  -webkit-mask:linear-gradient(#000 0 0) content-box, linear-gradient(#000 0 0);
  -webkit-mask-composite:xor;
  mask-composite:exclude;
  pointer-events:none;
}
.promo-popup__dialog::after{
  content:"";
  position:absolute;
  top:-28%;
  left:-35%;
  width:52%;
  height:170%;
  transform:rotate(20deg);
  background:linear-gradient(90deg, transparent, rgba(255,223,171,.16), transparent);
  pointer-events:none;
  animation:promoPopupSweep 5.4s linear infinite;
}
.promo-popup.is-visible .promo-popup__dialog{
  transform:translateY(0) scale(1);
  opacity:1;
}
.promo-popup__close{
  position:absolute;
  top:14px;
  right:14px;
  width:42px;
  height:42px;
  border-radius:999px;
  border:1px solid rgba(255,232,202,.16);
  background:rgba(255,255,255,.04);
  color:#fff;
  font-size:28px;
  line-height:1;
  cursor:pointer;
  transition:transform .25s ease, background .25s ease, border-color .25s ease;
}
.promo-popup__close:hover{
  transform:scale(1.06);
  background:rgba(255,255,255,.09);
  border-color:rgba(255,232,202,.28);
}
.promo-popup__eyebrow{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:8px;
  margin-bottom:14px;
  padding:8px 14px;
  border-radius:999px;
  background:rgba(255,236,204,.08);
  border:1px solid rgba(255,232,202,.12);
  font-size:12px;
  font-weight:800;
  letter-spacing:.28em;
  text-transform:uppercase;
  color:var(--gold-soft);
}
.promo-popup__title{
  margin:0;
  font-size:clamp(30px, 6vw, 54px);
  line-height:.92;
  letter-spacing:.06em;
  text-transform:uppercase;
  color:var(--paper);
  text-shadow:0 10px 30px rgba(0,0,0,.32);
}
.promo-popup__lead{
  max-width:32ch;
  margin:14px auto 0;
  color:rgba(247,241,230,.84);
  font-size:16px;
}
.promo-popup__phone{
  display:inline-block;
  margin-top:15px;
  font-size:clamp(18px, 4.3vw, 26px);
  line-height:1;
  font-weight:900;
  letter-spacing:.14em;
  color:var(--gold-soft);
  text-decoration:none;
}
.promo-popup__actions{
  display:flex;
  flex-wrap:wrap;
  justify-content:center;
  gap:12px;
  margin-top:18px;
}
.promo-popup__actions .btn{
  min-width:150px;
}
body.promo-popup-open{
  overflow:hidden;
}
@keyframes promoPopupSweep{
  0%{transform:translate3d(-8%,0,0) rotate(20deg)}
  100%{transform:translate3d(185%,0,0) rotate(20deg)}
}
@media (max-width:640px){
  .promo-popup{
    padding:16px;
  }
  .promo-popup__dialog{
    width:min(100%, 388px);
    padding:24px 16px 18px;
    border-radius:24px;
  }
  .promo-popup__eyebrow{
    font-size:11px;
    letter-spacing:.22em;
  }
  .promo-popup__lead{
    font-size:15px;
  }
  .promo-popup__phone{
    letter-spacing:.1em;
  }
  .promo-popup__actions{
    flex-direction:column;
  }
  .promo-popup__actions .btn{
    width:100%;
    min-width:0;
  }
}
@media (prefers-reduced-motion:reduce){
  .promo-popup,
  .promo-popup__dialog,
  .promo-popup__close,
  .promo-popup__dialog::after{
    transition:none !important;
    animation:none !important;
  }
}


/* v34 - final responsive polish + interaction-start music */
#site-auto-music{display:none!important}
.music-is-playing .audio-teaser-trigger{box-shadow:0 0 0 1px rgba(245,210,150,.2),0 18px 44px rgba(201,157,98,.2)}
img,video{max-width:100%;height:auto}.site-main{overflow:hidden}.container{max-width:min(1180px,calc(100% - 32px))}
@media (max-width:1180px){.split-grid{grid-template-columns:1fr;gap:22px}.offer-grid,.process-strip-grid,.footer-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.footer-col:last-child{grid-column:1/-1}.page-hero h1,.hero-title{max-width:100%}}
@media (max-width:860px){.site-topline{display:none}.site-header{top:0;padding:8px 0}.header-shell{min-height:64px;gap:10px;background:rgba(255,255,255,.96)!important;border-color:rgba(15,10,6,.08)!important;box-shadow:0 14px 34px rgba(0,0,0,.16)!important}.brand-logo{height:50px;max-width:190px;object-fit:contain;filter:none!important}.header-actions{gap:8px}.header-actions .btn-gold{display:none}.menu-toggle{background:rgba(15,10,6,.06);border-color:rgba(15,10,6,.12);color:#17110b}.menu-toggle span{background:#17110b}.mobile-nav.show{display:grid;position:relative;z-index:30;background:rgba(255,255,255,.98);border-color:rgba(15,10,6,.1);box-shadow:0 18px 40px rgba(0,0,0,.15)}.mobile-nav a{color:#21170e!important;background:rgba(15,10,6,.035);border:1px solid rgba(15,10,6,.06)}.mobile-nav a.active{background:linear-gradient(135deg,rgba(201,157,98,.18),rgba(15,10,6,.04));box-shadow:inset 0 0 0 1px rgba(201,157,98,.18)}.page-hero{min-height:auto;padding-top:76px}.home-hero .page-hero-inner,.page-hero-inner,.page-hero.page-hero-unified .page-hero-inner{min-height:auto;padding:34px 0 26px}.hero-title .hero-line:first-child{font-size:clamp(38px,10vw,60px);line-height:.96}.hero-title .hero-line:last-child{font-size:clamp(25px,7vw,40px);line-height:1}.hero-lead{font-size:16px;line-height:1.7;max-width:58ch}.hero-actions{flex-wrap:wrap;align-items:stretch}.hero-actions .btn{width:100%;justify-content:center}.hero-mini-links{display:grid;grid-template-columns:1fr;gap:8px}.hero-mini-links a{text-align:center}.hero-trust{display:grid;grid-template-columns:1fr;gap:8px}.hero-trust span{text-align:center}.section{padding:44px 0}.section-intro h2,.panel h2,.cta-banner h2{font-size:clamp(30px,8vw,46px);line-height:1.02}.panel,.offer-card,.feature-card,.cta-banner,.form-shell,.cities-filter-shell{padding:22px;border-radius:24px}.footer-stats-visual{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.quick-actions{right:12px;bottom:12px;gap:8px}.quick-action{width:48px;height:48px;border-radius:15px}}
@media (max-width:620px){.container{max-width:calc(100% - 22px)}.brand-logo{height:46px;max-width:168px}.header-shell{border-radius:18px;padding:9px 10px!important}.mobile-nav{grid-template-columns:1fr!important;border-radius:18px;margin-top:8px;padding:10px}.page-hero{padding-top:72px}.hero-video{object-position:center center;transform:translate3d(0,var(--hero-parallax,0px),0) scale(1.08)}.hero-video-overlay{background:linear-gradient(180deg,rgba(6,4,4,.44),rgba(6,4,4,.68) 42%,rgba(6,4,4,.9) 100%),linear-gradient(90deg,rgba(6,4,4,.64),rgba(6,4,4,.28),rgba(6,4,4,.7))}.home-hero .page-hero-inner,.page-hero-inner,.page-hero.page-hero-unified .page-hero-inner{padding:28px 0 22px}.eyebrow{font-size:10px;line-height:1.45;letter-spacing:.12em}.hero-info-bar{padding:8px;gap:8px}.audio-teaser-bar{display:grid;grid-template-columns:1fr!important;padding:12px}.offer-grid,.process-strip-grid,.footer-grid,.footer-stats-visual{grid-template-columns:1fr}.cd-showcase-wrap{gap:16px}.cd-showcase-item{width:min(100%,320px);margin-inline:auto}.atmos-card,.atmos-card-main,.atmos-card-tall,.atmos-card-wide{min-height:260px!important;border-radius:24px}.atmos-copy{left:12px;right:12px;bottom:12px;padding:14px;border-radius:18px}.atmos-copy h3{font-size:24px;line-height:1.04}.gallery-grid,.photo-grid-clean{grid-template-columns:1fr!important}.footer-bottom{flex-direction:column;align-items:flex-start;gap:14px}.promo-popup__dialog{width:min(92vw,390px);padding:24px 18px;border-radius:26px}.promo-popup__title{font-size:clamp(42px,14vw,68px)}.promo-popup__actions{grid-template-columns:1fr;gap:10px}}
@media (max-width:380px){.brand-logo{max-width:148px;height:42px}.quick-action{width:44px;height:44px}.hero-title .hero-line:first-child{font-size:36px}.hero-title .hero-line:last-child{font-size:24px}}

/* v35 - SEO + visual upgrade pack */
.seo-power-section{position:relative;overflow:hidden}
.seo-power-section::before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 18% 20%,rgba(201,157,98,.13),transparent 26%),radial-gradient(circle at 84% 64%,rgba(234,214,186,.08),transparent 24%);pointer-events:none;opacity:.9}
.seo-power-grid{position:relative;display:grid;grid-template-columns:1.02fr .98fr;gap:18px;align-items:stretch}
.seo-power-card{position:relative;padding:30px;border-radius:32px;border:1px solid rgba(232,211,179,.13);background:linear-gradient(180deg,rgba(255,255,255,.065),rgba(255,255,255,.028));box-shadow:var(--shadow);overflow:hidden}
.seo-power-card::before{content:"";position:absolute;inset:0;background:linear-gradient(120deg,transparent,rgba(234,214,186,.08),transparent);transform:translateX(-110%);animation:seoSoftSweep 8s ease-in-out infinite;pointer-events:none}
.seo-power-card > *{position:relative;z-index:1}
.seo-power-card h2{margin:10px 0 12px;font-family:"Cormorant Garamond",Georgia,serif;font-size:clamp(38px,5vw,62px);line-height:.95;letter-spacing:-.035em;text-wrap:balance}
.seo-power-card p{color:var(--muted);line-height:1.84;margin:0 0 14px}
.seo-proof-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:18px}
.seo-proof{padding:16px;border-radius:22px;border:1px solid rgba(255,255,255,.08);background:rgba(255,255,255,.035)}
.seo-proof b{display:block;font-size:20px;color:var(--gold-soft);font-family:"Cormorant Garamond",Georgia,serif;line-height:1}
.seo-proof span{display:block;margin-top:6px;color:var(--muted);font-size:13px;line-height:1.55}
.seo-mini-routes{display:grid;gap:12px}
.seo-route{display:grid;grid-template-columns:auto 1fr;gap:14px;align-items:center;padding:16px;border-radius:24px;border:1px solid rgba(255,255,255,.08);background:linear-gradient(180deg,rgba(255,255,255,.052),rgba(255,255,255,.024));transition:transform .25s ease,border-color .25s ease,background .25s ease}
.seo-route:hover{transform:translateY(-3px);border-color:rgba(232,211,179,.18);background:linear-gradient(180deg,rgba(201,157,98,.095),rgba(255,255,255,.03))}
.seo-route i{display:grid;place-items:center;width:46px;height:46px;border-radius:16px;background:linear-gradient(135deg,rgba(234,214,186,.2),rgba(201,157,98,.1));font-style:normal;color:var(--gold-soft);font-weight:900}
.seo-route strong{display:block;font-family:"Cormorant Garamond",Georgia,serif;font-size:28px;line-height:.95}
.seo-route small{display:block;margin-top:6px;color:var(--muted);line-height:1.45}
.home-faq-section{position:relative}
.home-faq-shell{display:grid;grid-template-columns:.82fr 1.18fr;gap:18px;align-items:start}
.home-faq-sticky{position:sticky;top:112px;padding:28px;border-radius:32px;border:1px solid rgba(232,211,179,.13);background:linear-gradient(180deg,rgba(201,157,98,.1),rgba(255,255,255,.03));box-shadow:var(--shadow)}
.home-faq-sticky h2{margin:10px 0 12px;font-family:"Cormorant Garamond",Georgia,serif;font-size:clamp(36px,4vw,58px);line-height:.96;letter-spacing:-.035em}
.home-faq-sticky p{color:var(--muted);line-height:1.8;margin:0}
.faq-list.faq-premium .faq-item{background:linear-gradient(180deg,rgba(255,255,255,.058),rgba(255,255,255,.026));border-color:rgba(232,211,179,.12);transition:border-color .25s ease,background .25s ease,transform .25s ease}
.faq-list.faq-premium .faq-item:hover{border-color:rgba(232,211,179,.22);transform:translateY(-2px)}
.faq-list.faq-premium .faq-item[open]{background:linear-gradient(180deg,rgba(201,157,98,.12),rgba(255,255,255,.032))}
.intent-strip{position:relative;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin-top:18px}
.intent-chip{min-height:74px;padding:14px;border-radius:20px;border:1px solid rgba(255,255,255,.08);background:rgba(255,255,255,.03);display:flex;align-items:flex-end;font-size:13px;font-weight:800;letter-spacing:.06em;text-transform:uppercase;color:rgba(247,239,229,.82)}
.hero-stage::after{content:"";position:absolute;left:0;right:0;bottom:-1px;height:160px;background:linear-gradient(180deg,transparent,rgba(7,4,5,.76) 58%,#070405);z-index:0;pointer-events:none}
.hero-entrance{z-index:2}
.hero-ready .hero-item{animation:heroCinematicIn .92s cubic-bezier(.16,1,.3,1) both}
.hero-ready .hero-item:nth-child(2){animation-delay:.05s}.hero-ready .hero-item:nth-child(3){animation-delay:.1s}.hero-ready .hero-item:nth-child(4){animation-delay:.15s}.hero-ready .hero-item:nth-child(5){animation-delay:.2s}.hero-ready .hero-item:nth-child(6){animation-delay:.25s}
@keyframes heroCinematicIn{from{opacity:0;transform:translate3d(0,22px,0) scale(.985);filter:blur(8px)}to{opacity:1;transform:none;filter:blur(0)}}
@keyframes seoSoftSweep{0%,55%{transform:translateX(-120%)}82%,100%{transform:translateX(125%)}}
@media (max-width:980px){.seo-power-grid,.home-faq-shell{grid-template-columns:1fr}.home-faq-sticky{position:relative;top:auto}.intent-strip{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:620px){.seo-power-card{padding:22px;border-radius:26px}.seo-proof-grid,.intent-strip{grid-template-columns:1fr}.seo-route{grid-template-columns:1fr}.seo-route i{width:42px;height:42px}.home-faq-sticky{padding:22px;border-radius:26px}.hero-stage::after{height:100px}.btn{letter-spacing:.1em}}


/* v36 - Trust, testimonials, audio indicator and clean photo blocks */
.atmos-copy{display:none!important}
.atmos-card{position:relative;overflow:hidden;border-radius:30px;background:rgba(255,255,255,.035);border:1px solid rgba(255,255,255,.08)}
.atmos-card::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(0,0,0,0),rgba(0,0,0,.12));opacity:.45;pointer-events:none}
.atmos-card img{width:100%;height:100%;object-fit:cover;display:block}
.why-us-section,.testimonials-section,.seo-final-section{position:relative}
.why-us-grid,.testimonials-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}
.why-us-card,.testimonial-card,.seo-final-panel{
  position:relative;overflow:hidden;border-radius:28px;padding:24px;
  background:linear-gradient(180deg,rgba(255,255,255,.075),rgba(255,255,255,.035));
  border:1px solid rgba(255,255,255,.09);
  box-shadow:0 24px 70px rgba(0,0,0,.22);
}
.why-us-card::before,.testimonial-card::before,.seo-final-panel::before{
  content:"";position:absolute;inset:-1px;background:radial-gradient(circle at 18% 0%,rgba(230,188,122,.22),transparent 34%);
  opacity:.75;pointer-events:none;
}
.why-us-card > *,.testimonial-card > *,.seo-final-panel > *{position:relative;z-index:1}
.why-us-icon{width:48px;height:48px;border-radius:18px;display:grid;place-items:center;margin-bottom:16px;background:rgba(214,166,94,.15);border:1px solid rgba(214,166,94,.22);font-size:22px}
.why-us-card h3,.testimonial-card strong{margin:0 0 9px;color:var(--cream);font-size:20px}
.why-us-card p,.testimonial-card p,.seo-final-panel p{color:rgba(247,239,229,.76)}
.testimonials-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
.testimonial-card p{font-size:17px;line-height:1.68;margin:0 0 18px}
.testimonial-card span{display:block;color:var(--gold-soft);font-size:12px;letter-spacing:.14em;text-transform:uppercase;margin-top:4px}
.seo-final-panel{display:grid;grid-template-columns:1.4fr auto;align-items:center;gap:22px;padding:30px}
.seo-final-panel h2{margin:8px 0 10px;font-size:clamp(30px,3vw,48px);line-height:1}
.seo-final-actions{display:flex;gap:12px;flex-wrap:wrap;justify-content:flex-end}
/* fixed bottom-left music play button */
.site-music-indicator{
  position:fixed;left:18px;right:auto;bottom:18px;z-index:120;
  width:58px;height:58px;padding:0;border-radius:999px;border:1px solid rgba(214,166,94,.42);
  display:grid;place-items:center;overflow:visible;
  background:linear-gradient(145deg,rgba(48,28,15,.92),rgba(18,11,8,.88));
  color:#fff;box-shadow:0 18px 45px rgba(0,0,0,.32),0 0 0 1px rgba(255,255,255,.055) inset,0 0 28px rgba(214,166,94,.18);
  backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);cursor:pointer;
  opacity:1;transform:none;pointer-events:auto;transition:transform .22s ease,box-shadow .22s ease,border-color .22s ease,background .22s ease;
}
.site-music-indicator:hover{transform:translateY(-3px) scale(1.035);border-color:rgba(245,199,127,.72);box-shadow:0 22px 55px rgba(0,0,0,.38),0 0 42px rgba(214,166,94,.28)}
.site-music-indicator:active{transform:translateY(-1px) scale(.98)}
.site-music-indicator::after{
  content:attr(data-status);position:absolute;left:70px;bottom:8px;white-space:nowrap;
  padding:9px 12px;border-radius:999px;border:1px solid rgba(214,166,94,.22);
  background:rgba(18,11,8,.82);color:rgba(255,247,236,.94);font:800 12px/1.1 inherit;letter-spacing:.02em;
  box-shadow:0 16px 36px rgba(0,0,0,.25);opacity:0;transform:translateX(-8px);pointer-events:none;transition:opacity .22s ease,transform .22s ease;
}
.site-music-indicator:hover::after{opacity:1;transform:none}
.music-dot{
  position:relative;width:36px;height:36px;border-radius:50%;display:grid;place-items:center;
  background:linear-gradient(135deg,var(--gold-soft),var(--gold));box-shadow:0 0 0 8px rgba(214,166,94,.11),0 0 22px rgba(214,166,94,.3);
}
.music-dot::before{
  content:"";display:block;width:0;height:0;margin-left:3px;
  border-top:8px solid transparent;border-bottom:8px solid transparent;border-left:13px solid #21140a;
  filter:drop-shadow(0 1px 0 rgba(255,255,255,.2));
}
body.music-is-playing .music-dot{animation:musicPulse 1.35s ease-in-out infinite}
body.music-is-playing .music-dot::before{
  width:12px;height:15px;margin-left:0;border:0;
  background:linear-gradient(90deg,#21140a 0 34%,transparent 34% 66%,#21140a 66% 100%);
}
body.music-is-playing .site-music-indicator{background:linear-gradient(145deg,rgba(63,37,17,.95),rgba(24,13,8,.9));border-color:rgba(214,166,94,.6)}
.music-text{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
@keyframes musicPulse{0%,100%{box-shadow:0 0 0 8px rgba(214,166,94,.11),0 0 22px rgba(214,166,94,.28)}50%{box-shadow:0 0 0 12px rgba(214,166,94,.17),0 0 32px rgba(214,166,94,.42)}}
@media (max-width:980px){
  .why-us-grid,.testimonials-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .seo-final-panel{grid-template-columns:1fr}
  .seo-final-actions{justify-content:flex-start}
}
@media (max-width:620px){
  .why-us-grid,.testimonials-grid{grid-template-columns:1fr}
  .why-us-card,.testimonial-card,.seo-final-panel{border-radius:22px;padding:20px}
  .site-music-indicator{left:14px;bottom:14px;width:52px;height:52px}
  .music-dot{width:32px;height:32px}
  .site-music-indicator::after{display:none}
}

/* v37 - loader, stronger gallery hover and sound waves on music button */
.site-loader{
  position:fixed;inset:0;z-index:9999;display:grid;place-items:center;
  background:radial-gradient(circle at 50% 42%,rgba(214,166,94,.18),transparent 30%),linear-gradient(180deg,#080505,#130b08);
  transition:opacity .55s ease,visibility .55s ease;overflow:hidden;
}
.site-loader::before{content:"";position:absolute;inset:-35%;background:conic-gradient(from 180deg,transparent,rgba(214,166,94,.14),transparent 30%);animation:loaderSpin 2.8s linear infinite;opacity:.65}
.site-loader__inner{position:relative;display:grid;place-items:center;gap:14px;text-align:center;color:var(--cream)}
.site-loader__mark{width:68px;height:68px;border-radius:50%;display:grid;place-items:center;background:linear-gradient(135deg,var(--gold-soft),var(--gold));box-shadow:0 0 0 12px rgba(214,166,94,.12),0 24px 70px rgba(0,0,0,.35)}
.site-loader__mark::before{content:"";width:0;height:0;margin-left:4px;border-top:11px solid transparent;border-bottom:11px solid transparent;border-left:17px solid #21140a}
.site-loader__text{font:800 12px/1.1 Manrope,Arial,sans-serif;letter-spacing:.22em;text-transform:uppercase;color:rgba(255,247,236,.82)}
.site-loader__bar{width:190px;height:3px;border-radius:999px;background:rgba(255,255,255,.1);overflow:hidden}
.site-loader__bar::before{content:"";display:block;width:42%;height:100%;border-radius:inherit;background:linear-gradient(90deg,var(--gold-soft),var(--gold));animation:loaderBar 1.05s ease-in-out infinite}
body.site-is-ready .site-loader{opacity:0;visibility:hidden;pointer-events:none}
@keyframes loaderSpin{to{transform:rotate(1turn)}}
@keyframes loaderBar{0%{transform:translateX(-110%)}100%{transform:translateX(260%)}}

.site-music-indicator::before,
.site-music-indicator .music-wave{
  content:"";position:absolute;inset:-8px;border-radius:inherit;border:1px solid rgba(214,166,94,.42);
  opacity:0;transform:scale(.9);pointer-events:none;
}
body.music-is-playing .site-music-indicator::before{animation:musicWave 1.8s ease-out infinite}
body.music-is-playing .site-music-indicator .music-wave{animation:musicWave 1.8s ease-out .55s infinite}
@keyframes musicWave{0%{opacity:.55;transform:scale(.9)}70%,100%{opacity:0;transform:scale(1.55)}}
.site-music-indicator.is-paused{filter:saturate(.9)}

.gallery-card,.gallery-spotlight,.atmos-card,.media-clean{will-change:transform;transition:transform .35s cubic-bezier(.2,.8,.2,1),box-shadow .35s ease,border-color .35s ease,filter .35s ease}
.gallery-card:hover,.gallery-spotlight:hover,.atmos-card:hover,.media-clean:hover{transform:translateY(-6px);border-color:rgba(214,166,94,.28);box-shadow:0 30px 90px rgba(0,0,0,.32),0 0 0 1px rgba(214,166,94,.08) inset}
.gallery-card::after,.gallery-spotlight::after,.media-clean::before{
  content:"";position:absolute;inset:0;background:linear-gradient(115deg,transparent 0 38%,rgba(255,240,210,.18) 48%,transparent 60%);
  transform:translateX(-120%);opacity:0;pointer-events:none;z-index:4;mix-blend-mode:screen;
}
.gallery-card:hover::after,.gallery-spotlight:hover::after,.media-clean:hover::before{animation:gallerySweep .85s ease forwards}
@keyframes gallerySweep{0%{opacity:0;transform:translateX(-120%)}22%{opacity:1}100%{opacity:0;transform:translateX(120%)}}
@media (prefers-reduced-motion:reduce){.site-loader::before,.site-loader__bar::before,body.music-is-playing .site-music-indicator::before,body.music-is-playing .site-music-indicator .music-wave,.gallery-card:hover::after,.gallery-spotlight:hover::after,.media-clean:hover::before{animation:none!important}.gallery-card:hover,.gallery-spotlight:hover,.atmos-card:hover,.media-clean:hover{transform:none}}

/* v38 - next level polish: fullscreen mobile menu, CTA glow, parallax depth, richer lightbox */
@media (max-width:860px){
  body.menu-open{overflow:hidden;}
  .mobile-nav.show{
    position:fixed!important;left:12px;right:12px;top:78px;z-index:140;
    display:grid!important;grid-template-columns:1fr!important;gap:10px;
    padding:18px!important;border-radius:26px!important;
    background:rgba(255,255,255,.98)!important;
    box-shadow:0 26px 90px rgba(0,0,0,.32)!important;
    animation:mobilePanelIn .32s cubic-bezier(.19,1,.22,1) both;
  }
  .mobile-nav.show::before{content:"";position:fixed;inset:-100vh -20px;background:rgba(7,4,4,.58);backdrop-filter:blur(10px);z-index:-1;}
  .mobile-nav.show a{padding:15px 16px!important;border-radius:18px!important;font-size:13px!important;letter-spacing:.13em;text-align:center;}
}
@keyframes mobilePanelIn{from{opacity:0;transform:translateY(-14px) scale(.98)}to{opacity:1;transform:none}}
.quick-actions{filter:drop-shadow(0 20px 34px rgba(0,0,0,.25));}
.quick-action{position:relative;overflow:visible;}
.quick-action::before{content:attr(data-label);position:absolute;right:58px;top:50%;transform:translate(8px,-50%);opacity:0;white-space:nowrap;padding:8px 10px;border-radius:999px;background:rgba(12,8,6,.88);border:1px solid rgba(214,166,94,.26);color:#fff3df;font:800 11px/1 Manrope,Arial,sans-serif;pointer-events:none;transition:.22s ease;box-shadow:0 14px 30px rgba(0,0,0,.26)}
.quick-action:hover::before{opacity:1;transform:translate(0,-50%)}
.quick-action:hover .quick-action__icon{transform:scale(1.08) rotate(-3deg)}
.quick-action__icon{transition:transform .22s ease;}
body.scrolled .site-header .header-shell{box-shadow:0 18px 48px rgba(0,0,0,.20)!important;}
.hero-stage::after{content:"";position:absolute;left:0;right:0;bottom:-1px;height:140px;background:linear-gradient(180deg,transparent,rgba(9,6,5,.96));pointer-events:none;z-index:1;}
.page-hero-inner{position:relative;z-index:2;}
.lightbox.is-open .lightbox-stage{animation:lightboxZoom .28s cubic-bezier(.19,1,.22,1) both;}
@keyframes lightboxZoom{from{opacity:0;transform:translateY(12px) scale(.985)}to{opacity:1;transform:none}}
.lightbox-caption:empty{display:none;}
.js-lightbox-item img,.gallery-card img,.photo-grid-clean img{cursor:zoom-in;}
@media (max-width:620px){.quick-action::before{display:none}.quick-actions{right:10px;bottom:12px}.site-music-indicator{z-index:121}.quick-actions{z-index:119}}

/* v39 - uklonjeni vidljivi opisi sa slika / galerije */
.gallery-spotlight-copy,
.gallery-caption,
.photo-caption,
.image-caption,
.image-overlay,
.image-text,
figcaption,
.lightbox-caption{
  display:none!important;
}

/* v40 - FINAL MOBILE NAV FIX
   Mobile/tablet: no duplicate navigation outside hamburger. */
@media (max-width: 1100px){
  .site-header{
    position: sticky;
    top: 0;
    z-index: 250;
  }
  .site-header > .container{
    width: min(100% - 18px, var(--max));
  }
  .header-shell{
    display:flex!important;
    align-items:center!important;
    justify-content:space-between!important;
    gap:12px!important;
    min-height:66px;
  }
  .site-nav{
    display:none!important;
    visibility:hidden!important;
    pointer-events:none!important;
  }
  .header-actions{
    margin-left:auto;
    display:flex!important;
    align-items:center!important;
    gap:8px!important;
    flex:0 0 auto;
  }
  .menu-toggle{
    display:inline-flex!important;
    align-items:center!important;
    justify-content:center!important;
    width:48px!important;
    height:48px!important;
    min-width:48px!important;
    padding:0!important;
    border-radius:999px!important;
    position:relative!important;
    z-index:260!important;
    -webkit-tap-highlight-color:transparent;
  }
  .menu-toggle span{
    position:absolute;
    left:50%;
    width:18px!important;
    height:2px!important;
    margin-left:-9px;
    border-radius:999px;
  }
  .menu-toggle span:nth-child(1){transform:translateY(-6px)}
  .menu-toggle span:nth-child(2){transform:translateY(0)}
  .menu-toggle span:nth-child(3){transform:translateY(6px)}
  .menu-toggle.is-open span:nth-child(1){transform:translateY(0) rotate(45deg)!important}
  .menu-toggle.is-open span:nth-child(2){opacity:0!important}
  .menu-toggle.is-open span:nth-child(3){transform:translateY(0) rotate(-45deg)!important}
  .mobile-nav{
    display:none!important;
  }
  .mobile-nav.show{
    display:grid!important;
    grid-template-columns:1fr!important;
    gap:10px!important;
    position:fixed!important;
    left:12px!important;
    right:12px!important;
    top:82px!important;
    z-index:245!important;
    max-height:calc(100svh - 104px)!important;
    overflow:auto!important;
    overscroll-behavior:contain;
    padding:16px!important;
    border-radius:24px!important;
    background:rgba(255,255,255,.985)!important;
    border:1px solid rgba(15,10,6,.1)!important;
    box-shadow:0 30px 90px rgba(0,0,0,.34)!important;
  }
  .mobile-nav.show::before{
    content:""!important;
    position:fixed!important;
    inset:0!important;
    background:rgba(7,4,4,.62)!important;
    backdrop-filter:blur(10px)!important;
    -webkit-backdrop-filter:blur(10px)!important;
    z-index:-1!important;
  }
  .mobile-nav a{
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    min-height:48px;
    padding:14px 16px!important;
    border-radius:17px!important;
    color:#20160d!important;
    background:rgba(15,10,6,.035)!important;
    border:1px solid rgba(15,10,6,.07)!important;
    text-align:center!important;
  }
  .mobile-nav a:hover,
  .mobile-nav a.active{
    color:#130d07!important;
    background:linear-gradient(135deg, rgba(201,157,98,.2), rgba(15,10,6,.04))!important;
  }
  body.menu-open{overflow:hidden!important;}
}

@media (max-width: 760px){
  .header-actions .btn,
  .header-actions .btn-phone,
  .header-actions .btn-gold{
    display:none!important;
  }
  .brand-logo{
    width:auto!important;
    height:46px!important;
    max-width:172px!important;
    object-fit:contain!important;
  }
  .mobile-nav.show{
    top:74px!important;
    left:10px!important;
    right:10px!important;
    max-height:calc(100svh - 92px)!important;
    padding:12px!important;
    border-radius:20px!important;
  }
}

@media (max-width: 380px){
  .brand-logo{height:42px!important;max-width:148px!important;}
  .menu-toggle{width:44px!important;height:44px!important;min-width:44px!important;}
}

/* v41 - mobile header clean-up + no duplicate hero-nav on mobile */
@media (max-width:1100px){
  .site-header{position:sticky!important;top:0!important;z-index:300!important;padding:8px 0!important;}
  .site-header > .container{width:min(100% - 16px,var(--max))!important;}
  .header-shell{
    display:flex!important;align-items:center!important;justify-content:space-between!important;
    min-height:66px!important;padding:10px 14px!important;border-radius:20px!important;
    background:rgba(255,255,255,.96)!important;border:1px solid rgba(15,10,6,.08)!important;
    box-shadow:0 12px 34px rgba(0,0,0,.16)!important;backdrop-filter:blur(16px)!important;
  }
  .site-nav{display:none!important;visibility:hidden!important;pointer-events:none!important;}
  .header-actions{display:flex!important;margin-left:auto!important;flex:0 0 auto!important;}
  .header-actions .btn-phone,.header-actions .btn-gold{display:none!important;}
  .brand-logo{height:46px!important;max-width:180px!important;width:auto!important;object-fit:contain!important;filter:none!important;}
  .menu-toggle{
    display:inline-flex!important;position:relative!important;z-index:310!important;flex:0 0 50px!important;
    width:50px!important;height:44px!important;min-width:50px!important;margin-left:8px!important;padding:0!important;
    border-radius:999px!important;background:rgba(15,10,6,.055)!important;border:1px solid rgba(15,10,6,.13)!important;
    box-shadow:inset 0 1px 0 rgba(255,255,255,.75)!important;cursor:pointer!important;
  }
  .menu-toggle span{
    position:absolute!important;left:50%!important;top:50%!important;width:21px!important;height:2px!important;margin:0!important;
    border-radius:999px!important;background:#17110b!important;transform-origin:center!important;transition:transform .22s ease,opacity .18s ease!important;
  }
  .menu-toggle span:nth-child(1){transform:translate(-50%,-7px)!important;}
  .menu-toggle span:nth-child(2){transform:translate(-50%,0)!important;}
  .menu-toggle span:nth-child(3){transform:translate(-50%,7px)!important;}
  .menu-toggle.is-open span:nth-child(1){transform:translate(-50%,0) rotate(45deg)!important;}
  .menu-toggle.is-open span:nth-child(2){opacity:0!important;}
  .menu-toggle.is-open span:nth-child(3){transform:translate(-50%,0) rotate(-45deg)!important;}
  .mobile-nav{display:none!important;}
  .mobile-nav.show{
    display:grid!important;grid-template-columns:1fr!important;gap:9px!important;
    position:fixed!important;left:12px!important;right:12px!important;top:88px!important;z-index:305!important;
    max-height:calc(100svh - 108px)!important;overflow:auto!important;padding:14px!important;border-radius:22px!important;
    background:rgba(255,255,255,.98)!important;border:1px solid rgba(15,10,6,.10)!important;
    box-shadow:0 24px 78px rgba(0,0,0,.34)!important;overscroll-behavior:contain!important;
  }
  .mobile-nav.show::before{content:""!important;position:fixed!important;inset:0!important;background:rgba(7,4,4,.56)!important;backdrop-filter:blur(8px)!important;-webkit-backdrop-filter:blur(8px)!important;z-index:-1!important;}
  .mobile-nav a{display:flex!important;align-items:center!important;justify-content:center!important;min-height:48px!important;padding:13px 14px!important;border-radius:16px!important;color:#20160d!important;background:rgba(15,10,6,.035)!important;border:1px solid rgba(15,10,6,.065)!important;text-align:center!important;}
  .mobile-nav a.active,.mobile-nav a:hover{background:linear-gradient(135deg,rgba(201,157,98,.22),rgba(15,10,6,.04))!important;color:#130d07!important;}
  body.menu-open{overflow:hidden!important;}
}
@media (max-width:860px){
  .hero-mini-links{display:none!important;}
  .hero-trust{margin-top:14px!important;grid-template-columns:1fr!important;gap:8px!important;}
  .hero-trust span{min-height:40px!important;padding:10px 12px!important;font-size:11px!important;letter-spacing:.08em!important;}
  .page-hero{padding-top:84px!important;}
}
@media (max-width:520px){
  .site-header > .container{width:100%!important;}
  .header-shell{border-radius:0 0 18px 18px!important;margin:0!important;min-height:62px!important;padding:9px 12px!important;}
  .brand-logo{height:42px!important;max-width:158px!important;}
  .menu-toggle{width:48px!important;height:42px!important;min-width:48px!important;}
  .mobile-nav.show{top:78px!important;left:10px!important;right:10px!important;max-height:calc(100svh - 94px)!important;}
  .hero-actions .btn-ghost[href="galerija"]{display:none!important;}
}

/* v42 - premium dark mobile header + cleaner hamburger + tap outside close */
@media (max-width:1100px){
  .site-header{
    background:transparent!important;
  }
  .site-header > .container{
    width:min(100% - 16px,var(--max))!important;
  }
  .header-shell{
    background:linear-gradient(180deg,rgba(12,7,5,.98),rgba(4,3,3,.96))!important;
    border:1px solid rgba(232,211,179,.18)!important;
    box-shadow:0 18px 44px rgba(0,0,0,.34), inset 0 1px 0 rgba(255,255,255,.06)!important;
    backdrop-filter:blur(18px)!important;
    -webkit-backdrop-filter:blur(18px)!important;
  }
  .brand-logo{
    filter:drop-shadow(0 6px 12px rgba(0,0,0,.55)) drop-shadow(0 0 10px rgba(218,171,94,.22))!important;
  }
  .menu-toggle{
    width:52px!important;
    height:44px!important;
    min-width:52px!important;
    border-radius:999px!important;
    background:linear-gradient(180deg,rgba(255,255,255,.08),rgba(255,255,255,.025))!important;
    border:1px solid rgba(232,211,179,.34)!important;
    box-shadow:0 10px 26px rgba(0,0,0,.28), inset 0 1px 0 rgba(255,255,255,.12)!important;
    overflow:hidden!important;
  }
  .menu-toggle::before{
    content:"";
    position:absolute;
    inset:5px;
    border-radius:999px;
    background:radial-gradient(circle at 28% 18%,rgba(232,211,179,.22),transparent 42%);
    pointer-events:none;
  }
  .menu-toggle span{
    width:22px!important;
    height:2px!important;
    background:linear-gradient(90deg,#f7dfaa,#d8a85e)!important;
    box-shadow:0 0 10px rgba(216,168,94,.22)!important;
  }
  .menu-toggle span:nth-child(1){transform:translate(-50%,-7px)!important;}
  .menu-toggle span:nth-child(2){transform:translate(-50%,0)!important;width:18px!important;}
  .menu-toggle span:nth-child(3){transform:translate(-50%,7px)!important;}
  .menu-toggle.is-open{
    background:linear-gradient(180deg,rgba(216,168,94,.22),rgba(255,255,255,.035))!important;
    border-color:rgba(232,211,179,.48)!important;
  }
  .menu-toggle.is-open span:nth-child(1){transform:translate(-50%,0) rotate(45deg)!important;}
  .menu-toggle.is-open span:nth-child(2){opacity:0!important;}
  .menu-toggle.is-open span:nth-child(3){transform:translate(-50%,0) rotate(-45deg)!important;}
  body.menu-open::before{
    content:"";
    position:fixed;
    inset:0;
    z-index:295;
    background:rgba(7,4,4,.64);
    backdrop-filter:blur(9px);
    -webkit-backdrop-filter:blur(9px);
  }
  .mobile-nav.show{
    z-index:320!important;
    background:linear-gradient(180deg,rgba(18,12,8,.98),rgba(8,5,4,.98))!important;
    border:1px solid rgba(232,211,179,.22)!important;
    box-shadow:0 26px 80px rgba(0,0,0,.46), inset 0 1px 0 rgba(255,255,255,.07)!important;
  }
  .mobile-nav.show::before{display:none!important;content:none!important;}
  .mobile-nav a{
    color:#f6ead8!important;
    background:rgba(255,255,255,.045)!important;
    border:1px solid rgba(232,211,179,.13)!important;
    box-shadow:inset 0 1px 0 rgba(255,255,255,.05)!important;
  }
  .mobile-nav a.active,.mobile-nav a:hover{
    color:#1b1108!important;
    background:linear-gradient(135deg,#f2d399,#c9954a)!important;
    border-color:rgba(232,211,179,.55)!important;
  }
}
@media (max-width:520px){
  .header-shell{
    border-radius:0 0 20px 20px!important;
  }
  .menu-toggle{width:50px!important;min-width:50px!important;height:42px!important;}
}

/* v43 - final responsive QA polish */
.lightbox-caption{display:none!important;}
@media (max-width:760px){
  .site-topline{display:none!important;}
  .site-header{top:0!important;}
  body.menu-open{touch-action:none;}
  body.menu-open::before{cursor:pointer;}
  .mobile-nav.show{animation:mobileMenuIn .18s ease both!important;}
  .mobile-nav a{font-size:12px!important;letter-spacing:.18em!important;text-transform:uppercase!important;}
  .page-hero{min-height:auto!important;padding-top:76px!important;padding-bottom:34px!important;}
  .home-hero{padding-top:64px!important;}
  .hero-actions{gap:10px!important;}
  .hero-actions .btn{width:100%!important;justify-content:center!important;}
  .quick-actions{right:10px!important;bottom:14px!important;gap:8px!important;}
  .site-music-indicator{left:10px!important;bottom:14px!important;}
  .quick-action,.site-music-indicator{transform:scale(.94);transform-origin:bottom right;}
}
@keyframes mobileMenuIn{from{opacity:0;transform:translateY(-8px) scale(.985)}to{opacity:1;transform:translateY(0) scale(1)}}

/* v43-final-seo-performance: brže duge stranice + pristupačnost */
@supports (content-visibility: auto) {
  .section, .footer-cta-section {
    content-visibility: auto;
    contain-intrinsic-size: 1px 720px;
  }
}
@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after {
    animation-duration: .001ms !important;
    animation-iteration-count: 1 !important;
    scroll-behavior: auto !important;
    transition-duration: .001ms !important;
  }
}

/* v44 - mobile stability / anti-flicker pass
   Teži efekti ostaju za desktop, dok se na telefonu gase blur/parallax/sparkle renderi koji mogu da izazovu treperenje. */
@media (max-width: 860px){
  html,
  body{
    overflow-x:hidden;
    overscroll-behavior-x:none;
    -webkit-text-size-adjust:100%;
  }

  .site-loader,
  .site-loader::before,
  .site-loader__bar::before,
  .site-sparkle-layer,
  .micro-sparkle,
  .hero-sparks,
  .hero-spark,
  .card-sheen,
  .lux-sweep,
  .hero-ribbon-track,
  .wave-divider span{
    animation:none!important;
  }

  .site-sparkle-layer,
  .micro-sparkle,
  .hero-sparks,
  .hero-spark,
  .card-sheen,
  .lux-sweep{
    display:none!important;
  }

  body::before,
  body::after{
    animation:none!important;
    filter:none!important;
    opacity:.12!important;
  }

  .site-header,
  .header-shell,
  .mobile-nav.show,
  body.menu-open::before,
  .site-music-indicator,
  .quick-action,
  .lightbox,
  .promo-popup__dialog{
    backdrop-filter:none!important;
    -webkit-backdrop-filter:none!important;
  }

  .header-shell{
    transform:none!important;
  }

  .hero-video,
  .page-hero .hero-video,
  .home-hero .hero-video{
    transform:none!important;
    will-change:auto!important;
    filter:none!important;
    opacity:.30!important;
    backface-visibility:hidden;
    -webkit-backface-visibility:hidden;
  }

  .page-hero::after,
  .home-hero::after{
    mix-blend-mode:normal!important;
    opacity:.45!important;
  }

  .gallery-card,
  .gallery-spotlight,
  .atmos-card,
  .media-clean,
  .tilt-luxe,
  .cd-showcase-item,
  .cd-disc{
    will-change:auto!important;
    transform:none!important;
  }

  .btn-gold::before,
  .promo-popup__dialog::before,
  body.music-is-playing .music-dot,
  body.music-is-playing .site-music-indicator::before,
  body.music-is-playing .site-music-indicator .music-wave,
  .audio-eq i{
    animation:none!important;
  }

  .quick-actions{
    filter:none!important;
  }
}
