:root{
  --black:#020907;--dark:#031411;--dark2:#071d18;--teal:#06ad91;--mint:#09dba3;
  --deep:#007664;--gold:#ffd700;--white:#f5faf8;--muted:#b5c4bf;--line:rgba(255,255,255,.14)
}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--black);color:var(--white);font-family:Arial,Helvetica,sans-serif;overflow-x:hidden}a{color:inherit;text-decoration:none}img{display:block;max-width:100%}
.page-progress{position:fixed;left:0;top:0;height:3px;width:0;background:linear-gradient(90deg,var(--teal),var(--gold));z-index:999}
.cursor-glow{position:fixed;width:420px;height:420px;border-radius:50%;pointer-events:none;z-index:0;transform:translate(-50%,-50%);background:radial-gradient(circle,rgba(6,173,145,.1),transparent 65%)}
.site-header{position:fixed;z-index:100;left:0;right:0;top:0;height:86px;display:grid;grid-template-columns:260px 1fr 160px;align-items:center;padding:0 4vw;border-bottom:1px solid rgba(255,255,255,.08);transition:.3s}
.site-header.scrolled{height:70px;background:rgba(2,9,7,.9);backdrop-filter:blur(18px)}
.brand img{width:185px;max-height:58px;object-fit:contain;object-position:left}
.main-nav{display:flex;justify-content:center;gap:30px;font-size:11px;text-transform:uppercase;letter-spacing:.08em}
.main-nav a{position:relative;padding:12px 0}.main-nav a:after{content:"";position:absolute;left:0;right:100%;bottom:2px;height:1px;background:var(--gold);transition:.25s}.main-nav a:hover:after,.main-nav a.active:after{right:0}
.social-head{display:flex;justify-content:flex-end;gap:20px;color:var(--gold);font-weight:800}.menu-toggle{display:none;background:none;border:0}.menu-toggle span{display:block;width:28px;height:2px;background:#fff;margin:6px}

.hero{position:relative;min-height:100svh;overflow:hidden;display:flex;align-items:center;padding:120px 6vw 105px}
.hero-photo{position:absolute;inset:0 0 0 38%;overflow:hidden}.hero-photo img{width:100%;height:100%;object-fit:cover;object-position:center 48%;animation:heroZoom 13s ease-in-out infinite alternate}
.hero-overlay{
  position:absolute;
  inset:0;
  background:
    radial-gradient(circle at 16% 15%,rgba(0,0,0,.92) 0%,rgba(0,0,0,.78) 24%,rgba(0,0,0,.3) 46%,transparent 68%),
    linear-gradient(90deg,rgba(2,9,7,.98) 0%,rgba(2,9,7,.92) 24%,rgba(2,9,7,.62) 43%,rgba(2,9,7,.18) 68%,rgba(2,9,7,.05) 100%),
    linear-gradient(180deg,rgba(2,9,7,.18) 0%,transparent 50%,rgba(2,9,7,.84) 100%);
}
.stage-beams{position:absolute;inset:0;overflow:hidden}.stage-beams i{position:absolute;top:-20%;width:3px;height:115%;background:linear-gradient(transparent,rgba(9,219,163,.55),transparent);filter:drop-shadow(0 0 10px var(--teal));transform-origin:top;opacity:.55}.stage-beams i:nth-child(1){left:56%;transform:rotate(16deg);animation:sweep1 8s ease-in-out infinite alternate}.stage-beams i:nth-child(2){left:65%;transform:rotate(-10deg);animation:sweep2 10s ease-in-out infinite alternate}.stage-beams i:nth-child(3){left:76%;transform:rotate(6deg);background:linear-gradient(transparent,rgba(255,215,0,.52),transparent);animation:sweep3 9s ease-in-out infinite alternate}.stage-beams i:nth-child(4){left:85%;transform:rotate(-15deg);animation:sweep1 11s ease-in-out infinite alternate}.stage-beams i:nth-child(5){left:92%;transform:rotate(8deg);background:linear-gradient(transparent,rgba(255,215,0,.42),transparent)}
.gold-particles{position:absolute;inset:0;pointer-events:none;background-image:radial-gradient(circle at 72% 20%,var(--gold) 0 1px,transparent 2px),radial-gradient(circle at 91% 31%,var(--gold) 0 1px,transparent 2px),radial-gradient(circle at 83% 64%,#fff 0 1px,transparent 2px),radial-gradient(circle at 65% 78%,var(--gold) 0 1px,transparent 2px);background-size:170px 170px,240px 240px,200px 200px,270px 270px;animation:particles 15s linear infinite}
.hero-copy{
  position:relative;
  z-index:4;
  max-width:780px;
}
.hero-copy:before{
  content:"";
  position:absolute;
  left:-110px;
  top:-90px;
  width:680px;
  height:560px;
  pointer-events:none;
  z-index:-1;
  background:
    radial-gradient(circle at 42% 34%,rgba(6,173,145,.16),transparent 48%),
    radial-gradient(circle at 25% 18%,rgba(255,215,0,.06),transparent 34%);
  filter:blur(8px);
}.hero-title-wrap{position:relative}.hero-title-line{font:500 clamp(88px,10.5vw,178px)/.73 Georgia,"Times New Roman",serif;letter-spacing:-.055em;text-transform:uppercase}.hero-title-line.teal{color:var(--teal)}.hero-title-line.gold{color:var(--gold)}.title-flare{position:absolute;left:49%;top:57%;width:170px;height:2px;background:linear-gradient(90deg,transparent,#fff,var(--gold),transparent);box-shadow:0 0 16px #fff;animation:flare 4s ease-in-out infinite}
.hero-subtitle{margin:26px 0 18px;font-size:12px;letter-spacing:.43em}.heart-line{display:flex;align-items:center;gap:16px;width:380px}.heart-line i{height:1px;flex:1;background:linear-gradient(90deg,var(--teal),transparent)}.heart-line i:last-child{background:linear-gradient(90deg,transparent,var(--teal))}.heart-line span{color:var(--teal)}
.hero-actions{display:flex;gap:16px;margin-top:31px}.button{min-height:52px;padding:0 27px;display:inline-flex;align-items:center;justify-content:center;gap:28px;text-transform:uppercase;font-size:11px;font-weight:700;letter-spacing:.06em;border-radius:3px;transition:.3s}.button-teal{background:linear-gradient(135deg,var(--deep),var(--teal));box-shadow:0 12px 35px rgba(6,173,145,.2)}.button-outline{border:1px solid rgba(255,215,0,.55);background:rgba(2,9,7,.2)}.button:hover{transform:translateY(-3px);box-shadow:0 18px 40px rgba(6,173,145,.25)}
.slogan-marquee{position:absolute;left:0;right:0;bottom:0;height:42px;overflow:hidden;border-top:1px solid rgba(255,255,255,.1);background:rgba(2,9,7,.74);backdrop-filter:blur(12px);display:flex;align-items:center}.slogan-track{display:flex;width:max-content;gap:30px;align-items:center;animation:marquee 22s linear infinite;font:600 13px Georgia,"Times New Roman",serif;letter-spacing:.26em;color:var(--gold)}.slogan-track i{color:var(--teal)}
.scroll-down{position:absolute;z-index:5;bottom:53px;left:50%;display:flex;flex-direction:column;align-items:center;font-size:8px;letter-spacing:.12em}.scroll-down i{width:1px;height:38px;background:linear-gradient(var(--gold),transparent);margin-top:8px}

.split-section{display:grid;grid-template-columns:42% 58%;min-height:620px;border-bottom:1px solid var(--line)}.about-copy{padding:85px 6vw;display:flex;flex-direction:column;justify-content:center}.eyebrow{margin:0 0 17px;color:var(--teal);font-size:11px;font-weight:800;letter-spacing:.26em}.about h1,.section-heading h2,.booking-copy h2,.support-inner h2{margin:0;font:500 clamp(40px,4vw,68px)/.95 Georgia,"Times New Roman",serif;letter-spacing:-.025em}.about h1 em,.section-heading h2 em,.booking-copy h2 em{color:var(--teal);font-style:normal}.about-copy>p:not(.eyebrow){color:var(--muted);line-height:1.75;max-width:570px}.about-copy .button{align-self:flex-start;margin-top:18px}.about-image{position:relative;overflow:hidden}.about-image>img{width:100%;height:100%;object-fit:cover}.image-gradient{position:absolute;inset:0;background:linear-gradient(90deg,var(--black),transparent 30%),linear-gradient(180deg,transparent 60%,rgba(0,0,0,.7))}.round-seal{position:absolute;right:6%;bottom:9%;width:170px;height:170px;border-radius:50%;border:2px solid var(--gold);display:grid;place-items:center;text-align:center;background:rgba(2,9,7,.72);font:600 28px/1.05 Georgia,"Times New Roman",serif;color:var(--gold)}.round-seal b{position:absolute;bottom:15px;color:var(--teal)}

.team-section,.dates-section,.values-section,.gallery-section{padding:78px 6vw;border-bottom:1px solid var(--line)}.section-heading{display:flex;justify-content:space-between;align-items:end;gap:35px;margin-bottom:35px}.section-heading>p{max-width:500px;color:var(--muted);line-height:1.7}.team-slider{position:relative}.team-track{display:grid;grid-auto-flow:column;grid-auto-columns:minmax(170px,1fr);gap:10px;overflow-x:auto;scrollbar-width:none;scroll-snap-type:x mandatory}.team-track::-webkit-scrollbar{display:none}.team-card{position:relative;height:315px;overflow:hidden;border:1px solid rgba(6,173,145,.38);border-radius:6px;scroll-snap-align:start;background:#071511}.team-card img{width:100%;height:100%;object-fit:cover;transition:.5s}.team-card:after{content:"";position:absolute;inset:45% 0 0;background:linear-gradient(transparent,rgba(2,9,7,.96))}.team-card>div{position:absolute;z-index:2;left:0;right:0;bottom:16px;text-align:center}.team-card small{display:block;color:var(--gold);font:600 20px Georgia,"Times New Roman",serif}.team-card h3{margin:0;color:var(--teal);font:600 25px Georgia,"Times New Roman",serif;text-transform:uppercase}.team-card p{margin:3px 0 0;color:#cedbd6;font-size:9px;text-transform:uppercase;letter-spacing:.08em}.team-card:hover img{transform:scale(1.07)}.slider-arrow{position:absolute;z-index:4;top:45%;width:40px;height:40px;border:1px solid var(--teal);border-radius:50%;background:rgba(2,9,7,.8);color:var(--teal);font-size:30px}.slider-arrow.prev{left:-51px}.slider-arrow.next{right:-51px}

.date-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.date-card{position:relative;min-height:230px;border:1px solid rgba(255,255,255,.23);overflow:hidden;border-radius:6px}.date-card>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.date-card:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(2,9,7,.98),rgba(2,9,7,.7) 55%,rgba(2,9,7,.25))}.date-copy{position:relative;z-index:2;display:grid;grid-template-columns:90px 1fr;gap:22px;padding:30px}.date-number{border-right:1px solid rgba(255,255,255,.25)}.date-number strong{display:block;color:var(--gold);font:500 58px/.75 Georgia,"Times New Roman",serif}.date-number span{display:block;margin-top:15px;font-size:10px;letter-spacing:.18em}.date-card h3{margin:0 0 8px;font:500 26px Georgia,"Times New Roman",serif;text-transform:uppercase}.date-card p{font-size:12px;color:var(--muted);line-height:1.6}.date-card a{display:inline-block;margin-top:8px;padding:9px 17px;background:var(--teal);font-size:9px;text-transform:uppercase}

.values-section{padding-top:55px;padding-bottom:55px}.values-grid{display:grid;grid-template-columns:repeat(5,1fr)}.values-grid article{text-align:center;padding:10px 28px;border-right:1px solid rgba(255,215,0,.3)}.values-grid article:last-child{border:0}.values-grid span{display:block;color:var(--teal);font-size:45px}.values-grid h3{color:var(--gold);text-transform:uppercase;font-size:12px}.values-grid p{font-size:11px;color:var(--muted);line-height:1.55}

.gallery-grid{display:grid;grid-template-columns:1.3fr 1fr 1fr;grid-auto-rows:270px;gap:12px}.gallery-grid figure{margin:0;overflow:hidden}.gallery-grid .large{grid-row:span 2}.gallery-grid .wide{grid-column:span 2}.gallery-grid img{width:100%;height:100%;object-fit:cover;transition:.6s}.gallery-grid figure:hover img{transform:scale(1.05)}

.booking-section{position:relative;min-height:620px;display:flex;align-items:center;padding:80px 6vw;overflow:hidden}.booking-image{position:absolute;inset:0}.booking-image img{width:100%;height:100%;object-fit:cover}.booking-overlay{position:absolute;inset:0;background:linear-gradient(90deg,rgba(2,9,7,.98),rgba(2,9,7,.78) 45%,rgba(2,9,7,.2))}.booking-copy{position:relative;z-index:2;max-width:750px}.booking-copy p:not(.eyebrow){max-width:600px;color:var(--muted);line-height:1.8;margin:25px 0}.support-section{padding:70px 6vw;background:#061511}.support-inner{max-width:1100px;margin:auto;display:grid;grid-template-columns:240px 1fr;gap:50px;align-items:center}.support-inner img{width:240px;height:240px;object-fit:cover;border-radius:50%;border:1px solid var(--gold)}.support-inner p:last-child{color:var(--muted);line-height:1.75}

.site-footer{padding:48px 6vw 25px;display:grid;grid-template-columns:1fr auto auto;gap:35px;align-items:center;border-top:1px solid var(--line)}.site-footer img{width:165px}.footer-links,.footer-social{display:flex;gap:25px;font-size:10px;text-transform:uppercase;color:var(--muted)}.site-footer>p{grid-column:1/-1;text-align:center;border-top:1px solid var(--line);padding-top:22px;color:#74857f;font-size:9px}
.reveal{opacity:0;transform:translateY(30px);transition:.8s}.reveal.visible{opacity:1;transform:none}

@keyframes heroZoom{to{transform:scale(1.075)}}@keyframes flare{0%,100%{opacity:.3;transform:translateX(-40px)}50%{opacity:1;transform:translateX(80px)}}@keyframes marquee{to{transform:translateX(-50%)}}@keyframes particles{to{background-position:170px 170px,-240px 240px,200px -200px,-270px 270px}}@keyframes sweep1{to{transform:rotate(24deg)}}@keyframes sweep2{to{transform:rotate(-3deg)}}@keyframes sweep3{to{transform:rotate(14deg)}}

@media(max-width:1000px){
.site-header{grid-template-columns:190px 1fr 90px}.main-nav{gap:16px;font-size:9px}.hero-photo{inset:0 0 0 28%}.split-section{grid-template-columns:1fr}.about-image{min-height:550px}.date-grid{grid-template-columns:1fr}.values-grid{grid-template-columns:repeat(2,1fr);gap:25px}.values-grid article{border:0}.gallery-grid{grid-template-columns:1fr 1fr}.gallery-grid .large{grid-row:auto}.slider-arrow{display:none}
}
@media(max-width:720px){
.cursor-glow{display:none}.site-header{height:70px;display:flex;justify-content:space-between;padding:0 20px}.brand img{width:145px}.main-nav{position:fixed;inset:0;background:rgba(2,9,7,.98);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:26px;font-size:20px;transform:translateX(100%);transition:.35s}.main-nav.open{transform:none}.social-head{display:none}.menu-toggle{display:block;z-index:3}.hero{padding:105px 20px 115px;align-items:flex-end}.hero-photo{inset:0}.hero-photo img{object-position:58% 40%}.hero-overlay{background:linear-gradient(180deg,rgba(2,9,7,.08),rgba(2,9,7,.22) 35%,rgba(2,9,7,.97) 72%)}.hero-copy{width:100%}.hero-title-line{font-size:clamp(70px,22vw,118px)}.hero-subtitle{font-size:9px;letter-spacing:.26em}.heart-line{width:100%}.hero-actions{display:grid}.button{width:100%}.scroll-down{display:none}.about-copy,.team-section,.dates-section,.values-section,.gallery-section{padding:65px 20px}.about-image{min-height:500px}.round-seal{width:125px;height:125px;font-size:22px}.section-heading{display:block}.section-heading .button{margin-top:20px}.team-track{grid-auto-columns:72%}.date-copy{grid-template-columns:70px 1fr;padding:22px}.values-grid{grid-template-columns:1fr}.gallery-grid{grid-template-columns:1fr;grid-auto-rows:360px}.gallery-grid .wide{grid-column:auto}.booking-section{padding:80px 20px;min-height:700px;align-items:flex-end}.booking-overlay{background:linear-gradient(180deg,rgba(2,9,7,.1),rgba(2,9,7,.97) 60%)}.support-inner{grid-template-columns:1fr;text-align:center}.support-inner img{margin:auto}.site-footer{grid-template-columns:1fr;text-align:center}.site-footer img{margin:auto}.footer-links,.footer-social{justify-content:center;flex-wrap:wrap}
}
@media(prefers-reduced-motion:reduce){*{animation-duration:.01ms!important;animation-iteration-count:1!important;scroll-behavior:auto!important}}


/* Hero image V2 */
.hero-photo img{object-position:center 54%}
@media(max-width:720px){
  .hero-photo img{object-position:center 43%}
}

/* Clickable gallery / lightbox */
.gallery-grid .gallery-item{
  position:relative;
  display:block;
  overflow:hidden;
  min-height:100%;
}
.gallery-grid .gallery-item img{
  width:100%;
  height:100%;
  object-fit:cover;
  transition:transform .6s ease,filter .6s ease;
}
.gallery-grid .gallery-item:after{
  content:"";
  position:absolute;
  inset:0;
  background:linear-gradient(180deg,transparent 55%,rgba(2,9,7,.82));
  opacity:.35;
  transition:.35s;
}
.gallery-grid .gallery-item span{
  position:absolute;
  z-index:2;
  left:22px;
  bottom:18px;
  color:var(--gold);
  font-size:10px;
  font-weight:800;
  letter-spacing:.18em;
  opacity:0;
  transform:translateY(8px);
  transition:.35s;
}
.gallery-grid .gallery-item:hover img{transform:scale(1.055);filter:saturate(1.08)}
.gallery-grid .gallery-item:hover:after{opacity:1}
.gallery-grid .gallery-item:hover span{opacity:1;transform:none}

.lightbox{
  position:fixed;
  inset:0;
  z-index:1000;
  display:none;
  align-items:center;
  justify-content:center;
  background:rgba(0,0,0,.94);
  backdrop-filter:blur(10px);
  padding:40px 80px;
}
.lightbox.open{display:flex}
.lightbox figure{
  margin:0;
  max-width:min(92vw,1500px);
  max-height:88vh;
  display:flex;
  flex-direction:column;
  align-items:center;
  gap:14px;
}
.lightbox figure img{
  max-width:100%;
  max-height:80vh;
  object-fit:contain;
  box-shadow:0 30px 90px rgba(0,0,0,.55);
}
.lightbox figcaption{
  color:#d8e3df;
  font-size:12px;
  letter-spacing:.12em;
  text-transform:uppercase;
}
.lightbox-close,.lightbox-nav{
  position:absolute;
  border:1px solid rgba(255,255,255,.35);
  background:rgba(2,9,7,.6);
  color:#fff;
  cursor:pointer;
}
.lightbox-close{
  top:24px;
  right:28px;
  width:48px;
  height:48px;
  border-radius:50%;
  font-size:32px;
}
.lightbox-nav{
  top:50%;
  width:52px;
  height:72px;
  transform:translateY(-50%);
  font-size:42px;
}
.lightbox-prev{left:24px}.lightbox-next{right:24px}

/* Club and sponsors */
.partners-section{
  padding:78px 6vw;
  border-bottom:1px solid var(--line);
  background:linear-gradient(180deg,#020907,#061511);
}
.partners-grid{
  display:grid;
  grid-template-columns:1.15fr 1fr 1fr;
  gap:18px;
}
.partner-card{
  min-height:255px;
  display:grid;
  grid-template-rows:150px 1fr;
  overflow:hidden;
  border:1px solid rgba(255,255,255,.16);
  background:rgba(255,255,255,.025);
  transition:.35s ease;
}
.partner-card:hover{
  transform:translateY(-6px);
  border-color:rgba(255,215,0,.55);
  box-shadow:0 24px 65px rgba(0,0,0,.28);
}
.partner-logo{
  display:flex;
  align-items:center;
  justify-content:center;
  padding:26px;
  background:#fff;
}
.partner-logo img{
  max-width:100%;
  max-height:100px;
  object-fit:contain;
}
.partner-logo.crest-wrap{
  background:linear-gradient(135deg,#f8fbfa,#dfe9e5);
}
.partner-logo.crest-wrap img{max-height:125px}
.partner-copy{padding:22px 24px}
.partner-copy small{
  color:var(--teal);
  font-size:9px;
  font-weight:800;
  letter-spacing:.2em;
}
.partner-copy h3{
  margin:8px 0 12px;
  color:#fff;
  font:600 25px/1.05 Georgia,"Times New Roman",serif;
}
.partner-copy span{
  color:var(--gold);
  font-size:10px;
  text-transform:uppercase;
  letter-spacing:.09em;
}
.club-card{border-color:rgba(6,173,145,.4)}

@media(max-width:1000px){
  .partners-grid{grid-template-columns:1fr}
}
@media(max-width:720px){
  .lightbox{padding:70px 15px 30px}
  .lightbox-nav{width:42px;height:60px;font-size:34px}
  .lightbox-prev{left:8px}.lightbox-next{right:8px}
  .partners-section{padding:65px 20px}
}


/* Refined cinematic hero blend */
.hero-photo:before{
  content:"";
  position:absolute;
  inset:0;
  z-index:1;
  pointer-events:none;
  background:
    linear-gradient(135deg,rgba(2,9,7,.96) 0%,rgba(2,9,7,.8) 18%,rgba(2,9,7,.28) 40%,transparent 61%),
    radial-gradient(circle at 10% 5%,rgba(0,0,0,.92) 0%,rgba(0,0,0,.64) 24%,transparent 56%);
  mix-blend-mode:normal;
}
.hero-photo:after{
  content:"";
  position:absolute;
  left:0;
  right:0;
  bottom:0;
  height:34%;
  z-index:1;
  pointer-events:none;
  background:linear-gradient(180deg,transparent,rgba(2,9,7,.78));
}
.hero-title-wrap{
  isolation:isolate;
}
.hero-title-wrap:before{
  content:"";
  position:absolute;
  left:-45px;
  top:-35px;
  width:520px;
  height:330px;
  z-index:-1;
  background:radial-gradient(circle at 35% 40%,rgba(6,173,145,.11),transparent 62%);
  filter:blur(10px);
}
@media(max-width:720px){
  .hero-overlay{
    background:
      linear-gradient(180deg,rgba(2,9,7,.04) 0%,rgba(2,9,7,.12) 26%,rgba(2,9,7,.72) 62%,rgba(2,9,7,.98) 84%),
      radial-gradient(circle at 13% 8%,rgba(0,0,0,.58),transparent 46%);
  }
  .hero-photo:before{
    background:
      linear-gradient(180deg,rgba(2,9,7,.02),rgba(2,9,7,.08) 35%,rgba(2,9,7,.8) 74%,rgba(2,9,7,.98) 100%);
  }
  .hero-copy:before{
    left:-140px;
    top:-35px;
    width:560px;
    height:420px;
    background:radial-gradient(circle at 40% 46%,rgba(6,173,145,.12),transparent 52%);
  }
}


/* =========================================================
   V4 – complete responsive and team-profile correction pass
   ========================================================= */

html,body{max-width:100%;overflow-x:hidden}
body{min-width:320px}
h1,h2,h3,p,a,span{overflow-wrap:break-word}
.section-heading h2,.about h1,.booking-copy h2{
  font-size:clamp(36px,4.4vw,68px);
  line-height:.98;
}

/* Header and logo */
.site-header{padding-inline:clamp(18px,4vw,64px)}
.brand img{
  width:clamp(165px,14vw,225px);
  max-height:64px;
  filter:drop-shadow(0 0 7px rgba(255,215,0,.12));
}

/* Hero: shorter fade, faces remain visible */
.hero-overlay{
  background:
    radial-gradient(circle at 7% 10%,rgba(0,0,0,.82) 0%,rgba(0,0,0,.56) 21%,rgba(0,0,0,.14) 38%,transparent 52%),
    linear-gradient(90deg,rgba(2,9,7,.97) 0%,rgba(2,9,7,.86) 18%,rgba(2,9,7,.44) 31%,rgba(2,9,7,.12) 42%,transparent 56%),
    linear-gradient(180deg,rgba(2,9,7,.08) 0%,transparent 58%,rgba(2,9,7,.75) 100%);
}
.hero-photo:before{
  background:
    linear-gradient(90deg,rgba(2,9,7,.68) 0%,rgba(2,9,7,.28) 14%,transparent 31%);
}
.hero-copy{max-width:min(760px,53vw)}
.hero-title-line{
  font-size:clamp(72px,9vw,164px);
  white-space:nowrap;
}
.hero-subtitle{
  max-width:100%;
  letter-spacing:clamp(.18em,.34vw,.43em);
  line-height:1.6;
}

/* Truly seamless ticker */
.slogan-marquee{overflow:hidden}
.slogan-track{
  display:flex;
  width:max-content;
  gap:0;
  animation:marqueeContinuous 24s linear infinite;
  will-change:transform;
}
.slogan-group{
  display:flex;
  align-items:center;
  flex-shrink:0;
  gap:28px;
  padding-right:28px;
}
.slogan-group span{white-space:nowrap}
@keyframes marqueeContinuous{
  from{transform:translateX(0)}
  to{transform:translateX(-50%)}
}

/* Team: responsive portrait grid and expandable profiles */
.team-slider{display:none!important}
.team-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:22px;
}
.profile-card{
  min-width:0;
  border:1px solid rgba(255,255,255,.15);
  background:linear-gradient(180deg,rgba(255,255,255,.035),rgba(255,255,255,.018));
  border-radius:10px;
  overflow:hidden;
  transition:transform .35s ease,border-color .35s ease,box-shadow .35s ease;
}
.profile-card:hover{
  transform:translateY(-6px);
  border-color:rgba(255,215,0,.48);
  box-shadow:0 24px 65px rgba(0,0,0,.28);
}
.profile-image{
  position:relative;
  aspect-ratio:4/5;
  overflow:hidden;
  background:#071511;
}
.profile-image:after{
  content:"";
  position:absolute;
  inset:auto 0 0;
  height:34%;
  background:linear-gradient(transparent,rgba(2,9,7,.58));
  pointer-events:none;
}
.profile-image img{
  width:100%;
  height:100%;
  object-fit:cover;
  object-position:center top;
  display:block;
  transition:transform .6s ease;
}
.profile-card:hover .profile-image img{transform:scale(1.025)}
.profile-miri .profile-image img{object-position:center 16%}
.profile-kathi .profile-image img{object-position:center 14%}
.profile-caro .profile-image img{object-position:center 13%}
.profile-frafra .profile-image img{object-position:center 12%}
.profile-sabi .profile-image img{object-position:center 12%}
.profile-lina .profile-image img{object-position:center 10%}
.profile-hannah .profile-image img{object-position:center 12%}
.profile-anna .profile-image img{object-position:center 11%}
.profile-fia .profile-image img{object-position:center 11%}

.profile-head{
  display:grid;
  grid-template-columns:48px 1fr;
  gap:14px;
  align-items:center;
  padding:20px 22px 16px;
}
.profile-head small{
  color:var(--gold);
  font:600 26px/1 Georgia,"Times New Roman",serif;
  border-right:1px solid rgba(255,255,255,.16);
}
.profile-head h3{
  margin:0;
  color:var(--teal);
  font:600 30px/1 Georgia,"Times New Roman",serif;
  text-transform:uppercase;
}
.profile-head p{
  margin:5px 0 0;
  color:var(--muted);
  font-size:10px;
  text-transform:uppercase;
  letter-spacing:.08em;
}
.profile-card details{
  border-top:1px solid rgba(255,255,255,.1);
}
.profile-card summary{
  list-style:none;
  cursor:pointer;
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:12px;
  padding:17px 22px;
  color:#fff;
  font-size:11px;
  font-weight:800;
  text-transform:uppercase;
  letter-spacing:.08em;
}
.profile-card summary::-webkit-details-marker{display:none}
.profile-card summary span{
  color:var(--gold);
  font-size:20px;
  transition:transform .25s;
}
.profile-card details[open] summary span{transform:rotate(45deg)}
.profile-text{
  padding:0 22px 22px;
  animation:profileOpen .28s ease;
}
.profile-text p{
  margin:0;
  color:#c6d5d0;
  font-size:14px;
  line-height:1.72;
}
@keyframes profileOpen{
  from{opacity:0;transform:translateY(-5px)}
  to{opacity:1;transform:none}
}

/* Sponsor logos are white transparent assets: show them on dark brand panels */
.partner-logo{
  background:linear-gradient(135deg,#061713,#0b2821);
  min-height:150px;
}
.partner-logo img{
  max-width:88%;
  max-height:92px;
  filter:drop-shadow(0 5px 15px rgba(0,0,0,.25));
}
.partner-logo.crest-wrap{
  background:linear-gradient(135deg,#f8fbfa,#dfe9e5);
}
.partner-logo.crest-wrap img{max-height:128px;filter:none}

/* Tablet */
@media(max-width:1100px){
  .site-header{grid-template-columns:210px 1fr 90px}
  .main-nav{gap:18px}
  .hero-copy{max-width:58vw}
  .hero-title-line{font-size:clamp(74px,9vw,132px)}
  .team-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}

/* Mobile navigation and content */
@media(max-width:760px){
  .site-header{
    height:72px;
    display:flex;
    justify-content:space-between;
    padding-inline:18px;
  }
  .brand img{width:158px}
  .hero{
    min-height:100svh;
    padding:96px 18px 98px;
    align-items:flex-end;
  }
  .hero-photo{inset:0}
  .hero-photo img{
    object-position:58% 35%;
    transform:scale(1.03);
  }
  .hero-overlay{
    background:
      linear-gradient(180deg,rgba(2,9,7,.03) 0%,rgba(2,9,7,.08) 28%,rgba(2,9,7,.68) 60%,rgba(2,9,7,.98) 81%),
      linear-gradient(90deg,rgba(2,9,7,.2),transparent 55%);
  }
  .hero-photo:before{display:none}
  .hero-copy{max-width:100%;width:100%}
  .hero-title-line{
    font-size:clamp(58px,20vw,102px);
    line-height:.76;
    white-space:normal;
  }
  .hero-subtitle{
    font-size:9px;
    letter-spacing:.18em;
  }
  .hero-actions{grid-template-columns:1fr}
  .hero-actions .button{width:100%}
  .slogan-marquee{height:44px}
  .slogan-group{gap:20px;padding-right:20px}
  .slogan-track{font-size:11px}
  .section-heading{display:block}
  .section-heading>p{margin-top:18px}
  .section-heading h2,.about h1,.booking-copy h2{
    font-size:clamp(35px,11vw,52px);
    line-height:1;
  }
  .team-grid{grid-template-columns:1fr}
  .profile-image{aspect-ratio:4/4.9}
  .profile-head h3{font-size:28px}
  .date-copy{grid-template-columns:60px minmax(0,1fr);gap:14px}
  .date-card h3{font-size:23px}
  .partners-grid{grid-template-columns:1fr}
  .partner-card{grid-template-rows:145px auto}
}

/* Small phones */
@media(max-width:390px){
  .brand img{width:142px}
  .hero-title-line{font-size:56px}
  .hero-subtitle{letter-spacing:.12em}
  .button{padding-inline:18px;gap:15px}
  .about-copy,.team-section,.dates-section,.values-section,.gallery-section,.partners-section{
    padding-inline:16px;
  }
  .profile-head{grid-template-columns:42px 1fr;padding-inline:18px}
  .profile-card summary,.profile-text{padding-left:18px;padding-right:18px}
}

/* Large desktop */
@media(min-width:1500px){
  .hero-copy{max-width:820px}
  .team-grid{grid-template-columns:repeat(3,minmax(0,1fr));max-width:1500px;margin-inline:auto}
}


/* =========================================================
   V5 – refined hero blend, solid marquee and diagonal carousel
   ========================================================= */

/* Solid marquee, no gradient or fading */
.slogan-marquee{
  background:#03110e !important;
  border-top:1px solid rgba(255,255,255,.12);
  backdrop-filter:none !important;
  -webkit-mask-image:none !important;
  mask-image:none !important;
}
.slogan-marquee:before,
.slogan-marquee:after{display:none!important}
.slogan-track,
.slogan-group{
  opacity:1!important;
  filter:none!important;
}
.slogan-group span{
  color:var(--gold);
  opacity:1;
  text-shadow:none;
}
.slogan-group i{color:var(--teal);opacity:1}

/* Hero transition: narrower and softer without reaching the people */
.hero-overlay{
  background:
    radial-gradient(circle at 5% 13%,rgba(0,0,0,.79) 0%,rgba(0,0,0,.48) 17%,rgba(0,0,0,.12) 29%,transparent 39%),
    linear-gradient(90deg,rgba(2,9,7,.96) 0%,rgba(2,9,7,.84) 14%,rgba(2,9,7,.5) 22%,rgba(2,9,7,.18) 29%,rgba(2,9,7,.04) 35%,transparent 40%),
    linear-gradient(180deg,rgba(2,9,7,.05) 0%,transparent 61%,rgba(2,9,7,.7) 100%);
}
.hero-photo:before{
  left:0;
  right:auto;
  width:40%;
  background:linear-gradient(90deg,rgba(2,9,7,.72) 0%,rgba(2,9,7,.34) 34%,rgba(2,9,7,.08) 72%,transparent 100%);
  filter:blur(10px);
  transform:translateX(-3%);
}
.hero-photo:after{
  background:linear-gradient(180deg,transparent,rgba(2,9,7,.68));
}

/* Smaller diagonal carousel */
.team-diagonal{
  position:relative;
  overflow:hidden;
  padding-top:80px;
  padding-bottom:110px;
}
.tilt-carousel-shell{
  position:relative;
  width:calc(100% + 12vw);
  margin-left:-6vw;
  transform:rotate(-15deg);
  transform-origin:center;
  padding:60px 7vw;
}
.tilt-carousel{
  display:grid;
  grid-auto-flow:column;
  grid-auto-columns:220px;
  gap:18px;
  overflow-x:auto;
  scroll-snap-type:x mandatory;
  scrollbar-width:none;
  padding:20px 70px;
  scroll-behavior:smooth;
}
.tilt-carousel::-webkit-scrollbar{display:none}
.tilt-profile-card{
  scroll-snap-align:center;
  min-width:0;
  border:1px solid rgba(255,255,255,.14);
  background:rgba(4,20,16,.96);
  box-shadow:0 18px 55px rgba(0,0,0,.28);
  overflow:hidden;
  transform:rotate(15deg);
  border-radius:8px;
  transition:transform .35s ease,border-color .35s ease;
}
.tilt-profile-card:hover{
  transform:rotate(15deg) translateY(-8px);
  border-color:rgba(255,215,0,.5);
}
.tilt-profile-trigger{
  width:100%;
  display:block;
  padding:0;
  border:0;
  background:transparent;
  color:inherit;
  text-align:left;
  cursor:pointer;
}
.tilt-profile-image{
  aspect-ratio:4/5;
  overflow:hidden;
  background:#061511;
}
.tilt-profile-image img{
  width:100%;
  height:100%;
  object-fit:cover;
  object-position:center top;
  transition:transform .5s ease;
}
.tilt-profile-card:hover .tilt-profile-image img{transform:scale(1.03)}
.tilt-profile-meta{
  padding:15px 16px 17px;
  text-align:center;
}
.tilt-profile-meta small{
  display:block;
  color:var(--gold);
  font:600 19px/1 Georgia,"Times New Roman",serif;
}
.tilt-profile-meta h3{
  margin:3px 0 0;
  color:var(--teal);
  font:600 25px/1 Georgia,"Times New Roman",serif;
  text-transform:uppercase;
}
.tilt-profile-meta p{
  margin:6px 0 10px;
  color:var(--muted);
  min-height:28px;
  font-size:9px;
  line-height:1.4;
  text-transform:uppercase;
  letter-spacing:.06em;
}
.tilt-profile-meta span{
  color:#fff;
  font-size:9px;
  font-weight:800;
  text-transform:uppercase;
  letter-spacing:.08em;
}
.tilt-profile-panel{
  max-height:0;
  overflow:hidden;
  background:#082019;
  transition:max-height .4s ease,padding .4s ease;
  padding:0 16px;
}
.tilt-profile-card.open .tilt-profile-panel{
  max-height:220px;
  padding:15px 16px 18px;
  border-top:1px solid rgba(255,255,255,.1);
}
.tilt-profile-panel p{
  margin:0;
  color:#c9d8d3;
  font-size:12px;
  line-height:1.65;
}
.tilt-nav{
  position:absolute;
  z-index:5;
  top:50%;
  width:46px;
  height:46px;
  border:1px solid var(--teal);
  border-radius:50%;
  background:#03110e;
  color:var(--teal);
  font-size:30px;
  cursor:pointer;
  transform:translateY(-50%) rotate(15deg);
}
.tilt-prev{left:5vw}
.tilt-next{right:5vw}

/* Improve portrait headroom */
.tilt-profile-card:nth-child(1) img{object-position:center 15%}
.tilt-profile-card:nth-child(2) img{object-position:center 13%}
.tilt-profile-card:nth-child(3) img{object-position:center 12%}
.tilt-profile-card:nth-child(4) img{object-position:center 11%}
.tilt-profile-card:nth-child(5) img{object-position:center 11%}
.tilt-profile-card:nth-child(6) img{object-position:center 9%}
.tilt-profile-card:nth-child(7) img{object-position:center 11%}
.tilt-profile-card:nth-child(8) img{object-position:center 10%}
.tilt-profile-card:nth-child(9) img{object-position:center 10%}

@media(max-width:900px){
  .hero-overlay{
    background:
      linear-gradient(180deg,rgba(2,9,7,.03) 0%,rgba(2,9,7,.07) 27%,rgba(2,9,7,.63) 60%,rgba(2,9,7,.97) 82%);
  }
  .hero-photo:before{display:none}
  .tilt-carousel-shell{
    width:110%;
    margin-left:-5%;
    transform:rotate(-8deg);
    padding:40px 0;
  }
  .tilt-carousel{
    grid-auto-columns:190px;
    gap:14px;
    padding:16px 54px;
  }
  .tilt-profile-card,
  .tilt-profile-card:hover{
    transform:rotate(8deg);
  }
  .tilt-nav{transform:translateY(-50%) rotate(8deg)}
}
@media(max-width:620px){
  .team-diagonal{padding-bottom:80px}
  .tilt-carousel-shell{
    width:100%;
    margin:0;
    transform:none;
    padding:20px 0;
  }
  .tilt-carousel{
    grid-auto-columns:72vw;
    padding:12px 14vw;
    gap:14px;
  }
  .tilt-profile-card,
  .tilt-profile-card:hover{
    transform:none;
  }
  .tilt-nav{display:none}
  .tilt-profile-meta h3{font-size:27px}
}


/* =========================================================
   V6 – corrected marquee layer, refined hero fade,
        genuinely diagonal team carousel
   ========================================================= */

/* Marquee must sit above every photo/overlay layer */
.slogan-marquee{
  z-index:20 !important;
  background:#03110e !important;
  isolation:isolate;
}
.slogan-track{
  position:relative;
  z-index:2;
}
.hero-photo,
.hero-photo:before,
.hero-photo:after,
.hero-overlay,
.stage-beams,
.gold-particles{
  pointer-events:none;
}

/* Stronger left field with a long, fine feather before the first person */
.hero-overlay{
  background:
    radial-gradient(
      ellipse 72% 92% at 0% 20%,
      rgba(0,0,0,.94) 0%,
      rgba(0,0,0,.88) 25%,
      rgba(0,0,0,.68) 43%,
      rgba(0,0,0,.34) 59%,
      rgba(0,0,0,.12) 72%,
      transparent 84%
    ),
    linear-gradient(
      90deg,
      rgba(2,9,7,.99) 0%,
      rgba(2,9,7,.98) 16%,
      rgba(2,9,7,.92) 23%,
      rgba(2,9,7,.72) 29%,
      rgba(2,9,7,.43) 34%,
      rgba(2,9,7,.18) 38%,
      rgba(2,9,7,.05) 41%,
      transparent 44%
    ),
    linear-gradient(
      180deg,
      rgba(2,9,7,.08) 0%,
      transparent 60%,
      rgba(2,9,7,.72) 100%
    );
}
.hero-photo:before{
  width:43%;
  left:0;
  right:auto;
  background:
    linear-gradient(
      90deg,
      rgba(2,9,7,.88) 0%,
      rgba(2,9,7,.72) 28%,
      rgba(2,9,7,.42) 52%,
      rgba(2,9,7,.16) 74%,
      transparent 100%
    );
  filter:blur(14px);
  transform:translateX(-2%);
}
.hero-copy:before{
  width:760px;
  height:620px;
  left:-165px;
  top:-110px;
  background:
    radial-gradient(circle at 38% 35%,rgba(6,173,145,.13),transparent 46%),
    radial-gradient(circle at 28% 20%,rgba(255,215,0,.045),transparent 34%);
}

/* Carousel: one continuous diagonal rail, all cards share the same angle */
.tilt-carousel-shell{
  width:calc(100% + 18vw);
  margin-left:-9vw;
  transform:rotate(-9deg);
  transform-origin:center center;
  padding:88px 9vw 92px;
}
.tilt-carousel{
  align-items:center;
  grid-auto-columns:205px;
  gap:18px;
  padding:18px 78px;
}
.tilt-profile-card,
.tilt-profile-card:hover{
  transform:none !important;
}
.tilt-profile-card{
  border-radius:7px;
}
.tilt-profile-card:hover{
  translate:0 -8px;
}
.tilt-nav{
  transform:translateY(-50%) rotate(9deg);
}
.tilt-prev{left:6vw}
.tilt-next{right:6vw}

/* Give the whole diagonal lane more breathing room */
.team-diagonal{
  padding-top:82px;
  padding-bottom:130px;
}
.team-diagonal .section-heading{
  position:relative;
  z-index:4;
}

/* Tablet: still diagonal, but less extreme */
@media(max-width:900px){
  .tilt-carousel-shell{
    width:114%;
    margin-left:-7%;
    transform:rotate(-6deg);
    padding:58px 2vw 70px;
  }
  .tilt-carousel{
    grid-auto-columns:188px;
    padding:16px 58px;
  }
  .tilt-profile-card,
  .tilt-profile-card:hover{
    transform:none !important;
  }
  .tilt-nav{
    transform:translateY(-50%) rotate(6deg);
  }
}

/* Mobile: slight diagonal instead of a staircase */
@media(max-width:620px){
  .hero-overlay{
    background:
      linear-gradient(
        180deg,
        rgba(2,9,7,.03) 0%,
        rgba(2,9,7,.08) 30%,
        rgba(2,9,7,.62) 60%,
        rgba(2,9,7,.98) 83%
      );
  }
  .hero-photo:before{display:none}

  .tilt-carousel-shell{
    width:108%;
    margin-left:-4%;
    transform:rotate(-3deg);
    padding:34px 0 44px;
  }
  .tilt-carousel{
    grid-auto-columns:68vw;
    padding:12px 18vw;
  }
  .tilt-profile-card,
  .tilt-profile-card:hover{
    transform:none !important;
  }
}


/* =========================================================
   V7 – guaranteed infinite marquee and integrated club crest
   ========================================================= */

/* True seamless infinite loop */
.slogan-marquee{
  overflow:hidden;
  background:#03110e !important;
}
.slogan-track{
  display:flex;
  width:max-content;
  min-width:max-content;
  gap:0;
  animation:marqueeV7 22s linear infinite !important;
  will-change:transform;
}
.slogan-group{
  display:flex;
  align-items:center;
  flex:0 0 auto;
  width:max-content;
  min-width:max-content;
  gap:28px;
  padding-right:28px;
}
.slogan-group span,
.slogan-group i{
  flex:0 0 auto;
  white-space:nowrap;
}
@keyframes marqueeV7{
  from{transform:translate3d(0,0,0)}
  to{transform:translate3d(-50%,0,0)}
}

/* Pause only when the user deliberately hovers the ribbon */
@media(hover:hover){
  .slogan-marquee:hover .slogan-track{
    animation-play-state:paused;
  }
}

/* Club crest embedded like the sponsor logos */
.partner-logo,
.partner-logo.crest-wrap{
  position:relative;
  overflow:hidden;
  background:
    radial-gradient(circle at 50% 45%,rgba(9,219,163,.10),transparent 56%),
    linear-gradient(135deg,#061713,#0a241e) !important;
}
.partner-logo:before{
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
  background:
    linear-gradient(135deg,rgba(255,255,255,.025),transparent 52%),
    radial-gradient(circle at 50% 100%,rgba(255,215,0,.055),transparent 48%);
}
.partner-logo img{
  position:relative;
  z-index:1;
  max-width:84%;
  max-height:96px;
  object-fit:contain;
  filter:
    drop-shadow(0 10px 22px rgba(0,0,0,.42))
    drop-shadow(0 0 10px rgba(255,255,255,.04));
}
.partner-logo.crest-wrap img{
  max-height:132px;
  max-width:72%;
  filter:
    drop-shadow(0 12px 25px rgba(0,0,0,.45))
    drop-shadow(0 0 11px rgba(9,219,163,.08));
}
.club-card{
  border-color:rgba(6,173,145,.42);
}
.club-card:hover .partner-logo.crest-wrap img{
  transform:scale(1.035);
}
.partner-logo img{
  transition:transform .35s ease,filter .35s ease;
}
.partner-card:hover .partner-logo img{
  transform:scale(1.025);
  filter:
    drop-shadow(0 14px 28px rgba(0,0,0,.48))
    drop-shadow(0 0 14px rgba(255,215,0,.08));
}

@media(max-width:720px){
  .partner-logo,
  .partner-logo.crest-wrap{
    min-height:142px;
  }
  .partner-logo.crest-wrap img{
    max-height:118px;
  }
}


/* =========================================================
   V8 – items 1–6, favicon, stronger navigation, final hero
   ========================================================= */

/* 1. Fully filled seamless marquee */
.slogan-marquee{
  position:absolute;
  left:0;
  right:0;
  bottom:0;
  height:46px;
  overflow:hidden;
  background:#03110e!important;
  z-index:30!important;
  border-top:1px solid rgba(255,255,255,.12);
}
.slogan-track{
  display:flex;
  align-items:center;
  width:max-content;
  min-width:max-content;
  gap:0!important;
  animation:marqueeV8 30s linear infinite!important;
  will-change:transform;
}
.slogan-group{
  display:flex;
  align-items:center;
  flex:0 0 auto;
  width:max-content;
  min-width:max-content;
  gap:28px;
  padding-right:28px;
}
.slogan-group span,
.slogan-group i{
  flex:0 0 auto;
  white-space:nowrap;
}
@keyframes marqueeV8{
  from{transform:translate3d(0,0,0)}
  to{transform:translate3d(-25%,0,0)}
}

/* 2. TikTok links */
.social-head a,
.footer-social a{
  transition:color .25s ease,transform .25s ease;
}
.social-head a:hover,
.footer-social a:hover{
  color:var(--teal);
  transform:translateY(-2px);
}

/* 3. Better readable navigation */
.site-header{
  background:linear-gradient(180deg,rgba(2,9,7,.76),rgba(2,9,7,.28));
  backdrop-filter:blur(7px);
  -webkit-backdrop-filter:blur(7px);
}
.site-header.scrolled{
  background:rgba(2,9,7,.94);
  box-shadow:0 10px 35px rgba(0,0,0,.28);
}
.main-nav{
  gap:clamp(18px,2.2vw,34px);
  font-size:12px;
  font-weight:700;
  letter-spacing:.035em;
}
.main-nav a{
  color:#f8fbfa;
  text-shadow:0 2px 8px rgba(0,0,0,.72);
}
.main-nav a:after{
  height:2px;
  background:var(--gold);
}
.social-head{
  font-size:17px;
  text-shadow:0 2px 8px rgba(0,0,0,.7);
}

/* 4. Rise of Beauty branding asset */
.hero-title-wrap{
  max-width:min(780px,54vw);
}
.hero-title-image{
  width:100%;
  height:auto;
  display:block;
  filter:drop-shadow(0 10px 30px rgba(0,0,0,.36));
}
.hero-title-line{display:none!important}

/* 5. Refined hero transition */
.hero-overlay{
  background:
    radial-gradient(
      ellipse 78% 105% at -2% 18%,
      rgba(0,0,0,.98) 0%,
      rgba(0,0,0,.93) 24%,
      rgba(0,0,0,.75) 42%,
      rgba(0,0,0,.47) 57%,
      rgba(0,0,0,.22) 69%,
      rgba(0,0,0,.07) 78%,
      transparent 88%
    ),
    linear-gradient(
      90deg,
      rgba(2,9,7,.99) 0%,
      rgba(2,9,7,.98) 18%,
      rgba(2,9,7,.91) 25%,
      rgba(2,9,7,.7) 31%,
      rgba(2,9,7,.4) 36%,
      rgba(2,9,7,.17) 40%,
      rgba(2,9,7,.04) 43%,
      transparent 46%
    ),
    linear-gradient(
      180deg,
      rgba(2,9,7,.08) 0%,
      transparent 58%,
      rgba(2,9,7,.72) 100%
    );
}
.hero-photo:before{
  width:45%;
  background:
    linear-gradient(
      90deg,
      rgba(2,9,7,.9) 0%,
      rgba(2,9,7,.74) 30%,
      rgba(2,9,7,.45) 54%,
      rgba(2,9,7,.18) 75%,
      transparent 100%
    );
  filter:blur(16px);
}
.hero-copy:before{
  width:820px;
  height:650px;
  left:-185px;
  top:-125px;
  background:
    radial-gradient(circle at 39% 35%,rgba(6,173,145,.15),transparent 47%),
    radial-gradient(circle at 26% 20%,rgba(255,215,0,.055),transparent 34%);
}

/* 6. More dynamic diagonal carousel */
.tilt-carousel-shell{
  width:calc(100% + 22vw);
  margin-left:-11vw;
  transform:rotate(-11deg);
  padding:95px 11vw 105px;
}
.tilt-carousel{
  grid-auto-columns:198px;
  gap:20px;
  padding:20px 95px;
}
.tilt-profile-card{
  transition:translate .35s ease,border-color .35s ease,box-shadow .35s ease;
}
.tilt-profile-card:nth-child(odd){translate:0 -5px}
.tilt-profile-card:nth-child(even){translate:0 5px}
.tilt-profile-card:hover{
  translate:0 -12px!important;
  box-shadow:0 28px 75px rgba(0,0,0,.38);
}
.tilt-nav{
  transform:translateY(-50%) rotate(11deg);
}

/* Responsive corrections */
@media(max-width:1100px){
  .hero-title-wrap{max-width:58vw}
  .main-nav{font-size:11px;gap:18px}
}
@media(max-width:900px){
  .site-header{background:rgba(2,9,7,.88)}
  .hero-title-wrap{max-width:100%}
  .tilt-carousel-shell{
    width:116%;
    margin-left:-8%;
    transform:rotate(-7deg);
    padding:65px 2vw 78px;
  }
  .tilt-carousel{
    grid-auto-columns:184px;
    padding:16px 62px;
  }
  .tilt-nav{transform:translateY(-50%) rotate(7deg)}
}
@media(max-width:720px){
  .site-header{
    background:rgba(2,9,7,.92);
    backdrop-filter:blur(10px);
  }
  .hero-title-wrap{
    max-width:100%;
    width:100%;
  }
  .hero-title-image{
    width:min(100%,560px);
  }
  .hero-overlay{
    background:
      linear-gradient(
        180deg,
        rgba(2,9,7,.03) 0%,
        rgba(2,9,7,.08) 28%,
        rgba(2,9,7,.65) 60%,
        rgba(2,9,7,.98) 83%
      );
  }
  .hero-photo:before{display:none}
  .tilt-carousel-shell{
    width:108%;
    margin-left:-4%;
    transform:rotate(-3deg);
    padding:36px 0 48px;
  }
  .tilt-carousel{
    grid-auto-columns:70vw;
    padding:12px 15vw;
  }
  .tilt-profile-card:nth-child(odd),
  .tilt-profile-card:nth-child(even){translate:0 0}
}
@media(max-width:390px){
  .hero-title-image{width:100%}
  .slogan-group{gap:24px;padding-right:24px}
}


/* =========================================================
   V10 – expanded gallery and corrected image positioning
   ========================================================= */

.gallery-grid-v10{
  display:grid;
  grid-template-columns:repeat(12,minmax(0,1fr));
  grid-auto-rows:120px;
  gap:14px;
}
.gallery-grid-v10 .gallery-item{
  position:relative;
  display:block;
  overflow:hidden;
  min-height:0;
  border:1px solid rgba(255,255,255,.1);
  background:#061511;
}
.gallery-grid-v10 .gallery-item img{
  width:100%;
  height:100%;
  display:block;
  object-fit:cover;
  object-position:center top;
  transition:transform .6s ease,filter .6s ease;
}
.gallery-grid-v10 .gallery-tall{
  grid-column:span 4;
  grid-row:span 6;
}
.gallery-grid-v10 .gallery-wide{
  grid-column:span 8;
  grid-row:span 4;
}
.gallery-grid-v10 .gallery-standard{
  grid-column:span 4;
  grid-row:span 4;
}

/* Per-image focal positioning to preserve heads and faces */
.gallery-grid-v10 .gallery-item:nth-child(1) img{object-position:center 20%}
.gallery-grid-v10 .gallery-item:nth-child(2) img{object-position:center 18%}
.gallery-grid-v10 .gallery-item:nth-child(3) img{object-position:center 14%}
.gallery-grid-v10 .gallery-item:nth-child(4) img{object-position:center 16%}
.gallery-grid-v10 .gallery-item:nth-child(5) img{object-position:center 12%}
.gallery-grid-v10 .gallery-item:nth-child(6) img{object-position:center 15%}
.gallery-grid-v10 .gallery-item:nth-child(7) img{object-position:center 14%}
.gallery-grid-v10 .gallery-item:nth-child(8) img{object-position:center 16%}
.gallery-grid-v10 .gallery-item:nth-child(9) img{object-position:center 12%}
.gallery-grid-v10 .gallery-item:nth-child(10) img{object-position:center 15%}

.gallery-grid-v10 .gallery-item:after{
  content:"";
  position:absolute;
  inset:0;
  background:linear-gradient(180deg,transparent 60%,rgba(2,9,7,.8));
  opacity:.28;
  transition:.35s ease;
}
.gallery-grid-v10 .gallery-item span{
  position:absolute;
  z-index:2;
  left:20px;
  bottom:16px;
  color:var(--gold);
  font-size:10px;
  font-weight:800;
  letter-spacing:.17em;
  opacity:0;
  transform:translateY(8px);
  transition:.35s ease;
}
.gallery-grid-v10 .gallery-item:hover img{
  transform:scale(1.035);
  filter:saturate(1.05) contrast(1.03);
}
.gallery-grid-v10 .gallery-item:hover:after{opacity:1}
.gallery-grid-v10 .gallery-item:hover span{
  opacity:1;
  transform:none;
}

@media(max-width:1000px){
  .gallery-grid-v10{
    grid-template-columns:repeat(2,minmax(0,1fr));
    grid-auto-rows:340px;
  }
  .gallery-grid-v10 .gallery-item,
  .gallery-grid-v10 .gallery-tall,
  .gallery-grid-v10 .gallery-wide,
  .gallery-grid-v10 .gallery-standard{
    grid-column:auto;
    grid-row:auto;
  }
}
@media(max-width:620px){
  .gallery-grid-v10{
    grid-template-columns:1fr;
    grid-auto-rows:440px;
  }
  .gallery-grid-v10 .gallery-item span{
    opacity:1;
    transform:none;
  }
}

.about-title{display:flex;flex-direction:column;max-width:100%}.about-title span,.about-title em{display:block;white-space:nowrap}.about-title span:nth-child(2){font-size:.78em;letter-spacing:-.035em}
.date-card>img{object-fit:cover;object-position:center 12%}.date-card-1>img{object-position:center 10%}.date-card-2>img{object-position:center 9%}.date-card-3>img{object-position:center 11%}.date-card:after{background:linear-gradient(90deg,rgba(2,9,7,.95),rgba(2,9,7,.64) 52%,rgba(2,9,7,.16))}
.contact-form-section{padding:88px 6vw;border-bottom:1px solid var(--line);background:linear-gradient(180deg,#020907,#061511)}.contact-form-layout{display:grid;grid-template-columns:minmax(280px,.75fr) minmax(0,1.25fr);gap:70px;max-width:1500px;margin:auto}.contact-form-intro h2{margin:0;font:500 clamp(42px,4.8vw,76px)/.94 Georgia,"Times New Roman",serif}.contact-form-intro h2 em{color:var(--teal);font-style:normal}.contact-form-intro>p{color:var(--muted);line-height:1.75}.contact-form{padding:30px;border:1px solid rgba(255,255,255,.16);background:rgba(255,255,255,.025)}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}.form-field-full{grid-column:1/-1}.form-field label{display:block;margin-bottom:8px;color:#e9f1ee;font-size:11px;font-weight:700;text-transform:uppercase}.form-field input,.form-field select,.form-field textarea{width:100%;border:1px solid rgba(255,255,255,.2);background:#03110e;color:#fff;padding:14px 15px;font:inherit}.checkbox-field label{display:flex;gap:12px;align-items:flex-start;text-transform:none;color:var(--muted);line-height:1.55}.checkbox-field input{width:18px;height:18px;flex:0 0 auto}.checkbox-field a{color:var(--gold);text-decoration:underline}.form-submit-row{display:flex;align-items:center;justify-content:space-between;gap:20px}.honeypot{position:absolute!important;left:-9999px!important;width:1px!important;height:1px!important;overflow:hidden!important}
@media(max-width:900px){.contact-form-layout{grid-template-columns:1fr}.about-title span,.about-title em{white-space:normal}}
@media(max-width:620px){.contact-form-section{padding:65px 18px}.contact-form{padding:20px 16px}.form-grid{grid-template-columns:1fr}.form-field-full{grid-column:auto}.form-submit-row{align-items:stretch;flex-direction:column}.form-submit-row .button{width:100%}.about-title{font-size:clamp(34px,10vw,50px)!important}.about-title span:nth-child(2){font-size:.72em;overflow-wrap:anywhere}}


/* =========================================================
   V12 – controlled text wrapping and responsive web gallery
   ========================================================= */

.contact-title{
  display:flex;
  flex-direction:column;
  gap:0;
  max-width:100%;
}
.contact-title span,
.contact-title em{
  display:block;
  white-space:nowrap;
}
.contact-title em{
  font-size:.82em;
  line-height:.98;
}
@media(max-width:1180px){
  .contact-title span,
  .contact-title em{
    white-space:normal;
  }
}
@media(max-width:620px){
  .contact-title{
    font-size:clamp(36px,10.5vw,52px)!important;
    line-height:1!important;
  }
  .contact-title em{
    font-size:.72em;
    word-break:normal;
    overflow-wrap:normal;
    hyphens:none;
  }
}

.gallery-grid-v12{
  display:grid;
  grid-template-columns:repeat(12,minmax(0,1fr));
  grid-auto-rows:115px;
  gap:14px;
}
.gallery-grid-v12 .gallery-item{
  position:relative;
  display:block;
  overflow:hidden;
  min-height:0;
  border:1px solid rgba(255,255,255,.1);
  background:#061511;
}
.gallery-grid-v12 picture{
  display:block;
  width:100%;
  height:100%;
}
.gallery-grid-v12 img{
  width:100%;
  height:100%;
  display:block;
  object-fit:cover;
  object-position:center 16%;
  transition:transform .6s ease,filter .6s ease;
}
.gallery-grid-v12 .gallery-tall{
  grid-column:span 4;
  grid-row:span 6;
}
.gallery-grid-v12 .gallery-wide{
  grid-column:span 8;
  grid-row:span 4;
}
.gallery-grid-v12 .gallery-standard{
  grid-column:span 4;
  grid-row:span 4;
}

/* Focal points: preserve faces and headroom */
.gallery-grid-v12 .gallery-item:nth-child(1) img{object-position:center 16%}
.gallery-grid-v12 .gallery-item:nth-child(2) img{object-position:center 12%}
.gallery-grid-v12 .gallery-item:nth-child(3) img{object-position:center 10%}
.gallery-grid-v12 .gallery-item:nth-child(4) img{object-position:center 12%}
.gallery-grid-v12 .gallery-item:nth-child(5) img{object-position:center 10%}
.gallery-grid-v12 .gallery-item:nth-child(6) img{object-position:center 14%}
.gallery-grid-v12 .gallery-item:nth-child(7) img{object-position:center 12%}
.gallery-grid-v12 .gallery-item:nth-child(8) img{object-position:center 10%}
.gallery-grid-v12 .gallery-item:nth-child(9) img{object-position:center 12%}
.gallery-grid-v12 .gallery-item:nth-child(10) img{object-position:center 14%}
.gallery-grid-v12 .gallery-item:nth-child(11) img{object-position:center 12%}
.gallery-grid-v12 .gallery-item:nth-child(12) img{object-position:center 10%}
.gallery-grid-v12 .gallery-item:nth-child(13) img{object-position:center 12%}
.gallery-grid-v12 .gallery-item:nth-child(14) img{object-position:center 14%}
.gallery-grid-v12 .gallery-item:nth-child(15) img{object-position:center 11%}
.gallery-grid-v12 .gallery-item:nth-child(16) img{object-position:center 13%}
.gallery-grid-v12 .gallery-item:nth-child(17) img{object-position:center 10%}
.gallery-grid-v12 .gallery-item:nth-child(18) img{object-position:center 12%}

.gallery-grid-v12 .gallery-item:after{
  content:"";
  position:absolute;
  inset:0;
  background:linear-gradient(180deg,transparent 62%,rgba(2,9,7,.82));
  opacity:.25;
  transition:.35s ease;
}
.gallery-grid-v12 .gallery-item span{
  position:absolute;
  z-index:2;
  left:20px;
  bottom:16px;
  color:var(--gold);
  font-size:10px;
  font-weight:800;
  letter-spacing:.17em;
  opacity:0;
  transform:translateY(8px);
  transition:.35s ease;
}
.gallery-grid-v12 .gallery-item:hover img{
  transform:scale(1.035);
  filter:saturate(1.05) contrast(1.03);
}
.gallery-grid-v12 .gallery-item:hover:after{opacity:1}
.gallery-grid-v12 .gallery-item:hover span{opacity:1;transform:none}

@media(max-width:1000px){
  .gallery-grid-v12{
    grid-template-columns:repeat(2,minmax(0,1fr));
    grid-auto-rows:380px;
  }
  .gallery-grid-v12 .gallery-item,
  .gallery-grid-v12 .gallery-tall,
  .gallery-grid-v12 .gallery-wide,
  .gallery-grid-v12 .gallery-standard{
    grid-column:auto;
    grid-row:auto;
  }
}
@media(max-width:620px){
  .gallery-grid-v12{
    grid-template-columns:1fr;
    grid-auto-rows:470px;
  }
  .gallery-grid-v12 .gallery-item span{opacity:1;transform:none}
  .gallery-grid-v12 img{object-position:center 12%}
}


/* V13 */
.contact-form-section{padding:78px 6vw 88px}.contact-form-heading{max-width:1120px;margin:0 auto 34px}.contact-form-heading .eyebrow{margin-bottom:12px}.contact-form-heading .contact-title{display:block;margin:0;max-width:100%;font:500 clamp(38px,4.2vw,66px)/.96 Georgia,"Times New Roman",serif;letter-spacing:-.025em}.contact-form-heading .contact-title span,.contact-form-heading .contact-title em{display:inline;white-space:normal}.contact-form-heading .contact-title em{color:var(--teal);font-style:normal;font-size:1em}.contact-form-heading>p:not(.eyebrow){max-width:680px;margin:18px 0 0;color:var(--muted);line-height:1.7}.contact-form-wrap{max-width:1120px;margin:0 auto}.contact-form{width:100%;padding:30px}
.tilt-profile-meta small,.profile-head small{display:none!important}.tilt-profile-meta{padding-top:17px}.profile-head{grid-template-columns:1fr!important}.profile-head h3,.profile-head p{text-align:center}
.gallery-grid-v12{grid-template-columns:repeat(12,minmax(0,1fr));grid-auto-rows:84px;gap:10px}.gallery-grid-v12 .gallery-tall{grid-column:span 3;grid-row:span 5}.gallery-grid-v12 .gallery-wide{grid-column:span 6;grid-row:span 3}.gallery-grid-v12 .gallery-standard{grid-column:span 3;grid-row:span 3}.gallery-grid-v12 .gallery-item{border-radius:4px;border:1px solid rgba(255,255,255,.08);box-shadow:0 8px 24px rgba(0,0,0,.18);transform:translateZ(0)}.gallery-grid-v12 .gallery-item:before{content:"";position:absolute;inset:0;z-index:1;pointer-events:none;background:linear-gradient(135deg,rgba(9,219,163,.12),transparent 45%),linear-gradient(315deg,rgba(255,215,0,.08),transparent 38%);opacity:0;transition:opacity .35s ease}.gallery-grid-v12 .gallery-item:after{opacity:.14}.gallery-grid-v12 .gallery-item span{left:14px;bottom:12px;font-size:9px}.gallery-grid-v12 .gallery-item img{transition:transform .55s cubic-bezier(.22,.61,.36,1),filter .45s ease}.gallery-grid-v12 .gallery-item:hover{z-index:3;box-shadow:0 18px 42px rgba(0,0,0,.34)}.gallery-grid-v12 .gallery-item:hover img{transform:scale(1.055);filter:saturate(1.08) contrast(1.04) brightness(1.02)}.gallery-grid-v12 .gallery-item:hover:before{opacity:1}.gallery-grid-v12 .gallery-item:hover:after{opacity:.6}
@media(max-width:1000px){.gallery-grid-v12{grid-template-columns:repeat(6,minmax(0,1fr));grid-auto-rows:110px}.gallery-grid-v12 .gallery-tall{grid-column:span 3;grid-row:span 4}.gallery-grid-v12 .gallery-wide{grid-column:span 6;grid-row:span 3}.gallery-grid-v12 .gallery-standard{grid-column:span 3;grid-row:span 3}}
@media(max-width:620px){.contact-form-section{padding:60px 18px 68px}.contact-form-heading{margin-bottom:24px}.contact-form-heading .contact-title{font-size:clamp(32px,10vw,46px);line-height:1}.gallery-grid-v12{grid-template-columns:repeat(2,minmax(0,1fr));grid-auto-rows:150px;gap:8px}.gallery-grid-v12 .gallery-tall{grid-column:span 1;grid-row:span 3}.gallery-grid-v12 .gallery-wide{grid-column:span 2;grid-row:span 2}.gallery-grid-v12 .gallery-standard{grid-column:span 1;grid-row:span 2}}


/* =========================================================
   V14 – true Masonry gallery
   ========================================================= */

.gallery-grid-v12{
  display:block!important;
  columns:4;
  column-gap:12px;
}
.gallery-grid-v12 .gallery-item,
.gallery-grid-v12 .gallery-tall,
.gallery-grid-v12 .gallery-wide,
.gallery-grid-v12 .gallery-standard{
  display:inline-block;
  width:100%;
  margin:0 0 12px;
  break-inside:avoid;
  -webkit-column-break-inside:avoid;
  page-break-inside:avoid;
  grid-column:auto!important;
  grid-row:auto!important;
  min-height:0;
  vertical-align:top;
}
.gallery-grid-v12 .gallery-item picture{
  display:block;
  width:100%;
  height:auto;
}
.gallery-grid-v12 .gallery-item img{
  width:100%;
  height:auto;
  display:block;
  object-fit:contain;
  object-position:center center!important;
}

/* Subtle variation without cropping */
.gallery-grid-v12 .gallery-item:nth-child(5n+1){
  transform:translateY(8px);
}
.gallery-grid-v12 .gallery-item:nth-child(5n+3){
  transform:translateY(-4px);
}
.gallery-grid-v12 .gallery-item:hover{
  transform:translateY(-4px) scale(1.01);
}
.gallery-grid-v12 .gallery-item:nth-child(5n+1):hover,
.gallery-grid-v12 .gallery-item:nth-child(5n+3):hover{
  transform:translateY(-4px) scale(1.01);
}

/* Keep the overlay and hover effect proportional to original image height */
.gallery-grid-v12 .gallery-item:before,
.gallery-grid-v12 .gallery-item:after{
  border-radius:4px;
}
.gallery-grid-v12 .gallery-item span{
  left:14px;
  bottom:12px;
}

/* Responsive masonry columns */
@media(max-width:1200px){
  .gallery-grid-v12{columns:3}
}
@media(max-width:850px){
  .gallery-grid-v12{columns:2}
}
@media(max-width:560px){
  .gallery-grid-v12{
    columns:1;
    column-gap:0;
  }
  .gallery-grid-v12 .gallery-item{
    margin-bottom:10px;
  }
}

.hero-pan .hero-photo img{animation:heroPan 18s ease-in-out infinite alternate}.hero-static .hero-photo img{animation:none!important}.hero-pulse .hero-photo{animation:heroPulse 7s ease-in-out infinite}@keyframes heroPan{from{transform:scale(1.06) translateX(-2%)}to{transform:scale(1.06) translateX(2%)}}@keyframes heroPulse{50%{filter:brightness(1.08) saturate(1.08)}}

.custom-section{padding:90px 6vw;border-top:1px solid var(--line);background:var(--dark)}.custom-inner{max-width:var(--content-width,1500px);margin:auto}.custom-inner h2{font-size:clamp(40px,5vw,78px);margin:.2em 0}.custom-body{color:var(--muted);line-height:1.8;max-width:850px}.hero-static .hero-photo img{animation:none!important}.hero-parallax .hero-photo img{animation:heroZoom 18s ease-in-out infinite alternate}.hero-spotlight:before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 70% 35%,rgba(255,215,0,.12),transparent 32%);animation:spotlight 8s ease-in-out infinite alternate;z-index:2;pointer-events:none}@keyframes spotlight{to{transform:translateX(-10%)}}

.staging-banner{
 position:fixed;left:0;right:0;bottom:0;z-index:9999;
 padding:7px 12px;text-align:center;
 background:#ffd700;color:#03110e;
 font:800 10px/1.2 Arial,sans-serif;letter-spacing:.14em;
}
body:has(.staging-banner){padding-bottom:28px}


/* =========================================================
   HOTFIX 3.1.3 – Team navigation + compact masonry gallery
   ========================================================= */

/* Team carousel navigation */
.tilt-carousel-shell{
  position:relative;
}
.tilt-nav{
  position:absolute;
  z-index:20;
  top:50%;
  width:54px;
  height:54px;
  display:grid;
  place-items:center;
  border:1px solid rgba(9,219,163,.72);
  border-radius:50%;
  background:rgba(2,9,7,.88);
  color:var(--teal);
  font:300 42px/1 Arial,sans-serif;
  cursor:pointer;
  box-shadow:0 14px 38px rgba(0,0,0,.35);
  backdrop-filter:blur(10px);
  transition:transform .25s ease,background .25s ease,color .25s ease,border-color .25s ease;
}
.tilt-prev{left:6.8vw}
.tilt-next{right:6.8vw}
.tilt-nav:hover,
.tilt-nav:focus-visible{
  background:var(--teal);
  color:#03110e;
  border-color:var(--teal);
  outline:none;
  transform:translateY(-50%) rotate(11deg) scale(1.08);
}
.tilt-nav:active{
  scale:.96;
}

/* Compact Masonry gallery */
.cms-gallery{
  columns:5 190px;
  column-gap:14px;
  max-width:1500px;
  margin:28px auto 70px;
}
.cms-gallery > a{
  position:relative;
  display:inline-block;
  width:100%;
  margin:0 0 14px;
  break-inside:avoid;
  overflow:hidden;
  border-radius:7px;
  background:#061511;
  border:1px solid rgba(255,255,255,.09);
  box-shadow:0 12px 32px rgba(0,0,0,.2);
  vertical-align:top;
}
.cms-gallery picture{
  display:block;
}
.cms-gallery img{
  display:block;
  width:100%;
  height:auto;
  max-height:360px;
  object-fit:cover;
  object-position:center 20%;
  transition:transform .45s cubic-bezier(.2,.7,.2,1),filter .45s ease;
}
.cms-gallery > a::after{
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
  background:
    linear-gradient(180deg,transparent 55%,rgba(2,9,7,.38)),
    radial-gradient(circle at 50% 20%,rgba(9,219,163,.08),transparent 48%);
  opacity:.35;
  transition:opacity .35s ease;
}
.cms-gallery > a:hover img{
  transform:scale(1.045);
  filter:saturate(1.08) contrast(1.03);
}
.cms-gallery > a:hover::after{
  opacity:.75;
}
.gallery-season{
  margin:25px auto 0;
  max-width:1500px;
}

@media(max-width:1100px){
  .tilt-prev{left:4vw}
  .tilt-next{right:4vw}
  .cms-gallery{columns:4 180px}
}
@media(max-width:820px){
  .tilt-nav{
    width:46px;
    height:46px;
    font-size:36px;
  }
  .tilt-prev{left:10px}
  .tilt-next{right:10px}
  .cms-gallery{
    columns:3 150px;
    column-gap:10px;
    margin-bottom:52px;
  }
  .cms-gallery > a{margin-bottom:10px}
  .cms-gallery img{max-height:310px}
}
@media(max-width:560px){
  .tilt-nav{
    top:auto;
    bottom:0;
    transform:none!important;
  }
  .tilt-prev{left:calc(50% - 58px)}
  .tilt-next{right:calc(50% - 58px)}
  .tilt-carousel-shell{padding-bottom:78px!important}
  .cms-gallery{
    columns:2 130px;
    column-gap:8px;
    margin-top:20px;
  }
  .cms-gallery > a{margin-bottom:8px;border-radius:5px}
  .cms-gallery img{max-height:260px}
}


/* =========================================================
   HOTFIX 3.1.4 – restored content sections
   ========================================================= */
.values-section{
  position:relative;
  overflow:hidden;
  background:
    radial-gradient(circle at 50% 120%,rgba(9,219,163,.12),transparent 48%),
    #020b08;
}
.values-grid article{
  position:relative;
  min-height:190px;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  transition:transform .35s ease,background .35s ease;
}
.values-grid article:hover{
  transform:translateY(-7px);
  background:rgba(9,219,163,.035);
}
.value-icon{
  width:58px;
  height:58px;
  display:grid!important;
  place-items:center;
  margin:0 auto 14px;
  color:var(--teal);
}
.value-icon svg{
  width:100%;
  height:100%;
  fill:none;
  stroke:currentColor;
  stroke-width:2.2;
  stroke-linecap:round;
  stroke-linejoin:round;
  filter:drop-shadow(0 0 13px rgba(9,219,163,.18));
}
.values-grid article:hover .value-icon{
  color:var(--gold);
}
.booking-copy h2 em,
.partners-section .section-heading h2 em{
  color:var(--teal);
  font-style:normal;
}
.booking-section .button{
  width:auto;
}
.partners-section{
  border-top:1px solid var(--line);
  border-bottom:1px solid var(--line);
}
.support-section{
  border-bottom:1px solid var(--line);
}
.support-inner h2{
  color:var(--gold);
}
@media(max-width:900px){
  .values-grid{grid-template-columns:repeat(2,1fr)}
  .values-grid article:nth-child(even){border-right:0}
}
@media(max-width:560px){
  .values-grid{grid-template-columns:1fr}
  .values-grid article{
    min-height:155px;
    border-right:0;
    border-bottom:1px solid rgba(255,215,0,.2);
  }
  .values-grid article:last-child{border-bottom:0}
  .booking-section .button{width:100%}
}


/* =========================================================
   HOTFIX 3.1.5 – compact gallery + mobile swipe + accessibility
   ========================================================= */

.skip-link{
  position:fixed;
  left:14px;
  top:12px;
  z-index:20000;
  padding:12px 16px;
  background:#ffd700;
  color:#02110e;
  font-weight:800;
  transform:translateY(-160%);
  transition:transform .2s ease;
}
.skip-link:focus{transform:translateY(0)}

:where(a,button,input,select,textarea,summary,[tabindex]):focus-visible{
  outline:3px solid #ffd700;
  outline-offset:4px;
}

.button-teal{
  color:#02110e!important;
  text-shadow:none;
}
.menu-toggle,
.social-head a,
.lightbox button,
.tilt-nav{
  min-width:44px;
  min-height:44px;
}
.menu-toggle span{pointer-events:none}

.gallery-swipe-hint{
  display:none;
  max-width:1500px;
  margin:8px auto 14px;
  color:var(--muted);
  font-size:13px;
}

/* Desktop: compact, regular grid instead of a long masonry column flow. */
.cms-gallery{
  display:grid;
  grid-template-columns:repeat(6,minmax(0,1fr));
  gap:10px;
  columns:auto;
  max-width:1500px;
  margin:24px auto 64px;
}
.cms-gallery > a{
  display:block;
  width:auto;
  margin:0;
  break-inside:auto;
  aspect-ratio:4 / 5;
  scroll-snap-align:start;
}
.cms-gallery picture,
.cms-gallery img{
  width:100%;
  height:100%;
}
.cms-gallery img{
  max-height:none;
  object-fit:cover;
  object-position:center 20%;
}

/* Avoid motion for users who explicitly request less motion. */
@media (prefers-reduced-motion:reduce){
  *,
  *::before,
  *::after{
    scroll-behavior:auto!important;
    animation-duration:.01ms!important;
    animation-iteration-count:1!important;
    transition-duration:.01ms!important;
  }
}

@media(max-width:1200px){
  .cms-gallery{grid-template-columns:repeat(5,minmax(0,1fr))}
}
@media(max-width:980px){
  .cms-gallery{grid-template-columns:repeat(4,minmax(0,1fr))}
}
@media(max-width:720px){
  .gallery-swipe-hint{display:block}
  .cms-gallery{
    display:grid;
    grid-auto-flow:column;
    grid-template-columns:none;
    grid-template-rows:1fr;
    grid-auto-columns:calc((100% - 9px)/2);
    gap:9px;
    overflow-x:auto;
    overflow-y:hidden;
    overscroll-behavior-inline:contain;
    scroll-snap-type:x mandatory;
    scroll-padding-inline:0;
    padding:2px 0 14px;
    margin:12px 0 48px;
    scrollbar-width:none;
    -webkit-overflow-scrolling:touch;
  }
  .cms-gallery::-webkit-scrollbar{display:none}
  .cms-gallery > a{
    aspect-ratio:4 / 5;
    scroll-snap-align:start;
    scroll-snap-stop:always;
  }
  .cms-gallery > a:hover img{transform:none}
}


/* =========================================================
   HOTFIX 3.1.8 – verified section order, team glitter, mobile values
   ========================================================= */

/* Team section: glitter only, explicitly no laser beams. */
.team-section{
  position:relative;
  overflow:hidden;
  isolation:isolate;
}
.team-section > :not(.team-glitter){
  position:relative;
  z-index:2;
}
.team-glitter{
  position:absolute;
  inset:0;
  z-index:1;
  pointer-events:none;
  opacity:.92;
  background-image:
    radial-gradient(circle at 8% 22%, rgba(255,215,0,.95) 0 1.2px, transparent 2.4px),
    radial-gradient(circle at 21% 68%, rgba(255,255,255,.9) 0 1px, transparent 2px),
    radial-gradient(circle at 37% 31%, rgba(9,219,163,.85) 0 1.1px, transparent 2.2px),
    radial-gradient(circle at 52% 78%, rgba(255,215,0,.9) 0 1.2px, transparent 2.4px),
    radial-gradient(circle at 67% 18%, rgba(255,255,255,.85) 0 1px, transparent 2px),
    radial-gradient(circle at 79% 59%, rgba(9,219,163,.82) 0 1.1px, transparent 2.2px),
    radial-gradient(circle at 93% 34%, rgba(255,215,0,.92) 0 1.2px, transparent 2.4px);
  background-size:
    150px 150px,
    210px 210px,
    185px 185px,
    245px 245px,
    175px 175px,
    225px 225px,
    195px 195px;
  animation:teamGlitterDrift 18s linear infinite;
  filter:drop-shadow(0 0 5px rgba(255,215,0,.22));
}
.team-glitter::before,
.team-glitter::after{
  content:"";
  position:absolute;
  width:180px;
  height:180px;
  border-radius:50%;
  background:radial-gradient(circle,rgba(9,219,163,.14),transparent 68%);
  filter:blur(16px);
}
.team-glitter::before{left:8%;top:12%}
.team-glitter::after{right:6%;bottom:10%;background:radial-gradient(circle,rgba(255,215,0,.12),transparent 68%)}
@keyframes teamGlitterDrift{
  from{background-position:0 0,0 0,0 0,0 0,0 0,0 0,0 0}
  to{background-position:150px 90px,-210px 120px,185px -90px,-245px 140px,175px 110px,-225px -130px,195px 100px}
}

/* Make section sequence visually explicit and remove accidental margin collapse. */
#team + #events,
#events + #values,
#values + #gallery{
  margin-top:0;
}

/* Values: guarantee SVG visibility on every breakpoint. */
.values-section .value-icon{
  display:grid!important;
  visibility:visible!important;
  opacity:1!important;
  width:52px!important;
  height:52px!important;
  margin:0 auto 12px!important;
  color:var(--teal)!important;
}
.values-section .value-icon svg{
  display:block!important;
  width:100%!important;
  height:100%!important;
  overflow:visible!important;
  stroke:currentColor!important;
  fill:none!important;
}
.values-section .values-grid article{
  min-height:0!important;
}

/* Smartphone: compact two-column values layout with visible icons. */
@media(max-width:560px){
  .values-section{
    padding:34px 16px!important;
  }
  .values-section > .eyebrow{
    margin-bottom:18px!important;
  }
  .values-grid{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:8px!important;
  }
  .values-grid article{
    min-height:126px!important;
    padding:14px 8px!important;
    border:1px solid rgba(255,215,0,.18)!important;
    border-radius:8px!important;
    background:rgba(6,24,19,.58)!important;
    justify-content:flex-start!important;
  }
  .values-grid article:last-child{
    grid-column:1 / -1;
    width:calc(50% - 4px);
    justify-self:center;
  }
  .values-section .value-icon{
    width:38px!important;
    height:38px!important;
    margin-bottom:7px!important;
  }
  .values-grid h3{
    margin:2px 0 5px!important;
    font-size:10px!important;
    line-height:1.2!important;
  }
  .values-grid p{
    margin:0!important;
    font-size:10px!important;
    line-height:1.35!important;
  }
  .team-glitter{
    opacity:.72;
    background-size:120px 120px,165px 165px,140px 140px,190px 190px,130px 130px,175px 175px,150px 150px;
  }
}

@media(prefers-reduced-motion:reduce){
  .team-glitter{animation:none!important}
}

#about .values-section,#about-values{margin-top:40px;padding-top:20px;border-top:1px solid rgba(255,255,255,.08)}

/* HOTFIX 3.2.0 – deterministic document order */
main{display:block!important}
main>section,.about .values-section{order:initial!important;grid-row:auto!important;grid-column:auto!important}
.values-within-about{grid-column:1/-1;width:100%;margin-top:0!important;padding-top:42px!important;border-top:1px solid rgba(255,255,255,.08)}
.about.split-section{display:grid;grid-template-columns:1fr 1fr;align-items:stretch}
@media(max-width:760px){.about.split-section{grid-template-columns:1fr}.values-within-about{padding-top:28px!important}}


/* =========================================================
   DANZARIA BUILD 3.2.1
   Full-width values section, premium glitter, responsive UX
   ========================================================= */

/*
 * The values block is nested in the two-column ABOUT grid.
 * Force it to break out to the viewport edge while keeping its
 * content aligned with the site's normal content width.
 */
.about.split-section{
  overflow:visible;
}
.values-within-about{
  position:relative;
  isolation:isolate;
  grid-column:1 / -1!important;
  width:100vw!important;
  max-width:none!important;
  margin:clamp(42px,6vw,88px) 0 0 calc(50% - 50vw)!important;
  padding:clamp(58px,6vw,92px) max(6vw,calc((100vw - 1500px)/2))!important;
  overflow:hidden;
  border-top:1px solid rgba(255,215,0,.22)!important;
  border-bottom:1px solid rgba(9,219,163,.2)!important;
  background:
    radial-gradient(circle at 12% 50%,rgba(9,219,163,.12),transparent 30%),
    radial-gradient(circle at 88% 38%,rgba(255,215,0,.08),transparent 28%),
    linear-gradient(180deg,#020b08 0%,#03140f 52%,#020b08 100%)!important;
}
.values-inner{
  position:relative;
  z-index:3;
  width:min(1500px,100%);
  margin-inline:auto;
}
.values-within-about > .values-glitter{
  position:absolute;
  inset:0;
  z-index:1;
  pointer-events:none;
  opacity:.88;
  background-image:
    radial-gradient(circle at 7% 17%,rgba(255,215,0,.95) 0 1.2px,transparent 2.5px),
    radial-gradient(circle at 18% 72%,rgba(255,255,255,.92) 0 1px,transparent 2px),
    radial-gradient(circle at 29% 38%,rgba(9,219,163,.92) 0 1.15px,transparent 2.3px),
    radial-gradient(circle at 43% 84%,rgba(255,215,0,.88) 0 1.1px,transparent 2.3px),
    radial-gradient(circle at 57% 22%,rgba(255,255,255,.86) 0 1px,transparent 2px),
    radial-gradient(circle at 69% 65%,rgba(9,219,163,.9) 0 1.15px,transparent 2.3px),
    radial-gradient(circle at 82% 31%,rgba(255,215,0,.9) 0 1.2px,transparent 2.5px),
    radial-gradient(circle at 94% 78%,rgba(255,255,255,.88) 0 1px,transparent 2px);
  background-size:
    155px 155px,
    215px 215px,
    185px 185px,
    250px 250px,
    175px 175px,
    230px 230px,
    195px 195px,
    265px 265px;
  animation:valuesGlitterDrift 22s linear infinite;
  filter:drop-shadow(0 0 6px rgba(255,215,0,.18));
}
.values-within-about > .values-glitter::before,
.values-within-about > .values-glitter::after{
  content:"";
  position:absolute;
  pointer-events:none;
  border-radius:50%;
  filter:blur(18px);
}
.values-within-about > .values-glitter::before{
  left:-70px;
  top:18%;
  width:300px;
  height:300px;
  background:radial-gradient(circle,rgba(9,219,163,.19),rgba(9,219,163,.06) 42%,transparent 70%);
  animation:valuesPulse 7s ease-in-out infinite;
}
.values-within-about > .values-glitter::after{
  right:-70px;
  bottom:4%;
  width:260px;
  height:260px;
  background:radial-gradient(circle,rgba(255,215,0,.14),rgba(255,215,0,.035) 44%,transparent 72%);
  animation:valuesPulse 8s ease-in-out infinite reverse;
}
@keyframes valuesGlitterDrift{
  from{background-position:0 0,0 0,0 0,0 0,0 0,0 0,0 0,0 0}
  to{background-position:155px 90px,-215px 130px,185px -100px,-250px 150px,175px 105px,-230px -135px,195px 115px,-265px 145px}
}
@keyframes valuesPulse{
  0%,100%{transform:scale(.88);opacity:.55}
  50%{transform:scale(1.08);opacity:1}
}

.values-within-about > .values-inner > .eyebrow{
  margin:0 0 clamp(28px,3vw,46px)!important;
  text-align:left;
}
.values-within-about .values-grid{
  display:grid!important;
  grid-template-columns:repeat(5,minmax(0,1fr))!important;
  gap:0!important;
  width:100%!important;
}
.values-within-about .values-grid article{
  position:relative;
  min-height:240px!important;
  padding:clamp(24px,2.4vw,42px) clamp(18px,2vw,34px)!important;
  display:flex!important;
  flex-direction:column!important;
  align-items:center!important;
  justify-content:center!important;
  text-align:center!important;
  border-right:1px solid rgba(255,215,0,.24)!important;
  border-bottom:0!important;
  background:linear-gradient(180deg,rgba(255,255,255,.015),rgba(9,219,163,.018))!important;
  transition:
    transform .35s cubic-bezier(.2,.75,.25,1),
    background .35s ease,
    box-shadow .35s ease!important;
}
.values-within-about .values-grid article:last-child{
  border-right:0!important;
}
.values-within-about .values-grid article::before{
  content:"";
  position:absolute;
  inset:12px;
  border:1px solid transparent;
  border-radius:8px;
  pointer-events:none;
  transition:border-color .35s ease,box-shadow .35s ease;
}
.values-within-about .values-grid article:hover{
  transform:translateY(-10px)!important;
  background:linear-gradient(180deg,rgba(9,219,163,.07),rgba(255,215,0,.025))!important;
  box-shadow:0 20px 50px rgba(0,0,0,.24)!important;
}
.values-within-about .values-grid article:hover::before{
  border-color:rgba(9,219,163,.3);
  box-shadow:inset 0 0 26px rgba(9,219,163,.04),0 0 24px rgba(9,219,163,.05);
}
.values-within-about .value-icon{
  width:clamp(64px,5.2vw,86px)!important;
  height:clamp(64px,5.2vw,86px)!important;
  margin:0 auto clamp(18px,1.7vw,26px)!important;
  color:var(--teal)!important;
  transition:color .3s ease,transform .35s ease,filter .35s ease!important;
}
.values-within-about .value-icon svg{
  display:block!important;
  width:100%!important;
  height:100%!important;
  stroke-width:1.75!important;
  filter:drop-shadow(0 0 14px rgba(9,219,163,.25))!important;
}
.values-within-about article:hover .value-icon{
  color:var(--gold)!important;
  transform:translateY(-4px) scale(1.07) rotate(-2deg)!important;
  filter:drop-shadow(0 0 18px rgba(255,215,0,.28))!important;
}
.values-within-about .values-grid h3{
  margin:0 0 12px!important;
  color:var(--gold)!important;
  font-size:clamp(12px,1vw,16px)!important;
  line-height:1.25!important;
  letter-spacing:.035em!important;
}
.values-within-about .values-grid p{
  max-width:210px;
  margin:0!important;
  color:#c7d7d1!important;
  font-size:clamp(11px,.86vw,14px)!important;
  line-height:1.65!important;
}

/* Tablet: balanced 3 + 2 layout. */
@media(max-width:980px){
  .values-within-about .values-grid{
    grid-template-columns:repeat(3,minmax(0,1fr))!important;
    gap:1px!important;
  }
  .values-within-about .values-grid article{
    min-height:205px!important;
    border-right:1px solid rgba(255,215,0,.2)!important;
    border-bottom:1px solid rgba(255,215,0,.15)!important;
  }
  .values-within-about .values-grid article:nth-child(3){
    border-right:0!important;
  }
  .values-within-about .values-grid article:nth-child(4){
    grid-column:1 / 2;
  }
  .values-within-about .values-grid article:nth-child(5){
    grid-column:2 / 4;
    border-right:0!important;
  }
}

/* Smartphone: compact two-column layout, minimal whitespace. */
@media(max-width:600px){
  .values-within-about{
    margin-top:34px!important;
    padding:34px 14px 38px!important;
  }
  .values-within-about > .values-inner > .eyebrow{
    margin-bottom:16px!important;
    padding-left:4px;
  }
  .values-within-about .values-grid{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:8px!important;
  }
  .values-within-about .values-grid article{
    min-height:142px!important;
    padding:14px 9px!important;
    border:1px solid rgba(255,215,0,.16)!important;
    border-radius:8px!important;
    background:rgba(5,22,17,.7)!important;
  }
  .values-within-about .values-grid article:nth-child(3),
  .values-within-about .values-grid article:nth-child(4),
  .values-within-about .values-grid article:nth-child(5){
    grid-column:auto!important;
  }
  .values-within-about .values-grid article:last-child{
    grid-column:1 / -1!important;
    width:calc(50% - 4px)!important;
    justify-self:center!important;
  }
  .values-within-about .value-icon{
    width:42px!important;
    height:42px!important;
    margin-bottom:8px!important;
  }
  .values-within-about .values-grid h3{
    margin-bottom:5px!important;
    font-size:10px!important;
    line-height:1.15!important;
  }
  .values-within-about .values-grid p{
    max-width:145px!important;
    font-size:9.5px!important;
    line-height:1.35!important;
  }
  .values-within-about > .values-glitter{
    opacity:.62;
    background-size:120px 120px,160px 160px,135px 135px,185px 185px,130px 130px,170px 170px,145px 145px,195px 195px;
  }
}

/* Accessibility / performance: no continuous motion when disabled. */
@media(prefers-reduced-motion:reduce){
  .values-within-about > .values-glitter,
  .values-within-about > .values-glitter::before,
  .values-within-about > .values-glitter::after{
    animation:none!important;
  }
  .values-within-about .values-grid article,
  .values-within-about .value-icon{
    transition:none!important;
  }
}


/* =========================================================
   DANZARIA BUILD 3.2.2
   Pointer glow + sparkle trail + restored event photography
   ========================================================= */

.cursor-glow{
  position:fixed;
  left:0;
  top:0;
  width:460px;
  height:460px;
  z-index:1;
  pointer-events:none;
  border-radius:50%;
  opacity:0;
  transform:translate3d(-50%,-50%,0);
  background:
    radial-gradient(circle,
      rgba(9,219,163,.17) 0%,
      rgba(6,173,145,.09) 28%,
      rgba(255,215,0,.035) 46%,
      transparent 70%);
  mix-blend-mode:screen;
  filter:blur(2px);
  transition:opacity .28s ease;
  will-change:left,top,opacity;
}
.cursor-glow.is-visible{opacity:1}

.cursor-sparkles{
  position:fixed;
  inset:0;
  z-index:150;
  pointer-events:none;
  overflow:hidden;
}
.pointer-spark{
  position:absolute;
  width:4px;
  height:4px;
  margin:-2px 0 0 -2px;
  border-radius:50%;
  background:var(--gold);
  box-shadow:
    0 0 7px rgba(255,215,0,.85),
    0 0 13px rgba(9,219,163,.35);
  animation:pointerSparkFade .75s cubic-bezier(.2,.7,.2,1) forwards;
  will-change:transform,opacity;
}
.pointer-spark:nth-child(3n){
  background:var(--teal);
  box-shadow:0 0 7px rgba(9,219,163,.9);
}
.pointer-spark:nth-child(4n){
  width:3px;
  height:3px;
  background:#fff;
}
@keyframes pointerSparkFade{
  0%{
    opacity:.95;
    transform:translate3d(0,0,0) scale(1);
  }
  100%{
    opacity:0;
    transform:translate3d(var(--spark-x),var(--spark-y),0) scale(.15);
  }
}

/* Ensure the three request cards visibly use their photographs. */
.date-card-service{
  background-size:cover!important;
  background-position:center 14%!important;
  background-repeat:no-repeat!important;
  isolation:isolate;
  transition:transform .35s ease,border-color .35s ease,box-shadow .35s ease;
}
.date-card-service::before{
  content:"";
  position:absolute;
  inset:0;
  z-index:0;
  pointer-events:none;
  background:
    linear-gradient(90deg,
      rgba(2,9,7,.96) 0%,
      rgba(2,9,7,.78) 43%,
      rgba(2,9,7,.31) 75%,
      rgba(2,9,7,.16) 100%);
}
.date-card-service::after{
  background:
    linear-gradient(180deg,rgba(9,219,163,.035),rgba(2,9,7,.2))!important;
}
.date-card-service .date-copy{
  position:relative;
  z-index:2;
}
.date-card-service:hover{
  transform:translateY(-6px);
  border-color:rgba(9,219,163,.55);
  box-shadow:0 20px 55px rgba(0,0,0,.3);
}
.date-card-service:nth-child(1){background-position:center 12%!important}
.date-card-service:nth-child(2){background-position:center 10%!important}
.date-card-service:nth-child(3){background-position:center 11%!important}

/* Keep content above the ambient pointer light. */
.site-header,
main,
.site-footer,
.staging-banner{
  position:relative;
  z-index:2;
}

@media(hover:none),(pointer:coarse),(max-width:820px){
  .cursor-glow,
  .cursor-sparkles{
    display:none!important;
  }
  .date-card-service:hover{
    transform:none;
  }
}
@media(prefers-reduced-motion:reduce){
  .cursor-glow,
  .cursor-sparkles{
    display:none!important;
  }
  .date-card-service{
    transition:none!important;
  }
}


/* =========================================================
   DANZARIA BUILD 3.2.3
   Values section: full viewport width, no particle effect
   ========================================================= */

/* Remove all decorative particles and glows from the values section. */
.values-within-about > .values-glitter,
.values-within-about > .values-glitter::before,
.values-within-about > .values-glitter::after{
  display:none!important;
  content:none!important;
  animation:none!important;
  background:none!important;
  box-shadow:none!important;
  filter:none!important;
}

/*
 * True edge-to-edge section:
 * positioned relative to the viewport instead of the ABOUT content column.
 */
.values-within-about{
  position:relative!important;
  left:50%!important;
  right:50%!important;
  width:100vw!important;
  max-width:100vw!important;
  margin-left:-50vw!important;
  margin-right:-50vw!important;
  margin-top:clamp(42px,6vw,88px)!important;
  padding:
    clamp(54px,5vw,84px)
    max(32px,calc((100vw - 1600px)/2))
    clamp(58px,5.5vw,92px)!important;
  overflow:hidden!important;
  background:
    radial-gradient(circle at 15% 40%,rgba(9,219,163,.07),transparent 32%),
    radial-gradient(circle at 84% 58%,rgba(255,215,0,.045),transparent 30%),
    linear-gradient(180deg,#020b08 0%,#03120e 50%,#020b08 100%)!important;
  border-top:1px solid rgba(255,215,0,.22)!important;
  border-bottom:1px solid rgba(9,219,163,.2)!important;
}

/* The content itself may use the full width, not a half-width inner container. */
.values-within-about .values-inner{
  width:100%!important;
  max-width:none!important;
  margin:0!important;
  padding:0!important;
}

.values-within-about .values-grid{
  width:100%!important;
  max-width:none!important;
  display:grid!important;
  grid-template-columns:repeat(5,minmax(0,1fr))!important;
  gap:0!important;
}

.values-within-about .values-grid article{
  width:100%!important;
  min-width:0!important;
  min-height:225px!important;
  padding:clamp(22px,2.3vw,38px) clamp(16px,1.8vw,30px)!important;
  background:transparent!important;
  box-shadow:none!important;
  border-right:1px solid rgba(255,215,0,.22)!important;
}

.values-within-about .values-grid article:last-child{
  border-right:0!important;
}

.values-within-about .values-grid article:hover{
  background:rgba(9,219,163,.035)!important;
  box-shadow:none!important;
  transform:translateY(-6px)!important;
}

.values-within-about .values-grid article::before{
  display:none!important;
}

.values-within-about .value-icon{
  width:clamp(62px,4.4vw,82px)!important;
  height:clamp(62px,4.4vw,82px)!important;
}

/* Tablet: 3 + 2, still full viewport width. */
@media(max-width:980px){
  .values-within-about{
    padding-left:24px!important;
    padding-right:24px!important;
  }

  .values-within-about .values-grid{
    grid-template-columns:repeat(3,minmax(0,1fr))!important;
  }

  .values-within-about .values-grid article{
    border-bottom:1px solid rgba(255,215,0,.15)!important;
  }

  .values-within-about .values-grid article:nth-child(3){
    border-right:0!important;
  }

  .values-within-about .values-grid article:nth-child(4){
    grid-column:1 / 2!important;
  }

  .values-within-about .values-grid article:nth-child(5){
    grid-column:2 / 4!important;
    border-right:0!important;
  }
}

/* Mobile: compact 2 + 2 + 1, no empty particle area. */
@media(max-width:600px){
  .values-within-about{
    width:100vw!important;
    max-width:100vw!important;
    margin-left:-50vw!important;
    margin-right:-50vw!important;
    margin-top:30px!important;
    padding:30px 12px 34px!important;
    background:linear-gradient(180deg,#020b08 0%,#03120e 52%,#020b08 100%)!important;
  }

  .values-within-about .values-grid{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:8px!important;
  }

  .values-within-about .values-grid article{
    min-height:136px!important;
    padding:13px 8px!important;
    border:1px solid rgba(255,215,0,.17)!important;
    border-radius:8px!important;
    background:rgba(5,20,16,.68)!important;
  }

  .values-within-about .values-grid article:nth-child(3),
  .values-within-about .values-grid article:nth-child(4){
    grid-column:auto!important;
  }

  .values-within-about .values-grid article:nth-child(5){
    grid-column:1 / -1!important;
    width:calc(50% - 4px)!important;
    justify-self:center!important;
  }

  .values-within-about .value-icon{
    width:40px!important;
    height:40px!important;
    margin-bottom:8px!important;
  }
}


/* =========================================================
   DANZARIA BUILD 3.2.4
   Structural full-width values section – no viewport breakout hack
   ========================================================= */

/* Neutralize all previous nested-breakout rules. */
.values-within-about{
  all:unset;
}

.values-fullwidth{
  position:relative;
  display:block;
  width:100%;
  max-width:none;
  margin:0;
  padding:
    clamp(52px,5vw,82px)
    max(28px,calc((100% - 1600px)/2))
    clamp(56px,5.5vw,90px);
  overflow:hidden;
  border-top:1px solid rgba(255,215,0,.22);
  border-bottom:1px solid rgba(9,219,163,.2);
  background:
    radial-gradient(circle at 15% 45%,rgba(9,219,163,.065),transparent 31%),
    radial-gradient(circle at 84% 55%,rgba(255,215,0,.04),transparent 29%),
    linear-gradient(180deg,#020b08 0%,#03120e 50%,#020b08 100%);
}

.values-fullwidth .values-inner{
  width:100%;
  max-width:none;
  margin:0;
  padding:0;
}

.values-fullwidth > .values-inner > .eyebrow{
  margin:0 0 clamp(26px,3vw,44px);
}

.values-fullwidth .values-grid{
  display:grid;
  grid-template-columns:repeat(5,minmax(0,1fr));
  width:100%;
  max-width:none;
  gap:0;
}

.values-fullwidth .values-grid article{
  position:relative;
  width:100%;
  min-width:0;
  min-height:220px;
  padding:clamp(22px,2.2vw,38px) clamp(14px,1.7vw,28px);
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  text-align:center;
  border-right:1px solid rgba(255,215,0,.22);
  border-bottom:0;
  background:transparent;
  box-shadow:none;
  transition:background .3s ease,transform .3s ease;
}

.values-fullwidth .values-grid article:last-child{
  border-right:0;
}

.values-fullwidth .values-grid article:hover{
  background:rgba(9,219,163,.035);
  transform:translateY(-5px);
}

.values-fullwidth .values-grid article::before,
.values-fullwidth .values-glitter{
  display:none!important;
}

.values-fullwidth .value-icon{
  display:grid!important;
  place-items:center;
  visibility:visible!important;
  opacity:1!important;
  width:clamp(60px,4.3vw,80px)!important;
  height:clamp(60px,4.3vw,80px)!important;
  margin:0 auto clamp(16px,1.5vw,24px)!important;
  color:var(--teal)!important;
}

.values-fullwidth .value-icon svg{
  display:block!important;
  width:100%!important;
  height:100%!important;
  fill:none!important;
  stroke:currentColor!important;
  stroke-width:1.8!important;
  overflow:visible!important;
}

.values-fullwidth h3{
  margin:0 0 10px!important;
  color:var(--gold)!important;
}

.values-fullwidth p{
  margin:0!important;
  max-width:215px;
}

/* Prevent horizontal page overflow caused by older negative-margin rules. */
html,body{
  max-width:100%;
  overflow-x:clip;
}

@media(max-width:980px){
  .values-fullwidth{
    padding-left:22px;
    padding-right:22px;
  }

  .values-fullwidth .values-grid{
    grid-template-columns:repeat(3,minmax(0,1fr));
  }

  .values-fullwidth .values-grid article{
    min-height:190px;
    border-bottom:1px solid rgba(255,215,0,.15);
  }

  .values-fullwidth .values-grid article:nth-child(3){
    border-right:0;
  }

  .values-fullwidth .values-grid article:nth-child(4){
    grid-column:1 / 2;
  }

  .values-fullwidth .values-grid article:nth-child(5){
    grid-column:2 / 4;
    border-right:0;
  }
}

@media(max-width:600px){
  .values-fullwidth{
    padding:30px 12px 34px;
  }

  .values-fullwidth > .values-inner > .eyebrow{
    margin-bottom:16px;
  }

  .values-fullwidth .values-grid{
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:8px;
  }

  .values-fullwidth .values-grid article{
    min-height:134px;
    padding:13px 8px;
    border:1px solid rgba(255,215,0,.17);
    border-radius:8px;
    background:rgba(5,20,16,.68);
  }

  .values-fullwidth .values-grid article:nth-child(3),
  .values-fullwidth .values-grid article:nth-child(4){
    grid-column:auto;
  }

  .values-fullwidth .values-grid article:nth-child(5){
    grid-column:1 / -1;
    width:calc(50% - 4px);
    justify-self:center;
  }

  .values-fullwidth .value-icon{
    width:40px!important;
    height:40px!important;
    margin-bottom:8px!important;
  }

  .values-fullwidth h3{
    font-size:10px!important;
    margin-bottom:5px!important;
  }

  .values-fullwidth p{
    font-size:9.5px!important;
    line-height:1.35!important;
    max-width:145px;
  }
}


/* DANZARIA BUILD 3.2.5 – complete scrollable mobile menu */
.mobile-nav-head,.mobile-nav-social{display:none}
@media(min-width:821px){
  .main-nav>a[href="#main-content"]{display:none}
}
@media(max-width:820px){
  .site-header{z-index:1000!important}
  .main-nav{
    position:fixed!important;
    inset:0!important;
    z-index:999!important;
    height:100dvh!important;
    min-height:100vh!important;
    width:100%!important;
    box-sizing:border-box!important;
    display:flex!important;
    flex-direction:column!important;
    align-items:stretch!important;
    justify-content:flex-start!important;
    gap:0!important;
    padding:max(94px,calc(env(safe-area-inset-top) + 82px)) 24px max(32px,calc(env(safe-area-inset-bottom) + 24px))!important;
    overflow-x:hidden!important;
    overflow-y:auto!important;
    overscroll-behavior:contain!important;
    -webkit-overflow-scrolling:touch!important;
    background:
      radial-gradient(circle at 75% 12%,rgba(9,219,163,.12),transparent 32%),
      linear-gradient(180deg,rgba(2,9,7,.995),rgba(3,18,14,.995))!important;
    transform:translateX(100%)!important;
    transition:transform .34s cubic-bezier(.2,.75,.25,1)!important;
    scrollbar-width:thin;
    scrollbar-color:rgba(9,219,163,.45) transparent;
  }
  .main-nav.open{transform:translateX(0)!important}
  .main-nav::-webkit-scrollbar{width:4px}
  .main-nav::-webkit-scrollbar-thumb{background:rgba(9,219,163,.45);border-radius:4px}

  .mobile-nav-head{
    display:flex!important;
    flex-direction:column;
    gap:4px;
    margin:0 0 18px;
    padding:0 0 18px;
    border-bottom:1px solid rgba(255,215,0,.23);
  }
  .mobile-nav-head span{
    color:var(--gold);
    font-family:var(--display);
    font-size:clamp(28px,9vw,42px);
    line-height:1;
  }
  .mobile-nav-head small{
    color:var(--teal);
    font-size:9px;
    letter-spacing:.24em;
  }

  .main-nav>a{
    display:flex!important;
    align-items:center;
    justify-content:space-between;
    flex:0 0 auto!important;
    min-height:52px!important;
    width:100%!important;
    padding:13px 4px!important;
    border-bottom:1px solid rgba(255,255,255,.09);
    color:#f7faf8!important;
    font-size:clamp(16px,5vw,21px)!important;
    font-weight:700;
    line-height:1.2;
    letter-spacing:.035em!important;
    text-align:left;
    text-transform:uppercase;
  }
  .main-nav>a::after{
    content:"→"!important;
    position:static!important;
    width:auto!important;
    height:auto!important;
    margin-left:18px;
    color:var(--teal);
    background:none!important;
    font-size:18px;
    opacity:.82;
  }
  .main-nav>a:hover,.main-nav>a:focus-visible{
    color:var(--gold)!important;
    padding-left:10px!important;
  }

  .main-nav .mobile-booking-link{
    margin:20px 0 12px;
    padding:16px 18px!important;
    border:1px solid rgba(9,219,163,.7)!important;
    border-radius:4px;
    background:linear-gradient(135deg,#09b995,#09dba3)!important;
    color:#02110e!important;
    box-shadow:0 14px 38px rgba(9,219,163,.14);
  }
  .main-nav .mobile-booking-link::after{color:#02110e!important}

  .mobile-nav-social{
    display:flex!important;
    flex-wrap:wrap;
    gap:10px;
    margin-top:6px;
    padding-top:18px;
  }
  .mobile-nav-social a{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    min-height:44px;
    padding:10px 15px;
    border:1px solid rgba(255,215,0,.26);
    border-radius:3px;
    color:var(--gold);
    font-size:11px;
    font-weight:700;
    letter-spacing:.08em;
    text-transform:uppercase;
  }
  .menu-toggle{position:relative;z-index:1002!important}
  body.menu-open{overflow:hidden!important;touch-action:none}
}
@media(max-width:380px){
  .main-nav{padding-left:18px!important;padding-right:18px!important}
  .main-nav>a{min-height:48px!important;padding-top:11px!important;padding-bottom:11px!important;font-size:16px!important}
}


/* =========================================================
   DANZARIA BUILD 3.2.9
   Values section without hard separator lines
   ========================================================= */
.about.split-section{
  border-bottom:0!important;
}
.values-fullwidth,
.values-section.values-fullwidth{
  border-top:0!important;
  border-bottom:0!important;
}
#about + #about-values,
#about-values + #team{
  border-top:0!important;
}


/* =========================================================
   DANZARIA BUILD 3.3.0
   Centered button labels + legal-page navigation
   ========================================================= */

.button,
button,
input[type="submit"],
input[type="button"],
.legal-back-button{
  text-align:center!important;
}

.button{
  justify-content:center!important;
}

.button > *,
button > *{
  text-align:center!important;
}

.legal-page{
  min-height:100vh;
  background:
    radial-gradient(circle at 20% 12%,rgba(9,219,163,.07),transparent 34%),
    linear-gradient(180deg,#020b08,#03120e 55%,#020b08);
}

.legal-header{
  position:sticky;
  top:0;
  z-index:500;
  min-height:82px;
  display:grid;
  grid-template-columns:auto 1fr auto;
  align-items:center;
  gap:24px;
  padding:10px clamp(18px,4vw,64px);
  background:rgba(2,11,8,.96);
  border-bottom:1px solid rgba(255,255,255,.09);
  backdrop-filter:blur(14px);
}

.legal-header .brand img{
  width:170px;
  height:auto;
  display:block;
}

.legal-nav{
  display:flex;
  justify-content:center;
  align-items:center;
  gap:clamp(16px,2.4vw,36px);
}

.legal-nav a{
  color:#f7faf8;
  font-size:12px;
  font-weight:750;
  letter-spacing:.05em;
  text-transform:uppercase;
  text-decoration:none;
}

.legal-nav a:hover,
.legal-nav a:focus-visible{
  color:var(--gold);
}

.legal-back-button{
  min-height:46px;
  padding:0 18px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  border:1px solid rgba(255,215,0,.46);
  border-radius:3px;
  color:var(--gold);
  font-size:11px;
  font-weight:800;
  letter-spacing:.06em;
  text-transform:uppercase;
  text-decoration:none;
}

.legal-back-button:hover,
.legal-back-button:focus-visible{
  color:#02110e;
  background:var(--gold);
}

.legal-main{
  width:min(1040px,calc(100% - 40px));
  margin:0 auto;
  padding:clamp(70px,8vw,120px) 0 90px;
}

.legal-main h1{
  margin:0 0 38px;
  font:500 clamp(48px,7vw,86px)/.95 Georgia,"Times New Roman",serif;
  letter-spacing:-.03em;
}

.legal-content{
  color:#c5d2ce;
  line-height:1.78;
  overflow-wrap:anywhere;
}

.legal-content h2,
.legal-content h3{
  color:#f7faf8;
  margin-top:42px;
}

.legal-content a{
  color:var(--gold);
  text-decoration-thickness:1px;
  text-underline-offset:3px;
}

.legal-footer-actions{
  display:flex;
  gap:12px;
  flex-wrap:wrap;
  margin-top:54px;
  padding-top:28px;
  border-top:1px solid rgba(255,255,255,.09);
}

.legal-mobile-toggle{
  display:none;
}

@media(max-width:820px){
  .legal-header{
    grid-template-columns:1fr auto;
    min-height:72px;
    padding:8px 16px;
  }

  .legal-header .brand img{
    width:145px;
  }

  .legal-back-button{
    display:none;
  }

  .legal-mobile-toggle{
    width:46px;
    height:46px;
    display:grid;
    place-items:center;
    padding:0;
    border:1px solid rgba(255,255,255,.14);
    background:#061511;
    color:#fff;
    font-size:22px;
  }

  .legal-nav{
    position:fixed;
    inset:72px 0 0;
    z-index:490;
    display:flex;
    flex-direction:column;
    justify-content:flex-start;
    align-items:stretch;
    gap:0;
    padding:24px 20px 40px;
    overflow-y:auto;
    background:rgba(2,11,8,.99);
    transform:translateX(100%);
    transition:transform .28s ease;
  }

  .legal-nav.open{
    transform:translateX(0);
  }

  .legal-nav a{
    min-height:54px;
    display:flex;
    align-items:center;
    justify-content:space-between;
    padding:12px 4px;
    border-bottom:1px solid rgba(255,255,255,.09);
    font-size:17px;
  }

  .legal-nav a::after{
    content:"→";
    color:var(--teal);
  }

  .legal-main{
    width:min(100% - 28px,1040px);
    padding-top:54px;
  }
}


/* =========================================================
   DANZARIA BUILD 3.3.1
   Transparent header + reliable mobile navigation
   ========================================================= */

/* Light, floating header over the hero. */
.site-header{
  background:linear-gradient(
    180deg,
    rgba(2,9,7,.34) 0%,
    rgba(2,9,7,.16) 72%,
    rgba(2,9,7,.06) 100%
  )!important;
  -webkit-backdrop-filter:blur(5px) saturate(115%)!important;
  backdrop-filter:blur(5px) saturate(115%)!important;
  box-shadow:none!important;
  border-bottom-color:rgba(255,255,255,.075)!important;
}

/* Only after scrolling does the header become more solid. */
.site-header.scrolled{
  background:rgba(2,9,7,.84)!important;
  -webkit-backdrop-filter:blur(16px) saturate(125%)!important;
  backdrop-filter:blur(16px) saturate(125%)!important;
  box-shadow:0 10px 34px rgba(0,0,0,.24)!important;
  border-bottom-color:rgba(9,219,163,.13)!important;
}

@media(max-width:900px){
  .site-header{
    background:linear-gradient(
      180deg,
      rgba(2,9,7,.42) 0%,
      rgba(2,9,7,.22) 72%,
      rgba(2,9,7,.08) 100%
    )!important;
  }
  .site-header.scrolled{
    background:rgba(2,9,7,.9)!important;
  }
}

@media(max-width:820px){
  .site-header{
    background:linear-gradient(
      180deg,
      rgba(2,9,7,.48) 0%,
      rgba(2,9,7,.25) 76%,
      rgba(2,9,7,.08) 100%
    )!important;
    -webkit-backdrop-filter:blur(7px)!important;
    backdrop-filter:blur(7px)!important;
  }

  .site-header.scrolled,
  body.menu-open .site-header{
    background:rgba(2,9,7,.94)!important;
    -webkit-backdrop-filter:blur(16px)!important;
    backdrop-filter:blur(16px)!important;
  }

  .menu-toggle{
    display:flex!important;
    flex-direction:column!important;
    align-items:center!important;
    justify-content:center!important;
    gap:6px!important;
    width:48px!important;
    height:48px!important;
    padding:0!important;
    cursor:pointer!important;
    pointer-events:auto!important;
    touch-action:manipulation!important;
  }

  .menu-toggle span{
    display:block!important;
    width:25px!important;
    height:2px!important;
    margin:0!important;
    background:#fff!important;
    transition:transform .24s ease,opacity .24s ease!important;
  }

  .menu-toggle.is-open span:first-child{
    transform:translateY(4px) rotate(45deg)!important;
  }
  .menu-toggle.is-open span:last-child{
    transform:translateY(-4px) rotate(-45deg)!important;
  }

  #main-navigation.open{
    transform:translate3d(0,0,0)!important;
    visibility:visible!important;
    opacity:1!important;
    pointer-events:auto!important;
  }
  #main-navigation:not(.open){
    pointer-events:none!important;
  }
}

@media(prefers-reduced-transparency:reduce){
  .site-header{
    background:rgba(2,9,7,.92)!important;
    -webkit-backdrop-filter:none!important;
    backdrop-filter:none!important;
  }
}


/* =========================================================
   DANZARIA BUILD 3.3.2
   Reliable mobile menu in portrait and iPhone landscape
   ========================================================= */

/* Desktop and wide tablet baseline. */
@media (min-width:1081px){
  .menu-toggle{display:none!important}
  #main-navigation{
    position:static!important;
    transform:none!important;
    visibility:visible!important;
    opacity:1!important;
    pointer-events:auto!important;
  }
  #main-navigation .mobile-nav-head,
  #main-navigation .mobile-nav-social,
  #main-navigation>a[href="#main-content"]{display:none!important}
}

/* Phones, iPhone landscape and compact tablets. */
@media (max-width:1080px){
  .site-header{
    display:grid!important;
    grid-template-columns:minmax(0,1fr) 52px!important;
    align-items:center!important;
    min-height:70px!important;
    padding-left:max(16px,env(safe-area-inset-left))!important;
    padding-right:max(12px,env(safe-area-inset-right))!important;
  }
  .site-header .brand{min-width:0!important}
  .site-header .brand img{width:min(168px,46vw)!important;height:auto!important}
  .social-head{display:none!important}

  .menu-toggle{
    display:flex!important;
    position:relative!important;
    z-index:10002!important;
    align-items:center!important;
    justify-content:center!important;
    flex-direction:column!important;
    gap:6px!important;
    width:48px!important;
    height:48px!important;
    min-width:48px!important;
    min-height:48px!important;
    padding:0!important;
    margin:0!important;
    border:1px solid rgba(255,255,255,.18)!important;
    border-radius:4px!important;
    background:rgba(2,15,11,.58)!important;
    cursor:pointer!important;
    pointer-events:auto!important;
    touch-action:manipulation!important;
  }
  .menu-toggle span{
    display:block!important;
    width:25px!important;
    height:2px!important;
    margin:0!important;
    background:#fff!important;
    pointer-events:none!important;
    transition:transform .22s ease,opacity .22s ease!important;
  }
  .menu-toggle.is-open span:first-child{transform:translateY(4px) rotate(45deg)!important}
  .menu-toggle.is-open span:last-child{transform:translateY(-4px) rotate(-45deg)!important}

  #main-navigation{
    position:fixed!important;
    inset:0!important;
    z-index:10000!important;
    box-sizing:border-box!important;
    width:100vw!important;
    height:100dvh!important;
    min-height:100vh!important;
    display:flex!important;
    flex-direction:column!important;
    align-items:stretch!important;
    justify-content:flex-start!important;
    gap:0!important;
    padding:
      max(88px,calc(env(safe-area-inset-top) + 76px))
      max(22px,env(safe-area-inset-right))
      max(28px,calc(env(safe-area-inset-bottom) + 20px))
      max(22px,env(safe-area-inset-left))!important;
    overflow-y:auto!important;
    overflow-x:hidden!important;
    overscroll-behavior:contain!important;
    -webkit-overflow-scrolling:touch!important;
    background:
      radial-gradient(circle at 78% 8%,rgba(9,219,163,.14),transparent 30%),
      rgba(2,11,8,.985)!important;
    transform:translate3d(100%,0,0)!important;
    visibility:hidden!important;
    opacity:0!important;
    pointer-events:none!important;
    transition:transform .28s ease,opacity .2s ease,visibility 0s linear .28s!important;
  }
  #main-navigation.open{
    transform:translate3d(0,0,0)!important;
    visibility:visible!important;
    opacity:1!important;
    pointer-events:auto!important;
    transition:transform .28s ease,opacity .2s ease,visibility 0s!important;
  }
  #main-navigation .mobile-nav-head{display:flex!important}
  #main-navigation>a{
    display:flex!important;
    flex:0 0 auto!important;
    align-items:center!important;
    justify-content:space-between!important;
    width:100%!important;
    min-height:48px!important;
    padding:10px 4px!important;
    border-bottom:1px solid rgba(255,255,255,.09)!important;
    color:#f7faf8!important;
    font-size:clamp(15px,4.4vw,20px)!important;
    line-height:1.15!important;
    text-align:left!important;
  }
  #main-navigation>a::after{
    content:"→"!important;
    position:static!important;
    width:auto!important;
    height:auto!important;
    margin-left:16px!important;
    background:none!important;
    color:var(--teal)!important;
  }
  #main-navigation .mobile-booking-link{
    margin-top:14px!important;
    padding:13px 16px!important;
    background:linear-gradient(135deg,#09b995,#09dba3)!important;
    color:#02110e!important;
  }
  #main-navigation .mobile-nav-social{display:flex!important}
  html.menu-open,body.menu-open{overflow:hidden!important;overscroll-behavior:none!important}
}

/* Landscape phones have little vertical room: compact menu spacing. */
@media (max-width:1080px) and (orientation:landscape) and (max-height:540px){
  #main-navigation{
    padding-top:max(70px,calc(env(safe-area-inset-top) + 62px))!important;
    padding-bottom:max(14px,env(safe-area-inset-bottom))!important;
  }
  #main-navigation .mobile-nav-head{
    margin-bottom:8px!important;
    padding-bottom:8px!important;
  }
  #main-navigation .mobile-nav-head span{font-size:25px!important}
  #main-navigation>a{min-height:40px!important;padding:7px 4px!important;font-size:15px!important}
  #main-navigation .mobile-booking-link{margin-top:9px!important;padding:10px 14px!important}
  #main-navigation .mobile-nav-social{padding-top:10px!important;margin-top:4px!important}
  #main-navigation .mobile-nav-social a{min-height:38px!important;padding:7px 12px!important}
}


/* =========================================================
   DANZARIA BUILD 3.3.3
   Accessible values spacing + responsive back-to-top control
   ========================================================= */

/* Clear visual separation between section label and cards. */
.values-fullwidth > .values-inner > .eyebrow,
.values-section.values-fullwidth > .values-inner > .eyebrow{
  display:block!important;
  margin:0 0 clamp(28px,3.2vw,46px)!important;
  padding:0!important;
  line-height:1.45!important;
}

/* Improve readability and target size without changing visual identity. */
.values-fullwidth .values-grid article{
  min-height:220px!important;
}
.values-fullwidth .values-grid h3{
  line-height:1.3!important;
}
.values-fullwidth .values-grid p{
  line-height:1.55!important;
}

.back-to-top{
  position:fixed;
  right:max(24px,env(safe-area-inset-right));
  bottom:max(24px,env(safe-area-inset-bottom));
  z-index:850;
  width:50px;
  height:50px;
  display:grid;
  place-items:center;
  padding:0;
  border:1px solid rgba(9,219,163,.72);
  border-radius:50%;
  background:rgba(2,15,11,.9);
  color:var(--gold);
  font-size:24px;
  line-height:1;
  box-shadow:0 10px 32px rgba(0,0,0,.34),0 0 18px rgba(9,219,163,.12);
  backdrop-filter:blur(12px);
  opacity:0;
  visibility:hidden;
  pointer-events:none;
  transform:translateY(14px) scale(.94);
  transition:opacity .24s ease,transform .24s ease,visibility .24s ease,background .2s ease,border-color .2s ease;
}
.back-to-top.is-visible{
  opacity:1;
  visibility:visible;
  pointer-events:auto;
  transform:translateY(0) scale(1);
}
.back-to-top:hover{
  background:rgba(9,219,163,.16);
  border-color:var(--gold);
  transform:translateY(-3px) scale(1.03);
}
.back-to-top:focus-visible{
  outline:3px solid var(--gold);
  outline-offset:4px;
}

/* Accessibility: visible keyboard focus on all primary controls. */
:where(a,button,input,select,textarea,summary,[tabindex]):focus-visible{
  outline:3px solid var(--gold)!important;
  outline-offset:3px!important;
}

/* Keep text contrast above the dark background. */
.values-fullwidth .values-grid p,
.values-section.values-fullwidth .values-grid p{
  color:#d3ded9!important;
}

@media(max-width:600px){
  .values-fullwidth > .values-inner > .eyebrow,
  .values-section.values-fullwidth > .values-inner > .eyebrow{
    margin-bottom:22px!important;
    padding-left:2px!important;
  }
  .values-fullwidth .values-grid article{
    min-height:150px!important;
    padding:16px 10px!important;
  }
  .values-fullwidth .values-grid p{
    font-size:12px!important;
    line-height:1.45!important;
  }
  .values-fullwidth .values-grid h3{
    font-size:12px!important;
  }
  .back-to-top{
    width:48px;
    height:48px;
    right:max(14px,env(safe-area-inset-right));
    bottom:max(18px,calc(env(safe-area-inset-bottom) + 10px));
  }
}

@media(max-width:1080px) and (orientation:landscape){
  .back-to-top{
    right:max(14px,env(safe-area-inset-right));
    bottom:max(12px,env(safe-area-inset-bottom));
  }
}

@media(prefers-reduced-motion:reduce){
  .back-to-top{transition:none!important}
}


/* DANZARIA 3.4.0 – requests, calendar, event photos */
.form-status{display:none;grid-column:1/-1;padding:14px 16px;border:1px solid transparent;border-radius:4px;font-weight:700;line-height:1.5;outline:none}
.form-status.is-loading,.form-status.is-success,.form-status.is-error{display:block}
.form-status.is-loading{border-color:rgba(255,215,0,.35);color:#fff7b0;background:rgba(255,215,0,.07)}
.form-status.is-success{border-color:rgba(9,219,163,.55);color:#d9fff4;background:rgba(9,219,163,.1)}
.form-status.is-error{border-color:rgba(255,92,92,.58);color:#ffe5e5;background:rgba(255,92,92,.1)}
.section-actions{display:flex;flex-wrap:wrap;gap:10px;justify-content:flex-end}
.event-photo-card{position:relative;overflow:hidden;background-image:linear-gradient(90deg,rgba(2,9,7,.96),rgba(2,9,7,.7) 60%,rgba(2,9,7,.32)),var(--event-image);background-size:cover;background-position:var(--event-x,50%) var(--event-y,50%)}
.event-photo-card .date-copy{position:relative;z-index:2}
@media(max-width:820px){.section-actions{justify-content:flex-start;width:100%}.section-actions .button{flex:1 1 180px}}


/* DANZARIA CMS 3.4.1 – no external font requests */
:root{
  --font-body:Arial,Helvetica,sans-serif;
  --font-display:Georgia,"Times New Roman",serif;
}
html,body,button,input,select,textarea{
  font-family:var(--font-body);
}
h1,h2,h3,.hero-title-line,.slogan-track,.date-number strong,.round-seal{
  font-family:var(--font-display);
}
.form-privacy-note{
  grid-column:1/-1;
  margin:0;
  color:#aebfba;
  font-size:12px;
  line-height:1.55;
}

img{max-width:100%;height:auto}@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}


/* DANZARIA 3.6.1 – reliable event photos */
.event-photo-card{isolation:isolate;background:#06130f!important}
.event-card-background,.event-card-shade{position:absolute;inset:0;width:100%;height:100%}
.event-card-background{z-index:0;object-fit:cover}
.event-card-shade{z-index:1;background:linear-gradient(90deg,rgba(2,9,7,.96),rgba(2,9,7,.68) 60%,rgba(2,9,7,.30))}
.event-photo-card .date-copy{position:relative;z-index:2}

/* DANZARIA 3.6.2 – media visibility regression fix */
.event-photo-card{position:relative;overflow:hidden;isolation:isolate}
.event-card-background{position:absolute!important;inset:0!important;width:100%!important;height:100%!important;display:block!important;object-fit:cover!important;opacity:1!important;visibility:visible!important;z-index:0!important}
.event-card-shade{position:absolute;inset:0;z-index:1;background:linear-gradient(90deg,rgba(2,9,7,.88),rgba(2,9,7,.35))}
.event-photo-card .date-copy{position:relative;z-index:2}
.partner-logo img{display:block!important;max-width:100%!important;max-height:100%!important;width:auto!important;height:auto!important;opacity:1!important;visibility:visible!important;object-fit:contain!important}


/* DANZARIA 3.6.3 – robust frontend media rendering */
.event-photo-card.has-event-image{background:#06130f!important}
.event-photo-card.has-event-image .event-card-background{
  display:block!important;opacity:1!important;visibility:visible!important;
  width:100%!important;height:100%!important;object-fit:cover!important;
  filter:none!important;mix-blend-mode:normal!important;
}
.event-photo-card.has-event-image .event-card-shade{
  background:linear-gradient(90deg,rgba(2,9,7,.74),rgba(2,9,7,.22) 62%,rgba(2,9,7,.08))!important;
}
.partner-logo img{display:block!important;opacity:1!important;visibility:visible!important}
.partner-logo-placeholder{
  display:grid;place-items:center;width:84px;height:84px;border:1px solid rgba(9,219,163,.4);
  border-radius:50%;color:var(--gold);font:700 38px/1 Georgia,"Times New Roman",serif;
  background:rgba(9,219,163,.08)
}


/* =========================================================
   DANZARIA CMS 3.6.7 – desktop media rendering
   ========================================================= */
/* Do not let Chrome replace full sections with intrinsic placeholders. */
main > section,
main > section:not(.hero),
.hero-photo,
.about-image,
.booking-image,
.support-inner,
.partners-grid,
.partner-logo,
.event-photo-card {
  content-visibility:visible!important;
  contain-intrinsic-size:auto!important;
}

/* Media selected in the CMS must remain visible at every breakpoint. */
.hero-photo > img,
.about-image > img,
.booking-image > img,
.support-inner > img,
.partner-logo > img,
.event-card-background {
  display:block!important;
  visibility:visible!important;
  opacity:1!important;
  max-width:none;
  backface-visibility:hidden;
  -webkit-backface-visibility:hidden;
}
.hero-photo > img,
.about-image > img,
.booking-image > img,
.event-card-background {
  width:100%!important;
  height:100%!important;
  object-fit:cover!important;
}
.support-inner > img {
  object-fit:cover!important;
}
.partner-logo > img {
  width:auto!important;
  height:auto!important;
  max-width:100%!important;
  max-height:100%!important;
  object-fit:contain!important;
}

/* Desktop sections need a real paintable box before the image is decoded. */
@media (min-width:1081px) {
  .hero-photo,
  .about-image,
  .booking-image,
  .support-inner,
  .partner-logo,
  .event-photo-card {
    transform:translateZ(0);
  }
  .about-image { min-height:620px; }
  .booking-image { min-height:100%; }
}


/* DANZARIA CMS 3.6.9 – restore desktop proportions after design-editor regression */
@media(min-width:901px){
  .team-diagonal>.tilt-carousel-shell{
    max-width:none!important;
    width:calc(100% + 22vw)!important;
    margin-left:-11vw!important;
    margin-right:0!important;
  }
  .tilt-carousel{grid-auto-columns:clamp(178px,12.4vw,198px)!important;}
}

.site-footer .footer-credit{grid-column:1/-1;text-align:center;border-top:0;padding-top:0;margin-top:-24px;color:#74857f;font-size:10px}.site-footer .footer-credit a{color:inherit;text-decoration:none}.site-footer .footer-credit a:hover,.site-footer .footer-credit a:focus{color:var(--gold);text-decoration:underline}


/* 4.0.4 Lighthouse performance and accessibility hardening */
.page-progress{width:100%;transform:scaleX(0);transform-origin:left center;will-change:transform}
.form-field label{display:block}
.form-field input,.form-field select,.form-field textarea,.button,.menu-toggle,.tilt-nav,.back-to-top,.lightbox-close,.lightbox-nav{min-height:44px}
.footer-links a,.main-nav a,.social-head a{min-height:44px;display:inline-flex;align-items:center}
img[width][height]{height:auto}
.hero-photo img{height:100%}
@media(max-width:720px){.hero-photo img{animation:none!important;transform:none!important}.stage-beams,.gold-particles,.title-flare{animation:none!important}.slogan-track{animation-duration:38s!important}}
@media(prefers-reduced-motion:reduce){.slogan-track,.hero-photo img,.stage-beams i,.gold-particles,.title-flare{animation:none!important}}


/* 4.0.6 event detail banner */
.event-photo-card{padding:0}
.event-card-trigger{position:relative;display:block;width:100%;min-height:100%;padding:0;border:0;background:transparent;color:inherit;text-align:left;cursor:pointer;overflow:hidden;border-radius:inherit}
.event-card-trigger:focus-visible{outline:3px solid var(--gold);outline-offset:4px}
.event-card-more{display:inline-block;margin-top:10px;color:var(--gold);font-size:12px;font-weight:800;letter-spacing:.08em;text-transform:uppercase}
.event-modal{position:fixed;inset:0;z-index:10020;display:none;align-items:center;justify-content:center;padding:24px;background:rgba(0,0,0,.78);backdrop-filter:blur(12px)}
.event-modal.open{display:flex}
.event-modal-panel{position:relative;display:grid;grid-template-columns:minmax(320px,.95fr) minmax(380px,1.05fr);width:min(1120px,100%);max-height:min(86vh,820px);overflow:auto;background:#06130f;border:1px solid rgba(30,214,167,.35);box-shadow:0 30px 100px rgba(0,0,0,.55)}
.event-modal-close{position:absolute;top:14px;right:14px;z-index:4;width:46px;height:46px;border:1px solid rgba(255,255,255,.3);border-radius:50%;background:rgba(0,0,0,.58);color:#fff;font-size:30px;line-height:1;cursor:pointer}
.event-modal-media{min-height:420px;background:#020806}
.event-modal-media img{display:block;width:100%;height:100%;min-height:420px;object-fit:cover}
.event-modal-content{padding:clamp(34px,5vw,72px)}
.event-modal-content h2{margin:.15em 0 .5em;font-size:clamp(36px,5vw,72px);line-height:.95}
.event-modal-meta{display:grid;gap:8px;margin-bottom:24px;padding-bottom:22px;border-bottom:1px solid rgba(255,255,255,.14);color:#fff;font-weight:700}
.event-modal-meta p{margin:0}
.event-modal-description{max-width:65ch;color:var(--muted);font-size:17px;line-height:1.75;white-space:pre-line}
.event-modal-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:30px}
@media(max-width:760px){
  .event-modal{align-items:flex-end;padding:0;background:rgba(0,0,0,.7)}
  .event-modal-panel{display:block;width:100%;max-height:92dvh;border-width:1px 0 0;border-radius:22px 22px 0 0}
  .event-modal-media{min-height:230px;height:34dvh;max-height:320px}
  .event-modal-media img{min-height:230px}
  .event-modal-content{padding:30px 22px 34px}
  .event-modal-content h2{font-size:clamp(34px,11vw,54px)}
  .event-modal-description{font-size:16px}
  .event-modal-actions{display:grid}
  .event-modal-actions .button{width:100%;justify-content:center}
}

/* =========================================================
   HOTFIX 4.0.7 – one-row season galleries with drag navigation
   ========================================================= */
.gallery-rail-shell{
  position:relative;
  max-width:1500px;
  margin:16px auto 68px;
}
.gallery-rail-shell .cms-gallery{
  display:grid;
  grid-auto-flow:column;
  grid-template-columns:none;
  grid-template-rows:clamp(230px,24vw,390px);
  grid-auto-columns:clamp(180px,20vw,300px);
  gap:12px;
  max-width:none;
  margin:0;
  padding:3px 2px 18px;
  overflow-x:auto;
  overflow-y:hidden;
  overscroll-behavior-inline:contain;
  scroll-snap-type:x mandatory;
  scroll-padding-inline:2px;
  scrollbar-width:none;
  -webkit-overflow-scrolling:touch;
  cursor:grab;
  touch-action:pan-y pinch-zoom;
}
.gallery-rail-shell .cms-gallery::-webkit-scrollbar{display:none}
.gallery-rail-shell .cms-gallery.is-dragging{
  cursor:grabbing;
  scroll-snap-type:none;
  user-select:none;
}
.gallery-rail-shell .cms-gallery > a{
  display:block;
  width:100%;
  height:100%;
  min-width:0;
  margin:0;
  aspect-ratio:auto;
  scroll-snap-align:start;
  scroll-snap-stop:normal;
}
.gallery-rail-shell .cms-gallery picture,
.gallery-rail-shell .cms-gallery img{
  width:100%;
  height:100%;
}
.gallery-rail-shell .cms-gallery img{
  max-height:none;
  object-fit:cover;
  object-position:center 20%;
}
.gallery-rail-nav{
  position:absolute;
  z-index:5;
  top:50%;
  width:50px;
  height:50px;
  min-width:50px;
  min-height:50px;
  border:1px solid rgba(9,219,163,.8);
  border-radius:50%;
  display:grid;
  place-items:center;
  background:rgba(2,9,7,.9);
  color:var(--teal);
  font:300 35px/1 Arial,sans-serif;
  box-shadow:0 12px 34px rgba(0,0,0,.42);
  backdrop-filter:blur(8px);
  transform:translateY(-65%);
  transition:opacity .2s ease,transform .2s ease,background .2s ease,color .2s ease;
  cursor:pointer;
}
.gallery-rail-prev{left:-25px}
.gallery-rail-next{right:-25px}
.gallery-rail-nav:hover,
.gallery-rail-nav:focus-visible{
  background:var(--teal);
  color:#02110e;
  transform:translateY(-65%) scale(1.07);
}
.gallery-rail-nav[disabled]{
  opacity:.22;
  cursor:default;
  pointer-events:none;
}
.gallery-rail-progress{
  height:2px;
  margin:0 2px;
  background:rgba(255,255,255,.1);
  overflow:hidden;
}
.gallery-rail-progress span{
  display:block;
  width:100%;
  height:100%;
  background:linear-gradient(90deg,var(--teal),var(--gold));
  transform-origin:left center;
  transform:scaleX(0);
  transition:transform .12s linear;
}
.gallery-swipe-hint{display:block}
@media(min-width:721px){
  .gallery-swipe-hint::after{content:" Mit Maus, Trackpad oder Pfeilen navigieren."}
}
@media(max-width:1550px){
  .gallery-rail-prev{left:8px}
  .gallery-rail-next{right:8px}
}
@media(max-width:900px){
  .gallery-rail-shell .cms-gallery{
    grid-template-rows:clamp(240px,52vw,390px);
    grid-auto-columns:clamp(180px,42vw,290px);
  }
}
@media(max-width:720px){
  .gallery-rail-shell{margin:8px 0 50px}
  .gallery-rail-shell .cms-gallery{
    grid-template-rows:min(68vw,340px);
    grid-auto-columns:calc((100% - 9px)/2);
    gap:9px;
    margin:0;
    padding-bottom:14px;
  }
  .gallery-rail-nav{display:none}
  .gallery-rail-progress{margin:0}
}
@media(prefers-reduced-motion:reduce){
  .gallery-rail-shell .cms-gallery{scroll-behavior:auto}
}
