:root {
  /* --- FINALIZED FLUID TYPOGRAPHY SCALE --- */
  --fs-hero:    clamp(48px, 8vw, 120px);    /* 48px -> 120px (Hero Title Only - Largest) */
  --fs-display: clamp(40px, 6vw, 100px);    /* 40px -> 100px (Main Section Headings) */
  --fs-lead:    clamp(18px, 1.5vw, 22px);   /* 18px -> 22px (All Main Paragraphs) */
  --fs-small:   14px;                       /* 14px (Small Tags & Labels) */

  /* Kept for other minor components (cards, FAQs) so they don't break */
  --fs-h2:      clamp(28px, 4vw, 48px);
  --fs-h3:      clamp(22px, 3vw, 32px);
  --fs-h4:      clamp(18px, 2vw, 24px);
  --fs-body:    clamp(16px, 0.5vw, 18px);
  
  /* --- STANDARDIZED LINE HEIGHTS --- */
  --lh-tight: 1.1;
  --lh-relaxed: 1.8;
  --lh-normal: 1.6;
}


/* =============================================
   DESIGN TOKENS — Unified system
============================================= */
:root{
  --gold:#D4AF37;
  --gold-soft:#E4C869;
  --text:#FFFFFF;
  --muted:#B8B8B8;
  --glass:rgba(255,255,255,.05);
  --bg-primary:#050505;
  --bg-secondary:#080808;
  --bg-card:#0D0D0D;
  --border-subtle:rgba(255,255,255,.05);
  --border-light:rgba(255,255,255,.08);
  --border-gold:rgba(212,175,55,.18);
  --border-gold-strong:rgba(212,175,55,.40);
  --font-display:'Playfair Display',serif;
  --font-body:'Inter',sans-serif;
  --container-max:1700px;
  --container-w:min(92%,var(--container-max));
  --section-pad:140px;
  --radius-lg:30px;
  --radius-xl:35px;
  --radius-btn:60px;
  --ease:cubic-bezier(.25,.46,.45,.94);
}

/* =============================================
   GLOBAL RESET
============================================= */
*{margin:0;padding:0;box-sizing:border-box;}
html{scroll-behavior:smooth;}
body{background:var(--bg-primary);color:var(--text);font-family:var(--font-body);overflow-x:hidden;overflow-wrap:break-word;word-break:break-word;}
a{text-decoration:none;color:inherit;}
img{display:block;max-width:100%;height:auto;}

/* =============================================
   SCROLL REVEAL SYSTEM
============================================= */
.ra99-reveal{opacity:0;transform:translateY(50px);transition:opacity .9s var(--ease),transform .9s var(--ease);transition-delay:var(--d,0s);will-change:opacity,transform;}
.ra99-revealed{opacity:1;transform:translateY(0);}

/* =============================================
   GOLD SHIMMER
============================================= */
.ra99-shimmer-wrap{position:relative;display:inline-block;overflow:hidden;padding-bottom:.15em;}
.ra99-shimmer-wrap::after{content:'';position:absolute;top:0;left:-120%;width:80%;height:100%;background:linear-gradient(105deg,transparent 35%,rgba(212,175,55,.1) 48%,rgba(255,255,255,.15) 50%,rgba(212,175,55,.1) 52%,transparent 65%);animation:headingShimmer 5s ease-in-out infinite;pointer-events:none;}
@keyframes headingShimmer{0%,100%{left:-120%;}50%{left:160%;}}

/* =============================================
   LINK UNDERLINE ANIMATION
============================================= */
.ra99-link-line{position:relative;display:inline-block;}
.ra99-link-line::after{content:'';position:absolute;bottom:-3px;left:0;width:0;height:1px;background:var(--gold);transition:width .4s var(--ease);}
.ra99-link-line:hover::after{width:100%;}

/* =============================================
   LAYOUT
============================================= */
.ra99-container{width:var(--container-w);margin:auto;}
.ra99-page{background:var(--bg-primary);color:var(--text);font-family:var(--font-body);position:relative;z-index:1;animation:pageLoad .8s ease forwards;}
@keyframes pageLoad{from{opacity:0;transform:translateY(10px);}to{opacity:1;transform:translateY(0);}}
.ra99-page section{padding:var(--section-pad) 0;}

/* =============================================
   NAVBAR
============================================= */
.ra99-navbar{position:fixed;top:0;left:0;width:100%;z-index:9999;padding:22px 0;background:rgba(0,0,0,.30);backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px);border-bottom:1px solid var(--border-light);transition:background .4s ease,box-shadow .4s ease;}
.ra99-nav-wrap{display:flex;align-items:center;justify-content:space-between;}
.ra99-logo{display:flex;align-items:center;gap:14px;}
.ra99-logo img{height:54px;width:auto;}
.ra99-logo-text{font-family:var(--font-display);font-size:30px;letter-spacing:2px;color:var(--text);}

.ra99-menu{display:flex;align-items:center;gap:36px;}
.ra99-menu>li{list-style:none;position:relative;}
.ra99-menu>li>a{font-size:14px;letter-spacing:2px;text-transform:uppercase;color:var(--text);transition:color .3s ease;display:flex;align-items:center;gap:6px;padding:8px 0;}
.ra99-menu>li>a:hover{color:var(--gold);}

.ra99-mega-arrow{width:10px;height:10px;transition:transform .3s ease;flex-shrink:0;}
.ra99-mega-active .ra99-mega-arrow{transform:rotate(180deg);}

.ra99-mega-panel{
  position:absolute;top:100%;left:50%;transform:translateX(-50%) translateY(-10px);
  width:100vw;max-width:1000px;
  background:rgba(5,5,5,.97);backdrop-filter:blur(30px);-webkit-backdrop-filter:blur(30px);
  border:1px solid var(--border-light);border-top:2px solid var(--gold);
  border-radius:0 0 20px 20px;
  padding:40px 50px;
  opacity:0;visibility:hidden;
  transition:opacity .35s var(--ease),transform .35s var(--ease),visibility .35s;
  pointer-events:none;
  z-index:9998;
}
.ra99-mega-open{
  opacity:1;visibility:visible;transform:translateX(-50%) translateY(0);pointer-events:auto;
}
.ra99-mega-grid{display:grid;grid-template-columns:repeat(6,1fr);gap:24px;}
.ra99-mega-item{text-align:center;text-decoration:none;color:var(--text);transition:transform .3s ease;}
.ra99-mega-item:hover{transform:translateY(-4px);}
.ra99-mega-img{width:100%;aspect-ratio:1;overflow:hidden;border-radius:16px;margin-bottom:14px;border:1px solid var(--border-subtle);transition:border-color .3s ease;}
.ra99-mega-item:hover .ra99-mega-img{border-color:var(--border-gold-strong);}
.ra99-mega-img img{width:100%;height:100%;object-fit:cover;transition:transform .6s ease var(--ease);}
.ra99-mega-item:hover .ra99-mega-img img{transform:scale(1.08);}
.ra99-mega-name{font-family:var(--font-display);font-size:16px;letter-spacing:1px;transition:color .3s ease;}
.ra99-mega-item:hover .ra99-mega-name{color:var(--gold);}

.ra99-nav-cta{padding:14px 30px;border:1px solid var(--border-gold-strong);border-radius:50px;color:var(--text);transition:all .3s ease;flex-shrink:0;}
.ra99-nav-cta:hover{background:var(--gold);color:#000;}

/* =============================================
   HAMBURGER MENU
============================================= */
.ra99-hamburger{display:none;width:44px;height:44px;background:transparent;border:1px solid rgba(212,175,55,.30);border-radius:12px;cursor:pointer;position:relative;z-index:10002;flex-direction:column;align-items:center;justify-content:center;gap:6px;padding:0;transition:border-color .3s ease;}
.ra99-hamburger:hover{border-color:rgba(212,175,55,.60);}
.ra99-hamburger:focus-visible{outline:2px solid var(--gold);outline-offset:3px;}
.ra99-hamburger-line{display:block;width:20px;height:2px;background:var(--gold);border-radius:2px;transition:transform .4s var(--ease),opacity .3s ease;transform-origin:center;}
body.ra99-menu-open .ra99-hamburger-line:nth-child(1){transform:translateY(8px) rotate(45deg);}
body.ra99-menu-open .ra99-hamburger-line:nth-child(2){opacity:0;transform:scaleX(0);}
body.ra99-menu-open .ra99-hamburger-line:nth-child(3){transform:translateY(-8px) rotate(-45deg);}

.ra99-menu-overlay{position:fixed;top:0;left:0;width:100%;height:100%;background:rgba(5,5,5,.97);backdrop-filter:blur(30px);-webkit-backdrop-filter:blur(30px);z-index:10001;display:flex;flex-direction:column;align-items:center;justify-content:center;opacity:0;visibility:hidden;transition:opacity .5s var(--ease),visibility .5s;overflow-y:auto;}
body.ra99-menu-open .ra99-menu-overlay{opacity:1;visibility:visible;}
.ra99-overlay-nav{display:flex;flex-direction:column;align-items:center;gap:4px;list-style:none;}
.ra99-overlay-nav>li>a{
  font-family:var(--font-display);font-size:clamp(32px,7vw,56px);font-weight:500;
  color:rgba(255,255,255,.25);letter-spacing:1px;
  transition:color .4s ease,transform .4s var(--ease),letter-spacing .4s ease;
  transform:translateY(30px);opacity:0;display:flex;align-items:center;gap:12px;
  padding:10px 20px;text-align:center;
}
body.ra99-menu-open .ra99-overlay-nav>li>a{opacity:1;transform:translateY(0);}
body.ra99-menu-open .ra99-overlay-nav>li:nth-child(1) a{transition-delay:.15s;}
body.ra99-menu-open .ra99-overlay-nav>li:nth-child(2) a{transition-delay:.2s;}
body.ra99-menu-open .ra99-overlay-nav>li:nth-child(3) a{transition-delay:.25s;}
body.ra99-menu-open .ra99-overlay-nav>li:nth-child(4) a{transition-delay:.3s;}
body.ra99-menu-open .ra99-overlay-nav>li:nth-child(5) a{transition-delay:.35s;}
body.ra99-menu-open .ra99-overlay-nav>li:nth-child(6) a{transition-delay:.4s;}
body.ra99-menu-open .ra99-overlay-nav>li:nth-child(7) a{transition-delay:.45s;}
.ra99-overlay-nav>li>a:hover{color:var(--gold);letter-spacing:3px;}

.ra99-sub-arrow{width:16px;height:16px;transition:transform .3s ease;flex-shrink:0;opacity:.4;}
.ra99-sub-active .ra99-sub-arrow{transform:rotate(180deg);opacity:1;}

.ra99-sub-menu{max-height:0;overflow:hidden;transition:max-height .5s var(--ease),opacity .4s ease;opacity:0;display:flex;flex-direction:column;align-items:center;gap:2px;width:100%;}
.ra99-sub-open{max-height:400px;opacity:1;}
.ra99-sub-menu a{
  font-family:var(--font-body) !important;font-size:clamp(16px,3vw,20px) !important;
  font-weight:400 !important;letter-spacing:3px !important;text-transform:uppercase !important;
  color:rgba(255,255,255,.35) !important;padding:10px 20px !important;
  border-left:2px solid rgba(212,175,55,.2);margin-left:20px;
  transform:none !important;opacity:1 !important;transition:color .3s ease,border-color .3s ease !important;
}
.ra99-sub-menu a:hover{color:var(--gold) !important;border-left-color:var(--gold) !important;letter-spacing:3px !important;}
body.ra99-menu-open .ra99-sub-menu a{transition-delay:0s !important;}

.ra99-overlay-cta{margin-top:40px;padding:18px 42px;border-radius:var(--radius-btn);background:var(--gold);color:#000;font-weight:600;font-family:var(--font-body);font-size:15px;letter-spacing:1px;text-transform:uppercase;text-decoration:none;border:none;cursor:pointer;transform:translateY(30px);opacity:0;transition:transform .4s var(--ease),opacity .4s ease,box-shadow .3s ease;}
body.ra99-menu-open .ra99-overlay-cta{opacity:1;transform:translateY(0);transition-delay:.55s;}
.ra99-overlay-cta:hover{box-shadow:0 12px 40px rgba(212,175,55,.25);transform:translateY(-3px) !important;}

.ra99-overlay-brand{position:absolute;bottom:50px;text-align:center;opacity:0;transform:translateY(20px);transition:opacity .4s ease,transform .4s var(--ease);}
body.ra99-menu-open .ra99-overlay-brand{opacity:1;transform:translateY(0);transition-delay:.65s;}
.ra99-overlay-brand img{height:40px;margin:0 auto 12px;opacity:.5;}
.ra99-overlay-brand span{font-size:11px;letter-spacing:4px;text-transform:uppercase;color:rgba(255,255,255,.2);}

body.ra99-menu-open{overflow:hidden;}

/* =============================================
   HERO
============================================= */
.ra99-hero{position:relative;height:auto;min-height:500px;display:flex;align-items:center;overflow:hidden;}
.ra99-hero::before{content:'';position:absolute;right:5%;top:20%;width:600px;height:600px;background:radial-gradient(circle,rgba(212,175,55,.1) 0%,transparent 65%);border-radius:50%;animation:ambientGlow 4s ease-in-out infinite alternate;z-index:2;pointer-events:none;}
@keyframes ambientGlow{0%{opacity:.6;transform:scale(1);}100%{opacity:1;transform:scale(1.15);}}
.ra99-hero-image{position:absolute;inset:0;z-index:1;}
.ra99-hero-image img{width:aspect-ratio:2/3;height:auto;aspect-ratio:2/3;height:auto;object-fit:cover;animation:heroDrift 25s ease-in-out infinite alternate;}
@keyframes heroDrift{0%{transform:scale(1) translate(0,0);}100%{transform:scale(1.03) translate(-0.5%,0.3%);}}
.ra99-hero-image::after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,rgba(0,0,0,.88) 0%,rgba(0,0,0,.60) 35%,rgba(0,0,0,.30) 100%),linear-gradient(to top,rgba(0,0,0,.85),rgba(0,0,0,.05));}
.ra99-hero-content{position:relative;z-index:5;max-width:850px;padding-top:20px;}
.ra99-hero-label{display:inline-block;padding:10px 20px;border:1px solid rgba(212,175,55,.35);border-radius:50px;color:var(--gold);font-size:var(--fs-small);letter-spacing:0.1em;margin-bottom:35px;text-transform:uppercase;}
.ra99-hero h1{font-family:var(--font-display);font-size:var(--fs-hero);line-height:var(--lh-tight);font-weight:600;margin-bottom:20px;}
.ra99-hero p{font-size:var(--fs-lead);line-height:var(--lh-relaxed);color:#D0D0D0;max-width:600px;margin-bottom:30px;}
.ra99-hero-actions{display:flex;gap:20px;flex-wrap:wrap;}

/* =============================================
   FLOATING CARD
============================================= */
.ra99-floating-card{position:absolute;right:8%;bottom:10%;z-index:10;width:340px;padding:35px;background:linear-gradient(135deg,rgba(212,175,55,.06),rgba(255,255,255,.02));backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border:1px solid var(--border-gold);border-radius:var(--radius-lg);transition:transform .5s ease var(--ease),border-color .5s ease var(--ease);}
.ra99-floating-card:hover{transform:translateY(-6px);border-color:var(--border-gold-strong);}
.ra99-floating-card::after{content:'';position:absolute;top:-30px;right:-30px;width:120px;height:120px;background:radial-gradient(circle,rgba(212,175,55,.06) 0%,transparent 70%);border-radius:50%;pointer-events:none;}
.ra99-floating-card span{display:block;color:var(--gold);font-size:13px;letter-spacing:3px;margin-bottom:10px;}
.ra99-floating-card h3{font-family:var(--font-display);font-size:var(--fs-h2);margin-bottom:15px;
  line-height: var(--lh-tight);
}
.ra99-floating-card p{font-size:var(--fs-body);line-height:var(--lh-normal);color:#C8C8C8;}

/* =============================================
   SCROLL INDICATOR
============================================= */
.ra99-scroll{position:absolute;left:50%;bottom:40px;transform:translateX(-50%);z-index:50;}
.ra99-scroll span{display:block;width:1px;height:70px;background:linear-gradient(to bottom,rgba(212,175,55,0),rgba(212,175,55,1));animation:scrollMove 2s infinite;}
@keyframes scrollMove{0%{opacity:.2;transform:translateY(0);}50%{opacity:1;}100%{opacity:.2;transform:translateY(20px);}}

/* =============================================
   BRAND STORY
============================================= */
.ra99-story{background:var(--bg-primary);}
.ra99-story-grid{display:grid;grid-template-columns:1fr 1fr;gap:90px;align-items:center;}
.ra99-section-tag{display:inline-block;color:var(--gold);font-size:var(--fs-small);letter-spacing:0.1em;margin-bottom:24px;
  text-transform: uppercase;
}
.ra99-story h2{font-family:var(--font-display);font-size:var(--fs-display);line-height:var(--lh-tight);margin-bottom:35px;}
.ra99-story p{font-size:var(--fs-lead);line-height:var(--lh-relaxed);color:#BDBDBD;margin-bottom:25px;}
.ra99-story-right{border-radius:var(--radius-lg);overflow:hidden;position:relative;}
.ra99-story-right img{width:100%;aspect-ratio:2/3;height:auto;object-fit:cover;}
.ra99-story-right .ra99-col-day{width:100%;aspect-ratio:2/3;height:auto;object-fit:cover;display:block;transition:transform 1.2s ease var(--ease);}
.ra99-story-right .ra99-col-night{position:absolute;top:0;left:0;width:100%;aspect-ratio:2/3;height:auto;object-fit:cover;display:block;clip-path:inset(0 100% 0 0);transition:clip-path .7s var(--ease);will-change:clip-path;pointer-events:none;}
.ra99-story-right:hover .ra99-col-night{clip-path:inset(0 0% 0 0);}
.ra99-story-right:hover .ra99-col-day{transform:scale(1.02);}

/* =============================================
   COLLECTIONS
============================================= */
.ra99-collections{background:var(--bg-secondary);}
.ra99-editorial-heading{margin-bottom:100px;text-align:center;}
.ra99-editorial-heading span{color:var(--gold);letter-spacing:0.1em;font-size:var(--fs-small);
  text-transform: uppercase;
}
.ra99-editorial-heading h2{font-family:var(--font-display);font-size:var(--fs-display);line-height:var(--lh-tight);margin-top:25px;}
.ra99-editorial-heading p{font-size:var(--fs-lead);color:#BDBDBD;line-height:var(--lh-relaxed);max-width:900px;margin:20px auto 0;}
.ra99-collection-row{display:grid;grid-template-columns:1.2fr .8fr;gap:80px;align-items:center;margin-bottom:160px;position:relative;}
.ra99-collection-row.reverse{grid-template-columns:.8fr 1.2fr;}
.ra99-collection-row.reverse .ra99-collection-image{order:2;}
.ra99-collection-row.reverse .ra99-collection-content{order:1;}

/* --- COLLECTIONS DAY/NIGHT EFFECT (Matched to Legends) --- */
.ra99-collection-image{overflow:hidden;border-radius:var(--radius-lg);position:relative;}
.ra99-collection-image::before{content:'';position:absolute;top:0;left:0;width:0;height:3px;background:linear-gradient(90deg,var(--gold),var(--gold-soft));transition:width .6s ease var(--ease);z-index:5;}
.ra99-collection-row:hover .ra99-collection-image::before{width:100%;}

/* ADDED: The Light Sweep Hover Effect (Matches Legends) */
.ra99-collection-image::after{content:'';position:absolute;top:-60%;left:-60%;width:40%;height:220%;background:linear-gradient(to bottom right,transparent 40%,rgba(255,255,255,.02) 46%,rgba(255,255,255,.07) 50%,rgba(255,255,255,.02) 54%,transparent 60%);transform:rotate(30deg) translateX(-150%);transition:transform .9s ease var(--ease);z-index:4;pointer-events:none;}
.ra99-collection-row:hover .ra99-collection-image::after{transform:rotate(30deg) translateX(250%);}

/* CHANGED: transform speed from 1.2s to 1s to match Legends */
.ra99-col-day{width:100%;aspect-ratio:2/3;height:auto;object-fit:cover;display:block;transition:transform 1s ease var(--ease);}
.ra99-col-night{position:absolute;top:0;left:0;width:100%;aspect-ratio:2/3;height:auto;object-fit:cover;display:block;clip-path:inset(0 100% 0 0);transition:clip-path .7s var(--ease);will-change:clip-path;pointer-events:none;}
.ra99-collection-row:hover .ra99-col-night{clip-path:inset(0 0% 0 0);}
.ra99-collection-row:hover .ra99-col-day{transform:scale(1.02);}
@media(max-width:900px){
  .ra99-col-night{clip-path:inset(0 100% 0 0);transition:clip-path .7s var(--ease);}
  .ra99-collection-image:hover .ra99-col-night,.ra99-collection-image.ra99-touch-active .ra99-col-night{clip-path:inset(0 0% 0 0);}
  .ra99-collection-image:hover .ra99-col-day,.ra99-collection-image.ra99-touch-active .ra99-col-day{transform:scale(1);}
}
.ra99-collection-number{font-family:var(--font-display);font-size:120px;color:rgba(212,175,55,.18);line-height:1;margin-bottom:20px;}
.ra99-collection-content h3{font-family:var(--font-display);font-size:var(--fs-h2);margin-bottom:25px;
  line-height: var(--lh-tight);
}
.ra99-collection-content p{font-size:var(--fs-lead);line-height:var(--lh-relaxed);color:#BDBDBD;max-width:520px;margin-bottom:35px;}
.ra99-link{display:inline-block;color:var(--gold);letter-spacing:2px;text-transform:uppercase;font-size:14px;}

/* =============================================
   METRICS
============================================= */
.ra99-metrics{padding-top:40px;padding-bottom:var(--section-pad);}
.ra99-metrics-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:40px;}
.ra99-metric{text-align:center;padding:50px 20px;border-top:1px solid var(--border-light);border-bottom:1px solid var(--border-light);}
.ra99-metric h3{font-family:var(--font-display);font-size:var(--fs-h2);color:var(--gold);margin-bottom:15px;
  line-height: var(--lh-tight);
}
.ra99-metric p{letter-spacing:2px;text-transform:uppercase;font-size:var(--fs-small);color:#BDBDBD;
  line-height: var(--lh-normal);
}

/* =============================================
   SIGNATURE CREATIONS
============================================= */
.ra99-signature{background:var(--bg-secondary);}
.ra99-signature-header{text-align:center;max-width:900px;margin:0 auto 100px;}
.ra99-signature-header span{color:var(--gold);letter-spacing:0.1em;font-size:var(--fs-small);
  text-transform: uppercase;
}
.ra99-signature-header h2{font-family:var(--font-display);font-size:var(--fs-display);line-height:var(--lh-tight);margin:25px 0;}
.ra99-signature-header p{font-size:var(--fs-lead);color:#BDBDBD;line-height:var(--lh-relaxed);}
.ra99-signature-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:40px;}
.ra99-signature-card{background:linear-gradient(160deg,rgba(212,175,55,.04),rgba(255,255,255,.015));backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);border:1px solid var(--border-subtle);border-radius:var(--radius-lg);overflow:hidden;transition:transform .5s ease var(--ease),border-color .5s ease var(--ease),box-shadow .5s ease var(--ease);display:flex;flex-direction:column;height:100%;position:relative;}
.ra99-signature-card::before{content:'';position:absolute;top:0;left:0;right:0;bottom:0;z-index:4;pointer-events:none;overflow:hidden;border-radius:var(--radius-lg);}
.ra99-signature-card::after{content:'';position:absolute;top:-60%;left:-60%;width:40%;height:220%;background:linear-gradient(to bottom right,transparent 40%,rgba(255,255,255,.02) 46%,rgba(255,255,255,.07) 50%,rgba(255,255,255,.02) 54%,transparent 60%);transform:rotate(30deg) translateX(-150%);transition:transform .9s ease var(--ease);z-index:4;pointer-events:none;}
.ra99-signature-card:hover::after{transform:rotate(30deg) translateX(250%);}
.ra99-sig-topline{position:absolute;top:0;left:0;width:0;height:3px;background:linear-gradient(90deg,var(--gold),var(--gold-soft));transition:width .6s ease var(--ease);z-index:5;}
.ra99-signature-card:hover .ra99-sig-topline{width:100%;}
.ra99-signature-card:hover{transform:translateY(-10px);border-color:rgba(212,175,55,.4);box-shadow:0 20px 60px rgba(212,175,55,.08),0 0 0 1px rgba(212,175,55,.1);}
.ra99-signature-image{position:relative;overflow:hidden;}
.ra99-sig-day{width:100%;aspect-ratio:2/3;height:auto;object-fit:cover;display:block;transition:transform 1s ease var(--ease);}
.ra99-sig-night{position:absolute;top:0;left:0;width:100%;aspect-ratio:2/3;height:auto;object-fit:cover;display:block;clip-path:inset(0 100% 0 0);transition:clip-path .7s var(--ease);will-change:clip-path;pointer-events:none;}
.ra99-signature-card:hover .ra99-sig-night{clip-path:inset(0 0% 0 0);}
.ra99-signature-card:hover .ra99-sig-day{transform:scale(1.02);}
@media(max-width:900px){
  .ra99-sig-night{clip-path:inset(0 100% 0 0);transition:clip-path .7s var(--ease);}
  .ra99-signature-image:hover .ra99-sig-night,.ra99-signature-image.ra99-touch-active .ra99-sig-night{clip-path:inset(0 0% 0 0);}
  .ra99-signature-image:hover .ra99-sig-day,.ra99-signature-image.ra99-touch-active .ra99-sig-day{transform:scale(1);}
}
.ra99-signature-content{padding:40px;display:flex;flex-direction:column;min-height:390px;}
.ra99-signature-content span{color:var(--gold);font-size:12px;letter-spacing:3px;text-transform:uppercase;}
.ra99-signature-content h3{font-family:var(--font-display);font-size:var(--fs-h2);margin:18px 0;
  line-height: var(--lh-tight);
}
.ra99-signature-content p{color:#BDBDBD;line-height:var(--lh-relaxed);margin-bottom:20px;
  font-size: var(--fs-lead);
}
.ra99-signature-content a{color:var(--gold);letter-spacing:2px;font-size:13px;text-transform:uppercase;margin-top:auto;display:inline-block;}

/* =============================================
   PARALLAX STATEMENT
============================================= */
.ra99-statement{position:relative;height:90vh;display:flex;align-items:center;overflow:hidden;}
.ra99-statement-bg{position:absolute;inset:0;}
.ra99-statement-bg img{width:100%;height:100%;object-fit:cover;}
.ra99-statement-overlay{position:absolute;inset:0;background:linear-gradient(to top,rgba(0,0,0,.85),rgba(0,0,0,.35));}
.ra99-statement::before{content:'';position:absolute;left:10%;bottom:20%;width:500px;height:500px;background:radial-gradient(circle,rgba(212,175,55,.08) 0%,transparent 65%);border-radius:50%;z-index:2;pointer-events:none;animation:ambientGlow 5s ease-in-out infinite alternate;}
.ra99-statement-content{position:relative;z-index:5;max-width:900px;}
.ra99-statement-content span{color:var(--gold);letter-spacing:4px;font-size:13px;}
.ra99-statement-content h2{font-family:var(--font-display);font-size:var(--fs-display);line-height:var(--lh-tight);margin:25px 0;}
.ra99-statement-content p{font-size:var(--fs-lead);line-height:var(--lh-relaxed);max-width:700px;color:#D2D2D2;}

/* =============================================
   CUSTOM COMMISSIONS
============================================= */
.ra99-custom{background:var(--bg-primary);}
.ra99-custom-grid{display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:center;}
.ra99-custom-left span{color:var(--gold);letter-spacing:4px;font-size:13px;}
.ra99-custom-left h2{font-family:var(--font-display);font-size:var(--fs-display);line-height:var(--lh-tight);margin:25px 0;}
.ra99-custom-left p{font-size:var(--fs-lead);line-height:var(--lh-relaxed);color:#BDBDBD;margin-bottom:40px;}
.ra99-custom-buttons{display:flex;gap:20px;flex-wrap:wrap;}
.ra99-custom-box{padding:70px;border-radius:var(--radius-xl);background:linear-gradient(135deg,rgba(212,175,55,.12),rgba(255,255,255,.02));border:1px solid var(--border-gold);position:relative;overflow:hidden;}
.ra99-custom-box::after{content:'';position:absolute;top:-40px;right:-40px;width:150px;height:150px;background:radial-gradient(circle,rgba(212,175,55,.06) 0%,transparent 70%);border-radius:50%;pointer-events:none;}
.ra99-custom-box h3{font-family:var(--font-display);font-size:var(--fs-h2);margin-bottom:20px;
  line-height: var(--lh-tight);
}
.ra99-custom-box p{line-height:var(--lh-relaxed);color:#C8C8C8;
  font-size: var(--fs-lead);
}

/* =============================================
   TESTIMONIALS
============================================= */
.ra99-testimonials{background:var(--bg-secondary);}
.ra99-testimonial-heading{text-align:center;max-width:900px;margin:0 auto 120px;padding:0 20px;}
.ra99-testimonial-heading span{color:var(--gold);letter-spacing:4px;font-size:13px;}
.ra99-testimonial-heading h2{font-family:var(--font-display);font-size:var(--fs-display);line-height:var(--lh-tight);letter-spacing:normal;margin:25px 0 20px;}
.ra99-testimonial-heading p{color:#BDBDBD;font-size:var(--fs-body);line-height:var(--lh-normal);}
.ra99-testimonial-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:35px;}
.ra99-testimonial{padding:50px;border-radius:var(--radius-lg);background:linear-gradient(160deg,rgba(212,175,55,.04),rgba(255,255,255,.015));backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);border:1px solid var(--border-subtle);display:flex;flex-direction:column;height:100%;transition:transform .5s ease var(--ease),border-color .5s ease var(--ease);}
.ra99-testimonial p{color:#C8C8C8;line-height:var(--lh-relaxed);margin-bottom:30px;flex-grow:1;
  font-size: var(--fs-lead);
}
.ra99-testimonial h4{font-family:var(--font-display);font-size:var(--fs-h3);color:var(--gold);margin-top:auto;
  line-height: var(--lh-tight);
}
.ra99-testimonial:hover{transform:translateY(-6px);border-color:rgba(212,175,55,.3);}

/* =============================================
   FAQ / SPACES / WHY — glass card system (music.html)
============================================= */
.ra99-why{background:var(--bg-secondary);}
.ra99-why-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:40px;}
.ra99-why-card{padding:50px;border-radius:var(--radius-lg);background:linear-gradient(160deg,rgba(212,175,55,.04),rgba(255,255,255,.015));backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);border:1px solid var(--border-subtle);display:flex;flex-direction:column;height:100%;transition:transform .5s ease var(--ease),border-color .5s ease var(--ease);}
.ra99-why-card:hover{transform:translateY(-6px);border-color:rgba(212,175,55,.3);}
.ra99-why-icon{font-size:42px;color:var(--gold);margin-bottom:25px;}
.ra99-why-card h3{font-family:var(--font-display);font-size:var(--fs-h3);margin-bottom:18px;
  line-height: var(--lh-tight);
}
.ra99-why-card p{color:#BDBDBD;line-height:1.9;flex-grow:1;}

.ra99-spaces{background:var(--bg-primary);}
.ra99-spaces-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:40px;}
.ra99-space-card{padding:50px;border-radius:var(--radius-lg);background:linear-gradient(160deg,rgba(212,175,55,.04),rgba(255,255,255,.015));backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);border:1px solid var(--border-subtle);transition:transform .5s ease var(--ease),border-color .5s ease var(--ease);}
.ra99-space-card:hover{transform:translateY(-6px);border-color:rgba(212,175,55,.3);}
.ra99-space-card h3{font-family:var(--font-display);font-size:var(--fs-h3);margin-bottom:18px;
  line-height: var(--lh-tight);
}
.ra99-space-card p{color:#BDBDBD;line-height:1.9;}

.ra99-faq{background:var(--bg-secondary);}
.ra99-faq-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:40px;}
.ra99-faq-item{padding:50px;border-radius:var(--radius-lg);background:linear-gradient(160deg,rgba(212,175,55,.04),rgba(255,255,255,.015));backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);border:1px solid var(--border-subtle);transition:transform .5s ease var(--ease),border-color .5s ease var(--ease);}
.ra99-faq-item:hover{transform:translateY(-5px);border-color:rgba(212,175,55,.3);}
.ra99-faq-item h3{font-family:var(--font-display);font-size:var(--fs-h3);margin-bottom:18px;color:var(--text);
  line-height: var(--lh-tight);
}
.ra99-faq-item p{color:#BDBDBD;line-height:1.9;}

/* =============================================
   ARTIST GLASS CARDS (music.html — Featured Artists)
============================================= */
.ra99-artists{background:var(--bg-secondary);}
.ra99-artists-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:40px;}
.ra99-artists-grid > *{min-width:0;}
.ra99-glass-card{background:linear-gradient(160deg,rgba(212,175,55,.04),rgba(255,255,255,.015));backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);border:1px solid var(--border-subtle);border-radius:var(--radius-lg);overflow:hidden;transition:transform .5s ease var(--ease),border-color .5s ease var(--ease),box-shadow .5s ease var(--ease);display:flex;flex-direction:column;height:100%;position:relative;cursor:pointer;}
.ra99-glass-card::before{content:'';position:absolute;top:0;left:0;right:0;bottom:0;z-index:4;pointer-events:none;overflow:hidden;border-radius:var(--radius-lg);}
.ra99-glass-card::after{content:'';position:absolute;top:-60%;left:-60%;width:40%;height:220%;background:linear-gradient(to bottom right,transparent 40%,rgba(255,255,255,.02) 46%,rgba(255,255,255,.07) 50%,rgba(255,255,255,.02) 54%,transparent 60%);transform:rotate(30deg) translateX(-150%);transition:transform .9s ease var(--ease);z-index:4;pointer-events:none;}
.ra99-glass-card:hover::after{transform:rotate(30deg) translateX(250%);}
.ra99-glass-topline{position:absolute;top:0;left:0;width:0;height:3px;background:linear-gradient(90deg,var(--gold),var(--gold-soft));transition:width .6s ease var(--ease);z-index:5;}
.ra99-glass-card:hover .ra99-glass-topline{width:100%;}
.ra99-glass-card:hover{transform:translateY(-10px);border-color:rgba(212,175,55,.4);box-shadow:0 20px 60px rgba(212,175,55,.08),0 0 0 1px rgba(212,175,55,.1);}

