
:root{
  --navy:#070536;
  --navy-2:#0e0a58;
  --orange:#f59a00;
  --orange-2:#ffb52d;
  --ink:#11131a;
  --muted:#6b7280;
  --surface:#ffffff;
  --soft:#f5f6f8;
  --line:#e8e9ee;
  --green:#16a34a;
  --shadow:0 20px 60px rgba(7,5,54,.10);
  --radius:22px;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{
  margin:0;color:var(--ink);background:#fff;
  font-family:Poppins,Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
  -webkit-font-smoothing:antialiased
}
body.modal-open{overflow:hidden}
a{color:inherit;text-decoration:none}
button,input,select,textarea{font:inherit}
img{max-width:100%;display:block}
.container{width:min(1240px,calc(100% - 40px));margin:auto}
.announcement{background:var(--navy);color:#fff;font-size:12px;font-weight:600;letter-spacing:.02em}
.announcement .container{min-height:36px;display:flex;align-items:center;justify-content:center;gap:20px;text-align:center}
.dot{width:5px;height:5px;border-radius:50%;background:var(--orange)}
.header{background:rgba(255,255,255,.96);position:sticky;top:0;z-index:60;border-bottom:1px solid rgba(7,5,54,.08);backdrop-filter:blur(18px)}
.header-main{height:82px;display:grid;grid-template-columns:230px minmax(320px,1fr) 230px;gap:28px;align-items:center}
.site-logo{display:flex;align-items:center;gap:12px;min-width:0}
.site-logo img{width:52px;height:52px;object-fit:contain}
.site-logo-copy{line-height:1.08}
.site-logo-copy b{display:block;color:var(--navy);font-size:19px;letter-spacing:-.035em}
.site-logo-copy span{display:block;color:#8b8e98;font-size:9px;letter-spacing:.21em;margin-top:5px;text-transform:uppercase;font-weight:700}
.header-search{position:relative}
.header-search input{
  width:100%;height:48px;border:1px solid var(--line);background:#f8f8fa;border-radius:999px;
  padding:0 52px 0 20px;outline:none;transition:.2s
}
.header-search input:focus{border-color:#b6b5cb;box-shadow:0 0 0 4px rgba(7,5,54,.05);background:#fff}
.search-icon{position:absolute;right:18px;top:50%;transform:translateY(-50%);color:var(--navy);font-size:18px}
.header-actions{display:flex;justify-content:flex-end;align-items:center;gap:12px}
.icon-btn{height:44px;min-width:44px;border:1px solid var(--line);background:#fff;border-radius:50%;display:grid;place-items:center;cursor:pointer}
.whatsapp-pill{height:44px;border-radius:999px;background:var(--green);color:#fff;display:inline-flex;align-items:center;gap:8px;padding:0 16px;font-size:13px;font-weight:700}
.mobile-menu-btn{display:none}
.navbar{border-top:1px solid rgba(7,5,54,.04)}
.navbar .container{height:50px;display:flex;align-items:center;justify-content:center;gap:32px}
.navbar a{font-size:13px;font-weight:650;color:#32343c;position:relative}
.navbar a:after{content:"";position:absolute;left:0;bottom:-7px;width:0;height:2px;background:var(--orange);transition:.2s}
.navbar a:hover:after{width:100%}

/* HERO */
.hero{padding:26px 0 12px}
.hero-stage{
  min-height:570px;border-radius:32px;overflow:hidden;
  background:linear-gradient(120deg,#070536 0%,#0b084a 48%,#17106f 100%);
  position:relative;color:#fff;display:grid;grid-template-columns:1.05fr .95fr;align-items:center
}
.hero-stage:before{
  content:"";position:absolute;width:620px;height:620px;border-radius:50%;
  background:radial-gradient(circle,rgba(245,154,0,.22),rgba(245,154,0,0) 66%);
  right:-110px;top:-140px
}
.hero-stage:after{
  content:"";position:absolute;inset:0;
  background-image:linear-gradient(rgba(255,255,255,.018) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.018) 1px,transparent 1px);
  background-size:42px 42px;pointer-events:none
}
.hero-copy{padding:72px 0 72px 68px;position:relative;z-index:2}
.eyebrow{display:inline-flex;align-items:center;gap:9px;text-transform:uppercase;letter-spacing:.18em;font-size:11px;font-weight:700;color:#ffd992}
.eyebrow:before{content:"";width:28px;height:1px;background:var(--orange)}
.hero h1{font-size:clamp(48px,5.6vw,82px);line-height:.96;letter-spacing:-.055em;margin:18px 0 22px;max-width:720px}
.hero h1 em{font-style:normal;color:var(--orange-2)}
.hero p{max-width:610px;color:#d9d9e5;font-size:17px;line-height:1.75;margin:0 0 30px}
.hero-actions{display:flex;gap:12px;flex-wrap:wrap}
.btn{border:0;border-radius:999px;min-height:48px;padding:0 22px;display:inline-flex;align-items:center;justify-content:center;gap:8px;font-weight:750;cursor:pointer;transition:.2s}
.btn-orange{background:var(--orange);color:#140f00}
.btn-orange:hover{background:var(--orange-2);transform:translateY(-1px)}
.btn-outline-light{border:1px solid rgba(255,255,255,.34);color:#fff;background:rgba(255,255,255,.04)}
.btn-dark{background:var(--navy);color:#fff}
.btn-wa{background:var(--green);color:#fff}
.hero-visual{height:100%;min-height:570px;position:relative;z-index:2;display:grid;place-items:center}
.watch-art{
  width:350px;height:350px;border-radius:50%;
  background:radial-gradient(circle at 35% 28%,#27329d,#090631 65%,#05031e);
  border:18px solid #e9edf4;box-shadow:0 42px 100px rgba(0,0,0,.35),inset 0 0 0 9px #aeb5c5;
  position:relative
}
.watch-art:before,.watch-art:after{content:"";position:absolute;left:50%;transform:translateX(-50%);width:132px;background:linear-gradient(90deg,#a8b0c2,#f5f7fa 42%,#aeb6c6);z-index:-1}
.watch-art:before{height:190px;top:-188px;border-radius:28px 28px 8px 8px}
.watch-art:after{height:190px;bottom:-188px;border-radius:8px 8px 28px 28px}
.watch-art .brand{position:absolute;top:104px;left:0;right:0;text-align:center;font-size:16px;font-weight:700;letter-spacing:.16em}
.watch-art .hands:before{content:"";position:absolute;width:9px;height:92px;background:#fff;left:50%;top:50%;transform-origin:center bottom;transform:translate(-50%,-100%) rotate(33deg);border-radius:8px}
.watch-art .hands:after{content:"";position:absolute;width:5px;height:126px;background:var(--orange);left:50%;top:50%;transform-origin:center bottom;transform:translate(-50%,-100%) rotate(128deg);border-radius:8px}
.watch-art .center{position:absolute;width:22px;height:22px;border-radius:50%;background:var(--orange);left:50%;top:50%;transform:translate(-50%,-50%);box-shadow:0 0 0 7px rgba(245,154,0,.2)}
.tick{position:absolute;width:4px;height:20px;background:#fff;border-radius:4px;left:50%;top:26px;transform-origin:2px 149px;opacity:.85}

/* TRUST */
.trust-strip{padding:18px 0 8px}
.trust-grid{display:grid;grid-template-columns:repeat(4,1fr);border:1px solid var(--line);border-radius:18px;background:#fff;overflow:hidden}
.trust-item{min-height:88px;padding:18px 20px;display:flex;gap:13px;align-items:center;border-right:1px solid var(--line)}
.trust-item:last-child{border-right:0}
.trust-icon{width:42px;height:42px;border-radius:13px;background:#fff5e3;color:#b66b00;display:grid;place-items:center;font-size:19px;flex:none}
.trust-item b{display:block;font-size:13px;color:var(--navy)}
.trust-item span{display:block;font-size:11px;color:var(--muted);margin-top:3px;line-height:1.45}

/* SECTIONS */
.section{padding:54px 0}
.section.soft{background:var(--soft)}
.section-head{display:flex;align-items:flex-end;justify-content:space-between;gap:25px;margin-bottom:26px}
.kicker{text-transform:uppercase;color:#b76b00;font-size:10px;letter-spacing:.18em;font-weight:800}
.section h2{font-size:clamp(30px,3vw,42px);letter-spacing:-.045em;line-height:1.05;margin:6px 0 0;color:var(--navy)}
.section-sub{color:var(--muted);font-size:14px;line-height:1.65;max-width:620px;margin-top:8px}
.text-link{font-size:13px;font-weight:750;color:var(--navy);white-space:nowrap}
.text-link:hover{color:#b76b00}

/* DISCOVERY */
.discovery-grid{display:grid;grid-template-columns:1.3fr 1fr 1fr;gap:16px}
.discovery-card{
  min-height:210px;border-radius:22px;padding:27px;position:relative;overflow:hidden;
  background:#fff;border:1px solid var(--line);display:flex;flex-direction:column;justify-content:flex-end
}
.discovery-card:first-child{grid-row:span 2;min-height:436px;background:linear-gradient(145deg,#070536,#17106f);color:#fff}
.discovery-card.orange{background:linear-gradient(145deg,#fff6e8,#ffe6b7)}
.discovery-card.dark{background:#12131a;color:#fff}
.discovery-card h3{font-size:24px;letter-spacing:-.035em;margin:0 0 5px}
.discovery-card p{margin:0;color:inherit;opacity:.68;font-size:13px}
.discovery-orb{position:absolute;width:220px;height:220px;border-radius:50%;right:-45px;top:-50px;border:36px solid rgba(245,154,0,.86);opacity:.94}
.discovery-card:first-child .discovery-orb{width:330px;height:330px;right:-60px;top:35px;border-color:#fff;border-width:44px;opacity:.12}

/* BRAND STRIP */
.brand-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}
.brand-card{
  border:1px solid var(--line);background:#fff;border-radius:18px;min-height:120px;padding:18px 20px;
  display:flex;align-items:center;justify-content:space-between;transition:.2s
}
.brand-card:hover{transform:translateY(-3px);box-shadow:var(--shadow);border-color:#d8d9e0}
.brand-monogram{width:46px;height:46px;border-radius:14px;background:var(--navy);color:#fff;display:grid;place-items:center;font-weight:800}
.brand-name{font-size:15px;font-weight:800;color:var(--navy);max-width:165px;line-height:1.25}
.brand-card svg{width:18px;height:18px;color:#9b9ca5}

/* PRODUCT CARDS */
.product-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}
.product-card{
  background:#fff;border:1px solid var(--line);border-radius:20px;overflow:hidden;position:relative;
  cursor:pointer;transition:.22s
}
.product-card:hover{transform:translateY(-4px);box-shadow:var(--shadow)}
.product-image-wrap{background:#f4f5f7;aspect-ratio:1/1;overflow:hidden;position:relative}
.product-img{width:100%;height:100%;object-fit:cover;transition:transform .35s}
.product-card:hover .product-img{transform:scale(1.025)}
.sale-badge{position:absolute;left:13px;top:13px;background:var(--orange);color:#241500;border-radius:999px;padding:6px 10px;font-size:10px;font-weight:800;letter-spacing:.03em}
.product-body{padding:16px 16px 18px}
.product-brand{font-size:10px;color:#93959d;text-transform:uppercase;letter-spacing:.12em;font-weight:700}
.product-title{font-size:14px;line-height:1.4;font-weight:750;margin:6px 0 10px;min-height:40px}
.price-row{display:flex;align-items:center;gap:9px;flex-wrap:wrap}
.price{font-size:19px;font-weight:800;color:var(--navy)}
.old-price{text-decoration:line-through;color:#a3a4aa;font-size:12px}
.product-action{margin-top:13px;font-size:11px;font-weight:750;color:#17853c;display:flex;align-items:center;gap:5px}

/* PRICE TIERS */
.tier-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
.tier{min-height:175px;border-radius:22px;padding:25px;background:#fff;border:1px solid var(--line);position:relative;overflow:hidden}
.tier:nth-child(2){background:#0c0944;color:#fff;border-color:#0c0944}
.tier:nth-child(3){background:#fff4df;border-color:#ffdfa3}
.tier strong{font-size:26px;letter-spacing:-.035em;display:block;margin-bottom:7px}
.tier span{font-size:13px;opacity:.7}
.tier .arrow{position:absolute;right:22px;bottom:20px;font-size:24px}

/* CTA */
.cta-band{padding:18px 0 62px}
.cta-inner{border-radius:28px;background:linear-gradient(110deg,#070536,#15106d);color:#fff;padding:48px;display:grid;grid-template-columns:1.3fr .7fr;align-items:center;gap:30px;position:relative;overflow:hidden}
.cta-inner:after{content:"";width:330px;height:330px;border:58px solid rgba(245,154,0,.35);border-radius:50%;position:absolute;right:-70px;top:-120px}
.cta-inner h2{margin:0 0 10px;font-size:38px;letter-spacing:-.045em;position:relative;z-index:2}
.cta-inner p{margin:0;color:#d9d9e7;position:relative;z-index:2}
.cta-actions{display:flex;justify-content:flex-end;position:relative;z-index:2}

/* BRAND PAGE */
.brand-page-hero{padding:34px 0 18px}
.brand-page-box{min-height:285px;border-radius:28px;padding:42px;background:linear-gradient(120deg,#070536,#16106c);color:#fff;position:relative;overflow:hidden;display:flex;align-items:flex-end}
.brand-page-box:after{content:"";position:absolute;width:330px;height:330px;border-radius:50%;border:46px solid rgba(245,154,0,.35);right:-70px;top:-80px}
.breadcrumb{font-size:11px;color:#c8c8d7;margin-bottom:14px}
.brand-page-box h1{font-size:clamp(44px,6vw,72px);letter-spacing:-.055em;margin:0 0 10px}
.brand-page-box p{max-width:650px;color:#d4d4df;margin:0;line-height:1.7;font-size:14px}
.filters{display:flex;gap:10px;margin:0 0 26px}
.searchbox{position:relative;flex:1}
.searchbox input{width:100%;height:48px;border:1px solid var(--line);border-radius:14px;padding:0 16px;background:#fff;outline:none}

/* MODAL */
.modal{position:fixed;inset:0;background:rgba(6,5,25,.72);display:none;align-items:center;justify-content:center;padding:20px;z-index:100;backdrop-filter:blur(8px)}
.modal.open{display:flex}
.modal-card{width:min(980px,100%);max-height:92vh;background:#fff;border-radius:26px;overflow:hidden;display:grid;grid-template-columns:1.04fr .96fr;position:relative;box-shadow:0 40px 100px rgba(0,0,0,.35)}
.modal-media{background:#f3f4f6;min-height:520px}
.modal-media img{width:100%;height:100%;object-fit:cover}
.modal-content{padding:44px;display:flex;flex-direction:column;justify-content:center}
.modal-close{position:absolute;right:16px;top:16px;width:42px;height:42px;border:0;border-radius:50%;background:#fff;box-shadow:0 8px 28px rgba(0,0,0,.15);font-size:22px;cursor:pointer;z-index:3}
.modal-brand{font-size:10px;color:#9698a0;text-transform:uppercase;letter-spacing:.14em;font-weight:800}
.modal-content h2{font-size:34px;letter-spacing:-.04em;margin:8px 0 14px}
.modal-content p{color:var(--muted);font-size:14px;line-height:1.75;white-space:pre-line}
.modal-buy{margin-top:24px;width:100%;height:52px;border-radius:14px}

/* FOOTER */
.footer{background:#070536;color:#fff;padding:48px 0 28px}
.footer-grid{display:grid;grid-template-columns:1.2fr .8fr .8fr;gap:50px}
.footer-logo{display:flex;align-items:center;gap:12px}
.footer-logo img{width:62px;height:62px;object-fit:contain;filter:brightness(1.08)}
.footer h4{margin:0 0 14px;font-size:13px}
.footer a,.footer p{color:#bbbccd;font-size:12px;line-height:1.8;margin:0}
.footer-bottom{border-top:1px solid rgba(255,255,255,.12);margin-top:32px;padding-top:22px;color:#8e8fa1;font-size:11px}

/* MOBILE DRAWER */
.mobile-drawer{display:none;position:fixed;inset:0;background:rgba(6,5,25,.55);z-index:90}
.mobile-drawer.open{display:block}
.mobile-drawer-panel{width:min(350px,88vw);height:100%;background:#fff;padding:22px;box-shadow:20px 0 60px rgba(0,0,0,.18)}
.drawer-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:25px}
.drawer-links{display:grid}
.drawer-links a{padding:15px 0;border-bottom:1px solid var(--line);font-weight:700;color:var(--navy);font-size:14px}
.drawer-close{border:0;background:#f3f4f6;width:40px;height:40px;border-radius:50%;font-size:20px}

/* RESPONSIVE */
@media(max-width:1020px){
  .header-main{grid-template-columns:190px 1fr auto;gap:16px}
  .site-logo-copy b{font-size:16px}
  .header-actions .whatsapp-pill span{display:none}
  .navbar .container{gap:20px}
  .hero-stage{grid-template-columns:1fr .78fr}
  .hero-copy{padding-left:45px}
  .watch-art{width:285px;height:285px}
  .watch-art:before,.watch-art:after{width:108px}
  .watch-art:before{height:155px;top:-153px}
  .watch-art:after{height:155px;bottom:-153px}
  .watch-art .brand{top:82px}
  .tick{transform-origin:2px 120px}
  .product-grid{grid-template-columns:repeat(3,1fr)}
}
@media(max-width:780px){
  .container{width:min(100% - 28px,1240px)}
  .announcement .container{min-height:34px;font-size:10px;gap:9px}
  .announcement .hide-mobile{display:none}
  .header-main{height:68px;grid-template-columns:1fr auto;gap:10px}
  .site-logo img{width:44px;height:44px}
  .site-logo-copy b{font-size:15px}
  .site-logo-copy span{font-size:8px}
  .header-search{grid-column:1/-1;order:3;margin-bottom:12px}
  .header{padding-bottom:12px}
  .header-actions .icon-btn{display:none}
  .mobile-menu-btn{display:grid}
  .navbar{display:none}
  .hero{padding-top:16px}
  .hero-stage{min-height:auto;display:block;border-radius:24px}
  .hero-copy{padding:42px 24px 36px}
  .hero h1{font-size:48px}
  .hero p{font-size:14px}
  .hero-visual{min-height:315px;padding:20px 0 60px}
  .watch-art{width:230px;height:230px}
  .watch-art:before,.watch-art:after{width:88px}
  .watch-art:before{height:122px;top:-120px}
  .watch-art:after{height:122px;bottom:-120px}
  .watch-art .brand{top:64px;font-size:12px}
  .watch-art .hands:before{height:68px}
  .watch-art .hands:after{height:90px}
  .tick{display:none}
  .trust-grid{grid-template-columns:1fr 1fr}
  .trust-item{border-bottom:1px solid var(--line)}
  .trust-item:nth-child(2){border-right:0}
  .discovery-grid{grid-template-columns:1fr 1fr}
  .discovery-card:first-child{grid-column:1/-1;grid-row:auto;min-height:260px}
  .brand-grid{grid-template-columns:1fr 1fr}
  .product-grid{grid-template-columns:repeat(2,1fr);gap:11px}
  .tier-grid{grid-template-columns:1fr}
  .cta-inner{grid-template-columns:1fr;padding:32px 26px}
  .cta-actions{justify-content:flex-start}
  .footer-grid{grid-template-columns:1fr 1fr}.footer-grid>div:first-child{grid-column:1/-1}
  .modal-card{grid-template-columns:1fr;max-height:94vh;overflow:auto}
  .modal-media{min-height:330px;max-height:45vh}
  .modal-content{padding:27px 22px}
}
@media(max-width:480px){
  .container{width:min(100% - 22px,1240px)}
  .hero h1{font-size:41px}
  .hero-copy{padding:34px 20px 26px}
  .hero-actions .btn{width:100%}
  .trust-grid{grid-template-columns:1fr}
  .trust-item{border-right:0}
  .discovery-grid{grid-template-columns:1fr}
  .discovery-card:first-child{grid-column:auto}
  .brand-grid{grid-template-columns:1fr 1fr;gap:9px}
  .brand-card{min-height:96px;padding:14px}
  .brand-monogram{width:38px;height:38px;border-radius:11px;font-size:12px}
  .brand-name{font-size:12px}
  .product-grid{grid-template-columns:1fr 1fr;gap:9px}
  .product-body{padding:12px}
  .product-title{font-size:12px;min-height:34px}
  .price{font-size:16px}
  .old-price{font-size:10px}
  .product-action{font-size:9px}
  .sale-badge{font-size:8px;left:9px;top:9px}
  .section{padding:40px 0}
  .section-head{align-items:flex-start;flex-direction:column;margin-bottom:18px}
  .section h2{font-size:30px}
  .section-sub{font-size:12px}
  .cta-inner h2{font-size:29px}
  .footer-grid{grid-template-columns:1fr}
  .footer-grid>div:first-child{grid-column:auto}
  .brand-page-box{min-height:230px;padding:28px 22px}
  .modal-media{min-height:290px}
}


/* =========================================================
   GLOBAL FACTORY V6 — MOBILE APP EXPERIENCE
   Mobile-first shopping UI. Desktop keeps V5 appearance.
   ========================================================= */

.mobile-app-top,
.mobile-category-strip,
.mobile-bottom-nav,
.mobile-section-title,
.mobile-promo-grid{
  display:none;
}

@media (max-width:780px){

  body{
    padding-bottom:76px;
    background:#f5f5f7;
  }

  /* Remove desktop-heavy header behavior */
  .announcement{display:none}
  .header{
    position:sticky;
    top:0;
    z-index:70;
    padding:0;
    border-bottom:1px solid #ececf0;
    background:rgba(255,255,255,.98);
    backdrop-filter:blur(18px);
  }
  .header-main{
    display:none;
  }
  .navbar{display:none!important}

  /* Native-app-like mobile top */
  .mobile-app-top{
    display:block;
    padding:10px 12px 12px;
    background:#fff;
  }
  .mobile-app-row{
    display:grid;
    grid-template-columns:42px 1fr 42px;
    align-items:center;
    gap:10px;
    min-height:46px;
  }
  .mobile-app-logo{
    display:flex;
    align-items:center;
    justify-content:center;
    min-width:0;
  }
  .mobile-app-logo img{
    width:42px;
    height:42px;
    object-fit:contain;
  }
  .mobile-app-title{
    text-align:center;
    min-width:0;
  }
  .mobile-app-title strong{
    display:block;
    color:var(--navy);
    font-size:16px;
    line-height:1.05;
    letter-spacing:-.03em;
    white-space:nowrap;
    overflow:hidden;
    text-overflow:ellipsis;
  }
  .mobile-app-title span{
    display:block;
    margin-top:3px;
    font-size:8px;
    letter-spacing:.15em;
    color:#9b9da4;
    text-transform:uppercase;
    font-weight:700;
  }
  .mobile-circle-btn{
    width:40px;height:40px;
    border:1px solid #ececf0;
    background:#fff;
    border-radius:50%;
    display:grid;
    place-items:center;
    font-size:18px;
    color:var(--navy);
    box-shadow:0 4px 14px rgba(7,5,54,.04);
  }
  .mobile-search{
    margin-top:10px;
    position:relative;
  }
  .mobile-search input{
    width:100%;
    height:44px;
    border:1px solid #e8e8ed;
    background:#f4f4f6;
    border-radius:14px;
    padding:0 46px 0 15px;
    outline:none;
    font-size:13px;
  }
  .mobile-search .search-icon{
    right:15px;
  }

  /* Horizontal categories */
  .mobile-category-strip{
    display:flex;
    gap:9px;
    overflow-x:auto;
    padding:10px 12px 12px;
    background:#fff;
    border-top:1px solid #f1f1f4;
    scrollbar-width:none;
    -webkit-overflow-scrolling:touch;
  }
  .mobile-category-strip::-webkit-scrollbar{display:none}
  .mobile-category-chip{
    flex:0 0 auto;
    min-width:86px;
    height:38px;
    padding:0 13px;
    display:flex;
    align-items:center;
    justify-content:center;
    border-radius:12px;
    background:#f5f5f7;
    color:#30313a;
    font-size:11px;
    font-weight:700;
    border:1px solid #ededf1;
    white-space:nowrap;
  }
  .mobile-category-chip.primary{
    background:var(--navy);
    color:#fff;
    border-color:var(--navy);
  }

  /* Main mobile hero as shopping-banner card */
  .hero{
    padding:10px 0 8px;
    background:#f5f5f7;
  }
  .hero .container{
    width:calc(100% - 20px);
  }
  .hero-stage{
    display:block;
    min-height:0;
    border-radius:18px;
    overflow:hidden;
    background:linear-gradient(135deg,#08063a 0%,#17116f 72%,#2a1d88 100%);
  }
  .hero-stage:before{
    width:300px;height:300px;
    right:-120px;top:-130px;
  }
  .hero-stage:after{
    background-size:28px 28px;
  }
  .hero-copy{
    padding:24px 20px 22px;
  }
  .eyebrow{
    font-size:8px;
    letter-spacing:.14em;
    color:#ffd68b;
  }
  .eyebrow:before{width:18px}
  .hero h1{
    font-size:34px;
    line-height:1;
    letter-spacing:-.05em;
    margin:11px 0 11px;
    max-width:300px;
  }
  .hero p{
    font-size:11px;
    line-height:1.55;
    color:#dedee8;
    margin-bottom:18px;
    max-width:290px;
  }
  .hero-actions{
    gap:8px;
  }
  .hero-actions .btn{
    width:auto;
    min-height:40px;
    padding:0 15px;
    font-size:11px;
  }
  .hero-visual{
    display:none;
  }

  /* Hide desktop trust block on mobile */
  .trust-strip{display:none}

  /* New app promo blocks */
  .mobile-promo-grid{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:9px;
    padding:2px 10px 4px;
    background:#f5f5f7;
  }
  .mobile-promo-card{
    min-height:92px;
    border-radius:15px;
    padding:14px;
    overflow:hidden;
    position:relative;
    background:#fff;
    border:1px solid #ededf1;
  }
  .mobile-promo-card.dark{
    background:var(--navy);
    color:#fff;
    border-color:var(--navy);
  }
  .mobile-promo-card.orange{
    background:#fff1d5;
    border-color:#ffe0a6;
  }
  .mobile-promo-card strong{
    display:block;
    font-size:13px;
    letter-spacing:-.025em;
    line-height:1.2;
    max-width:115px;
  }
  .mobile-promo-card span{
    display:block;
    font-size:9px;
    opacity:.68;
    margin-top:5px;
    line-height:1.3;
  }
  .mobile-promo-dot{
    position:absolute;
    width:72px;height:72px;
    border-radius:50%;
    border:14px solid var(--orange);
    right:-18px;bottom:-22px;
    opacity:.85;
  }

  /* Desktop discovery block is too large on mobile */
  .discovery-grid{display:none}
  .section:has(.discovery-grid){
    display:none;
  }

  /* Sections resemble marketplace feed */
  .section{
    padding:20px 0;
    background:#f5f5f7;
  }
  .section.soft{
    background:#f5f5f7;
  }
  .section .container{
    width:calc(100% - 20px);
  }
  .section-head{
    margin:0 0 12px;
    flex-direction:row;
    align-items:center;
    gap:10px;
  }
  .section-head>div{
    min-width:0;
  }
  .kicker{display:none}
  .section h2{
    font-size:19px;
    margin:0;
    letter-spacing:-.035em;
    color:#15161c;
  }
  .section-sub{
    display:none;
  }
  .text-link{
    margin-left:auto;
    font-size:10px;
    color:#858791;
  }

  /* Compact brand scroller instead of large blocks */
  .brand-grid{
    display:flex;
    gap:9px;
    overflow-x:auto;
    padding-bottom:4px;
    scrollbar-width:none;
    -webkit-overflow-scrolling:touch;
  }
  .brand-grid::-webkit-scrollbar{display:none}
  .brand-card{
    flex:0 0 126px;
    min-height:86px;
    border-radius:15px;
    padding:13px;
    background:#fff;
    border:1px solid #ededf1;
    box-shadow:none;
  }
  .brand-card:hover{transform:none;box-shadow:none}
  .brand-name{
    font-size:11px;
    line-height:1.25;
  }
  .brand-monogram{
    width:32px;height:32px;
    border-radius:10px;
    font-size:10px;
  }

  /* Product feed: true app-style 2-column grid */
  .product-grid{
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:8px;
  }
  .product-card{
    border-radius:13px;
    border:1px solid #ededf1;
    box-shadow:none;
    overflow:hidden;
    background:#fff;
  }
  .product-card:hover{
    transform:none;
    box-shadow:none;
  }
  .product-image-wrap{
    aspect-ratio:1/1;
    background:#f0f1f3;
  }
  .product-img{
    object-fit:cover;
  }
  .sale-badge{
    left:8px;top:8px;
    padding:4px 7px;
    border-radius:8px;
    font-size:8px;
  }
  .product-body{
    padding:10px 9px 11px;
  }
  .product-brand{
    font-size:8px;
    letter-spacing:.08em;
  }
  .product-title{
    font-size:11px;
    line-height:1.3;
    min-height:29px;
    margin:4px 0 6px;
    display:-webkit-box;
    -webkit-line-clamp:2;
    -webkit-box-orient:vertical;
    overflow:hidden;
  }
  .price-row{
    gap:5px;
  }
  .price{
    font-size:15px;
  }
  .old-price{
    font-size:9px;
  }
  .product-action{
    font-size:8px;
    margin-top:8px;
    color:#15803d;
  }

  /* Hide desktop budget cards and rebuild compact */
  .tier-grid{
    grid-template-columns:1fr 1fr;
    gap:8px;
  }
  .tier{
    min-height:106px;
    border-radius:14px;
    padding:14px;
  }
  .tier:nth-child(3){
    grid-column:1/-1;
    min-height:90px;
  }
  .tier strong{
    font-size:16px;
    margin-bottom:4px;
  }
  .tier span{
    font-size:9px;
    line-height:1.35;
  }
  .tier .arrow{
    right:14px;bottom:11px;
    font-size:18px;
  }

  /* CTA compact */
  .cta-band{
    padding:4px 0 18px;
    background:#f5f5f7;
  }
  .cta-band .container{
    width:calc(100% - 20px);
  }
  .cta-inner{
    display:block;
    padding:22px 18px;
    border-radius:17px;
  }
  .cta-inner h2{
    font-size:22px;
    margin-bottom:7px;
  }
  .cta-inner p{
    font-size:10px;
    line-height:1.55;
    padding-right:40px;
  }
  .cta-actions{
    justify-content:flex-start;
    margin-top:16px;
  }
  .cta-actions .btn{
    min-height:42px;
    font-size:10px;
    padding:0 15px;
  }

  /* Footer simplified on mobile */
  .footer{
    padding:28px 0 96px;
  }
  .footer .container{
    width:calc(100% - 28px);
  }
  .footer-grid{
    display:block;
  }
  .footer-grid>div:not(:first-child){
    display:none;
  }
  .footer-logo img{
    width:48px;height:48px;
  }
  .footer-logo b{font-size:13px}
  .footer-logo p{font-size:9px}
  .footer-bottom{
    margin-top:18px;
    padding-top:14px;
    font-size:9px;
  }

  /* Bottom app navigation */
  .mobile-bottom-nav{
    display:grid;
    grid-template-columns:repeat(4,1fr);
    position:fixed;
    left:0;right:0;bottom:0;
    z-index:85;
    height:68px;
    padding:7px 5px max(7px,env(safe-area-inset-bottom));
    background:rgba(255,255,255,.98);
    border-top:1px solid #e7e7eb;
    box-shadow:0 -10px 30px rgba(15,23,42,.08);
    backdrop-filter:blur(18px);
  }
  .mobile-nav-item{
    border:0;background:none;
    display:flex;
    flex-direction:column;
    align-items:center;
    justify-content:center;
    gap:3px;
    color:#7b7d86;
    font-size:8px;
    font-weight:650;
  }
  .mobile-nav-item .micon{
    font-size:19px;
    line-height:1;
  }
  .mobile-nav-item.active{
    color:var(--navy);
  }
  .mobile-nav-item.wa{
    color:#15803d;
  }

  /* Product modal = mobile product sheet */
  .modal{
    align-items:flex-end;
    padding:0;
    background:rgba(11,10,28,.55);
  }
  .modal-card{
    display:block;
    width:100%;
    max-width:none;
    max-height:91vh;
    overflow:auto;
    border-radius:22px 22px 0 0;
    box-shadow:0 -22px 70px rgba(0,0,0,.22);
  }
  .modal-media{
    min-height:0;
    height:auto;
    aspect-ratio:1.12/1;
    max-height:none;
  }
  .modal-content{
    padding:18px 16px calc(20px + env(safe-area-inset-bottom));
  }
  .modal-brand{
    font-size:8px;
  }
  .modal-content h2{
    font-size:22px;
    margin:5px 0 9px;
  }
  .modal-content p{
    font-size:11px;
    line-height:1.6;
  }
  .modal-buy{
    position:sticky;
    bottom:0;
    height:48px;
    font-size:11px;
  }
  .modal-close{
    width:36px;height:36px;
    right:12px;top:12px;
    font-size:18px;
  }

  /* Brand page mobile */
  .brand-page-hero{
    padding:10px 0 8px;
    background:#f5f5f7;
  }
  .brand-page-hero .container{
    width:calc(100% - 20px);
  }
  .brand-page-box{
    min-height:180px;
    border-radius:17px;
    padding:22px 18px;
    align-items:flex-end;
  }
  .brand-page-box:after{
    width:180px;height:180px;
    border-width:26px;
    right:-54px;top:-55px;
  }
  .breadcrumb{
    font-size:8px;
    margin-bottom:8px;
  }
  .brand-page-box h1{
    font-size:34px;
    margin-bottom:7px;
  }
  .brand-page-box p{
    font-size:10px;
    line-height:1.5;
    max-width:250px;
  }

  /* Remove old mobile drawer since we now have bottom nav */
  .mobile-drawer{display:none!important}
}

@media(max-width:380px){
  .hero h1{font-size:31px}
  .mobile-app-title strong{font-size:14px}
  .brand-card{flex-basis:116px}
  .product-title{font-size:10px}
  .price{font-size:14px}
}


/* =========================================================
   GLOBAL FACTORY V6.1 — AJUSTE POPUP MÓVIL
   Sube y centra mejor la ficha de producto.
   ========================================================= */
@media (max-width:780px){
  .modal{
    align-items:center !important;
    justify-content:center !important;
    padding:18px 10px 82px !important;
  }

  .modal-card{
    width:calc(100% - 8px) !important;
    max-width:520px !important;
    max-height:82vh !important;
    border-radius:20px !important;
    overflow:auto !important;
    margin:0 auto !important;
  }

  .modal-media{
    aspect-ratio:1.18/1 !important;
    max-height:42vh !important;
  }

  .modal-content{
    padding:18px 16px 20px !important;
  }

  .modal-close{
    top:10px !important;
    right:10px !important;
  }
}

@media (max-width:480px){
  .modal{
    padding:14px 8px 78px !important;
  }

  .modal-card{
    max-height:84vh !important;
    border-radius:18px !important;
  }

  .modal-media{
    aspect-ratio:1.14/1 !important;
    max-height:40vh !important;
  }
}


/* V6.4 — Ocultar etiqueta superior del hero solo en móvil */
@media (max-width:780px){
  .hero .eyebrow{
    display:none !important;
  }
}


/* =========================================================
   V6.5 — PORTADA ADMINISTRABLE / CARRUSEL
   ========================================================= */
.hero-carousel-section{padding:26px 0 12px}
.hero-carousel{
  position:relative;
  width:100%;
  aspect-ratio:1920/850;
  min-height:430px;
  max-height:610px;
  overflow:hidden;
  border-radius:32px;
  background:#070536;
}
.hero-carousel-slide{
  position:absolute;inset:0;
  opacity:0;pointer-events:none;
  transition:opacity .45s ease;
  display:block;
}
.hero-carousel-slide.active{opacity:1;pointer-events:auto}
.hero-carousel-slide img{width:100%;height:100%;object-fit:cover}
.hero-carousel-overlay{
  position:absolute;
  left:0;right:0;bottom:0;
  padding:70px 48px 38px;
  color:#fff;
  background:linear-gradient(transparent,rgba(5,4,28,.78));
}
.hero-carousel-overlay h2{font-size:38px;letter-spacing:-.04em;margin:0 0 6px}
.hero-carousel-overlay p{max-width:660px;margin:0;color:#e4e4ee;font-size:14px}
.hero-carousel-arrow{
  position:absolute;top:50%;transform:translateY(-50%);
  z-index:4;width:44px;height:44px;border:0;border-radius:50%;
  background:rgba(255,255,255,.92);color:#070536;font-size:30px;cursor:pointer;
  box-shadow:0 8px 28px rgba(0,0,0,.15)
}
.hero-carousel-arrow.prev{left:18px}.hero-carousel-arrow.next{right:18px}
.hero-carousel-dots{
  position:absolute;z-index:5;left:50%;bottom:18px;transform:translateX(-50%);
  display:flex;gap:7px
}
.hero-carousel-dots button{
  width:8px;height:8px;border:0;padding:0;border-radius:999px;background:rgba(255,255,255,.55);cursor:pointer;transition:.2s
}
.hero-carousel-dots button.active{width:24px;background:#fff}

@media(max-width:780px){
  .hero-carousel-section{padding:10px 0 8px;background:#f5f5f7}
  .hero-carousel-section .container{width:calc(100% - 20px)}
  .hero-carousel{
    aspect-ratio:16/9;
    min-height:0;
    max-height:none;
    border-radius:18px;
  }
  .hero-carousel-overlay{padding:48px 18px 17px}
  .hero-carousel-overlay h2{font-size:22px}
  .hero-carousel-overlay p{font-size:10px;line-height:1.5}
  .hero-carousel-arrow{width:34px;height:34px;font-size:23px}
  .hero-carousel-arrow.prev{left:8px}.hero-carousel-arrow.next{right:8px}
  .hero-carousel-dots{bottom:9px}
  .hero-carousel-dots button{width:6px;height:6px}
  .hero-carousel-dots button.active{width:18px}
}


/* V6.7 — Imagen editable en portada actual */
.hero-custom-image-wrap{
  width:min(500px,88%);
  aspect-ratio:1/1;
  border-radius:26px;
  overflow:hidden;
  background:rgba(255,255,255,.06);
  box-shadow:0 34px 90px rgba(0,0,0,.28);
}
.hero-custom-image{
  width:100%;
  height:100%;
  display:block;
}

@media(max-width:780px){
  /* Si existe imagen personalizada, sí mostramos el área visual móvil */
  .hero-visual:has(.hero-custom-image-wrap){
    display:grid!important;
    min-height:0!important;
    padding:0 18px 22px!important;
  }
  .hero-custom-image-wrap{
    width:100%;
    aspect-ratio:16/10;
    border-radius:14px;
    box-shadow:none;
  }
}


/* =========================================================
   V6.8 — COMPRA POR PRESUPUESTO
   ========================================================= */

.budget-page,.budget-results-page{background:#f6f6f8;min-height:600px}
.budget-hero{padding:42px 0 18px}
.budget-hero-box{
  padding:48px;border-radius:28px;
  background:linear-gradient(120deg,#070536,#17106f);
  color:#fff;position:relative;overflow:hidden
}
.budget-hero-box:after{
  content:"";position:absolute;width:330px;height:330px;border:50px solid rgba(245,154,0,.32);
  border-radius:50%;right:-80px;top:-100px
}
.budget-eyebrow{font-size:10px;font-weight:800;letter-spacing:.18em;color:#ffd58a;position:relative;z-index:1}
.budget-hero h1{font-size:clamp(38px,5vw,62px);line-height:1;letter-spacing:-.05em;margin:11px 0 14px;position:relative;z-index:1}
.budget-hero p{max-width:700px;color:#dadae7;line-height:1.7;font-size:14px;margin:0;position:relative;z-index:1}

.budget-selector-section{padding:10px 0 30px}
.budget-selector-card{
  max-width:880px;margin:0 auto;background:#fff;border:1px solid #e7e7ec;border-radius:24px;
  padding:34px 38px;box-shadow:0 18px 55px rgba(7,5,54,.07)
}
.budget-selector-head{display:flex;align-items:flex-end;justify-content:space-between;gap:22px;margin-bottom:36px}
.budget-selector-head span{display:block;font-size:10px;color:#858791;text-transform:uppercase;letter-spacing:.1em;font-weight:700}
.budget-selector-head strong{display:block;margin-top:4px;font-size:30px;letter-spacing:-.04em;color:#070536}
.budget-count-preview{text-align:right}
.budget-count-preview b{font-size:16px;color:#070536}

.dual-range{height:42px;position:relative;margin:0 10px}
.dual-range-track,.dual-range-active{
  position:absolute;left:0;right:0;top:19px;height:6px;border-radius:999px
}
.dual-range-track{background:#e8e8ed}
.dual-range-active{
  left:var(--min-pos);right:calc(100% - var(--max-pos));
  background:linear-gradient(90deg,#f59a00,#ffb52d)
}
.dual-range input[type="range"]{
  position:absolute;left:0;top:0;width:100%;height:42px;margin:0;padding:0;
  background:transparent;pointer-events:none;-webkit-appearance:none;appearance:none
}
.dual-range input[type="range"]::-webkit-slider-runnable-track{height:6px;background:transparent}
.dual-range input[type="range"]::-webkit-slider-thumb{
  -webkit-appearance:none;appearance:none;pointer-events:auto;cursor:grab;
  width:28px;height:28px;border-radius:50%;border:5px solid #fff;background:#070536;
  box-shadow:0 3px 15px rgba(7,5,54,.24);margin-top:-11px
}
.dual-range input[type="range"]::-moz-range-track{height:6px;background:transparent}
.dual-range input[type="range"]::-moz-range-thumb{
  pointer-events:auto;cursor:grab;width:19px;height:19px;border-radius:50%;
  border:5px solid #fff;background:#070536;box-shadow:0 3px 15px rgba(7,5,54,.24)
}
.budget-scale{display:flex;justify-content:space-between;color:#9a9ca4;font-size:10px;margin:0 7px 25px}
.budget-values{display:grid;grid-template-columns:1fr auto 1fr;align-items:end;gap:14px}
.budget-values label>span{display:block;font-size:10px;color:#777983;font-weight:700;margin-bottom:6px}
.budget-value-box{
  height:52px;border:1px solid #dedfe5;border-radius:13px;display:flex;align-items:center;
  padding:0 14px;background:#fafafa
}
.budget-value-box>span{font-size:18px;font-weight:700;color:#070536}
.budget-value-box input{
  width:100%;height:auto;border:0;background:transparent!important;padding:0 0 0 6px;
  font-size:18px;font-weight:800;color:#070536;outline:0;min-height:0
}
.budget-values-separator{padding-bottom:15px;color:#aaa;font-weight:700}
.budget-search-btn{width:100%;margin-top:24px;border-radius:13px;height:52px;font-size:13px}
.budget-tip{text-align:center;color:#999ba3;font-size:9px;margin-top:9px}
.budget-empty{text-align:center;padding:30px;color:#777983}

.budget-help-section{padding:0 0 60px}
.budget-help-grid{max-width:880px;margin:auto;display:grid;grid-template-columns:repeat(3,1fr);gap:12px}
.budget-help-grid>div{background:#fff;border:1px solid #e8e8ed;border-radius:17px;padding:20px}
.budget-help-grid span{display:block;color:#d58a08;font-size:10px;font-weight:800}
.budget-help-grid b{display:block;color:#070536;margin:6px 0;font-size:14px}
.budget-help-grid p{margin:0;color:#858791;font-size:10px;line-height:1.5}

/* Resultados */
.budget-results-hero{padding:38px 0 10px}
.budget-back-link{font-size:11px;color:#70727b;font-weight:650}
.budget-results-title{
  margin-top:14px;background:#fff;border:1px solid #e7e7ec;border-radius:22px;padding:28px 30px;
  display:flex;justify-content:space-between;align-items:center;gap:20px
}
.budget-results-title span{font-size:9px;color:#a26a09;letter-spacing:.14em;font-weight:800}
.budget-results-title h1{font-size:36px;letter-spacing:-.05em;color:#070536;margin:5px 0}
.budget-results-title h1 i{font-style:normal;color:#c4c5cb;font-weight:400}
.budget-results-title p{margin:0;color:#7b7d85;font-size:11px}
.budget-results-list{padding-top:22px}
.budget-no-results{
  max-width:600px;margin:0 auto;background:#fff;border:1px solid #e7e7ec;
  border-radius:22px;text-align:center;padding:48px 28px
}
.budget-no-results-icon{font-size:38px}
.budget-no-results h2{font-size:24px;color:#070536;margin:12px 0 7px}
.budget-no-results p{color:#858791;font-size:12px;margin:0 0 20px}

@media(max-width:780px){
  .budget-page,.budget-results-page{background:#f5f5f7}
  .budget-hero{padding:10px 0 8px}
  .budget-hero .container,.budget-selector-section .container,.budget-help-section .container,
  .budget-results-hero .container,.budget-results-list .container{width:calc(100% - 20px)}
  .budget-hero-box{padding:25px 19px;border-radius:18px}
  .budget-hero-box:after{width:180px;height:180px;border-width:26px;right:-55px;top:-65px}
  .budget-eyebrow{font-size:8px}
  .budget-hero h1{font-size:31px;margin:8px 0 9px;max-width:270px}
  .budget-hero p{font-size:10px;line-height:1.55;max-width:270px}

  .budget-selector-section{padding:4px 0 16px}
  .budget-selector-card{padding:20px 15px;border-radius:17px;box-shadow:none}
  .budget-selector-head{align-items:flex-start;margin-bottom:28px}
  .budget-selector-head span{font-size:8px}
  .budget-selector-head strong{font-size:21px}
  .budget-count-preview b{font-size:12px}
  .dual-range{margin:0 6px}
  .dual-range input[type="range"]::-webkit-slider-thumb{width:30px;height:30px}
  .budget-values{gap:8px}
  .budget-value-box{height:48px;padding:0 10px}
  .budget-value-box>span,.budget-value-box input{font-size:15px}
  .budget-search-btn{height:48px;margin-top:18px}

  .budget-help-section{padding-bottom:22px}
  .budget-help-grid{grid-template-columns:1fr;gap:7px}
  .budget-help-grid>div{padding:13px 14px;border-radius:13px;display:grid;grid-template-columns:26px 70px 1fr;align-items:center;gap:5px}
  .budget-help-grid b,.budget-help-grid p,.budget-help-grid span{margin:0}
  .budget-help-grid p{font-size:9px}

  .budget-results-hero{padding:12px 0 4px}
  .budget-back-link{display:none}
  .budget-results-title{margin-top:0;padding:17px 15px;border-radius:16px;align-items:flex-start}
  .budget-results-title span{font-size:7px}
  .budget-results-title h1{font-size:24px;margin:3px 0}
  .budget-results-title p{font-size:9px}
  .budget-results-title>.btn{display:none}
  .budget-results-list{padding-top:10px}
  .budget-no-results{padding:35px 18px;border-radius:17px}
  .budget-no-results h2{font-size:20px}
}

@media(max-width:400px){
  .budget-selector-head{display:block}
  .budget-count-preview{text-align:left;margin-top:10px}
}
