/* ==========================================================
   DigiKash — Luxury Private Wealth Theme
   BEM prefix: .gdk-
   ========================================================== */

:root{
  --bg-base:#0A0A0F;
  --bg-elev:#16161E;
  --bg-card:#1C1C26;
  --bg-deep:#06060A;
  --hairline:rgba(212,175,55,0.18);
  --hairline-strong:rgba(212,175,55,0.42);
  --gold:#D4AF37;
  --gold-light:#F5E6A8;
  --gold-deep:#B8860B;
  --gold-rose:#E8B4A0;
  --gold-grad:linear-gradient(135deg,#F5E6A8 0%,#D4AF37 45%,#B8860B 100%);
  --gold-grad-soft:linear-gradient(135deg,rgba(245,230,168,.18) 0%,rgba(212,175,55,.22) 45%,rgba(184,134,11,.18) 100%);
  --text:#F4EDD8;
  --text-mute:#B8B2A0;
  --text-dim:#6B665A;
  --success:#6DBE7E;
  --error:#C75B5B;
  --serif:'Cormorant Garamond', 'Times New Roman', serif;
  --caps:'Cinzel', serif;
  --sans:'Manrope','Inter','Helvetica Neue',Arial,sans-serif;
  --r-card:4px;
  --r-btn:2px;
  --r-pill:999px;
}

/* ---------- base ---------- */
*{box-sizing:border-box}
html,body{margin:0;padding:0}
html{scroll-behavior:smooth}
body{
  font-family:var(--sans);
  font-weight:300;
  font-size:16px;
  line-height:1.6;
  color:var(--text);
  background:var(--bg-base);
  -webkit-font-smoothing:antialiased;
  text-rendering:optimizeLegibility;
  overflow-x:hidden;
}
img{max-width:100%;display:block}
a{color:inherit;text-decoration:none}
button{font-family:inherit;border:0;background:none;color:inherit;cursor:pointer}
input,textarea,select{font-family:inherit;color:inherit}
::selection{background:rgba(212,175,55,.35);color:#fff}

/* Film grain noise — SVG data URI */
body::before{
  content:'';
  position:fixed;inset:0;
  pointer-events:none;
  z-index:1;
  opacity:.06;
  mix-blend-mode:overlay;
  background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='220' height='220'><filter id='n'><feTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='2' stitchTiles='stitch'/><feColorMatrix values='0 0 0 0 0.96  0 0 0 0 0.93  0 0 0 0 0.85  0 0 0 0.55 0'/></filter><rect width='100%' height='100%' filter='url(%23n)'/></svg>");
}

/* ---------- type ---------- */
h1,h2,h3,h4,h5,h6,.gdk-serif{font-family:var(--serif);font-weight:500;letter-spacing:.005em;color:var(--text)}
.gdk-eyebrow{
  font-family:var(--caps);
  font-weight:500;
  font-size:11px;
  letter-spacing:.32em;
  text-transform:uppercase;
  color:var(--gold);
}
.gdk-eyebrow--mute{color:var(--text-mute)}
.gdk-h-display{font-size:clamp(44px,5.6vw,82px);line-height:1.02;letter-spacing:-.005em;margin:0}
.gdk-h-section{font-size:clamp(36px,3.8vw,58px);line-height:1.06;margin:0}
.gdk-h-card{font-size:28px;line-height:1.15;margin:0}
.gdk-italic{font-style:italic;font-weight:500}
.gdk-gold-text{
  background:var(--gold-grad);
  -webkit-background-clip:text;background-clip:text;
  -webkit-text-fill-color:transparent;color:transparent;
}
.gdk-lead{color:var(--text-mute);font-weight:300;font-size:17px;line-height:1.7;max-width:60ch}

/* ---------- layout helpers ---------- */
.gdk-container{max-width:1320px;margin:0 auto;padding:0 28px;position:relative;z-index:2}
.gdk-section{padding:120px 0;position:relative}
@media (max-width:768px){.gdk-section{padding:72px 0}}
.gdk-divider{height:1px;background:linear-gradient(90deg,transparent,var(--hairline) 20%,var(--hairline) 80%,transparent);width:100%}

/* deco fan corner */
.gdk-fan{position:absolute;width:280px;height:280px;pointer-events:none;opacity:.55;z-index:1}
.gdk-fan svg{width:100%;height:100%;display:block}
.gdk-fan--tl{top:-10px;left:-10px}
.gdk-fan--tr{top:-10px;right:-10px;transform:scaleX(-1)}
.gdk-fan--bl{bottom:-10px;left:-10px;transform:scaleY(-1)}
.gdk-fan--br{bottom:-10px;right:-10px;transform:scale(-1,-1)}

/* particles */
.gdk-particles{position:absolute;inset:0;overflow:hidden;pointer-events:none;z-index:1}
.gdk-particle{
  position:absolute;
  width:2px;height:2px;border-radius:50%;
  background:radial-gradient(circle,#F5E6A8 0%,rgba(245,230,168,0) 70%);
  box-shadow:0 0 8px rgba(245,230,168,.6);
  opacity:0;
  animation:gdkDrift linear infinite;
}
@keyframes gdkDrift{
  0%{opacity:0;transform:translateY(0) translateX(0) scale(.6)}
  10%{opacity:.7}
  90%{opacity:.4}
  100%{opacity:0;transform:translateY(-120vh) translateX(40px) scale(1)}
}

/* hairline border block */
.gdk-card{
  background:var(--bg-card);
  border:1px solid var(--hairline);
  border-radius:var(--r-card);
  position:relative;
}
.gdk-card--glass{
  background:rgba(28,28,38,.55);
  backdrop-filter:blur(18px) saturate(120%);
  -webkit-backdrop-filter:blur(18px) saturate(120%);
  border:1px solid var(--hairline);
}

/* corner ornament */
.gdk-corner{position:absolute;width:18px;height:18px;pointer-events:none}
.gdk-corner::before,.gdk-corner::after{content:'';position:absolute;background:var(--gold);opacity:.85}
.gdk-corner--tl{top:8px;left:8px}
.gdk-corner--tr{top:8px;right:8px}
.gdk-corner--bl{bottom:8px;left:8px}
.gdk-corner--br{bottom:8px;right:8px}
.gdk-corner--tl::before{top:0;left:0;width:12px;height:1px}
.gdk-corner--tl::after{top:0;left:0;width:1px;height:12px}
.gdk-corner--tr::before{top:0;right:0;width:12px;height:1px}
.gdk-corner--tr::after{top:0;right:0;width:1px;height:12px}
.gdk-corner--bl::before{bottom:0;left:0;width:12px;height:1px}
.gdk-corner--bl::after{bottom:0;left:0;width:1px;height:12px}
.gdk-corner--br::before{bottom:0;right:0;width:12px;height:1px}
.gdk-corner--br::after{bottom:0;right:0;width:1px;height:12px}

/* ---------- buttons ---------- */
.gdk-btn{
  display:inline-flex;align-items:center;gap:10px;
  font-family:var(--caps);
  font-size:11px;letter-spacing:.28em;text-transform:uppercase;font-weight:500;
  padding:14px 26px;
  border-radius:var(--r-btn);
  border:1px solid var(--gold);
  color:var(--gold-light);
  background:transparent;
  position:relative;overflow:hidden;
  transition:color .35s ease,border-color .35s ease,transform .35s ease;
  cursor:pointer;
}
.gdk-btn i{font-size:13px;letter-spacing:0}
.gdk-btn--filled{
  background:var(--gold-grad);
  color:#1a1407;
  border-color:transparent;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.35), inset 0 -1px 0 rgba(0,0,0,.25);
}
.gdk-btn--filled::after,.gdk-btn::after{
  content:'';
  position:absolute;
  top:0;left:-130%;
  width:50%;height:100%;
  background:linear-gradient(120deg,transparent 0%,rgba(255,255,255,.55) 50%,transparent 100%);
  transform:skewX(-20deg);
  transition:left .9s ease;
  pointer-events:none;
}
.gdk-btn:hover::after{left:130%}
.gdk-btn:hover{transform:translateY(-1px)}
.gdk-btn--ghost{border-color:var(--hairline-strong);color:var(--text)}
.gdk-btn--ghost:hover{border-color:var(--gold);color:var(--gold-light)}
.gdk-btn--pill{border-radius:var(--r-pill);padding:14px 28px}
.gdk-btn--sm{padding:10px 18px;font-size:10px;letter-spacing:.22em}

/* gold link with underline animation */
.gdk-link{
  display:inline-flex;align-items:center;gap:8px;
  font-family:var(--caps);font-size:11px;letter-spacing:.28em;text-transform:uppercase;
  color:var(--gold);
  position:relative;padding-bottom:4px;
}
.gdk-link::after{
  content:'';position:absolute;left:0;bottom:0;
  height:1px;width:100%;background:var(--gold);
  transform:scaleX(.3);transform-origin:left;
  transition:transform .5s cubic-bezier(.2,.7,.3,1);
}
.gdk-link:hover::after{transform:scaleX(1)}
.gdk-link:hover{color:var(--gold-light)}

/* ---------- pills / chips ---------- */
.gdk-pill{
  display:inline-flex;align-items:center;gap:6px;
  padding:6px 12px;
  border:1px solid var(--hairline-strong);
  border-radius:var(--r-pill);
  font-size:10.5px;letter-spacing:.18em;text-transform:uppercase;
  color:var(--text-mute);
  font-family:var(--caps);font-weight:500;
}
.gdk-pill--gold{color:var(--gold-light);border-color:rgba(212,175,55,.5);background:rgba(212,175,55,.05)}

/* icon ring */
.gdk-iconring{
  width:54px;height:54px;border-radius:50%;
  display:inline-flex;align-items:center;justify-content:center;
  border:1px solid var(--hairline-strong);
  color:var(--gold);
  font-size:18px;
  background:radial-gradient(circle at 30% 30%, rgba(245,230,168,.08), transparent 60%);
  flex:0 0 auto;
}
.gdk-iconring--lg{width:64px;height:64px;font-size:22px}
.gdk-iconring--sm{width:36px;height:36px;font-size:13px}
.gdk-iconring--filled{
  background:var(--gold-grad);color:#1a1407;border-color:transparent;
}

/* fade-up reveal */
.gdk-reveal{opacity:0;transform:translateY(28px);transition:opacity .9s cubic-bezier(.2,.7,.3,1),transform .9s cubic-bezier(.2,.7,.3,1)}
.gdk-reveal.is-in{opacity:1;transform:none}

/* ==========================================================
   1. TOP STRIP
   ========================================================== */
.gdk-topstrip{
  background:var(--bg-deep);
  border-bottom:1px solid var(--hairline);
  font-size:12px;
  color:var(--text-mute);
  position:relative;z-index:30;
}
.gdk-topstrip__inner{display:flex;align-items:center;justify-content:space-between;height:42px;gap:24px;flex-wrap:wrap}
.gdk-topstrip__left,.gdk-topstrip__right{display:flex;align-items:center;gap:22px;flex-wrap:wrap}
.gdk-topstrip a{display:inline-flex;align-items:center;gap:8px;transition:color .3s}
.gdk-topstrip a:hover{color:var(--gold-light)}
.gdk-topstrip i{color:var(--gold);font-size:11px}
/* ----- Language switcher dropdown ----- */
.gdk-lang{position:relative;display:inline-block}
.gdk-lang__trigger{
  display:inline-flex;align-items:center;gap:8px;
  padding:5px 12px;border:1px solid var(--hairline);border-radius:var(--r-pill);
  font-family:var(--caps);letter-spacing:.22em;font-size:10px;color:var(--text);
  background:transparent;cursor:pointer;
  transition:border-color .3s, color .3s, background .3s;
}
.gdk-lang__trigger:hover,
.gdk-lang.is-open .gdk-lang__trigger{
  border-color:var(--gold);
  color:var(--gold-light);
  background:rgba(212,175,55,.05);
}
.gdk-lang__flag{
  width:16px;height:11px;border-radius:1px;
  object-fit:cover;
}
.gdk-lang__code{font-weight:500}
.gdk-lang__caret{
  font-size:9px;color:var(--gold);
  transition:transform .3s ease;
}
.gdk-lang.is-open .gdk-lang__caret{transform:rotate(180deg)}

.gdk-lang__menu{
  position:absolute;top:calc(100% + 8px);right:0;
  min-width:180px;
  margin:0;padding:6px;
  list-style:none;
  background:rgba(10,10,15,.96);
  backdrop-filter:blur(18px) saturate(140%);
  -webkit-backdrop-filter:blur(18px) saturate(140%);
  border:1px solid var(--hairline-strong);
  border-radius:var(--r-card);
  box-shadow:0 18px 38px rgba(0,0,0,.55);
  z-index:60;
  opacity:0;visibility:hidden;
  transform:translateY(-6px);
  transition:opacity .25s ease, transform .25s ease, visibility .25s ease;
}
.gdk-lang.is-open .gdk-lang__menu{
  opacity:1;visibility:visible;transform:translateY(0);
}
.gdk-lang__item{
  display:flex;align-items:center;gap:10px;
  padding:8px 12px;border-radius:var(--r-btn);
  text-decoration:none;
  color:var(--text-mute);
  font-family:var(--sans);font-weight:400;font-size:13px;letter-spacing:.01em;
  text-transform:none;
  transition:background .25s ease, color .25s ease;
}
.gdk-lang__item:hover{
  background:rgba(212,175,55,.08);
  color:var(--gold-light);
}
.gdk-lang__item.is-active{
  color:var(--gold-light);
  background:rgba(212,175,55,.05);
}
.gdk-lang__name{flex:1}
.gdk-lang__check{
  font-size:10px;color:var(--gold);margin-left:auto;
}
.gdk-socials{display:inline-flex;align-items:center;gap:14px}
.gdk-socials__label{font-family:var(--caps);letter-spacing:.22em;font-size:10px;color:var(--text-mute)}
.gdk-socials a{
  width:26px;height:26px;border-radius:50%;
  border:1px solid var(--hairline);
  display:inline-flex;align-items:center;justify-content:center;
  font-size:11px;color:var(--text-mute);
  transition:all .3s;
}
.gdk-socials a:hover{color:var(--gold);border-color:var(--gold)}

/* ==========================================================
   2. STICKY HEADER
   ========================================================== */
.gdk-header{
  position:sticky;top:0;
  background:rgba(10,10,15,.78);
  backdrop-filter:blur(18px) saturate(140%);
  -webkit-backdrop-filter:blur(18px) saturate(140%);
  border-bottom:1px solid var(--hairline);
  z-index:50;
}
.gdk-header__inner{display:flex;align-items:center;justify-content:space-between;height:86px;gap:32px}
.gdk-logo{display:inline-flex;align-items:center;gap:10px}
.gdk-logo__mark{
  width:22px;height:22px;
  background:var(--gold-grad);
  transform:rotate(45deg);
  position:relative;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.4);
}
.gdk-logo__mark::after{
  content:'';position:absolute;inset:4px;
  background:var(--bg-base);
}
.gdk-logo__mark::before{
  content:'';position:absolute;inset:7px;
  background:var(--gold-grad);
}
.gdk-logo__type{font-family:var(--serif);font-weight:500;font-size:28px;letter-spacing:.02em;color:var(--text)}
.gdk-logo__type em{font-style:normal;background:var(--gold-grad);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}

.gdk-nav{display:flex;align-items:center;gap:30px}
.gdk-nav a{
  font-family:var(--caps);font-size:11px;letter-spacing:.24em;text-transform:uppercase;
  color:var(--text);transition:color .3s;
  position:relative;padding:8px 0;
}
.gdk-nav a:hover{color:var(--gold)}
.gdk-nav a.is-active{color:var(--gold)}
.gdk-nav a.is-active::after{content:'';position:absolute;left:50%;bottom:0;width:14px;height:1px;background:var(--gold);transform:translateX(-50%)}
.gdk-header__cta{display:flex;align-items:center;gap:12px}
.gdk-burger{display:none;width:42px;height:42px;border:1px solid var(--hairline);border-radius:var(--r-btn);align-items:center;justify-content:center;color:var(--gold)}

@media (max-width:1080px){
  .gdk-nav{display:none}
}
@media (max-width:768px){
  .gdk-header__cta .gdk-btn--ghost{display:none}
  .gdk-burger{display:inline-flex}
}

/* ==========================================================
   3. HERO
   ========================================================== */
.gdk-hero{
  position:relative;
  padding:120px 0 100px;
  background:
    radial-gradient(ellipse at 80% 20%, rgba(212,175,55,.12), transparent 50%),
    radial-gradient(ellipse at 10% 90%, rgba(184,134,11,.08), transparent 55%),
    var(--bg-base);
  overflow:hidden;
}
.gdk-hero__grid{display:grid;grid-template-columns:1.05fr .95fr;gap:60px;align-items:center}
@media (max-width:992px){.gdk-hero__grid{grid-template-columns:1fr;gap:80px}}
.gdk-hero__eyebrow{display:inline-flex;align-items:center;gap:14px;margin-bottom:28px}
.gdk-hero__eyebrow::before{content:'';display:inline-block;width:36px;height:1px;background:var(--gold)}
.gdk-hero__title{margin:0 0 28px}
.gdk-hero__title em{font-style:italic;display:inline-block}
.gdk-hero__desc{color:var(--text-mute);font-size:18px;line-height:1.75;max-width:54ch;margin:0 0 40px}
.gdk-hero__ctas{display:flex;gap:16px;flex-wrap:wrap;margin-bottom:56px}

.gdk-trust{
  display:flex;align-items:center;gap:22px;flex-wrap:wrap;
  padding-top:30px;border-top:1px solid var(--hairline);
}
.gdk-trust__item{
  display:inline-flex;align-items:center;gap:10px;
  font-family:var(--caps);font-size:10.5px;letter-spacing:.22em;text-transform:uppercase;color:var(--text-mute);
}
.gdk-trust__item i{color:var(--gold);font-size:11px}
.gdk-trust__dot{width:3px;height:3px;border-radius:50%;background:var(--gold);opacity:.6}

/* vault card */
.gdk-vault{
  position:relative;
  width:100%;max-width:480px;
  aspect-ratio:1.586/1;
  margin-left:auto;
  perspective:1200px;
}
.gdk-vault__card{
  position:relative;
  width:100%;height:100%;
  background:
    radial-gradient(ellipse at 20% 0%, rgba(245,230,168,.14), transparent 50%),
    linear-gradient(135deg,#1a1a22 0%,#0d0d12 60%,#000 100%);
  border-radius:14px;
  border:1px solid var(--hairline-strong);
  box-shadow:
    0 30px 80px rgba(0,0,0,.6),
    inset 0 1px 0 rgba(245,230,168,.18),
    inset 0 -1px 0 rgba(0,0,0,.6);
  padding:32px 34px;
  overflow:hidden;
  transform:rotate(-4deg);
  animation:gdkFloat 8s ease-in-out infinite;
}
@keyframes gdkFloat{
  0%,100%{transform:rotate(-4deg) translateY(0)}
  50%{transform:rotate(-4deg) translateY(-12px)}
}
.gdk-vault__rim{
  position:absolute;inset:6px;border-radius:10px;border:1px solid rgba(245,230,168,.22);pointer-events:none;
}
.gdk-vault__shine{
  position:absolute;inset:-50%;
  background:linear-gradient(115deg,transparent 40%,rgba(245,230,168,.13) 50%,transparent 60%);
  animation:gdkShine 6s linear infinite;
  pointer-events:none;
}
@keyframes gdkShine{0%{transform:translateX(-30%)}100%{transform:translateX(30%)}}
.gdk-vault__head{display:flex;align-items:flex-start;justify-content:space-between;position:relative;z-index:2}
.gdk-vault__brand{font-family:var(--caps);font-size:10px;letter-spacing:.32em;color:var(--gold-light)}
.gdk-vault__brand small{display:block;font-size:8px;color:var(--text-mute);margin-top:4px}
.gdk-vault__monogram{
  font-family:var(--serif);font-style:italic;font-weight:600;
  font-size:42px;line-height:1;
  background:var(--gold-grad);
  -webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;
  letter-spacing:-.02em;
}
.gdk-vault__chip{
  position:absolute;top:50%;left:34px;transform:translateY(-25%);
  width:54px;height:42px;border-radius:6px;
  background:linear-gradient(135deg,#F5E6A8,#D4AF37 60%,#B8860B);
  box-shadow:inset 0 2px 4px rgba(255,255,255,.4),inset 0 -2px 4px rgba(0,0,0,.3);
  z-index:2;
}
.gdk-vault__chip::before,.gdk-vault__chip::after{
  content:'';position:absolute;left:6px;right:6px;height:1px;background:rgba(0,0,0,.25);
}
.gdk-vault__chip::before{top:14px}
.gdk-vault__chip::after{bottom:14px}
.gdk-vault__chip span{position:absolute;top:6px;bottom:6px;left:50%;width:1px;background:rgba(0,0,0,.25);transform:translateX(-50%)}
.gdk-vault__number{
  position:absolute;left:34px;right:34px;bottom:80px;
  font-family:var(--serif);font-size:22px;letter-spacing:.18em;color:var(--gold-light);
  display:flex;gap:18px;
  z-index:2;
}
.gdk-vault__foot{position:absolute;left:34px;right:34px;bottom:30px;display:flex;justify-content:space-between;align-items:flex-end;z-index:2}
.gdk-vault__name{font-family:var(--caps);font-size:10.5px;letter-spacing:.24em;color:var(--text)}
.gdk-vault__name small{display:block;font-size:8px;color:var(--text-dim);letter-spacing:.2em;margin-bottom:6px}
.gdk-vault__net{font-family:var(--serif);font-weight:500;font-size:18px;letter-spacing:.06em;color:var(--gold-light)}

/* tiny floating tag near vault */
.gdk-vault__tag{
  position:absolute;
  display:flex;align-items:center;gap:10px;
  padding:12px 16px;
  background:rgba(28,28,38,.85);
  backdrop-filter:blur(14px);
  border:1px solid var(--hairline-strong);
  border-radius:var(--r-card);
  font-family:var(--caps);font-size:10px;letter-spacing:.2em;color:var(--text);
  z-index:5;
}
.gdk-vault__tag i{color:var(--gold)}
.gdk-vault__tag--tl{top:-12px;left:-30px;animation:gdkFloat 7s ease-in-out infinite 1s}
.gdk-vault__tag--br{bottom:-10px;right:-20px;animation:gdkFloat 9s ease-in-out infinite .5s}
.gdk-vault__tag strong{font-family:var(--serif);font-weight:600;font-size:14px;color:var(--gold-light);letter-spacing:0;text-transform:none}

/* ==========================================================
   4. ABOUT
   ========================================================== */
.gdk-about__grid{display:grid;grid-template-columns:.85fr 1fr;gap:80px;align-items:center}
@media (max-width:992px){.gdk-about__grid{grid-template-columns:1fr;gap:64px}}

.gdk-frame{
  position:relative;
  aspect-ratio:3/4;
  padding:14px;
  border:1px solid var(--hairline-strong);
  border-radius:var(--r-card);
  background:linear-gradient(180deg,rgba(212,175,55,.06),transparent 40%),var(--bg-elev);
}
.gdk-frame__img{
  width:100%;height:100%;
  background-image:var(--gdk-img,none);
  background-color:var(--bg-card);
  background-size:cover;background-position:center;
  /* Gold-sepia treatment: any user-uploaded photo (including bright SaaS
     mockups) is desaturated and tinted so it sits inside the luxury frame
     without clashing. SVG assets shipped by the seeder already use the
     gold palette and are unaffected by the muted saturation stack. */
  filter:grayscale(.55) sepia(.35) saturate(.85) contrast(1.05) brightness(.92);
  border-radius:2px;
  position:relative;
}
.gdk-frame__img::after{
  content:'';position:absolute;inset:0;
  /* Stronger darken + gold-tint overlay reinforces the framed-print feel
     and disguises stray colour casts in the underlying photo. */
  background:
    linear-gradient(180deg, rgba(10,10,15,.08) 0%, rgba(10,10,15,.65) 100%),
    linear-gradient(135deg, rgba(212,175,55,.18) 0%, rgba(212,175,55,0) 45%);
  pointer-events:none;
}

.gdk-floatstat{
  position:absolute;
  right:-32px;bottom:60px;
  display:flex;align-items:center;gap:14px;
  padding:18px 22px;
  background:rgba(22,22,30,.92);
  backdrop-filter:blur(14px);
  border:1px solid var(--hairline-strong);
  border-radius:var(--r-card);
  z-index:3;
  min-width:220px;
}
.gdk-floatstat__ring{
  width:54px;height:54px;border-radius:50%;
  display:flex;align-items:center;justify-content:center;
  background:conic-gradient(from 220deg,var(--gold-light),var(--gold-deep),var(--gold-light));
  padding:2px;flex:0 0 auto;
}
.gdk-floatstat__ring span{
  width:100%;height:100%;border-radius:50%;background:var(--bg-card);
  display:flex;align-items:center;justify-content:center;color:var(--gold);font-size:18px;
}
.gdk-floatstat__num{font-family:var(--serif);font-weight:600;font-size:30px;line-height:1;color:var(--gold-light)}
.gdk-floatstat__lbl{font-family:var(--caps);font-size:9.5px;letter-spacing:.24em;color:var(--text-mute);text-transform:uppercase;margin-top:6px}

.gdk-about__title{margin:18px 0 24px}
.gdk-about__desc{color:var(--text-mute);font-size:17px;line-height:1.75;margin:0 0 40px;max-width:54ch}
.gdk-about__pillars{display:flex;flex-direction:column;gap:28px;margin-bottom:48px}
.gdk-pillar{display:flex;gap:20px;align-items:flex-start}
.gdk-pillar__title{font-family:var(--serif);font-size:22px;font-weight:500;margin:0 0 6px}
.gdk-pillar__txt{color:var(--text-mute);font-size:15px;line-height:1.6;margin:0;max-width:48ch}

/* ==========================================================
   5. SERVICES CAROUSEL
   ========================================================== */
.gdk-services{background:var(--bg-elev);position:relative;overflow:hidden}
.gdk-services__head{display:flex;align-items:flex-end;justify-content:space-between;gap:32px;margin-bottom:64px;flex-wrap:wrap}
.gdk-services__head h2{margin:14px 0 0;max-width:18ch}
.gdk-arrows{display:flex;gap:12px}
.gdk-arrow{
  width:54px;height:54px;border-radius:50%;
  border:1px solid var(--hairline-strong);
  display:inline-flex;align-items:center;justify-content:center;
  color:var(--gold);font-size:14px;
  background:rgba(28,28,38,.6);
  transition:all .35s;
}
.gdk-arrow:hover{background:var(--gold-grad);color:#1a1407;border-color:transparent}
.gdk-services__viewport{margin:0 -28px;padding:0 28px;overflow:hidden}
.gdk-services__track{
  display:flex;gap:24px;
  transition:transform .7s cubic-bezier(.2,.7,.3,1);
  will-change:transform;
}
.gdk-svc{
  flex:0 0 calc((100% - 48px) / 3);
  background:rgba(28,28,38,.5);
  backdrop-filter:blur(18px);
  border:1px solid var(--hairline);
  border-radius:var(--r-card);
  padding:42px 32px 36px;
  position:relative;
  transition:all .5s;
  min-height:340px;
}
.gdk-svc:hover{border-color:var(--hairline-strong);background:rgba(28,28,38,.75);transform:translateY(-6px)}
.gdk-svc:hover .gdk-corner{opacity:1}
.gdk-svc .gdk-corner{opacity:0;transition:opacity .4s}
.gdk-svc__icon{
  width:64px;height:64px;
  display:flex;align-items:center;justify-content:center;
  font-size:28px;color:var(--gold);
  margin-bottom:26px;
  background:radial-gradient(circle,rgba(212,175,55,.12),transparent 70%);
  border:1px solid var(--hairline);
  border-radius:50%;
}
.gdk-svc__title{font-family:var(--serif);font-size:24px;font-weight:500;margin:0 0 12px}
.gdk-svc__desc{color:var(--text-mute);font-size:14.5px;line-height:1.7;margin:0 0 28px;max-width:30ch}

@media (max-width:992px){.gdk-svc{flex-basis:calc((100% - 24px)/2)}}
@media (max-width:640px){.gdk-svc{flex-basis:85%}}

/* ==========================================================
   6. FEATURES GRID
   ========================================================== */
.gdk-features__head{text-align:center;margin-bottom:80px}
.gdk-features__head h2{margin:16px auto 0;max-width:24ch}
.gdk-feature{
  background:var(--bg-elev);
  border:1px solid var(--hairline);
  border-radius:var(--r-card);
  padding:48px 36px 38px;
  position:relative;overflow:hidden;
  transition:all .5s;
  min-height:280px;
}
.gdk-feature:hover{border-color:var(--hairline-strong);transform:translateY(-4px)}
.gdk-feature:hover::before{transform:translateX(120%)}
.gdk-feature:hover .gdk-corner{opacity:1}
.gdk-feature::before{
  content:'';position:absolute;inset:0;
  background:linear-gradient(110deg,transparent 35%,rgba(245,230,168,.07) 50%,transparent 65%);
  transform:translateX(-120%);
  transition:transform 1.1s ease;
  pointer-events:none;
}
.gdk-feature .gdk-corner{opacity:0;transition:opacity .5s}
.gdk-feature__num{
  position:absolute;
  top:22px;right:30px;
  font-family:var(--serif);
  font-size:74px;font-weight:500;
  -webkit-text-stroke:1px rgba(212,175,55,.28);
  color:transparent;
  line-height:1;letter-spacing:-.02em;
}
.gdk-feature__icon{color:var(--gold);font-size:32px;margin:18px 0 22px}
.gdk-feature__title{font-family:var(--serif);font-size:24px;font-weight:500;margin:0 0 12px;max-width:18ch}
.gdk-feature__txt{color:var(--text-mute);font-size:14.5px;line-height:1.7;margin:0;max-width:36ch}

/* ==========================================================
   7. SPECIAL FEATURES TRIPTYCH
   ========================================================== */
.gdk-special{background:var(--bg-elev);position:relative;overflow:hidden}
.gdk-special__head{text-align:center;margin-bottom:80px}
.gdk-special__grid{
  display:grid;
  grid-template-columns:1fr 1.1fr 1fr;
  gap:40px;
  align-items:center;
}
@media (max-width:992px){.gdk-special__grid{grid-template-columns:1fr;gap:48px}}
.gdk-special__col{display:flex;flex-direction:column;gap:48px;position:relative;z-index:2}
.gdk-spfeat{display:flex;gap:18px;align-items:flex-start}
.gdk-spfeat--right{flex-direction:row-reverse;text-align:right}
.gdk-spfeat__title{font-family:var(--serif);font-size:22px;font-weight:500;margin:0 0 8px}
.gdk-spfeat__txt{color:var(--text-mute);font-size:14px;line-height:1.7;margin:0;max-width:32ch}
.gdk-spfeat--right .gdk-spfeat__txt{margin-left:auto}

/* phone mockup */
.gdk-phone{
  margin:0 auto;
  width:280px;
  aspect-ratio:9/19;
  position:relative;
  padding:14px;
  background:
    linear-gradient(180deg,#1a1a22,#0a0a0f);
  border:1px solid var(--hairline-strong);
  border-radius:42px;
  box-shadow:
    0 40px 80px rgba(0,0,0,.55),
    inset 0 1px 0 rgba(245,230,168,.2);
}
.gdk-phone__screen{
  width:100%;height:100%;
  background:linear-gradient(180deg,#0d0d12 0%,#16161E 100%);
  border-radius:30px;
  overflow:hidden;
  position:relative;
  padding:38px 18px 24px;
}
.gdk-phone__notch{
  position:absolute;top:14px;left:50%;transform:translateX(-50%);
  width:90px;height:24px;border-radius:14px;background:#000;z-index:3;
}
.gdk-phone__head{display:flex;justify-content:space-between;align-items:center;font-family:var(--caps);font-size:9px;letter-spacing:.2em;color:var(--text-mute);margin-bottom:18px}
.gdk-phone__head span{color:var(--gold-light)}
.gdk-phone__hello{font-family:var(--caps);font-size:8.5px;letter-spacing:.2em;color:var(--text-dim)}
.gdk-phone__name{font-family:var(--serif);font-size:20px;color:var(--text);font-weight:500;margin:2px 0 18px}
.gdk-phone__card{
  border:1px solid var(--hairline-strong);
  background:linear-gradient(135deg,rgba(212,175,55,.1),transparent 70%),var(--bg-card);
  border-radius:6px;
  padding:14px 14px;
  margin-bottom:14px;
}
.gdk-phone__bal{font-family:var(--caps);font-size:7.5px;letter-spacing:.22em;color:var(--text-mute)}
.gdk-phone__num{font-family:var(--serif);font-weight:600;font-size:26px;color:var(--gold-light);line-height:1.1;margin-top:4px}
.gdk-phone__num small{font-size:14px;opacity:.7;font-weight:400}
.gdk-phone__actions{display:flex;justify-content:space-between;margin-top:12px}
.gdk-phone__act{display:flex;flex-direction:column;align-items:center;gap:4px;color:var(--text);font-size:8px;font-family:var(--caps);letter-spacing:.16em}
.gdk-phone__act i{width:28px;height:28px;border-radius:50%;background:rgba(212,175,55,.12);color:var(--gold);display:inline-flex;align-items:center;justify-content:center;font-size:10px}
.gdk-phone__list{display:flex;flex-direction:column;gap:8px}
.gdk-phone__row{display:flex;justify-content:space-between;align-items:center;padding:8px 4px;border-top:1px solid var(--hairline)}
.gdk-phone__row .lbl{font-family:var(--sans);font-size:10px;color:var(--text)}
.gdk-phone__row .sub{font-size:8px;color:var(--text-dim);letter-spacing:.1em}
.gdk-phone__row .val{font-family:var(--serif);font-size:13px;color:var(--gold-light)}

/* dotted gold connectors */
.gdk-special__lines{position:absolute;inset:0;pointer-events:none;z-index:1}
@media (max-width:992px){.gdk-special__lines{display:none}}

/* ==========================================================
   8. EARN PLANS
   ========================================================== */
.gdk-earn__head{text-align:center;margin-bottom:72px}
.gdk-earn__head h2{margin:16px auto 16px;max-width:20ch}
.gdk-earn__head p{margin:0 auto;max-width:60ch;color:var(--text-mute)}
.gdk-earn__grid{display:grid;grid-template-columns:repeat(3,1fr);gap:28px;align-items:stretch}
@media (max-width:992px){.gdk-earn__grid{grid-template-columns:1fr;gap:60px}}

.gdk-plan{
  background:var(--bg-card);
  border:1px solid var(--hairline);
  border-radius:var(--r-card);
  padding:40px 32px;
  position:relative;
  display:flex;flex-direction:column;
  transition:all .5s;
}
.gdk-plan:hover{transform:translateY(-4px);border-color:var(--hairline-strong)}
.gdk-plan--featured{
  border-color:rgba(212,175,55,.55);
  background:
    radial-gradient(ellipse at 50% 0%, rgba(212,175,55,.15), transparent 60%),
    var(--bg-card);
  box-shadow:
    inset 0 1px 0 rgba(245,230,168,.18),
    0 0 0 1px rgba(212,175,55,.18),
    0 30px 60px rgba(0,0,0,.4);
  transform:translateY(-10px);
}
.gdk-plan--featured:hover{transform:translateY(-14px)}

.gdk-plan__badge{
  position:absolute;top:-18px;left:50%;transform:translateX(-50%);
  display:inline-flex;align-items:center;gap:8px;
  padding:8px 16px;
  background:var(--gold-grad);
  border-radius:var(--r-pill);
  font-family:var(--caps);font-size:10px;letter-spacing:.22em;
  color:#1a1407;font-weight:600;
  box-shadow:0 8px 22px rgba(212,175,55,.35);
}

.gdk-plan__head{display:flex;align-items:center;gap:16px;margin-bottom:22px}
.gdk-plan__name{font-family:var(--serif);font-size:24px;font-weight:500;margin:0;line-height:1.1}
.gdk-plan__tag{font-size:12px;color:var(--text-mute);display:block;margin-top:4px;letter-spacing:.04em}

.gdk-plan__rate{
  margin:8px 0 4px;
  display:flex;align-items:baseline;gap:4px;
  font-family:var(--serif);
  font-weight:500;
  font-size:64px;line-height:1;letter-spacing:-.02em;
}
.gdk-plan__rate .pct{font-size:28px;font-weight:500;margin-left:4px;color:var(--text-mute)}
.gdk-plan--featured .gdk-plan__rate{background:var(--gold-grad);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}
.gdk-plan__rate-rule{height:1px;width:80px;background:var(--gold);margin:6px 0 8px;opacity:.7}
.gdk-plan__rate-lbl{font-family:var(--caps);font-size:10px;letter-spacing:.24em;color:var(--text-mute);margin-bottom:22px}

.gdk-plan__pills{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:24px}

.gdk-plan__details{display:grid;grid-template-columns:1fr 1fr;gap:14px 18px;margin:18px 0 22px;padding-top:22px;border-top:1px solid var(--hairline)}
.gdk-plan__det{display:flex;gap:10px;align-items:flex-start}
.gdk-plan__det i{color:var(--gold);font-size:13px;margin-top:3px}
.gdk-plan__det small{display:block;font-size:9px;letter-spacing:.2em;color:var(--text-dim);font-family:var(--caps);text-transform:uppercase;margin-bottom:2px}
.gdk-plan__det span{font-family:var(--serif);font-size:14px;color:var(--text);line-height:1.2}

.gdk-plan__bullets{list-style:none;padding:0;margin:0 0 28px;display:flex;flex-direction:column;gap:10px}
.gdk-plan__bullets li{display:flex;gap:12px;align-items:flex-start;font-size:14px;color:var(--text);line-height:1.5}
.gdk-plan__bullets i{color:var(--gold);font-size:11px;margin-top:6px}

.gdk-plan__cta{margin-top:auto;width:100%;justify-content:center}

/* ==========================================================
   9. SUBSCRIPTION PLANS
   ========================================================== */
.gdk-sub__head{text-align:center;margin-bottom:42px}
.gdk-sub__head h2{margin:16px auto 0;max-width:22ch}

.gdk-segmented{
  display:inline-flex;
  border:1px solid var(--hairline-strong);
  border-radius:var(--r-pill);
  padding:6px;
  margin:36px auto 64px;
  background:var(--bg-elev);
  position:relative;
}
.gdk-segmented__btn{
  font-family:var(--caps);font-size:11px;letter-spacing:.24em;text-transform:uppercase;
  padding:12px 22px;
  color:var(--text-mute);border-radius:var(--r-pill);
  position:relative;z-index:2;
  transition:color .35s;
  white-space:nowrap;
}
.gdk-segmented__btn.is-active{color:#1a1407}
.gdk-segmented__btn small{color:inherit;opacity:.7;margin-left:6px;font-size:9px}
.gdk-segmented__pill{
  position:absolute;top:6px;left:6px;
  background:var(--gold-grad);
  border-radius:var(--r-pill);
  height:calc(100% - 12px);
  z-index:1;
  transition:transform .5s cubic-bezier(.2,.7,.3,1), width .5s cubic-bezier(.2,.7,.3,1);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.35);
}
.gdk-sub__toggle-wrap{text-align:center}

.gdk-sub__grid{display:grid;grid-template-columns:repeat(3,1fr);gap:28px;align-items:stretch}
@media (max-width:992px){.gdk-sub__grid{grid-template-columns:1fr;gap:64px}}

.gdk-tier{
  background:var(--bg-card);
  border:1px solid var(--hairline);
  border-radius:var(--r-card);
  padding:48px 36px 40px;
  display:flex;flex-direction:column;
  position:relative;
  transition:all .5s;
}
.gdk-tier:hover{transform:translateY(-3px);border-color:var(--hairline-strong)}
.gdk-tier--pop{
  border-color:rgba(212,175,55,.5);
  background:
    radial-gradient(ellipse at 50% 0%, rgba(212,175,55,.12), transparent 55%),
    var(--bg-card);
  transform:translateY(-12px);
  box-shadow:0 30px 60px rgba(0,0,0,.4),inset 0 1px 0 rgba(245,230,168,.22);
}
.gdk-tier--pop::before{
  content:'';position:absolute;top:0;left:18px;right:18px;height:1px;
  background:linear-gradient(90deg,transparent,var(--gold-light),transparent);
}
.gdk-tier__badge{
  position:absolute;top:-18px;left:50%;transform:translateX(-50%);
  display:inline-flex;align-items:center;gap:8px;
  padding:8px 16px;
  background:var(--gold-grad);border-radius:var(--r-pill);
  font-family:var(--caps);font-size:10px;letter-spacing:.22em;color:#1a1407;
  box-shadow:0 8px 22px rgba(212,175,55,.3);
}
.gdk-tier__head{display:flex;align-items:center;gap:14px;margin-bottom:8px}
.gdk-tier__name{font-family:var(--serif);font-size:24px;font-weight:500;margin:0}
.gdk-tier__tag{color:var(--text-mute);font-size:13px;margin:0 0 24px}

.gdk-tier__price{display:flex;align-items:flex-start;gap:6px;margin-bottom:6px;line-height:1}
.gdk-tier__cur{font-family:var(--serif);font-size:24px;color:var(--text-mute);margin-top:14px}
.gdk-tier__amt{
  font-family:var(--serif);font-weight:500;
  font-size:78px;letter-spacing:-.02em;
  line-height:.95;
}
.gdk-tier--pop .gdk-tier__amt{background:var(--gold-grad);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}
.gdk-tier__per{font-family:var(--sans);font-size:14px;color:var(--text-mute);margin-top:18px;font-weight:300}
.gdk-tier__billed{display:flex;align-items:center;gap:6px;font-size:11px;color:var(--text-dim);letter-spacing:.1em;font-family:var(--caps);margin-bottom:26px}
.gdk-tier__billed i{color:var(--gold)}

.gdk-tier__cta{width:100%;justify-content:center;margin-bottom:30px}
.gdk-tier__div{height:1px;background:var(--hairline);margin-bottom:24px}
.gdk-tier__inc-lbl{font-family:var(--caps);font-size:10px;letter-spacing:.24em;color:var(--text-mute);margin-bottom:16px}
.gdk-tier__list{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:12px}
.gdk-tier__list li{display:flex;align-items:center;gap:12px;font-size:14px;color:var(--text)}
.gdk-tier__list i{color:var(--gold);font-size:11px}
.gdk-tier__list .pillets{margin-left:auto;font-family:var(--caps);font-size:9px;letter-spacing:.18em;padding:3px 9px;border:1px solid var(--hairline-strong);color:var(--gold-light);border-radius:var(--r-pill)}
.gdk-tier__list li.muted{color:var(--text-dim)}
.gdk-tier__list li.muted i{color:var(--text-dim)}

/* ==========================================================
   10. OFFER / COUNTERS
   ========================================================== */
.gdk-offer{
  background:var(--bg-deep);
  position:relative;overflow:hidden;
  border-top:1px solid var(--hairline);
  border-bottom:1px solid var(--hairline);
}
.gdk-offer__deco{
  position:absolute;inset:0;
  background-image:
    linear-gradient(90deg,transparent 49.7%,rgba(212,175,55,.05) 49.7%,rgba(212,175,55,.05) 50.3%,transparent 50.3%),
    repeating-linear-gradient(45deg,transparent 0 28px,rgba(212,175,55,.04) 28px 29px);
  pointer-events:none;
}
.gdk-offer__grid{display:grid;grid-template-columns:1.05fr 1fr;gap:64px;align-items:center;position:relative;z-index:2}
@media (max-width:992px){.gdk-offer__grid{grid-template-columns:1fr;gap:56px}}
.gdk-offer__title{margin:18px 0 32px;max-width:14ch}
.gdk-offer__counters{display:grid;grid-template-columns:1fr 1fr;gap:42px 28px}
.gdk-counter__num{font-family:var(--serif);font-weight:500;font-size:64px;line-height:1;letter-spacing:-.02em;background:var(--gold-grad);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}
.gdk-counter__lbl{font-family:var(--caps);font-size:10px;letter-spacing:.24em;color:var(--text-mute);margin-top:10px}
.gdk-counter__div{height:1px;background:var(--hairline);width:56px;margin:12px 0}

/* ==========================================================
   11. PROCESS
   ========================================================== */
.gdk-process{background:var(--bg-elev)}
.gdk-process__head{text-align:center;margin-bottom:90px}
.gdk-process__row{
  position:relative;
  display:grid;grid-template-columns:repeat(4,1fr);gap:32px;
}
@media (max-width:992px){.gdk-process__row{grid-template-columns:1fr 1fr}}
@media (max-width:560px){.gdk-process__row{grid-template-columns:1fr}}

.gdk-process__dash{
  position:absolute;top:62px;left:8%;right:8%;height:1px;
  background-image:linear-gradient(90deg,var(--gold) 50%,transparent 50%);
  background-size:14px 1px;
  opacity:.5;
  z-index:1;
}
@media (max-width:992px){.gdk-process__dash{display:none}}

.gdk-step{
  position:relative;z-index:2;
  text-align:center;
  display:flex;flex-direction:column;align-items:center;
}
.gdk-step--down{margin-top:84px}
@media (max-width:992px){.gdk-step--down{margin-top:0}}
.gdk-step__num{
  width:124px;height:124px;border-radius:50%;
  background:radial-gradient(circle at 30% 30%,#1f1f2a,#0c0c12);
  border:1px solid rgba(212,175,55,.4);
  display:flex;align-items:center;justify-content:center;
  font-family:var(--serif);font-weight:500;font-size:42px;
  color:var(--gold-light);
  position:relative;
  box-shadow:inset 0 1px 0 rgba(245,230,168,.18);
}
.gdk-step__num::before{
  content:'';position:absolute;inset:-6px;border-radius:50%;
  border:1px solid var(--hairline);
}
.gdk-step__icon{margin:24px 0 16px;color:var(--gold);font-size:24px}
.gdk-step__title{font-family:var(--serif);font-size:22px;font-weight:500;margin:0 0 8px}
.gdk-step__txt{color:var(--text-mute);font-size:14px;line-height:1.6;margin:0;max-width:24ch}

/* ==========================================================
   12. TESTIMONIALS
   ========================================================== */
.gdk-testi{position:relative}
.gdk-testi__head{text-align:center;margin-bottom:64px}
.gdk-testi__stage{position:relative;max-width:880px;margin:0 auto;padding:0 60px}
.gdk-testi__arrow{
  position:absolute;top:50%;transform:translateY(-50%);
}
.gdk-testi__arrow--prev{left:0}
.gdk-testi__arrow--next{right:0}
@media (max-width:768px){.gdk-testi__stage{padding:0}.gdk-testi__arrow{position:static;transform:none}}

.gdk-quote{
  background:rgba(28,28,38,.65);
  backdrop-filter:blur(18px);
  border:1px solid var(--hairline-strong);
  border-radius:var(--r-card);
  padding:60px 60px 48px;
  text-align:center;
  position:relative;
}
@media (max-width:640px){.gdk-quote{padding:48px 28px 36px}}
.gdk-quote__stars{display:flex;justify-content:center;gap:5px;color:var(--gold);font-size:14px;letter-spacing:.1em;margin-bottom:24px}
.gdk-quote__glyph{
  position:absolute;top:24px;left:38px;
  font-family:var(--serif);font-style:italic;font-weight:600;
  font-size:160px;line-height:1;
  color:rgba(212,175,55,.12);
  pointer-events:none;
}
.gdk-quote__body{font-family:var(--serif);font-style:italic;font-weight:400;font-size:26px;line-height:1.45;color:var(--text);margin:0 auto 40px;max-width:60ch}
.gdk-quote__client{display:inline-flex;align-items:center;gap:18px}
.gdk-quote__photo{
  width:64px;height:64px;border-radius:50%;
  background:#2a2a35 center/cover;
  padding:2px;
  background-image:linear-gradient(135deg,var(--gold-light),var(--gold-deep));
}
.gdk-quote__photo span{
  display:block;width:100%;height:100%;border-radius:50%;
  background-image:var(--gdk-img,none);
  background-size:cover;background-position:center;
}
.gdk-quote__name{font-family:var(--serif);font-size:18px;font-weight:500;text-align:left;margin:0}
.gdk-quote__role{font-family:var(--caps);font-size:10px;letter-spacing:.22em;color:var(--text-mute);margin-top:4px;text-align:left}

.gdk-testi__dots{display:flex;justify-content:center;gap:10px;margin-top:36px}
.gdk-testi__dot{width:7px;height:7px;border-radius:50%;background:var(--hairline-strong);transition:all .4s;cursor:pointer;border:0;padding:0}
.gdk-testi__dot.is-active{background:var(--gold);width:24px;border-radius:4px}

/* ==========================================================
   13. TEAM
   ========================================================== */
.gdk-team__head{text-align:center;margin-bottom:72px}
.gdk-team__grid{display:grid;grid-template-columns:repeat(3,1fr);gap:32px}
@media (max-width:900px){.gdk-team__grid{grid-template-columns:1fr 1fr}}
@media (max-width:560px){.gdk-team__grid{grid-template-columns:1fr}}

.gdk-member{
  position:relative;
  background:var(--bg-elev);
  border:1px solid var(--hairline);
  border-radius:var(--r-card);
  overflow:hidden;
  transition:transform .5s, border-color .5s;
}
.gdk-member:hover{transform:translateY(-6px);border-color:var(--hairline-strong)}
.gdk-member__img{
  position:relative;
  aspect-ratio:4/5;
  background-image:var(--gdk-img,none);
  background-size:cover;background-position:center;
  filter:grayscale(.35) contrast(1.05);
}
.gdk-member__img::after{
  content:'';position:absolute;inset:0;
  background:linear-gradient(180deg,rgba(212,175,55,.06),transparent 35%, rgba(10,10,15,.65) 100%);
}
.gdk-member__corners .gdk-corner{width:22px;height:22px;opacity:.9}
.gdk-member__corners .gdk-corner--tl{top:14px;left:14px}
.gdk-member__corners .gdk-corner--tr{top:14px;right:14px}
.gdk-member__corners .gdk-corner--bl{bottom:14px;left:14px}
.gdk-member__corners .gdk-corner--br{bottom:14px;right:14px}

.gdk-member__body{
  padding:26px 28px 30px;
  position:relative;
  background:
    linear-gradient(180deg,var(--bg-elev),var(--bg-card));
  overflow:hidden;
  border-top:1px solid var(--hairline);
}
.gdk-member__body::before{
  content:'';position:absolute;bottom:-30px;right:-30px;
  width:120px;height:120px;border-radius:50%;
  background:
    repeating-conic-gradient(from 0deg, rgba(212,175,55,.08) 0deg 2deg, transparent 2deg 18deg);
  opacity:.7;
}
.gdk-member__name{font-family:var(--serif);font-size:22px;font-weight:500;margin:0;position:relative}
.gdk-member__role{font-family:var(--caps);font-size:10px;letter-spacing:.24em;color:var(--text-mute);margin-top:6px;position:relative}

.gdk-member__socials{
  position:absolute;
  top:24px;right:24px;
  display:flex;align-items:center;gap:8px;
  transition:gap .4s;
}
.gdk-member__plus{
  width:38px;height:38px;border-radius:50%;
  background:var(--gold-grad);color:#1a1407;
  display:flex;align-items:center;justify-content:center;
  font-size:14px;
  cursor:pointer;flex:0 0 auto;
  transition:transform .4s;
}
.gdk-member__plus:hover{transform:rotate(45deg)}
.gdk-member__icons{display:inline-flex;gap:6px;opacity:0;transform:translateX(10px);transition:all .5s ease}
.gdk-member__socials:hover .gdk-member__icons{opacity:1;transform:translateX(0)}
.gdk-member__icons a{
  width:34px;height:34px;border-radius:50%;
  background:rgba(28,28,38,.85);
  border:1px solid var(--hairline-strong);
  display:flex;align-items:center;justify-content:center;
  color:var(--gold);font-size:12px;
}

/* ==========================================================
   14. BLOG
   ========================================================== */
.gdk-blog__head{display:flex;align-items:flex-end;justify-content:space-between;gap:32px;margin-bottom:64px;flex-wrap:wrap}
.gdk-blog__grid{display:grid;grid-template-columns:1.5fr 1fr;gap:32px;align-items:start}
@media (max-width:900px){.gdk-blog__grid{grid-template-columns:1fr}}

/* Default = full-width "lead" article: cover stacked above body */
.gdk-article{
  position:relative;
  background:var(--bg-elev);
  border:1px solid var(--hairline);
  border-radius:var(--r-card);
  overflow:hidden;
  transition:transform .5s ease, border-color .5s ease;
  display:flex;flex-direction:column;
  height:100%;
}
.gdk-article:hover{transform:translateY(-4px);border-color:var(--hairline-strong)}

.gdk-article__cover{
  aspect-ratio:16/10;
  background-image:var(--gdk-img,none);
  background-color:var(--bg-card);
  background-size:cover;background-position:center;
  position:relative;
  filter:contrast(1.02) saturate(.9);
}
.gdk-article__cover::after{
  content:'';position:absolute;inset:0;
  background:linear-gradient(180deg,transparent 60%,rgba(10,10,15,.55) 100%);
  pointer-events:none;
}

.gdk-article__chip{
  position:absolute;top:18px;left:18px;z-index:2;
  background:rgba(10,10,15,.85);
  border:1px solid var(--hairline-strong);
  border-radius:var(--r-btn);
  padding:10px 14px;
  text-align:center;
  font-family:var(--serif);
}
.gdk-article__chip strong{display:block;font-size:22px;font-weight:600;color:var(--gold-light);line-height:1}
.gdk-article__chip small{display:block;font-family:var(--caps);font-size:9px;letter-spacing:.22em;color:var(--text-mute);margin-top:3px}

.gdk-article__body{
  padding:28px 30px 30px;
  display:flex;flex-direction:column;gap:14px;
  flex:1;
}
.gdk-article__cat{
  font-family:var(--caps);font-size:10px;letter-spacing:.26em;
  text-transform:uppercase;color:var(--gold);
  margin:0;
}
.gdk-article__title{
  font-family:var(--serif);font-weight:500;font-size:26px;line-height:1.22;
  color:var(--text);
  margin:0;
  letter-spacing:-.005em;
}
.gdk-article__meta{
  display:flex;align-items:center;gap:18px;flex-wrap:wrap;
  font-family:var(--caps);font-size:10px;letter-spacing:.22em;
  color:var(--text-mute);
  margin-top:auto;
}
.gdk-article__meta i{color:var(--gold);margin-right:4px}

/* Stretched-link: title anchor expands to cover the whole card for
   a comfortable click target, while remaining a single semantic link
   for screen readers. Z-index keeps chip/cat/meta above the overlay. */
.gdk-article__link{
  color:inherit;text-decoration:none;
  outline:none;
}
.gdk-article__link::after{
  content:'';position:absolute;inset:0;z-index:1;
  border-radius:inherit;
}
.gdk-article__link:hover,
.gdk-article__link:focus-visible{color:var(--gold-light)}
.gdk-article__link:focus-visible::after{
  box-shadow:inset 0 0 0 2px rgba(212,175,55,.55);
}
.gdk-article__chip,
.gdk-article__cat,
.gdk-article__meta{position:relative;z-index:2}

/* Mini cards (side rail) — direct grid: cover on the left, body on the right.
   No anchor wrapper, no display:contents trick. */
.gdk-blog__side{display:flex;flex-direction:column;gap:24px}
.gdk-article--mini{
  display:grid;
  grid-template-columns:160px 1fr;
  align-items:stretch;
  height:auto;
}
.gdk-article--mini .gdk-article__cover{
  aspect-ratio:auto;
  min-height:160px;
  height:100%;
}
.gdk-article--mini .gdk-article__chip{top:12px;left:12px;padding:7px 10px}
.gdk-article--mini .gdk-article__chip strong{font-size:16px}
.gdk-article--mini .gdk-article__chip small{font-size:8px}
.gdk-article--mini .gdk-article__body{
  padding:20px 22px;
  gap:10px;
}
.gdk-article--mini .gdk-article__title{font-size:17px;line-height:1.3}
.gdk-article--mini .gdk-article__meta{font-size:9.5px;gap:14px}

@media (max-width:560px){
  .gdk-article--mini{grid-template-columns:1fr}
  .gdk-article--mini .gdk-article__cover{aspect-ratio:16/10;min-height:0}
}

/* ==========================================================
   15. CONTACT
   ========================================================== */
.gdk-contact{background:var(--bg-elev);position:relative;overflow:hidden}
.gdk-contact__grid{display:grid;grid-template-columns:1.5fr 1fr;gap:64px;align-items:center}
@media (max-width:992px){.gdk-contact__grid{grid-template-columns:1fr;gap:56px}}

.gdk-form{display:grid;grid-template-columns:1fr 1fr;gap:32px 28px;margin-top:42px}
.gdk-field{display:flex;flex-direction:column;gap:8px;position:relative}
.gdk-field--full{grid-column:1 / -1}
.gdk-field label{font-family:var(--caps);font-size:10px;letter-spacing:.24em;color:var(--text-mute)}
.gdk-field input,.gdk-field textarea{
  background:transparent;border:0;
  border-bottom:1px solid var(--hairline);
  padding:10px 0 14px;
  font-size:16px;color:var(--text);
  font-family:var(--serif);font-weight:400;
  outline:none;
  transition:border-color .4s;
}
.gdk-field input::placeholder,.gdk-field textarea::placeholder{color:var(--text-dim);font-style:italic}
.gdk-field textarea{min-height:120px;resize:vertical;font-family:var(--sans);font-size:15px;line-height:1.6}
.gdk-field::after{
  content:'';position:absolute;left:0;right:0;bottom:0;
  height:1px;background:linear-gradient(90deg,var(--gold-light),var(--gold) 50%,var(--gold-deep));
  transform:scaleX(0);transform-origin:left;
  transition:transform .55s cubic-bezier(.2,.7,.3,1);
  box-shadow:0 0 12px rgba(212,175,55,.4);
}
.gdk-field:focus-within::after{transform:scaleX(1)}

/* concierge visual */
.gdk-concierge{
  position:relative;
  aspect-ratio:3/4;
  border:1px solid var(--hairline-strong);
  border-radius:var(--r-card);
  overflow:hidden;
  background:
    radial-gradient(ellipse at 50% 0%, rgba(212,175,55,.10), transparent 55%),
    var(--bg-card);
}
.gdk-concierge__img{
  position:absolute;inset:0;
  background-image:var(--gdk-img,none);
  background-color:var(--bg-card);
  background-size:cover;background-position:center;
  /* Same gold-sepia treatment as the about frame so any user-uploaded
     contact illustration (cartoon clipart, bright SaaS art, etc.) reads
     as a tinted vintage print rather than clashing with the dark theme. */
  filter:grayscale(.7) sepia(.45) saturate(.8) contrast(1.08) brightness(.78);
}
.gdk-concierge__img::after{
  content:'';position:absolute;inset:0;
  /* Heavier two-layer overlay: darken from top + gold tint from upper-left.
     Removed mix-blend-mode:multiply because, combined with bright source
     images, it produced muddy mid-tones; straight layered gradients keep
     the gold rim crisp and the focal area legible. */
  background:
    linear-gradient(180deg, rgba(10,10,15,.18) 0%, rgba(10,10,15,.78) 100%),
    linear-gradient(135deg, rgba(212,175,55,.22) 0%, rgba(184,134,11,.06) 55%, transparent 100%);
  pointer-events:none;
}
/* Subtle film-grain noise on top of the photo to bind it into the
   themed luxury surface (matches the body::before grain on landing). */
.gdk-concierge__img::before{
  content:'';position:absolute;inset:0;
  pointer-events:none;
  opacity:.08;
  mix-blend-mode:overlay;
  background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='180' height='180'><filter id='n'><feTurbulence type='fractalNoise' baseFrequency='0.85' numOctaves='2' stitchTiles='stitch'/><feColorMatrix values='0 0 0 0 0.96  0 0 0 0 0.93  0 0 0 0 0.85  0 0 0 0.55 0'/></filter><rect width='100%' height='100%' filter='url(%23n)'/></svg>");
}
.gdk-concierge__caption{
  position:absolute;left:24px;bottom:24px;
  display:inline-flex;align-items:center;gap:10px;
  padding:12px 18px;
  background:rgba(10,10,15,.85);
  backdrop-filter:blur(14px);
  border:1px solid var(--hairline-strong);
  border-radius:var(--r-pill);
  font-family:var(--caps);font-size:10px;letter-spacing:.24em;color:var(--text);
}
.gdk-concierge__caption i{color:var(--gold)}

/* ==========================================================
   16. PARTNERS MARQUEE
   ========================================================== */
.gdk-partners{
  padding:80px 0;
  background:var(--bg-deep);
  border-top:1px solid var(--hairline);
  border-bottom:1px solid var(--hairline);
  position:relative;overflow:hidden;
}
.gdk-partners__head{text-align:center;margin-bottom:40px}
.gdk-marquee{position:relative;mask-image:linear-gradient(90deg,transparent,#000 12%,#000 88%,transparent);-webkit-mask-image:linear-gradient(90deg,transparent,#000 12%,#000 88%,transparent)}
.gdk-marquee__track{display:flex;gap:0;width:max-content;animation:gdkMarquee 38s linear infinite}
.gdk-marquee__item{
  flex:0 0 auto;
  display:inline-flex;align-items:center;justify-content:center;
  padding:0 50px;height:80px;
  font-family:var(--serif);font-weight:500;font-size:22px;
  color:var(--text);
  letter-spacing:.04em;
  filter:saturate(.4) brightness(1.1);
  opacity:.78;
  transition:opacity .35s;
}
.gdk-marquee__item:hover{opacity:1}
.gdk-marquee__sep{
  flex:0 0 auto;width:1px;height:36px;background:var(--hairline);align-self:center;
}
@keyframes gdkMarquee{
  from{transform:translateX(0)}
  to{transform:translateX(-50%)}
}

/* ==========================================================
   17. NEWSLETTER
   ========================================================== */
.gdk-newsletter{
  position:relative;
  padding:120px 0;
  background:var(--bg-deep);
}
.gdk-newsletter__panel{
  max-width:820px;margin:0 auto;
  position:relative;
  padding:80px 60px;
  border:1px solid var(--hairline-strong);
  border-radius:var(--r-card);
  background:
    radial-gradient(ellipse at 50% 0%, rgba(212,175,55,.1), transparent 60%),
    var(--bg-elev);
  text-align:center;
}
@media (max-width:640px){.gdk-newsletter__panel{padding:56px 28px}}
.gdk-newsletter h2{margin:18px 0 18px}
.gdk-newsletter p{color:var(--text-mute);max-width:50ch;margin:0 auto 40px}
.gdk-subscribe{
  display:flex;align-items:center;gap:0;
  max-width:560px;margin:0 auto;
  border-bottom:1px solid var(--hairline-strong);
  padding-bottom:2px;
  position:relative;
}
.gdk-subscribe input{
  flex:1;background:transparent;border:0;
  padding:18px 6px;
  color:var(--text);
  font-family:var(--serif);font-size:18px;
  outline:none;
}
.gdk-subscribe input::placeholder{color:var(--text-dim);font-style:italic}
.gdk-subscribe button{
  font-family:var(--caps);font-size:11px;letter-spacing:.28em;
  color:var(--gold-light);
  padding:14px 4px;
  display:inline-flex;align-items:center;gap:10px;
  white-space:nowrap;
}
.gdk-subscribe button:hover{color:var(--gold)}
.gdk-subscribe::after{
  content:'';position:absolute;left:0;right:0;bottom:0;
  height:1px;background:var(--gold);
  transform:scaleX(0);transform-origin:left;
  transition:transform .55s cubic-bezier(.2,.7,.3,1);
}
.gdk-subscribe:focus-within::after{transform:scaleX(1)}

/* ==========================================================
   18. FOOTER
   Premium private-banking footer:
   - Brand column (1.5fr) anchors the layout with logo + tagline + socials
   - DB-driven columns auto-fit, wider for TEXT sections (long-form copy)
     and narrower for LINK columns (just labels)
   - Subtle gold-radial wash in top-right for warmth without busyness
   ========================================================== */
.gdk-footer{
  position:relative;
  padding:96px 0 0;
  background:
    radial-gradient(ellipse 700px 320px at 100% 0%, rgba(212,175,55,.05), transparent 60%),
    radial-gradient(ellipse 520px 280px at 0% 100%, rgba(184,134,11,.04), transparent 60%),
    var(--bg-base);
  border-top:1px solid var(--hairline);
}

/* Explicit 4-column desktop grid. `auto-fit` combined with a fixed first
   column was making the entire row collapse to a single column at certain
   widths — pinning the template removes that ambiguity. Brand is widest
   (anchor of the layout); the three content columns share the remainder. */
.gdk-footer__grid{
  display:grid;
  grid-template-columns:1.4fr 1fr 1fr 1.1fr;
  gap:56px 44px;
  align-items:start;
}
@media (max-width:1100px){
  /* 2x2 grid: brand spans both columns on top, content columns below */
  .gdk-footer__grid{
    grid-template-columns:repeat(3, 1fr);
    gap:48px 32px;
  }
  .gdk-footer__brand{grid-column:1 / -1;max-width:none}
  .gdk-footer__brand .gdk-footer__tagline{max-width:60ch}
}
@media (max-width:760px){
  .gdk-footer__grid{
    grid-template-columns:1fr 1fr;
    gap:40px 28px;
  }
}
@media (max-width:480px){
  .gdk-footer__grid{grid-template-columns:1fr}
}

/* ----- Brand column ----- */
.gdk-footer__brand{max-width:360px}
.gdk-footer__brand .gdk-logo{margin-bottom:22px}
.gdk-footer__tagline{
  color:var(--text-mute);font-size:14.5px;line-height:1.75;
  margin:0 0 24px;
}
.gdk-footer__socials{margin-bottom:22px}
.gdk-footer__license{
  font-size:11.5px;color:var(--text-dim);line-height:1.65;
  max-width:34ch;margin:0;
}

/* ----- Column titles ----- */
.gdk-footer__col-title{
  font-family:var(--caps);font-size:11px;font-weight:500;
  letter-spacing:.28em;text-transform:uppercase;
  color:var(--gold);
  margin:0 0 22px;
  display:inline-flex;align-items:center;gap:10px;
}
.gdk-footer__col-title::after{
  content:'';
  flex:0 0 22px;height:1px;
  background:linear-gradient(90deg, var(--gold), transparent);
  opacity:.7;
}

/* ----- LINK rows (page links, social links, contact) ----- */
.gdk-footer__links{
  list-style:none;
  padding:0;margin:0;
  display:flex;flex-direction:column;gap:12px;
}
.gdk-footer__link-row{padding:0;line-height:1.4}
.gdk-footer__link{
  display:inline-flex;align-items:center;gap:11px;
  color:var(--text-mute);
  font-size:14px;line-height:1.5;
  text-decoration:none;
  transition:color .3s ease, transform .3s cubic-bezier(.2,.7,.3,1), gap .3s ease;
}
.gdk-footer__link:hover{
  color:var(--gold-light);
  transform:translateX(3px);
  gap:14px;
}
.gdk-footer__link:hover .gdk-footer__link-dot{background:var(--gold-light);box-shadow:0 0 8px rgba(245,230,168,.5)}
.gdk-footer__link:hover .gdk-footer__link-icon{color:var(--gold-light)}

.gdk-footer__link-dot{
  width:4px;height:4px;border-radius:50%;
  background:var(--gold);
  flex:0 0 auto;
  transition:background .3s ease, box-shadow .3s ease;
}
.gdk-footer__link-icon{
  color:var(--gold);
  font-size:12px;
  flex:0 0 auto;width:16px;text-align:center;
  transition:color .3s ease;
}

/* ----- TEXT blocks (about-style multi-paragraph column) ----- */
.gdk-footer__textblocks{display:flex;flex-direction:column;gap:18px}
.gdk-footer__textblock{display:flex;flex-direction:column;gap:6px}
.gdk-footer__textblock-head{
  display:inline-flex;align-items:center;gap:8px;
  font-family:var(--serif);font-weight:500;font-size:15px;
  color:var(--text);line-height:1.35;
}
.gdk-footer__textblock-icon{
  color:var(--gold);font-size:11px;flex:0 0 auto;
}
.gdk-footer__textblock-body{
  margin:0;
  color:var(--text-mute);
  font-size:13.5px;line-height:1.7;
  max-width:38ch;
}

/* ----- Hairline rule before copyright ----- */
.gdk-footer__rule{
  height:1px;
  margin-top:72px;
  background:linear-gradient(90deg,transparent,var(--hairline) 18%,var(--hairline) 82%,transparent);
}

/* ----- Bottom bar ----- */
.gdk-footer__bottom{
  padding:24px 0 32px;
  display:flex;align-items:center;justify-content:space-between;gap:24px;flex-wrap:wrap;
  font-size:12.5px;color:var(--text-dim);
}
.gdk-footer__copyright{
  font-family:var(--caps);font-size:10.5px;letter-spacing:.18em;
  text-transform:uppercase;color:var(--text-dim);
}
.gdk-footer__attribution{font-size:11.5px;color:var(--text-dim)}
.gdk-footer__attribution a{color:var(--text-mute);transition:color .3s}
.gdk-footer__attribution a:hover{color:var(--gold)}

/* ==========================================================
   19. SECTION MODIFIERS & UTILITIES
   Modifier classes replacing previously inline styles. Each modifier
   is named so the markup reads as a deliberate variant rather than a
   one-off override.
   ========================================================== */

/* Section background variants */
.gdk-section--elev{background:var(--bg-elev)}
.gdk-section--card{background:var(--bg-card)}

/* Heading inside section heads gets a small top breathing room
   (replaces the old style="margin-top:16px") */
.gdk-section-head__title{margin-top:16px}

/* Lead paragraph variants for section heads / panels */
.gdk-lead--centered{margin:18px auto 0}
.gdk-lead--spaced{margin-top:18px}

/* Empty-state paragraph centered (replaces inline text-align/color) */
.gdk-empty{text-align:center;color:var(--text-mute);padding:32px 0}

/* Image fallback gradient when no asset provided */
.gdk-img-fallback{background-image:linear-gradient(135deg,#1c1c26,#0a0a0f);background-color:var(--bg-card)}
.gdk-img-fallback--soft{background-image:linear-gradient(180deg,#1c1c26,#0a0a0f);background-color:var(--bg-card)}

/* Vault card micro labels (replaces the long inline small style
   repeated three times in _banner.blade.php) */
.gdk-vault__micro{
  display:block;
  font-family:var(--caps);
  font-size:8px;
  letter-spacing:.2em;
  text-transform:uppercase;
  color:var(--text-dim);
}
.gdk-vault__micro--right{text-align:right}

/* About section reveal column needs a positioning context for the
   absolutely-positioned floating stat tile. */
.gdk-about__column{position:relative}

/* Concierge: ensure corner ornaments sit above the image overlay */
.gdk-concierge .gdk-corner{z-index:3}

/* Offer CTA gets standalone breathing room from the eyebrow/heading */
.gdk-offer__cta{margin-top:36px}

/* Dynamic content wrapper card padding */
.gdk-dynamic-card{padding:48px 36px}

/* Partner marquee logo treatment — monochrome, scaled */
.gdk-marquee__logo{
  max-height:48px;
  width:auto;
  filter:invert(.85) saturate(0) brightness(1.05);
  opacity:.85;
  transition:opacity .3s, filter .3s;
}
.gdk-marquee__item:hover .gdk-marquee__logo{opacity:1;filter:invert(.9) saturate(.1) brightness(1.15)}

/* ==========================================================
   responsive minor
   ========================================================== */
@media (max-width:768px){
  .gdk-hero{padding:72px 0 72px}
  .gdk-services__head,.gdk-blog__head,.gdk-footer__bottom{flex-direction:column;align-items:flex-start}
  .gdk-form{grid-template-columns:1fr}
  .gdk-floatstat{right:14px;bottom:14px;min-width:auto}
}