.ra99-artist-number{font-family:var(--font-display);font-size:120px;color:rgba(212,175,55,.18);line-height:1;position:absolute;bottom:15px;right:25px;z-index:6;pointer-events:none;}

.ra99-artist-image{position:relative;overflow:hidden;}
.ra99-artist-image .ra99-img-day{position:relative;z-index:1;width:100%;height:360px;object-fit:cover;display:block;}
.ra99-artist-image .ra99-img-night{position:absolute;top:0;left:0;z-index:2;width:100%;height:360px;object-fit:cover;opacity:0;transition:opacity .6s ease;pointer-events:none;}
.ra99-glass-card:hover .ra99-img-night{opacity:1;}
.ra99-glass-card.ra99-night-on .ra99-img-night{opacity:1;}

.ra99-daynight-btn{display:none;position:absolute;bottom:12px;right:12px;z-index:10;width:38px;height:38px;border-radius:50%;background:rgba(0,0,0,.55);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);border:1px solid rgba(255,255,255,.12);color:var(--gold);cursor:pointer;align-items:center;justify-content:center;transition:background .3s ease;}
.ra99-daynight-btn:hover{background:rgba(0,0,0,.75);}
.ra99-daynight-btn svg{width:18px;height:18px;}
.ra99-daynight-btn .ra99-dn-moon{display:none;}
.ra99-glass-card.ra99-night-on .ra99-daynight-btn .ra99-dn-sun{display:none;}
.ra99-glass-card.ra99-night-on .ra99-daynight-btn .ra99-dn-moon{display:block;}
@media(max-width:768px){.ra99-daynight-btn{display:flex;}}
@media(pointer:coarse){.ra99-daynight-btn{display:flex;}}

