/* =========================================================
   DRAGON FORCE MARTIAL ARTS ACADEMY — CORE STYLESHEET
   ========================================================= */

:root{
  --black:#050505;
  --charcoal:#111111;
  --charcoal-2:#191919;
  --gold:#C79A3B;
  --gold-light:#E0B85F;
  --white:#F5F2E9;
  --grey:#8A8A85;
  --line: rgba(199,154,59,0.25);
  --maxw: 1320px;
  --gutter: clamp(2rem, 8.8vw, 9rem);
  --gap: clamp(1.5rem, 3vw, 3rem);
  --radius: 2px;
  --ease: cubic-bezier(.19,1,.22,1);
}

*,*::before,*::after{ box-sizing:border-box; }
html{
  scroll-behavior:smooth;
  scroll-padding-top:80px;
}
body{
  margin:0;
  background:var(--black);
  color:var(--white);
  font-family:'Inter', Arial, Helvetica, sans-serif;
  -webkit-font-smoothing:antialiased;
  overflow-x:hidden;
}
h1,h2,h3,h4{
  font-family:'Bebas Neue','Oswald', Arial, sans-serif;
  letter-spacing:0.02em;
  line-height:0.95;
  margin:0;
  font-weight:400;
  text-transform:uppercase;
}
p{ margin:0; line-height:1.6; color:rgba(245,242,233,0.75); }
a{ color:inherit; text-decoration:none; }
img{ max-width:100%; display:block; }
ul{ list-style:none; margin:0; padding:0; }
button{ font-family:inherit; cursor:pointer; }

.container{
  max-width:var(--maxw);
  margin:0 auto;
  padding:0 var(--gutter);
}

.eyebrow{
  display:flex;
  align-items:center;
  gap:.75rem;
  font-family:'Oswald', sans-serif;
  font-size:.72rem;
  letter-spacing:.28em;
  text-transform:uppercase;
  color:var(--gold-light);
}
.eyebrow::before{
  content:"";
  width:28px; height:1px;
  background:var(--gold);
}

.gold{ color:var(--gold-light); }

.btn{
  display:inline-flex;
  align-items:center;
  gap:.6rem;
  padding:.95rem 1.8rem;
  border:1px solid var(--gold);
  color:var(--white);
  font-family:'Oswald', sans-serif;
  font-size:.78rem;
  letter-spacing:.18em;
  text-transform:uppercase;
  background:transparent;
  transition:all .35s var(--ease);
}
.btn:hover{ background:var(--gold); color:var(--black); }
.btn-solid{ background:var(--gold); color:var(--black); }
.btn-solid:hover{ background:var(--gold-light); }

/* ================= NAV ================= */
.site-header{
  position:fixed; top:0; left:0; right:0; z-index:1000;
  display:flex; align-items:center; justify-content:space-between;
  padding:1.1rem var(--gutter);
  padding-left:clamp(3rem,7.3vw,7rem);
  background:linear-gradient(180deg, rgba(5,5,5,.96), rgba(5,5,5,.28));
  backdrop-filter:blur(8px);
  border-bottom:1px solid transparent;
  transition:border-color .3s ease, background .3s ease;
}
.site-header::before{display:none;}
.site-header.scrolled{
  background:rgba(5,5,5,.92);
  border-bottom:1px solid var(--line);
}
.brand{ display:flex; align-items:center; gap:.7rem; }
.brand img{ height:42px; width:42px; border-radius:50%; }
.brand-text{ font-family:'Bebas Neue', sans-serif; font-size:1.18rem; letter-spacing:.1em; line-height:1.05; }
.brand-text span{ display:block; font-family:'Oswald',sans-serif; font-size:.55rem; letter-spacing:.3em; color:var(--gold-light); }

.nav-links{ display:flex; align-items:center; gap:2.2rem; }
.nav-links a{
  font-family:'Oswald', sans-serif;
  font-size:.78rem; letter-spacing:.14em; text-transform:uppercase;
  color:var(--grey);
  position:relative;
  padding:.3rem 0;
}
.nav-links a::after{
  content:""; position:absolute; left:0; bottom:0; width:0; height:1px; background:var(--gold);
  transition:width .3s var(--ease);
}
.nav-links a:hover, .nav-links a.active{ color:var(--white); }
.nav-links a:hover::after, .nav-links a.active::after{ width:100%; }

.nav-cta{ display:flex; align-items:center; gap:1.6rem; }
.hamburger{
  display:none; flex-direction:column; gap:5px; background:none; border:none; padding:.4rem;
}
.hamburger span{ width:24px; height:1.5px; background:var(--white); display:block; }

.mobile-nav{
  position:fixed; inset:0; background:var(--black); z-index:1200;
  display:flex; flex-direction:column; justify-content:center; align-items:flex-start;
  padding:2rem clamp(1.5rem,6vw,3rem);
  transform:translateY(-100%);
  transition:transform .45s var(--ease);
}
.mobile-nav.open{ transform:translateY(0); }
.mobile-nav a{
  font-family:'Bebas Neue', sans-serif; font-size:2.4rem; letter-spacing:.03em;
  color:var(--white); padding:.5rem 0; border-bottom:1px solid var(--line); width:100%;
}
.mobile-nav-close{
  position:absolute; top:1.4rem; right:1.4rem; background:none; border:1px solid var(--line);
  color:var(--white); width:42px; height:42px; font-size:1.2rem;
}

/* ================= SCROLL STAGE (INDEX ONLY) ================= */
.scroll-stage{ position:relative; height:220vh; }
.stage-sticky{
  position:sticky; top:0; height:100vh; overflow:hidden;
  display:flex; align-items:center;
  background:
    radial-gradient(ellipse at 50% 20%, rgba(199,154,59,0.08), transparent 60%),
    var(--black);
}
.stage-sticky::before{
  content:""; position:absolute; inset:0; opacity:.5; pointer-events:none;
  background-image:
    linear-gradient(rgba(199,154,59,.06) 1px, transparent 1px),
    linear-gradient(90deg, rgba(199,154,59,.06) 1px, transparent 1px);
  background-size:64px 64px;
  mask-image:radial-gradient(ellipse at center, black 40%, transparent 80%);
}
#dust-canvas{
  position:absolute; inset:0; width:100%; height:100%; z-index:2; pointer-events:none;
}

/* ---- Cinematic athlete compositions ---- */
.athlete{
  position:absolute; top:0; height:100%; width:60%; z-index:2;
  display:flex; align-items:center; pointer-events:none;
  will-change:transform, opacity;
}
.athlete-1{ right:0; justify-content:flex-end; }
.athlete-2{ left:0; justify-content:flex-start; }

.athlete-frame{
  position:relative; width:94%; height:84%; overflow:hidden;
  mask-image:radial-gradient(ellipse 60% 78% at 50% 40%, black 42%, transparent 88%);
  -webkit-mask-image:radial-gradient(ellipse 60% 78% at 50% 40%, black 42%, transparent 88%);
  will-change:transform, opacity, filter;
}
.athlete-frame::after{ /* warm gold rim / selective highlight */
  content:""; position:absolute; inset:0; z-index:2; pointer-events:none;
  background:linear-gradient(115deg, transparent 38%, rgba(224,184,95,.4) 66%, transparent 90%);
  mix-blend-mode:overlay;
}
.athlete-frame::before{ /* subtle filmic grain */
  content:""; position:absolute; inset:-20%; z-index:3; pointer-events:none; opacity:.22;
  background-image:repeating-linear-gradient(0deg, rgba(255,255,255,.05) 0 1px, transparent 1px 3px),
                    repeating-linear-gradient(90deg, rgba(255,255,255,.03) 0 1px, transparent 1px 3px);
  mix-blend-mode:overlay;
}
.athlete-img{
  width:100%; height:100%; object-fit:cover; object-position:center 16%;
  filter:grayscale(0.9) contrast(1.15) brightness(0.82) saturate(1.05);
  transform-origin:50% 60%;
  display:block;
}
.athlete-2 .athlete-img{ object-position:center 30%; }

.athlete-slices{ position:absolute; inset:0; z-index:4; }
.athlete-slices .slice{
  position:absolute; top:0; height:100%;
  background-repeat:no-repeat;
  filter:grayscale(0.9) contrast(1.15) brightness(0.82) saturate(1.05);
  will-change:transform, opacity;
}

.kick-trail{
  position:absolute; inset:0; width:100%; height:100%; z-index:5; overflow:visible; pointer-events:none;
}
#kick-trail-path{
  fill:none; stroke:var(--gold-light); stroke-width:.6px; stroke-linecap:round;
  stroke-dasharray:150; stroke-dashoffset:150; opacity:0;
  filter:drop-shadow(0 0 5px rgba(224,184,95,.7));
  vector-effect:non-scaling-stroke;
}

.impact-line{
  position:absolute; left:50%; bottom:9%; width:0; height:1.5px;
  background:linear-gradient(90deg, transparent, var(--gold-light), transparent);
  transform:translateX(-50%); z-index:4; opacity:0;
}
.impact-ripple{
  position:absolute; left:50%; bottom:9%; width:50px; height:50px; z-index:4;
  border:1px solid var(--gold-light); border-radius:50%;
  transform:translate(-50%,50%) scale(0.2); opacity:0;
}

.stage-text{
  position:absolute; top:50%; transform:translateY(-50%);
  width:min(560px, 44vw);
  z-index:3;
  padding:0;
}
.stage-text-1{ left:var(--gutter); }

.stage-text-2{ right:var(--gutter); text-align:right; }
.stage-text-2 .eyebrow{ justify-content:flex-end; flex-direction:row-reverse; }
.stage-text-2 .eyebrow::before{ order:1; }
.stage-num{ font-family:'Oswald',sans-serif; letter-spacing:.3em; font-size:6rem; color:rgba(255,255,255,.04);
  position:absolute; top:-3rem; left:0; z-index:1; }
.stage-title{ font-size:clamp(2.6rem, 6vw, 4.6rem); margin:1rem 0 1.4rem; }
.stage-text p{ font-size:1.05rem; max-width:380px; margin-bottom:1.8rem; }
.stage-text-2 p{ margin-left:auto; }
.scroll-cue{
  position:absolute; bottom:2.2rem; left:50%; transform:translateX(-50%); z-index:3;
  display:flex; flex-direction:column; align-items:center; gap:.6rem;
  font-family:'Oswald',sans-serif; font-size:.65rem; letter-spacing:.3em; color:var(--grey);
  text-transform:uppercase;
}
.scroll-cue .line{ width:1px; height:34px; background:linear-gradient(var(--gold), transparent); animation:pulse 1.8s infinite ease-in-out; }
@keyframes pulse{ 0%,100%{opacity:.2;} 50%{opacity:1;} }

/* ================= GENERIC PAGE HERO ================= */
.page-hero{
  min-height:60vh; display:flex; align-items:flex-end;
  padding:9rem 0 4rem;
  position:relative;
  background:linear-gradient(180deg, rgba(5,5,5,.2), var(--black) 90%), var(--charcoal);
  border-bottom:1px solid var(--line);
}
.page-hero .stage-num{ font-size:9rem; }
.page-hero h1{ font-size:clamp(3rem,8vw,6.5rem); }
.page-hero p{ max-width:560px; margin-top:1.2rem; font-size:1.05rem; }

/* ================= SECTIONS ================= */
section{ position:relative; }
.section-pad{ padding: clamp(4rem,8vw,7rem) 0; }
.section-head{ max-width:720px; margin-bottom:3rem; }
.section-head h2{ font-size:clamp(2.2rem,5vw,3.6rem); margin-top:1rem; }
.divider{ height:1px; background:var(--line); width:100%; }

.grid{ display:grid; gap:var(--gap); }
.grid-2{ grid-template-columns:repeat(2,1fr); }
.grid-3{ grid-template-columns:repeat(3,1fr); }
.grid-4{ grid-template-columns:repeat(4,1fr); }

.card{
  border:1px solid var(--line); background:var(--charcoal);
  padding:2.2rem 1.8rem; position:relative; transition:transform .4s var(--ease), border-color .4s ease;
}
.card:hover{ transform:translateY(-6px); border-color:var(--gold); }
.card .num{ font-family:'Oswald',sans-serif; color:var(--gold-light); font-size:.8rem; letter-spacing:.2em; }
.card h3{ font-size:1.6rem; margin:1rem 0 .8rem; }

.reveal{ opacity:1; transform:none; transition:opacity .7s var(--ease), transform .7s var(--ease); }
.reveal.in{ opacity:1; transform:translateY(0); }
.reveal-ready .reveal:not(.in){ opacity:0; transform:translateY(24px); }

.img-frame{ position:relative; overflow:hidden; border:1px solid var(--line); }
.img-frame img{ width:100%; height:100%; object-fit:cover; transition:transform .8s var(--ease); }
.img-frame:hover img{ transform:scale(1.06); }

.footer{
  border-top:1px solid var(--line); padding:4rem 0 2rem; background:var(--charcoal);
}
.footer-grid{ display:grid; grid-template-columns:1.4fr 1fr 1fr 1fr; gap:2rem; margin-bottom:3rem; }
.footer h4{ font-size:.75rem; letter-spacing:.2em; color:var(--gold-light); margin-bottom:1.2rem; font-family:'Oswald',sans-serif; }
.footer ul li{ margin-bottom:.6rem; }
.footer ul a{ color:var(--grey); font-size:.9rem; }
.footer ul a:hover{ color:var(--white); }
.footer-bottom{ display:flex; justify-content:space-between; padding-top:1.5rem; border-top:1px solid var(--line);
  font-size:.75rem; color:var(--grey); letter-spacing:.05em; flex-wrap:wrap; gap:.5rem; }

/* ================= ABOUT ================= */
.founder{ display:grid; grid-template-columns:0.95fr 1.05fr; gap:clamp(2.5rem,5vw,5rem); align-items:center; }
.founder-photo{position:relative;aspect-ratio:1.08/1;overflow:hidden;border:1px solid rgba(211,166,72,.24);background:#0b0b0b;isolation:isolate;}
.founder-photo::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(5,5,5,.02) 45%,rgba(5,5,5,.58));pointer-events:none;}
.founder-photo img{width:100%;height:100%;display:block;object-fit:cover;object-position:center 34%;filter:saturate(.78) contrast(1.03);transition:transform .8s var(--ease),filter .6s ease;}
.founder-photo:hover img{transform:scale(1.025);filter:saturate(.92) contrast(1.04);}
.founder-photo-label{position:absolute;z-index:2;left:1.25rem;bottom:1.15rem;padding:.5rem .7rem;border:1px solid rgba(224,184,95,.34);background:rgba(5,5,5,.58);backdrop-filter:blur(5px);color:var(--gold-light);font:500 .6rem 'Oswald',sans-serif;letter-spacing:.18em;text-transform:uppercase;}
.founder .img-frame{ aspect-ratio:3/4; }
.stat-row{ display:grid; grid-template-columns:repeat(4,1fr); border-top:1px solid var(--line); border-bottom:1px solid var(--line); margin:3rem 0; }
.stat-row div{ padding:1.6rem 1rem; border-right:1px solid var(--line); }
.stat-row div:last-child{ border-right:none; }
.stat-row strong{ display:block; font-family:'Bebas Neue',sans-serif; font-size:2.4rem; color:var(--gold-light); }
.stat-row span{ font-size:.7rem; letter-spacing:.15em; text-transform:uppercase; color:var(--grey); }

/* ================= DISCIPLINES ================= */
.discipline-card{ aspect-ratio:4/5; position:relative; overflow:hidden; border:1px solid var(--line); }
.discipline-card img{ width:100%; height:100%; object-fit:cover; filter:grayscale(60%) brightness(.6); transition:all .6s var(--ease); }
.discipline-card:hover img{ filter:grayscale(0%) brightness(.75); transform:scale(1.08); }
.discipline-card .overlay{
  position:absolute; inset:0; display:flex; flex-direction:column; justify-content:flex-end; padding:1.6rem;
  background:linear-gradient(0deg, rgba(0,0,0,.85), transparent 60%);
}
.discipline-card .overlay .num{ color:var(--gold-light); font-family:'Oswald',sans-serif; font-size:.7rem; letter-spacing:.2em; }
.discipline-card .overlay h3{ font-size:1.7rem; margin-top:.4rem; }

/* ================= LOCATIONS ================= */
.map-panel{ border:1px solid var(--line); background:var(--charcoal); aspect-ratio:16/10; position:relative; overflow:hidden; }
.map-panel svg{ width:100%; height:100%; }
.location-pin{ fill:var(--gold-light); }
.location-list{ display:flex; flex-direction:column; gap:0; }
.location-item{ padding:1.6rem 0; border-bottom:1px solid var(--line); display:flex; justify-content:space-between; align-items:center; gap:1rem; }
.location-item h3{ font-size:1.3rem; }
.badge{ font-family:'Oswald',sans-serif; font-size:.65rem; letter-spacing:.15em; text-transform:uppercase; color:var(--black); background:var(--gold-light); padding:.35rem .7rem; white-space:nowrap; }

/* ================= COMMUNITY ================= */
.why-item{ display:grid; grid-template-columns:82px 1fr; gap:1.35rem; padding:1.7rem 0; border-bottom:1px solid var(--line); align-items:start; }
.why-item .icon{ font-family:'Bebas Neue',sans-serif; font-size:2.4rem; color:var(--gold-light); opacity:.92; letter-spacing:.03em; text-shadow:0 0 18px rgba(224,184,95,.08); }
.why-item h3{ font-size:1.32rem; margin-bottom:.55rem; }
.why-item p{max-width:600px;font-size:.92rem;line-height:1.7;color:rgba(245,242,233,.68)}
.cta-band{
  text-align:center; padding:5rem 0; border-top:1px solid var(--line); border-bottom:1px solid var(--line);
  background:radial-gradient(ellipse at center, rgba(199,154,59,.08), transparent 70%);
}
.cta-band h2{ font-size:clamp(2rem,5vw,3.4rem); margin-bottom:1.6rem; }

