
  :root{
    --bg:#000000;
    --panel:#111110;
    --panel-2:#151412;
    --edge:#1f1e1a;
    --ivory:#f3ede2;
    --muted:#8f897c;
    --champagne:#c8a873;
    --gallery:#caa46a;
    --fashion:#a892c9;
    --corner:#c9a227;
    --serif:'Fraunces', Georgia, serif;
    --sans:'Manrope', 'Segoe UI', Arial, sans-serif;
    --accent:var(--champagne);
  }
  *{margin:0;padding:0;box-sizing:border-box;}
  html{scroll-behavior:smooth;}
  body{background:var(--bg); color:var(--ivory); font-family:var(--sans); overflow-x:hidden; -webkit-font-smoothing:antialiased;}
  a{color:inherit; text-decoration:none;}
  svg{display:block;}
  ::selection{background:var(--accent); color:#08080a;}
  a:focus-visible, button:focus-visible{outline:1px solid var(--accent); outline-offset:4px;}

  .wrap{max-width:1920px; margin:0 auto; padding:0 6vw;}

  .particle,
.star {
  width: 8px;
  height: 8px;
  border-radius: 50%;
  box-shadow: 0 0 12px rgba(224, 192, 132, 0.9);
}


  /* ---------- Tab bar ---------- */
  .tabbar{
    position:sticky; top:0; z-index:100;
    background:rgba(8,8,10,0.92); backdrop-filter:blur(12px);
    border-bottom:1px solid var(--edge);
  }
  .tabbar-inner{
    max-width:1920px; margin:0 auto; 
    padding:0px;
    display:flex; align-items:center; gap:0rem;
  }
  .brandmark{
    display:flex; 
    align-items:center; 
    gap:10px; 
    padding:14px 0; 
    width:17%;
    /* flex-shrink:0; */
  }
  .brandmark span{font-family:var(--serif); font-weight:500; font-size:0.95rem; letter-spacing:0.12em;}
  .tabs{display:flex; position:relative; overflow-x:auto; scrollbar-width:none; 
    margin-left:auto;
    width:52%;
  }
  .tabs::-webkit-scrollbar{display:none;}
  .tabs button{
    background:none; border:none; font-family:inherit; cursor:pointer;
    color:var(--muted); font-size:0.8rem; letter-spacing:0.06em; text-transform:uppercase;
    /* padding:20px 16px;  */
    white-space:nowrap; position:relative;
    transition:color .25s ease;
  }
  .tabs button:hover{color:var(--ivory);}
  .tabs button.active{color:var(--ivory);}
  .tabs button::after{
    content:''; position:absolute; left:16px; right:16px; bottom:0; height:2px;
    background:currentColor; transform:scaleX(0); transform-origin:center;
    transition:transform .35s cubic-bezier(.4,0,.2,1);
  }
  .tabs button.active::after{transform:scaleX(1); background:var(--tab-accent, var(--champagne));}
 

  /* ---------- Panels + transitions ---------- */
  .panel{display:none; animation:panelIn .55s cubic-bezier(.22,.8,.28,1) both;}
  .panel.active{display:block;}
  .panel.leaving{display:block; animation:panelOut .22s ease both;}
  @keyframes panelIn{from{opacity:0; transform:translateY(22px) scale(.995); filter:blur(4px);} to{opacity:1; transform:none; filter:blur(0);}}
  @keyframes panelOut{from{opacity:1;} to{opacity:0; transform:translateY(-10px);}}
  .panel.active .stagger > *{animation:riseIn .6s cubic-bezier(.22,.8,.28,1) both;}
  .panel.active .stagger > *:nth-child(1){animation-delay:.05s}
  .panel.active .stagger > *:nth-child(2){animation-delay:.12s}
  .panel.active .stagger > *:nth-child(3){animation-delay:.19s}
  .panel.active .stagger > *:nth-child(4){animation-delay:.26s}
  .panel.active .stagger > *:nth-child(5){animation-delay:.33s}
  @keyframes riseIn{from{opacity:0; transform:translateY(18px);} to{opacity:1; transform:none;}}

  .reveal{opacity:0; transform:translateY(26px); transition:opacity .7s ease, transform .7s cubic-bezier(.22,.8,.28,1);}
  .reveal.in{opacity:1; transform:none;}

  /* ---------- Shared type ---------- */
  .eyebrow{
    display:inline-block; font-size:1.5rem; letter-spacing:0.24em; 
    color:rgb(255 216 123);
    text-transform:uppercase; margin-bottom:1.1rem;
    
  }
  h1,h2,h3{font-family:var(--serif); font-weight:400; line-height:1.1;}
  .section{padding:clamp(56px,8vw,110px) 0;}
  .section-title{font-size:clamp(1.9rem,4vw,3rem); margin-bottom:1rem;}
  .lede{color:var(--muted); font-size:1.02rem; line-height:1.75; max-width:62ch;}

  .btn{
    display:inline-block; border:1px solid var(--accent); color:var(--ivory);
    padding:0.85rem 1.7rem; font-size:0.8rem; letter-spacing:0.08em; text-transform:uppercase;
    transition:background .3s ease, color .3s ease, transform .3s ease;
  }
  .btn:hover{background:var(--accent); color:#08080a; transform:translateY(-2px);}
  .btn-ghost{border-color:#33312c; color:var(--muted);}
  .btn-ghost:hover{background:none; border-color:var(--ivory); color:var(--ivory);}

  /* ---------- Hero ---------- */
  .hero{
    position:relative; min-height:min(88svh,760px); display:flex; align-items:center;
    text-align:center; overflow:hidden; padding:clamp(70px,10vw,120px) 0;
  }
  .hero::before{
    content:''; position:absolute; inset:-30%;
    /* background:radial-gradient(circle at 50% 40%, color-mix(in srgb, var(--accent) 16%, transparent), transparent 62%); */
    /* background:black; */
    animation:glow 12s ease-in-out infinite alternate;
  }
  @keyframes glow{from{transform:scale(1) translateY(0);} to{transform:scale(1.15) translateY(-3%);}}
  .hero-particles{position:absolute; inset:0; width:100%; height:100%; z-index:0; opacity:.78; pointer-events:none;}
  .hero::after{
    content:''; position:absolute; inset:0; z-index:1; pointer-events:none;
    background:radial-gradient(ellipse at center, rgba(8,8,10,.2) 0%, rgba(8,8,10,.08) 42%, rgba(8,8,10,.34) 100%);
  }
  .hero-content{position:relative; z-index:2; margin:0 auto; max-width:800px; text-shadow:0 2px 22px rgba(8,8,10,.9);}
  .hero-content .btn{text-shadow:none; background:rgba(8,8,10,.24); backdrop-filter:blur(2px);}
  .hero-content .btn:hover{background:var(--accent);}
  @media(max-width:640px){.hero-particles{opacity:.65;}}

  .hero h1{
    font-size:clamp(2.6rem,9vw,6rem); letter-spacing:0.02em; margin-bottom:1.4rem;
  }
  .hero p{color:red; font-size:1.5em; line-height:1.8; max-width:60ch; margin:0 auto 2.4rem;}
  .hero-ctas{display:flex; gap:1rem; justify-content:center; flex-wrap:wrap;}
  .hero.split{text-align:left;}
  .hero.split .hero-inner{display:grid; grid-template-columns:1.1fr .9fr; gap:clamp(2rem,5vw,4.5rem); align-items:center; position:relative; z-index:2;}
  .hero.split h1{font-size:clamp(2rem,4.6vw,3.5rem); margin-bottom:1.2rem;}
  .hero.split p{margin:0 0 2.2rem;}
  .hero-visual{
    /* aspect-ratio:4/3.4;  */
    border:1px solid var(--edge); 
    /* border-radius:4px; */
    /* background:linear-gradient(150deg, color-mix(in srgb, var(--accent) 22%, #0d0d0c), #0d0d0c 70%); */
    /* display:flex; align-items:flex-end; padding:1.6rem; */
  }
  .hero-visual span{
    font-family:var(--serif); font-size:1.4rem; color:var(--accent); letter-spacing:0.04em;
  }

  /* ---------- Cards / grids ---------- */
  .grid-3{display:grid; grid-template-columns:repeat(auto-fit,minmax(250px,1fr)); gap:1.4rem;}
  .card{
    background:var(--panel); border:1px solid var(--edge); padding:2.2rem 1.8rem;
    position:relative; overflow:hidden;
    transition:transform .4s cubic-bezier(.22,.8,.28,1), border-color .4s ease, background .4s ease;
  }
  .card::before{
    content:''; position:absolute; left:0; top:0; height:2px; width:0; background:var(--card-accent,var(--accent));
    transition:width .45s ease;
  }
  .card:hover{transform:translateY(-6px); border-color:color-mix(in srgb, var(--card-accent,var(--accent)) 45%, var(--edge)); background:var(--panel-2);}
  .card:hover::before{width:100%;}
  .card .num{position:absolute; top:1.2rem; right:1.4rem; font-family:var(--serif); font-size:0.9rem; color:#3a3730;}
  .card h3{font-size:1.35rem; margin:1.1rem 0 .5rem;}
  .card p{color:var(--muted); font-size:0.92rem; line-height:1.7;}

  .chips{display:flex; flex-wrap:wrap; gap:.6rem; margin-top:1.6rem;}
  .chips span{
    border:1px solid var(--edge); color:var(--muted); font-size:0.78rem;
    padding:.5rem 1rem; border-radius:100px; transition:border-color .3s ease, color .3s ease, transform .3s ease;
  }
  .chips span:hover{border-color:var(--accent); color:var(--ivory); transform:translateY(-2px);}

  /* ---------- Brand showcase rows ---------- */
  .store{
    display:grid; grid-template-columns:.85fr 1.15fr; gap:clamp(1.5rem,4vw,3.5rem);
    align-items:center; padding:clamp(2.5rem,5vw,4rem) 0; border-top:1px solid var(--edge);
  }
  .store-visual{
    /* aspect-ratio:1/1;  */
    border:1px solid var(--edge);
    /* background:linear-gradient(160deg, color-mix(in srgb, var(--store-accent) 18%, #0e0e0d), #0e0e0d 72%);
    display:flex; 
    flex-direction:column; 
    justify-content:space-between; 
    padding:1.6rem;
    transition:transform .5s cubic-bezier(.22,.8,.28,1); */
  }
  .store:hover .store-visual{transform:translateY(-6px);}
  .store-num{font-size:0.68rem; letter-spacing:0.22em; color:var(--muted);}
  .store-mark{
    /* display:flex; 
    align-items:center; 
    gap:10px; 
    font-family:var(--serif); 
    font-size:1.15rem; */
  }
  .store-text h2{font-size:clamp(1.6rem,3.2vw,2.4rem); margin-bottom:.5rem;}
  .subhead{color:var(--store-accent); font-size:0.82rem; letter-spacing:0.14em; text-transform:uppercase; margin-bottom:1.1rem;}
  .store-text p{color:var(--muted); line-height:1.8; margin-bottom:1.2rem;}
  .store-domain{display:block; margin-top:1.2rem; font-size:0.75rem; letter-spacing:0.1em; color:#5f5b53;}

  /* ---------- Stats ---------- */
  .stats{display:flex; flex-wrap:wrap; gap:clamp(2rem,6vw,4.5rem); margin-top:2.8rem;}
  .stat .num{font-family:var(--serif); font-size:clamp(2rem,4vw,2.8rem); color:var(--accent);}
  .stat .label{font-size:0.68rem; letter-spacing:0.2em; color:var(--muted); margin-top:.4rem;}

  /* ---------- Testimonials ---------- */
  .testi{background:var(--panel); border:1px solid var(--edge); padding:1.9rem; transition:transform .4s ease, border-color .4s ease;}
  .testi:hover{transform:translateY(-5px); border-color:color-mix(in srgb,var(--accent) 40%, var(--edge));}
  .stars{color:var(--accent); letter-spacing:.15em; margin-bottom:.9rem; font-size:.85rem;}
  .testi p{color:var(--ivory); line-height:1.75; font-size:.95rem; margin-bottom:1.1rem;}
  .testi .name{font-family:var(--serif); font-size:1rem;}
  .testi .role{color:var(--muted); font-size:.75rem; letter-spacing:.08em; margin-top:.2rem;}

  /* ---------- Highlight banner ---------- */
  .banner{
    border:1px solid var(--edge); background:linear-gradient(120deg, color-mix(in srgb,var(--accent) 12%, var(--panel)), var(--panel) 65%);
    padding:clamp(1.8rem,4vw,2.8rem); display:flex; gap:1.6rem; align-items:center; justify-content:space-between; flex-wrap:wrap;
  }
  .banner h3{font-size:clamp(1.3rem,2.6vw,1.9rem); margin-bottom:.5rem;}
  .banner p{color:var(--muted); max-width:52ch; line-height:1.7;}

  /* ---------- Contact + footer ---------- */
  .contact-grid{display:grid; grid-template-columns:1fr 1fr; gap:clamp(2rem,5vw,4rem);}
  .contact-details{display:grid; grid-template-columns:repeat(auto-fit,minmax(150px,1fr)); gap:1.6rem;}
  .contact-item h4{font-size:0.66rem; letter-spacing:0.2em; color:var(--muted); margin-bottom:.5rem; font-family:var(--sans); font-weight:600;}
  .contact-item a:hover{color:var(--accent);}
  footer{border-top:1px solid var(--edge); padding:clamp(2.5rem,5vw,4rem) 0 2rem; background:#0a0a09;}
  .footer-top{display:grid; grid-template-columns:1.6fr 1fr 1fr; gap:2.5rem;}
  .footer-brand p{color:var(--muted); line-height:1.7; font-size:.9rem; margin:.9rem 0 1rem; max-width:40ch;}
  .footer-brand .meta{display:block; color:#5f5b53; font-size:.78rem; margin-top:.25rem;}
  .footer-col h4{font-size:.66rem; letter-spacing:.2em; color:var(--muted); margin-bottom:1rem; font-family:var(--sans); font-weight:600;}
  .footer-col a{display:flex; align-items:center; gap:8px; color:#b8b2a6; font-size:.88rem; margin-bottom:.7rem; transition:color .25s ease;}
  .footer-col a:hover{color:var(--accent);}
  .footer-bottom{
    display:flex; justify-content:space-between; flex-wrap:wrap; gap:.6rem;
    border-top:1px solid var(--edge); margin-top:2.5rem; padding-top:1.4rem;
    color:#5f5b53; font-size:.78rem;
  }

  @media(max-width:900px){
    .hero.split .hero-inner, .store, .contact-grid, .footer-top{grid-template-columns:1fr;}
    .store-visual{aspect-ratio:16/9;}
    .hero-visual{aspect-ratio:16/10;}
    .hero.split{text-align:left;}
  }
  @media(max-width:640px){
    .tabbar-inner{flex-direction:column; align-items:stretch; gap:0; padding:0 4vw;

    }
   
    .brandmark{justify-content:center; padding:12px 0 6px;
    width:50%;
    margin:0px auto;
  }
    .tabs{margin-left:0; justify-content:flex-start; border-top:1px solid var(--edge);
    width:100%;
    font-size:11px;
     }
    .tabs button{padding:14px 12px; font-size:.72rem;margin-left:0px;}
    .wrap{padding:0 6vw;}
    .eyebrow{
       font-size:9px;
    }
    .container{
      gap: 0px !important;
    }
    .hero p{
       font-size:9px;
    }
  }
  @media (prefers-reduced-motion: reduce){
    html{scroll-behavior:auto;}
    *{animation:none !important; transition:none !important;}
    .reveal{opacity:1; transform:none;}
  }

  .card {
    animation: gentleFloat 5s ease-in-out infinite;
    transform-origin: center center;
    will-change: transform;
}

.bottom-title{
  text-align:center;
  padding-top:10px;
}
/* =========================
   MENU TAB - GLASS STYLE
========================= */

/* .menu{
  color:red !important; 
  font-size:1.1em !important;
  font-weight: bold !important;
} */

.menu {
    background: transparent !important;
    /* border: 1px solid var(--tab-accent) !important; */
    /* color: #fff; */
    font-size:1.1em !important;
    font-weight: bold !important;
    border-radius: 14px;
    /* padding: 10px 18px; */
    cursor: pointer;
    margin-left:0%;

    /* Glass effect */
    /* background: rgba(255, 255, 255, 0.025) !important;
    backdrop-filter: blur(8px);
    -webkit-backdrop-filter: blur(8px); */

    /* Smooth */
    /* transition: all 0.3s ease; */

    /* Accent glow */
    /* box-shadow:
        0 0 8px color-mix(in srgb, var(--tab-accent) 25%, transparent),
        inset 0 0 10px rgba(255, 255, 255, 0.02); */
}
.menu-icon{
  width:27%;
  height:100%;
  margin-bottom:-8%;
  border-radius:50%;
}

/* Hover */
.menu:hover {
    /* background: color-mix(
        in srgb,
        var(--tab-accent) 10%,
        transparent
    ) !important; */

    border-color: var(--tab-accent) !important;

    /* box-shadow:
        0 0 15px color-mix(in srgb, var(--tab-accent) 45%, transparent),
        inset 0 0 12px color-mix(in srgb, var(--tab-accent) 8%, transparent);

    transform: translateY(-2px); */
}

/* Active */
.menu.active {
    /* background: color-mix(
        in srgb,
        var(--tab-accent) 12%,
        transparent
    ) !important; */

    border-color: var(--tab-accent) !important;

    /* box-shadow:
        0 0 18px color-mix(in srgb, var(--tab-accent) 50%, transparent),
        inset 0 0 15px color-mix(in srgb, var(--tab-accent) 10%, transparent); */
}


@keyframes gentleFloat {
    0% {
        transform: translateY(0) rotate(0deg);
    }

    25% {
        transform: translateY(-7px) rotate(0.5deg);
    }

    50% {
        transform: translateY(-12px) rotate(-0.5deg);
    }

    75% {
        transform: translateY(-6px) rotate(0.4deg);
    }

    100% {
        transform: translateY(0) rotate(0deg);
    }
}



/* =========================================
   ECOSYSTEM — 3 ITEMS IN ONE ROW
   Desktop + Tablet + Mobile
   ========================================= */

#ecosystem .grid-3 {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: clamp(0.6rem, 2vw, 1.4rem);
    width: 100%;
}

#ecosystem .grid-3 > a {
    min-width: 0;
    display: block;
}

#ecosystem .grid-3 .card {
    width: 100%;
    aspect-ratio: 1 / 1;
    padding: 0;
    border-radius: 50%;
    overflow: hidden;
    background: #000;
    border:1px solid #b70000;
}

#ecosystem .grid-3 .card img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: contain;
}

#ecosystem .bottom-title {
    text-align: center;
    padding-top: 10px;
}

#ecosystem .bottom-title h3 {
    font-size: clamp(0.85rem, 2vw, 1.35rem);
}

#ecosystem .bottom-title p {
    font-size: clamp(0.55rem, 1.3vw, 0.92rem);
    line-height: 1.4;
    color: var(--muted);
}


/* Tablet */
@media (max-width: 900px) {
    #ecosystem .grid-3 {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }
    .menu{
    font-size:0.7em !important;
    margin-left: 25px;
    }
   
}


/* Mobile */
@media (max-width: 640px) {
  .menu{
    font-size:0.7em !important;
    margin-left: 25px;
    }
   
    #ecosystem .grid-3 {
        grid-template-columns: repeat(3, minmax(0, 1fr));
        gap: 8px;
    }

    #ecosystem .bottom-title {
        padding-top: 6px;
    }

    #ecosystem .bottom-title h3 {
        font-size: 0.75rem;
    }

    #ecosystem .bottom-title p {
        font-size: 0.48rem;
        line-height: 1.3;
    }
}