.ra99-artist-content{padding:40px;display:flex;flex-direction:column;flex:1;overflow:visible;}
.ra99-artist-content>span{color:var(--gold);font-size:12px;letter-spacing:3px;text-transform:uppercase;}
.ra99-artist-content h3{font-family:var(--font-display);font-size:var(--fs-h2);margin:18px 0;
  line-height: var(--lh-tight);
}
.ra99-artist-content p{color:#BDBDBD;line-height:1.9;margin-bottom:20px;flex-grow:1;}

.ra99-lang-pills{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:20px;}
.ra99-lang-pill{padding:7px 16px;border-radius:50px;border:1px solid var(--border-gold);background:transparent;color:var(--gold);font-size:12px;letter-spacing:2px;text-transform:uppercase;font-family:var(--font-body);font-weight:500;cursor:pointer;transition:all .3s ease;-webkit-user-select:none;user-select:none;}
.ra99-lang-pill:hover{background:rgba(212,175,55,.10);border-color:var(--border-gold-strong);}
.ra99-lang-pill.active{background:var(--gold);color:#000;border-color:var(--gold);}

.ra99-artist-cta{color:var(--gold);letter-spacing:2px;font-size:13px;text-transform:uppercase;margin-top:auto;display:inline-flex;align-items:center;gap:8px;position:relative;z-index:6;}
.ra99-artist-cta::after{content:'';width:0;height:1px;background:var(--gold);transition:width .4s var(--ease);position:absolute;bottom:-3px;left:0;}
.ra99-artist-cta:hover::after{width:100%;}
.ra99-artist-cta svg{width:14px;height:14px;transition:transform .3s ease;}
.ra99-artist-cta:hover svg{transform:translateX(4px);}

/* =============================================
   DRAWER (music.html — artist collection panel)
============================================= */
.ra99-drawer-backdrop{position:fixed;inset:0;background:rgba(5,5,5,.80);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);z-index:10010;opacity:0;visibility:hidden;transition:opacity .4s var(--ease),visibility .4s;}
.ra99-drawer-backdrop.open{opacity:1;visibility:visible;}
.ra99-drawer{position:fixed;top:0;right:0;width:560px;max-width:90vw;height:100vh;background:var(--bg-primary);border-left:1px solid var(--border-light);z-index:10011;transform:translateX(100%);transition:transform .5s var(--ease);overflow-y:auto;overflow-x:hidden;}
.ra99-drawer.open{transform:translateX(0);}
.ra99-drawer-header{position:sticky;top:0;z-index:5;display:flex;align-items:center;justify-content:space-between;padding:28px 40px;background:rgba(5,5,5,.92);backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px);border-bottom:1px solid var(--border-light);}
.ra99-drawer-header h3{font-family:var(--font-display);font-size:var(--fs-h3);color:var(--text);
  line-height: var(--lh-tight);
}
.ra99-drawer-close{width:44px;height:44px;border-radius:12px;border:1px solid var(--border-gold);background:transparent;color:var(--gold);cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .3s ease;}
.ra99-drawer-close:hover{background:var(--gold);color:#000;}
.ra99-drawer-hero{width:100%;height:340px;overflow:hidden;}
.ra99-drawer-hero img{width:100%;height:100%;object-fit:cover;}
.ra99-drawer-hero-wrap{position:relative;}
.ra99-drawer-hero-wrap::after{content:'';position:absolute;bottom:0;left:0;right:0;height:120px;background:linear-gradient(to top,var(--bg-primary),transparent);pointer-events:none;}
.ra99-drawer-body{padding:10px 40px 60px;}
.ra99-drawer-section-label{color:var(--gold);font-size:12px;letter-spacing:4px;text-transform:uppercase;margin-bottom:30px;margin-top:10px;}
.ra99-drawer-editions{display:flex;flex-direction:column;gap:24px;margin-bottom:50px;width:100%;}
.ra99-edition-card{padding:22px;border-radius:20px;background:linear-gradient(160deg,rgba(212,175,55,.04),rgba(255,255,255,.015));border:1px solid var(--border-subtle);transition:border-color .4s ease,transform .4s ease;}
.ra99-edition-card:hover{border-color:var(--border-gold);transform:translateY(-4px);}
.ra99-edition-img{width:100px;height:100px;flex-shrink:0;border-radius:14px;overflow:hidden;}
.ra99-edition-img img{width:100%;height:100%;object-fit:cover;transition:transform .6s ease var(--ease);}
.ra99-edition-card:hover .ra99-edition-img img{transform:scale(1.06);}
.ra99-edition-info{display:flex;flex-direction:column;justify-content:center;}
.ra99-edition-info h4{font-family:var(--font-display);font-size:var(--fs-h4);margin-bottom:5px;color:var(--text);
  line-height: var(--lh-tight);
}
.ra99-edition-subtitle{color:var(--gold);font-size:11px;letter-spacing:2px;text-transform:uppercase;margin-bottom:5px;}
.ra99-edition-info p{font-size:var(--fs-small);line-height:var(--lh-normal);color:#BDBDBD;margin-bottom:10px;}
.ra99-edition-link{color:var(--gold);font-size:12px;letter-spacing:2px;text-transform:uppercase;display:inline-block;}
.ra99-edition-link::after{content:'';display:block;width:0;height:1px;background:var(--gold);transition:width .3s ease;}
.ra99-edition-link:hover::after{width:100%;}
.ra99-drawer-cta-wrap{padding:30px 40px;border-top:1px solid var(--border-light);position:sticky;bottom:0;background:rgba(5,5,5,.92);backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px);}
.ra99-drawer-cta-wrap .ra99-btn-primary{width:100%;justify-content:center;}
.ra99-drawer-scroll-hint{display:flex;align-items:center;justify-content:center;gap:8px;padding:12px;color:var(--muted);font-size:12px;letter-spacing:2px;text-transform:uppercase;opacity:.5;}
.ra99-drawer-scroll-hint svg{width:14px;height:14px;animation:drawerBounce 2s infinite;}
@keyframes drawerBounce{0%,100%{transform:translateY(0);}50%{transform:translateY(4px);}}

@media(max-width:768px){
  .ra99-drawer{top:auto;bottom:0;left:0;right:0;width:100%;max-width:100%;height:85vh;max-height:85vh;border-left:none;border-top:1px solid var(--border-light);border-radius:var(--radius-xl) var(--radius-xl) 0 0;transform:translateY(100%);}
  .ra99-drawer.open{transform:translateY(0);}
  .ra99-drawer-header{padding:20px 24px;border-radius:var(--radius-xl) var(--radius-xl) 0 0;}
  .ra99-drawer-header h3{font-size:var(--fs-h3);
  line-height: var(--lh-tight);
}
  .ra99-drawer-hero{height:240px;}
  .ra99-drawer-body{padding:10px 24px 40px;}
  .ra99-edition-card{flex-direction:column;gap:16px;}
  .ra99-edition-img{width:100%;height:200px;}
  .ra99-drawer-cta-wrap{padding:20px 24px;}
  .ra99-drawer-scroll-hint{display:none;}
  .ra99-drawer-handle{display:flex;justify-content:center;padding:12px 0 0;position:absolute;top:0;left:0;right:0;z-index:6;}
  .ra99-drawer-handle span{width:40px;height:4px;border-radius:4px;background:rgba(255,255,255,.15);}
}
@media(min-width:769px){.ra99-drawer-handle{display:none;}}

/* =============================================
   FINAL CTA
============================================= */
.ra99-final-cta{background:var(--bg-primary);}
.ra99-final-box{text-align:center;max-width:1100px;margin:auto;padding:120px 80px;border-radius:40px;background:linear-gradient(135deg,rgba(212,175,55,.12),rgba(255,255,255,.02));border:1px solid rgba(212,175,55,.20);position:relative;overflow:hidden;}
.ra99-final-box::before{content:'';position:absolute;top:-40%;left:-20%;width:60%;height:80%;background:radial-gradient(ellipse,rgba(212,175,55,.05) 0%,transparent 70%);pointer-events:none;}
.ra99-final-box span{color:var(--gold);letter-spacing:4px;font-size:13px;}
.ra99-final-box h2{font-family:var(--font-display);font-size:var(--fs-display);line-height:var(--lh-tight);margin:25px 0;position:relative;}
.ra99-final-box p{font-size:var(--fs-lead);line-height:var(--lh-relaxed);color:#C8C8C8;max-width:800px;margin:0 auto 45px;position:relative;}
.ra99-final-actions{display:flex;justify-content:center;gap:20px;flex-wrap:wrap;position:relative;}

/* =============================================
   BUTTONS
============================================= */
.ra99-btn-primary{display:inline-flex;align-items:center;justify-content:center;padding:18px 42px;border-radius:var(--radius-btn);background:var(--gold);color:#000;font-weight:600;font-family:var(--font-body);font-size:15px;transition:transform .3s ease,box-shadow .3s ease;cursor:pointer;border:none;}
.ra99-btn-primary:hover{transform:translateY(-4px);box-shadow:0 12px 40px rgba(212,175,55,.2);}
.ra99-btn-secondary{display:inline-flex;align-items:center;justify-content:center;padding:18px 42px;border-radius:var(--radius-btn);border:1px solid rgba(255,255,255,.20);color:#fff;font-family:var(--font-body);font-size:15px;transition:border-color .3s ease,transform .3s ease;cursor:pointer;background:transparent;}
.ra99-btn-secondary:hover{border-color:var(--gold);transform:translateY(-4px);}

/* =============================================
   FOOTER
============================================= */
.ra99-footer{padding:120px 0 40px;background:var(--bg-primary);border-top:1px solid var(--border-subtle);}
.ra99-footer-grid{display:grid;grid-template-columns:2fr 1fr 1fr 1fr;gap:60px;margin-bottom:60px;}
.ra99-footer-logo{display:flex;align-items:center;gap:15px;margin-bottom:25px;}
.ra99-footer-logo img{height:55px;}
.ra99-footer-logo h3{font-family:var(--font-display);letter-spacing:2px;
  font-size: var(--fs-h4);
  line-height: var(--lh-tight);
}
.ra99-footer p{color:#BDBDBD;line-height:var(--lh-relaxed);
  font-size: var(--fs-lead);
}
.ra99-footer h4{margin-bottom:20px;color:var(--gold);
  font-size: var(--fs-h4);
  line-height: var(--lh-tight);
}
.ra99-footer a{display:block;margin-bottom:14px;color:#C8C8C8;transition:color .3s ease;position:relative;}
.ra99-footer a:hover{color:var(--gold);}
.ra99-footer a::after{content:'';position:absolute;bottom:-2px;left:0;width:0;height:1px;background:var(--gold);transition:width .3s ease;}
.ra99-footer a:hover::after{width:100%;}
.ra99-footer-bottom{padding-top:40px;border-top:1px solid var(--border-subtle);text-align:center;color:#888;}

/* =============================================
   RESPONSIVE — DESKTOP (< 1200px)
============================================= */
@media(max-width:1200px){
  .ra99-hamburger{display:flex;}
  .ra99-menu,.ra99-nav-cta{display:none;}
  .ra99-floating-card{display:none;}
  .ra99-story-grid{grid-template-columns:1fr;}
  .ra99-collection-row,.ra99-collection-row.reverse{grid-template-columns:1fr;}
  .ra99-collection-row.reverse .ra99-collection-image,.ra99-collection-row.reverse .ra99-collection-content{order:unset;}
  .ra99-metrics-grid{grid-template-columns:1fr 1fr;}
  .ra99-signature-grid{grid-template-columns:1fr;}
  .ra99-custom-grid{grid-template-columns:1fr;}
  .ra99-testimonial-grid{grid-template-columns:1fr;}
  .ra99-footer-grid{grid-template-columns:1fr;}
  .ra99-artists-grid{grid-template-columns:repeat(2,1fr);}
  .ra99-why-grid{grid-template-columns:repeat(2,1fr);}
  .ra99-spaces-grid{grid-template-columns:repeat(2,1fr);}
  .ra99-faq-grid{grid-template-columns:repeat(2,1fr);}
}

/* =============================================
   RESPONSIVE — TABLET (< 900px)
============================================= */
@media(max-width:900px){
  :root{--section-pad:100px;}
  .ra99-hero{min-height:500px;}
  .ra99-hero h1{font-size:var(--fs-hero);
  line-height: var(--lh-tight);
}
  .ra99-hero p{font-size:var(--fs-lead);line-height:var(--lh-relaxed);}
  .ra99-collection-content h3{font-size:var(--fs-h2);
  line-height: var(--lh-tight);
}
  .ra99-shimmer-wrap::after{animation:none;display:none;}
  .ra99-hero::before{width:300px;height:300px;}
  .ra99-statement::before{width:250px;height:250px;}
  .ra99-overlay-nav>li>a{font-size:clamp(28px,7vw,44px);}
}

/* =============================================
   RESPONSIVE — MOBILE (< 768px)
============================================= */
@media(max-width:768px){
  :root{--section-pad:80px;}
  .ra99-hero{min-height:520px;}
  .ra99-hero-content{padding-top:40px;}
  .ra99-hero h1{font-size:var(--fs-hero);
  line-height: var(--lh-tight);
}
  .ra99-hero p{font-size:var(--fs-lead);line-height:var(--lh-relaxed);}
  .ra99-btn-primary,.ra99-btn-secondary{padding:16px 32px;font-size:14px;width:100%;justify-content:center;}
  .ra99-hero-actions,.ra99-custom-buttons,.ra99-final-actions{flex-direction:column;}
  .ra99-collection-number{font-size:80px;}
  .ra99-collection-content h3{font-size:var(--fs-h2);
  line-height: var(--lh-tight);
}
  .ra99-metrics-grid{grid-template-columns:1fr;}
  .ra99-metric h3{font-size:var(--fs-h2);
  line-height: var(--lh-tight);
}
  .ra99-signature-content{padding:30px;min-height:auto;}
  .ra99-signature-content h3{font-size:var(--fs-h2);
  line-height: var(--lh-tight);
}
  .ra99-statement{height:70vh;}
  .ra99-statement-content h2{font-size:var(--fs-display);
  line-height: var(--lh-tight);
}
  .ra99-statement-content p{font-size:var(--fs-lead);
  line-height: var(--lh-relaxed);
}
  .ra99-custom-box{padding:40px 30px;}
  .ra99-custom-box h3{font-size:var(--fs-h2);
  line-height: var(--lh-tight);
}
  .ra99-testimonial{padding:35px 25px;}
  .ra99-testimonial h4{font-size:var(--fs-h3);
  line-height: var(--lh-tight);
}
  .ra99-final-box{padding:60px 25px;border-radius:25px;}
  .ra99-shimmer-wrap::after{animation:none;display:none;}
  .ra99-hero::before{display:none;}
  .ra99-hero-image img{animation:none;}
  .ra99-statement::before{display:none;}
  .ra99-signature-card::after{display:none;}
  .ra99-hamburger{width:40px;height:40px;border-radius:10px;}
  .ra99-hamburger-line{width:18px;}
  .ra99-overlay-nav>li>a{font-size:clamp(26px,8vw,36px);}
  .ra99-overlay-cta{padding:16px 36px;font-size:14px;}
  .ra99-overlay-brand{bottom:30px;}
  .ra99-overlay-brand img{height:32px;}
  .ra99-artists-grid,.ra99-why-grid,.ra99-spaces-grid,.ra99-faq-grid{grid-template-columns:1fr;}
  .ra99-artist-image .ra99-img-day,.ra99-artist-image .ra99-img-night{height:400px;}
  .ra99-artist-content h3{font-size:var(--fs-h2);
  line-height: var(--lh-tight);
}
  .ra99-editorial-heading{margin-bottom:60px;}
}

/* =============================================
   RESPONSIVE — SMALL MOBILE (< 480px)
============================================= */
@media(max-width:480px){
  .ra99-collection-content h3{font-size:var(--fs-h2);
  line-height: var(--lh-tight);
}
  .ra99-collection-content p{font-size:var(--fs-lead);
  line-height: var(--lh-relaxed);
}
  .ra99-story h2{font-size:var(--fs-display);
  line-height: var(--lh-tight);
}
  .ra99-custom-box{padding:30px 20px;}
  .ra99-final-box{padding:40px 20px;}
  .ra99-metric h3{font-size:var(--fs-h2);
  line-height: var(--lh-tight);
}
  .ra99-hamburger{width:38px;height:38px;}
  .ra99-overlay-nav>li>a{font-size:24px;}
  .ra99-sub-menu a{font-size:14px !important;margin-left:12px;}
  .ra99-artist-image .ra99-img-day,.ra99-artist-image .ra99-img-night{height:300px;}
  .ra99-artist-content h3{font-size:var(--fs-h2);
  line-height: var(--lh-tight);
}
  .ra99-artist-content{padding:28px;}
  .ra99-lang-pills{gap:6px;}
  .ra99-lang-pill{padding:6px 12px;font-size:11px;}
}

/* =============================================
   ACCESSIBILITY
============================================= */
@media(prefers-reduced-motion:reduce){
  *,*::before,*::after{animation-duration:0.01ms !important;animation-iteration-count:1 !important;transition-duration:0.01ms !important;}
  html{scroll-behavior:auto;}
  .ra99-reveal{opacity:1;transform:none;}
}

/* --- ABOUT PAGE SPECIFIC LAYOUTS --- */
.ra99-fullimage { position: relative; height: 80vh; display: flex; align-items: center; overflow: hidden; }
.ra99-fullimage-bg { position: absolute; inset: 0; }
.ra99-fullimage-bg img { width: 100%; height: 100%; object-fit: cover; }
.ra99-fullimage-overlay { position: absolute; inset: 0; background: linear-gradient(to top, rgba(0,0,0,.85), rgba(0,0,0,.35)); }
.ra99-fullimage-content { position: relative; z-index: 5; max-width: 900px; }
.ra99-fullimage-content span { color: var(--gold); letter-spacing: 4px; font-size: var(--fs-small); text-transform: uppercase; }
.ra99-fullimage-content h2 { font-family: var(--font-display); font-size: var(--fs-display); line-height: .95; margin: 25px 0; }
.ra99-fullimage-content p { font-size: var(--fs-lead); line-height: var(--lh-relaxed); max-width: 700px; color: #D2D2D2; }

.ra99-video { background: var(--bg-secondary); }
.ra99-video-wrap { position: relative; width: 100%; max-width: 1100px; margin: 0 auto; border-radius: var(--radius-lg); overflow: hidden; border: 1px solid var(--border-light); aspect-ratio: 16/9; background: #0D0D0D; }
.ra99-video-wrap iframe { width: 100%; height: 100%; border: 0; }

.ra99-glass-card { background: linear-gradient(160deg, rgba(212,175,55,.04), rgba(255,255,255,.015)); backdrop-filter: blur(8px); border: 1px solid var(--border-subtle); border-radius: var(--radius-lg); overflow: hidden; transition: transform .5s ease var(--ease), border-color .5s ease var(--ease), box-shadow .5s ease var(--ease); display: flex; flex-direction: column; height: 100%; position: relative; }
.ra99-glass-topline { position: absolute; top: 0; left: 0; width: 0; height: 3px; background: linear-gradient(90deg, var(--gold), var(--gold-soft)); transition: width .6s ease var(--ease); z-index: 5; }
.ra99-glass-card:hover .ra99-glass-topline { width: 100%; }
.ra99-glass-card:hover { transform: translateY(-10px); border-color: rgba(212,175,55,.4); box-shadow: 0 20px 60px rgba(212,175,55,.08), 0 0 0 1px rgba(212,175,55,.1); }
.ra99-glass-content { padding: 50px; display: flex; flex-direction: column; min-height: 390px; }
.ra99-glass-content span { color: var(--gold); font-size: var(--fs-small); letter-spacing: 3px; text-transform: uppercase; }
.ra99-glass-content h3 { font-family: var(--font-display); font-size: var(--fs-h2); margin: 18px 0; }
.ra99-glass-content p { color: #BDBDBD; line-height: var(--lh-relaxed); margin-bottom: 20px; flex-grow: 1; }
.ra99-values-grid { display: grid; grid-template-columns: repeat(2, 1fr); gap: 40px; }

.ra99-process-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 40px; position: relative; }
.ra99-process-grid::before { content: ''; position: absolute; top: 60px; left: 16.66%; right: 16.66%; height: 1px; background: var(--border-gold); z-index: 1; }
.ra99-process-step { text-align: center; position: relative; z-index: 2; padding: 0 30px; }
.ra99-process-num { width: 120px; height: 120px; border-radius: 50%; border: 1px solid var(--border-gold-strong); display: flex; align-items: center; justify-content: center; margin: 0 auto 30px; font-family: var(--font-display); font-size: var(--fs-h2); color: var(--gold); background: var(--bg-primary); transition: border-color .4s ease, box-shadow .4s ease; }
.ra99-process-step:hover .ra99-process-num { border-color: var(--gold); box-shadow: 0 0 40px rgba(212,175,55,.15); }
.ra99-process-step h3 { font-family: var(--font-display); font-size: var(--fs-h3); margin-bottom: 18px; }
.ra99-process-step p { font-size: var(--fs-lead); line-height: var(--lh-relaxed); color: #BDBDBD; }

@media (max-width: 1200px) {
    .ra99-values-grid { grid-template-columns: 1fr; }
}
@media (max-width: 768px) {
    .ra99-fullimage { height: 70vh; }
    .ra99-process-grid { grid-template-columns: 1fr; gap: 50px; }
    .ra99-process-grid::before { display: none; }
    .ra99-glass-content { padding: 35px; min-height: auto; }
}

/* =================================================================
   CONTACT PAGE SPECIFIC LAYOUT
   ================================================================= */
.ra99-contact-grid { display: grid; grid-template-columns: 1fr 1.4fr; gap: 80px; align-items: start; }
.ra99-contact-info { display: flex; flex-direction: column; gap: 24px; }

.ra99-info-card { padding: 40px; border-radius: var(--radius-lg); background: linear-gradient(160deg, rgba(212,175,55,.04), rgba(255,255,255,.015)); backdrop-filter: blur(8px); border: 1px solid var(--border-subtle); transition: transform .5s ease var(--ease), border-color .5s ease var(--ease); }
.ra99-info-card:hover { transform: translateY(-6px); border-color: rgba(212,175,55,.3); }
.ra99-info-icon { width: 56px; height: 56px; border-radius: 16px; border: 1px solid var(--border-gold); display: flex; align-items: center; justify-content: center; margin-bottom: 24px; color: var(--gold); }
.ra99-info-icon svg { width: 24px; height: 24px; }
.ra99-info-card h3 { font-family: var(--font-display); font-size: var(--fs-h3); margin-bottom: 10px; }
.ra99-info-card p { color: #BDBDBD; line-height: var(--lh-normal); margin-bottom: 18px; font-size: var(--fs-body); }
.ra99-info-link { color: var(--gold); letter-spacing: 1px; font-size: var(--fs-small); display: inline-flex; align-items: center; gap: 6px; transition: gap .3s ease; }
.ra99-info-link:hover { gap: 10px; }
.ra99-info-link svg { width: 16px; height: 16px; }

.ra99-form-wrap { padding: 60px; border-radius: var(--radius-xl); background: linear-gradient(135deg, rgba(212,175,55,.06), rgba(255,255,255,.015)); border: 1px solid var(--border-gold); position: relative; overflow: hidden; }
.ra99-form-wrap::before { content: ''; position: absolute; top: -60px; right: -60px; width: 200px; height: 200px; background: radial-gradient(circle, rgba(212,175,55,.06) 0%, transparent 70%); border-radius: 50%; pointer-events: none; }
.ra99-form-wrap h3 { font-family: var(--font-display); font-size: var(--fs-h2); margin-bottom: 8px; position: relative; }
.ra99-form-wrap > p { color: #BDBDBD; margin-bottom: 40px; position: relative; font-size: var(--fs-lead); }
.ra99-form-row { display: grid; grid-template-columns: 1fr 1fr; gap: 20px; margin-bottom: 20px; }
.ra99-form-group { display: flex; flex-direction: column; gap: 8px; }
.ra99-form-group.full { grid-column: 1/-1; }
.ra99-form-label { font-size: var(--fs-small); letter-spacing: 2px; text-transform: uppercase; color: var(--muted); }
.ra99-form-input, .ra99-form-textarea { width: 100%; padding: 16px 20px; border-radius: 16px; border: 1px solid var(--border-light); background: rgba(255,255,255,.03); color: var(--text); font-family: var(--font-body); font-size: var(--fs-body); transition: border-color .3s ease, box-shadow .3s ease; outline: none; }
.ra99-form-input:focus, .ra99-form-textarea:focus { border-color: var(--border-gold-strong); box-shadow: 0 0 0 3px rgba(212,175,55,.08); }
.ra99-form-input::placeholder, .ra99-form-textarea::placeholder { color: rgba(255,255,255,.2); }
.ra99-form-textarea { min-height: 160px; resize: vertical; line-height: 1.7; }
.ra99-form-submit { margin-top: 10px; width: 100%; }

@media (max-width: 768px) {
    .ra99-contact-grid { grid-template-columns: 1fr; gap: 60px; }
    .ra99-form-row { grid-template-columns: 1fr; }
    .ra99-form-wrap { padding: 40px 28px; }
}

/* =================================================================
   CUSTOM ARTWORK PAGE SPECIFIC LAYOUT
   ================================================================= */
.ra99-hero-bg { position: absolute; inset: 0; background: url('https://radiantart99.com/wp-content/uploads/Decor_webp_files/Copper/Tiger-CP-001.webp') center/cover no-repeat; opacity: .85; animation: heroDrift 25s ease-in-out infinite alternate; }
.ra99-hero-overlay { position: absolute; inset: 0; background: linear-gradient(90deg, rgba(0,0,0,.92) 0%, rgba(0,0,0,.65) 40%, rgba(0,0,0,.30) 100%), linear-gradient(to top, rgba(0,0,0,.85), rgba(0,0,0,.05)); }
.ra99-hero-inner { position: relative; z-index: 5; width: var(--container-w); margin: auto; }
.ra99-section-number { font-family: var(--font-display); font-size: 130px; color: rgba(212,175,55,.18); line-height: 1; margin-bottom: 15px; }
.ra99-hero-title { font-family: var(--font-display); font-size: var(--fs-hero); line-height: .95; font-weight: 600; margin-bottom: 35px; }
.ra99-hero-copy { font-size: var(--fs-lead); line-height: var(--lh-relaxed); color: #D0D0D0; max-width: 700px; margin-bottom: 45px; }
.ra99-buttons { display: flex; gap: 20px; flex-wrap: wrap; }

/* COPPER STORY */
.ra99-copper-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 90px; align-items: center; }
.ra99-copper-title { font-family: var(--font-display); font-size: var(--fs-display); line-height: 1.15; margin-bottom: 35px; }
.ra99-copper-text { color: #BDBDBD; font-size: var(--fs-lead); line-height: var(--lh-relaxed); }
.ra99-copper-text p { margin-bottom: 25px; }
.ra99-copper-highlight { background: linear-gradient(135deg, rgba(212,175,55,.06), rgba(255,255,255,.02)); backdrop-filter: blur(12px); border: 1px solid var(--border-gold); border-radius: var(--radius-xl); padding: 55px; position: relative; overflow: hidden; }
.ra99-copper-highlight::before { content: ''; position: absolute; top: 0; left: 0; width: 140px; height: 2px; background: var(--gold); }
.ra99-copper-highlight blockquote { font-family: var(--font-display); font-size: var(--fs-h3); line-height: 1.6; color: var(--text); font-style: italic; border-left: 3px solid var(--gold); padding-left: 24px; margin-bottom: 20px; }
.ra99-copper-highlight p { color: #C8C8C8; font-size: var(--fs-body); line-height: var(--lh-normal); }

/* ARTISAN POINTS */
.ra99-artisan { background: var(--bg-secondary); }
.ra99-artisan-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 40px; }
.ra99-artisan-card { padding: 50px; background: linear-gradient(160deg, rgba(212,175,55,.04), rgba(255,255,255,.015)); border: 1px solid var(--border-subtle); border-radius: var(--radius-lg); transition: transform .5s ease var(--ease), border-color .5s ease var(--ease), box-shadow .5s ease var(--ease); display: flex; flex-direction: column; height: 100%; position: relative; overflow: hidden; }
.ra99-artisan-number { font-family: var(--font-display); font-size: 90px; color: rgba(212,175,55,.18); line-height: 1; margin-bottom: 20px; }
.ra99-artisan-card h3 { font-family: var(--font-display); font-size: var(--fs-h2); margin-bottom: 20px; color: var(--text); }
.ra99-artisan-card p { font-size: var(--fs-lead); line-height: var(--lh-relaxed); color: #BDBDBD; margin-top: auto; }
.ra99-artisan-card:hover { transform: translateY(-10px); border-color: rgba(212,175,55,.4); box-shadow: 0 20px 60px rgba(212,175,55,.06); }

/* CUSTOM TYPES */
.ra99-types-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 24px; }
.ra99-type-card { padding: 36px 28px; background: linear-gradient(160deg, rgba(212,175,55,.03), rgba(255,255,255,.01)); border: 1px solid var(--border-subtle); border-radius: var(--radius-lg); text-align: center; transition: transform .5s ease var(--ease), border-color .5s ease var(--ease), box-shadow .5s ease var(--ease); position: relative; overflow: hidden; display: flex; flex-direction: column; align-items: center; justify-content: center; min-height: 200px; }
.ra99-type-card::before { content: ''; position: absolute; top: 0; left: 0; right: 0; height: 2px; background: var(--gold); opacity: 0; transition: opacity .4s ease; }
.ra99-type-card:hover::before { opacity: 1; }
.ra99-type-card:hover { transform: translateY(-8px); border-color: rgba(212,175,55,.35); box-shadow: 0 16px 50px rgba(212,175,55,.06); }
.ra99-type-icon { width: 56px; height: 56px; border-radius: 50%; border: 1px solid rgba(212,175,55,.2); display: flex; align-items: center; justify-content: center; margin-bottom: 18px; transition: transform .3s ease, background .3s ease; }
.ra99-type-card:hover .ra99-type-icon { transform: scale(1.1); background: rgba(212,175,55,.15); }
.ra99-type-icon svg { width: 24px; height: 24px; color: var(--gold); }
.ra99-type-card h3 { font-family: var(--font-display); font-size: var(--fs-h4); margin-bottom: 8px; color: var(--text); }
.ra99-type-card p { font-size: var(--fs-small); color: var(--muted); line-height: var(--lh-normal); }

/* LED CUSTOM ART */
.ra99-led-section { background: var(--bg-secondary); }
.ra99-led-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 90px; align-items: center; }
.ra99-led-grid.reverse .ra99-led-content { order: 1; }
.ra99-led-grid.reverse .ra99-led-image { order: 2; }
.ra99-led-content h2 { font-family: var(--font-display); font-size: var(--fs-display); line-height: 1.15; margin-bottom: 30px; }
.ra99-led-content p { color: #BDBDBD; font-size: var(--fs-lead); line-height: var(--lh-relaxed); margin-bottom: 20px; }
.ra99-led-tags { display: flex; flex-wrap: wrap; gap: 10px; margin-top: 20px; }
.ra99-led-tag { padding: 8px 18px; border: 1px solid var(--border-gold); border-radius: 50px; font-size: var(--fs-small); letter-spacing: 1px; text-transform: uppercase; color: var(--gold); transition: background .3s ease, color .3s ease; }
.ra99-led-tag:hover { background: var(--gold); color: #000; }
.ra99-led-image { border-radius: var(--radius-lg); overflow: hidden; position: relative; }
.ra99-led-image img { width: 100%; height: 600px; object-fit: cover; transition: transform 1.2s ease var(--ease); }
.ra99-led-image:hover img { transform: scale(1.03); }

/* FINAL CTA */
.ra99-final-inner { max-width: 1100px; margin: auto; padding: 120px 80px; border-radius: 40px; background: linear-gradient(135deg, rgba(212,175,55,.12), rgba(255,255,255,.02)); border: 1px solid rgba(212,175,55,.20); position: relative; overflow: hidden; }
.ra99-final-inner h2 { font-family: var(--font-display); font-size: var(--fs-display); line-height: 1; margin: 25px 0; color: var(--text); position: relative; }
.ra99-final-inner p { font-size: var(--fs-lead); line-height: var(--lh-relaxed); color: #C8C8C8; max-width: 800px; margin: 0 auto 45px; position: relative; }
.ra99-cta-buttons { display: flex; justify-content: center; gap: 20px; flex-wrap: wrap; position: relative; }

/* RESPONSIVE */
@media (max-width: 1200px) {
    .ra99-copper-grid, .ra99-led-grid { grid-template-columns: 1fr; }
    .ra99-artisan-grid { grid-template-columns: 1fr 1fr; }
    .ra99-types-grid { grid-template-columns: repeat(2, 1fr); }
}
@media (max-width: 768px) {
    .ra99-section-number { font-size: 60px; margin-bottom: 10px; }
    .ra99-buttons, .ra99-cta-buttons { flex-direction: column; }
    .ra99-types-grid { grid-template-columns: 1fr 1fr; gap: 16px; }
    .ra99-artisan-grid { grid-template-columns: 1fr; }
    .ra99-artisan-card { padding: 40px 30px; }
    .ra99-copper-highlight, .ra99-final-inner { padding: 40px 25px; }
    .ra99-led-image img { height: 350px; }
}

/* =================================================================
   LEGENDS COLLECTION PAGE SPECIFIC LAYOUT
   ================================================================= */
.ra99-story-title { font-family: var(--font-display); font-size: var(--fs-display); line-height: 1.1; margin-bottom: 35px; }
.ra99-story-text { color: #BDBDBD; font-size: var(--fs-lead); line-height: var(--lh-relaxed); }
.ra99-story-text p { margin-bottom: 25px; }
.ra99-story-card { background: linear-gradient(135deg, rgba(212,175,55,.06), rgba(255,255,255,.02)); backdrop-filter: blur(12px); border: 1px solid var(--border-gold); border-radius: var(--radius-xl); padding: 55px; position: relative; overflow: hidden; }
.ra99-story-card::before { content: ''; position: absolute; top: 0; left: 0; width: 140px; height: 2px; background: var(--gold); }
.ra99-story-card h3 { font-family: var(--font-display); font-size: var(--fs-h2); margin-bottom: 30px; }
.ra99-story-card ul { list-style: none; }
.ra99-story-card li { margin-bottom: 18px; color: #C8C8C8; font-size: var(--fs-body); line-height: 1.6; }

/* PRODUCTS DAY/NIGHT CARDS */
.ra99-products { background: var(--bg-secondary); }
.ra99-section-header { text-align: center; max-width: 900px; margin: 0 auto 40px; }
.ra99-product-title { font-family: var(--font-display); font-size: var(--fs-display); line-height: 1.1; margin-top: 25px; }
.ra99-product-subtitle { font-size: var(--fs-lead); line-height: var(--lh-relaxed); color: #BDBDBD; margin-top: 20px; }
.ra99-hint { text-align: center; margin-bottom: 60px; color: rgba(255,255,255,.25); font-size: var(--fs-small); letter-spacing: 2px; text-transform: uppercase; display: flex; align-items: center; justify-content: center; gap: 10px; }
.ra99-hint svg { opacity: .4; animation: hintPulse 2s ease-in-out infinite; }
@keyframes hintPulse { 0%,100% { opacity: .3; transform: translateX(0); } 50% { opacity: .7; transform: translateX(6px); } }
.ra99-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 40px; }
.ra99-card { position: relative; overflow: hidden; background: var(--bg-card); border: 1px solid var(--border-subtle); border-radius: var(--radius-lg); text-decoration: none; color: var(--text); transition: transform .5s ease var(--ease), border-color .5s ease var(--ease), box-shadow .5s ease var(--ease); display: flex; flex-direction: column; height: 100%; }
.ra99-card::before { content: ''; position: absolute; top: 0; left: 0; width: 0; height: 3px; background: linear-gradient(90deg, var(--gold), var(--gold-soft)); transition: width .6s ease var(--ease); z-index: 5; }
.ra99-card:hover::before { width: 100%; }
.ra99-card-shine { position: absolute; top: 0; left: 0; right: 0; bottom: 0; z-index: 4; pointer-events: none; overflow: hidden; border-radius: var(--radius-lg); }
.ra99-card-shine::after { content: ''; position: absolute; top: -60%; left: -60%; width: 40%; height: 220%; background: linear-gradient(to bottom right, transparent 40%, rgba(255,255,255,.02) 46%, rgba(255,255,255,.07) 50%, rgba(255,255,255,.02) 54%, transparent 60%); transform: rotate(30deg) translateX(-150%); transition: transform .9s ease var(--ease); }
.ra99-card:hover .ra99-card-shine::after { transform: rotate(30deg) translateX(250%); }
.ra99-daynight-wrap { position: relative; overflow: hidden; cursor: crosshair; }
.ra99-daynight-day { width: 100%; height: 580px; object-fit: cover; display: block; transition: transform 1s ease var(--ease); }
.ra99-card:hover .ra99-daynight-day { transform: scale(1.02); }
.ra99-card:hover .ra99-daynight-night { clip-path: inset(0 0% 0 0); }
.ra99-daynight-night { position: absolute; top: 0; left: 0; width: 100%; height: 580px; object-fit: cover; display: block; clip-path: inset(0 100% 0 0); transition: clip-path .7s var(--ease); will-change: clip-path; pointer-events: none; }
.ra99-card-content { padding: 40px; display: flex; flex-direction: column; flex-grow: 1; }
.ra99-card h3 { font-family: var(--font-display); font-size: var(--fs-h2); margin-bottom: 6px; }
.ra99-card-subtitle { color: var(--gold); font-size: var(--fs-small); letter-spacing: 2px; text-transform: uppercase; margin-bottom: 16px; }
.ra99-card-desc { color: #BDBDBD; font-size: var(--fs-body); line-height: var(--lh-normal); margin-bottom: 20px; flex-grow: 1; }
.ra99-card-link { color: var(--gold); letter-spacing: 2px; font-size: var(--fs-small); text-transform: uppercase; }
.ra99-card:hover { transform: translateY(-10px); border-color: rgba(212,175,55,.4); box-shadow: 0 20px 60px rgba(212,175,55,.08), 0 0 0 1px rgba(212,175,55,.1); }

/* QUOTE BANNER */
.ra99-quote-banner { position: relative; height: 70vh; min-height: 500px; display: flex; align-items: center; overflow: hidden; background: var(--bg-secondary); }
.ra99-quote-bg { position: absolute; inset: 0; background: url('https://radiantart99.com/wp-content/uploads/Decor_webp_files/Legends/Periyar_LED_Wall_Decor/LED-LG-002-night.webp') center/cover no-repeat; opacity: .15; filter: grayscale(1); animation: heroDrift 30s ease-in-out infinite alternate; }
.ra99-quote-overlay { position: absolute; inset: 0; background: linear-gradient(to right, rgba(5,5,5,.95), rgba(5,5,5,.7), rgba(5,5,5,.95)); }
.ra99-quote-content { position: relative; z-index: 5; max-width: 900px; text-align: center; margin: auto; padding: 0 20px; }
.ra99-quote-content blockquote { font-family: var(--font-display); font-size: clamp(32px, 4vw, 56px); line-height: 1.3; color: var(--gold); font-style: italic; margin-bottom: 30px; }
.ra99-quote-content cite { font-family: var(--font-body); font-size: var(--fs-small); letter-spacing: 3px; text-transform: uppercase; color: rgba(255,255,255,.4); font-style: normal; }

/* VALUES */
.ra99-values-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 40px; }
.ra99-value-card { padding: 50px; background: linear-gradient(160deg, rgba(212,175,55,.04), rgba(255,255,255,.015)); border: 1px solid var(--border-subtle); border-radius: var(--radius-lg); transition: transform .5s ease var(--ease), border-color .5s ease var(--ease), box-shadow .5s ease var(--ease); display: flex; flex-direction: column; height: 100%; position: relative; overflow: hidden; }
.ra99-value-number { font-family: var(--font-display); font-size: 90px; color: rgba(212,175,55,.18); line-height: 1; margin-bottom: 20px; }
.ra99-value-card h3 { font-family: var(--font-display); font-size: var(--fs-h2); margin-bottom: 20px; color: var(--text); }
.ra99-value-card p { font-size: var(--fs-lead); line-height: var(--lh-relaxed); color: #BDBDBD; margin-top: auto; }
.ra99-value-card:hover { transform: translateY(-10px); border-color: rgba(212,175,55,.4); box-shadow: 0 20px 60px rgba(212,175,55,.06); }

/* FAQ */
.ra99-faq { background: var(--bg-secondary); }
.ra99-faq-header { text-align: center; max-width: 900px; margin: 0 auto 100px; }
.ra99-faq-header h2 { font-family: var(--font-display); font-size: var(--fs-display); line-height: 1; margin-top: 25px; color: var(--text); }
.ra99-faq-grid { display: grid; grid-template-columns: repeat(2, 1fr); gap: 35px; }
.ra99-faq-item { padding: 50px; border: 1px solid var(--border-subtle); background: var(--bg-card); border-radius: var(--radius-lg); transition: transform .5s ease var(--ease), border-color .5s ease var(--ease); display: flex; flex-direction: column; height: 100%; }
.ra99-faq-item h3 { font-family: var(--font-display); color: var(--text); font-size: var(--fs-h3); margin-bottom: 15px; line-height: 1.3; }
.ra99-faq-item p { color: #BDBDBD; line-height: var(--lh-relaxed); font-size: var(--fs-lead); flex-grow: 1; }
.ra99-faq-item:hover { border-color: rgba(212,175,55,.4); transform: translateY(-5px); }

/* RESPONSIVE */
@media (max-width: 1200px) {
    .ra99-grid { grid-template-columns: repeat(2, 1fr); }
    .ra99-values-grid { grid-template-columns: 1fr 1fr; }
    .ra99-faq-grid { grid-template-columns: 1fr; }
}
@media (max-width: 900px) {
    .ra99-daynight-wrap { cursor: pointer; }
    .ra99-daynight-wrap.ra99-touch-active .ra99-daynight-night { clip-path: inset(0 0% 0 0); }
    .ra99-daynight-wrap.ra99-touch-active .ra99-daynight-day { transform: scale(1); }
}
@media (max-width: 768px) {
    .ra99-grid { grid-template-columns: 1fr; gap: 30px; }
    .ra99-daynight-day, .ra99-daynight-night { height: 380px; }
    .ra99-values-grid { grid-template-columns: 1fr; }
    .ra99-faq-item { padding: 35px 25px; }
}

/* =================================================================
   MUSIC COLLECTION PAGE SPECIFIC LAYOUT
   ================================================================= */
.ra99-story-content { max-width: 1100px; margin: auto; }
.ra99-story-content p { font-size: var(--fs-lead); line-height: var(--lh-relaxed); color: #BDBDBD; margin-bottom: 25px; }

/* ARTIST GLASS CARDS */
.ra99-artists { background: var(--bg-secondary); }
.ra99-artists-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 40px; }
.ra99-glass-card { background: linear-gradient(160deg, rgba(212,175,55,.04), rgba(255,255,255,.015)); backdrop-filter: blur(8px); border: 1px solid var(--border-subtle); border-radius: var(--radius-lg); overflow: hidden; transition: transform .5s ease var(--ease), border-color .5s ease var(--ease), box-shadow .5s ease var(--ease); display: flex; flex-direction: column; height: 100%; position: relative; cursor: pointer; text-decoration: none; color: var(--text); }
.ra99-glass-card::before { content: ''; position: absolute; top: 0; left: 0; right: 0; bottom: 0; z-index: 4; pointer-events: none; overflow: hidden; border-radius: var(--radius-lg); }
.ra99-glass-card::after { content: ''; position: absolute; top: -60%; left: -60%; width: 40%; height: 220%; background: linear-gradient(to bottom right, transparent 40%, rgba(255,255,255,.02) 46%, rgba(255,255,255,.07) 50%, rgba(255,255,255,.02) 54%, transparent 60%); transform: rotate(30deg) translateX(-150%); transition: transform .9s ease var(--ease); z-index: 4; pointer-events: none; }
.ra99-glass-card:hover::after { transform: rotate(30deg) translateX(250%); }
.ra99-glass-topline { position: absolute; top: 0; left: 0; width: 0; height: 3px; background: linear-gradient(90deg, var(--gold), var(--gold-soft)); transition: width .6s ease var(--ease); z-index: 5; }
.ra99-glass-card:hover .ra99-glass-topline { width: 100%; }
.ra99-glass-card:hover { transform: translateY(-10px); border-color: rgba(212,175,55,.4); box-shadow: 0 20px 60px rgba(212,175,55,.08), 0 0 0 1px rgba(212,175,55,.1); }

.ra99-artist-number { font-family: var(--font-display); font-size: 120px; color: rgba(212,175,55,.18); line-height: 1; position: absolute; bottom: 15px; right: 25px; z-index: 6; pointer-events: none; }
.ra99-artist-image { position: relative; overflow: hidden; }
.ra99-artist-image .ra99-img-day { position: relative; z-index: 1; width: 100%; height: 360px; object-fit: cover; display: block; transition: opacity .6s ease; }
.ra99-artist-image .ra99-img-night { position: absolute; top: 0; left: 0; z-index: 2; width: 100%; height: 360px; object-fit: cover; opacity: 0; transition: opacity .6s ease; pointer-events: none; }
.ra99-glass-card:hover .ra99-img-night { opacity: 1; }

.ra99-artist-content { padding: 40px; display: flex; flex-direction: column; flex: 1; }
.ra99-artist-content > span { color: var(--gold); font-size: var(--fs-small); letter-spacing: 3px; text-transform: uppercase; }
.ra99-artist-content h3 { font-family: var(--font-display); font-size: var(--fs-h2); margin: 18px 0; }
.ra99-artist-content p { color: #BDBDBD; line-height: var(--lh-normal); font-size: var(--fs-body); margin-bottom: 20px; flex-grow: 1; }
.ra99-artist-cta { color: var(--gold); letter-spacing: 2px; font-size: var(--fs-small); text-transform: uppercase; margin-top: auto; display: inline-flex; align-items: center; gap: 8px; position: relative; z-index: 6; }
.ra99-artist-cta svg { width: 14px; height: 14px; transition: transform .3s ease; }
.ra99-glass-card:hover .ra99-artist-cta svg { transform: translateX(4px); }

/* WHY GRID */
.ra99-why-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 40px; }
.ra99-why-card { padding: 50px; border-radius: var(--radius-lg); background: linear-gradient(160deg, rgba(212,175,55,.04), rgba(255,255,255,.015)); border: 1px solid var(--border-subtle); display: flex; flex-direction: column; height: 100%; transition: transform .5s ease var(--ease), border-color .5s ease var(--ease); }
.ra99-why-card:hover { transform: translateY(-6px); border-color: rgba(212,175,55,.3); }
.ra99-why-icon { font-size: 42px; color: var(--gold); margin-bottom: 25px; }
.ra99-why-card h3 { font-family: var(--font-display); font-size: var(--fs-h3); margin-bottom: 18px; }
.ra99-why-card p { color: #BDBDBD; line-height: var(--lh-normal); font-size: var(--fs-body); flex-grow: 1; }

/* FAQ GRID */
.ra99-faq { background: var(--bg-secondary); }
.ra99-faq-grid { display: grid; grid-template-columns: repeat(2, 1fr); gap: 40px; }
.ra99-faq-item { padding: 50px; border-radius: var(--radius-lg); background: linear-gradient(160deg, rgba(212,175,55,.04), rgba(255,255,255,.015)); border: 1px solid var(--border-subtle); transition: transform .5s ease var(--ease), border-color .5s ease var(--ease); }
.ra99-faq-item:hover { transform: translateY(-5px); border-color: rgba(212,175,55,.3); }
.ra99-faq-item h3 { font-family: var(--font-display); font-size: var(--fs-h3); margin-bottom: 18px; color: var(--text); }
.ra99-faq-item p { color: #BDBDBD; line-height: var(--lh-normal); font-size: var(--fs-body); }

/* RESPONSIVE */
@media (max-width: 1200px) {
    .ra99-artists-grid { grid-template-columns: repeat(2, 1fr); }
    .ra99-why-grid { grid-template-columns: repeat(2, 1fr); }
}
@media (max-width: 768px) {
    .ra99-artists-grid, .ra99-why-grid, .ra99-faq-grid { grid-template-columns: 1fr; }
    .ra99-artist-image .ra99-img-day, .ra99-artist-image .ra99-img-night { height: 300px; }
}

/* =================================================================
   SHOP PAGE SPECIFIC LAYOUT
   ================================================================= */
.ra99-shop-header { background: var(--bg-primary); padding-bottom: 0; overflow: visible; }
.ra99-shop-header .ra99-editorial-heading { margin-bottom: 60px; }
.ra99-shop-header h1 { font-family: var(--font-display); font-size: var(--fs-hero); line-height: .95; font-weight: 600; margin-top: 25px; }

.ra99-filter-bar { display: flex; align-items: center; justify-content: center; gap: 12px; flex-wrap: wrap; padding-bottom: 8px; }
@media (max-width: 768px) {
    .ra99-filter-bar { flex-wrap: nowrap; justify-content: flex-start; overflow-x: auto; -webkit-overflow-scrolling: touch; scrollbar-width: none; padding-bottom: 4px; }
    .ra99-filter-bar::-webkit-scrollbar { display: none; }
}
.ra99-filter-pill { flex-shrink: 0; padding: 12px 28px; border-radius: 50px; border: 1px solid var(--border-light); background: transparent; color: var(--muted); font-size: var(--fs-small); letter-spacing: 2px; text-transform: uppercase; font-family: var(--font-body); font-weight: 500; cursor: pointer; transition: all .3s ease; white-space: nowrap; }
.ra99-filter-pill:hover { border-color: var(--border-gold); color: var(--gold); }
.ra99-filter-pill.active { background: var(--gold); color: #000; border-color: var(--gold); }
.ra99-filter-count { display: inline-flex; align-items: center; justify-content: center; min-width: 22px; height: 22px; border-radius: 50px; background: rgba(255,255,255,.08); font-size: 11px; font-weight: 600; margin-left: 8px; padding: 0 6px; }
.ra99-filter-pill.active .ra99-filter-count { background: rgba(0,0,0,.2); }

.ra99-products { background: var(--bg-secondary); }
.ra99-product-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 30px; }
.ra99-product-tile { background: linear-gradient(160deg, rgba(212,175,55,.04), rgba(255,255,255,.015)); backdrop-filter: blur(8px); border: 1px solid var(--border-subtle); border-radius: var(--radius-lg); overflow: hidden; transition: transform .5s ease var(--ease), border-color .5s ease var(--ease), box-shadow .5s ease var(--ease); display: flex; flex-direction: column; position: relative; text-decoration: none; color: var(--text); }
.ra99-product-tile::after { content: ''; position: absolute; top: -60%; left: -60%; width: 40%; height: 220%; background: linear-gradient(to bottom right, transparent 40%, rgba(255,255,255,.02) 46%, rgba(255,255,255,.07) 50%, rgba(255,255,255,.02) 54%, transparent 60%); transform: rotate(30deg) translateX(-150%); transition: transform .9s ease var(--ease); z-index: 4; pointer-events: none; }
.ra99-product-tile:hover::after { transform: rotate(30deg) translateX(250%); }
.ra99-product-tile-topline { position: absolute; top: 0; left: 0; width: 0; height: 3px; background: linear-gradient(90deg, var(--gold), var(--gold-soft)); transition: width .6s ease var(--ease); z-index: 5; }
.ra99-product-tile:hover .ra99-product-tile-topline { width: 100%; }
.ra99-product-tile:hover { transform: translateY(-10px); border-color: rgba(212,175,55,.4); box-shadow: 0 20px 60px rgba(212,175,55,.08), 0 0 0 1px rgba(212,175,55,.1); }

.ra99-product-img { overflow: hidden; position: relative; }
.ra99-product-img .ra99-img-day { position: relative; z-index: 1; width: 100%; height: 420px; object-fit: cover; display: block; transition: transform 1s ease var(--ease); }
.ra99-product-img .ra99-img-night { position: absolute; top: 0; left: 0; z-index: 2; width: 100%; height: 420px; object-fit: cover; opacity: 0; transition: opacity .6s ease; pointer-events: none; }
.ra99-product-tile:hover .ra99-img-night { opacity: 1; }
.ra99-product-tile:hover .ra99-img-day { transform: scale(1.05); }

.ra99-product-badge { position: absolute; top: 16px; left: 16px; z-index: 5; padding: 6px 14px; border-radius: 50px; background: rgba(0,0,0,.6); backdrop-filter: blur(8px); border: 1px solid var(--border-gold); color: var(--gold); font-size: var(--fs-small); letter-spacing: 2px; text-transform: uppercase; }

.ra99-product-body { padding: 32px; display: flex; flex-direction: column; flex: 1; }
.ra99-product-body span { color: var(--gold); font-size: var(--fs-small); letter-spacing: 3px; text-transform: uppercase; margin-bottom: 10px; }
.ra99-product-body h3 { font-family: var(--font-display); font-size: var(--fs-h4); margin-bottom: 12px; line-height: 1.3; }
.ra99-product-body p { color: #BDBDBD; line-height: var(--lh-normal); font-size: var(--fs-body); margin-bottom: 20px; flex-grow: 1; }
.ra99-product-price { font-family: var(--font-display); font-size: var(--fs-h4); color: var(--gold); margin-bottom: 18px; }
.ra99-product-link { color: var(--gold); letter-spacing: 2px; font-size: var(--fs-small); text-transform: uppercase; display: inline-flex; align-items: center; gap: 6px; position: relative; z-index: 6; }
.ra99-product-link svg { width: 14px; height: 14px; transition: transform .3s ease; }
.ra99-product-tile:hover .ra99-product-link svg { transform: translateX(4px); }

/* RESPONSIVE */
@media (max-width: 1200px) {
    .ra99-product-grid { grid-template-columns: repeat(3, 1fr); }
}
@media (max-width: 768px) {
    .ra99-product-grid { grid-template-columns: repeat(2, 1fr); }
    .ra99-product-img .ra99-img-day, .ra99-product-img .ra99-img-night { height: 320px; }
    .ra99-product-body { padding: 24px; }
    .ra99-product-body h3 { font-size: var(--fs-h4); }
}
@media (max-width: 480px) {
    .ra99-product-grid { grid-template-columns: 1fr; }
    .ra99-product-img .ra99-img-day, .ra99-product-img .ra99-img-night { height: 400px; }
}

/* =============================================
   NATURE COLLECTION PAGE STYLES
============================================= */

/* --- HERO --- */
.ra99-hero {
    position: relative;
    min-height: 950px;
    width: 100%;
    overflow: hidden;
    display: flex;
    align-items: center;
}
.ra99-hero::before {
    content: '';
    position: absolute;
    right: 5%;
    top: 20%;
    width: 600px;
    height: 600px;
    background: radial-gradient(circle, rgba(212,175,55,.1) 0%, transparent 65%);
    border-radius: 50%;
    animation: ambientGlow 4s ease-in-out infinite alternate;
    z-index: 2;
    pointer-events: none;
}
@keyframes ambientGlow {
    0% { opacity: .6; transform: scale(1); }
    100% { opacity: 1; transform: scale(1.15); }
}
.ra99-hero-bg {
    position: absolute;
    inset: 0;
    background: url('https://radiantart99.com/wp-content/uploads/Decor_webp_files/Nature/Leaf_LED_Wall_Decor/LED-NT-002-night.webp') center/cover no-repeat;
    opacity: .9;
    animation: heroDrift 25s ease-in-out infinite alternate;
}
@keyframes heroDrift {
    0% { transform: scale(1) translate(0,0); }
    100% { transform: scale(1.03) translate(-0.5%,0.3%); }
}
.ra99-hero-overlay {
    position: absolute;
    inset: 0;
    background: linear-gradient(90deg, rgba(0,0,0,.88) 0%, rgba(0,0,0,.60) 35%, rgba(0,0,0,.30) 100%),
                linear-gradient(to top, rgba(0,0,0,.85), rgba(0,0,0,.05));
}
.ra99-hero-inner {
    position: relative;
    z-index: 5;
    width: var(--container-w);
    margin: auto;
}
.ra99-hero-content {
    max-width: 850px;
    padding-top: 60px;
}
.ra99-section-number {
    font-family: var(--font-display);
    font-size: var(--fs-display);
    color: rgba(212,175,55,.18);
    line-height: 1;
    margin-bottom: 15px;
}
.ra99-hero-title {
    font-family: var(--font-display);
    font-size: var(--fs-hero);
    line-height: .95;
    font-weight: 600;
    letter-spacing: 0;
    margin-bottom: 35px;
}
.ra99-hero-copy {
    font-size: var(--fs-lead);
    line-height: 2;
    color: #D0D0D0;
    max-width: 700px;
    margin-bottom: 45px;
}
.ra99-scroll {
    position: absolute;
    left: 50%;
    bottom: 40px;
    transform: translateX(-50%);
    z-index: 50;
}
.ra99-scroll span {
    display: block;
    width: 1px;
    height: 70px;
    background: linear-gradient(to bottom, rgba(212,175,55,0), rgba(212,175,55,1));
    animation: scrollMove 2s infinite;
}
@keyframes scrollMove {
    0% { opacity: .2; transform: translateY(0); }
    50% { opacity: 1; }
    100% { opacity: .2; transform: translateY(20px); }
}

/* --- STORY --- */
.ra99-story { background: var(--bg-primary); }
.ra99-story-grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 90px;
    align-items: center;
}
.ra99-story-title {
    font-family: var(--font-display);
    font-size: var(--fs-display);
    line-height: 1.5 !important;
    margin-bottom: 35px;
}
.ra99-story-text {
    color: #BDBDBD;
    font-size: var(--fs-lead);
    line-height: 2;
}
.ra99-story-text p { margin-bottom: 25px; }
.ra99-story-card {
    background: linear-gradient(135deg, rgba(212,175,55,.06), rgba(255,255,255,.02));
    backdrop-filter: blur(12px);
    -webkit-backdrop-filter: blur(12px);
    border: 1px solid var(--border-gold);
    border-radius: var(--radius-xl);
    padding: 55px;
    position: relative;
    overflow: hidden;
}
.ra99-story-card::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 140px;
    height: 2px;
    background: var(--gold);
    border-radius: var(--radius-xl) var(--radius-xl) 0 0;
}
.ra99-story-card::after {
    content: '';
    position: absolute;
    top: -50%;
    right: -50%;
    width: 200px;
    height: 200px;
    background: radial-gradient(circle, rgba(212,175,55,.06) 0%, transparent 70%);
    border-radius: 50%;
    pointer-events: none;
}
.ra99-story-card h3 {
    font-family: var(--font-display);
    font-size: var(--fs-h2);
    margin-bottom: 30px;
}
.ra99-story-card ul { list-style: none; }
.ra99-story-card li {
    margin-bottom: 18px;
    color: #C8C8C8;
    font-size: var(--fs-body);
    line-height: 1.6;
}

/* --- PRODUCTS (DAY/NIGHT CARDS) --- */
.ra99-products { background: var(--bg-secondary); }
.ra99-section-header {
    text-align: center;
    max-width: 900px;
    margin: 0 auto 40px;
}
.ra99-product-title {
    font-family: var(--font-display);
    font-size: var(--fs-display);
    line-height: 1;
    margin-top: 25px;
}
.ra99-product-subtitle {
    font-size: var(--fs-lead);
    line-height: 2;
    color: #BDBDBD;
    margin-top: 20px;
}

/* Interaction hint */
.ra99-hint {
    text-align: center;
    margin-bottom: 60px;
    color: rgba(255,255,255,.25);
    font-size: 13px;
    letter-spacing: 2px;
    text-transform: uppercase;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 10px;
}
.ra99-hint svg {
    opacity: .4;
    animation: hintPulse 2s ease-in-out infinite;
}
@keyframes hintPulse {
    0%, 100% { opacity: .3; transform: translateX(0); }
    50% { opacity: .7; transform: translateX(6px); }
}

.ra99-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 40px;
}
.ra99-card {
    position: relative;
    overflow: hidden;
    background: var(--bg-card);
    border: 1px solid var(--border-subtle);
    border-radius: var(--radius-lg);
    text-decoration: none;
    color: var(--text);
    transition: transform .5s ease var(--ease), border-color .5s ease var(--ease), box-shadow .5s ease var(--ease);
    display: flex;
    flex-direction: column;
    height: 100%;
}
.ra99-card::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 0;
    height: 3px;
    background: linear-gradient(90deg, var(--gold), var(--gold-soft));
    transition: width .6s ease var(--ease);
    z-index: 5;
}
.ra99-card:hover::before { width: 100%; }

/* Shine sweep */
.ra99-card-shine {
    position: absolute;
    top: 0; left: 0; right: 0; bottom: 0;
    z-index: 4;
    pointer-events: none;
    overflow: hidden;
    border-radius: var(--radius-lg);
}
.ra99-card-shine::after {
    content: '';
    position: absolute;
    top: -60%; left: -60%;
    width: 40%; height: 220%;
    background: linear-gradient(to bottom right, transparent 40%, rgba(255,255,255,.02) 46%, rgba(255,255,255,.07) 50%, rgba(255,255,255,.02) 54%, transparent 60%);
    transform: rotate(30deg) translateX(-150%);
    transition: transform .9s ease var(--ease);
}
.ra99-card:hover .ra99-card-shine::after { transform: rotate(30deg) translateX(250%); }

/* DAY/NIGHT: Image container */
.ra99-daynight-wrap {
    position: relative;
    overflow: hidden;
    cursor: crosshair;
}
.ra99-daynight-day {
    width: 100%;
    height: 580px;
    object-fit: cover;
    display: block;
    transition: transform 1s ease var(--ease);
}
.ra99-card:hover .ra99-daynight-day { transform: scale(1.02); }
.ra99-card:hover .ra99-daynight-night { clip-path: inset(0 0% 0 0); }

/* DAY/NIGHT: Night layer */
.ra99-daynight-night {
    position: absolute;
    top: 0; left: 0;
    width: 100%;
    height: 580px;
    object-fit: cover;
    display: block;
    clip-path: inset(0 100% 0 0);
    will-change: clip-path;
    pointer-events: none;
}

/* DAY/NIGHT: Vertical divider line */
.ra99-daynight-line {
    display: none;
    position: absolute;
    top: 0; left: 100%;
    width: 2px; height: 100%;
    background: var(--gold);
    opacity: .6;
    z-index: 6;
    pointer-events: none;
    transition: left 0s;
    box-shadow: 0 0 12px rgba(212,175,55,.4);
}

.ra99-card-content {
    padding: 40px;
    display: flex;
    flex-direction: column;
    flex-grow: 1;
}
.ra99-card h3 {
    font-family: var(--font-display);
    font-size: var(--fs-h2);
    margin-bottom: 6px;
}
.ra99-card-subtitle {
    color: var(--gold);
    font-size: var(--fs-small); /* Maps to 14px, uppercase, 0.1em spacing automatically */
    margin-bottom: 16px;
}
.ra99-card-desc {
    color: #BDBDBD;
    font-size: var(--fs-body);
    line-height: 1.8;
    margin-bottom: 20px;
    flex-grow: 1;
}
.ra99-card-link {
    color: var(--gold);
    font-size: var(--fs-small); /* Maps to 14px, uppercase, 0.1em spacing automatically */
}

.ra99-card:hover {
    transform: translateY(-10px);
    border-color: rgba(212,175,55,.4);
    box-shadow: 0 20px 60px rgba(212,175,55,.08), 0 0 0 1px rgba(212,175,55,.1);
}

/* --- VALUE CARDS --- */
.ra99-values { background: var(--bg-primary); }
.ra99-values-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 40px;
}
.ra99-value-card {
    padding: 50px;
    background: linear-gradient(160deg, rgba(212,175,55,.04), rgba(255,255,255,.015));
    backdrop-filter: blur(8px);
    -webkit-backdrop-filter: blur(8px);
    border: 1px solid var(--border-subtle);
    border-radius: var(--radius-lg);
    transition: transform .5s ease var(--ease), border-color .5s ease var(--ease), box-shadow .5s ease var(--ease);
    display: flex;
    flex-direction: column;
    height: 100%;
    position: relative;
    overflow: hidden;
}
.ra99-value-card::after {
    content: '';
    position: absolute;
    top: -30px; right: -30px;
    width: 120px; height: 120px;
    background: radial-gradient(circle, rgba(212,175,55,.06) 0%, transparent 70%);
    border-radius: 50%;
    pointer-events: none;
}
.ra99-value-number {
    font-family: var(--font-display);
    font-size: var(--fs-display);
    color: rgba(212,175,55,.18);
    line-height: 1;
    margin-bottom: 20px;
}
.ra99-value-card h3 {
    font-family: var(--font-display);
    font-size: var(--fs-h2);
    margin-bottom: 20px;
    color: var(--text);
}
.ra99-value-card p {
    font-size: var(--fs-lead);
    line-height: 1.9;
    color: #BDBDBD;
    margin-top: auto;
}
.ra99-value-card:hover {
    transform: translateY(-10px);
    border-color: rgba(212,175,55,.4);
    box-shadow: 0 20px 60px rgba(212,175,55,.06);
}

/* --- FAQ --- */
.ra99-faq { background: var(--bg-secondary); }
.ra99-faq-header {
    text-align: center;
    max-width: 900px;
    margin: 0 auto 100px;
}
.ra99-faq-header h2 {
    font-family: var(--font-display);
    font-size: var(--fs-display);
    line-height: 1;
    margin-top: 25px;
    color: var(--text);
}
.ra99-faq-grid {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 35px;
}
.ra99-faq-item {
    padding: 50px;
    border: 1px solid var(--border-subtle);
    background: var(--bg-card);
    border-radius: var(--radius-lg);
    transition: transform .5s ease var(--ease), border-color .5s ease var(--ease);
    display: flex;
    flex-direction: column;
    height: 100%;
}
.ra99-faq-item h3 {
    font-family: var(--font-display);
    color: var(--text);
    font-size: var(--fs-h3);
    margin-bottom: 15px;
    line-height: 1.3;
}
.ra99-faq-item p {
    color: #BDBDBD;
    line-height: 1.9;
    font-size: var(--fs-lead);
    flex-grow: 1;
}
.ra99-faq-item:hover {
    border-color: rgba(212,175,55,.4);
    transform: translateY(-5px);
}

/* --- FINAL CTA --- */
.ra99-final-cta {
    background: var(--bg-primary);
    text-align: center;
}
.ra99-final-inner {
    max-width: 1100px;
    margin: auto;
    padding: 120px 80px;
    border-radius: 40px;
    background: linear-gradient(135deg, rgba(212,175,55,.12), rgba(255,255,255,.02));
    border: 1px solid rgba(212,175,55,.20);
    position: relative;
    overflow: hidden;
}
.ra99-final-inner::before {
    content: '';
    position: absolute;
    top: -40%; left: -20%;
    width: 60%; height: 80%;
    background: radial-gradient(ellipse, rgba(212,175,55,.05) 0%, transparent 70%);
    pointer-events: none;
}
.ra99-final-cta h2 {
    font-family: var(--font-display);
    font-size: var(--fs-hero);
    line-height: 1;
    margin: 25px 0;
    color: var(--text);
    position: relative;
}
.ra99-final-cta p {
    font-size: var(--fs-lead);
    line-height: 2;
    color: #C8C8C8;
    max-width: 800px;
    margin: 0 auto 45px;
    position: relative;
}
.ra99-cta-buttons {
    display: flex;
    justify-content: center;
    gap: 20px;
    flex-wrap: wrap;
    position: relative;
}


/* =============================================
   NATURE PAGE RESPONSIVE BREAKPOINTS
============================================= */

/* Desktop (< 1200px) */
@media(max-width:1200px){
    .ra99-story-grid { grid-template-columns: 1fr; }
    .ra99-grid { grid-template-columns: repeat(2, 1fr); }
    .ra99-values-grid { grid-template-columns: 1fr 1fr; }
    .ra99-faq-grid { grid-template-columns: 1fr; }
}

/* Tablet (< 900px) */
@media(max-width:900px){
    :root { --section-pad: 100px; }
    .ra99-hero { min-height: 800px; }
    .ra99-hero-bg { background-position: center center; }
    .ra99-section-number { font-size: 80px; }
    .ra99-hero-content { max-width: 100%; }
    .ra99-daynight-day, .ra99-daynight-night { height: 450px; }
    .ra99-shimmer-wrap::after { animation: none; display: none; }
    .ra99-hero::before { width: 300px; height: 300px; }
    
    /* Mobile Day/Night Toggle Override */
    .ra99-daynight-wrap { cursor: pointer; }
    .ra99-daynight-night {
        clip-path: inset(0 100% 0 0);
        transition: clip-path .7s var(--ease);
    }
    .ra99-daynight-wrap:hover .ra99-daynight-night,
    .ra99-daynight-wrap.ra99-touch-active .ra99-daynight-night {
        clip-path: inset(0 0% 0 0);
    }
    .ra99-daynight-wrap:hover .ra99-daynight-day,
    .ra99-daynight-wrap.ra99-touch-active .ra99-daynight-day {
        transform: scale(1);
    }
    .ra99-daynight-line { display: none; }
}

/* Mobile (< 768px) */
@media(max-width:768px){
    :root { --section-pad: 80px; }
    .ra99-hero { min-height: 850px; }
    .ra99-hero-content { padding-top: 40px; }
    .ra99-section-number { font-size: 60px; margin-bottom: 10px; }
    .ra99-hero-copy { font-size: var(--fs-body); line-height: 1.8; }
    .ra99-btn-primary, .ra99-btn-secondary { padding: 16px 32px; font-size: 14px; width: 100%; justify-content: center; }
    .ra99-buttons, .ra99-cta-buttons { flex-direction: column; }
    .ra99-grid { grid-template-columns: 1fr; gap: 30px; }
    .ra99-daynight-day, .ra99-daynight-night { height: 380px; }
    .ra99-card-content { padding: 30px; }
    .ra99-card h3 { font-size: var(--fs-h3); }
    .ra99-values-grid { grid-template-columns: 1fr; }
    .ra99-value-card { padding: 40px 30px; }
    .ra99-value-number { font-size: var(--fs-h2); }
    .ra99-value-card h3 { font-size: var(--fs-h3); }
    .ra99-faq-item { padding: 35px 25px; }
    .ra99-faq-item h3 { font-size: var(--fs-h3); }
    .ra99-final-inner { padding: 60px 25px; border-radius: 25px; }
    .ra99-story-card { padding: 30px 20px; }
    .ra99-story-card h3 { font-size: var(--fs-h3); }
    .ra99-shimmer-wrap::after { animation: none; display: none; }
    .ra99-hero::before { display: none; }
    .ra99-hero-bg { animation: none; }
    .ra99-card-shine::after { display: none; }
}

/* Small Mobile (< 480px) */
@media(max-width:480px){
    .ra99-section-number { font-size: 48px; }
    .ra99-daynight-day, .ra99-daynight-night { height: 300px; }
    .ra99-card h3 { font-size: var(--fs-h3); }
    .ra99-card-content { padding: 25px 20px; }
    .ra99-story-card { padding: 30px 20px; }
    .ra99-value-card { padding: 30px 20px; }
    .ra99-final-inner { padding: 40px 20px; }
    .ra99-faq-item h3 { font-size: var(--fs-h3); }
}

/* =============================================
   COPPER ART COLLECTION PAGE STYLES
============================================= */

/* --- COPPER HERO (Unique BG Setup) --- */
.ra99-copper-hero {
    position: relative;
    min-height: 950px;
    width: 100%;
    overflow: hidden;
    display: flex;
    align-items: center;
}
.ra99-copper-bg {
    position: absolute;
    inset: 0;
    background: url('https://radiantart99.com/wp-content/uploads/Decor_webp_files/Copper/Tiger-CP-001.webp');
    background-size: cover;
    background-repeat: no-repeat;
    background-position: right center;
    opacity: .9;
    animation: copperHeroDrift 25s ease-in-out infinite alternate;
}

@keyframes copperHeroDrift {
    0% { background-position: right center; }
    100% { background-position: right 5% bottom 3%; }
}

.ra99-copper-overlay {
    position: absolute;
    inset: 0;
    background: 
        linear-gradient(90deg, rgba(0,0,0,.88) 0%, rgba(0,0,0,.60) 35%, rgba(0,0,0,.30) 100%),
        linear-gradient(to top, rgba(0,0,0,.85), rgba(0,0,0,.05));
}

/* Patch: Copper Hero Title Line Spacing */
.ra99-copper-hero .ra99-hero-title {
    line-height: 1.0 !important;
}

/* --- ARTISAN VIDEO SECTION --- */
.ra99-artisans {
    position: relative;
    height: 90vh;
    min-height: 600px;
    overflow: hidden;
    background: #000;
}
.ra99-video-bg {
    position: absolute;
    top: 0; left: 0;
    width: 100%; height: 100%;
    object-fit: cover;
    transition: opacity 1s ease var(--ease);
}
.ra99-video-overlay {
    position: absolute;
    inset: 0;
    background: 
        linear-gradient(90deg, rgba(0,0,0,.88) 0%, rgba(0,0,0,.60) 35%, rgba(0,0,0,.30) 100%),
        linear-gradient(to top, rgba(0,0,0,.85), rgba(0,0,0,.05));
}
.ra99-video-content-wrap {
    position: relative;
    z-index: 5;
    display: flex;
    align-items: center;
    height: 100%;
}
.ra99-artisan-content { max-width: 900px; }
.ra99-artisan-content h2 {
    font-family: var(--font-display);
    font-size: var(--fs-display);
    line-height: 1;
    margin: 25px 0;
    color: var(--text);
}
.ra99-artisan-content p {
    font-size: var(--fs-lead);
    line-height: 2;
    color: #D0D0D0;
    max-width: 700px;
}
.ra99-video-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    margin-top: 40px;
    padding: 18px 42px;
    border: 1px solid rgba(255,255,255,.20);
    color: #fff;
    border-radius: var(--radius-btn);
    font-family: var(--font-body);
    font-size: var(--fs-body);
    transition: border-color .3s ease, transform .3s ease;
    cursor: pointer;
    background: transparent;
    text-decoration: none;
}
.ra99-video-btn:hover {
    border-color: var(--gold);
    transform: translateY(-4px);
}

/* --- COPPER PRODUCT GRID (Standard Image Cards) --- */
.ra99-masterpieces { background: var(--bg-secondary); }
.ra99-masterpiece-title {
    font-family: var(--font-display);
    font-size: var(--fs-display);
    line-height: 1;
    margin-top: 25px;
}
.ra99-masterpiece-subtitle {
    font-size: var(--fs-lead);
    line-height: 2;
    color: #BDBDBD;
    margin-top: 20px;
}

/* Standard Card Image Wrap */
.ra99-card-img-wrap {
    overflow: hidden;
    position: relative;
}
.ra99-card-img-wrap::after {
    content: '';
    position: absolute;
    bottom: 0; left: 0; right: 0;
    height: 80px;
    background: linear-gradient(to top, rgba(13,13,13,.5), transparent);
    pointer-events: none;
    opacity: 0;
    transition: opacity .5s ease;
}
.ra99-card:hover .ra99-card-img-wrap::after { opacity: 1; }

/* Standard Card Image */
.ra99-masterpieces .ra99-card img {
    width: 100%;
    height: 580px;
    object-fit: cover;
    display: block;
    transition: transform 1s ease var(--ease), filter .6s ease;
}
.ra99-masterpieces .ra99-card:hover img {
    transform: scale(1.05);
    filter: brightness(1.06) saturate(1.08);
}
.ra99-card-content p {
    color: #BDBDBD;
    font-size: var(--fs-small); /* Forces 14px, uppercase, 0.1em spacing globally */
    letter-spacing: 1px;
    text-transform: uppercase;
}

/* --- CUSTOM COMMISSION SPLIT --- */
.ra99-custom-commission { background: var(--bg-secondary); }
.ra99-custom-wrap {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 80px;
    align-items: center;
}
.ra99-custom-image {
    overflow: hidden;
    border-radius: var(--radius-lg);
    position: relative;
}
.ra99-custom-image img {
    width: 100%;
    height: 700px;
    object-fit: cover;
    display: block;
    transition: transform 1s ease var(--ease);
}
.ra99-custom-image:hover img { transform: scale(1.05); }
.ra99-custom-content h2 {
    font-family: var(--font-display);
    font-size: var(--fs-display);
    line-height: 1;
    color: var(--text);
    margin: 25px 0;
}
.ra99-custom-content p {
    font-size: var(--fs-lead);
    line-height: 2;
    color: #BDBDBD;
    margin-bottom: 30px;
}
.ra99-custom-list {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 18px;
    margin-top: 40px;
    margin-bottom: 50px;
}
.ra99-custom-list div {
    color: #C8C8C8;
    font-size: var(--fs-body);
    line-height: 1.6;
}
.ra99-commission-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 18px 42px;
    background: var(--gold);
    color: #000;
    font-weight: 600;
    font-family: var(--font-body);
    font-size: var(--fs-body);
    border-radius: var(--radius-btn);
    transition: transform .3s ease, box-shadow .3s ease;
    cursor: pointer;
    text-decoration: none;
    border: none;
}
.ra99-commission-btn:hover {
    transform: translateY(-4px);
    box-shadow: 0 12px 40px rgba(212,175,55,.2);
}


/* =============================================
   COPPER PAGE RESPONSIVE BREAKPOINTS
============================================= */

/* Desktop (< 1200px) */
@media(max-width:1200px){
    .ra99-custom-wrap { grid-template-columns: 1fr; }
    .ra99-custom-image img { height: 550px; }
}

/* Tablet (< 900px) */
@media(max-width:900px){
    .ra99-copper-hero { min-height: 800px; }
    .ra99-copper-bg { background-position: center center; }
    .ra99-masterpieces .ra99-card img { height: 450px; }
    .ra99-custom-image img { height: 450px; }
    .ra99-final-inner { padding: 80px 40px; }
    .ra99-artisan-content { max-width: 100%; }
    .ra99-story-card { padding: 40px 30px; }
}

/* Mobile (< 768px) */
@media(max-width:768px){
    .ra99-copper-hero { min-height: 850px; }
    .ra99-copper-bg { 
        background-position: center center; 
        background-size: cover; 
        animation: none; 
    }
    .ra99-hero-content { padding-top: 40px; }
    .ra99-hero-copy { font-size: var(--fs-body); line-height: 1.8; }
    .ra99-btn-primary, .ra99-btn-secondary, .ra99-video-btn, .ra99-commission-btn {
        padding: 16px 32px;
        font-size: 14px;
        width: 100%;
        justify-content: center;
    }
    .ra99-buttons, .ra99-cta-buttons { flex-direction: column; }
    .ra99-masterpieces .ra99-card img { height: 380px; }
    .ra99-card-content { padding: 30px; }
    .ra99-card h3 { font-size: var(--fs-h3); }
    .ra99-custom-wrap { padding: 0 20px; }
    .ra99-custom-image { border-radius: 20px; }
    .ra99-custom-image img { height: 350px; }
    .ra99-custom-content h2 { font-size: var(--fs-h2); }
    .ra99-custom-list { grid-template-columns: 1fr; }
    .ra99-artisan-content h2 { font-size: var(--fs-h2); }
    .ra99-artisan-content p { font-size: var(--fs-body); }
    .ra99-artisans { height: auto; min-height: 70vh; }
    .ra99-video-content-wrap { padding: 60px 20px; }
    .ra99-shimmer-wrap::after { animation: none; display: none; }
    .ra99-copper-hero::before { display: none; }
    .ra99-card-shine::after { display: none; }
}

/* Small Mobile (< 480px) */
@media(max-width:480px){
    .ra99-masterpieces .ra99-card img { height: 300px; }
    .ra99-card h3 { font-size: var(--fs-h3); }
    .ra99-card-content { padding: 25px 20px; }
    .ra99-custom-image img { height: 280px; }
}

/* =============================================
   COPPER ART PAGE: HEADING SPACING PATCHES
============================================= */

/* 1. Reduce space between small eyebrow tags and main titles */
.ra99-section-tag {
    margin-bottom: 10px !important; 
}

/* 2. Reduce top margin pushing titles away from the tags above them */
.ra99-artisan-content h2,
.ra99-story-title,
.ra99-masterpiece-title,
.ra99-custom-content h2,
.ra99-faq-header h2 {
    margin-top: 8px !important; 
}

/* 3. Tighten line-height for the big titles so multi-line words stay close together */
.ra99-artisan-content h2,
.ra99-story-title,
.ra99-masterpiece-title,
.ra99-custom-content h2 {
    line-height: 1.05 !important; 
}

/* =============================================
   HOMEPAGE SPECIFIC STYLES
============================================= */

/* --- HOMEPAGE HERO ADDITIONS --- */
.ra99-hero { position: relative; height: auto; min-height: 950px; display: flex; align-items: center; overflow: hidden; }
.ra99-hero-image { position: absolute; inset: 0; z-index: 1; }
.ra99-hero-image img { width: 100%; height: 100%; object-fit: cover; animation: heroDrift 25s ease-in-out infinite alternate; }
.ra99-hero-image::after { content: ''; position: absolute; inset: 0; background: linear-gradient(90deg, rgba(0,0,0,.88) 0%, rgba(0,0,0,.60) 35%, rgba(0,0,0,.30) 100%), linear-gradient(to top, rgba(0,0,0,.85), rgba(0,0,0,.05)); }
.ra99-hero-content { position: relative; z-index: 5; max-width: 850px; padding-top: 60px; }
.ra99-hero-label { display: inline-block; padding: 10px 20px; border: 1px solid rgba(212,175,55,.35); border-radius: 50px; color: var(--gold); font-size: 12px; letter-spacing: 3px; margin-bottom: 35px; text-transform: uppercase; }

/* --- FLOATING GLASS CARD --- */
.ra99-floating-card { position: absolute; right: 8%; bottom: 10%; z-index: 10; width: 340px; padding: 35px; background: linear-gradient(135deg, rgba(212,175,55,.06), rgba(255,255,255,.02)); backdrop-filter: blur(20px); -webkit-backdrop-filter: blur(20px); border: 1px solid var(--border-gold); border-radius: var(--radius-lg); transition: transform .5s ease var(--ease), border-color .5s ease var(--ease); }
.ra99-floating-card:hover { transform: translateY(-6px); border-color: var(--border-gold-strong); }
.ra99-floating-card::after { content: ''; position: absolute; top: -30px; right: -30px; width: 120px; height: 120px; background: radial-gradient(circle, rgba(212,175,55,.06) 0%, transparent 70%); border-radius: 50%; pointer-events: none; }
.ra99-floating-card span { display: block; color: var(--gold); font-size: var(--fs-small); margin-bottom: 10px; }
.ra99-floating-card h3 { font-family: var(--font-display); font-size: var(--fs-h2); margin-bottom: 15px; }
.ra99-floating-card p { font-size: var(--fs-body); line-height: 1.8; color: #C8C8C8; }

/* --- BRAND STORY --- */
.ra99-story-right { border-radius: var(--radius-lg); overflow: hidden; position: relative; }
.ra99-story-right .ra99-col-day { width: 100%; height: 850px; object-fit: cover; display: block; transition: transform 1.2s ease var(--ease); }
.ra99-story-right .ra99-col-night { position: absolute; top: 0; left: 0; width: 100%; height: 850px; object-fit: cover; display: block; clip-path: inset(0 100% 0 0); transition: clip-path .7s var(--ease); will-change: clip-path; pointer-events: none; }
.ra99-story-right:hover .ra99-col-night { clip-path: inset(0 0% 0 0); }
.ra99-story-right:hover .ra99-col-day { transform: scale(1.02); }

/* --- EDITORIAL COLLECTIONS ROW --- */
.ra99-editorial-heading { margin-bottom: 100px; text-align: center; }
.ra99-editorial-heading span { color: var(--gold); letter-spacing: 4px; font-size: var(--fs-small); }
.ra99-editorial-heading h2 { font-family: var(--font-display); font-size: var(--fs-display); line-height: 1; margin-top: 25px; }

.ra99-collection-row { display: grid; grid-template-columns: 1.2fr .8fr; gap: 80px; align-items: center; margin-bottom: 160px; position: relative; }
.ra99-collection-row.reverse { grid-template-columns: .8fr 1.2fr; }
.ra99-collection-row.reverse .ra99-collection-image { order: 2; }
.ra99-collection-row.reverse .ra99-collection-content { order: 1; }

.ra99-collection-image { position: relative; overflow: hidden; border-radius: var(--radius-lg); }
.ra99-collection-image::before { content: ''; position: absolute; top: 0; left: 0; width: 0; height: 3px; background: linear-gradient(90deg, var(--gold), var(--gold-soft)); transition: width .6s ease var(--ease); z-index: 5; }
.ra99-collection-row:hover .ra99-collection-image::before { width: 100%; }

.ra99-col-day { width: 100%; height: 760px; object-fit: cover; display: block; transition: transform 1.2s ease var(--ease); }
.ra99-col-night { position: absolute; top: 0; left: 0; width: 100%; height: 760px; object-fit: cover; display: block; clip-path: inset(0 100% 0 0); transition: clip-path .7s var(--ease); will-change: clip-path; pointer-events: none; }
.ra99-collection-row:hover .ra99-col-night { clip-path: inset(0 0% 0 0); }
.ra99-collection-row:hover .ra99-col-day { transform: scale(1.02); }

.ra99-collection-number { font-family: var(--font-display); font-size: var(--fs-display); color: rgba(212,175,55,.18); line-height: 1; margin-bottom: 20px; }
.ra99-collection-content h3 { font-family: var(--font-display); font-size: var(--fs-h2); margin-bottom: 25px; }
.ra99-collection-content p { font-size: var(--fs-lead); line-height: 2; color: #BDBDBD; max-width: 520px; margin-bottom: 35px; }
.ra99-link { display: inline-block; color: var(--gold); font-size: var(--fs-small); }

/* --- METRICS --- */
.ra99-metrics { padding-top: 40px; padding-bottom: var(--section-pad); }
.ra99-metrics-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 40px; }
.ra99-metric { text-align: center; padding: 50px 20px; border-top: 1px solid var(--border-light); border-bottom: 1px solid var(--border-light); }
.ra99-metric h3 { font-family: var(--font-display); font-size: var(--fs-display); color: var(--gold); margin-bottom: 15px; }
.ra99-metric p { letter-spacing: 2px; text-transform: uppercase; font-size: var(--fs-small); color: #BDBDBD; }

/* --- SIGNATURE CREATIONS GRID --- */
.ra99-signature-header { text-align: center; max-width: 900px; margin: 0 auto 100px; }
.ra99-signature-header span { color: var(--gold); letter-spacing: 4px; font-size: var(--fs-small); }
.ra99-signature-header h2 { font-family: var(--font-display); font-size: var(--fs-display); line-height: 1; margin: 25px 0; }
.ra99-signature-header p { font-size: var(--fs-lead); color: #BDBDBD; line-height: 2; }

.ra99-signature-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 40px; }
.ra99-signature-card { background: linear-gradient(160deg, rgba(212,175,55,.04), rgba(255,255,255,.015)); backdrop-filter: blur(8px); -webkit-backdrop-filter: blur(8px); border: 1px solid var(--border-subtle); border-radius: var(--radius-lg); overflow: hidden; transition: transform .5s ease var(--ease), border-color .5s ease var(--ease), box-shadow .5s ease var(--ease); display: flex; flex-direction: column; height: 100%; position: relative; }
.ra99-signature-card::before { content: ''; position: absolute; top: 0; left: 0; right: 0; bottom: 0; z-index: 4; pointer-events: none; overflow: hidden; border-radius: var(--radius-lg); }
.ra99-signature-card::after { content: ''; position: absolute; top: -60%; left: -60%; width: 40%; height: 220%; background: linear-gradient(to bottom right, transparent 40%, rgba(255,255,255,.02) 46%, rgba(255,255,255,.07) 50%, rgba(255,255,255,.02) 54%, transparent 60%); transform: rotate(30deg) translateX(-150%); transition: transform .9s ease var(--ease); z-index: 4; pointer-events: none; }
.ra99-signature-card:hover::after { transform: rotate(30deg) translateX(250%); }
.ra99-signature-card:hover { transform: translateY(-10px); border-color: rgba(212,175,55,.4); box-shadow: 0 20px 60px rgba(212,175,55,.08), 0 0 0 1px rgba(212,175,55,.1); }

.ra99-sig-topline { position: absolute; top: 0; left: 0; width: 0; height: 3px; background: linear-gradient(90deg, var(--gold), var(--gold-soft)); transition: width .6s ease var(--ease); z-index: 5; }
.ra99-signature-card:hover .ra99-sig-topline { width: 100%; }

.ra99-signature-image { position: relative; overflow: hidden; }
.ra99-sig-day { width: 100%; height: 500px; object-fit: cover; display: block; transition: transform 1s ease var(--ease); }
.ra99-sig-night { position: absolute; top: 0; left: 0; width: 100%; height: 500px; object-fit: cover; display: block; clip-path: inset(0 100% 0 0); transition: clip-path .7s var(--ease); will-change: clip-path; pointer-events: none; }
.ra99-signature-card:hover .ra99-sig-night { clip-path: inset(0 0% 0 0); }
.ra99-signature-card:hover .ra99-sig-day { transform: scale(1.02); }

.ra99-signature-content { padding: 40px; display: flex; flex-direction: column; min-height: 390px; }
.ra99-signature-content span { color: var(--gold); font-size: 12px; letter-spacing: 3px; text-transform: uppercase; }
.ra99-signature-content h3 { font-family: var(--font-display); font-size: var(--fs-h2); margin: 18px 0; }
.ra99-signature-content p { color: #BDBDBD; line-height: 1.9; margin-bottom: 20px; font-size: var(--fs-body); }
.ra99-signature-content a { color: var(--gold); font-size: var(--fs-small); margin-top: auto; display: inline-block; }

/* --- PARALLAX STATEMENT --- */
.ra99-statement { position: relative; height: 90vh; display: flex; align-items: center; overflow: hidden; }
.ra99-statement-bg { position: absolute; inset: 0; }
.ra99-statement-bg img { width: 100%; height: 100%; object-fit: cover; }
.ra99-statement-overlay { position: absolute; inset: 0; background: linear-gradient(to top, rgba(0,0,0,.85), rgba(0,0,0,.35)); }
.ra99-statement::before { content: ''; position: absolute; left: 10%; bottom: 20%; width: 500px; height: 500px; background: radial-gradient(circle, rgba(212,175,55,.08) 0%, transparent 65%); border-radius: 50%; z-index: 2; pointer-events: none; animation: ambientGlow 5s ease-in-out infinite alternate; }
.ra99-statement-content { position: relative; z-index: 5; max-width: 900px; }
.ra99-statement-content span { color: var(--gold); letter-spacing: 4px; font-size: var(--fs-small); }
.ra99-statement-content h2 { font-family: var(--font-display); font-size: var(--fs-hero); line-height: .95; margin: 25px 0; }
.ra99-statement-content p { font-size: var(--fs-lead); line-height: 2; max-width: 700px; color: #D2D2D2; }

/* --- CUSTOM COMMISSIONS --- */
.ra99-custom-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 80px; align-items: center; }
.ra99-custom-left span { color: var(--gold); letter-spacing: 4px; font-size: var(--fs-small); }
.ra99-custom-left h2 { font-family: var(--font-display); font-size: var(--fs-display); line-height: 1; margin: 25px 0; }
.ra99-custom-left p { font-size: var(--fs-lead); line-height: 2; color: #BDBDBD; margin-bottom: 40px; }
.ra99-custom-box { padding: 70px; border-radius: var(--radius-xl); background: linear-gradient(135deg, rgba(212,175,55,.12), rgba(255,255,255,.02)); border: 1px solid var(--border-gold); position: relative; overflow: hidden; }
.ra99-custom-box::after { content: ''; position: absolute; top: -40px; right: -40px; width: 150px; height: 150px; background: radial-gradient(circle, rgba(212,175,55,.06) 0%, transparent 70%); border-radius: 50%; pointer-events: none; }
.ra99-custom-box h3 { font-family: var(--font-display); font-size: var(--fs-h2); margin-bottom: 20px; }
.ra99-custom-box p { line-height: 2; color: #C8C8C8; font-size: var(--fs-body); }

/* --- TESTIMONIALS --- */
.ra99-testimonial-heading { text-align: center; max-width: 900px; margin: 0 auto 120px; padding: 0 20px; }
.ra99-testimonial-heading span { color: var(--gold); letter-spacing: 4px; font-size: var(--fs-small); }
.ra99-testimonial-heading h2 { font-family: var(--font-display); font-size: var(--fs-display); line-height: 1.1; letter-spacing: normal; margin: 25px 0 20px; }
.ra99-testimonial-heading p { color: #BDBDBD; font-size: var(--fs-lead); line-height: 1.8; }

.ra99-testimonial-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 35px; }
.ra99-testimonial { padding: 50px; border-radius: var(--radius-lg); background: linear-gradient(160deg, rgba(212,175,55,.04), rgba(255,255,255,.015)); backdrop-filter: blur(8px); -webkit-backdrop-filter: blur(8px); border: 1px solid var(--border-subtle); display: flex; flex-direction: column; height: 100%; transition: transform .5s ease var(--ease), border-color .5s ease var(--ease); }
.ra99-testimonial p { color: #C8C8C8; line-height: 2; margin-bottom: 30px; flex-grow: 1; font-size: var(--fs-body); }
.ra99-testimonial h4 { font-family: var(--font-display); font-size: var(--fs-h3); color: var(--gold); margin-top: auto; }
.ra99-testimonial:hover { transform: translateY(-6px); border-color: rgba(212,175,55,.3); }

/* --- FINAL CTA HOMEPAGE BOX --- */
.ra99-final-box { text-align: center; max-width: 1100px; margin: auto; padding: 120px 80px; border-radius: 40px; background: linear-gradient(135deg, rgba(212,175,55,.12), rgba(255,255,255,.02)); border: 1px solid rgba(212,175,55,.20); position: relative; overflow: hidden; }
.ra99-final-box::before { content: ''; position: absolute; top: -40%; left: -20%; width: 60%; height: 80%; background: radial-gradient(ellipse, rgba(212,175,55,.05) 0%, transparent 70%); pointer-events: none; }
.ra99-final-box span { color: var(--gold); letter-spacing: 4px; font-size: var(--fs-small); }
.ra99-final-box h2 { font-family: var(--font-display); font-size: var(--fs-hero); line-height: 1; margin: 25px 0; position: relative; }
.ra99-final-box p { font-size: var(--fs-lead); line-height: 2; color: #C8C8C8; max-width: 800px; margin: 0 auto 45px; position: relative; }
.ra99-final-actions { display: flex; justify-content: center; gap: 20px; flex-wrap: wrap; position: relative; }


/* =============================================
   HOMEPAGE RESPONSIVE BREAKPOINTS
============================================= */

/* Desktop (< 1200px) */
@media(max-width:1200px){
    .ra99-floating-card { display: none; }
    .ra99-collection-row, .ra99-collection-row.reverse { grid-template-columns: 1fr; }
    .ra99-collection-row.reverse .ra99-collection-image, .ra99-collection-row.reverse .ra99-collection-content { order: unset; }
    .ra99-col-day, .ra99-col-night { height: 550px; }
    .ra99-metrics-grid { grid-template-columns: 1fr 1fr; }
    .ra99-signature-grid { grid-template-columns: 1fr; }
    .ra99-custom-grid { grid-template-columns: 1fr; }
    .ra99-testimonial-grid { grid-template-columns: 1fr; }
}

/* Tablet (< 900px) */
@media(max-width:900px){
    .ra99-hero { min-height: 800px; }
    .ra99-story-right .ra99-col-day, .ra99-story-right .ra99-col-night { height: 650px; }
    .ra99-statement::before { width: 250px; height: 250px; }
    
    /* Mobile fallback for day/night on collections */
    .ra99-col-night { clip-path: inset(0 100% 0 0); transition: clip-path .7s var(--ease); }
    .ra99-collection-image:hover .ra99-col-night, .ra99-collection-image.ra99-touch-active .ra99-col-night { clip-path: inset(0 0% 0 0); }
    .ra99-collection-image:hover .ra99-col-day, .ra99-collection-image.ra99-touch-active .ra99-col-day { transform: scale(1); }
    
    .ra99-sig-night { clip-path: inset(0 100% 0 0); transition: clip-path .7s var(--ease); }
    .ra99-signature-image:hover .ra99-sig-night, .ra99-signature-image.ra99-touch-active .ra99-sig-night { clip-path: inset(0 0% 0 0); }
    .ra99-signature-image:hover .ra99-sig-day, .ra99-signature-image.ra99-touch-active .ra99-sig-day { transform: scale(1); }
}

/* Mobile (< 768px) */
@media(max-width:768px){
    .ra99-hero { min-height: 850px; }
    .ra99-hero-content { padding-top: 40px; }
    .ra99-hero-actions, .ra99-custom-buttons, .ra99-final-actions { flex-direction: column; }
    .ra99-story-right .ra99-col-day, .ra99-story-right .ra99-col-night { height: 450px; }
    .ra99-col-day, .ra99-col-night { height: 380px; }
    .ra99-collection-number { font-size: 80px; }
    .ra99-metrics-grid { grid-template-columns: 1fr; }
    .ra99-metric h3 { font-size: 60px; }
    .ra99-sig-day, .ra99-sig-night { height: 400px; }
    .ra99-signature-content { padding: 30px; min-height: auto; }
    .ra99-signature-content h3 { font-size: var(--fs-h3); }
    .ra99-statement { height: 70vh; }
    .ra99-statement-content h2 { font-size: 56px; }
    .ra99-statement-content p { font-size: var(--fs-body); }
    .ra99-custom-box { padding: 40px 30px; }
    .ra99-custom-box h3 { font-size: var(--fs-h3); }
    .ra99-testimonial { padding: 35px 25px; }
    .ra99-testimonial h4 { font-size: 20px; }
    .ra99-final-box { padding: 60px 25px; border-radius: 25px; }
    .ra99-hero::before { display: none; }
    .ra99-hero-image img { animation: none; }
    .ra99-statement::before { display: none; }
    .ra99-signature-card::after { display: none; }
}

/* Small Mobile (< 480px) */
@media(max-width:480px){
    .ra99-col-day, .ra99-col-night { height: 300px; }
    .ra99-collection-content h3 { font-size: 30px; }
    .ra99-collection-content p { font-size: var(--fs-body); }
    .ra99-story-right .ra99-col-day, .ra99-story-right .ra99-col-night { height: 350px; }
    .ra99-story h2 { font-size: 48px; }
    .ra99-custom-box { padding: 30px 20px; }
    .ra99-final-box { padding: 40px 20px; }
    .ra99-sig-day, .ra99-sig-night { height: 300px; }
    .ra99-metric h3 { font-size: 48px; }
}

/* =============================================
   HOMEPAGE LAYOUT ADJUSTMENTS (FINAL)
============================================= */

/* 1. REMOVE METRICS LINE (44+, 16, 4) */
.ra99-metrics {
    display: none;
}

/* 2. HERO IMAGE: Place next to title, slightly larger than collections */
.ra99-hero-image {
    left: 25%;       
    right: 0;
    max-width: 75%;  
    margin: 0;        
}
.ra99-hero-image img {
    height: 850px;   
    width: auto;
    object-fit: cover;
}

/* 3. KILL OLD TOP GOLD LINE */
.ra99-story-right::before,
.ra99-collection-image::before {
    display: none !important; 
}

/* 4. REDUCE STATEMENT IMAGE */
.ra99-statement-bg {
    max-width: 60%;
    margin: 0 auto;
}

/* 5. SECTION SPACING */
.ra99-page section {
    padding: 80px 0; 
}
.ra99-collection-row {
    margin-bottom: 100px; 
}
.ra99-editorial-heading {
    margin-bottom: 60px; 
}
.ra99-signature-header {
    margin-bottom: 60px; 
}
.ra99-testimonial-heading {
    margin-bottom: 80px; 
}

/* 6. FORCE EXACT CONTAINER SIZE & ADD GOLD BORDER HOVER */
.ra99-story-right,
.ra99-collection-image {
    width: 556px;           
    height: 700px;          
    max-width: 100%;        
    margin: 0 auto;         
    border-radius: 12px;    
    overflow: hidden;
    border: 1px solid var(--border-subtle); 
    transition: border-color .5s ease var(--ease), box-shadow .5s ease var(--ease), transform .5s ease var(--ease);
}

/* 7. Gold border glow on hover */
.ra99-collection-row:hover .ra99-collection-image,
.ra99-story-right:hover {
    border-color: var(--border-gold-strong);
    box-shadow: 0 20px 60px rgba(212,175,55,.08), 0 0 0 1px rgba(212,175,55,.1);
    transform: translateY(-5px);
}

/* 8. FORCE IMAGES TO FILL BOX (Fixes stuck clip-paths & square images) */
.ra99-col-day,
.ra99-col-night,
.ra99-story-right .ra99-col-day,
.ra99-story-right .ra99-col-night {
    width: 100% !important; 
    height: 100% !important; 
    aspect-ratio: unset !important; 
    object-fit: cover !important;  
}

/* =============================================
   SIGNATURE CREATIONS: SIZE & HOVER FIX
============================================= */

/* 1. Reduce overall tile image size */
.ra99-sig-day,
.ra99-sig-night {
    height: 500px !important; /* Reduced from 620px */
}

/* 2. Remove old top-line effect */
.ra99-sig-topline {
    display: none !important;
}

/* 3. Remove old shine sweep effect */
.ra99-signature-card::after {
    display: none !important;
}

/* 4. Apply new clean gold border hover (Matches Collections) */
.ra99-signature-card {
    border: 1px solid var(--border-subtle);
    transition: border-color .5s ease var(--ease), box-shadow .5s ease var(--ease), transform .5s ease var(--ease);
}
.ra99-signature-card:hover {
    border-color: var(--border-gold-strong);
    box-shadow: 0 20px 60px rgba(212,175,55,.08), 0 0 0 1px rgba(212,175,55,.1);
    transform: translateY(-5px); /* Softer lift than the old -10px */
}

/* =============================================
   COLLECTION CARDS: ULTIMATE UNIFIED FIX
       (DO NOT DELETE OR REPLACE THIS BLOCK)
============================================= */

/* 1. Kill old top gold line and shine sweep permanently */
.ra99-card::before,
.ra99-card-shine::after {
    display: none !important;
}

/* 2. Shrink the OUTER tile itself on inner pages & apply gold border */
.ra99-grid .ra99-card {
    max-width: 500px;      /* Forces the whole tile to shrink */
    margin: 0 auto;         /* Centers the shrunken tile */
    border: 1px solid var(--border-subtle);
    transition: border-color .5s ease var(--ease), box-shadow .5s ease var(--ease), transform .5s ease var(--ease);
}
.ra99-grid .ra99-card:hover {
    border-color: var(--border-gold-strong);
    box-shadow: 0 20px 60px rgba(212,175,55,.08), 0 0 0 1px rgba(212,175,55,.1);
    transform: translateY(-10px);
}

/* 3. Force image wrapper to fill the new tile width (Undoes previous patches) */
.ra99-daynight-wrap {
    max-width: 100% !important; 
    margin: 0 !important;
    border: none !important; 
}

/* 4. Force text box to fill the new tile width (Undoes previous patches) */
.ra99-card-content {
    max-width: 100% !important; 
    margin: 0 !important;
}

/* 5. Force images to fill perfectly */
.ra99-daynight-day,
.ra99-daynight-night {
    width: 100% !important; 
    height: 100% !important; 
    aspect-ratio: unset !important; 
    object-fit: cover !important;
    object-position: top center !important; 
}

/* =============================================
   HOMEPAGE ONLY: SIGNATURE CARDS MATCH COLLECTIONS
============================================= */

/* 1. Shrink the outer tile exactly like the collection grid */
body.home .ra99-signature-grid .ra99-signature-card {
    max-width: 500px;
    margin: 0 auto;
    border: 1px solid var(--border-subtle);
    transition: border-color .5s ease var(--ease), box-shadow .5s ease var(--ease), transform .5s ease var(--ease);
}
body.home .ra99-signature-grid .ra99-signature-card:hover {
    border-color: var(--border-gold-strong);
    box-shadow: 0 20px 60px rgba(212,175,55,.08), 0 0 0 1px rgba(212,175,55,.1);
    transform: translateY(-10px);
}

/* 2. Kill old top gold line and shine sweep */
body.home .ra99-sig-topline,
body.home .ra99-signature-card::after {
    display: none !important;
}

/* 3. Make image container match collection dimensions */
body.home .ra99-signature-image {
    height: 420px; 
    max-width: 100%;
}

/* 4. Force images to fill perfectly and align to top */
body.home .ra99-sig-day,
body.home .ra99-sig-night {
    width: 100% !important; 
    height: 420px !important; 
    aspect-ratio: unset !important; 
    object-fit: cover !important;
    object-position: top center !important; 
}

/* 5. Force text box to fill tile width */
body.home .ra99-signature-content {
    max-width: 100% !important; 
}

/* =============================================
   SHOPPAGE ONLY: PRODUCTS ULTIMATE UNIFIED FIX
       (DO NOT DELETE OR REPLACE THIS BLOCK)
============================================= */

/* 1. Kill old top gold line and shine sweep permanently */
body.page-template-page-collections-php .ra99-product-tile-topline,
body.page-template-page-collections-php .ra99-product-tile::after {
    display: none !important;
}

/* 2. Shrink the OUTER tile itself on shop page & apply gold border */
body.page-template-page-collections-php .ra99-product-grid .ra99-product-tile {
    max-width: 500px;      /* Forces the whole tile to shrink */
    margin: 0 auto;         /* Centers the shrunken tile */
    border: 1px solid var(--border-subtle);
    transition: border-color .5s ease var(--ease), box-shadow .5s ease var(--ease), transform .5s ease var(--ease);
}
body.page-template-page-collections-php .ra99-product-grid .ra99-product-tile:hover {
    border-color: var(--border-gold-strong);
    box-shadow: 0 20px 60px rgba(212,175,55,.08), 0 0 0 1px rgba(212,175,55,.1);
    transform: translateY(-10px);
}

/* 3. Force image wrapper to fill the new tile width (Undoes previous patches) */
body.page-template-page-collections-php .ra99-product-img {
    max-width: 100% !important; 
    margin: 0 !important;
    border: none !important; 
}

/* 4. Force text box to fill the new tile width (Undoes previous patches) */
body.page-template-page-collections-php .ra99-product-body {
    max-width: 100% !important; 
    margin: 0 !important;
}

/* 5. Force images to fill perfectly */
body.page-template-page-collections-php .ra99-img-day,
body.page-template-page-collections-php .ra99-img-night {
    width: 100% !important; 
    height: 100% !important; 
    aspect-ratio: unset !important; 
    object-fit: cover !important;
    object-position: top center !important; 
}

/* =============================================
   MUSICPAGE ONLY: UNIFIED TILE FIX (FINAL)
       (DO NOT DELETE OR REPLACE THIS BLOCK)
============================================= */

/* 1. Kill the thick gold line permanently */
.ra99-glass-topline { 
    display: none !important; 
}

/* 2. Shrink the OUTER tile to match other pages & apply thin border */
body.page-template-page-music-php .ra99-artists-grid .ra99-glass-card {
    max-width: 500px;      
    margin: 0 auto;         
    border: 1px solid var(--border-subtle) !important; 
    border-radius: var(--radius-lg) !important;
    overflow: hidden !important; 
    transition: border-color .5s ease var(--ease), box-shadow .5s ease var(--ease), transform .5s ease var(--ease) !important;
}
body.page-template-page-music-php .ra99-artists-grid .ra99-glass-card:hover {
    border-color: var(--border-gold-strong) !important;
    box-shadow: 0 20px 60px rgba(212,175,55,.08), 0 0 0 1px rgba(212,175,55,.1) !important;
    transform: translateY(-10px) !important;
}

/* 3. Fix image wrapper height & REMOVE the empty gap below it */
.ra99-artist-image { 
    height: 520px !important; 
    margin: 0 !important; 
    padding: 0 !important;
    overflow: hidden !important;
}

/* 4. Remove top spacing from the text box so it touches the image */
.ra99-artist-content {
    margin-top: 0 !important;
    padding-top: 32px !important; /* Adjust this number if you want a tiny bit of padding, or 0px for no gap */
}

/* 5. Force images inside the wrapper to fill perfectly without stretching */
.ra99-artist-image img {
    width: 100% !important;
    height: 100% !important;
    aspect-ratio: unset !important;
    object-fit: cover !important;
    object-position: top center !important;
}

/* ==========================================================================
   SINGLE PRODUCT PAGE: LUXURY ART GALLERY SKIN
========================================================================== */
/* 1. Main Layout: Fixed Image Width (Matches shop tile feel) */
.single-product div.product {
    display: grid !important;
    grid-template-columns: 550px 1fr !important; /* Locks image width to 550px, text takes the rest */
    gap: 60px !important;
    align-items: start !important;
    max-width: 1200px !important;
    margin: 80px auto !important;
    color: var(--text) !important;
}

/* 2. Custom Day/Night Image Wrapper */
.ra99-single-product-img {
    position: relative !important;
    width: 100% !important;
    height: 700px !important; /* Tall portrait ratio to stop the image from being cut */
    overflow: hidden !important;
    border-radius: var(--radius-lg) !important;
    border: 1px solid var(--border-subtle) !important;
    transition: border-color .5s ease var(--ease) !important;
}
.ra99-single-product-img:hover {
    border-color: var(--border-gold) !important;
    box-shadow: 0 20px 60px rgba(212,175,55,.08), 0 0 0 1px rgba(212,175,55,.1) !important;
}
.ra99-single-product-img .ra99-img-day {
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
    object-position: top center !important; 
    position: relative !important;
    z-index: 1 !important;
    transition: transform 1s ease var(--ease) !important;
}
.ra99-single-product-img .ra99-img-night {
    position: absolute !important;
    top: 0 !important;
    left: 0 !important;
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
    object-position: top center !important;
    z-index: 2 !important;
    opacity: 0 !important;
    transition: opacity .6s ease !important;
    pointer-events: none !important;
}
.ra99-single-product-img:hover .ra99-img-night {
    opacity: 1 !important;
}
/* Mobile toggle button */
.ra99-single-product-img .ra99-daynight-btn {
    display: none; 
}
@media (max-width: 900px) {
    .single-product div.product {
        grid-template-columns: 1fr !important; /* Stack on tablet/mobile */
    }
    .ra99-single-product-img {
        height: 500px !important;
    }
}
@media (max-width: 480px) {
    .ra99-single-product-img {
        height: 400px !important;
    }
    .ra99-single-product-img .ra99-daynight-btn {
        display: flex !important;
    }
    .ra99-single-product-img.ra99-night-on .ra99-img-night {
        opacity: 1 !important;
    }
}

/* 3. Product Summary (Right Side Details) - VARIATION READY */
.single-product .summary {
    width: 100% !important;
    float: none !important;
    padding: 10px 0 !important;
    margin: 0 !important;
}

/* 4. Product Title */
.single-product .product_title {
    font-family: var(--font-display) !important;
    font-size: var(--fs-h2) !important;
    color: var(--text) !important;
    font-weight: 600 !important;
    margin: 0 0 15px 0 !important;
    line-height: 1.2 !important;
    text-align: left !important;
}

/* 5. Price Tag */
.single-product p.price {
    font-family: var(--font-display) !important;
    font-size: var(--fs-h3) !important;
    color: var(--gold) !important;
    margin: 0 0 30px 0 !important;
}
.single-product p.price del {
    color: var(--muted) !important;
    font-size: var(--fs-body) !important;
    opacity: 0.6 !important;
    margin-right: 10px !important;
}
.single-product p.price ins {
    text-decoration: none !important;
    color: var(--gold) !important;
}

/* 6. Short Description */
.single-product .woocommerce-product-details__short-description {
    color: #BDBDBD !important;
    font-size: var(--fs-body) !important;
    line-height: 1.8 !important;
    text-align: left !important;
    margin: 0 0 40px 0 !important;
    padding: 0 0 40px 0 !important;
    border-bottom: 1px solid var(--border-subtle) !important;
    width: 100% !important;
}
.single-product .woocommerce-product-details__short-description p {
    margin: 0 !important;
    padding: 0 !important;
}

/* 7. Variations & Cart Wrapper (The Missing Link!) */
.single-product .cart {
    display: flex !important;
    flex-direction: column !important; /* Stacks dropdown, qty, and button cleanly */
    align-items: flex-start !important;
    gap: 20px !important;
    margin: 0 !important;
    padding: 0 !important;
    width: 100% !important;
}
/* Style the dropdowns (Size, Frame, etc.) */
.single-product .variations {
    width: 100% !important;
    margin-bottom: 0 !important;
}
.single-product .variations label {
    color: var(--gold) !important;
    font-size: var(--fs-small) !important;
    letter-spacing: 2px !important;
    text-transform: uppercase !important;
    display: block !important;
    margin-bottom: 10px !important;
}
.single-product .variations select {
    background: var(--bg-card) !important;
    color: var(--text) !important;
    border: 1px solid var(--border-light) !important;
    border-radius: 12px !important;
    padding: 14px 18px !important;
    font-family: var(--font-body) !important;
    font-size: var(--fs-body) !important;
    width: 100% !important;
    max-width: 320px !important;
    appearance: none !important;
}
/* Reset price inside variation form */
.single-product .woocommerce-variation-price {
    color: var(--gold) !important;
    font-family: var(--font-display) !important;
    font-size: var(--fs-h3) !important;
    margin: 0 !important;
}
.single-product .stock { color: var(--muted) !important; font-size: var(--fs-small) !important; }
.single-product .stock.out-of-stock { color: #e07a7a !important; }

/* Row for Quantity + Button */
.single-product .cart .quantity,
.single-product .cart button.single_add_to_cart_button {
    display: inline-flex !important;
    vertical-align: middle !important;
}

/* 8. Quantity Input Box */
.single-product .quantity .qty {
    width: 70px !important;
    height: 54px !important;
    background: var(--bg-card) !important;
    color: var(--text) !important;
    border: 1px solid var(--border-light) !important;
    border-radius: 12px !important;
    text-align: center !important;
    font-size: 16px !important;
    margin-right: 16px !important;
}

/* 9. Add to Cart Button (Gold Pill) */
.single-product button.single_add_to_cart_button {
    background: var(--gold) !important;
    color: #000 !important;
    border: none !important;
    border-radius: var(--radius-btn) !important;
    padding: 16px 40px !important;
    font-family: var(--font-body) !important;
    font-size: 15px !important;
    font-weight: 600 !important;
    letter-spacing: 1px !important;
    text-transform: uppercase !important;
    cursor: pointer !important;
    transition: transform .3s ease, box-shadow .3s ease !important;
}
.single-product button.single_add_to_cart_button:hover {
    transform: translateY(-4px) !important;
    box-shadow: 0 12px 40px rgba(212,175,55,.25) !important;
}

/* ==========================================================================
   SINGLE PRODUCT PAGE: AGGRESSIVE DECLUTTER (Hides SEO fluff from humans)
========================================================================== */

/* Hide SKU, Categories, Tags */
.single-product .product_meta {
    display: none !important;
}

/* Hide the 800-word long description tabs (Rank Math still reads the source code!) */
.single-product .woocommerce-tabs {
    display: none !important;
}

/* ==========================================================================
   SINGLE PRODUCT PAGE: RESPONSIVE
========================================================================== */
@media (max-width: 900px) {
    .single-product div.product {
        grid-template-columns: 1fr !important;
        gap: 40px !important;
        align-items: start !important; /* Stack normally on mobile */
    }
    .woocommerce-product-gallery__image {
        height: 450px !important;
    }
}
@media (max-width: 480px) {
    .woocommerce-product-gallery__image {
        height: 350px !important;
    }
    .single-product .cart {
        flex-direction: column !important;
        align-items: stretch !important;
    }
    .single-product button.single_add_to_cart_button {
        width: 100% !important;
        text-align: center !important;
    }
}

/* =============================================
   SINGLE PRODUCT: IMAGE-ONLY RELATED GALLERY
============================================= */
.ra99-related-section {
    padding: 120px 0;
    background: var(--bg-secondary);
    margin-top: 80px;
}

.ra99-related-grid {
    display: grid;
    grid-template-columns: repeat(8, 1fr);
    gap:18px;
}

/* 2. Force the heading to span all 8 columns and center */
.ra99-related-section .ra99-editorial-heading {
    text-align: center !important;
    margin-bottom: 50px;
}

.ra99-related-tile {
    display: block;
    position: relative;
    border-radius: var(--radius-lg);
    overflow: hidden;
    border: 1px solid var(--border-subtle);
    transition: border-color .5s ease var(--ease), transform .5s ease var(--ease), box-shadow .5s ease var(--ease);
}
.ra99-related-tile:hover {
    border-color: var(--border-gold-strong);
    transform: translateY(-10px);
    box-shadow: 0 20px 60px rgba(212,175,55,.08), 0 0 0 1px rgba(212,175,55,.1);
}

/* Kill ALL Sale Badges on Single Product Pages (Main + Related) */
.single-product .onsale,
.ra99-related-section .onsale {
    display: none !important;
    opacity: 0 !important;
    visibility: hidden !important;
    height: 0 !important;
    width: 0 !important;
    overflow: hidden !important;
}

/* Day/Night Image Logic for Related Tiles */
.ra99-related-img {
    position: relative;
    width: 100%;
    height: 240px; /* Tall portrait frame */
    overflow: hidden;
}
.ra99-related-img .ra99-img-day {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: top center;
    transition: transform 1s ease var(--ease);
}
.ra99-related-img .ra99-img-night {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: top center;
    opacity: 0;
    transition: opacity .6s ease;
    pointer-events: none;
}
.ra99-related-tile:hover .ra99-img-night {
    opacity: 1;
}
.ra99-related-tile:hover .ra99-img-day {
    transform: scale(1.05);
}

/* Hide mobile toggle on desktop */
.ra99-related-img .ra99-daynight-btn {
    display: none; 
}

/* Responsive Grid */
@media (max-width: 1200px) {
    .ra99-related-grid { grid-template-columns: repeat(4, 1fr); gap: 24px; }
    .ra99-related-img { height: 380px; }
}
@media (max-width: 768px) {
    .ra99-related-grid { grid-template-columns: repeat(2, 1fr); }
    .ra99-related-img { height: 400px; }
    .ra99-related-section { padding: 80px 0; }
     /* Show toggle on mobile */
    .ra99-related-img .ra99-daynight-btn { display: flex !important; }
    .ra99-related-tile.ra99-night-on .ra99-img-night { opacity: 1; }
}
@media (max-width: 480px) {
    .ra99-related-grid { grid-template-columns: 1fr; }
    .ra99-related-img { height: 450px; }
}

/* =============================================
   SPORTSPAGE ONLY: ATHLETE CARDS GOLD HOVER (MATCHES MUSIC PAGE)
============================================= */
body.page-template-page-sports-php .ra99-glass-topline { 
    display: none !important; 
}
body.page-template-page-sports-php .ra99-artists-grid .ra99-glass-card {
    max-width: 500px;      
    margin: 0 auto;         
    border: 1px solid var(--border-subtle) !important; 
    border-radius: var(--radius-lg) !important;
    overflow: hidden !important; 
    transition: border-color .5s ease var(--ease), box-shadow .5s ease var(--ease), transform .5s ease var(--ease) !important;
}
body.page-template-page-sports-php .ra99-artists-grid .ra99-glass-card:hover {
    border-color: var(--border-gold-strong) !important;
    box-shadow: 0 20px 60px rgba(212,175,55,.08), 0 0 0 1px rgba(212,175,55,.1) !important;
    transform: translateY(-10px) !important;
}
body.page-template-page-sports-php .ra99-artist-image { 
    height: 650px !important; 
    margin: 0 !important; 
    overflow: hidden !important;
}
body.page-template-page-sports-php .ra99-artist-content {
    margin-top: 0 !important;
    padding-top: 32px !important;
}
body.page-template-page-sports-php .ra99-glass-card img {
    width: 100% !important;
    height: 100% !important;
    aspect-ratio: unset !important;
    object-fit: cover !important;
    object-position: top center !important;
}

/* =============================================
   WOOCOMMERCE CART: DEFINITIVE LUXURY SKIN
   (Extracted & Upgraded from DevTools Analysis)
============================================= */

/* 1. Main Layout */
.wp-block-woocommerce-filled-cart-block {
    gap: 48px !important;
    margin-top: 32px !important;
    padding-top: 40px !important;
}

/* 2. Table Reset */
table.wc-block-cart-items {
    width: 100% !important;
    border-collapse: collapse !important;
    background: transparent !important;
}
table.wc-block-cart-items thead {
    display: none !important; /* Hide redundant table headers */
}

/* 3. Row Spacing */
table.wc-block-cart-items tr.wc-block-cart-items__row {
    border: none !important;
    border-bottom: 1px solid var(--border-subtle) !important;
}
table.wc-block-cart-items tr.wc-block-cart-items__row td {
    padding: 28px 12px !important;
    vertical-align: middle !important;
    border: none !important;
}

/* 4. Fix the Tiny Image */
td.wc-block-cart-item__image {
    width: 220px !important;
}
td.wc-block-cart-item__image img {
    width: 200px !important;
    height: auto !important; /* Lets the image calculate its own natural height based on width */
    max-height: 300px !important; /* Prevents excessively tall images */
    object-fit: contain !important; /* CHANGED from cover to contain - this stops the cropping/blurring! */
    object-position: top center !important;
    border-radius: 12px !important;
    border: 1px solid var(--border-subtle) !important;
    display: block !important;
    image-rendering: auto !important; /* KILLS the blurry Chrome optimization hack */
    -webkit-font-smoothing: antialiased; /* Helps with edge smoothness */
}

/* Trust Badges (Injected via CSS) */
.wc-block-cart-item__wrap::after {
    content: '🔒 Secure Checkout   🚚 Fast Dispatch   ✨ Handcrafted Quality';
    display: block;
    margin-top: 15px;
    font-size: 11px;
    color: var(--muted);
    letter-spacing: 0.05em;
}

/* 5. Fix the Tiny Product Name & Description */
td.wc-block-cart-item__product {
    padding-left: 8px !important;
}
.wc-block-cart-item__wrap {
    display: flex !important;
    flex-direction: column !important;
    gap: 10px !important;
}
.wc-block-components-product-name {
    font-family: var(--font-display) !important;
    font-size: var(--fs-small) !important;
    color: var(--text) !important;
    line-height: 1.3 !important;
    text-decoration: none !important;
    display: block !important;
    margin-bottom: 8px !important;
    white-space: normal !important; /* Prevents forced word breaks */
    word-break: break-word !important; /* Only breaks if the word itself is too long */
}
.wc-block-components-product-name:hover {
    color: var(--gold) !important;
}
.wc-block-cart-item__product .wc-block-components-product-metadata,
.wc-block-cart-item__product > div > span:not([class]) {
    font-family: var(--font-body) !important;
    font-size: var(--fs-body) !important;
    color: var(--muted) !important;
    line-height: 1.6 !important;
}

/* 6. Fix the Price (if shown inline) */
.wc-block-cart-item__product .wc-block-components-product-price {
    font-family: var(--font-body) !important;
    color: var(--gold) !important;
    font-size: var(--fs-body) !important;
}

/* 7. Fix the Line Total */
td.wc-block-cart-item__total {
    text-align: right !important;
    font-family: var(--font-display) !important;
    font-size: var(--fs-h3) !important;
    color: var(--gold) !important;
    padding-top: 10px !important;
}

/* 8. Cart Totals Sidebar Box */
.wc-block-components-sidebar.wc-block-cart__sidebar {
    background: var(--bg-card) !important;
    border: 1px solid var(--border-gold) !important;
    border-radius: 16px !important;
    padding: 32px !important;
}
.wc-block-cart__totals-title,
.wc-block-components-totals-item__label {
    font-family: var(--font-body) !important;
    color: var(--muted) !important;
    font-size: var(--fs-small) !important;
    letter-spacing: 0.05em !important;
    text-transform: uppercase !important;
}
.wc-block-components-totals-item__value {
    font-family: var(--font-body) !important;
    color: var(--text) !important;
    font-size: var(--fs-body) !important;
}
/* Estimated Total */
.wc-block-components-totals-footer-item .wc-block-components-totals-item__label,
.wc-block-components-totals-footer-item .wc-block-components-totals-item__value {
    font-family: var(--font-display) !important;
    font-size: var(--fs-h3) !important;
    color: var(--gold) !important;
    text-transform: none !important;
    letter-spacing: 0 !important;
}

/* 9. Coupon Field */
.wc-block-components-totals-coupon input {
    background: var(--bg-primary) !important;
    border: 1px solid var(--border-gold) !important;
    color: var(--text) !important;
    border-radius: 8px !important;
    padding: 10px 14px !important;
}

/* 10. Proceed to Checkout Button */
.wp-block-woocommerce-proceed-to-checkout-block .wc-block-cart__submit-button,
.wc-block-cart__submit-container a {
    background: var(--gold) !important;
    color: #000 !important;
    font-family: var(--font-body) !important;
    font-size: var(--fs-small) !important;
    letter-spacing: 0.1em !important;
    text-transform: uppercase !important;
    border-radius: 999px !important;
    padding: 16px 24px !important;
    width: 100% !important;
    text-align: center !important;
    border: none !important;
    transition: background .3s ease, transform .2s ease !important;
}
.wp-block-woocommerce-proceed-to-checkout-block .wc-block-cart__submit-button:hover,
.wc-block-cart__submit-container a:hover {
    background: var(--text) !important;
    transform: translateY(-2px) !important;
}

/* =============================================
   CART PAGE: MOBILE STACKED CARDS
============================================= */
@media (max-width: 768px) {
    table.wc-block-cart-items,
    table.wc-block-cart-items__row,
    table.wc-block-cart-items__row td {
        display: block !important;
        width: 100% !important;
    }
    table.wc-block-cart-items__row {
        padding: 20px 0 !important;
    }
    td.wc-block-cart-item__image {
        width: 100% !important;
        margin-bottom: 16px !important;
    }
    td.wc-block-cart-item__image img {
        width: 140px !important;
    }
    td.wc-block-cart-item__total {
        text-align: left !important;
        padding-top: 16px !important;
    }
    .wp-block-woocommerce-filled-cart-block {
        flex-direction: column !important;
    }
}

/* Security Badge (Placed strictly below Checkout button) */
.wp-block-woocommerce-proceed-to-checkout-block {
    overflow: visible !important; /* Prevents the sidebar from clipping our badge */
}
.wc-block-cart__submit-container::after {
    content: '🔒 256-bit SSL Encryption. Your data is safe.';
    display: block;
    text-align: center;
    font-size: var(--fs-small);
    color: var(--muted);
    margin-top: 20px;
    padding-top: 20px;
    border-top: 1px solid var(--border-subtle);
    letter-spacing: 0.05em;
}

/* =============================================
   CHECKOUT PAGE: DEFINITIVE LUXURY POLISH
============================================= */

/* 1. Fix Sidebar Width (Remove restrictive min-width) */
.woocommerce-checkout .wc-block-components-sidebar-layout .wc-block-components-sidebar {
    min-width: 0 !important; /* Kills the 340px restriction */
    flex: 1 0 0 !important; /* Allows it to fill available space */
}

/* 2. Fix Order Summary Container (Shrinks all text globally to 14px) */
.woocommerce-checkout .wc-block-components-order-summary-item {
    font-size: 14px !important; /* Shrinks all inherited text inside the summary */
    line-height: 1.5 !important;
    display: flex !important;
    flex-direction: row !important;
    align-items: flex-start !important;
    gap: 15px !important;
    padding: 20px 0 !important;
    border-bottom: 1px solid var(--border-subtle) !important;
}

/* 3. Force Product Title to be Small & Non-Breaking */
.woocommerce-checkout .wc-block-components-product-name {
    font-family: var(--font-body) !important;
    font-size: 13px !important;
    color: var(--text) !important;
    line-height: 1.3 !important;
    text-decoration: none !important;
    display: block !important;
    margin-bottom: 8px !important;
    white-space: normal !important;
    word-break: break-word !important;
}

/* 4. Clean up Description Typography */
.woocommerce-checkout .wc-block-components-order-summary-item__description {
    font-size: 14px !important;
    line-height: 1.4 !important;
    font-family: var(--font-body) !important;
    color: #C8C8C8 !important;
    word-break: break-word;
}
.woocommerce-checkout .wc-block-components-order-summary-item__description a {
    color: var(--text) !important;
    transition: color .3s ease !important;
}
.woocommerce-checkout .wc-block-components-order-summary-item__description a:hover {
    color: var(--gold) !important;
}

/* 5. Fix the Price */
.woocommerce-checkout .wc-block-components-order-summary-item__total-price {
    font-family: var(--font-body) !important;
    font-size: 16px !important;
    color: var(--gold) !important;
    margin-left: auto !important;
    white-space: nowrap !important;
}

/* 6. Order Summary Box Styling */
.woocommerce-checkout .wc-block-order-summary {
    background: var(--bg-card) !important;
    border: 1px solid var(--border-gold) !important;
    border-radius: var(--radius-lg) !important;
    padding: 30px !important;
}
.woocommerce-checkout .wc-block-order-summary-heading {
    font-family: var(--font-display) !important;
    font-size: var(--fs-h3) !important;
    color: var(--text) !important;
    margin-bottom: 25px !important;
    padding-bottom: 15px !important;
    border-bottom: 1px solid var(--border-subtle) !important;
}

/* 7. Place Order Button (Nuclear Centering Fix) */
.woocommerce-checkout .wc-block-components-button__text {
    width: auto !important;
    flex: 0 0 auto !important; /* Destroys the React inline flex: 1 */
    margin: 0 auto !important;
    display: inline-block !important; /* Breaks out of the full-width container to allow auto margins to work */
    text-align: center !important;
}
.woocommerce-checkout .wc-block-components-button {
    background: var(--gold) !important;
    color: #000 !important;
    border: none !important;
    font-family: var(--font-body) !important;
    font-size: var(--fs-small) !important;
    letter-spacing: 0.1em !important;
    text-align: center !important; /* Fallback centering */
    font-weight: 600 !important;
    border-radius: 999px !important;
    padding: 18px 40px !important;
    width: 100% !important;
    cursor: pointer !important;
    transition: transform .3s ease, box-shadow .3s ease !important;
    display: block !important;
}
.woocommerce-checkout .wc-block-components-button:hover {
    transform: translateY(-3px) !important;
    box-shadow: 0 12px 40px rgba(212,175,55,.25) !important;
}

/* 8. Form Inputs (Softer Grey Background & White Focus Glow) */
.woocommerce-checkout .form-row input.input-text,
.woocommerce-checkout .form-row input.input-tel,
.woocommerce-checkout .form-row input[type="email"],
.woocommerce-checkout .form-row input[type="url"],
.woocommerce-checkout .form-row textarea,
.woocommerce-checkout #billing_fields input,
.woocommerce-checkout #shipping_fields input,
.woocommerce-checkout .wc-block-components-address-form .wc-block-components-text-input input {
    background: #151515 !important; /* Lighter grey instead of pure black */
    border: 1px solid var(--border-light) !important;
    border-radius: 12px !important;
    padding: 14px 18px !important;
    font-family: var(--font-body) !important;
    font-size: var(--fs-body) !important;
    transition: border-color .3s ease, box-shadow .3s ease !important;
}
/* =============================================
   CHECKOUT PAGE: FINAL REFINEMENTS (Subtle Gold, No White Dots, Rounded Forms)
============================================= */

/* 1. Kill the White Dot (Targeting the placeholder SVG) */
.woocommerce-checkout .wc-block-components-order-summary-item__image {
    position: relative !important;
    overflow: hidden !important;
    min-height: 1px !important; /* Prevents layout collapse */
}
.woocommerce-checkout .wc-block-components-order-summary-item__image svg,
.woocommerce-checkout .wc-block-components-order-summary-item__image img[src*="data:image/svg"] {
    display: none !important;
    width: 0 !important;
    height: 0 !important;
    max-height: 0 !important;
    opacity: 0 !important;
    position: absolute !important;
    pointer-events: none !important;
}

/* 2. Subtle, Refined Gold Line (Replaces the bold solid border) */
.woocommerce-checkout .form-row input:focus,
.woocommerce-checkout .wc-block-components-text-input input:focus,
.woocommerce-checkout .form-row textarea:focus,
.woocommerce-checkout .select2-container--default .select2-selection--single {
    border-bottom: 2px solid rgba(212, 175, 55, 0.4) !important; /* Subtle, refined line */
    border-top: none !important;
    border-left: none !important;
    border-right: none !important;
    border-radius: 0 0 12px 12px 12px !important; /* Keeps bottom corners rounded */
    background: #1A1A1A !important; 
    color: var(--text) !important;
    outline: none !important;
    padding: 14px 18px !important;
    font-family: var(--font-body) !important;
    font-size: var(--fs-body) !important;
    box-shadow: 0 2px 0 0 rgba(212, 175, 55, 0.4) !important; /* Subtle downward glow */
}

/* 3. Force Rounded Edges on ALL Form Fields (Select2 wrappers & inputs) */
.woocommerce-checkout .select2-container--default .select2-selection,
.woocommerce-checkout .select2-container--default .select2-selection__rendered,
.woocommerce-checkout .select2-container--default .select2-selection__arrow,
.woocommerce-checkout .select2-dropdown {
    border-radius: 12px !important;
}
.woocommerce-checkout .form-row input.input-text,
.woocommerce-checkout .form-row input.input-tel,
.woocommerce-checkout .form-row input[type="email"],
.woocommerce-checkout .form-row input[type="url"],
.woocommerce-checkout .form-row input[type="text"],
.woocommerce-checkout .form-row textarea,
.woocommerce-checkout #billing_fields input,
.woocommerce-checkout #shipping_fields input {
    border-radius: 12px !important;
}

/* 4. Gold Hover for Checkout Titles & Descriptions */
.woocommerce-checkout .wc-block-components-product-name:hover,
.woocommerce-checkout .wc-block-components-order-summary-item__description:hover {
    color: var(--gold) !important;
    transition: color .3s ease !important;
}

/* Restore "Place Order" Text with Luxury Typography */
.woocommerce-checkout .wc-block-components-button__text {
    font-family: var(--font-body) !important;
    font-size: var(--fs-small) !important;
    letter-spacing: 0.1em !important;
    text-transform: uppercase !important;
    font-weight: 600 !important;
    line-height: 1 !important;
    text-align: center !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 100% !important;
}

/* =============================================
   CHECKOUT PAGE: ULTIMATE WILDCARD OVERRIDE
============================================= */

/* 1. Kill any yellow box-shadow and reset borders on focus */
.woocommerce-checkout input:focus,
.woocommerce-checkout textarea:focus {
    box-shadow: none !important;
    outline: none !important;
}

/* Country / State Select Dropdowns — Match grey input fields */
.woocommerce-checkout select {
    background: #151515 !important;
    color: var(--text) !important;
    border: 1px solid var(--border-light) !important;
    border-radius: 12px !important;
    padding: 14px 18px !important;
    height: auto !important;
    min-height: 50px !important;
    font-family: var(--font-body) !important;
    font-size: var(--fs-body) !important;
    font-weight: 400 !important;
    letter-spacing: normal !important;
    text-transform: none !important;
    cursor: pointer !important;
    transition: border-color .3s ease, box-shadow .3s ease, background .3s ease !important;
    appearance: none !important;
    -webkit-appearance: none !important;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath d='M1 1l5 5 5-5' stroke='%23B8B8B8' stroke-width='1.5' fill='none' stroke-linecap='round'/%3E%3C/svg%3E") !important;
    background-repeat: no-repeat !important;
    background-position: right 16px center !important;
    padding-right: 44px !important;
}

.woocommerce-checkout select:focus {
    background: #1A1A1A !important;
    border: none !important;
    border-bottom: 2px solid rgba(212, 175, 55, 0.4) !important;
    border-radius: 12px 12px 12px 12px !important;
    box-shadow: 0 2px 0 0 rgba(212, 175, 55, 0.4) !important;
    outline: none !important;
    color: var(--text) !important;
    /* Re-apply the chevron on focus so it doesn't disappear */
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath d='M1 1l5 5 5-5' stroke='%23B8B8B8' stroke-width='1.5' fill='none' stroke-linecap='round'/%3E%3C/svg%3E") !important;
    background-repeat: no-repeat !important;
    background-position: right 16px center !important;
    padding-right: 44px !important;
}

/* Select2 dropdown menus (if WooCommerce renders Country/State via Select2) */
.woocommerce-checkout .select2-container--default .select2-selection--single {
    background: #151515 !important;
    border: 1px solid var(--border-light) !important;
    border-radius: 12px !important;
    height: auto !important;
    min-height: 50px !important;
    padding: 8px 18px !important;
    font-family: var(--font-body) !important;
    font-size: var(--fs-body) !important;
    color: var(--text) !important;
}
.woocommerce-checkout .select2-container--default .select2-selection--single .select2-selection__rendered {
    color: var(--text) !important;
    padding-left: 0 !important;
    line-height: 32px !important;
}
.woocommerce-checkout .select2-container--default .select2-selection--single .select2-selection__arrow {
    height: 50px !important;
    right: 14px !important;
}
.woocommerce-checkout .select2-container--default .select2-selection--single .select2-selection__arrow b {
    border-color: #B8B8B8 transparent transparent transparent !important;
}
.woocommerce-checkout .select2-dropdown {
    background: #151515 !important;
    border: 1px solid var(--border-light) !important;
    border-radius: 12px !important;
    margin-top: 4px !important;
    overflow: hidden !important;
}
.woocommerce-checkout .select2-container--default .select2-results__option {
    background: #151515 !important;
    color: var(--text) !important;
    padding: 12px 18px !important;
    font-family: var(--font-body) !important;
    font-size: var(--fs-body) !important;
}
.woocommerce-checkout .select2-container--default .select2-results__option--highlighted[aria-selected] {
    background: #1A1A1A !important;
    color: var(--gold) !important;
}
.woocommerce-checkout .select2-container--default .select2-results__option[aria-selected="true"] {
    background: #1A1A1A !important;
    color: var(--gold) !important;
}

/* 3. Fix the Place Order Button Text Typography */
.woocommerce-checkout .wc-block-components-button__text {
    font-family: var(--font-body) !important;
    font-size: var(--fs-small) !important;
    letter-spacing: 0.1em !important;
    text-transform: uppercase !important;
    font-weight: 600 !important;
    line-height: 1 !important;
    text-align: center !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 100% !important;
}

/* 4. Fix Other Sidebar Buttons (Coupon, Place Order wrapper) */
.woocommerce-checkout .wc-block-components-address-form button {
    background: var(--gold) !important;
    color: #000 !important;
    border: none !important;
    font-family: var(--font-body) !important;
    font-size: var(--fs-small) !important;
    letter-spacing: 0.1em !important;
    text-transform: uppercase !important;
    font-weight: 600 !important;
    border-radius: 999px !important;
    padding: 14px 28px !important;
    cursor: pointer !important;
    transition: border-color .5s ease var(--ease), box-shadow .5s ease var(--ease), transform .5s ease var(--ease) !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 8px !important;
    position: relative !important;
    overflow: hidden !important; /* CRITICAL: Un-hides the sweep outside the button bounds */
}
/* The Luxury Light Sweep Hover Effect */
.woocommerce-checkout .wc-block-components-address-form button::after {
    content: '' !important;
    position: absolute !important;
    top: -60% !important;
    left: -60% !important;
    width: 40% !important;
    height: 220% !important;
    background: linear-gradient(to bottom right, transparent 40%, rgba(212,175,55,0.02) 46%, rgba(255,255,255,0.05) 50%, rgba(212,175,55,0.02) 52%, transparent 60%) !important;
    transform: rotate(30deg) translateX(-150%) !important;
    transition: transform .9s ease var(--ease) !important;
    z-index: 4 !important;
    pointer-events: none !important;
}
.woocommerce-checkout .wc-block-components-address-form button:hover::after {
    transform: rotate(30deg) translateX(250%) !important;
    border-color: var(--border-gold-strong) !important;
    box-shadow: 0 15px 40px rgba(212,175,55,0.08), 0 0 0 1px rgba(212,175,55,0.1) !important;
    transform: translateY(-4px) !important;
}

/* 5. The Refined Gold Line (Border-Image Trick for stubborn shadow wrappers) */
.woocommerce-checkout .form-row input:focus,
.woocommerce-checkout textarea:focus {
    border-bottom: 2px solid rgba(212, 175, 55, 0.4) !important;
    border-top: none !important;
    border-left: none !important;
    border-right: none !important;
    border-radius: 0 0 12px 12px 12px !important;
    background: #1A1A1A !important; 
    color: var(--text) !important;
    outline: none !important;
    padding: 14px 18px !important;
    border-radius: 12px !important;
    font-family: var(--font-body) !important;
    font-size: var(--fs-body) !important;
    box-shadow: 0 2px 0 0 rgba(212, 175, 55, 0.4) !important;
}

/* =============================================
   CHECKOUT: BILLING/SHIPPING FIELD UNIFICATION
   Forces ALL form spaces to match First/Last name
============================================= */

/* Nuclear catch-all: every text/tel/email/url input inside any form-row on checkout */
.woocommerce-checkout .woocommerce-billing-fields .form-row input,
.woocommerce-checkout .woocommerce-shipping-fields .form-row input,
.woocommerce-checkout .woocommerce-additional-fields .form-row input,
.woocommerce-checkout .woocommerce-billing-fields .form-row textarea,
.woocommerce-checkout .woocommerce-additional-fields .form-row textarea,
.woocommerce-checkout .form-row input.input-text,
.woocommerce-checkout .form-row input.input-tel,
.woocommerce-checkout .form-row input[type="email"],
.woocommerce-checkout .form-row input[type="url"],
.woocommerce-checkout .form-row input[type="text"],
.woocommerce-checkout .form-row textarea {
    background: #151515 !important;
    border: 1px solid var(--border-light) !important;
    border-radius: 12px !important;
    padding: 14px 18px !important;
    font-family: var(--font-body) !important;
    font-size: var(--fs-body) !important;
    color: var(--text) !important;
    width: 100% !important;
    box-sizing: border-box !important;
    transition: border-color .3s ease, box-shadow .3s ease, background .3s ease !important;
    -webkit-appearance: none !important;
    appearance: none !important;
}

/* Unified focus state — subtle gold bottom accent on ALL fields */
.woocommerce-checkout .woocommerce-billing-fields .form-row input:focus,
.woocommerce-checkout .woocommerce-shipping-fields .form-row input:focus,
.woocommerce-checkout .woocommerce-additional-fields .form-row input:focus,
.woocommerce-checkout .woocommerce-billing-fields .form-row textarea:focus,
.woocommerce-checkout .woocommerce-additional-fields .form-row textarea:focus,
.woocommerce-checkout .form-row input.input-text:focus,
.woocommerce-checkout .form-row input.input-tel:focus,
.woocommerce-checkout .form-row input[type="email"]:focus,
.woocommerce-checkout .form-row input[type="url"]:focus,
.woocommerce-checkout .form-row input[type="text"]:focus,
.woocommerce-checkout .form-row textarea:focus {
    background: #1A1A1A !important;
    border: none !important;
    border-bottom: 2px solid rgba(212, 175, 55, 0.4) !important;
    border-radius: 12px 12px 12px 12px !important;
    box-shadow: 0 2px 0 0 rgba(212, 175, 55, 0.4) !important;
    outline: none !important;
    color: var(--text) !important;
}

/* Specifically nail the stubborn fields by ID if class selectors fail */
.woocommerce-checkout #billing_company,
.woocommerce-checkout #billing_address_1,
.woocommerce-checkout #billing_address_2,
.woocommerce-checkout #billing_city,
.woocommerce-checkout #billing_postcode,
.woocommerce-checkout #billing_phone,
.woocommerce-checkout #billing_email,
.woocommerce-checkout #shipping_company,
.woocommerce-checkout #shipping_address_1,
.woocommerce-checkout #shipping_address_2,
.woocommerce-checkout #shipping_city,
.woocommerce-checkout #shipping_postcode,
.woocommerce-checkout #order_comments {
    background: #151515 !important;
    border: 1px solid var(--border-light) !important;
    border-radius: 12px !important;
    padding: 14px 18px !important;
    font-family: var(--font-body) !important;
    font-size: var(--fs-body) !important;
    color: var(--text) !important;
    width: 100% !important;
    box-sizing: border-box !important;
}

/* Focus state for those same ID-targeted fields */
.woocommerce-checkout #billing_company:focus,
.woocommerce-checkout #billing_address_1:focus,
.woocommerce-checkout #billing_address_2:focus,
.woocommerce-checkout #billing_city:focus,
.woocommerce-checkout #billing_postcode:focus,
.woocommerce-checkout #billing_phone:focus,
.woocommerce-checkout #billing_email:focus,
.woocommerce-checkout #shipping_company:focus,
.woocommerce-checkout #shipping_address_1:focus,
.woocommerce-checkout #shipping_address_2:focus,
.woocommerce-checkout #shipping_city:focus,
.woocommerce-checkout #shipping_postcode:focus,
.woocommerce-checkout #order_comments:focus {
    background: #1A1A1A !important;
    border: none !important;
    border-bottom: 2px solid rgba(212, 175, 55, 0.4) !important;
    border-radius: 12px 12px 12px 12px !important;
    box-shadow: 0 2px 0 0 rgba(212, 175, 55, 0.4) !important;
    outline: none !important;
    color: var(--text) !important;
}

/* Kill any residual white/background-color overrides from WooCommerce core or plugins */
.woocommerce-checkout .form-row .input-text,
.woocommerce-checkout .form-row .input-tel,
.woocommerce-checkout p.form-row input,
.woocommerce-checkout p.form-row textarea {
    background: #151515 !important;
    border: 1px solid var(--border-light) !important;
    border-radius: 12px !important;
    padding: 14px 18px !important;
    font-family: var(--font-body) !important;
    font-size: var(--fs-body) !important;
    color: var(--text) !important;
}

/* =============================================
   CHECKOUT BLOCKS: WHITE EDGE KILL + GOLD SELECT
============================================= */

/* 1. Kill white edges on the select WRAPPER (the element actually showing the border) */
.woocommerce-checkout .wc-block-components-select,
.woocommerce-checkout .wc-block-components-select__container,
.woocommerce-checkout .wc-block-components-country-input,
.woocommerce-checkout .wc-block-components-state-input,
.woocommerce-checkout .wc-block-components-address-form .wc-block-components-select {
    border: 1px solid var(--border-light) !important;
    outline: none !important;
    box-shadow: none !important;
}

/* 2. Target the actual <select> inside the block component */
.woocommerce-checkout .wc-block-components-select select,
.woocommerce-checkout .wc-block-components-select__container select,
.woocommerce-checkout .wc-block-components-country-input select,
.woocommerce-checkout .wc-block-components-state-input select {
    background: #151515 !important;
    color: var(--text) !important;
    border: none !important;
    border-radius: 0 !important;
    padding: 14px 18px !important;
    font-family: var(--font-body) !important;S
    font-size: var(--fs-body) !important;
    font-weight: 400 !important;
    letter-spacing: normal !important;
    text-transform: none !important;
    cursor: pointer !important;
    appearance: none !important;
    -webkit-appearance: none !important;
    outline: none !important;
    box-shadow: none !important;
    width: 100% !important;
}

/* 3. Focus state — no white glow, gold bottom line only */
.woocommerce-checkout .wc-block-components-select select:focus,
.woocommerce-checkout .wc-block-components-country-input select:focus,
.woocommerce-checkout .wc-block-components-state-input select:focus {
    outline: none !important;
    box-shadow: none !important;
    border: none !important;
    background: #1A1A1A !important;
    color: var(--text) !important;
}

/* Wrapper focus — gold bottom accent, no white */
.woocommerce-checkout .wc-block-components-select:focus-within,
.woocommerce-checkout .wc-block-components-select__container:focus-within,
.woocommerce-checkout .wc-block-components-country-input:focus-within,
.woocommerce-checkout .wc-block-components-state-input:focus-within {
    border: none !important;
    border-bottom: 2px solid rgba(212, 175, 55, 0.4) !important;
    border-radius: 12px 12px 12px 12px !important;
    box-shadow: 0 2px 0 0 rgba(212, 175, 55, 0.4) !important;
    outline: none !important;
}

/* 4. Kill any pseudo-element borders (::before / ::after on the wrapper) */
.woocommerce-checkout .wc-block-components-select::before,
.woocommerce-checkout .wc-block-components-select::after,
.woocommerce-checkout .wc-block-components-select__container::before,
.woocommerce-checkout .wc-block-components-select__container::after,
.woocommerce-checkout .wc-block-components-country-input::before,
.woocommerce-checkout .wc-block-components-country-input::after,
.woocommerce-checkout .wc-block-components-state-input::before,
.woocommerce-checkout .wc-block-components-state-input::after {
    display: none !important;
    border: none !important;
    box-shadow: none !important;
    outline: none !important;
}

/* 5. Gold option highlight — native <option> elements */
.woocommerce-checkout .wc-block-components-select select option,
.woocommerce-checkout .wc-block-components-country-input select option,
.woocommerce-checkout .wc-block-components-state-input select option {
    background: #151515 !important;
    color: var(--text) !important;
    padding: 10px 18px !important;
}

.woocommerce-checkout .wc-block-components-select select option:checked,
.woocommerce-checkout .wc-block-components-country-input select option:checked,
.woocommerce-checkout .wc-block-components-state-input select option:checked {
    background: rgba(212, 175, 55, 0.15) !important;
    color: var(--gold) !important;
    font-weight: 600 !important;
}

.woocommerce-checkout .wc-block-components-select select option:hover,
.woocommerce-checkout .wc-block-components-country-input select option:hover,
.woocommerce-checkout .wc-block-components-state-input select option:hover {
    background: rgba(212, 175, 55, 0.1) !important;
    color: var(--gold) !important;
}

/* 6. Nuclear: kill ALL possible outline/box-shadow on ANY element inside the form */
.woocommerce-checkout .wc-block-components-address-form *:focus {
    outline: none !important;
    box-shadow: none !important;
}

/* 7. If the white edge is an SVG chevron icon, neutralize it */
.woocommerce-checkout .wc-block-components-select svg,
.woocommerce-checkout .wc-block-components-country-input svg,
.woocommerce-checkout .wc-block-components-state-input svg {
    fill: #B8B8B8 !important;
    stroke: #B8B8B8 !important;
    filter: none !important;
}

/* =============================================
   CHECKOUT: ORANGE BAR → GOLD (Final Fix)
============================================= */

/* 1. Force dark color scheme on selects — 
   this tells Chrome to use dark native UI instead of orange highlight */
.woocommerce-checkout .wc-block-components-select select,
.woocommerce-checkout .wc-block-components-country-input select,
.woocommerce-checkout .wc-block-components-state-input select,
.woocommerce-checkout .wc-block-components-select,
.woocommerce-checkout .wc-block-components-country-input,
.woocommerce-checkout .wc-block-components-state-input {
    color-scheme: dark !important;
}

/* 2. If WooCommerce blocks render a CUSTOM dropdown list (not native <option>),
   target the React-rendered option elements */
.woocommerce-checkout .wc-block-components-select__listbox,
.woocommerce-checkout .wc-block-components-select__list {
    background: #0D0D0D !important;
    border: 1px solid var(--border-light) !important;
    border-radius: 12px !important;
    box-shadow: 0 12px 40px rgba(0, 0, 0, 0.6) !important;
    overflow: hidden !important;
    padding: 6px 0 !important;
}

.woocommerce-checkout .wc-block-components-select__option,
.woocommerce-checkout [role="option"],
.woocommerce-checkout [role="listbox"] li {
    background: transparent !important;
    color: var(--text) !important;
    padding: 12px 18px !important;
    font-family: var(--font-body) !important;
    font-size: var(--fs-body) !important;
    transition: background .15s ease, color .15s ease !important;
}

/* Hover — subtle gold wash */
.woocommerce-checkout .wc-block-components-select__option:hover,
.woocommerce-checkout [role="option"]:hover,
.woocommerce-checkout [role="listbox"] li:hover {
    background: rgba(212, 175, 55, 0.1) !important;
    color: var(--gold) !important;
}

/* Already selected option — slightly stronger gold */
.woocommerce-checkout .wc-block-components-select__option.is-selected,
.woocommerce-checkout .wc-block-components-select__option[aria-selected="true"],
.woocommerce-checkout [role="option"][aria-selected="true"] {
    background: rgba(212, 175, 55, 0.15) !important;
    color: var(--gold) !important;
    font-weight: 600 !important;
}

/* Active/pressed state */
.woocommerce-checkout .wc-block-components-select__option:active,
.woocommerce-checkout [role="option"]:active {
    background: rgba(212, 175, 55, 0.2) !important;
    color: var(--gold) !important;
}

/* 3. Native <option> fallback — for browsers that respect it */
.woocommerce-checkout select option {
    background: #0D0D0D !important;
    color: var(--text) !important;
}
.woocommerce-checkout select option:checked,
.woocommerce-checkout select option:hover {
    background: rgba(212, 175, 55, 0.15) !important;
    color: var(--gold) !important;
}

/* 4. Kill any remaining orange/blue system highlight on the select itself */
.woocommerce-checkout .wc-block-components-select select::-webkit-selection,
.woocommerce-checkout select::selection {
    background: rgba(212, 175, 55, 0.2) !important;
    color: var(--gold) !important;
}

/* =============================================
   CHECKOUT: FINAL GOLD HIGHLIGHT FIX
   dark scheme (kills orange) + accent override (kills blue)
============================================= */

/* 1. Override EVERY WordPress accent variable variant to gold */
.woocommerce-checkout,
.woocommerce-checkout .wc-block-components-select,
.woocommerce-checkout .wc-block-components-country-input,
.woocommerce-checkout .wc-block-components-state-input {
    --wp-components-color-accent: rgba(212, 175, 55, 0.15) !important;
    --wp-components-color-accent-darker-10: rgba(212, 175, 55, 0.2) !important;
    --wp-components-color-accent-darker-20: rgba(212, 175, 55, 0.3) !important;
    --wp-components-color-accent-hover: rgba(212, 175, 55, 0.2) !important;
    --wp-admin-theme-color: rgba(212, 175, 55, 0.15) !important;
    --wp-admin-theme-color-darker-10: rgba(212, 175, 55, 0.2) !important;
    --wp-admin-theme-color-darker-20: rgba(212, 175, 55, 0.3) !important;
    accent-color: var(--gold) !important;
}

/* 2. Keep dark scheme to prevent orange, force dark background */
.woocommerce-checkout .wc-block-components-select select,
.woocommerce-checkout .wc-block-components-country-input select,
.woocommerce-checkout .wc-block-components-state-input select {
    color-scheme: dark !important;
    background: #151515 !important;
    color: var(--text) !important;
}

/* 3. Also set dark scheme on the wrapper so the dropdown inherits it */
.woocommerce-checkout .wc-block-components-select,
.woocommerce-checkout .wc-block-components-country-input,
.woocommerce-checkout .wc-block-components-state-input {
    color-scheme: dark !important;
}

/* 4. If WooCommerce blocks inject inline background on hovered options,
   this JS snippet overrides it at DOM level */

/* =============================================
   LOGO TYPOGRAPHY: Montserrat (Fixes 99 Baseline)
============================================= */

/* Header Logo Text */
.ra99-logo-text {
    font-family: 'Montserrat', sans-serif !important;
    font-weight: 500 !important;
    letter-spacing: 0.15em !important;
    text-transform: uppercase !important;
}

/* Footer Logo Text */
.ra99-footer-logo h3 {
    font-family: 'Montserrat', sans-serif !important;
    font-weight: 500 !important;
    letter-spacing: 0.15em !important;
    text-transform: uppercase !important;
}

/* Optional: If the mobile overlay also uses text, keep it consistent */
.ra99-overlay-brand span {
    font-family: 'Montserrat', sans-serif !important;
    letter-spacing: 0.15em !important;
}

/* =============================================
   EMPTY CART STATE: DOM INJECTION + REACT NUKE
============================================= */

/* 1. Nuke React's default empty cart block (Kills emoji & default text) */
.woocommerce-cart .wp-block-woocommerce-empty-cart-block,
.woocommerce-cart .wc-block-cart__empty-cart {
    display: none !important;
    height: 0 !important;
    overflow: hidden !important;
}

/* 2. Nuke the "New in store" block */
.woocommerce-cart [data-block-name="woocommerce/product-new"] {
    display: none !important;
    visibility: hidden !important;
    height: 0 !important;
    max-height: 0 !important;
    overflow: hidden !important;
    margin: 0 !important;
    padding: 0 !important;
}

/* 3. Our Custom Injected Container (Positioned correctly at the top) */
.ra99-custom-empty-cart {
    background: var(--bg-primary);
    color: var(--text);
    text-align: center;
    padding: 120px 20px 120px; /* Top padding pushes it below header */
    min-height: 60vh;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
}

/* 4. Title */
.ra99-custom-empty-cart .ra99-empty-title {
    font-family: var(--font-display);
    font-size: var(--fs-h3);
    color: var(--text);
    margin-bottom: 20px;
    font-weight: 400;
    cursor: default;
    transition: color 0.4s ease;
}
.ra99-custom-empty-cart .ra99-empty-title:hover {
    color: var(--gold);
}

/* 5. Description */
.ra99-custom-empty-cart .ra99-empty-desc {
    font-family: var(--font-body);
    font-size: var(--fs-body);
    color: var(--muted);
    margin-bottom: 50px;
    line-height: 1.6;
}

/* 6. The Gold "Return to Collections" Pill */
.ra99-custom-empty-cart .ra99-gold-pill {
    display: inline-block;
    background: var(--gold);
    color: #000;
    font-family: var(--font-body);
    font-size: var(--fs-small);
    letter-spacing: 0.1em;
    text-transform: uppercase;
    font-weight: 600;
    border-radius: 999px;
    padding: 18px 40px;
    text-decoration: none;
    position: relative;
    overflow: hidden;
    transition: transform .5s ease, box-shadow .5s ease, background .3s ease;
    cursor: pointer;
}

/* The Luxury Light Sweep */
.ra99-custom-empty-cart .ra99-gold-pill::after {
    content: '';
    position: absolute;
    top: -60%;
    left: -60%;
    width: 40%;
    height: 220%;
    background: linear-gradient(to bottom right, transparent 40%, rgba(212,175,55,0.02) 46%, rgba(255,255,255,0.15) 50%, rgba(212,175,55,0.02) 52%, transparent 60%);
    transform: rotate(30deg) translateX(-150%);
    transition: transform .9s ease;
    z-index: 4;
    pointer-events: none;
}

.ra99-custom-empty-cart .ra99-gold-pill:hover {
    transform: translateY(-4px);
    box-shadow: 0 15px 40px rgba(212,175,55,.35);
    background: #E5C544;
}
.ra99-custom-empty-cart .ra99-gold-pill:hover::after {
    transform: rotate(30deg) translateX(250%);
}

/* =============================================
   ADDED TO CART NOTICE: LUXURY SKIN
============================================= */

/* 1. Container - Dark Grey with Subtle Gold Edge (Block Version) */
.wc-block-components-notice-banner.is-success {
    background-color: #151515 !important;
    border-left: none !important; /* Removes default WC green/left border */
    border: 1px solid rgba(212, 175, 55, 0.2) !important;
    border-radius: 12px !important;
    padding: 18px 25px !important;
    color: var(--text) !important;
    margin-bottom: 30px !important;
    font-family: var(--font-body) !important;
    font-size: var(--fs-body) !important;
    
    /* --- ADD THESE 4 LINES --- */
    outline: none !important;               /* Kills browser focus rings */
    box-shadow: none !important;            /* Kills React's blue shadow */
    transition: none !important;            /* Stops the slow fade transition */
    animation: none !important;             /* Kills any slide-in shadow animations */
}

/* Kill any hidden pseudo-element borders on the notice */
.wc-block-components-notice-banner::before,
.wc-block-components-notice-banner::after {
    display: none !important;
    border: none !important;
    box-shadow: none !important;
    outline: none !important;
}

/* Container - Classic Version Fallback */
.woocommerce-message {
    background-color: #151515 !important;
    border-top-color: rgba(212, 175, 55, 0.2) !important;
    border-radius: 12px !important;
    padding: 18px 25px !important;
    color: var(--text) !important;
    margin-bottom: 30px !important;
}

/* 2. The "View Cart" Gold Pill Button (Block Version) */
.wc-block-components-notice-banner .wc-block-components-button {
    background: var(--gold) !important;
    color: #000 !important;
    border: none !important;
    font-family: var(--font-body) !important;
    font-size: var(--fs-small) !important;
    letter-spacing: 0.1em !important;
    text-transform: uppercase !important;
    font-weight: 600 !important;
    border-radius: 999px !important;
    padding: 12px 28px !important;
    text-decoration: none !important;
    display: inline-block !important;
    position: relative !important;
    overflow: hidden !important;
    transition: transform .5s ease, box-shadow .5s ease, background .3s ease !important;
    line-height: 1 !important;
}

/* The Luxury Light Sweep */
.wc-block-components-notice-banner .wc-block-components-button::after {
    content: '' !important;
    position: absolute !important;
    top: -60% !important;
    left: -60% !important;
    width: 40% !important;
    height: 220% !important;
    background: linear-gradient(to bottom right, transparent 40%, rgba(212,175,55,0.02) 46%, rgba(255,255,255,0.15) 50%, rgba(212,175,55,0.02) 52%, transparent 60%) !important;
    transform: rotate(30deg) translateX(-150%) !important;
    transition: transform .9s ease !important;
    z-index: 4 !important;
    pointer-events: none !important;
}

.wc-block-components-notice-banner .wc-block-components-button:hover {
    transform: translateY(-3px) !important;
    box-shadow: 0 12px 30px rgba(212,175,55,.35) !important;
    background: #E5C544 !important;
}
.wc-block-components-notice-banner .wc-block-components-button:hover::after {
    transform: rotate(30deg) translateX(250%) !important;
}

/* 3. The "View Cart" Gold Pill Button (Classic Version Fallback) */
.woocommerce-message .button.wc-forward {
    background: var(--gold) !important;
    color: #000 !important;
    border: none !important;
    font-family: var(--font-body) !important;
    font-size: var(--fs-small) !important;
    letter-spacing: 0.1em !important;
    text-transform: uppercase !important;
    font-weight: 600 !important;
    border-radius: 999px !important;
    padding: 12px 28px !important;
    text-decoration: none !important;
    display: inline-block !important;
    transition: transform .3s ease, box-shadow .3s ease !important;
}
.woocommerce-message .button.wc-forward:hover {
    transform: translateY(-3px) !important;
    box-shadow: 0 12px 30px rgba(212,175,55,.35) !important;
    background: #E5C544 !important;
    color: #000 !important;
}

/* 4. Kill the default WooCommerce "X" close button if it looks out of place */
.wc-block-components-notice-banner .wc-block-components-notice-banner__dismiss {
    color: var(--muted) !important;
    transition: color .3s ease !important;
}
.wc-block-components-notice-banner .wc-block-components-notice-banner__dismiss:hover {
    color: var(--gold) !important;
}

/* =============================================
   SHOP PAGE DAY/NIGHT WIPE EFFECT (Matched to Legends)
============================================= */

/* 1. Container Setup & Light Sweep */
.ra99-product-img {
    position: relative;
    overflow: hidden;
}
.ra99-product-img::after {
    content: '';
    position: absolute;
    top: -60%;
    left: -60%;
    width: 40%;
    height: 220%;
    background: linear-gradient(to bottom right, transparent 40%, rgba(255,255,255,.02) 46%, rgba(255,255,255,.07) 50%, rgba(255,255,255,.02) 54%, transparent 60%);
    transform: rotate(30deg) translateX(-150%);
    transition: transform .9s ease var(--ease);
    z-index: 4;
    pointer-events: none;
}
.ra99-product-img:hover::after {
    transform: rotate(30deg) translateX(250%);
}

/* 2. Day Image - Subtle Zoom on Hover */
.ra99-product-img .ra99-img-day {
    display: block;
    width: 100%;
    height: auto;
    object-fit: cover;
    transition: transform 1s ease var(--ease);
}
.ra99-product-img:hover .ra99-img-day {
    transform: scale(1.02);
}

/* 3. Night Image - Right-to-Left Wipe on Hover */
.ra99-product-img .ra99-img-night {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
    clip-path: inset(0 100% 0 0); /* Hidden off to the left */
    transition: clip-path .7s var(--ease);
    will-change: clip-path;
    pointer-events: none;
    z-index: 3;
}
.ra99-product-img:hover .ra99-img-night {
    clip-path: inset(0 0% 0 0);  /* Wipes in from right to left */
}

/* =============================================
   SINGLE PRODUCT PAGE: DAY/NIGHT WIPE & SWEEP
============================================= */

/* 1. Force Container */
.ra99-single-product-img {
    position: relative !important;
    overflow: hidden !important;
    width: 100%;
}

/* 2. Light Sweep */
.ra99-single-product-img::after {
    content: '';
    position: absolute;
    top: -60%;
    left: -60%;
    width: 40%;
    height: 220%;
    background: linear-gradient(to bottom right, transparent 40%, rgba(255,255,255,.02) 46%, rgba(255,255,255,.07) 50%, rgba(255,255,255,.02) 54%, transparent 60%);
    transform: rotate(30deg) translateX(-150%);
    transition: transform .9s ease var(--ease);
    z-index: 5;
    pointer-events: none;
}
.ra99-single-product-img:hover::after {
    transform: rotate(30deg) translateX(250%);
}

/* 3. Day Image Setup */
.ra99-single-product-img .ra99-img-day {
    display: block !important;
    width: 100% !important;
    height: auto !important;
    object-fit: cover !important;
    position: relative !important;
    z-index: 1 !important;
    transition: transform 1s ease var(--ease) !important;
}
.ra99-single-product-img:hover .ra99-img-day {
    transform: scale(1.02) !important;
}

/* 4. Night Image Wipe Effect (Forces height to match Day image) */
.ra99-single-product-img .ra99-img-night {
    position: absolute !important;
    top: 0 !important;
    left: 0 !important;
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
    z-index: 2 !important;
    pointer-events: none !important;
    opacity: 1 !important; /* Kills any default fade */
    clip-path: inset(0 100% 0 0) !important;
    transition: clip-path .7s var(--ease) !important;
    will-change: clip-path !important;
}
.ra99-single-product-img:hover .ra99-img-night {
    clip-path: inset(0 0% 0 0) !important;
}

/* =============================================
   CHECKOUT BLOCKS: MATCHED TO CONTACT US PAGE
============================================= */

/* 1. Text Inputs & Textareas (Match Contact Us Unfocused State) */
.woocommerce-checkout .wc-block-components-text-input input,
.woocommerce-checkout .form-row input.input-text,
.woocommerce-checkout .form-row input.input-tel,
.woocommerce-checkout .form-row input[type="email"],
.woocommerce-checkout .form-row input[type="text"],
.woocommerce-checkout .form-row textarea {
    background: rgba(255,255,255,.03) !important;
    border: 1px solid var(--border-light) !important;
    border-radius: 16px !important;
    padding: 16px 20px !important;
    font-family: var(--font-body) !important;
    font-size: var(--fs-body) !important;
    color: var(--text) !important;
    box-shadow: none !important;
    outline: none !important;
    transition: border-color .3s ease, box-shadow .3s ease !important;
}

/* 2. Text Inputs & Textareas Focus (Match Contact Us Focus State) */
.woocommerce-checkout .wc-block-components-text-input input:focus,
.woocommerce-checkout .form-row input.input-text:focus,
.woocommerce-checkout .form-row input.input-tel:focus,
.woocommerce-checkout .form-row input[type="email"]:focus,
.woocommerce-checkout .form-row input[type="text"]:focus,
.woocommerce-checkout .form-row textarea:focus {
    border-color: var(--border-gold-strong) !important;
    box-shadow: 0 0 0 3px rgba(212,175,55,.08) !important;
    background: rgba(255,255,255,.03) !important;
}

/* 3. Select Wrappers (Match Contact Us Unfocused State) */
.woocommerce-checkout .wc-block-components-select,
.woocommerce-checkout .wc-block-components-select__container,
.woocommerce-checkout .wc-block-components-country-input,
.woocommerce-checkout .wc-block-components-state-input {
    border: 1px solid var(--border-light) !important;
    border-radius: 16px !important;
    outline: none !important;
    box-shadow: none !important;
    transition: border-color .3s ease, box-shadow .3s ease !important;
}

/* 4. Select Wrappers Focus (Match Contact Us Focus State - Outer Glow) */
.woocommerce-checkout .wc-block-components-select:focus-within,
.woocommerce-checkout .wc-block-components-select__container:focus-within,
.woocommerce-checkout .wc-block-components-country-input:focus-within,
.woocommerce-checkout .wc-block-components-state-input:focus-within {
    border-color: var(--border-gold-strong) !important;
    box-shadow: 0 0 0 3px rgba(212,175,55,.08) !important;
}

/* 5. Target the actual <select> inside (Keep clean) */
.woocommerce-checkout .wc-block-components-select select,
.woocommerce-checkout .wc-block-components-select__container select,
.woocommerce-checkout .wc-block-components-country-input select,
.woocommerce-checkout .wc-block-components-state-input select {
    background: rgba(255,255,255,.03) !important;
    color: var(--text) !important;
    border: none !important;
    border-radius: 16px !important;
    padding: 16px 20px !important;
    font-family: var(--font-body) !important;
    font-size: var(--fs-body) !important;
    font-weight: 400 !important;
    letter-spacing: normal !important;
    text-transform: none !important;
    cursor: pointer !important;
    appearance: none !important;
    -webkit-appearance: none !important;
    outline: none !important;
    box-shadow: none !important;
    width: 100% !important;
}

/* 6. Kill any pseudo-element borders */
.woocommerce-checkout .wc-block-components-select::before,
.woocommerce-checkout .wc-block-components-select::after,
.woocommerce-checkout .wc-block-components-select__container::before,
.woocommerce-checkout .wc-block-components-select__container::after,
.woocommerce-checkout .wc-block-components-country-input::before,
.woocommerce-checkout .wc-block-components-country-input::after,
.woocommerce-checkout .wc-block-components-state-input::before,
.woocommerce-checkout .wc-block-components-state-input::after {
    display: none !important;
    border: none !important;
    box-shadow: none !important;
    outline: none !important;
}

/* 7. Gold option highlight */
.woocommerce-checkout .wc-block-components-select select option,
.woocommerce-checkout .wc-block-components-country-input select option,
.woocommerce-checkout .wc-block-components-state-input select option {
    background: #151515 !important;
    color: var(--text) !important;
    padding: 10px 18px !important;
}
.woocommerce-checkout .wc-block-components-select select option:checked,
.woocommerce-checkout .wc-block-components-country-input select option:checked,
.woocommerce-checkout .wc-block-components-state-input select option:checked {
    background: rgba(212, 175, 55, 0.15) !important;
    color: var(--gold) !important;
    font-weight: 600 !important;
}
.woocommerce-checkout .wc-block-components-select select option:hover,
.woocommerce-checkout .wc-block-components-country-input select option:hover,
.woocommerce-checkout .wc-block-components-state-input select option:hover {
    background: rgba(212, 175, 55, 0.1) !important;
    color: var(--gold) !important;
}

/* =============================================
   SINGLE PRODUCT BREADCRUMB STYLING
============================================= */
.woocommerce-breadcrumb {
    font-family: var(--font-body) !important;
    font-size: var(--fs-small) !important;
    color: var(--muted) !important;
    letter-spacing: 0.05em !important;
    margin-bottom: 30px !important;
    text-transform: uppercase !important;
}
.woocommerce-breadcrumb a {
    color: var(--muted) !important;
    transition: color .3s ease !important;
    text-decoration: none !important;
}
.woocommerce-breadcrumb a:hover {
    color: var(--gold) !important;
}
.woocommerce-breadcrumb .separator {
    color: rgba(255,255,255,.2) !important;
    margin: 0 8px !important;
}

/* =============================================
   FIX: KILL HERO DRIFT ON ABOUT US PAGE
   (Prevents Chrome object-fit rendering tear/line)
============================================= */
body.page-template-page-about-us .ra99-hero-image img {
    animation: none !important;
    transform: none !important;
}

/* =============================================
   FIX: KILL HERO DRIFT ON CONTACT US PAGE
   (Prevents Chrome object-fit rendering tear/line)
============================================= */
body.page-template-page-contact-us .ra99-hero-image img {
    animation: none !important;
    transform: none !important;
}



/* =============================================
   ABOUT US: GOLD EYEBROW TEXT IN STORY SECTIONS
============================================= */
.ra99-story-left span.ra99-reveal {
    color: var(--gold) !important;
}

/* =============================================
   HOMEPAGE SIGNATURE IMAGE HEIGHT OVERRIDE
============================================= */
body.home .ra99-signature-image {
    height: 600px !important;
    max-height: 600px !important;
}
body.home .ra99-signature-image .ra99-sig-day,
body.home .ra99-signature-image .ra99-sig-night {
    height: 600px !important;
    max-height: 600px !important;
}

/* =============================================
   MUSIC & SPORTS PAGES: DAY/NIGHT WIPE & SWEEP
============================================= */

/* 1. Light Sweep Effect on Container */
.ra99-artist-image::after {
    content: ;
    position: absolute;
    top: -60%;
    left: -60%;
    width: 40%;
    height: 220%;
    background: linear-gradient(to bottom right, transparent 40%, rgba(255,255,255,.02) 46%, rgba(255,255,255,.07) 50%, rgba(255,255,255,.02) 54%, transparent 60%);
    transform: rotate(30deg) translateX(-150%);
    transition: transform .9s ease var(--ease);
    z-index: 5;
    pointer-events: none;
}
.ra99-glass-card:hover .ra99-artist-image::after {
    transform: rotate(30deg) translateX(250%);
}

/* 2. Day Image - Subtle Zoom */
.ra99-artist-image .ra99-img-day {
    transition: transform 1s ease var(--ease) !important;
}
.ra99-glass-card:hover .ra99-artist-image .ra99-img-day {
    transform: scale(1.02) !important;
}

/* 3. Night Image - Right-to-Left Wipe (Overrides default opacity fade) */
.ra99-artist-image .ra99-img-night {
    opacity: 1 !important; /* Kill the fade */
    clip-path: inset(0 100% 0 0) !important;
    transition: clip-path .7s var(--ease) !important;
    will-change: clip-path !important;
}
/* Triggers on mouse hover AND manual mobile toggle button */
.ra99-glass-card:hover .ra99-artist-image .ra99-img-night,
.ra99-glass-card.ra99-night-on .ra99-artist-image .ra99-img-night {
    clip-path: inset(0 0% 0 0) !important;
}

/* =============================================
   GLOBAL MOBILE TOGGLE: WIPE EFFECT FOR ALL PAGES
============================================= */

/* Shop / Collections Page */
.ra99-product-tile.ra99-night-on .ra99-img-night {
    clip-path: inset(0 0% 0 0) !important;
}

/* Single Product Page */
.ra99-single-product-img.ra99-night-on .ra99-img-night {
    clip-path: inset(0 0% 0 0) !important;
}

/* Related Products (Bottom of Single Product) */
.ra99-related-tile.ra99-night-on .ra99-img-night {
    clip-path: inset(0 0% 0 0) !important;
}