/* ================= GALLERY ================= */
.gallery-filters{ display:flex; gap:.8rem; flex-wrap:wrap; margin-bottom:2.5rem; }
.filter-btn{
  border:1px solid var(--line); background:transparent; color:var(--grey);
  font-family:'Oswald',sans-serif; font-size:.72rem; letter-spacing:.18em; text-transform:uppercase;
  padding:.6rem 1.3rem; transition:all .3s ease;
}
.filter-btn:hover{ color:var(--white); }
.filter-btn.active{ background:var(--gold); color:var(--black); border-color:var(--gold); }

.masonry{ column-count:3; column-gap:var(--gap); }
.masonry-item{ break-inside:avoid; margin-bottom:var(--gap); position:relative; overflow:hidden; border:1px solid var(--line); cursor:pointer; }
.masonry-item img{ width:100%; display:block; transition:transform .6s var(--ease); }
.masonry-item:hover img{ transform:scale(1.06); }
.masonry-item .tag{
  position:absolute; top:.8rem; left:.8rem; background:rgba(5,5,5,.75); border:1px solid var(--gold);
  font-family:'Oswald',sans-serif; font-size:.6rem; letter-spacing:.15em; text-transform:uppercase; padding:.3rem .6rem;
}
.masonry-item.hide{ display:none; }

.lightbox{
  position:fixed; inset:0; background:rgba(5,5,5,.97); z-index:2000; display:none;
  align-items:center; justify-content:center; padding:2rem;
}
.lightbox.open{ display:flex; }
.lightbox img{ max-width:85vw; max-height:82vh; object-fit:contain; border:1px solid var(--line); }
.lightbox-close, .lightbox-prev, .lightbox-next{
  position:absolute; background:none; border:1px solid var(--line); color:var(--white);
  width:46px; height:46px; font-size:1.1rem;
}
.lightbox-close{ top:1.6rem; right:1.6rem; }
.lightbox-prev{ left:1.6rem; top:50%; transform:translateY(-50%); }
.lightbox-next{ right:1.6rem; top:50%; transform:translateY(-50%); }

/* ================= CONTACT ================= */
.contact-grid{ display:grid; grid-template-columns:1fr 1fr; gap:var(--gap); }
.field{ margin-bottom:1.4rem; }
.field label{ display:block; font-family:'Oswald',sans-serif; font-size:.68rem; letter-spacing:.18em; text-transform:uppercase; color:var(--grey); margin-bottom:.6rem; }
.field input, .field select, .field textarea{
  width:100%; background:transparent; border:none; border-bottom:1px solid var(--line);
  color:var(--white); font-family:'Inter',sans-serif; font-size:1rem; padding:.7rem 0; outline:none;
}
.field input:focus, .field select:focus, .field textarea:focus{ border-color:var(--gold); }
.field select option{ background:var(--charcoal); }
.form-note{ font-size:.85rem; color:var(--grey); margin-top:1.5rem; }
.info-card{ border:1px solid var(--line); padding:2rem; margin-bottom:1.2rem; }
.info-card h4{ font-family:'Oswald',sans-serif; letter-spacing:.15em; font-size:.75rem; color:var(--gold-light); margin-bottom:.7rem; }

/* ================= RESPONSIVE ================= */
@media (max-width:1024px){
  .grid-4{ grid-template-columns:repeat(2,1fr); }
  .grid-3{ grid-template-columns:repeat(2,1fr); }
  .footer-grid{ grid-template-columns:1fr 1fr; }
  .masonry{ column-count:2; }
  .stat-row{ grid-template-columns:repeat(2,1fr); }
  .stat-row div:nth-child(2){ border-right:none; }
}
@media (max-width:900px){
  .nav-links, .nav-cta .btn{ display:none; }
  .hamburger{ display:flex; }
  .founder{ grid-template-columns:1fr; gap:2.2rem; }
  .founder-photo{aspect-ratio:1.15/1;max-width:760px;margin:auto;width:100%;}
  .contact-grid{ grid-template-columns:1fr; }
  .stage-text{ width:78vw; }
  .stage-text-1{ text-align:left; }
}
@media (max-width:768px){
  .grid-2, .grid-3{ grid-template-columns:1fr; }
  .masonry{ column-count:1; }
  .why-item{ grid-template-columns:56px 1fr; }
}
@media (max-width:600px){
  .scroll-stage{ height:auto; }
  .stage-sticky{ position:relative; height:auto; min-height:auto; flex-direction:column; padding:6rem 0 3rem; gap:2rem; }
  .stage-sticky::before{ display:none; }
  #dust-canvas{ display:none; }
  .athlete{ position:relative; width:100%; height:46vh; order:1; }
  .athlete-1{ order:1; }
  .athlete-2{ order:3; }
  .athlete-frame{ width:100%; height:96%; }
  .kick-trail{ display:none; }
  .stage-text{ position:relative; top:auto; left:auto !important; right:auto !important; transform:none; width:100%; max-width:none; text-align:left !important;
    padding:0 var(--gutter); }
  .stage-text-1{ order:2; }
  .stage-text-2{ order:4; }
  .stage-text-2 p{ margin-left:0; }
  .stage-text-2 .eyebrow{ justify-content:flex-start; flex-direction:row; }
  .stage-text-2 .eyebrow::before{ order:0; }
  .scroll-cue{ display:none; }
  .footer-grid{ grid-template-columns:1fr; gap:2rem; }
}
@media (prefers-reduced-motion: reduce){
  html{ scroll-behavior:auto; }
  .reveal{ transition:none; opacity:1; transform:none; }
}

/* ================= CONSISTENT EDITORIAL GUTTER ================= */
@media (min-width:901px){
  .site-header .brand,
  .site-header .nav-links,
  .site-header .nav-cta{ position:relative; z-index:1; }
  .stage-text-1{ max-width:calc(560px + var(--gutter)); }
  .stage-text-2{ max-width:calc(560px + var(--gutter)); }
}
@media (max-width:900px){
  :root{ --gutter: clamp(1.25rem, 5vw, 2rem); }
  .site-header{ padding-left:calc(var(--gutter) + .75rem); }
  .site-header::before{ left:var(--gutter); }
  .stage-text-1{ left:var(--gutter); }
  .stage-text-2{ right:var(--gutter); }
}

/* =========================================================
   DFMA VISUAL REFINEMENTS — 2026-09
   ========================================================= */
:root{
  --gutter: clamp(1.5rem, 6.2vw, 6.5rem);
}

/* Clean shared alignment: header, page containers and hero copy use the same gutter. */
.site-header{ padding-left:clamp(3rem,7.3vw,7rem); padding-right:var(--gutter); }
.site-header::before{ display:none; }
.nav-links{ gap:clamp(1.25rem, 1.7vw, 2rem); }
.nav-links a{ font-size:.74rem; letter-spacing:.13em; }

/* Remove oversized decorative background numbers from all screens. */
.stage-num,
.page-hero .stage-num{ display:none !important; }

/* Keep the home stage cleaner: no leftover impact circle/line. */
.impact-line,.impact-ripple{ display:none !important; }

/* Smaller, cleaner hero cutout. */
.athlete-1{ width:56%; }
.athlete-1 .athlete-frame{
  width:min(720px, 78%);
  height:74%;
  mask-image:none;
  -webkit-mask-image:none;
  overflow:visible;
}
.athlete-1 .athlete-img{
  object-fit:contain;
  object-position:center center;
  filter:grayscale(.95) contrast(1.12) brightness(.9) saturate(.75) drop-shadow(0 24px 34px rgba(0,0,0,.7));
}
.athlete-1 .athlete-frame::after{
  background:linear-gradient(110deg, transparent 45%, rgba(224,184,95,.18) 72%, transparent 92%);
  opacity:.7;
}

