:root{
      --dark:#061922;
      --dark2:#0a2c38;
      --primary:#00b8d4;
      --primary2:#5ee8f7;
      --accent:#a3e635;
      --white:#fff;
      --soft:#eff9fb;
      --text:#10232c;
      --muted:#657983;
      --line:#dbe9ed;
      --shadow:0 22px 55px rgba(8,40,51,.13);
      --radius:24px;
      --max:1200px;
    }

    *{box-sizing:border-box;margin:0;padding:0}
    html{scroll-behavior:smooth}
    body{
      font-family:Inter,Arial,Helvetica,sans-serif;
      background:#f8fbfc;
      color:var(--text);
      line-height:1.6;
    }

    a{text-decoration:none;color:inherit}
    button,input,select,textarea{font:inherit}
    button{cursor:pointer}
    img{max-width:100%;display:block}

    .container{
      width:min(calc(100% - 32px),var(--max));
      margin:auto;
    }

    .topbar{
      background:#031016;
      color:#cfe4e9;
      font-size:.9rem;
      padding:9px 0;
    }

    .topbar-inner{
      display:flex;
      justify-content:space-between;
      gap:20px;
      flex-wrap:wrap;
    }

    .navbar{
      position:sticky;
      top:0;
      z-index:50;
      background:rgba(6,25,34,.94);
      backdrop-filter:blur(16px);
      border-bottom:1px solid rgba(255,255,255,.08);
    }

    .nav-inner{
      min-height:76px;
      display:flex;
      align-items:center;
      justify-content:space-between;
      gap:20px;
    }

    .brand{
      display:flex;
      align-items:center;
      gap:12px;
      color:white;
    }

    .logo{
      width:50px;
      height:50px;
      border-radius:17px;
      display:grid;
      place-items:center;
      font-weight:900;
      background:linear-gradient(145deg,var(--primary2),var(--primary));
      color:#04313d;
      box-shadow:0 12px 28px rgba(0,184,212,.25);
    }

    .brand h2{
      font-size:1.02rem;
      line-height:1.1;
      letter-spacing:.04em;
    }

    .brand small{
      display:block;
      margin-top:4px;
      color:#8fc7d1;
      font-size:.7rem;
      letter-spacing:.12em;
      text-transform:uppercase;
    }

    .nav-links{
      display:flex;
      gap:26px;
      color:#d8ebef;
      font-size:.93rem;
      font-weight:700;
    }

    .nav-links a:hover{color:#fff}

    .nav-actions{
      display:flex;
      gap:10px;
      align-items:center;
    }

    .btn{
      border:0;
      border-radius:999px;
      padding:13px 20px;
      font-weight:800;
      display:inline-flex;
      align-items:center;
      justify-content:center;
      gap:8px;
      transition:.2s;
    }

    .btn:hover{transform:translateY(-2px)}

    .btn-primary{
      color:#032b35;
      background:linear-gradient(135deg,var(--primary2),var(--primary));
      box-shadow:0 12px 30px rgba(0,184,212,.25);
    }

    .btn-light{
      background:#fff;
      color:#082631;
      box-shadow:0 12px 30px rgba(0,0,0,.08);
    }

    .btn-dark{
      background:#082a35;
      color:white;
    }

    .cart-btn{
      width:47px;
      height:47px;
      border-radius:50%;
      border:1px solid rgba(255,255,255,.15);
      background:rgba(255,255,255,.07);
      color:white;
      position:relative;
      font-size:1.15rem;
    }

    .cart-count{
      position:absolute;
      top:-5px;
      right:-4px;
      min-width:20px;
      height:20px;
      padding:0 6px;
      border-radius:50px;
      background:var(--accent);
      color:#243b08;
      display:grid;
      place-items:center;
      font-size:.7rem;
      font-weight:900;
    }

    .hero{
      min-height:720px;
      background:
        radial-gradient(circle at 80% 20%,rgba(94,232,247,.15),transparent 25%),
        linear-gradient(125deg,#061922 0%,#092d39 58%,#0a3f4d 100%);
      color:white;
      position:relative;
      overflow:hidden;
    }

    .hero::after{
      content:"";
      position:absolute;
      width:680px;
      height:680px;
      border-radius:50%;
      right:-240px;
      bottom:-300px;
      background:rgba(163,230,53,.06);
    }

    .hero-inner{
      min-height:720px;
      display:grid;
      grid-template-columns:1.05fr .95fr;
      align-items:center;
      gap:60px;
      position:relative;
      z-index:2;
    }

    .eyebrow{
      display:inline-flex;
      align-items:center;
      gap:10px;
      border:1px solid rgba(94,232,247,.25);
      background:rgba(94,232,247,.09);
      border-radius:999px;
      padding:8px 13px;
      font-size:.79rem;
      font-weight:900;
      letter-spacing:.1em;
      text-transform:uppercase;
      color:#c9fbff;
      margin-bottom:22px;
    }

    .eyebrow span{
      width:8px;
      height:8px;
      border-radius:50%;
      background:var(--accent);
      box-shadow:0 0 0 5px rgba(163,230,53,.12);
    }

    .hero h1{
      font-size:clamp(3rem,6vw,6.2rem);
      line-height:.95;
      letter-spacing:-.055em;
      max-width:760px;
      margin-bottom:22px;
    }

    .hero h1 em{
      font-style:normal;
      color:#7ceeff;
    }

    .hero p{
      color:#bfd9df;
      max-width:670px;
      font-size:1.08rem;
      margin-bottom:30px;
    }

    .hero-actions{
      display:flex;
      flex-wrap:wrap;
      gap:12px;
    }

    .hero-points{
      margin-top:28px;
      display:flex;
      gap:22px;
      flex-wrap:wrap;
      color:#d7e9ed;
      font-size:.9rem;
    }

    .hero-points span{
      display:flex;
      align-items:center;
      gap:8px;
    }

    .hero-points b{
      width:21px;
      height:21px;
      border-radius:50%;
      display:grid;
      place-items:center;
      background:rgba(163,230,53,.15);
      color:var(--accent);
      font-size:.7rem;
    }

    .hero-visual{
      position:relative;
      min-height:500px;
      display:grid;
      place-items:center;
    }

    .machine{
      width:min(100%,420px);
      min-height:450px;
      border-radius:34px;
      background:linear-gradient(145deg,#f8fdff,#cceff4);
      padding:26px;
      box-shadow:0 35px 90px rgba(0,0,0,.35);
      position:relative;
      transform:rotate(-2deg);
    }

    .machine-top{
      height:58px;
      border-radius:17px;
      background:#0a2a35;
      color:white;
      display:flex;
      align-items:center;
      justify-content:space-between;
      padding:0 18px;
      font-weight:900;
    }

    .machine-screen{
      margin:22px 0;
      min-height:150px;
      border-radius:20px;
      background:linear-gradient(145deg,#0c3b49,#071e27);
      padding:20px;
      color:white;
      display:flex;
      flex-direction:column;
      justify-content:space-between;
    }

    .machine-screen small{
      color:#8fddea;
      text-transform:uppercase;
      letter-spacing:.1em;
      font-weight:800;
    }

    .machine-screen h3{
      font-size:2rem;
      line-height:1.05;
    }

    .machine-controls{
      display:grid;
      grid-template-columns:repeat(2,1fr);
      gap:14px;
    }

    .machine-controls div{
      height:88px;
      border-radius:17px;
      background:white;
      border:1px solid #cfe0e4;
      display:grid;
      place-items:center;
      color:#0b7083;
      font-weight:900;
      text-align:center;
      line-height:1.2;
    }

    .bubble{
      position:absolute;
      border-radius:50%;
      background:linear-gradient(145deg,rgba(255,255,255,.9),rgba(94,232,247,.22));
      border:1px solid rgba(255,255,255,.5);
    }

    .bubble.one{width:75px;height:75px;top:40px;right:-25px}
    .bubble.two{width:38px;height:38px;top:135px;right:10px}
    .bubble.three{width:56px;height:56px;bottom:55px;left:-30px}

    .section{padding:92px 0}
    .section-soft{background:var(--soft)}
    .section-dark{background:var(--dark);color:white}

    .section-heading{
      display:flex;
      align-items:end;
      justify-content:space-between;
      gap:30px;
      margin-bottom:38px;
    }

    .section-label{
      color:#009bb5;
      text-transform:uppercase;
      letter-spacing:.14em;
      font-weight:900;
      font-size:.76rem;
      margin-bottom:7px;
    }

    .section-heading h2{
      font-size:clamp(2rem,4vw,3.5rem);
      line-height:1.03;
      letter-spacing:-.04em;
    }

    .section-heading p{
      max-width:560px;
      color:var(--muted);
    }

    .category-grid{
      display:grid;
      grid-template-columns:repeat(4,1fr);
      gap:18px;
    }

    .category-card{
      padding:28px;
      background:white;
      border:1px solid var(--line);
      border-radius:var(--radius);
      box-shadow:0 14px 40px rgba(21,65,76,.07);
      transition:.25s;
    }

    .category-card:hover{
      transform:translateY(-6px);
      box-shadow:var(--shadow);
    }

    .cat-icon{
      width:60px;
      height:60px;
      border-radius:18px;
      display:grid;
      place-items:center;
      background:#e0f9fd;
      font-size:1.7rem;
      margin-bottom:17px;
    }

    .category-card h3{margin-bottom:8px}
    .category-card p{color:var(--muted);font-size:.9rem}
    .category-card a{
      display:inline-block;
      margin-top:18px;
      color:#09879b;
      font-weight:900;
      font-size:.9rem;
    }

    .store-toolbar{
      display:flex;
      justify-content:space-between;
      align-items:center;
      gap:18px;
      margin-bottom:24px;
      flex-wrap:wrap;
    }

    .filters{
      display:flex;
      gap:8px;
      flex-wrap:wrap;
    }

    .filter-btn{
      border:1px solid var(--line);
      background:white;
      color:#5d737c;
      padding:10px 14px;
      border-radius:999px;
      font-weight:800;
    }

    .filter-btn.active,
    .filter-btn:hover{
      color:#076f82;
      background:#dff8fc;
      border-color:#b9ebf2;
    }

    .search{
      position:relative;
      min-width:280px;
    }

    .search input{
      width:100%;
      border:1px solid var(--line);
      border-radius:999px;
      padding:12px 16px 12px 42px;
      outline:none;
      background:white;
    }

    .search span{
      position:absolute;
      left:15px;
      top:50%;
      transform:translateY(-50%);
      color:#78909a;
    }

    .product-grid{
      display:grid;
      grid-template-columns:repeat(3,1fr);
      gap:20px;
    }

    .product-card{
      background:white;
      border:1px solid var(--line);
      border-radius:24px;
      overflow:hidden;
      transition:.25s;
    }

    .product-card:hover{
      transform:translateY(-6px);
      box-shadow:0 22px 50px rgba(17,65,76,.12);
    }

    .product-visual{
      min-height:230px;
      background:
        radial-gradient(circle at 20% 20%,rgba(94,232,247,.22),transparent 30%),
        linear-gradient(145deg,#0a2b36,#071922);
      display:grid;
      place-items:center;
      position:relative;
      padding:25px;
    }

    .tag{
      position:absolute;
      left:15px;
      top:15px;
      border-radius:999px;
      padding:6px 10px;
      background:var(--accent);
      color:#2a450b;
      font-size:.72rem;
      font-weight:900;
    }

    .mini-machine{
      width:140px;
      height:165px;
      border-radius:24px;
      background:linear-gradient(145deg,#fff,#cceff4);
      padding:14px;
      box-shadow:0 20px 35px rgba(0,0,0,.28);
    }

    .mini-machine .head{
      height:32px;
      background:#092d38;
      border-radius:9px;
      margin-bottom:12px;
    }

    .mini-machine .screen{
      height:57px;
      background:#0e5363;
      border-radius:10px;
      margin-bottom:10px;
      display:grid;
      place-items:center;
      color:#d9fbff;
      font-size:.7rem;
      font-weight:900;
    }

    .mini-machine .buttons{
      display:grid;
      grid-template-columns:1fr 1fr;
      gap:7px;
    }

    .mini-machine .buttons span{
      height:31px;
      border-radius:8px;
      background:white;
      border:1px solid #bdd6dc;
    }

    .pressure{
      width:175px;
      height:130px;
      border-radius:25px;
      background:linear-gradient(145deg,#15b6d0,#076678);
      box-shadow:0 22px 40px rgba(0,0,0,.28);
      position:relative;
    }

    .pressure:before{
      content:"";
      position:absolute;
      width:90px;
      height:32px;
      border:12px solid #c9f5fb;
      border-bottom:0;
      border-radius:35px 35px 0 0;
      top:-32px;
      left:32px;
    }

    .pressure:after{
      content:"PRESSURE\A WASHER";
      white-space:pre;
      position:absolute;
      inset:0;
      display:grid;
      place-items:center;
      color:white;
      font-weight:900;
      text-align:center;
      letter-spacing:.07em;
    }

    .vacuum{
      width:115px;
      height:165px;
      border-radius:24px 24px 30px 30px;
      background:linear-gradient(145deg,#f4fbfd,#9bdce7);
      position:relative;
      box-shadow:0 22px 38px rgba(0,0,0,.3);
    }

    .vacuum:before{
      content:"VACUUM";
      position:absolute;
      top:42px;
      left:15px;
      right:15px;
      background:#0c6577;
      color:white;
      text-align:center;
      padding:10px 4px;
      border-radius:10px;
      font-size:.72rem;
      font-weight:900;
    }

    .bottle{
      width:90px;
      height:145px;
      border-radius:18px 18px 28px 28px;
      background:linear-gradient(145deg,#fff,#cdf7fc);
      position:relative;
      box-shadow:0 20px 35px rgba(0,0,0,.28);
    }

    .bottle:before{
      content:"";
      position:absolute;
      width:38px;
      height:20px;
      top:-17px;
      left:26px;
      background:#74dbe8;
      border-radius:7px 7px 2px 2px;
    }

    .bottle:after{
      content:"RODEL\A FOAM";
      white-space:pre;
      position:absolute;
      left:10px;
      right:10px;
      top:45px;
      background:#0a8295;
      color:white;
      border-radius:10px;
      text-align:center;
      padding:10px 4px;
      font-size:.7rem;
      line-height:1.15;
      font-weight:900;
    }

    .hose{
      width:150px;
      height:150px;
      border:20px solid #14abc1;
      border-radius:50%;
      position:relative;
      box-shadow:0 16px 32px rgba(0,0,0,.24);
    }

    .hose:after{
      content:"HOSE";
      position:absolute;
      inset:0;
      display:grid;
      place-items:center;
      color:#cdf9ff;
      font-weight:900;
      letter-spacing:.12em;
    }

    .product-body{padding:20px}
    .product-body small{
      color:#0b94aa;
      font-weight:900;
      text-transform:uppercase;
      letter-spacing:.08em;
      font-size:.7rem;
    }

    .product-body h3{
      font-size:1.06rem;
      margin:4px 0 7px;
    }

    .product-body p{
      color:var(--muted);
      font-size:.88rem;
      min-height:46px;
    }

    .product-foot{
      display:flex;
      justify-content:space-between;
      align-items:center;
      gap:12px;
      margin-top:16px;
    }

    .price{
      color:#077f92;
      font-weight:900;
      font-size:1.23rem;
    }

    .add-btn{
      border:0;
      border-radius:12px;
      background:#082b36;
      color:white;
      padding:10px 13px;
      font-weight:900;
    }

    .feature-wrap{
      display:grid;
      grid-template-columns:1fr 1fr;
      border-radius:30px;
      overflow:hidden;
      box-shadow:var(--shadow);
      background:white;
    }

    .feature-visual{
      min-height:430px;
      background:linear-gradient(145deg,#071d26,#0c4352);
      display:grid;
      place-items:center;
      padding:40px;
    }

    .feature-visual .machine{
      width:300px;
      min-height:330px;
      transform:none;
    }

    .feature-copy{
      padding:50px;
      display:flex;
      flex-direction:column;
      justify-content:center;
    }

    .feature-copy h2{
      font-size:clamp(2rem,4vw,3.5rem);
      line-height:1.03;
      letter-spacing:-.04em;
      margin-bottom:16px;
    }

    .feature-copy p{
      color:var(--muted);
      margin-bottom:22px;
    }

    .checks{
      display:grid;
      gap:12px;
    }

    .checks div{
      display:flex;
      align-items:center;
      gap:11px;
      font-weight:800;
    }

    .checks i{
      width:28px;
      height:28px;
      display:grid;
      place-items:center;
      border-radius:50%;
      background:#e9f9d2;
      color:#568413;
      font-style:normal;
      font-weight:900;
    }

    .order-steps{
      display:grid;
      grid-template-columns:repeat(4,1fr);
      gap:18px;
    }

    .step{
      padding:24px;
      border-radius:22px;
      background:#0b2c37;
      border:1px solid rgba(255,255,255,.08);
    }

    .step-num{
      width:45px;
      height:45px;
      display:grid;
      place-items:center;
      border-radius:13px;
      background:rgba(94,232,247,.13);
      color:#84f0ff;
      font-weight:900;
      margin-bottom:16px;
    }

    .step h3{margin-bottom:7px}
    .step p{color:#92b5be;font-size:.9rem}

    .contact-grid{
      display:grid;
      grid-template-columns:.9fr 1.1fr;
      gap:28px;
    }

    .contact-info{
      border-radius:28px;
      padding:34px;
      background:linear-gradient(145deg,#082632,#0c4351);
      color:white;
    }

    .contact-info h2{
      font-size:2.25rem;
      line-height:1.05;
      margin-bottom:12px;
    }

    .contact-info>p{
      color:#b9d6dc;
      margin-bottom:24px;
    }

    .info-list{display:grid;gap:15px}

    .info-item{
      display:flex;
      align-items:flex-start;
      gap:13px;
    }

    .info-item span{
      width:42px;
      height:42px;
      flex:0 0 42px;
      border-radius:13px;
      background:rgba(255,255,255,.09);
      display:grid;
      place-items:center;
    }

    .info-item small{
      color:#84b7c1;
      display:block;
    }

    .contact-form{
      background:white;
      border:1px solid var(--line);
      border-radius:28px;
      padding:32px;
      display:grid;
      grid-template-columns:1fr 1fr;
      gap:15px;
    }

    .field label{
      display:block;
      color:#687d85;
      font-size:.75rem;
      font-weight:900;
      letter-spacing:.07em;
      text-transform:uppercase;
      margin-bottom:7px;
    }

    .field input,.field select,.field textarea{
      width:100%;
      border:1px solid var(--line);
      border-radius:14px;
      padding:13px 14px;
      outline:none;
      background:white;
    }

    .field input:focus,.field select:focus,.field textarea:focus{
      border-color:var(--primary);
      box-shadow:0 0 0 4px rgba(0,184,212,.09);
    }

    .full{grid-column:1/-1}

    footer{
      padding:34px 0;
      background:#031016;
      color:#91b2ba;
    }

    .footer-inner{
      display:flex;
      justify-content:space-between;
      gap:25px;
      flex-wrap:wrap;
      align-items:center;
    }

    .footer-inner strong{color:white}

    .overlay{
      position:fixed;
      inset:0;
      background:rgba(0,12,17,.62);
      backdrop-filter:blur(5px);
      z-index:100;
      opacity:0;
      visibility:hidden;
      transition:.25s;
    }

    .overlay.active{
      opacity:1;
      visibility:visible;
    }

    .cart{
      position:fixed;
      top:0;
      right:-440px;
      z-index:110;
      width:min(92vw,420px);
      height:100%;
      background:white;
      box-shadow:-24px 0 70px rgba(0,0,0,.22);
      display:flex;
      flex-direction:column;
      transition:.35s;
    }

    .cart.active{right:0}

    .cart-head{
      padding:22px;
      display:flex;
      align-items:center;
      justify-content:space-between;
      border-bottom:1px solid var(--line);
    }

    .icon-btn{
      width:40px;
      height:40px;
      border:0;
      border-radius:12px;
      background:#edf5f7;
    }

    .cart-items{
      flex:1;
      overflow:auto;
      padding:18px;
    }

    .empty{
      min-height:280px;
      display:grid;
      place-items:center;
      text-align:center;
      color:var(--muted);
    }

    .cart-line{
      display:grid;
      grid-template-columns:1fr auto;
      gap:12px;
      padding:14px 0;
      border-bottom:1px solid #edf3f5;
    }

    .cart-line h4{font-size:.94rem}
    .cart-line small{color:var(--muted)}

    .qty{
      display:flex;
      align-items:center;
      gap:8px;
      margin-top:8px;
    }

    .qty button{
      width:28px;
      height:28px;
      border:1px solid var(--line);
      background:white;
      border-radius:8px;
    }

    .remove{
      border:0;
      background:none;
      color:#bb4545;
      font-size:.8rem;
      margin-top:6px;
    }

    .cart-foot{
      padding:20px;
      border-top:1px solid var(--line);
    }

    .total{
      display:flex;
      justify-content:space-between;
      align-items:center;
      margin-bottom:15px;
    }

    .total strong{
      color:#087f92;
      font-size:1.5rem;
    }

    .cart-foot .btn{width:100%}

    .modal{
      position:fixed;
      z-index:120;
      top:50%;
      left:50%;
      transform:translate(-50%,-46%) scale(.97);
      width:min(calc(100% - 28px),640px);
      max-height:90vh;
      overflow:auto;
      border-radius:27px;
      background:white;
      box-shadow:0 30px 100px rgba(0,0,0,.3);
      opacity:0;
      visibility:hidden;
      transition:.25s;
    }

    .modal.active{
      opacity:1;
      visibility:visible;
      transform:translate(-50%,-50%) scale(1);
    }

    .modal-head{
      padding:23px 26px;
      border-bottom:1px solid var(--line);
      display:flex;
      justify-content:space-between;
      align-items:center;
    }

    .modal-body{padding:26px}

    .checkout-grid{
      display:grid;
      grid-template-columns:1fr 1fr;
      gap:15px;
    }

    .summary{
      margin-top:18px;
      border-radius:16px;
      background:#eff9fb;
      padding:17px;
    }

    .summary-row{
      display:flex;
      justify-content:space-between;
      gap:15px;
      margin:7px 0;
      font-size:.9rem;
    }

    .summary-row.final{
      border-top:1px solid #d7e7ea;
      padding-top:11px;
      margin-top:12px;
      font-weight:900;
    }

    .toast{
      position:fixed;
      left:50%;
      bottom:26px;
      z-index:200;
      transform:translate(-50%,30px);
      background:#06232d;
      color:white;
      padding:13px 18px;
      border-radius:999px;
      box-shadow:0 15px 40px rgba(0,0,0,.22);
      opacity:0;
      pointer-events:none;
      transition:.25s;
      text-align:center;
      max-width:calc(100% - 30px);
    }

    .toast.show{
      opacity:1;
      transform:translate(-50%,0);
    }

    @media(max-width:1050px){
      .nav-links{display:none}
      .hero-inner{grid-template-columns:1fr 1fr;gap:30px}
      .category-grid{grid-template-columns:repeat(2,1fr)}
      .product-grid{grid-template-columns:repeat(2,1fr)}
      .order-steps{grid-template-columns:repeat(2,1fr)}
    }

    @media(max-width:800px){
      .topbar{display:none}
      .hero-inner{grid-template-columns:1fr}
      .hero{min-height:auto}
      .hero-inner{padding:90px 0}
      .hero-visual{min-height:420px}
      .machine{width:330px;min-height:380px}
      .feature-wrap{grid-template-columns:1fr}
      .feature-copy{padding:34px 26px}
      .contact-grid{grid-template-columns:1fr}
      .section-heading{display:block}
      .section-heading p{margin-top:12px}
      .search{min-width:100%}
    }

    @media(max-width:560px){
      .container{width:min(calc(100% - 22px),var(--max))}
      .brand small{display:none}
      .nav-actions .btn{display:none}
      .category-grid,.product-grid,.order-steps{grid-template-columns:1fr}
      .hero h1{font-size:clamp(3rem,15vw,4.6rem)}
      .hero-actions .btn{width:100%}
      .hero-visual{min-height:350px}
      .machine{width:280px;min-height:335px}
      .machine-screen{min-height:120px}
      .contact-form,.checkout-grid{grid-template-columns:1fr}
      .full{grid-column:auto}
    }


/* Production storefront extensions */
:root{--danger:#c43d4b;--success:#16865f;--warning:#ba7818}
body{min-height:100vh}.nav-actions{flex-wrap:wrap}.nav-account{color:#d8ebef;font-weight:800;font-size:.9rem}
.site-alert{padding:12px 16px;border-radius:14px;margin:18px 0;font-weight:700}.site-alert.success{background:#e9f8ef;color:#116a4c}.site-alert.error{background:#fff0f1;color:#a83240}.site-alert.info{background:#eaf8fb;color:#09768a}
.page-shell{width:min(calc(100% - 32px),1200px);margin:40px auto 80px}.page-title{font-size:clamp(2rem,4vw,3.2rem);letter-spacing:-.04em;margin-bottom:8px}.page-subtitle{color:var(--muted);margin-bottom:28px}
.panel{background:#fff;border:1px solid var(--line);border-radius:24px;padding:24px;box-shadow:0 14px 40px rgba(21,65,76,.06)}
.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.form-grid .full{grid-column:1/-1}.field .help{font-size:.78rem;color:var(--muted);margin-top:5px}.field input[readonly]{background:#f2f6f7}
.btn-danger{background:#9f2f3d;color:#fff}.btn-outline{background:#fff;color:#0a6070;border:1px solid #aadce5}.btn-small{padding:9px 13px;font-size:.82rem}
.account-grid{display:grid;grid-template-columns:240px 1fr;gap:22px}.account-nav{display:grid;gap:7px;align-content:start}.account-nav a{padding:12px 14px;border-radius:12px;font-weight:800;color:#45636c}.account-nav a:hover,.account-nav a.active{background:#e0f9fd;color:#087f92}
.data-table-wrap{overflow:auto}.data-table{width:100%;border-collapse:collapse}.data-table th,.data-table td{padding:13px 12px;border-bottom:1px solid #edf3f5;text-align:left;white-space:nowrap}.data-table th{font-size:.75rem;text-transform:uppercase;letter-spacing:.08em;color:#688089}.data-table td{font-size:.9rem}
.badge{display:inline-flex;align-items:center;padding:6px 10px;border-radius:999px;font-size:.72rem;font-weight:900;background:#edf4f5;color:#52717a}.badge.success{background:#e8f7ef;color:#167052}.badge.warning{background:#fff4de;color:#9b6818}.badge.danger{background:#ffecef;color:#a23846}.badge.info{background:#e4f7fb;color:#0b7789}
.cart-page-grid,.checkout-page-grid{display:grid;grid-template-columns:1.4fr .6fr;gap:24px}.cart-row{display:grid;grid-template-columns:80px 1fr 110px 120px auto;gap:14px;align-items:center;padding:16px 0;border-bottom:1px solid #edf3f5}.cart-thumb{width:80px;height:70px;border-radius:15px;background:linear-gradient(145deg,#0a2b36,#071922);display:grid;place-items:center;color:#7ceeff;font-weight:900;overflow:hidden}.cart-thumb img{width:100%;height:100%;object-fit:cover}.cart-row input{width:80px;border:1px solid var(--line);padding:9px;border-radius:10px}
.summary-card{position:sticky;top:105px}.summary-line{display:flex;justify-content:space-between;gap:15px;padding:9px 0}.summary-line.final{margin-top:10px;padding-top:15px;border-top:1px solid var(--line);font-size:1.15rem;font-weight:900}.summary-card .btn{width:100%;margin-top:15px}
.product-image-real{width:100%;height:230px;object-fit:cover}.product-placeholder{height:230px;display:grid;place-items:center;font-size:3rem;color:#78e8f8;background:radial-gradient(circle at 20% 20%,rgba(94,232,247,.22),transparent 30%),linear-gradient(145deg,#0a2b36,#071922)}
.product-stock{font-size:.78rem;font-weight:800;margin-top:8px}.product-stock.ok{color:#17805e}.product-stock.low{color:#a76b12}.product-stock.out{color:#af3543}.add-btn:disabled{opacity:.5;cursor:not-allowed}
.order-card{border:1px solid var(--line);border-radius:18px;padding:18px;margin-bottom:14px}.order-head{display:flex;justify-content:space-between;gap:18px;align-items:flex-start}.order-meta{color:var(--muted);font-size:.86rem}.tracking-timeline{display:grid;gap:0;margin-top:24px}.track-step{display:grid;grid-template-columns:24px 1fr;gap:12px;position:relative;padding-bottom:18px}.track-step:before{content:"";position:absolute;left:11px;top:21px;bottom:0;width:2px;background:#d9e8eb}.track-step:last-child:before{display:none}.track-dot{width:24px;height:24px;border-radius:50%;background:#dce9eb;border:5px solid #f5fafb;box-shadow:0 0 0 1px #c8dde1;z-index:1}.track-step.done .track-dot{background:var(--primary)}.track-step.current .track-dot{background:var(--accent)}
.notification-item{padding:14px 0;border-bottom:1px solid #edf3f5}.notification-item.unread{font-weight:800}.muted{color:var(--muted)}.text-right{text-align:right}.empty-state{text-align:center;color:var(--muted);padding:45px 10px}
.auth-shell{min-height:calc(100vh - 120px);display:grid;place-items:center;padding:50px 16px;background:linear-gradient(135deg,#061922 0,#0b3a47 100%)}.auth-card{width:min(100%,520px);background:#fff;border-radius:28px;padding:30px;box-shadow:0 30px 90px rgba(0,0,0,.28)}.auth-card h1{margin-bottom:5px}.auth-card>p{color:var(--muted);margin-bottom:22px}
@media(max-width:900px){.account-grid,.cart-page-grid,.checkout-page-grid{grid-template-columns:1fr}.summary-card{position:static}.account-nav{grid-template-columns:repeat(2,1fr)}}
@media(max-width:650px){.form-grid{grid-template-columns:1fr}.form-grid .full{grid-column:auto}.cart-row{grid-template-columns:65px 1fr}.cart-row>div:nth-child(n+3){grid-column:2}.order-head{display:block}.nav-account{display:none}}

/* V2 compliance, policy, support and merchant disclosure UI */
.site-footer{padding:48px 0 18px;background:#031016;color:#91b2ba}
.footer-grid{display:grid;grid-template-columns:1.45fr repeat(3,1fr);gap:34px;align-items:start}
.site-footer h4{margin:0 0 13px;color:#fff;font-size:.9rem;letter-spacing:.02em}
.site-footer a{display:block;color:#a8c7ce;margin:8px 0;font-size:.87rem}
.site-footer a:hover{color:#76eaff}
.footer-brand strong{color:#fff;font-size:1rem}.footer-brand p{margin:10px 0}
.footer-small{font-size:.82rem;line-height:1.65;color:#8fb1ba}
.footer-bottom{display:flex;justify-content:space-between;gap:18px;flex-wrap:wrap;border-top:1px solid rgba(255,255,255,.09);margin-top:30px;padding-top:18px;font-size:.78rem;color:#779aa3}
.bir-seal{display:block;max-width:150px;max-height:150px;object-fit:contain;background:#fff;border-radius:12px;padding:8px;margin-top:12px}

.policy-shell{margin-top:34px}
.policy-grid{display:grid;grid-template-columns:245px minmax(0,1fr);gap:28px;align-items:start}
.policy-nav{position:sticky;top:96px;display:grid;gap:6px;background:#fff;border:1px solid var(--line);border-radius:20px;padding:12px;box-shadow:0 12px 34px rgba(21,65,76,.05)}
.policy-nav a{padding:11px 13px;border-radius:11px;color:#48646d;font-size:.86rem;font-weight:800}
.policy-nav a:hover,.policy-nav a.active{background:#e2f9fd;color:#087f92}
.policy-content{min-width:0;background:#fff;border:1px solid var(--line);border-radius:26px;padding:clamp(22px,4vw,42px);box-shadow:0 14px 40px rgba(21,65,76,.05)}
.policy-title{padding-bottom:24px;border-bottom:1px solid #eaf1f3;margin-bottom:24px}
.policy-title h1{font-size:clamp(2.2rem,5vw,3.8rem);letter-spacing:-.05em;margin:5px 0 10px;line-height:1}
.policy-title p{font-size:1.02rem;line-height:1.7;color:var(--muted);max-width:780px}
.policy-meta{margin-top:13px;font-size:.8rem;font-weight:850;color:#52717a}
.policy-content section{padding:22px 0;border-bottom:1px solid #edf3f5}
.policy-content section:last-child{border-bottom:0}.policy-content h2{font-size:1.25rem;margin:0 0 10px}.policy-content h3{margin-top:0}
.policy-content p,.policy-content li{line-height:1.72;color:#39545d}.policy-content ul{padding-left:21px}.policy-content a:not(.btn):not(.policy-card){color:#087f92;text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:3px}
.policy-callout,.policy-note,.legal-disclosure{border-radius:16px;padding:17px 18px;margin:18px 0;line-height:1.6}
.policy-callout{background:#e8f9fc;border:1px solid #c4edf4;color:#155e6c}.policy-note{background:#fff7e8;border:1px solid #f1dba9;color:#76531a}
.legal-disclosure{background:#f5f9fa;border:1px solid var(--line)}.legal-disclosure p{margin:7px 0!important;font-size:.9rem}
.policy-card-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin:22px 0}
.policy-card{display:block;border:1px solid var(--line);border-radius:18px;padding:18px;background:#fff;color:inherit!important;text-decoration:none!important;transition:.18s}
.policy-card:hover{transform:translateY(-2px);border-color:#8edfe9;box-shadow:0 10px 24px rgba(21,65,76,.07)}
.policy-card h3{font-size:1rem;margin:0 0 6px}.policy-card p{font-size:.86rem;margin:0;color:var(--muted)}

.checkout-policy-box,.consent-box{grid-column:1/-1;border:1px solid #cce7ec;background:#f4fbfc;border-radius:18px;padding:18px;margin-top:3px}
.checkout-policy-box h3{margin:0 0 3px}.check-line{display:flex!important;gap:10px;align-items:flex-start;text-transform:none!important;letter-spacing:0!important;font-size:.88rem!important;font-weight:650!important;color:#31515b!important;margin:12px 0!important;line-height:1.5}
.check-line input{width:18px!important;height:18px;flex:0 0 18px;margin-top:2px;box-shadow:none!important}
.check-line a{color:#087f92;text-decoration:underline;text-underline-offset:2px}
.consent-summary{display:flex;gap:8px;flex-wrap:wrap;margin:13px 0}.consent-summary span{background:#e9f8ef;color:#116a4c;border-radius:999px;padding:6px 10px;font-size:.78rem;font-weight:850}

.product-disclosure{display:flex;gap:6px 12px;flex-wrap:wrap;margin:9px 0 3px;font-size:.75rem;color:#5d747d}.product-disclosure span{background:#f4f8f9;border-radius:8px;padding:5px 7px}

.support-hero{display:flex;justify-content:space-between;gap:24px;align-items:flex-start;margin-bottom:22px}.support-hero .page-subtitle{margin-bottom:0}
.support-grid{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(260px,.55fr);gap:22px;align-items:start}.support-info{position:sticky;top:105px}.support-info hr{border:0;border-top:1px solid var(--line);margin:20px 0}.support-info li{margin:9px 0;color:#47616a;line-height:1.5}.hp-field{position:absolute!important;left:-10000px!important;width:1px!important;height:1px!important;overflow:hidden!important}
.ticket-message{white-space:pre-wrap;background:#f5f9fa;border:1px solid var(--line);border-radius:14px;padding:16px;line-height:1.6}

.cookie-banner{position:fixed;z-index:250;left:18px;right:18px;bottom:18px;margin:auto;width:min(100% - 36px,960px);display:flex;align-items:center;justify-content:space-between;gap:18px;background:#061f28;color:#fff;border:1px solid rgba(118,234,255,.25);box-shadow:0 20px 70px rgba(0,0,0,.3);border-radius:18px;padding:16px 18px}
.cookie-banner[hidden]{display:none}.cookie-banner strong{display:block;margin-bottom:3px}.cookie-banner span{font-size:.82rem;color:#afd0d7;line-height:1.5}.cookie-banner a{color:#76eaff;text-decoration:underline}.cookie-banner .btn{flex:0 0 auto}

@media(max-width:980px){.footer-grid{grid-template-columns:repeat(2,1fr)}.policy-grid{grid-template-columns:1fr}.policy-nav{position:static;grid-template-columns:repeat(3,1fr)}.support-grid{grid-template-columns:1fr}.support-info{position:static}}
@media(max-width:680px){.footer-grid{grid-template-columns:1fr}.footer-bottom{display:block}.footer-bottom span{display:block;margin:6px 0}.policy-content{padding:20px}.policy-nav{grid-template-columns:1fr 1fr}.policy-card-grid{grid-template-columns:1fr}.support-hero{display:block}.support-hero .btn{margin-top:14px}.cookie-banner{align-items:stretch;flex-direction:column}.cookie-banner .btn{width:100%}}
@media(max-width:430px){.policy-nav{grid-template-columns:1fr}}
.ticket-public-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin:20px 0}.ticket-public-grid>div{background:#f5f9fa;border:1px solid var(--line);border-radius:13px;padding:12px}.ticket-public-grid small{display:block;color:var(--muted);font-size:.72rem;text-transform:uppercase;letter-spacing:.05em;margin-bottom:4px}.ticket-public-grid strong{font-size:.87rem}.ticket-result h3{margin-top:18px}
@media(max-width:760px){.ticket-public-grid{grid-template-columns:1fr 1fr}}
@media(max-width:440px){.ticket-public-grid{grid-template-columns:1fr}}

/* RODEL official brand identity */
.brand .rodel-brand-image { display:block; width:clamp(160px,19vw,252px); height:auto; max-height:76px; object-fit:contain; transition:transform .2s ease,filter .2s ease; }
.brand:hover .rodel-brand-image { transform:translateY(-1px) scale(1.02); filter:drop-shadow(0 3px 8px rgba(0,205,241,.23)); }
@media(max-width:680px){.brand .rodel-brand-image{width:154px;max-height:56px}}