/* Founder identity panel replaces generic/irrelevant portrait imagery. */
.founder-mark{
  aspect-ratio:1/1;
  min-height:420px;
  border:1px solid var(--line);
  background:
    radial-gradient(circle at center, rgba(199,154,59,.11), transparent 58%),
    linear-gradient(135deg,#0a0a0a,#161616);
  display:grid;
  place-items:center;
  position:relative;
  overflow:hidden;
}
.founder-mark::before,
.founder-mark::after{
  content:""; position:absolute; inset:1.2rem; border:1px solid rgba(199,154,59,.14); pointer-events:none;
}
.founder-mark::after{ inset:2.2rem; border-color:rgba(245,242,233,.06); }
.founder-mark-inner{ position:relative; z-index:1; display:flex; flex-direction:column; align-items:center; text-align:center; gap:.7rem; padding:2rem; }
.founder-mark img{ width:120px; height:120px; border-radius:50%; border:1px solid var(--gold); box-shadow:0 0 40px rgba(199,154,59,.12); }
.founder-mark span{ font-family:'Oswald',sans-serif; font-size:.68rem; letter-spacing:.24em; color:var(--gold-light); }
.founder-mark strong{ font-family:'Bebas Neue',sans-serif; font-size:clamp(2rem,4vw,3rem); letter-spacing:.04em; }
.founder-mark small{ color:var(--grey); letter-spacing:.18em; font-family:'Oswald',sans-serif; font-size:.65rem; }

/* ================= STORE ================= */
.store-hero{ min-height:58vh; }
.store-hero h1{ max-width:900px; margin-top:1rem; }
.store-intro{ display:grid; grid-template-columns:1fr .8fr; gap:var(--gap); align-items:end; margin-bottom:2.6rem; }
.store-intro h2{ font-size:clamp(2.4rem,5vw,4rem); margin-top:.9rem; }
.store-intro > p{ max-width:480px; justify-self:end; }
.store-filters{ margin-bottom:2.2rem; }
.store-grid{ display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:var(--gap); }
.product-card{ border:1px solid var(--line); background:linear-gradient(180deg,#111,#0a0a0a); overflow:hidden; transition:transform .45s var(--ease),border-color .35s ease,box-shadow .45s ease; }
.product-card:hover{ transform:translateY(-7px); border-color:rgba(224,184,95,.65); box-shadow:0 22px 60px rgba(0,0,0,.35); }
.product-media{ aspect-ratio:4/4.6; background:#0b0b0b; border-bottom:1px solid var(--line); position:relative; overflow:hidden; }
.product-media::after{ content:""; position:absolute; inset:0; background:linear-gradient(135deg,rgba(224,184,95,.06),transparent 38%,rgba(0,0,0,.22)); pointer-events:none; }
.product-media img{ width:100%; height:100%; object-fit:cover; transition:transform .7s var(--ease); }
.product-card:hover .product-media img{ transform:scale(1.035); }
.product-media .tag{ position:absolute; top:1rem; left:1rem; z-index:2; background:rgba(5,5,5,.86); border:1px solid var(--gold); color:var(--white); font-family:'Oswald',sans-serif; font-size:.62rem; letter-spacing:.16em; text-transform:uppercase; padding:.35rem .65rem; }
.product-info{ padding:1.4rem 1.35rem 1.35rem; }
.product-category{ font-family:'Oswald',sans-serif; color:var(--gold-light); font-size:.62rem; letter-spacing:.2em; text-transform:uppercase; }
.product-info h3{ font-size:1.7rem; margin:.65rem 0 .5rem; }
.product-info p{ font-size:.9rem; min-height:3.3rem; }
.product-bottom{ display:flex; justify-content:space-between; align-items:center; gap:1rem; margin-top:1.25rem; padding-top:1rem; border-top:1px solid var(--line); }
.product-bottom strong{ font-family:'Bebas Neue',sans-serif; font-size:1.7rem; color:var(--gold-light); white-space:nowrap; }
.whatsapp-order{ border:1px solid var(--gold); background:transparent; color:var(--white); padding:.72rem .8rem; font-family:'Oswald',sans-serif; font-size:.63rem; letter-spacing:.12em; text-transform:uppercase; transition:all .3s ease; }
.whatsapp-order:hover{ background:var(--gold); color:var(--black); }
.store-note{ margin-top:3rem; padding:1.2rem 0 0; border-top:1px solid var(--line); display:flex; gap:1rem; align-items:flex-start; }
.store-note span{ color:var(--gold-light); font-family:'Oswald',sans-serif; font-size:.66rem; letter-spacing:.2em; white-space:nowrap; }
.store-note p{ font-size:.82rem; color:var(--grey); }

@media (max-width:1024px){
  .store-grid{ grid-template-columns:repeat(2,minmax(0,1fr)); }
  .store-intro{ grid-template-columns:1fr; }
  .store-intro > p{ justify-self:start; }
}
@media (max-width:900px){
  .site-header{ padding-left:var(--gutter); }
  .athlete-1{ width:100%; }
  .athlete-1 .athlete-frame{ width:82%; height:78%; }
  .founder-mark{ min-height:360px; }
}
@media (max-width:600px){
  .store-grid{ grid-template-columns:1fr; }
  .product-bottom{ align-items:flex-start; flex-direction:column; }
  .whatsapp-order{ width:100%; }
  .store-note{ flex-direction:column; }
  .athlete-1 .athlete-frame{ width:82%; height:82%; }
}

/* =========================================================
   DRAGON FORCE — REFINED HOME HERO / JOURNEY SYSTEM
   ========================================================= */
:root{
  --hero-gold:#d9b56b;
  --hero-gold-soft:#b88b3d;
  --hero-cream:#f3eee3;
  --hero-muted:#85827b;
  --hero-red:#9e1e19;
}

.dragon-stage{position:relative;height:300vh;background:#050505}
.dragon-sticky{position:sticky;top:0;height:100vh;min-height:680px;overflow:hidden;background:radial-gradient(circle at 78% 47%,rgba(199,154,59,.11),transparent 28%),radial-gradient(circle at 25% 72%,rgba(255,255,255,.035),transparent 25%),#050505}
.dragon-noise{position:absolute;inset:-50%;opacity:.065;pointer-events:none;z-index:1;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.55'/%3E%3C/svg%3E");transform:rotate(8deg)}
.dragon-grid{position:absolute;inset:0;opacity:.14;pointer-events:none;background-image:linear-gradient(rgba(217,181,107,.05) 1px,transparent 1px),linear-gradient(90deg,rgba(217,181,107,.05) 1px,transparent 1px);background-size:76px 76px;mask-image:radial-gradient(circle at 76% 50%,black,transparent 58%);z-index:1}
.dragon-art{position:absolute;width:min(67vw,930px);height:min(67vw,760px);right:-2vw;top:51%;transform:translateY(-50%);z-index:2;opacity:.95;will-change:transform}.dragon-art svg{width:100%;height:100%;overflow:visible}.dragon-linework{stroke-width:2.25;vector-effect:non-scaling-stroke;filter:drop-shadow(0 0 5px rgba(217,181,107,.15))}.dragon-stroke{stroke-dasharray:1;stroke-dashoffset:1;will-change:stroke-dashoffset,opacity}.dragon-detail{opacity:.72}.dragon-fill{transform-origin:50% 50%;will-change:opacity,transform;filter:drop-shadow(0 0 18px rgba(217,181,107,.08))}
.dragon-seal{position:absolute;right:7.2%;bottom:18%;z-index:4;width:50px;height:50px;border:1px solid rgba(158,30,25,.82);color:#b72b24;display:grid;place-items:center;font-family:serif;font-size:1.7rem;transform:rotate(-4deg);opacity:.82}.dragon-vertical{position:absolute;left:2.7%;top:50%;z-index:4;transform:translateY(-50%) rotate(-90deg);transform-origin:left center;color:rgba(243,238,227,.30);font-family:'Oswald',sans-serif;font-size:.55rem;letter-spacing:.34em;white-space:nowrap}
.hero-copy{position:absolute;z-index:5}.hero-copy-main{left:var(--gutter);top:50%;transform:translateY(-47%);width:min(620px,49vw);will-change:transform,opacity}.hero-kicker{display:flex;align-items:center;gap:.75rem;color:var(--hero-muted);font-family:'Oswald',sans-serif;font-size:.64rem;letter-spacing:.32em;text-transform:uppercase;margin-bottom:1.5rem}.hero-kicker i{display:block;width:28px;height:1px;background:var(--hero-gold)}.hero-counter{position:absolute;left:0;top:-4.6rem;display:flex;align-items:center;gap:.7rem;color:var(--hero-muted);font:500 .58rem 'Oswald',sans-serif;letter-spacing:.2em}.counter-line{width:70px;height:1px;background:linear-gradient(90deg,var(--hero-gold),transparent)}.hero-copy h1{font-family:'Bebas Neue','Oswald',sans-serif;font-size:clamp(4.5rem,8.2vw,8.4rem);line-height:.82;letter-spacing:.015em;max-width:700px;text-wrap:balance}.hero-copy h1 em{font-style:normal;color:var(--hero-gold)}.hero-dot{color:#a52a21}.hero-lede{margin-top:1.8rem;font-size:clamp(.92rem,1.1vw,1.05rem);line-height:1.75;color:rgba(243,238,227,.64);letter-spacing:.035em}.hero-actions{display:flex;align-items:center;gap:1.8rem;margin-top:2rem}.text-link{display:inline-flex;align-items:center;gap:.7rem;font-family:'Oswald',sans-serif;text-transform:uppercase;letter-spacing:.17em;font-size:.68rem;color:var(--hero-cream);white-space:nowrap}.text-link:hover{color:var(--hero-gold)}.play-ring{width:38px;height:38px;border:1px solid rgba(217,181,107,.7);border-radius:50%;display:grid;place-items:center;font-size:.52rem;padding-left:2px}.hero-side-note{position:absolute;right:3.2%;top:46%;transform:translateY(-50%);z-index:5;text-align:center;font:500 .57rem/2 'Oswald',sans-serif;letter-spacing:.32em;text-transform:uppercase;color:rgba(243,238,227,.40)}.hero-side-note::after{content:"";display:block;width:1px;height:70px;background:linear-gradient(var(--hero-gold),transparent);margin:1.2rem auto 0}.hero-scroll{position:absolute;bottom:2rem;right:3.2%;z-index:5;display:flex;align-items:center;gap:.8rem;color:var(--hero-muted);font:500 .57rem 'Oswald',sans-serif;letter-spacing:.25em;text-transform:uppercase}.hero-scroll b{width:38px;height:1px;background:var(--hero-gold);display:block}.hero-scroll small{font-size:.9rem;color:var(--hero-gold);animation:pulse 1.8s infinite}.journey-transition{position:absolute;left:var(--gutter);bottom:4.5%;z-index:5;display:flex;align-items:center;gap:1rem;color:rgba(243,238,227,.38);font:500 .58rem 'Oswald',sans-serif;letter-spacing:.25em;text-transform:uppercase;opacity:0;transform:translateY(25px)}.journey-index{font-size:1.2rem;color:var(--hero-gold);letter-spacing:.08em}.journey-rule{width:70px;height:1px;background:linear-gradient(90deg,var(--hero-gold),transparent)}

.journey-section{position:relative;isolation:isolate;background:#070707;padding:clamp(7rem,11vw,10rem) 0 clamp(6rem,9vw,8.5rem);overflow:hidden}.journey-bg{position:absolute;inset:0;z-index:-3;background-image:url('../assets/images/journey-bg.jpg');background-size:cover;background-position:center 52%;opacity:.38;filter:saturate(.72) contrast(1.05)}.journey-vignette{position:absolute;inset:0;z-index:-2;background:linear-gradient(90deg,#070707 0%,rgba(7,7,7,.92) 22%,rgba(7,7,7,.60) 58%,rgba(7,7,7,.86) 100%),linear-gradient(0deg,#070707 0%,transparent 22%,rgba(7,7,7,.55) 100%)}.journey-section::after{content:"";position:absolute;inset:0;z-index:-1;background:radial-gradient(circle at 78% 28%,rgba(217,181,107,.09),transparent 25%);pointer-events:none}.journey-container{position:relative;z-index:1}.journey-intro{position:relative;max-width:760px;margin-bottom:clamp(5rem,8vw,7.5rem)}.journey-index-large{position:absolute;left:-.12em;top:-.42em;font:400 clamp(9rem,19vw,18rem)/1 'Bebas Neue';color:rgba(255,255,255,.035);pointer-events:none;z-index:-1}.journey-intro .eyebrow{display:flex;align-items:center;gap:.8rem}.journey-intro .eyebrow span{display:block;width:34px;height:1px;background:var(--hero-gold)}.journey-intro h2{font-size:clamp(3.5rem,6.7vw,6.8rem);margin:1.2rem 0 1.5rem;line-height:.84;max-width:760px}.journey-intro p{max-width:540px;font-size:1rem;line-height:1.8;color:rgba(245,242,233,.60);margin-bottom:1.8rem}.text-link-gold{color:var(--hero-gold)}
.belt-journey{position:relative;margin-bottom:clamp(5.5rem,9vw,8rem);padding-top:1rem}.belt-rail{position:absolute;left:6.5%;right:6.5%;top:56px;height:1px;background:linear-gradient(90deg,rgba(217,181,107,.08),rgba(217,181,107,.35),rgba(217,181,107,.08))}.belt-rail span{display:block;width:100%;height:1px;background:linear-gradient(90deg,transparent,var(--hero-gold),transparent);opacity:.22}.belt-list{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:.65rem}.belt-step{position:relative;text-align:center;min-width:0;padding:0 .5rem}.belt-icon{width:82px;height:44px;display:block;margin:0 auto;fill:currentColor;filter:drop-shadow(0 8px 10px rgba(0,0,0,.35));opacity:.62;transition:transform .35s ease,opacity .35s ease,filter .35s ease}.belt-white{color:#e9e5d9}.belt-yellow{color:#d0ad38}.belt-orange{color:#c27631}.belt-green{color:#52715a}.belt-blue{color:#4c6b94}.belt-brown{color:#745039}.belt-black{color:#242424;stroke:#565656;stroke-width:1}.belt-step b{display:block;margin-top:1rem;color:rgba(243,238,227,.34);font:500 .58rem 'Oswald',sans-serif;letter-spacing:.2em}.belt-step strong{display:block;margin-top:.45rem;font:400 1rem 'Bebas Neue';letter-spacing:.08em;color:rgba(243,238,227,.48);text-transform:uppercase}.belt-step small{display:block;margin-top:.22rem;font:500 .55rem 'Oswald',sans-serif;letter-spacing:.2em;color:rgba(243,238,227,.28);text-transform:uppercase}.belt-step.active .belt-icon{opacity:1;transform:translateY(-3px) scale(1.05);filter:drop-shadow(0 0 16px rgba(233,229,217,.18))}.belt-step.active strong,.belt-step.active b{color:var(--hero-gold)}.belt-step.active small{color:rgba(243,238,227,.58)}.belt-step:hover .belt-icon{opacity:1;transform:translateY(-3px)}
.journey-values{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid var(--line);border-bottom:1px solid var(--line);background:rgba(5,5,5,.28);backdrop-filter:blur(4px)}.journey-value{padding:2.1rem 1.8rem 2.3rem;border-right:1px solid var(--line)}.journey-value:last-child{border-right:none}.journey-value span{font:500 .6rem 'Oswald',sans-serif;letter-spacing:.22em;color:var(--hero-gold)}.journey-value h3{font-size:1.65rem;margin:1.1rem 0 .7rem}.journey-value p{font-size:.84rem;line-height:1.65;color:rgba(245,242,233,.52);max-width:220px}

@media (max-width:1200px){.dragon-art{width:66vw;height:64vw;right:-3vw}.hero-copy-main{width:53vw}.journey-vignette{background:linear-gradient(90deg,#070707 0%,rgba(7,7,7,.94) 25%,rgba(7,7,7,.68) 62%,rgba(7,7,7,.88) 100%),linear-gradient(0deg,#070707 0%,transparent 25%,rgba(7,7,7,.5) 100%)}}
@media (max-width:1024px){.dragon-art{width:72vw;height:67vw;right:-12vw}.hero-copy-main{width:58vw}.hero-copy h1{font-size:clamp(4rem,9vw,7rem)}.journey-values{grid-template-columns:repeat(2,1fr)}.journey-value:nth-child(2){border-right:none;border-bottom:1px solid var(--line)}.journey-value:nth-child(1),.journey-value:nth-child(2){border-bottom:1px solid var(--line)}}
@media (max-width:900px){.dragon-stage{height:250vh}.dragon-sticky{min-height:620px}.dragon-art{width:91vw;height:82vw;right:-28vw;top:54%;opacity:.68}.hero-copy-main{left:var(--gutter);width:70vw;top:48%}.hero-copy h1{font-size:clamp(4rem,11vw,6.8rem)}.hero-side-note{display:none}.dragon-vertical{display:none}.dragon-seal{right:6%;bottom:12%}.hero-scroll{right:var(--gutter)}.journey-intro h2{font-size:clamp(3.2rem,8vw,5rem)}.belt-list{gap:.25rem}.belt-step{padding:0 .25rem}.belt-icon{width:72px}}
@media (max-width:600px){.dragon-stage{height:auto}.dragon-sticky{position:relative;height:100svh;min-height:650px}.dragon-grid{background-size:48px 48px}.dragon-art{width:138vw;height:112vw;right:-48vw;top:50%;opacity:.62}.hero-copy-main{left:var(--gutter);right:var(--gutter);width:auto;top:46%;transform:translateY(-45%)}.hero-kicker{font-size:.53rem;letter-spacing:.22em;margin-bottom:1.2rem}.hero-counter{top:-3rem}.hero-copy h1{font-size:clamp(3.6rem,17vw,5.4rem);line-height:.84}.hero-lede{font-size:.82rem;line-height:1.55;margin-top:1.3rem}.hero-actions{gap:1rem;flex-wrap:wrap;margin-top:1.5rem}.hero-actions .btn{padding:.82rem 1rem;font-size:.65rem}.text-link{font-size:.58rem}.play-ring{width:32px;height:32px}.hero-scroll{bottom:1.4rem;right:var(--gutter);font-size:.5rem}.hero-scroll b{width:24px}.dragon-seal{width:42px;height:42px;font-size:1.35rem;right:var(--gutter);bottom:6.5rem}.journey-transition{left:var(--gutter);bottom:2rem}.journey-section{padding-top:5.5rem}.journey-bg{background-position:58% center;opacity:.28}.journey-vignette{background:linear-gradient(90deg,#070707 0%,rgba(7,7,7,.88) 45%,rgba(7,7,7,.80) 100%),linear-gradient(0deg,#070707 0%,transparent 28%,rgba(7,7,7,.6) 100%)}.journey-intro{margin-bottom:4.5rem}.journey-intro h2{font-size:clamp(3.1rem,15vw,4.7rem)}.journey-intro p{font-size:.9rem}.belt-journey{overflow-x:auto;padding:1rem 0 1rem;margin-right:calc(var(--gutter) * -1);padding-right:var(--gutter);scrollbar-width:none}.belt-journey::-webkit-scrollbar{display:none}.belt-list{width:920px;grid-template-columns:repeat(7,1fr);gap:.2rem}.belt-rail{left:34px;right:34px;top:57px}.journey-values{grid-template-columns:1fr}.journey-value,.journey-value:nth-child(2){border-right:none;border-bottom:1px solid var(--line)}.journey-value:last-child{border-bottom:none}.journey-value{padding:1.6rem 0}.journey-section::before{top:1rem;right:-1rem}}
@media (prefers-reduced-motion:reduce){.dragon-stroke{stroke-dashoffset:0!important}.dragon-fill{opacity:.16!important}.journey-transition{opacity:1!important;transform:none!important}.dragon-art{transform:translateY(-50%)!important}}

/* ===================== STATIC DRAGON HERO REFINEMENT ===================== */
.dragon-stage{height:100svh;min-height:680px;background:#050505}
.dragon-sticky{position:relative;height:100svh;min-height:680px;overflow:hidden}
.dragon-art-static{width:min(58vw,820px);height:min(92vh,780px);right:-1vw;top:51%;transform:translateY(-50%);opacity:.94;z-index:2;pointer-events:none}
.dragon-realistic{width:100%;height:100%;display:block;object-fit:contain;object-position:center;filter:saturate(.88) contrast(1.06) drop-shadow(0 18px 42px rgba(199,154,59,.10));mix-blend-mode:screen}
.dragon-art-static::before{content:"";position:absolute;inset:0;z-index:1;pointer-events:none;background:linear-gradient(90deg,#050505 0%,rgba(5,5,5,.35) 14%,transparent 34%,transparent 100%)}
.dragon-art-static::after{content:"";position:absolute;inset:5% 0 5% 8%;z-index:1;pointer-events:none;background:radial-gradient(ellipse at 56% 48%,rgba(199,154,59,.12),transparent 50%);mix-blend-mode:screen}
.hero-counter{display:none}
.journey-transition.is-static-hidden{display:none}
.hero-scroll{cursor:pointer}

/* More atmospheric second section */
.journey-section{min-height:100svh;padding-top:clamp(7.5rem,11vw,10.5rem);padding-bottom:clamp(6.5rem,9vw,9rem)}
.journey-bg{opacity:.30;filter:saturate(.62) contrast(1.08) brightness(.72);background-position:center 55%;transform:scale(1.035)}
.journey-vignette{background:linear-gradient(90deg,#070707 0%,rgba(7,7,7,.95) 18%,rgba(7,7,7,.76) 46%,rgba(7,7,7,.45) 72%,rgba(7,7,7,.88) 100%),linear-gradient(0deg,#070707 0%,rgba(7,7,7,.18) 28%,rgba(7,7,7,.72) 100%)}
.journey-intro{max-width:700px;margin-bottom:clamp(4.5rem,7vw,6.5rem)}
.journey-intro h2{font-size:clamp(3.8rem,6.5vw,6.6rem);letter-spacing:.005em}
.journey-intro p{max-width:510px;color:rgba(245,242,233,.67)}

/* Belt progression: physical, compact belt marks rather than banner shapes */
.belt-journey{padding-top:.5rem}
.belt-rail{top:62px;left:5%;right:5%;background:linear-gradient(90deg,rgba(217,181,107,.05),rgba(217,181,107,.45),rgba(217,181,107,.05))}
.belt-list{gap:0}
.belt-step{padding:0 .35rem}
.belt-icon{width:100px;height:50px;opacity:.58;transition:transform .4s var(--ease),opacity .4s ease,filter .4s ease}
.belt-step.active .belt-icon{transform:translateY(-6px) scale(1.08)}
.belt-step strong{font-size:1.08rem;letter-spacing:.11em}
.belt-step small{font-size:.58rem;letter-spacing:.25em}
.belt-step b{font-size:.56rem}
.journey-values{margin-top:1rem;background:rgba(5,5,5,.40);backdrop-filter:blur(8px)}
.journey-value{padding:2.25rem 2rem 2.5rem}
.journey-value h3{font-size:1.8rem;letter-spacing:.04em}

@media (max-width:1200px){
  .dragon-art-static{width:59vw;right:-5vw}
  .hero-copy-main{width:49vw}
}
@media (max-width:900px){
  .dragon-stage,.dragon-sticky{min-height:650px}
  .dragon-art-static{width:82vw;height:78vh;right:-18vw;top:51%;opacity:.72}
  .hero-copy-main{width:62vw}
  .hero-copy h1{font-size:clamp(4rem,10vw,7rem)}
  .journey-bg{opacity:.24}
}
@media (max-width:600px){
  .dragon-stage,.dragon-sticky{height:100svh;min-height:650px}
  .dragon-art-static{width:118vw;height:76vh;right:-43vw;top:45%;opacity:.42}
  .dragon-art-static::before{background:linear-gradient(90deg,#050505 0%,rgba(5,5,5,.62) 26%,transparent 60%)}
  .hero-copy-main{width:auto;right:var(--gutter);top:45%;z-index:6}
  .hero-copy h1{font-size:clamp(3.65rem,16.5vw,5.35rem)}
  .hero-lede{font-size:.82rem}
  .hero-side-note{display:none}
  .journey-section{padding-top:5.75rem}
  .journey-bg{opacity:.22;background-position:62% center}
  .journey-intro h2{font-size:clamp(3.1rem,14.5vw,4.6rem)}
  .belt-icon{width:84px;height:44px}
}

/* ===== FINAL DRAGON HERO: LIGHT AURA + MICRO SPARKS ===== */
.dragon-stage{height:100svh;min-height:680px;background:#050505}
.dragon-sticky{position:relative;height:100svh;min-height:680px;overflow:hidden}
.dragon-art-static{width:min(58vw,820px);height:min(92vh,780px);right:-1vw;top:51%;transform:translateY(-50%);opacity:1;z-index:2;pointer-events:none;overflow:visible}
.dragon-art-static .dragon-glow-soft,.dragon-art-static .dragon-glow-tight,.dragon-art-static .dragon-main{position:absolute;inset:0;width:100%;height:100%;object-fit:contain;object-position:center;display:block;mix-blend-mode:screen}
.dragon-art-static .dragon-glow-soft{z-index:0;opacity:.15;filter:blur(34px) brightness(1.12) saturate(1.05);transform:scale(1.045);animation:dragonAuraSoft 7s ease-in-out infinite}
.dragon-art-static .dragon-glow-tight{z-index:1;opacity:.12;filter:blur(12px) brightness(1.08) saturate(1.04);transform:scale(1.018);animation:dragonAuraTight 5.5s ease-in-out infinite}
.dragon-art-static .dragon-main{z-index:2;opacity:.96;filter:saturate(.92) contrast(1.04) drop-shadow(0 12px 30px rgba(199,154,59,.07));animation:dragonSettle 1.25s cubic-bezier(.18,.72,.2,1) both,dragonFloat 9s ease-in-out 1.25s infinite}
.dragon-art-static::before{content:"";position:absolute;inset:0;z-index:3;pointer-events:none;background:linear-gradient(90deg,#050505 0%,rgba(5,5,5,.35) 13%,transparent 35%,transparent 100%)}
.dragon-art-static::after{content:"";position:absolute;inset:4% 0 4% 8%;z-index:1;pointer-events:none;background:radial-gradient(ellipse at 56% 48%,rgba(199,154,59,.045),transparent 53%);mix-blend-mode:screen}
.dragon-light-sweep{position:absolute;z-index:4;top:-18%;left:30%;width:58px;height:136%;pointer-events:none;opacity:0;transform:rotate(17deg) translateX(760px);background:linear-gradient(90deg,transparent,rgba(255,225,145,.02) 20%,rgba(255,225,145,.17) 50%,rgba(255,225,145,.02) 80%,transparent);filter:blur(13px);mix-blend-mode:screen;animation:dragonLightPass 4s ease-in-out .9s 1 forwards}
.dragon-sparks{position:absolute;inset:0;width:100%;height:100%;z-index:4;pointer-events:none}
@keyframes dragonSettle{from{opacity:0;transform:translateY(-50%) scale(.992)}to{opacity:.96;transform:translateY(-50%) scale(1)}}
@keyframes dragonFloat{0%,100%{transform:translateY(-50%) translate3d(0,0,0)}50%{transform:translateY(calc(-50% - 4px)) translate3d(-2px,-1px,0)}}
@keyframes dragonAuraSoft{0%,100%{opacity:.10}50%{opacity:.16}}
@keyframes dragonAuraTight{0%,100%{opacity:.08}50%{opacity:.13}}
@keyframes dragonLightPass{0%,12%{opacity:0;transform:rotate(17deg) translateX(760px)}28%{opacity:.38}50%{opacity:.12}72%,100%{opacity:0;transform:rotate(17deg) translateX(-760px)}}
@media(max-width:1200px){.dragon-art-static{width:59vw;right:-5vw}}
@media(max-width:900px){.dragon-art-static{width:82vw;height:78vh;right:-18vw;top:51%;opacity:.72}.dragon-art-static .dragon-main{opacity:.88}.dragon-art-static .dragon-glow-soft{opacity:.10}.dragon-art-static .dragon-glow-tight{opacity:.08}}
@media(max-width:600px){.dragon-art-static{width:118vw;height:76vh;right:-43vw;top:45%;opacity:.52}.dragon-art-static .dragon-main{opacity:.82}.dragon-art-static .dragon-glow-soft{opacity:.07}.dragon-art-static .dragon-glow-tight{opacity:.055}.dragon-art-static::before{background:linear-gradient(90deg,#050505 0%,rgba(5,5,5,.62) 26%,transparent 60%)}}
@media(prefers-reduced-motion:reduce){.dragon-art-static .dragon-main,.dragon-art-static .dragon-glow-soft,.dragon-art-static .dragon-glow-tight,.dragon-light-sweep{animation:none!important}.dragon-art-static .dragon-main{opacity:.96;transform:translateY(-50%)}.dragon-light-sweep{display:none}}

/* =========================================================
   FINAL HOMEPAGE HERO
   ========================================================= */
.hero-final{
  position:relative;width:100%;height:100svh;min-height:680px;
  overflow:hidden;isolation:isolate;
  background:
    radial-gradient(ellipse at 76% 47%,rgba(191,143,43,.13) 0%,rgba(191,143,43,.052) 25%,transparent 50%),
    #050505;
}
.hero-final::after{
  content:"";position:absolute;inset:0;z-index:5;pointer-events:none;
  background:linear-gradient(90deg,rgba(5,5,5,.38) 0%,transparent 33%,transparent 76%,rgba(5,5,5,.20) 100%),
             linear-gradient(0deg,rgba(5,5,5,.25),transparent 25%,rgba(5,5,5,.16));
}
.hero-final-bg-glow{
  position:absolute;z-index:0;width:min(66vw,1050px);height:min(72vh,760px);
  right:-3vw;top:50%;transform:translateY(-50%);border-radius:50%;
  background:radial-gradient(ellipse at 48% 48%,rgba(205,159,62,.17) 0%,rgba(185,137,47,.085) 24%,rgba(166,116,35,.032) 47%,transparent 70%);
  filter:blur(22px);pointer-events:none;
}
.hero-final-bg-glow::after{
  content:"";position:absolute;inset:8% 12%;border-radius:50%;
  background:radial-gradient(ellipse at 45% 55%,rgba(232,190,86,.055),transparent 62%);
  filter:blur(28px);
}
.hero-final-haze{
  position:absolute;z-index:0;width:55vw;height:65vh;right:7%;top:17%;
  border-radius:50%;background:radial-gradient(ellipse,rgba(215,166,62,.045),transparent 68%);
  filter:blur(40px);pointer-events:none;
}
.hero-final-sparks{position:absolute;inset:0;z-index:2;width:100%;height:100%;pointer-events:none}
.hero-final-dragon{
  position:absolute;z-index:3;width:min(55vw,920px);height:min(87vh,790px);
  right:-1.5vw;top:51%;transform:translate3d(0,-50%,0);pointer-events:none;
  animation:heroDragonFloat 8.8s ease-in-out infinite;
  will-change:transform;contain:layout paint;backface-visibility:hidden;
}
.hero-final-dragon-glow,.hero-final-dragon-image{
  position:absolute;inset:0;width:100%;height:100%;object-fit:contain;object-position:center;
}
.hero-final-dragon-glow{
  opacity:.17;transform:scale(1.045);filter:blur(30px) brightness(1.08);mix-blend-mode:screen;
}
.hero-final-dragon-image{
  opacity:.98;filter:saturate(.94) contrast(1.035) drop-shadow(0 15px 34px rgba(190,145,54,.07));
}
.hero-final-copy{
  position:absolute;z-index:7;left:clamp(3rem,7.3vw,7rem);top:50%;
  transform:translateY(-50%);width:min(44vw,590px);
}
.hero-final-kicker{
  display:flex;align-items:center;gap:.9rem;margin-bottom:1.65rem;
  color:#bca064;font-family:'Oswald',sans-serif;font-size:.68rem;letter-spacing:.34em;text-transform:uppercase;
}
.hero-final-kicker i{display:block;width:28px;height:1px;background:var(--gold)}
.hero-final-copy h1{
  margin:0;font-family:'Bebas Neue','Oswald',sans-serif;
  font-size:clamp(4.3rem,6.25vw,6.15rem);line-height:.84;letter-spacing:.015em;font-weight:400;text-transform:uppercase;
}
.hero-final-copy h1 span,.hero-final-copy h1 em{display:block}
.hero-final-copy h1 em{color:var(--gold-light);font-style:normal}
.hero-final-dot{display:inline!important;color:#a82d26}
.hero-final-lede{margin:2rem 0 1.75rem;color:rgba(241,237,228,.64);font-size:.94rem;line-height:1.68}
.hero-final-actions{display:flex;align-items:center;gap:1.4rem}
.hero-final-story{
  display:inline-flex;align-items:center;gap:.7rem;color:#ded7c9;
  font-family:'Oswald',sans-serif;font-size:.67rem;font-weight:500;letter-spacing:.19em;text-transform:uppercase;
}
.hero-final-play{
  width:40px;height:40px;display:grid;place-items:center;border:1px solid rgba(224,184,95,.72);
  border-radius:50%;font-size:.55rem;padding-left:2px;
}
.hero-final-side{
  position:absolute;z-index:7;right:3.5vw;top:42%;width:105px;text-align:center;
  color:rgba(224,207,169,.62);font-family:'Oswald',sans-serif;font-size:.54rem;
  line-height:2.05;letter-spacing:.29em;text-transform:uppercase;
}
.hero-final-side span{display:block}
.hero-final-seal{
  width:44px;height:44px;margin:1.4rem auto 0;display:grid;place-items:center;
  border:1px solid rgba(190,43,34,.75);color:#bd3028;font-family:Arial,sans-serif;font-size:1.45rem;
}
.hero-final-scroll{
  position:absolute;z-index:7;left:50%;bottom:1.6rem;transform:translateX(-50%);
  display:flex;flex-direction:column;align-items:center;gap:.45rem;color:rgba(232,216,179,.62);
  font-family:'Oswald',sans-serif;font-size:.53rem;letter-spacing:.3em;text-transform:uppercase;
}
.hero-final-scroll b{display:block;width:1px;height:31px;background:linear-gradient(var(--gold),transparent)}

.hero-final-side-kicker{
  color:rgba(224,183,95,.78);font-size:.47rem;letter-spacing:.24em;
  margin-bottom:.65rem;white-space:nowrap;
}
.hero-final-side-line{width:1px;height:28px;margin:.8rem auto 0;background:linear-gradient(var(--gold),transparent)}
.hero-final-programs{
  position:absolute;z-index:7;left:clamp(3rem,7.3vw,7rem);bottom:2.25rem;
  display:flex;align-items:center;gap:.85rem;color:rgba(231,220,197,.52);
  font-family:'Oswald',sans-serif;font-size:.48rem;letter-spacing:.22em;text-transform:uppercase;
}
.hero-final-programs i{width:3px;height:3px;border-radius:50%;background:rgba(211,166,72,.7);display:block}
@media(max-width:900px){.hero-final-programs{left:var(--gutter);bottom:1.5rem}.hero-final-side-kicker{font-size:.42rem}}
@media(max-width:600px){.hero-final-programs{display:none}}

@keyframes heroDragonFloat{
  0%,100%{transform:translate3d(0,-50%,0)}
  50%{transform:translate3d(-3px,calc(-50% - 2px),0)}
}
@media(max-width:1200px){
  .hero-final-dragon{width:58vw;right:-4vw}
  .hero-final-copy{width:47vw}
}
@media(max-width:900px){
  .hero-final-copy{left:var(--gutter);width:58vw}
  .hero-final-copy h1{font-size:clamp(3.9rem,9.8vw,6rem)}
  .hero-final-dragon{width:78vw;height:75vh;right:-17vw;top:53%;opacity:.8}
  .hero-final-side{right:15px}
}
@media(max-width:600px){
  .hero-final{min-height:650px}
  .hero-final-copy{left:24px;right:24px;width:auto;top:40%}
  .hero-final-kicker{font-size:.52rem;letter-spacing:.23em;margin-bottom:1.2rem}
  .hero-final-copy h1{font-size:clamp(3.45rem,15.8vw,5rem)}
  .hero-final-lede{font-size:.8rem;margin:1.35rem 0 1.35rem}
  .hero-final-actions{gap:1rem;flex-wrap:wrap}
  .hero-final-actions .btn{padding:.82rem 1rem;font-size:.62rem}
  .hero-final-story{font-size:.55rem}
  .hero-final-play{width:32px;height:32px}
  .hero-final-dragon{width:112vw;height:72vh;right:-39vw;top:57%;opacity:.57}
  .hero-final-side{display:none}
  .hero-final-scroll{bottom:1.1rem}
}
@media(prefers-reduced-motion:reduce){.hero-final-dragon{animation:none}}

/* ================= HERO CENTER BALANCE ================= */
.hero-final-center{
  position:absolute;z-index:4;left:46%;top:54%;
  transform:translate(-50%,-50%);
  display:flex;align-items:center;gap:1rem;
  pointer-events:none;opacity:.76;
}
.hero-final-center-number{
  font-family:'Bebas Neue','Oswald',sans-serif;
  font-size:clamp(7rem,12vw,11rem);line-height:.72;
  color:transparent;
  -webkit-text-stroke:1px rgba(224,184,95,.13);
  text-stroke:1px rgba(224,184,95,.13);
}
.hero-final-center-copy{
  display:flex;flex-direction:column;gap:.65rem;
  color:rgba(224,207,169,.48);
  font-family:'Oswald',sans-serif;text-transform:uppercase;
  letter-spacing:.22em;font-size:.48rem;line-height:1.5;
}
.hero-final-center-copy i{
  width:46px;height:1px;background:rgba(211,166,72,.48);
}
.hero-final-center-copy strong{
  font-size:.55rem;font-weight:500;color:rgba(244,235,215,.34);
}

/* ================= STORE: SHORTER / SQUARER CARDS ================= */
.product-media{aspect-ratio:1/1.04}
.product-info{padding:1.15rem 1.2rem 1.15rem}
.product-info h3{font-size:1.55rem;margin:.5rem 0 .4rem}
.product-info p{font-size:.78rem;line-height:1.45}
.product-bottom{margin-top:1rem}
.store-grid{align-items:start}

/* Keep expensive blur/glow layers from affecting scrolling on lower-end devices. */
.hero-final-bg-glow,.hero-final-haze,.hero-final-dragon-glow{
  will-change:transform;
  pointer-events:none;
}
.hero-final-sparks{
  contain:strict;
}

.brand img{width:42px;height:42px;object-fit:contain;border-radius:50%;}

/* =========================================================
   FINAL POLISH — CLEAN MOTION / PERFORMANCE
   ========================================================= */

/* No loader: content renders immediately. */
body{overflow-x:hidden}

/* Cleaner page-hero rhythm */
.page-hero{
  min-height:clamp(430px,58vh,680px);
  align-items:center;
  padding:8.5rem 0 5rem;
}
.page-hero .container{width:100%}
.page-hero h1{max-width:900px}
.page-hero p{line-height:1.75;color:rgba(232,226,215,.68)}

/* Contact hero */
.contact-hero{
  min-height:clamp(470px,62vh,690px);
  background:
    radial-gradient(circle at 72% 52%,rgba(210,165,70,.09),transparent 32%),
    linear-gradient(180deg,rgba(5,5,5,.2),var(--black) 90%),var(--charcoal);
}
.contact-hero-inner{max-width:850px;margin:0 auto;text-align:center}
.contact-hero .eyebrow{justify-content:center}
.contact-hero .eyebrow::before{display:none}
.contact-hero h1{
  margin:.9rem auto 0;
  font-size:clamp(3.6rem,8vw,7rem);
  line-height:.86;
  letter-spacing:.015em;
}
.contact-hero p{margin:1.7rem auto 0;max-width:640px;font-size:clamp(1rem,1.3vw,1.15rem)}

/* Contact CTA cards */
.contact-simple{
  max-width:1240px;
  margin:auto;
  display:grid;
  grid-template-columns:1fr;
  gap:clamp(1.7rem,3vw,2.6rem);
  padding-top:clamp(.25rem,1.2vw,1rem);
  padding-bottom:clamp(1rem,2vw,2rem);
}
.contact-simple-copy{max-width:1120px;}
.contact-simple-copy h2{font-size:clamp(3.15rem,6.2vw,6rem);line-height:.86;margin-top:.7rem;}
.contact-simple-copy p{max-width:1080px;margin-top:1.45rem;line-height:1.62;}
.contact-actions{gap:.9rem}
.contact-action{
  width:100%;
  border:1px solid rgba(211,166,72,.28);
  color:inherit;
  background:linear-gradient(135deg,rgba(255,255,255,.025),rgba(211,166,72,.018));
  min-height:112px;
  padding:1.25rem 1.35rem;
  display:grid;
  grid-template-columns:48px 1fr auto;
  align-items:center;
  gap:1rem;
  text-align:left;
  cursor:pointer;
  font:inherit;
  transition:transform .35s ease,border-color .35s ease,background .35s ease;
}
.contact-action:hover{
  transform:translateX(6px);
  border-color:rgba(224,184,95,.7);
  background:rgba(224,184,95,.055);
}
.contact-action-icon{
  width:48px;height:48px;border:1px solid rgba(224,184,95,.45);
  border-radius:50%;display:grid;place-items:center;
  color:var(--gold-light);font-size:1.15rem;
  transition:transform .35s ease,background .35s ease;
}
.contact-action:hover .contact-action-icon{transform:rotate(-8deg) scale(1.05);background:rgba(224,184,95,.08)}
.contact-action-copy{min-width:0}
.contact-action .label{display:block;margin-bottom:.38rem}
.contact-action .title{display:block;font-size:1.8rem;line-height:1}
.contact-action .arrow{font-size:1.35rem;color:var(--gold-light);transition:transform .35s ease}
.contact-action:hover .arrow{transform:translate(3px,-3px)}
.form-note{display:none}

/* Launch stories */
.launch-media{
  min-height:clamp(310px,34vw,520px);
  isolation:isolate;
}
.launch-media img{
  width:100%;height:100%;min-height:inherit;object-fit:cover;
  display:block;opacity:.88;
  transition:transform .8s cubic-bezier(.2,.75,.2,1),opacity .5s ease;
}
.launch-media:hover img{transform:scale(1.035);opacity:1}
.launch-media::after{
  content:"";position:absolute;inset:0;
  background:linear-gradient(180deg,rgba(4,4,4,.02),rgba(4,4,4,.45));
  pointer-events:none;
}
.launch-media-label{
  position:absolute;left:1.1rem;bottom:1rem;z-index:2;
  font:500 .6rem 'Oswald',sans-serif;letter-spacing:.22em;
  color:rgba(245,228,184,.75);text-transform:uppercase;
  padding:.4rem .55rem;border:1px solid rgba(224,184,95,.3);
  background:rgba(4,4,4,.5);backdrop-filter:blur(5px)
}

/* Store — consistent card geometry */
.store-grid{
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:clamp(1rem,2vw,1.5rem);
  align-items:stretch;
}
.product-card{
  min-width:0;
  height:100%;
  display:flex;
  flex-direction:column;
  transform:translateZ(0);
  transition:transform .35s cubic-bezier(.2,.75,.2,1),border-color .3s ease,box-shadow .35s ease;
}
.product-media{aspect-ratio:1/1;flex:none}
.product-media img{object-fit:contain;padding:2rem}
.product-info{
  flex:1;
  display:flex;
  flex-direction:column;
}
.product-info p{min-height:0;flex:1}
.product-bottom{margin-top:auto}
.coming-soon-card .product-media{aspect-ratio:1/1}
.coming-soon-card .product-info p{flex:none}
.coming-soon-mark strong{font-size:clamp(2.4rem,5vw,4.5rem)}
.store-filters{margin-bottom:2.5rem}
.store-filters .filter-btn{transition:transform .25s ease,background .25s ease,border-color .25s ease}
.store-filters .filter-btn:hover{transform:translateY(-2px)}
@media(max-width:760px){
  .store-grid{grid-template-columns:1fr}
  .product-media img{padding:1.5rem}
}
@media(max-width:820px){
  .page-hero{min-height:470px;padding:7.5rem 0 4rem}
  .contact-simple{grid-template-columns:1fr;gap:2rem}
  .contact-actions{max-width:100%;}
  .about-launch-story,.about-launch-story.reverse{gap:1.5rem}
}
@media(max-width:520px){
  .contact-hero h1{font-size:clamp(3.2rem,15vw,5rem)}
  .contact-action{min-height:94px;grid-template-columns:42px 1fr auto;padding:1rem}
  .contact-action-icon{width:42px;height:42px}
  .contact-action .title{font-size:1.45rem}
}

/* Staggered reveal without adding a heavy JS animation system. */
.about-launch-story:nth-child(2) .reveal{transition-delay:.08s}
.store-grid .product-card:nth-child(2) .reveal{transition-delay:.06s}

/* Respect system reduced-motion preferences. */
@media (prefers-reduced-motion: reduce){
  *,*::before,*::after{
    scroll-behavior:auto !important;
  }
  .reveal,.reveal.in{
    opacity:1 !important;
    transform:none !important;
    transition:none !important;
  }
  .product-card,.launch-media img,.contact-action,.contact-action-icon,.contact-action .arrow{
    transition:none !important;
    transform:none !important;
  }
}


/* =========================================================
   EVENT ARCHIVE + COMPACT STORE V3
   ========================================================= */
.gallery-section{padding-top:1rem}
.event-card{position:relative;display:block;width:100%;padding:0;border:1px solid rgba(211,166,72,.22);background:#0b0b0b;color:inherit;text-align:left;cursor:pointer;overflow:hidden;min-height:360px}
.event-card img{width:100%;height:100%;min-height:360px;object-fit:cover;display:block;filter:saturate(.78) contrast(1.04);transition:transform .55s ease,filter .35s ease}
.event-card::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 35%,rgba(0,0,0,.9) 100%);pointer-events:none}
.event-card-copy{position:absolute;left:1.25rem;right:1.25rem;bottom:1.2rem;z-index:2;display:grid;gap:.35rem}
.event-card-copy strong{font:500 clamp(1.35rem,2vw,1.9rem) 'Oswald',sans-serif;letter-spacing:.03em;text-transform:uppercase}
.event-card-copy small{color:rgba(245,239,229,.7);font-size:.78rem}
.event-card-copy i{font-style:normal;color:var(--gold-light);font:500 .62rem 'Oswald',sans-serif;letter-spacing:.15em;text-transform:uppercase;margin-top:.35rem}
.event-card:hover img{transform:scale(1.035);filter:saturate(1) contrast(1.06)}
.event-viewer{display:none;border-top:1px solid rgba(211,166,72,.24);margin-top:4rem;padding-top:2rem;scroll-margin-top:100px}
.event-viewer.open{display:block}
.event-back{border:1px solid rgba(211,166,72,.32);background:transparent;color:rgba(245,239,229,.8);padding:.72rem 1rem;font:500 .68rem 'Oswald',sans-serif;letter-spacing:.15em;text-transform:uppercase;cursor:pointer;transition:.25s ease}
.event-back:hover{color:var(--gold-light);border-color:rgba(211,166,72,.7);transform:translateX(-3px)}
.event-viewer-head{display:flex;justify-content:space-between;gap:2rem;align-items:end;margin:2.15rem 0 1.35rem}
.event-viewer-head h2{font:500 clamp(2.6rem,5vw,5.2rem)/.9 'Bebas Neue',sans-serif;letter-spacing:.02em;text-transform:uppercase;margin:.4rem 0 0}
.event-count{font:500 .68rem 'Oswald',sans-serif;letter-spacing:.2em;color:var(--gold-light)}
.event-viewer-grid{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(300px,.65fr);gap:1.6rem;align-items:stretch}
.event-media-column{min-width:0}
.event-feature-media{aspect-ratio:16/10;background:#0b0b0b;border:1px solid rgba(211,166,72,.2);overflow:hidden;position:relative}
.event-feature-media img{width:100%;height:100%;object-fit:cover;display:block;transition:opacity .25s ease,transform .45s ease}
.event-feature-media:hover img{transform:scale(1.01)}
.event-media-nav{position:absolute;z-index:3;top:50%;transform:translateY(-50%);width:42px;height:42px;border:1px solid rgba(224,184,95,.55);background:rgba(5,5,5,.68);backdrop-filter:blur(6px);color:var(--white);font-size:1rem;display:grid;place-items:center;opacity:.8;transition:all .25s ease}
.event-media-nav:hover{opacity:1;background:rgba(199,154,59,.95);color:var(--black);border-color:var(--gold-light)}
.event-media-prev{left:.8rem}.event-media-next{right:.8rem}
.event-thumbs{display:flex;gap:.55rem;margin-top:.6rem;overflow-x:auto;overflow-y:hidden;padding-bottom:.2rem;scrollbar-width:thin;scroll-behavior:smooth;}
.event-thumbs::-webkit-scrollbar{height:4px}.event-thumbs::-webkit-scrollbar-thumb{background:rgba(211,166,72,.35)}
.event-thumb{padding:0;flex:0 0 calc((100% - 1.65rem)/4);min-width:0;border:1px solid rgba(211,166,72,.2);background:#0b0b0b;aspect-ratio:4/3;overflow:hidden;cursor:pointer;opacity:.54;transition:.25s ease}
.event-thumb img{width:100%;height:100%;object-fit:cover;display:block}
.event-thumb.active,.event-thumb:hover{opacity:1;border-color:var(--gold-light)}
.event-story{border:1px solid rgba(211,166,72,.2);padding:clamp(1.35rem,2.4vw,2rem);min-height:100%;background:linear-gradient(145deg,rgba(255,255,255,.02),rgba(211,166,72,.015));display:flex;flex-direction:column}
.event-story-label{font:500 .6rem 'Oswald',sans-serif;letter-spacing:.2em;color:var(--gold-light);text-transform:uppercase}
.event-story h3{font:500 clamp(1.65rem,2.6vw,2.45rem)/1 'Oswald',sans-serif;text-transform:uppercase;margin:.9rem 0}
.event-story p{color:rgba(232,226,215,.72);line-height:1.72;font-size:.88rem}
.event-meta{display:flex;flex-wrap:wrap;gap:.5rem;margin-top:1.35rem}.event-meta span{border:1px solid rgba(211,166,72,.25);padding:.42rem .55rem;color:rgba(245,239,229,.62);font:500 .55rem 'Oswald',sans-serif;letter-spacing:.13em}
.event-video-note{margin-top:auto;padding-top:1.25rem;border-top:1px solid rgba(211,166,72,.18);font:500 .58rem 'Oswald',sans-serif;letter-spacing:.14em;color:var(--gold-light);text-transform:uppercase}.event-video-note span{display:block;margin-top:.5rem;color:rgba(245,239,229,.42);letter-spacing:.04em;text-transform:none;font-family:'Inter',sans-serif;font-weight:400;line-height:1.55}
.event-navigation{display:grid;grid-template-columns:1fr auto 1fr;gap:1rem;align-items:center;margin-top:1.25rem;padding:1rem 0 0;border-top:1px solid rgba(211,166,72,.18)}
.event-nav-btn{display:inline-flex;align-items:center;gap:.85rem;border:1px solid rgba(211,166,72,.25);background:rgba(255,255,255,.015);color:rgba(245,239,229,.86);padding:.75rem .85rem;text-align:left;transition:all .25s ease;min-width:170px}
.event-nav-btn:hover{border-color:var(--gold-light);background:rgba(211,166,72,.055);color:var(--gold-light);transform:translateY(-2px)}
.event-nav-btn>span:first-child{font-size:1rem;color:var(--gold-light)}
.event-nav-btn small,.event-nav-btn strong{display:block}.event-nav-btn small{font:500 .52rem 'Oswald',sans-serif;letter-spacing:.15em;text-transform:uppercase;color:rgba(245,239,229,.42)}.event-nav-btn strong{font:500 .78rem 'Oswald',sans-serif;letter-spacing:.11em;text-transform:uppercase;margin-top:.12rem}
.event-nav-next{justify-self:end;text-align:right}.event-nav-next>span:last-child{font-size:1rem;color:var(--gold-light)}
.event-nav-center{text-align:center;min-width:120px}.event-nav-center span{display:block;font:500 .52rem 'Oswald',sans-serif;letter-spacing:.18em;color:rgba(245,239,229,.4)}.event-nav-center i{display:block;width:30px;height:1px;background:var(--gold);margin:.42rem auto}.event-nav-center strong{font:500 .68rem 'Oswald',sans-serif;letter-spacing:.18em;color:var(--gold-light)}

/* Compact 4-up store cards */
.store-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:1rem;align-items:stretch}
.product-card{min-width:0;height:auto;display:flex;flex-direction:column;border-color:rgba(211,166,72,.2)}
.product-media{aspect-ratio:1/1;min-height:0;background:linear-gradient(145deg,#101010,#0b0b0b)}
.product-media img{width:100%;height:100%;object-fit:contain;padding:.72rem;display:block}
.product-info{padding:.9rem .95rem 1rem}
.product-info h3{font-size:1.25rem;line-height:1.05;margin:.32rem 0 .35rem}
.product-info p{font-size:.7rem;line-height:1.45;min-height:3.05em}
.product-bottom{display:flex;align-items:center;justify-content:space-between;gap:.45rem;margin-top:.7rem}
.product-bottom strong{font-size:1rem;color:var(--gold-light)}
.whatsapp-order{font:500 .54rem 'Oswald',sans-serif;letter-spacing:.08em;text-transform:uppercase;padding:.52rem .6rem;border:1px solid rgba(211,166,72,.35);background:transparent;color:rgba(245,239,229,.8);cursor:pointer;white-space:nowrap;transition:.25s ease}
.whatsapp-order:hover{background:rgba(211,166,72,.1);border-color:var(--gold-light);color:var(--gold-light)}
.store-more-note{margin:1.7rem auto 0;max-width:560px;text-align:center;padding:.9rem 1rem 0;border-top:1px solid rgba(211,166,72,.18);color:rgba(232,226,215,.55)}
.store-more-note span{font:500 .58rem 'Oswald',sans-serif;letter-spacing:.2em;color:var(--gold-light)}
.store-more-note p{margin:.35rem 0 0;font-size:.72rem}

/* Refined training contact actions */
.contact-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;max-width:1180px;width:100%;}
.contact-action{min-height:128px;padding:1.05rem 1.2rem;display:grid;grid-template-columns:50px 1fr auto;align-items:center;gap:1rem;text-decoration:none;border-color:rgba(211,166,72,.24)}
.contact-action-icon{width:50px;height:50px;border:1px solid rgba(224,184,95,.45);border-radius:50%;display:grid;place-items:center;color:var(--gold-light);background:rgba(224,184,95,.025)}
.contact-action-icon svg{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1.65;stroke-linecap:round;stroke-linejoin:round}
.contact-action-icon.whatsapp-icon svg{width:23px;height:23px;stroke-width:1.45}
.contact-action-copy .sub{display:block;margin-top:.5rem;color:rgba(232,226,215,.5);font-size:.69rem;line-height:1.55;max-width:300px}
.contact-action .label{font-size:.72rem;color:rgba(245,242,233,.72);letter-spacing:.04em}
.contact-action .title{font-size:1.5rem;line-height:1;margin-top:.08rem}
.contact-action .arrow{font-size:1.2rem}

@media(max-width:1100px){.store-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.event-viewer-grid{grid-template-columns:1fr}.event-story{min-height:auto}}
@media(max-width:760px){.store-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:.85rem}.contact-actions{grid-template-columns:1fr}.event-viewer-head{align-items:start;flex-direction:column;gap:.7rem}.event-card,.event-card img{min-height:300px}.event-navigation{grid-template-columns:1fr 1fr}.event-nav-center{grid-column:1/-1;grid-row:1}.event-nav-btn{min-width:0}.event-nav-next{justify-self:stretch}.event-nav-btn{justify-content:flex-start}.event-nav-next{justify-content:flex-end}}
@media(max-width:480px){.event-thumb{flex-basis:calc((100% - .9rem)/3)}.store-grid{grid-template-columns:1fr 1fr}.product-info{padding:.75rem}.product-info h3{font-size:1.08rem}.product-info p{font-size:.66rem}.product-bottom{align-items:flex-start;flex-direction:column}.whatsapp-order{width:100%}.event-thumbs{gap:.35rem}.event-card,.event-card img{min-height:250px}.event-media-nav{width:36px;height:36px}.event-navigation{gap:.55rem}.event-nav-btn{padding:.65rem .6rem}.event-nav-btn strong{font-size:.68rem}}

/* Final consistency pass */
.contact-simple{gap:clamp(1.7rem,3vw,2.8rem)}
.contact-actions{align-self:start}
.why-item:last-child{border-bottom:0}
@media(max-width:900px){.why-item{grid-template-columns:64px 1fr}}


/* =========================================================
   FINAL UX POLISH — ABOUT STORIES / EVENT VIEWER / NAV
   ========================================================= */

/* About milestone stories: compact alternating editorial layout. */
.about-launch-stories{
  display:grid;
  gap:clamp(4rem,8vw,7rem);
  margin-top:clamp(2.5rem,5vw,4.5rem);
}
.about-launch-story{
  display:grid;
  grid-template-columns:minmax(0,.9fr) minmax(300px,1.1fr);
  align-items:center;
  gap:clamp(2rem,5vw,5.5rem);
}
.about-launch-story.reverse{
  grid-template-columns:minmax(300px,1.1fr) minmax(0,.9fr);
}
.about-launch-story.reverse .launch-copy{order:2;}
.about-launch-story.reverse .launch-media{order:1;}

.about-launch-story .launch-copy{
  max-width:570px;
}
.about-launch-story .launch-copy h3{
  font-size:clamp(2rem,4vw,3.4rem);
  margin:.8rem 0 1rem;
}
.about-launch-story .launch-copy p{
  max-width:560px;
  font-size:.95rem;
  line-height:1.75;
}
.about-launch-story .launch-media{
  position:relative;
  width:min(100%,620px);
  justify-self:end;
  min-height:0;
  aspect-ratio:16/10;
  overflow:hidden;
  border:1px solid var(--line);
  background:var(--charcoal);
}
.about-launch-story.reverse .launch-media{
  justify-self:start;
}
.about-launch-story .launch-media img{
  width:100%;
  height:100%;
  min-height:0;
  object-fit:cover;
  opacity:.9;
}
.about-launch-story .launch-media::after{
  background:linear-gradient(180deg,rgba(4,4,4,.02),rgba(4,4,4,.34));
}
.about-launch-story .launch-media-label{
  left:.8rem;
  bottom:.8rem;
}

/* Remove the old large event-to-event navigation and its spacing completely. */
.event-navigation{
  display:none !important;
}
.event-viewer{
  margin-bottom:0;
  padding-bottom:0;
}

/* Keep the viewer compact after the thumbnails. */
.event-thumbs{
  scrollbar-width:thin;
}

/* Navigation page transition: covers the old document immediately so the
   browser never exposes a half-painted page while the next document loads. */
.page-transition{
  position:fixed;
  inset:0;
  z-index:9999;
  pointer-events:none;
  background:var(--black);
  opacity:0;
  visibility:hidden;
  transition:opacity .16s ease, visibility 0s linear .16s;
}
.page-transition.is-active{
  opacity:1;
  visibility:visible;
  transition:opacity .16s ease;
}

@media(max-width:820px){
  .about-launch-stories{gap:3.5rem;}
  .about-launch-story,
  .about-launch-story.reverse{
    grid-template-columns:1fr;
    gap:1.5rem;
  }
  .about-launch-story .launch-copy,
  .about-launch-story.reverse .launch-copy{
    order:1;
    max-width:100%;
  }
  .about-launch-story .launch-media,
  .about-launch-story.reverse .launch-media{
    order:2;
    width:100%;
    max-width:680px;
    justify-self:start;
  }
}

@media(max-width:520px){
  .about-launch-stories{gap:3rem;}
  .about-launch-story .launch-media{
    aspect-ratio:4/3;
  }
}

/* Start Training: tighter vertical rhythm so the CTA section does not feel
   detached from the content above or leave a large dead zone below. */
.contact-section{
  padding-top:clamp(2.5rem,4.5vw,4.25rem) !important;
  padding-bottom:clamp(2.5rem,4.5vw,4rem) !important;
}
.contact-section .contact-simple{
  gap:clamp(1.25rem,2.2vw,2rem);
  padding-top:0;
  padding-bottom:0;
}
.contact-section .contact-actions{
  gap:.9rem;
}
.contact-section .contact-action{
  min-height:118px;
}
@media(max-width:760px){
  .contact-section{
    padding-top:3rem !important;
    padding-bottom:3rem !important;
  }
}


/* =========================================================
   DFMA 2026 CONTENT UPDATE
   ========================================================= */
.brand{flex:0 0 auto;min-width:0;display:flex;align-items:center;gap:.72rem}
.brand-text{flex:0 0 auto;width:auto;min-width:0;line-height:.96;text-align:left;letter-spacing:.105em;white-space:nowrap;overflow:visible;font-size:1.18rem}
.brand-text span{display:block;width:auto;font-family:'Oswald',sans-serif;font-size:.54rem;line-height:1.15;letter-spacing:.17em;text-align:left;white-space:nowrap;color:var(--gold-light)}
.nav-links{gap:1.55rem}

/* Journey identity: clean logo-only treatment — no card, border or duplicate title. */
.journey-logo-panel{position:absolute;right:5.5rem;top:0;width:clamp(300px,24vw,390px);aspect-ratio:1;display:flex;align-items:center;justify-content:center;padding:0;background:transparent;border:0;border-radius:0;box-shadow:none;overflow:visible}
.journey-logo-panel::before,.journey-logo-panel::after{display:none}
.journey-logo-panel img{position:relative;z-index:1;width:112%;height:112%;object-fit:contain;border-radius:50%;filter:drop-shadow(0 0 26px rgba(217,181,107,.34)) drop-shadow(0 0 52px rgba(224,184,95,.14));margin:0}
.journey-logo-panel .journey-logo-label,.journey-logo-panel strong,.journey-logo-panel small{display:none}

/* 30+ anniversary mark: understated grey → light-gold outline/fill, matching the hero's low-opacity language. */
.hero-final-center-number{background:none;-webkit-background-clip:initial;background-clip:initial;-webkit-text-fill-color:transparent;color:transparent;-webkit-text-stroke:1.35px rgba(224,184,95,.46);text-stroke:1.35px rgba(224,184,95,.46);letter-spacing:.01em;filter:drop-shadow(0 0 8px rgba(224,184,95,.035))}
.hero-final-copy h1 em{color:var(--hero-gold)!important}

/* Dedicated Our Dragons screen */
.our-dragons-hero{padding-top:clamp(9rem,15vw,13rem);padding-bottom:clamp(4rem,7vw,6rem);background:radial-gradient(circle at 78% 35%,rgba(199,154,59,.08),transparent 36%),#050505}
.our-dragons-hero h1{font-size:clamp(4rem,7vw,7.2rem);max-width:900px;margin-top:1.2rem}
.our-dragons-hero p{max-width:680px;margin-top:1.35rem;font-size:clamp(.9rem,1.15vw,1.05rem)}
.our-dragons-page{padding-top:clamp(2rem,4vw,4rem)}
.journey-intro{max-width:58%}
.belt-list{grid-template-columns:repeat(8,minmax(0,1fr))}.belt-purple{color:#714b83}.belt-step:nth-child(6) .belt-icon{filter:drop-shadow(0 0 14px rgba(113,75,131,.25))}

/* Homepage teaching rail */
.home-teach-head{max-width:780px}.home-teach-head p{max-width:650px;margin-top:1rem;font-size:.9rem}
.home-teach-shell{position:relative;display:flex;align-items:center;gap:.75rem}.home-teach-viewport{overflow:hidden;flex:1}.home-teach-track{display:flex;gap:1.5rem;transition:transform .55s var(--ease);will-change:transform}.home-teach-card{flex:0 0 calc((100% - 4.5rem)/4);min-width:0;display:block}.home-teach-card .overlay{padding:1.3rem}.home-teach-card .card-arrow{position:absolute;right:1.3rem;bottom:1.3rem;color:var(--gold-light);font-family:'Oswald',sans-serif;font-size:1rem}.teach-slider-arrow{flex:0 0 46px;width:46px;height:46px;border:1px solid var(--line);background:rgba(5,5,5,.9);color:var(--white);font-size:1rem;transition:.25s ease;z-index:2}.teach-slider-arrow:hover:not(:disabled){background:var(--gold);color:var(--black);border-color:var(--gold)}.teach-slider-arrow:disabled{opacity:.28;cursor:default}.home-teach-footer{display:flex;justify-content:space-between;align-items:center;margin-top:1.35rem;padding-top:1rem;border-top:1px solid var(--line)}.home-teach-footer>span{font:500 .58rem 'Oswald',sans-serif;letter-spacing:.2em;color:rgba(245,242,233,.36)}

/* Our Dragons — image-led black belt profile system */
.our-dragons-section{background:linear-gradient(180deg,#050505,#090806 55%,#050505);border-top:1px solid rgba(199,154,59,.12)}.our-dragons-head{max-width:800px}.our-dragons-head p{max-width:660px;margin-top:1rem}.dragon-profiles-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1px;background:rgba(199,154,59,.18);border:1px solid rgba(199,154,59,.18)}.dragon-profile{background:#080808;display:grid;grid-template-columns:minmax(220px,.9fr) minmax(0,1.1fr);min-height:310px}.dragon-profile-media{position:relative;overflow:hidden;border-right:1px solid rgba(199,154,59,.16);background:#111}.dragon-profile-media img{width:100%;height:100%;object-fit:cover;filter:grayscale(.75) contrast(1.06) brightness(.72);transition:transform .65s var(--ease),filter .5s ease}.dragon-profile:hover .dragon-profile-media img{transform:scale(1.045);filter:grayscale(.15) contrast(1.04) brightness(.8)}.dragon-profile-media::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 45%,rgba(0,0,0,.72));pointer-events:none}.dragon-profile-belt{position:absolute;z-index:2;left:.8rem;top:.8rem;border:1px solid rgba(255,255,255,.3);background:rgba(5,5,5,.72);padding:.32rem .5rem;color:var(--white);font:500 .52rem 'Oswald',sans-serif;letter-spacing:.17em}.dragon-profile-no{position:absolute;z-index:2;right:.8rem;bottom:.7rem;color:var(--gold-light);font:500 .58rem 'Oswald',sans-serif;letter-spacing:.18em}.dragon-profile-info{padding:1.55rem 1.5rem;display:flex;flex-direction:column;justify-content:flex-end}.dragon-profile-role{font:500 .58rem 'Oswald',sans-serif;letter-spacing:.2em;text-transform:uppercase;color:var(--gold-light)}.dragon-profile-info h3{font-size:clamp(2rem,3.2vw,3rem);margin:.55rem 0 .7rem}.dragon-profile-info p{font-size:.8rem;line-height:1.65;color:rgba(245,242,233,.55);max-width:340px}

/* Teaching archive viewer */
.teach-viewer .event-story{background:linear-gradient(145deg,rgba(255,255,255,.02),rgba(199,154,59,.02))}.teach-discipline-navigation{display:grid;grid-template-columns:1fr auto 1fr;gap:1rem;align-items:center;margin-top:1rem;padding-top:1rem;border-top:1px solid rgba(211,166,72,.18)}.teach-discipline-navigation .event-nav-btn{min-width:150px}.teach-discipline-navigation .event-nav-btn:first-child{justify-self:start}.teach-discipline-navigation .event-nav-next{justify-self:end}.teach-card{padding:0;background:#0a0a0a;color:inherit;text-align:left}.teach-card .event-card-copy{position:absolute;left:1rem;right:1rem;bottom:1rem;z-index:2;display:grid;gap:.3rem}.teach-card .event-card-copy strong{font:500 1.5rem 'Oswald',sans-serif;text-transform:uppercase}.teach-card .event-card-copy small{font-size:.72rem;color:rgba(245,239,229,.7);display:block;line-height:1.5}.teach-card .event-card-copy i{font-style:normal;color:var(--gold-light);font:500 .58rem 'Oswald',sans-serif;letter-spacing:.14em;text-transform:uppercase}.teach-card::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 30%,rgba(0,0,0,.92) 100%);pointer-events:none}.teach-card img{min-height:360px;object-fit:cover;filter:saturate(.72) brightness(.72);transition:transform .55s ease,filter .35s ease}.teach-card:hover img{transform:scale(1.045);filter:saturate(.95) brightness(.78)}

@media(max-width:1200px){.nav-links{gap:1.25rem}.journey-logo-panel{right:3.75rem;width:260px}.journey-intro{max-width:58%}.home-teach-card{flex-basis:calc((100% - 3rem)/3)}.dragon-profile{grid-template-columns:minmax(190px,.85fr) minmax(0,1.15fr)}}
@media(max-width:900px){.brand-text{flex-basis:auto;width:auto;min-width:0}.brand-text span{width:auto;letter-spacing:.17em}.nav-links{display:none}.journey-logo-panel{position:relative;right:auto;top:auto;width:160px;margin:2rem 0 3rem;aspect-ratio:1}.journey-intro{max-width:100%}.home-teach-card{flex-basis:calc((100% - 1.5rem)/2)}.dragon-profiles-grid{grid-template-columns:1fr}.dragon-profile{min-height:330px}.belt-list{width:1050px;grid-template-columns:repeat(8,1fr)}}
@media(max-width:600px){.brand-text{flex-basis:auto;width:auto;min-width:0;font-size:.98rem}.brand-text span{width:auto;font-size:.47rem;letter-spacing:.13em}.home-teach-shell{gap:.45rem}.home-teach-card{flex-basis:82%}.teach-slider-arrow{flex-basis:38px;width:38px;height:38px}.home-teach-footer{align-items:flex-start;gap:1rem;flex-direction:column}.dragon-profile{grid-template-columns:1fr;min-height:0}.dragon-profile-media{height:270px;border-right:none;border-bottom:1px solid rgba(199,154,59,.16)}.dragon-profile-info{min-height:190px;padding:1.35rem}.journey-logo-panel{margin-top:1.5rem;margin-bottom:3.5rem;width:190px}.journey-logo-panel img{width:108%;height:108%}.teach-discipline-navigation{grid-template-columns:1fr 1fr}.teach-discipline-navigation .event-nav-center{grid-column:1/-1;grid-row:1}.teach-discipline-navigation .event-nav-btn{margin-top:2.2rem}.teach-discipline-navigation .event-nav-next{justify-self:end}.event-viewer-grid{grid-template-columns:1fr}.teach-card img{min-height:320px}.belt-list{width:1040px}}

@media(max-width:1120px){.brand-text{font-size:1.02rem}.brand-text span{font-size:.49rem}.nav-links{gap:1.05rem}.nav-links a{font-size:.68rem}}
@media(max-width:980px){.brand-text{font-size:1rem}.brand-text span{font-size:.48rem}.site-header{padding-left:var(--gutter);}.nav-links{gap:.8rem}}

/* =========================================================
   DFMA MEMBERS + REVIEWS ADD-ON
   Additive styles only — existing site styles remain unchanged.
   ========================================================= */
.dfma-toast{position:fixed;z-index:9999;right:1.25rem;bottom:1.25rem;max-width:min(390px,calc(100vw - 2rem));padding:.9rem 1rem;border:1px solid rgba(224,184,95,.42);background:rgba(7,7,7,.96);color:rgba(245,242,233,.92);font-size:.76rem;line-height:1.45;box-shadow:0 18px 50px rgba(0,0,0,.42);transform:translateY(16px);opacity:0;pointer-events:none;transition:.25s ease}.dfma-toast.show{transform:translateY(0);opacity:1}.dfma-toast[data-type="error"]{border-color:rgba(235,115,115,.55)}
.auth-page{min-height:calc(100svh - 100px);display:grid;place-items:center;padding-top:9rem}.auth-shell{width:min(620px,100%);border:1px solid rgba(211,166,72,.2);background:linear-gradient(145deg,rgba(255,255,255,.025),rgba(211,166,72,.012));padding:clamp(1.5rem,4vw,3rem)}.auth-shell h1{font-size:clamp(3.6rem,8vw,6rem);line-height:.88;margin:.65rem 0 1rem}.auth-lede{max-width:520px;color:rgba(232,226,215,.64);font-size:.86rem;line-height:1.7}.auth-form{display:grid;gap:1rem;margin-top:2rem}.auth-form label,.review-form label{display:grid;gap:.48rem;font:500 .6rem 'Oswald',sans-serif;letter-spacing:.16em;text-transform:uppercase;color:rgba(245,242,233,.65)}.auth-form input,.review-form input,.review-form textarea{width:100%;border:1px solid rgba(211,166,72,.2);background:#090909;color:var(--white);padding:.85rem .9rem;font:400 .82rem 'Inter',sans-serif;outline:none;transition:border-color .2s ease,box-shadow .2s ease}.auth-form input:focus,.review-form input:focus,.review-form textarea:focus{border-color:rgba(224,184,95,.7);box-shadow:0 0 0 3px rgba(224,184,95,.05)}.auth-form button{justify-self:start}.auth-note{min-height:1.4em;color:rgba(232,226,215,.58);font-size:.72rem;line-height:1.5}.auth-note a,.auth-switch a{color:var(--gold-light)}.auth-switch{margin-top:1.5rem;padding-top:1.25rem;border-top:1px solid rgba(211,166,72,.16);font-size:.75rem;color:rgba(232,226,215,.55)}.account-card{display:grid;gap:0;margin-top:2rem;border:1px solid rgba(211,166,72,.18)}.account-card>div{display:flex;justify-content:space-between;gap:1rem;padding:1rem;border-bottom:1px solid rgba(211,166,72,.12)}.account-card>div:last-child{border-bottom:0}.account-card span{font:500 .58rem 'Oswald',sans-serif;letter-spacing:.16em;color:rgba(245,242,233,.4);text-transform:uppercase}.account-card strong{font-size:.8rem;font-weight:500;text-align:right}.account-actions{display:flex;flex-wrap:wrap;gap:.75rem;margin-top:1.2rem}.account-actions .btn{cursor:pointer}
.reviews-hero{padding-top:clamp(9rem,15vw,13rem);padding-bottom:clamp(4rem,7vw,6rem);background:radial-gradient(circle at 80% 35%,rgba(199,154,59,.08),transparent 36%),#050505}.reviews-hero h1{font-size:clamp(4rem,7vw,7.2rem);margin-top:1.2rem}.reviews-hero p{max-width:680px;margin-top:1.35rem;font-size:clamp(.9rem,1.15vw,1.05rem)}.reviews-layout{display:grid;grid-template-columns:minmax(0,.8fr) minmax(360px,1.2fr);gap:clamp(2rem,6vw,6rem);align-items:start}.reviews-layout h2,.reviews-list-head h2{font-size:clamp(3rem,5vw,5.2rem);line-height:.9;margin:.6rem 0 1rem}.reviews-copy{max-width:500px;color:rgba(232,226,215,.58);font-size:.82rem;line-height:1.7}.review-form{display:grid;gap:1rem;border:1px solid rgba(211,166,72,.2);padding:clamp(1.25rem,3vw,2rem);background:linear-gradient(145deg,rgba(255,255,255,.02),rgba(211,166,72,.012))}.review-form .optional{color:rgba(245,242,233,.3);letter-spacing:.1em}.rating-picker{display:flex;align-items:center;gap:.8rem;flex-wrap:wrap;border-top:1px solid rgba(211,166,72,.12);border-bottom:1px solid rgba(211,166,72,.12);padding:.9rem 0}.rating-picker>span{font:500 .6rem 'Oswald',sans-serif;letter-spacing:.16em;text-transform:uppercase;color:rgba(245,242,233,.65)}.star-row{display:flex;gap:.15rem}.star-choice{border:0;background:none;color:rgba(245,242,233,.2);font-size:1.45rem;line-height:1;cursor:pointer;padding:.05rem .12rem;transition:.2s ease}.star-choice:hover,.star-choice.selected{color:var(--gold-light);transform:translateY(-1px)}.rating-picker small{color:var(--gold-light);font:500 .58rem 'Oswald',sans-serif;letter-spacing:.12em}.review-form input[type=file]{padding:.65rem;color:rgba(245,242,233,.55);font-size:.72rem}.review-form textarea{resize:vertical;min-height:120px}.review-form .btn{justify-self:start}.reviews-list-section{border-top:1px solid rgba(211,166,72,.14)}.reviews-list-head{display:flex;justify-content:space-between;align-items:end;gap:2rem;margin-bottom:2rem}.review-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}.review-card{border:1px solid rgba(211,166,72,.18);background:#090909;padding:1.2rem;min-width:0}.review-card-top{display:flex;justify-content:space-between;gap:1rem;align-items:start}.review-card-top strong{display:block;font:500 1.2rem 'Oswald',sans-serif;text-transform:uppercase}.review-card-top time{font:500 .55rem 'Oswald',sans-serif;letter-spacing:.12em;color:rgba(245,242,233,.35);white-space:nowrap}.review-stars{display:block;margin-top:.3rem;color:var(--gold-light);letter-spacing:.08em;font-size:.8rem}.review-card>p{margin:1rem 0;color:rgba(232,226,215,.72);font-size:.8rem;line-height:1.7;white-space:pre-wrap}.review-image{margin-top:.8rem;aspect-ratio:16/10;overflow:hidden;border:1px solid rgba(211,166,72,.14);background:#111}.review-image img{width:100%;height:100%;object-fit:cover;display:block}.review-verified{display:inline-block;margin-top:.65rem;color:rgba(224,184,95,.65);font:500 .52rem 'Oswald',sans-serif;letter-spacing:.15em}.review-empty{border:1px solid rgba(211,166,72,.18);padding:2rem;color:rgba(232,226,215,.5);font-size:.8rem}.dfma-auth-nav{white-space:nowrap}
@media(max-width:900px){.reviews-layout{grid-template-columns:1fr}.review-list{grid-template-columns:1fr}.reviews-list-head{align-items:start;flex-direction:column}.auth-page{padding-top:7rem}.account-card>div{align-items:start;flex-direction:column}.account-card strong{text-align:left}.account-actions{flex-direction:column}.account-actions .btn{width:100%}}
@media(max-width:600px){.auth-shell{padding:1.2rem}.auth-shell h1{font-size:clamp(3rem,14vw,4.5rem)}.reviews-hero h1{font-size:clamp(3.4rem,15vw,5rem)}.review-form{padding:1rem}.dfma-toast{left:1rem;right:1rem;bottom:1rem}.review-card-top{flex-direction:column;gap:.4rem}}

/* =========================================================
   DFMA MEMBER PROFILE / REVIEW UPGRADE
   ========================================================= */
.account-profile-head{display:grid;grid-template-columns:auto 1fr;gap:1.35rem;align-items:center}.account-profile-head h1{margin-bottom:.6rem}.account-avatar-wrap{width:92px;height:92px;border:1px solid rgba(224,184,95,.38);border-radius:50%;padding:4px;background:#090909;overflow:hidden}.profile-avatar{width:100%;height:100%;display:grid;place-items:center;border-radius:50%;object-fit:cover}.avatar-fallback{background:radial-gradient(circle at 35% 30%,rgba(224,184,95,.22),rgba(255,255,255,.04));color:var(--gold-light);font:500 1.7rem 'Oswald',sans-serif}.account-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;margin-top:2rem;border:1px solid rgba(211,166,72,.18);background:rgba(211,166,72,.12)}.account-stats>div{background:#090909;padding:1rem}.account-stats strong{display:block;font:500 1.25rem 'Oswald',sans-serif;color:var(--gold-light)}.account-stats span{display:block;margin-top:.25rem;font:500 .55rem 'Oswald',sans-serif;letter-spacing:.14em;text-transform:uppercase;color:rgba(245,242,233,.38)}.profile-edit-section{margin-top:2rem;padding-top:2rem;border-top:1px solid rgba(211,166,72,.15)}.profile-section-head{display:flex;justify-content:space-between;gap:1rem;align-items:end;margin-bottom:1.2rem}.profile-section-head h2{font-size:clamp(2.4rem,5vw,4.4rem);line-height:.9;margin-top:.45rem}.profile-private-note{font-size:.66rem;color:rgba(245,242,233,.36)}.profile-form{display:grid;gap:1rem}.profile-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}.profile-form label{display:grid;gap:.48rem;font:500 .6rem 'Oswald',sans-serif;letter-spacing:.16em;text-transform:uppercase;color:rgba(245,242,233,.65)}.profile-form input{width:100%;border:1px solid rgba(211,166,72,.2);background:#090909;color:var(--white);padding:.85rem .9rem;font:400 .82rem 'Inter',sans-serif;outline:none}.profile-form input:focus{border-color:rgba(224,184,95,.7);box-shadow:0 0 0 3px rgba(224,184,95,.05)}.profile-form input[type=file]{padding:.65rem;color:rgba(245,242,233,.55);font-size:.72rem}.profile-form .optional{color:rgba(245,242,233,.3);letter-spacing:.08em}.profile-form-actions{display:flex;flex-wrap:wrap;gap:.7rem}.profile-form-actions .btn{cursor:pointer}.forgot-link{font-size:.68rem;color:rgba(245,242,233,.48);text-decoration:underline;text-underline-offset:3px}.forgot-link:hover{color:var(--gold-light)}.review-member-row{display:flex;align-items:center;gap:.8rem;padding:.85rem;border:1px solid rgba(211,166,72,.14);background:rgba(255,255,255,.015)}.review-compose-avatar{width:44px;height:44px;border-radius:50%;object-fit:cover;display:grid;place-items:center;overflow:hidden}.review-member-row strong{display:block;margin-top:.15rem;font:500 1rem 'Oswald',sans-serif;text-transform:uppercase}.review-member-row small{display:block;margin-top:.2rem;color:rgba(245,242,233,.38);font-size:.62rem}.review-person{display:flex;align-items:center;gap:.65rem}.review-avatar{width:42px;height:42px;border-radius:50%;object-fit:cover;display:grid;place-items:center;flex:0 0 42px;overflow:hidden}.review-card-foot{display:flex;justify-content:space-between;align-items:center;gap:1rem}.review-controls{display:flex;gap:.65rem}.review-controls button,.review-cancel-btn{border:0;background:none;color:rgba(245,242,233,.4);font:500 .58rem 'Oswald',sans-serif;letter-spacing:.1em;text-transform:uppercase;cursor:pointer}.review-controls button:hover,.review-cancel-btn:hover{color:var(--gold-light)}.review-delete-btn:hover{color:#ef9b9b!important}.review-card.is-editing{padding:0}.review-edit-form{display:grid;gap:1rem;padding:1.2rem}.review-edit-head{display:flex;justify-content:space-between;align-items:center}.review-edit-stars{display:flex;gap:.1rem}.review-edit-form textarea{width:100%;min-height:130px;resize:vertical;border:1px solid rgba(211,166,72,.2);background:#090909;color:var(--white);padding:.85rem;font:400 .82rem 'Inter',sans-serif}.review-edit-form input[type=file]{width:100%;border:1px solid rgba(211,166,72,.2);background:#090909;color:rgba(245,242,233,.55);padding:.65rem;font-size:.72rem}.review-edit-actions{display:flex;flex-wrap:wrap;gap:.7rem}.review-edit-actions .btn{cursor:pointer}.review-edit-form .star-choice{font-size:1.3rem}.review-card time{color:rgba(245,242,233,.35)}
@media(max-width:600px){.account-profile-head{grid-template-columns:1fr}.account-avatar-wrap{width:76px;height:76px}.account-stats{grid-template-columns:1fr}.profile-form-grid{grid-template-columns:1fr}.profile-section-head{align-items:start;flex-direction:column}.profile-form-actions{flex-direction:column}.profile-form-actions .btn{width:100%}.review-member-row{align-items:flex-start}.review-card-foot{align-items:flex-start;flex-direction:column}}


/* =========================================================
   DFMA V3 — product modal, review filters/pagination, Google home block
   ========================================================= */
.review-filters{display:flex;flex-wrap:wrap;gap:.55rem;margin:0 0 1rem}.review-filter{border:1px solid rgba(211,166,72,.2);background:#090909;color:rgba(245,242,233,.65);padding:.65rem .85rem;font:500 .58rem 'Oswald',sans-serif;letter-spacing:.12em;cursor:pointer}.review-filter:hover,.review-filter.active{background:rgba(211,166,72,.12);border-color:rgba(224,184,95,.7);color:var(--gold-light)}.review-filter-meta{display:flex;justify-content:space-between;gap:1rem;margin:0 0 1.25rem;color:rgba(245,242,233,.38);font:500 .58rem 'Oswald',sans-serif;letter-spacing:.12em;text-transform:uppercase}.review-pagination{display:flex;justify-content:center;gap:.4rem;margin-top:2rem;flex-wrap:wrap}.review-page-btn{min-width:36px;height:36px;border:1px solid rgba(211,166,72,.2);background:#090909;color:rgba(245,242,233,.55);font:500 .62rem 'Oswald',sans-serif;cursor:pointer}.review-page-btn:hover,.review-page-btn.active{background:var(--gold);color:#090909;border-color:var(--gold)}.review-product-label{display:block;margin-top:.22rem;color:rgba(224,184,95,.65);font:500 .5rem 'Oswald',sans-serif;letter-spacing:.12em;text-transform:uppercase}.review-form select{width:100%;border:1px solid rgba(211,166,72,.2);background:#090909;color:var(--white);padding:.85rem .9rem;font:400 .82rem 'Inter',sans-serif;outline:none}.review-form select:focus{border-color:rgba(224,184,95,.7);box-shadow:0 0 0 3px rgba(224,184,95,.05)}
body.modal-open{overflow:hidden}.product-modal{position:fixed;inset:0;z-index:1000;display:none;align-items:center;justify-content:center;padding:1.25rem}.product-modal.open{display:flex}.product-modal-backdrop{position:absolute;inset:0;background:rgba(0,0,0,.84);backdrop-filter:blur(8px)}.product-modal-panel{position:relative;z-index:1;width:min(1100px,100%);max-height:min(900px,92vh);overflow:auto;background:#080808;border:1px solid rgba(211,166,72,.3);box-shadow:0 30px 100px rgba(0,0,0,.65);display:grid;grid-template-columns:minmax(300px,.95fr) minmax(360px,1.05fr)}.product-modal-close{position:absolute;right:1rem;top:1rem;z-index:3;width:40px;height:40px;border:1px solid rgba(211,166,72,.3);background:#090909;color:var(--white);font-size:1.5rem;cursor:pointer}.product-modal-gallery{padding:1.25rem;border-right:1px solid rgba(211,166,72,.15);background:radial-gradient(circle at 50% 35%,rgba(211,166,72,.08),transparent 55%)}.product-modal-main{aspect-ratio:1/1;display:grid;place-items:center;border:1px solid rgba(211,166,72,.16);background:#0c0c0c;overflow:hidden}.product-modal-main img{width:100%;height:100%;object-fit:contain}.product-modal-thumbs{display:flex;gap:.55rem;margin-top:.75rem;overflow:auto}.product-modal-thumb{width:74px;height:74px;flex:0 0 74px;border:1px solid rgba(211,166,72,.18);background:#090909;padding:0;cursor:pointer;overflow:hidden}.product-modal-thumb.active{border-color:var(--gold)}.product-modal-thumb img{width:100%;height:100%;object-fit:contain}.product-modal-content{padding:clamp(1.5rem,3vw,2.5rem);display:flex;flex-direction:column}.product-modal-content h2{font:500 clamp(3rem,5vw,5.2rem)/.9 'Bebas Neue',sans-serif;margin:.45rem 0 1rem}.product-modal-content>p{color:rgba(232,226,215,.65);font-size:.84rem;line-height:1.75;max-width:560px}.product-modal-price{margin-top:1.25rem;color:var(--gold-light);font:500 1.35rem 'Oswald',sans-serif;display:flex;align-items:baseline;gap:.7rem;flex-wrap:wrap}.price-old{color:#d34a4a;text-decoration:line-through;text-decoration-thickness:1.5px;font-size:.9em;opacity:.95}.price-sale{color:var(--gold-light);font:600 1.25em 'Oswald',sans-serif}.product-modal-actions{display:flex;flex-wrap:wrap;gap:.65rem;margin-top:1.25rem}.product-modal-actions .btn{cursor:pointer}.product-modal-reviews{margin-top:2rem;padding-top:1.5rem;border-top:1px solid rgba(211,166,72,.16)}.product-modal-reviews h3{font:500 2.5rem/.9 'Bebas Neue',sans-serif;margin:.35rem 0 1rem}.product-review-list{display:grid;gap:.7rem}.product-review-item{border:1px solid rgba(211,166,72,.14);padding:.85rem;background:#0b0b0b}.product-review-top{display:flex;align-items:center;gap:.6rem}.product-review-top strong{display:block;font:500 .95rem 'Oswald',sans-serif;text-transform:uppercase}.product-review-top span{display:block;color:var(--gold-light);font-size:.68rem;margin-top:.18rem}.product-review-item p{margin:.65rem 0 0;color:rgba(232,226,215,.65);font-size:.72rem;line-height:1.6}.product-review-empty{color:rgba(245,242,233,.4);font-size:.72rem;line-height:1.6;border:1px solid rgba(211,166,72,.12);padding:.85rem}.product-bottom{display:flex;align-items:center;gap:.5rem;flex-wrap:wrap}.product-bottom .price-old{font-size:.68rem}.product-bottom strong{font:500 1.05rem 'Oswald',sans-serif;color:var(--gold-light)}.product-modal-review-form-wrap{margin-top:2rem;padding-top:1.5rem;border-top:1px solid rgba(211,166,72,.16)}.product-modal-review-form-wrap h3{font:500 2.5rem/.9 'Bebas Neue',sans-serif;margin:.35rem 0 1rem}.product-review-form{padding:1rem;background:#0b0b0b}.product-review-form .review-member-row{margin-bottom:.15rem}.store-more-note{margin-top:1.5rem;padding:1.2rem 1.35rem;border:1px solid rgba(211,166,72,.18);background:linear-gradient(90deg,rgba(211,166,72,.05),transparent)}.store-more-note span{color:var(--gold-light);font:500 .62rem 'Oswald',sans-serif;letter-spacing:.16em}.store-more-note p{margin:.45rem 0 0;color:rgba(245,242,233,.48);font-size:.72rem}.product-card{cursor:pointer}.product-card .whatsapp-order{position:relative;z-index:2}
.google-reviews-home{border-top:1px solid rgba(211,166,72,.14)}.google-reviews-head{display:flex;justify-content:space-between;align-items:end;gap:2rem}.google-reviews-head h2{font-size:clamp(3rem,5vw,5.2rem);line-height:.9;margin:.55rem 0 1rem}.google-reviews-head p{max-width:620px;color:rgba(232,226,215,.56);font-size:.78rem;line-height:1.7}.google-review-embed-note{display:flex;align-items:center;gap:1rem;margin-top:2rem;padding:1.1rem 1.2rem;border:1px solid rgba(211,166,72,.18);background:#090909}.google-mark{width:42px;height:42px;display:grid;place-items:center;border:1px solid rgba(211,166,72,.25);font:600 1.2rem Arial;color:#4285f4}.google-review-embed-note strong{font:500 1rem 'Oswald',sans-serif;text-transform:uppercase}.google-review-embed-note p{margin:.25rem 0 0;color:rgba(245,242,233,.42);font-size:.68rem}.google-review-live{margin-left:auto;color:var(--gold-light);font:500 .54rem 'Oswald',sans-serif;letter-spacing:.12em;white-space:nowrap}
@media(max-width:850px){.product-modal-panel{grid-template-columns:1fr;max-height:94vh}.product-modal-gallery{border-right:0;border-bottom:1px solid rgba(211,166,72,.15)}.product-modal-main{max-height:48vh}.google-reviews-head{align-items:start;flex-direction:column}.google-review-live{display:none}}
@media(max-width:600px){.product-modal{padding:.6rem}.product-modal-content{padding:1.15rem}.product-modal-content h2{font-size:3.2rem}.product-modal-actions{flex-direction:column}.product-modal-actions .btn{width:100%;text-align:center}.review-filters{gap:.4rem}.review-filter{padding:.55rem .65rem}.google-review-embed-note{align-items:flex-start}.google-mark{flex:0 0 42px}}

/* ===================== GOOGLE REVIEWS LIVE ===================== */
.google-reviews-home{border-top:1px solid rgba(211,166,72,.14)}
.google-reviews-head{display:flex;justify-content:space-between;align-items:end;gap:2rem}
.google-reviews-head h2{font-size:clamp(3rem,5vw,5.2rem);line-height:.9;margin:.55rem 0 1rem}
.google-reviews-head p{max-width:700px;color:rgba(232,226,215,.56);font-size:.78rem;line-height:1.7}
.google-review-summary{display:flex;align-items:center;gap:.9rem;border:1px solid rgba(211,166,72,.2);padding:.85rem 1rem;min-width:185px;background:#090909}
.google-mark{width:42px;height:42px;display:grid;place-items:center;border:1px solid rgba(211,166,72,.25);font:600 1.2rem Arial;color:#4285f4}
.google-review-summary strong{display:block;font:500 1.35rem 'Oswald',sans-serif}
.google-review-summary small{display:block;color:rgba(245,242,233,.45);font-size:.58rem;letter-spacing:.08em;text-transform:uppercase;margin-top:.12rem}
.google-stars,.google-review-stars{color:#f2b84b;letter-spacing:.08em;font-size:.76rem}
.google-review-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem;margin-top:2rem}
.google-review-card{border:1px solid rgba(211,166,72,.16);background:#080808;padding:1.25rem;min-height:210px;display:flex;flex-direction:column}
.google-review-person{display:flex;align-items:center;gap:.75rem}
.google-review-avatar{width:42px;height:42px;border-radius:50%;overflow:hidden;display:grid;place-items:center;border:1px solid rgba(211,166,72,.35);flex:0 0 42px;text-decoration:none}
.google-review-avatar img{width:100%;height:100%;object-fit:cover;display:block}
.google-avatar-fallback{font:500 1rem 'Oswald',sans-serif;color:var(--gold-light)}
.google-review-name{color:#f5f2e9;text-decoration:none;font:500 .9rem 'Oswald',sans-serif;text-transform:uppercase;letter-spacing:.04em}
.google-review-name:hover{text-decoration:underline}
.google-review-card p{color:rgba(245,242,233,.72);font-size:.75rem;line-height:1.75;margin:1rem 0;display:-webkit-box;-webkit-line-clamp:5;-webkit-box-orient:vertical;overflow:hidden}
.google-review-meta{margin-top:auto;display:flex;justify-content:space-between;gap:1rem;align-items:center;color:rgba(245,242,233,.38);font-size:.6rem;text-transform:uppercase;letter-spacing:.08em}
.google-review-meta a{color:var(--gold-light);text-decoration:none;white-space:nowrap}
.google-review-meta a:hover{text-decoration:underline}
.google-reviews-foot{display:flex;justify-content:space-between;align-items:center;gap:1rem;margin-top:1.5rem;padding-top:1rem;border-top:1px solid rgba(211,166,72,.12)}
.google-attribution{font-size:.58rem;letter-spacing:.08em;text-transform:uppercase;color:rgba(245,242,233,.4)}
.google-review-empty{grid-column:1/-1;border:1px solid rgba(211,166,72,.16);padding:1.5rem;color:rgba(245,242,233,.55);font-size:.72rem;line-height:1.7}
.google-review-empty strong{display:block;color:#f5f2e9;font:500 .9rem 'Oswald',sans-serif;text-transform:uppercase;margin-bottom:.3rem}
.google-review-empty span{display:block}
.google-review-empty code{font-family:monospace;color:var(--gold-light)}
.google-review-empty a{color:var(--gold-light)}
.google-review-loading{grid-column:1/-1;display:flex;align-items:center;gap:.75rem;color:rgba(245,242,233,.45);font-size:.7rem;padding:1.5rem 0}
.google-spinner{width:16px;height:16px;border:1px solid rgba(211,166,72,.25);border-top-color:var(--gold-light);border-radius:50%;animation:dfma-spin .8s linear infinite}
@keyframes dfma-spin{to{transform:rotate(360deg)}}
@media(max-width:950px){.google-review-grid{grid-template-columns:1fr 1fr}.google-reviews-head{align-items:start;flex-direction:column}.google-review-summary{min-width:0}}
@media(max-width:600px){.google-review-grid{grid-template-columns:1fr}.google-reviews-foot{align-items:flex-start;flex-direction:column}.google-review-meta{align-items:flex-start;flex-direction:column}}
/* =========================================================
   V5 refinements — review categories, product modal + profile editor
   ========================================================= */
.review-filters{display:flex;flex-wrap:wrap;gap:.65rem;margin:1.5rem 0 1rem}
.review-filter{border:1px solid rgba(211,166,72,.2);background:#090909;color:rgba(245,242,233,.68);padding:.75rem 1rem;font:500 .58rem 'Oswald',sans-serif;letter-spacing:.13em;text-transform:uppercase;cursor:pointer;transition:.2s ease}
.review-filter:hover,.review-filter.active{background:var(--gold);border-color:var(--gold);color:#090909}
.review-filter-meta{display:flex;justify-content:space-between;gap:1rem;margin-bottom:1rem;color:rgba(245,242,233,.35);font:500 .56rem 'Oswald',sans-serif;letter-spacing:.12em;text-transform:uppercase}
.review-pagination{display:flex;justify-content:center;gap:.45rem;margin-top:2rem;flex-wrap:wrap}
.review-page-btn{min-width:38px;height:38px;border:1px solid rgba(211,166,72,.2);background:#090909;color:rgba(245,242,233,.55);font:500 .62rem 'Oswald',sans-serif;cursor:pointer}
.review-page-btn:hover,.review-page-btn.active{background:var(--gold);border-color:var(--gold);color:#090909}
.profile-overview-section{margin-top:2rem;padding-top:2rem;border-top:1px solid rgba(211,166,72,.15)}
.profile-overview-card{border:1px solid rgba(211,166,72,.18);background:linear-gradient(145deg,rgba(255,255,255,.025),rgba(211,166,72,.012))}
.profile-overview-row{display:flex;justify-content:space-between;align-items:center;gap:1.5rem;padding:1rem 1.15rem;border-bottom:1px solid rgba(211,166,72,.1)}
.profile-overview-row:last-child{border-bottom:0}.profile-overview-row span{font:500 .56rem 'Oswald',sans-serif;letter-spacing:.16em;color:rgba(245,242,233,.38)}
.profile-overview-row strong{font:500 .82rem 'Inter',sans-serif;color:rgba(245,242,233,.9);text-align:right;word-break:break-word}
.profile-overview-actions{display:flex;flex-wrap:wrap;gap:.7rem;margin-top:1rem}.profile-overview-actions .btn{cursor:pointer}
.profile-modal{position:fixed;inset:0;z-index:1100;display:none;align-items:center;justify-content:center;padding:1rem}.profile-modal.open{display:flex}
.profile-modal-backdrop{position:absolute;inset:0;background:rgba(0,0,0,.84);backdrop-filter:blur(8px)}
.profile-modal-panel{position:relative;z-index:1;width:min(720px,100%);max-height:92vh;overflow:auto;background:#080808;border:1px solid rgba(211,166,72,.3);box-shadow:0 30px 100px rgba(0,0,0,.7);padding:clamp(1.35rem,4vw,2.4rem)}
.profile-modal-close{position:absolute;right:1rem;top:1rem;width:40px;height:40px;border:1px solid rgba(211,166,72,.3);background:#090909;color:var(--white);font-size:1.5rem;cursor:pointer}
.profile-modal-panel h2{font:500 clamp(3rem,6vw,5rem)/.9 'Bebas Neue',sans-serif;margin:.45rem 0 1rem}.profile-modal-copy{max-width:560px;color:rgba(232,226,215,.55);font-size:.78rem;line-height:1.7;margin-bottom:1.5rem}
.profile-modal-panel .profile-form{margin-top:0}.profile-modal-panel .profile-form-grid{margin-top:.25rem}
.product-card{transition:transform .25s ease,border-color .25s ease,box-shadow .25s ease}.product-card:hover{transform:translateY(-4px);border-color:rgba(224,184,95,.45);box-shadow:0 18px 45px rgba(0,0,0,.28)}
.product-modal.open .product-modal-panel{animation:dfmaModalIn .24s ease both}@keyframes dfmaModalIn{from{opacity:0;transform:translateY(14px) scale(.985)}to{opacity:1;transform:none}}
@media(max-width:600px){.profile-overview-row{align-items:flex-start;flex-direction:column;gap:.35rem}.profile-overview-row strong{text-align:left}.profile-overview-actions{flex-direction:column}.profile-overview-actions .btn{width:100%;text-align:center}.profile-modal{padding:.6rem}.profile-modal-panel{max-height:94vh}.review-filters{gap:.45rem}.review-filter{padding:.65rem .72rem}}


/* =========================================================
   DFMA — STORE PRICE + REVIEW PROFILE FINAL REFINEMENT
   Only overrides the existing store/review styles above.
   ========================================================= */

/* ---------- Store card prices ---------- */
.product-bottom{
  display:flex;
  align-items:baseline;
  justify-content:flex-start;
  gap:.65rem;
  flex-wrap:wrap;
}

.product-bottom strong{
  order:1;
  font:600 1.25rem 'Oswald',sans-serif;
  color:var(--gold-light);
  white-space:nowrap;
}

.product-bottom .price-sale{
  order:1;
  color:var(--gold-light);
  font:600 1.25rem 'Oswald',sans-serif;
  white-space:nowrap;
}

.product-bottom .price-old{
  order:2;
  color:#d34a4a;
  font:500 .78rem 'Oswald',sans-serif;
  text-decoration:line-through;
  text-decoration-thickness:1.5px;
  white-space:nowrap;
  opacity:1;
}

/* Discount badge appears only when an old/MRP price exists.
   T-shirts have no .price-old, so they remain ₹699 only. */
.product-bottom .price-old::after{
  content:"₹900 OFF";
  display:inline-block;
  margin-left:.65rem;
  padding:.22rem .42rem;
  border:1px solid rgba(199,154,59,.55);
  background:rgba(199,154,59,.10);
  color:var(--gold-light);
  font:600 .52rem 'Oswald',sans-serif;
  letter-spacing:.08em;
  text-decoration:none;
  vertical-align:middle;
  white-space:nowrap;
}

/* ---------- Product popup price ---------- */
.product-modal-price{
  display:flex;
  align-items:baseline;
  justify-content:flex-start;
  gap:.75rem;
  flex-wrap:wrap;
  margin-top:1.25rem;
  color:var(--gold-light);
}

.product-modal-price .price-sale{
  order:1;
  color:var(--gold-light);
  font:600 1.45rem 'Oswald',sans-serif;
  white-space:nowrap;
}

.product-modal-price .price-old{
  order:2;
  color:#d34a4a;
  font:500 .9rem 'Oswald',sans-serif;
  text-decoration:line-through;
  text-decoration-thickness:1.5px;
  opacity:1;
  white-space:nowrap;
}

.product-modal-price .price-old::after{
  content:"₹900 OFF";
  display:inline-block;
  margin-left:.7rem;
  padding:.24rem .48rem;
  border:1px solid rgba(199,154,59,.55);
  background:rgba(199,154,59,.10);
  color:var(--gold-light);
  font:600 .55rem 'Oswald',sans-serif;
  letter-spacing:.08em;
  text-decoration:none;
  vertical-align:middle;
  white-space:nowrap;
}

/* ---------- Review profile: icon + name only ---------- */
.product-review-form .review-member-row,
.review-member-row{
  display:flex;
  align-items:center;
  gap:.7rem;
  padding:0;
  margin:0 0 .9rem;
  border:0;
  background:transparent;
  box-shadow:none;
}

.product-review-form .review-compose-avatar,
.review-compose-avatar{
  width:42px;
  height:42px;
  min-width:42px;
  border-radius:50%;
  border:1px solid rgba(224,184,95,.35);
  padding:0;
  background:#0b0b0b;
  object-fit:cover;
}

.review-member-row strong{
  display:block;
  margin:0;
  color:var(--white);
  font:500 .92rem 'Oswald',sans-serif;
  letter-spacing:.02em;
  text-transform:uppercase;
}

.review-member-row small{
  display:none !important;
}

/* Keep the form itself clean — no extra profile card background. */
.product-review-form{
  padding:0;
  background:transparent;
}

/* ---------- Mobile ---------- */
@media(max-width:600px){
  .product-bottom{
    align-items:baseline;
    flex-direction:row;
    gap:.55rem;
  }

  .product-bottom .price-sale,
  .product-bottom strong{
    font-size:1.18rem;
  }

  .product-bottom .price-old{
    font-size:.72rem;
  }

  .product-bottom .price-old::after{
    margin-left:.45rem;
    padding:.2rem .35rem;
    font-size:.48rem;
  }

  .product-modal-price{
    gap:.55rem;
  }

  .product-modal-price .price-sale{
    font-size:1.3rem;
  }

  .product-modal-price .price-old{
    font-size:.78rem;
  }

  .product-modal-price .price-old::after{
    margin-left:.45rem;
    padding:.2rem .35rem;
    font-size:.48rem;
  }

  .review-member-row{
    gap:.6rem;
  }

  .review-compose-avatar{
    width:38px;
    height:38px;
    min-width:38px;
  }
}


/* =========================================================
   DFMA — STORE / PRODUCT MODAL UI REFINEMENT V2
   ========================================================= */

/* 1) CARD PRICE ROW
   Price + crossed MRP on the left, BUY NOW on the right.
   The ₹900 OFF badge is removed from the price row. */
.product-bottom{
  display:flex;
  align-items:baseline;
  justify-content:flex-start;
  gap:.65rem;
  flex-wrap:nowrap;
  margin-top:1.25rem;
  padding-top:1rem;
}

.product-bottom strong{
  order:1;
  flex:0 0 auto;
  font:600 1.25rem 'Oswald',sans-serif;
  color:var(--gold-light);
  white-space:nowrap;
}

.product-bottom .price-sale{
  order:1;
  flex:0 0 auto;
  color:var(--gold-light);
  font:600 1.25rem 'Oswald',sans-serif;
  white-space:nowrap;
}

.product-bottom .price-old{
  order:2;
  flex:0 0 auto;
  color:#d34a4a;
  font:500 .78rem 'Oswald',sans-serif;
  text-decoration:line-through;
  text-decoration-thickness:1.5px;
  white-space:nowrap;
  opacity:1;
}

/* Remove the old inline ₹900 OFF badge completely. */
.product-bottom .price-old::after{
  content:none !important;
  display:none !important;
}

/* BUY NOW stays on the same row at the far right. */
.product-bottom .whatsapp-order{
  order:3;
  margin-left:auto;
  flex:0 0 auto;
}

/* 2) ₹900 OFF BADGE ON THE PRODUCT IMAGE
   Only products that actually have a crossed MRP get the badge. */
.product-card:has(.product-bottom .price-old) .product-media::before{
  content:"₹900 OFF";
  position:absolute;
  top:1rem;
  right:1rem;
  z-index:4;
  padding:.42rem .62rem;
  border:1px solid var(--gold);
  background:rgba(5,5,5,.9);
  color:var(--gold-light);
  font:600 .58rem 'Oswald',sans-serif;
  letter-spacing:.1em;
  text-transform:uppercase;
  white-space:nowrap;
}

/* Keep the existing product category/tag above the image. */
.product-media .tag{
  z-index:5;
}

/* 3) PRODUCT MODAL
   No ₹900 OFF badge beside the price — only crossed MRP. */
.product-modal-price .price-old::after{
  content:none !important;
  display:none !important;
}

.product-modal-price .price-old{
  color:#d34a4a;
  font:500 .9rem 'Oswald',sans-serif;
  text-decoration:line-through;
  text-decoration-thickness:1.5px;
  opacity:1;
}

/* 4) REMOVE EXTRA REVIEW-FORM / MEMBER CARD BORDER */
.product-modal-review-form-wrap .product-review-form,
.product-modal-review-form-wrap .product-review-form.review-form{
  border:0 !important;
  background:transparent !important;
  box-shadow:none !important;
  padding:0 !important;
}

.product-modal-review-form-wrap .review-member-row,
.product-modal-review-form-wrap .product-review-form .review-member-row{
  border:0 !important;
  background:transparent !important;
  box-shadow:none !important;
  padding:0 !important;
  margin:0 0 .9rem !important;
}

/* 5) REMOVE THE LARGE MODAL OUTER BORDER */
.product-modal-panel{
  border:0 !important;
}

/* Keep the close button border. */
.product-modal-close{
  border:1px solid rgba(211,166,72,.3);
}

/* 6) HIDE THE MODAL SIDE SCROLLBAR
   Scrolling still works with mouse wheel / touch / trackpad. */
.product-modal-panel{
  scrollbar-width:none;
  -ms-overflow-style:none;
}

.product-modal-panel::-webkit-scrollbar{
  display:none;
  width:0;
  height:0;
}

/* Also hide horizontal scrollbar if thumbnails/content overflow. */
.product-modal-thumbs{
  scrollbar-width:none;
  -ms-overflow-style:none;
}

.product-modal-thumbs::-webkit-scrollbar{
  display:none;
  width:0;
  height:0;
}

/* 7) MOBILE */
@media(max-width:600px){
  .product-bottom{
    flex-wrap:nowrap;
    gap:.5rem;
  }

  .product-bottom .price-sale,
  .product-bottom strong{
    font-size:1.15rem;
  }

  .product-bottom .price-old{
    font-size:.7rem;
  }

  .product-bottom .whatsapp-order{
    margin-left:auto;
    padding:.62rem .68rem;
    font-size:.58rem;
  }

  .product-card:has(.product-bottom .price-old) .product-media::before{
    top:.7rem;
    right:.7rem;
    padding:.35rem .5rem;
    font-size:.5rem;
  }

  .product-modal-price{
    gap:.55rem;
  }

  .product-modal-price .price-sale{
    font-size:1.3rem;
  }

  .product-modal-price .price-old{
    font-size:.78rem;
  }
}

/* =========================================================
   DFMA — FINAL STORE / MODAL VISUAL REFINEMENT
   ========================================================= */

/* BOOK DISCOUNT BADGE — sit directly over the image, top-right.
   It does not take up layout space and therefore cannot push/squeeze the image. */
.product-media{
  position:relative;
  overflow:hidden;
}

.product-card:has(.product-bottom .price-old) .product-media::before{
  top:1rem;
  right:1rem;
  left:auto;
  z-index:10;
  margin:0;
  padding:.38rem .62rem;
  border:1px solid var(--gold);
  background:rgba(5,5,5,.88);
  color:var(--gold-light);
  font:600 .58rem 'Oswald',sans-serif;
  letter-spacing:.1em;
  white-space:nowrap;
  pointer-events:none;
}

/* Preserve the original image proportions — the badge is an overlay, not a
   flex/grid item, so the image keeps the same geometry as the T-shirt card. */
.product-media img{
  width:100%;
  height:100%;
  object-fit:contain !important;
  padding:.72rem !important;
  display:block;
}

/* PRODUCT POPUP — slightly warmer/gold-tinted overall card background. */
.product-modal-panel{
  background:
    radial-gradient(circle at 78% 12%, rgba(211,166,72,.105), transparent 32%),
    radial-gradient(circle at 20% 85%, rgba(211,166,72,.055), transparent 38%),
    linear-gradient(145deg,#0d0c0a 0%,#080808 52%,#0b0a08 100%) !important;
  border:0 !important;
}

/* Make both popup columns inherit the warmer background instead of looking
   like separate black cards. */
.product-modal-gallery{
  background:
    radial-gradient(circle at 50% 30%, rgba(211,166,72,.09), transparent 48%),
    rgba(8,8,8,.35) !important;
}

.product-modal-content{
  background:transparent !important;
}

/* Keep popup product images proportional and prevent any image distortion. */
.product-modal-main img,
.product-modal-thumb img{
  object-fit:contain !important;
}

/* Remove any visible outer scrollbar while keeping the popup scrollable. */
.product-modal-panel{
  scrollbar-width:none !important;
  -ms-overflow-style:none !important;
}
.product-modal-panel::-webkit-scrollbar{
  display:none !important;
  width:0 !important;
  height:0 !important;
}

/* Mobile badge spacing */
@media(max-width:600px){
  .product-card:has(.product-bottom .price-old) .product-media::before{
    top:.7rem;
    right:.7rem;
    padding:.34rem .5rem;
    font-size:.5rem;
  }
}

/* =========================================================
   DFMA — FINAL STORE CARD / PRODUCT POPUP TUNE
   ========================================================= */

/* Remove the ₹900 OFF badge completely from the store cards. */
.product-card:has(.product-bottom .price-old) .product-media::before{
  content:none !important;
  display:none !important;
}

/* Keep product images completely clean and unsqueezed. */
.product-media{
  position:relative;
  overflow:hidden;
}

.product-media img{
  width:100%;
  height:100%;
  object-fit:contain !important;
  display:block;
}

/* Give the OPEN PRODUCT popup a richer DFMA-gold atmosphere.
   This affects the popup only, not the normal store cards. */
.product-modal-panel{
  background:
    radial-gradient(
      circle at 82% 8%,
      rgba(211,166,72,.20) 0%,
      rgba(211,166,72,.08) 24%,
      transparent 48%
    ),
    radial-gradient(
      circle at 12% 92%,
      rgba(211,166,72,.11) 0%,
      transparent 42%
    ),
    linear-gradient(
      135deg,
      #15120b 0%,
      #0d0c09 35%,
      #090909 68%,
      #100d08 100%
    ) !important;
  box-shadow:
    0 0 0 1px rgba(211,166,72,.18),
    0 24px 80px rgba(0,0,0,.55),
    inset 0 1px 0 rgba(255,255,255,.025) !important;
}

/* Subtle gold warmth behind the image/gallery. */
.product-modal-gallery{
  background:
    radial-gradient(
      ellipse at 50% 35%,
      rgba(211,166,72,.13) 0%,
      rgba(211,166,72,.045) 30%,
      transparent 65%
    ),
    linear-gradient(
      180deg,
      rgba(211,166,72,.045),
      rgba(0,0,0,.10)
    ) !important;
}

/* Content side gets a slightly different gold-tinted tone so the
   popup feels distinct from the normal store page. */
.product-modal-content{
  background:
    linear-gradient(
      180deg,
      rgba(211,166,72,.055) 0%,
      rgba(211,166,72,.018) 32%,
      transparent 70%
    ) !important;
}

/* Keep popup product images natural and undistorted. */
.product-modal-main img,
.product-modal-thumb img{
  object-fit:contain !important;
}

/* Keep popup scrolling functional but hide the browser scrollbar. */
.product-modal-panel{
  scrollbar-width:none !important;
  -ms-overflow-style:none !important;
}

.product-modal-panel::-webkit-scrollbar{
  display:none !important;
  width:0 !important;
  height:0 !important;
}

/* Mobile */
@media(max-width:600px){
  .product-card:has(.product-bottom .price-old) .product-media::before{
    content:none !important;
    display:none !important;
  }

  .product-modal-panel{
    background:
      radial-gradient(
        circle at 80% 8%,
        rgba(211,166,72,.16),
        transparent 45%
      ),
      linear-gradient(145deg,#13110c 0%,#090909 70%,#100d08 100%) !important;
  }
}


/* =========================================================
   DFMA — FINAL ₹900 OFF BADGE RESTORE + GLOW
   This final override restores the badge on discounted
   product images only. T-shirts remain ₹699 without badge.
   ========================================================= */

.product-card:has(.product-bottom .price-old) .product-media::before{
  content:"₹900 OFF" !important;
  display:inline-flex !important;
  align-items:center;
  justify-content:center;
  position:absolute;
  top:1rem;
  right:1rem;
  left:auto;
  z-index:20;

  padding:.42rem .68rem;
  border:1px solid #e0b85f;
  border-radius:2px;

  background:linear-gradient(
    135deg,
    #d9b56b 0%,
    #b9872f 100%
  );

  color:#050505;
  font:700 .58rem 'Oswald',sans-serif;
  letter-spacing:.1em;
  text-transform:uppercase;
  line-height:1;
  white-space:nowrap;
  pointer-events:none;

  box-shadow:
    0 0 8px rgba(224,184,95,.70),
    0 0 18px rgba(199,154,59,.42),
    0 0 30px rgba(199,154,59,.18);

  animation:dfmaDiscountBadgeGlow 2.2s ease-in-out infinite;
}

@keyframes dfmaDiscountBadgeGlow{
  0%,100%{
    box-shadow:
      0 0 7px rgba(224,184,95,.58),
      0 0 16px rgba(199,154,59,.32),
      0 0 26px rgba(199,154,59,.14);
  }
  50%{
    box-shadow:
      0 0 11px rgba(255,220,130,.90),
      0 0 24px rgba(224,184,95,.58),
      0 0 38px rgba(199,154,59,.28);
  }
}

/* Keep the book image completely unsqueezed. */
.product-card:has(.product-bottom .price-old) .product-media img{
  object-fit:contain !important;
}

/* Mobile badge */
@media(max-width:600px){
  .product-card:has(.product-bottom .price-old) .product-media::before{
    content:"₹900 OFF" !important;
    display:inline-flex !important;
    top:.7rem;
    right:.7rem;
    padding:.34rem .5rem;
    font-size:.5rem;
  }
}
