﻿
    :root{
      --bg:#0B1220;
      --bg2:#0F1B33;
      --card:#0F172A;
      --muted:#94A3B8;
      --text:#E6ECF5;
      --line:rgba(255,255,255,.10);
      --soft:rgba(255,255,255,.06);

      --accent:#C21F2B;
      --accent2:#B88A44;
      --ok:#22C55E;

      --radius:18px;
      --radius2:26px;
      --shadow: 0 18px 50px rgba(0,0,0,.38);
      --shadow2: 0 10px 26px rgba(0,0,0,.25);

      --max: 1200px;
    }

    *{box-sizing:border-box}
    html,body{height:100%}
    body{
      margin:0;
      font-family: ui-sans-serif, system-ui, -apple-system, Segoe UI, Roboto, Helvetica, Arial, "Apple Color Emoji","Segoe UI Emoji";
      background: radial-gradient(1200px 700px at 10% 0%, rgba(194,31,43,.24), transparent 55%),
                  radial-gradient(900px 600px at 85% 10%, rgba(184,138,68,.20), transparent 55%),
                  linear-gradient(180deg, var(--bg), #070B12 80%);
      color:var(--text);
      line-height:1.45;
      overflow-x:hidden;
    }

    a{color:inherit; text-decoration:none}
    .container{max-width:var(--max); margin:0 auto; padding:0 20px}

    .bg-pattern{
      position:fixed; inset:0;
      pointer-events:none;
      opacity:.55;
      mix-blend-mode:screen;
      z-index:-1;
      background:
        linear-gradient(to right, rgba(255,255,255,.035) 1px, transparent 1px) 0 0 / 48px 48px,
        linear-gradient(to bottom, rgba(255,255,255,.025) 1px, transparent 1px) 0 0 / 48px 48px;
      mask-image: radial-gradient(1200px 900px at 20% 10%, rgba(0,0,0,1), rgba(0,0,0,.2) 55%, rgba(0,0,0,0) 80%);
    }

    .topbar{
      position:sticky; top:0;
      backdrop-filter: blur(12px);
      background: rgba(11,18,32,.62);
      border-bottom:1px solid var(--line);
      z-index:50;
    }
    .topbar-inner{
      display:flex;
      align-items:center;
      justify-content:space-between;
      gap:14px;
      padding:14px 0;
    }

    /* ===== Header (responsive, standard layout) ===== */
    .topbar-inner{
      display:flex;
      flex-direction:column;
      gap:10px;
      padding:14px 0 12px;
    }
    .topbar-row{
      display:flex;
      align-items:center;
      justify-content:space-between;
      gap:14px;
    }
    .topbar-row--main{gap:16px}
    .nav{
      display:flex;
      gap:10px;
      align-items:center;
      justify-content:center;
      flex:1 1 auto;
      flex-wrap:wrap;
    }
    .nav a{
      font-size:13px;
      color:rgba(230,236,245,.86);
      padding:10px 12px;
      border-radius:999px;
      border:1px solid transparent;
      transition:.2s ease;
      white-space:nowrap;
    }
    .nav a:hover{border-color:var(--line); background:rgba(255,255,255,.03)}
    .header-actions{display:flex; gap:10px; align-items:center; justify-content:flex-end}
    .btn-sm{padding:10px 14px; font-size:13px}

    /* Phones as chips (separate row) */
    .phones--bar{
      width:100%;
      display:flex;
      gap:10px;
      align-items:center;
      justify-content:flex-end;
      flex-wrap:wrap;
    }
    .phone-chip{
      display:inline-flex;
      align-items:center;
      gap:10px;
      padding:9px 12px;
      border-radius:999px;
      border:1px solid var(--line);
      background:rgba(255,255,255,.02);
      color:rgba(230,236,245,.92);
      font-weight:700;
      letter-spacing:.02em;
      font-variant-numeric: tabular-nums;
      transition:.18s ease;
    }
    .phone-chip:hover{transform:translateY(-1px); background:rgba(255,255,255,.05)}
    .phone-number{line-height:1}
    .phone-chip--block{width:100%; justify-content:flex-start}

    /* Burger (mobile) */
    .burger{
      display:none;
      width:44px; height:40px;
      border-radius:14px;
      border:1px solid var(--line);
      background:rgba(255,255,255,.03);
      cursor:pointer;
      align-items:center;
      justify-content:center;
      gap:5px;
      padding:0;
      transition:.18s ease;
    }
    .burger:hover{background:rgba(255,255,255,.06)}
    .burger span{
      display:block;
      width:18px; height:2px;
      background:rgba(230,236,245,.92);
      border-radius:2px;
      margin:2px 0;
    }

    /* Drawer */
    .drawer{
      position:fixed;
      inset:0;
      z-index:80;
    }
    .drawer[hidden]{display:none}
    .drawer-backdrop{
      position:absolute; inset:0;
      background:rgba(0,0,0,.55);
      backdrop-filter: blur(6px);
    }
    .drawer-panel{
      position:absolute;
      top:10px; right:10px; left:10px;
      max-width: 520px;
      margin-left:auto;
      border-radius: 22px;
      border:1px solid var(--line);
      background: rgba(11,18,32,.92);
      box-shadow: var(--shadow);
      overflow:hidden;
    }

    /* Drawer positioning: keep below header and prevent overlap */
    .drawer-panel{
      top: calc(var(--header-offset, 84px) + 10px);
      max-height: calc(100vh - (var(--header-offset, 84px) + 20px));
      overflow:auto;
    }

    .drawer-head{
      display:flex;
      align-items:center;
      justify-content:space-between;
      padding:14px 14px;
      border-bottom:1px solid var(--line);
    }
    .drawer-close{
      width:42px; height:38px;
      border-radius:14px;
      border:1px solid var(--line);
      background:rgba(255,255,255,.03);
      color:rgba(230,236,245,.92);
      cursor:pointer;
    }
    .drawer-links{
      display:flex;
      flex-direction:column;
      gap:8px;
      padding:12px 14px;
    }
    .drawer-links a{
      padding:12px 12px;
      border-radius:16px;
      border:1px solid rgba(255,255,255,.10);
      background:rgba(255,255,255,.02);
      color:rgba(230,236,245,.92);
      font-weight:650;
    }
    .drawer-links a:hover{background:rgba(255,255,255,.05)}
    .drawer-cta{padding:0 14px 12px}
    .drawer-phones{
      padding:12px 14px 16px;
      border-top:1px solid var(--line);
      display:flex;
      flex-direction:column;
      gap:10px;
    }


    .brand{
      display:flex; align-items:center; gap:12px;
      min-width: 220px;
    }
    .logo{
      width:42px; height:42px;
      border-radius:14px;
      background:
        radial-gradient(14px 14px at 30% 30%, rgba(255,255,255,.28), transparent 60%),
        linear-gradient(135deg, rgba(194,31,43,.95), rgba(184,138,68,.88));
      box-shadow: 0 10px 30px rgba(194,31,43,.22);
      position:relative;
      overflow:hidden;
    }
    .logo:after{
      content:"";
      position:absolute; inset:-40%;
      background:
        radial-gradient(circle at 30% 30%, rgba(255,255,255,.18), transparent 55%),
        radial-gradient(circle at 70% 70%, rgba(0,0,0,.18), transparent 55%);
      transform: rotate(18deg);
    }
    .brand-title{display:flex; flex-direction:column; gap:2px}
    .brand-title b{letter-spacing:.12em; font-size:13px}
    .brand-title span{color:var(--muted); font-size:12px}

    nav{
      display:flex;
      gap:18px;
      align-items:center;
      flex-wrap:wrap;
      justify-content:center;
    }
    nav a{
      font-size:13px;
      color:rgba(230,236,245,.86);
      padding:10px 10px;
      border-radius:999px;
      border:1px solid transparent;
      transition: .2s ease;
    }
    nav a:hover{border-color:var(--line); background:rgba(255,255,255,.03)}

    .phones{
      display:flex;
      gap:10px;
      align-items:center;
      justify-content:flex-end;
      flex-wrap:wrap;
      min-width: 320px;
    }
    .pill{
      display:flex;
      align-items:center;
      gap:8px;
      padding:8px 10px;
      border-radius:999px;
      border:1px solid var(--line);
      background:rgba(255,255,255,.02);
      font-size:12px;
      color:rgba(230,236,245,.9);
    }
    .pill{
      display:flex;
      align-items:center;
      gap:10px;
      padding:9px 12px;
      border-radius:999px;
      border:1px solid var(--line);
      background:rgba(255,255,255,.02);
      font-size:12.5px;
      color:rgba(230,236,245,.92);
    }
    .pill a{
      opacity:.98;
      font-weight:700;
      letter-spacing:.02em;
      font-variant-numeric: tabular-nums;
    }
    .flag{
      width:22px; height:22px;
      display:grid; place-items:center;
      border-radius:999px;
      background: rgba(255,255,255,.05);
      border:1px solid rgba(255,255,255,.10);
      box-shadow: 0 8px 18px rgba(0,0,0,.18);
      font-size:14px;
      line-height:1;
      flex:0 0 auto;
    }

    .pill small{color:var(--muted); font-size:11px}
    .pill a{opacity:.98}
    .pill a:hover{text-decoration:underline}

    .btn{
      display:inline-flex;
      align-items:center;
      justify-content:center;
      gap:10px;
      padding:12px 16px;
      border-radius:999px;
      border:1px solid var(--line);
      background:rgba(255,255,255,.04);
      color:var(--text);
      cursor:pointer;
      transition:.18s ease;
      font-weight:600;
      font-size:14px;
      white-space:nowrap;
    }
    .btn:hover{transform:translateY(-1px); background:rgba(255,255,255,.06)}
    .btn.primary{
      border-color: rgba(194,31,43,.55);
      background:
        radial-gradient(200px 120px at 20% 20%, rgba(255,255,255,.20), transparent 55%),
        linear-gradient(135deg, rgba(194,31,43,.98), rgba(184,138,68,.90));
      box-shadow: 0 18px 40px rgba(194,31,43,.18);
    }
    .btn.primary:hover{filter:saturate(1.05)}
    .btn.ghost{background:transparent}

    .hero{padding:56px 0 26px}
    .hero-grid{
      display:grid;
      grid-template-columns: 1.1fr .9fr;
      gap:28px;
      align-items:stretch;
    }
    .badge{
      display:inline-flex;
      align-items:center;
      gap:10px;
      padding:8px 12px;
      border-radius:999px;
      border:1px solid var(--line);
      background:rgba(255,255,255,.03);
      color:rgba(230,236,245,.9);
      font-size:12px;
      width:fit-content;
    }
    .dot{
      width:8px; height:8px; border-radius:999px;
      background:linear-gradient(135deg, var(--accent), var(--accent2));
      box-shadow: 0 0 0 6px rgba(194,31,43,.14);
    }
    h1{
      margin:14px 0 10px;
      font-size:44px;
      line-height:1.08;
      letter-spacing:-.02em;
    }
    .lead{
      margin:0;
      color:rgba(230,236,245,.82);
      font-size:16px;
      max-width: 54ch;
    }
    .hero-actions{
      display:flex;
      gap:12px;
      margin-top:18px;
      flex-wrap:wrap;
    }
    .trustline{
      margin-top:16px;
      display:flex;
      gap:18px;
      flex-wrap:wrap;
      color:rgba(230,236,245,.72);
      font-size:12px;
    }
    .trustline b{color:rgba(230,236,245,.92); font-weight:700}

    .hero-card{
      border-radius: var(--radius2);
      border:1px solid var(--line);
      background:
        radial-gradient(400px 200px at 20% 10%, rgba(194,31,43,.18), transparent 50%),
        radial-gradient(400px 200px at 80% 30%, rgba(184,138,68,.18), transparent 55%),
        linear-gradient(180deg, rgba(255,255,255,.03), rgba(255,255,255,.015));
      box-shadow: var(--shadow);
      overflow:hidden;
      position:relative;
      min-height: 340px;
    }
    .hero-card:before{
      content:"";
      position:absolute; inset:0;
      background:
        radial-gradient(120px 120px at 85% 20%, rgba(255,255,255,.10), transparent 65%),
        radial-gradient(150px 150px at 20% 80%, rgba(255,255,255,.07), transparent 70%),
        repeating-linear-gradient(135deg, rgba(255,255,255,.03) 0 8px, transparent 8px 18px);
      opacity:.55;
      mix-blend-mode:screen;
      pointer-events:none;
    }
    .hero-visual{
      position:absolute;
      inset:18px;
      border-radius: calc(var(--radius2) - 10px);
      border:1px solid rgba(255,255,255,.08);
      background: rgba(2,6,16,.18);
      overflow:hidden;
    }
    .map{
      position:absolute; inset:-30px -40px -40px -40px;
      opacity:.95;
      filter: drop-shadow(0 10px 20px rgba(0,0,0,.25));
    }
    .seal{
      position:absolute;
      right:16px; bottom:16px;
      width:98px; height:98px;
      border-radius:22px;
      background:
        radial-gradient(60px 60px at 30% 30%, rgba(255,255,255,.12), transparent 60%),
        linear-gradient(135deg, rgba(194,31,43,.96), rgba(184,138,68,.86));
      border:1px solid rgba(255,255,255,.14);
      box-shadow: 0 18px 40px rgba(194,31,43,.18);
      display:grid;
      place-items:center;
      transform: rotate(2deg);
    }
    .seal span{
      font-weight:800;
      letter-spacing:.18em;
      font-size:12px;
      text-align:center;
      line-height:1.05;
    }
    .seal span small{display:block; font-weight:700; letter-spacing:.22em; opacity:.9}

    section{padding:34px 0; scroll-margin-top: calc(var(--header-offset, 100px) + 20px);}
    .section-head{
      display:flex;
      align-items:flex-end;
      justify-content:space-between;
      gap:16px;
      margin-bottom:14px;
    }
    .section-head h2{
      margin:0;
      font-size:22px;
      letter-spacing:-.01em;
    }
    .section-head p{
      margin:0;
      color:rgba(230,236,245,.72);
      font-size:13px;
      max-width: 60ch;
    }

    .grid-3{display:grid; grid-template-columns:repeat(3, 1fr); gap:14px}
    .card{
      border:1px solid var(--line);
      background: rgba(255,255,255,.02);
      border-radius: var(--radius);
      padding:16px;
      box-shadow: var(--shadow2);
      position:relative;
      overflow:hidden;
    }
    .card:after{
      content:"";
      position:absolute; inset:-40%;
      background: radial-gradient(circle at 30% 30%, rgba(194,31,43,.10), transparent 55%),
                  radial-gradient(circle at 70% 70%, rgba(184,138,68,.10), transparent 55%);
      transform: rotate(14deg);
      opacity:.6;
      pointer-events:none;
    }
    .card > *{position:relative; z-index:1}
    .card h3{margin:0 0 6px; font-size:15px; letter-spacing:-.01em}
    .card p{margin:0; color:rgba(230,236,245,.72); font-size:13px}
    .kicker{
      display:inline-flex;
      align-items:center;
      gap:8px;
      margin-bottom:10px;
      font-size:12px;
      color:rgba(230,236,245,.75);
    }
    .kicker i{
      width:22px; height:22px;
      border-radius:8px;
      background: rgba(255,255,255,.06);
      border:1px solid rgba(255,255,255,.08);
      display:grid;
      place-items:center;
      font-style:normal;
      font-weight:800;
      color:rgba(230,236,245,.9);
    }

    .steps{display:grid; grid-template-columns: repeat(5, 1fr); gap:12px}
    .step{
      border:1px solid var(--line);
      background: rgba(255,255,255,.02);
      border-radius: 16px;
      padding:14px;
      min-height: 140px;
      position:relative;
      overflow:hidden;
    }
    .step:before{
      content:"";
      position:absolute;
      inset:-30%;
      background: radial-gradient(circle at 30% 30%, rgba(255,255,255,.08), transparent 60%);
      opacity:.8;
      pointer-events:none;
    }
    .step b{
      display:inline-flex;
      width:30px; height:30px;
      border-radius:12px;
      align-items:center;
      justify-content:center;
      background: rgba(194,31,43,.18);
      border:1px solid rgba(194,31,43,.35);
      color:rgba(230,236,245,.92);
      margin-bottom:10px;
    }
    .step h3{margin:0 0 6px; font-size:14px}
    .step p{margin:0; font-size:12.5px; color:rgba(230,236,245,.72)}

    .icon-row{display:grid; grid-template-columns: repeat(4, 1fr); gap:12px}
    .mode{display:flex; gap:12px; align-items:flex-start}
    .mode .ico{
      width:44px; height:44px;
      border-radius:16px;
      border:1px solid rgba(255,255,255,.10);
      background:
        radial-gradient(26px 26px at 30% 30%, rgba(255,255,255,.10), transparent 60%),
        linear-gradient(135deg, rgba(194,31,43,.26), rgba(184,138,68,.18));
      display:grid;
      place-items:center;
      flex:0 0 auto;
    }
    .mode svg{width:22px; height:22px; opacity:.95}
    .mode h3{margin:0 0 4px; font-size:14px}
    .mode p{margin:0; font-size:12.5px; color:rgba(230,236,245,.72)}

    .trust{display:grid; grid-template-columns: 1fr 1fr; gap:14px; align-items:stretch}
    .trust ul{margin:0; padding:0 0 0 18px; color:rgba(230,236,245,.78); font-size:13px}
    .trust li{margin:8px 0}
    .stat-row{display:grid; grid-template-columns: repeat(3, 1fr); gap:12px; margin-top:12px}
    .stat{border:1px solid var(--line); border-radius:16px; padding:12px; background: rgba(255,255,255,.02)}
    .stat b{font-size:18px}
    .stat span{display:block; color:rgba(230,236,245,.70); font-size:12px; margin-top:3px}

    .case{display:flex; flex-direction:column; gap:10px}
    .case .meta{display:flex; gap:10px; flex-wrap:wrap; font-size:12px; color:rgba(230,236,245,.72)}
    .tag{padding:6px 10px; border-radius:999px; border:1px solid var(--line); background:rgba(255,255,255,.02)}

    .form-wrap{
      border-radius: var(--radius2);
      border:1px solid var(--line);
      background:
        radial-gradient(600px 260px at 20% 0%, rgba(194,31,43,.16), transparent 55%),
        radial-gradient(520px 240px at 90% 20%, rgba(184,138,68,.14), transparent 55%),
        linear-gradient(180deg, rgba(255,255,255,.03), rgba(255,255,255,.015));
      box-shadow: var(--shadow);
      overflow:hidden;
      position:relative;
    }
    .form-inner{display:grid; grid-template-columns: 1fr 1fr; gap:0; align-items:stretch}
    .form-left{padding:18px; border-right:1px solid var(--line)}
    .form-right{padding:18px; display:flex; flex-direction:column; justify-content:space-between; gap:14px}
    .form-left h2{margin:0 0 8px; font-size:22px}
    .form-left p{margin:0; color:rgba(230,236,245,.72); font-size:13px; max-width:65ch}
    form{margin-top:14px}
    .fields{display:grid; grid-template-columns: 1fr 1fr; gap:12px}
    .field{display:flex; flex-direction:column; gap:6px}
    label{font-size:12px; color:rgba(230,236,245,.78)}
    input, textarea, select{
      width:100%;
      padding:12px 12px;
      border-radius:14px;
      border:1px solid rgba(255,255,255,.12);
      background: rgba(2,6,16,.26);
      color:var(--text);
      outline:none;
      transition:.15s ease;
    }
    input:focus, textarea:focus, select:focus{
      border-color: rgba(194,31,43,.45);
      box-shadow: 0 0 0 4px rgba(194,31,43,.12);
    }
    textarea{min-height:110px; resize:vertical; grid-column: 1 / -1}
    .full{grid-column: 1 / -1}
    .form-actions{display:flex; gap:12px; align-items:center; flex-wrap:wrap; margin-top:12px}
    .note{font-size:12px; color:rgba(230,236,245,.68)}
    .ok{
      display:none;
      margin-top:10px;
      padding:10px 12px;
      border-radius:14px;
      border:1px solid rgba(34,197,94,.35);
      background: rgba(34,197,94,.10);
      color:rgba(230,236,245,.92);
      font-size:13px;
    }

    footer{
      padding:24px 0 40px;
      color:rgba(230,236,245,.62);
      font-size:12px;
      border-top:1px solid var(--line);
      margin-top:34px;
    }
    .footer-grid{display:grid; grid-template-columns: 1.2fr .8fr; gap:16px; align-items:start}
    .footer-links{display:flex; gap:10px; flex-wrap:wrap; justify-content:flex-end}
    .footer-links a{
      padding:8px 10px;
      border-radius:999px;
      border:1px solid var(--line);
      background:rgba(255,255,255,.02);
    }
    .footer-links a:hover{text-decoration:underline}

    @media (max-width: 980px){
      .nav{display:none}
      .burger{display:inline-flex}
      .brand{min-width: auto; flex-shrink: 1}
      .brand-title b{font-size: 12px}
      .brand-title span{font-size: 11px}
      .header-actions{flex-shrink: 0}
      .phones--bar{justify-content:flex-start; flex-wrap:nowrap; overflow:auto; -webkit-overflow-scrolling:touch; padding-bottom:2px}
      .phones--bar::-webkit-scrollbar{height:6px}
      .phones--bar::-webkit-scrollbar-thumb{background:rgba(255,255,255,.12); border-radius:999px}

      .hero-grid{grid-template-columns: 1fr}
      .hero-card{min-height:320px}
      .steps{grid-template-columns: 1fr}
      .icon-row{grid-template-columns: 1fr 1fr}
      .grid-3{grid-template-columns: 1fr}
      .trust{grid-template-columns: 1fr}
      .form-inner{grid-template-columns: 1fr}
      .form-left{border-right:none; border-bottom:1px solid var(--line)}
      .fields{grid-template-columns: 1fr}
      .phones{min-width: unset}
      h1{font-size:36px}
    }

    @media (prefers-reduced-motion: reduce){
      .btn{transition:none}
      .btn:hover{transform:none}
    }
  
    /* ===== MOBILE MENU HARD FIX ===== */
    @media (max-width: 980px){
      .topbar{
        position:relative;
        z-index:10;
      }
      .topbar .container{
        position:relative;
        z-index:auto;
      }
      .drawer{
        position:fixed !important;
        inset:0 !important;
        z-index:99999 !important;
      }
      .drawer-backdrop{
        position:fixed !important;
        inset:0 !important;
        background:rgba(5,10,20,.72) !important;
        backdrop-filter: blur(8px) !important;
        z-index:99999 !important;
      }
      .drawer-panel{
        position:fixed !important;
        top:0 !important;
        right:0 !important;
        left:auto !important;
        height:100dvh !important;
        max-height:100dvh !important;
        width:100% !important;
        max-width:420px !important;
        border-radius: 0 !important;
        overflow-y:auto !important;
        -webkit-overflow-scrolling: touch !important;
        animation: slideIn .22s ease-out !important;
        z-index:100000 !important;
      }
      @keyframes slideIn{
        from{transform:translateX(12px); opacity:.6}
        to{transform:none; opacity:1}
      }
      /* Ensure page-hero and other elements don't overlap drawer */
      .page-hero,
      .page-hero .container,
      .page-hero__overlay,
      .hero,
      .hero-card,
      section,
      main{
        position:relative;
        z-index:1;
      }
    }


    /* ===== SEO/UI helpers ===== */
    .breadcrumbs{
      display:flex;
      gap:10px;
      align-items:center;
      flex-wrap:wrap;
      margin-top:10px;
      padding:10px 12px;
      border-radius:999px;
      border:1px solid var(--line);
      background:rgba(255,255,255,.02);
      width:fit-content;
      color:rgba(230,236,245,.78);
      font-size:12px;
    }
    .breadcrumbs a{color:rgba(230,236,245,.88)}
    .breadcrumbs a:hover{text-decoration:underline}
    .breadcrumbs .sep{opacity:.55}
    details.faq{
      border:1px solid var(--line);
      background:rgba(255,255,255,.02);
      border-radius:16px;
      padding:12px 14px;
    }
    details.faq + details.faq{margin-top:10px}
    details.faq summary{
      cursor:pointer;
      font-weight:750;
      color:rgba(230,236,245,.92);
      list-style:none;
    }
    details.faq summary::-webkit-details-marker{display:none}
    details.faq p{margin:10px 0 0; color:rgba(230,236,245,.72); font-size:13px}


    /* ===== Light Theme (Business) ===== */
    body.light{
      /* palette */
      --bg:#F6F8FB;
      --bg2:#FFFFFF;
      --card:#FFFFFF;
      --text:#0F172A;      /* slate-900 */
      --muted:#475569;     /* slate-600 */
      --line:rgba(15,23,42,.14);
      --soft:rgba(15,23,42,.06);

      /* keep brand accents */
      --accent:#C21F2B;
      --accent2:#B88A44;

      background:
        radial-gradient(1200px 700px at 10% 0%, rgba(194,31,43,.10), transparent 55%),
        radial-gradient(900px 600px at 85% 10%, rgba(184,138,68,.10), transparent 55%),
        linear-gradient(180deg, var(--bg), #EEF2F7 80%);
      color:var(--text);
    }

    /* Header / topbar */
    body.light .topbar{
      background: rgba(255,255,255,.80);
      border-bottom:1px solid var(--line);
    }
    body.light .brand-title span{color:rgba(15,23,42,.55)}
    body.light .nav a{color:rgba(15,23,42,.80)}
    body.light .nav a:hover{background:rgba(15,23,42,.04); border-color:var(--line)}

    /* Background grid */
    body.light .bg-pattern{
      opacity:.30;
      mix-blend-mode:normal;
      background:
        linear-gradient(to right, rgba(15,23,42,.05) 1px, transparent 1px) 0 0 / 48px 48px,
        linear-gradient(to bottom, rgba(15,23,42,.04) 1px, transparent 1px) 0 0 / 48px 48px;
      mask-image: radial-gradient(1200px 900px at 20% 10%, rgba(0,0,0,1), rgba(0,0,0,.35) 55%, rgba(0,0,0,0) 80%);
    }

    /* Cards and sections */
    body.light .card,
    body.light .form-wrap,
    body.light .hero-card,
    body.light footer{
      background: rgba(255,255,255,.86);
      color:var(--text);
      border-color: var(--line);
      box-shadow: 0 16px 40px rgba(2,6,23,.10);
    }
    body.light .card:after{opacity:.18}
    body.light .step,
    body.light .stat,
    body.light .breadcrumbs,
    body.light details.faq,
    body.light .phone-chip{
      background: rgba(255,255,255,.78);
      border-color: var(--line);
    }

    /* Typography fixes (override hardcoded dark-mode RGBA) */
    body.light .lead,
    body.light .section-head p,
    body.light .card p,
    body.light .step p,
    body.light .mode p,
    body.light .trustline,
    body.light .meta,
    body.light .note,
    body.light .form-left p,
    body.light .footer-grid,
    body.light ul,
    body.light li{
      color: rgba(15,23,42,.68) !important;
    }
    body.light h1,
    body.light h2,
    body.light h3,
    body.light .brand-title b{
      color: rgba(15,23,42,.92) !important;
    }

    /* Badge and tags */
    body.light .badge{
      background: rgba(255,255,255,.78);
      border-color: var(--line);
      color: rgba(15,23,42,.78);
    }
    body.light .tag{
      background: rgba(255,255,255,.70);
      border-color: var(--line);
      color: rgba(15,23,42,.78);
    }

    /* Inputs */
    body.light input,
    body.light textarea,
    body.light select{
      background: rgba(255,255,255,.92);
      color: rgba(15,23,42,.92);
      border-color: rgba(15,23,42,.16);
    }
    body.light input:focus,
    body.light textarea:focus,
    body.light select:focus{
      border-color: rgba(194,31,43,.55);
      box-shadow: 0 0 0 4px rgba(194,31,43,.12);
    }

    /* Buttons */
    body.light .btn{
      background: rgba(255,255,255,.72);
      border-color: rgba(15,23,42,.16);
      color: rgba(15,23,42,.88);
    }
    body.light .btn:hover{background: rgba(255,255,255,.92)}
    body.light .btn.ghost{background: transparent}
    body.light .btn.primary{
      color: #fff;
      border-color: rgba(194,31,43,.50);
      box-shadow: 0 16px 34px rgba(194,31,43,.18);
    }

    /* Phone chips and flags */
    body.light .phone-chip{
      color: rgba(15,23,42,.90);
      box-shadow: 0 10px 24px rgba(2,6,23,.10);
    }
    body.light .flag{
      background: rgba(15,23,42,.05);
      border-color: rgba(15,23,42,.12);
      box-shadow: 0 8px 16px rgba(2,6,23,.08);
    }

    /* Drawer (mobile menu) */
    body.light .drawer-backdrop{
      background: rgba(2,6,23,.35);
      backdrop-filter: blur(10px);
    }
    body.light .drawer-panel{
      background: rgba(255,255,255,.94);
      border-color: var(--line);
    }
    body.light .drawer-links a{
      background: rgba(255,255,255,.88);
      border-color: rgba(15,23,42,.12);
      color: rgba(15,23,42,.90);
    }
    body.light .drawer-links a:hover{background: rgba(255,255,255,1)}
    body.light .drawer-close{color: rgba(15,23,42,.85)}



/* ===== Light Theme CTA & Contrast Fix ===== */
body.light .btn.primary{
  background: linear-gradient(135deg, #C21F2B, #E24A4A);
  color:#fff !important;
  border-color: rgba(194,31,43,.55);
  box-shadow: 0 14px 30px rgba(194,31,43,.22);
}
body.light .btn.primary:hover{
  filter: brightness(1.05);
}

body.light .btn{
  color: rgba(15,23,42,.9);
}

body.light .hero .btn{
  box-shadow: none;
}

body.light .hero .btn.primary{
  box-shadow: 0 18px 38px rgba(194,31,43,.28);
}

/* Fix faint secondary buttons */
body.light .btn:not(.primary){
  background: rgba(255,255,255,.95);
  border-color: rgba(15,23,42,.18);
}

/* Improve muted text readability in hero */
body.light .hero p,
body.light .hero .lead{
  color: rgba(15,23,42,.78) !important;
}


/* ===== Light Theme: Visibility Patch (keep default dark) ===== */
body.light{
  color-scheme: light;
}

/* Make all "muted" UI text readable */
body.light .muted,
body.light .sub,
body.light .note,
body.light .meta,
body.light .kicker,
body.light .kicker span,
body.light .kicker i,
body.light .lead,
body.light .section-head p,
body.light .card p,
body.light .step p,
body.light .mode p,
body.light .trustline,
body.light .trustline span,
body.light .small,
body.light small{
  color: rgba(15,23,42,.72) !important;
  opacity: 1 !important;
}

/* Headings and strong text */
body.light h1, body.light h2, body.light h3,
body.light .card h3, body.light .section-head h2,
body.light .brand-title b{
  color: rgba(15,23,42,.94) !important;
}

/* Badges / pills / tags / chips */
body.light .badge,
body.light .tag,
body.light .pill,
body.light .phone-chip,
body.light .breadcrumbs{
  background: rgba(255,255,255,.92) !important;
  border-color: rgba(15,23,42,.16) !important;
  color: rgba(15,23,42,.86) !important;
}

/* Small "dot" marker and numbering chips */
body.light .dot{
  background: rgba(194,31,43,.85) !important;
  box-shadow: 0 0 0 4px rgba(194,31,43,.10);
}
body.light .step i,
body.light .kicker i{
  background: rgba(194,31,43,.10) !important;
  border-color: rgba(194,31,43,.25) !important;
  color: rgba(194,31,43,.88) !important;
}

/* Icon tiles in delivery modes */
body.light .ico{
  background: rgba(194,31,43,.10) !important;
  border: 1px solid rgba(194,31,43,.18) !important;
  color: rgba(194,31,43,.90) !important;
}

/* Inputs placeholders */
body.light ::placeholder{
  color: rgba(15,23,42,.42) !important;
  opacity: 1 !important;
}
body.light label{
  color: rgba(15,23,42,.70) !important;
}

/* Footer links */
body.light footer a{
  color: rgba(15,23,42,.78) !important;
}
body.light footer a:hover{
  color: rgba(15,23,42,.92) !important;
}

/* Ensure subtle separators visible */
body.light .divider,
body.light hr{
  border-color: rgba(15,23,42,.12) !important;
}

/* Fix any leftover low-opacity text blocks */
body.light [style*="opacity:"]{
  opacity: 1 !important;
}


/* ===== Light Theme: Targeted Fixes for Underlined Areas ===== */

/* Trustline (hero meta) stronger */
body.light .trustline{
  color: rgba(15,23,42,.78) !important;
}
body.light .trustline b{
  color: rgba(15,23,42,.92) !important;
}

/* Step number chips were using light bg + white text -> low contrast */
body.light .step b{
  background: rgba(194,31,43,.10) !important;
  border-color: rgba(194,31,43,.22) !important;
  color: rgba(194,31,43,.92) !important;
}

/* Step headings + delivery format headings */
body.light .step h3,
body.light .card h3,
body.light .mode h3{
  color: rgba(15,23,42,.92) !important;
}

/* Delivery format descriptions */
body.light .formats .card p,
body.light .steps .step p{
  color: rgba(15,23,42,.72) !important;
}

/* Buttons in light theme: ensure text visible even when not primary */
body.light .btn{
  color: rgba(15,23,42,.88) !important;
}


/* ===== Responsive Patch (all pages) ===== */

/* Make hero layouts wrap nicely on smaller screens */
@media (max-width: 1100px){
  .hero-grid{grid-template-columns: 1fr; gap:18px;}
  .hero-visual{min-height: 320px;}
}

/* Global grids */
@media (max-width: 980px){
  section{padding: 42px 0;}
  .container{padding: 0 16px;}
  h1{font-size: 34px;}
  .lead{font-size: 14px;}
  .grid-3{grid-template-columns: 1fr;}
  .grid-2{grid-template-columns: 1fr;}
  .icon-row{grid-template-columns: 1fr;}
  .hero-actions{flex-wrap: wrap;}
  .hero-actions .btn{width: auto;}
  .section-head{gap:12px; align-items:flex-start;}
  .section-head a.btn{margin-left:0;}
  .trustline{flex-wrap: wrap; gap:8px 12px;}
  .card{padding:16px;}
  .badge{max-width: 100%;}
}

/* Small screens */
@media (max-width: 640px){
  .topbar-inner{gap:8px;}
  .brand{min-width: auto;}
  .brand .logo{width: 36px; height: 36px;}
  .brand-title b{font-size: 11px;}
  .brand-title span{font-size: 10px; display: none;}
  .header-actions{gap: 6px;}
  h1{font-size: 30px;}
  h2{font-size: 22px;}
  .nav{display:none;}
  .btn{padding: 11px 14px;}
  .btn-sm{padding: 10px 12px;}
  .phone-chip{padding: 8px 10px;}
  .breadcrumbs{padding: 8px 10px;}
  .hero-visual{min-height: 260px;}
  .hero-card{border-radius: 22px;}
  .card{border-radius: 18px;}
}

/* Prevent long words/phones from breaking layouts */
.phone-number{white-space:nowrap;}
.card, .step{min-width:0;}

/* ===== Page Hero (for inner pages) ===== */
.page-hero{
  position:relative;
  padding:44px 0 34px;
  min-height:700px;
  background-size:cover;
  background-position:right top;
  background-repeat:no-repeat;
  overflow:hidden;
  border-bottom:1px solid rgba(255,255,255,.06);
  display:flex;
  align-items:flex-start;
}

.page-hero__overlay{
  position:absolute;
  inset:0;
  background: linear-gradient(180deg, rgba(6,8,12,.42), rgba(6,8,12,.22));
  pointer-events:none;
}

.page-hero .container{
  position:relative;
  z-index:2;
  display:flex;
  justify-content:flex-start;
  align-items:flex-start;
  padding-top:44px;
  width:100%;
}

.page-hero__content{
  max-width:640px;
  margin:0 auto 0 0;
  text-align:left !important;
  position:relative;
  padding:18px 18px 16px;
}

.page-hero__content::before{
  content:"";
  position:absolute;
  inset:-14px -18px -14px -14px;
  background: rgba(6,8,12,.62);
  border:1px solid rgba(255,255,255,.10);
  border-radius:18px;
  backdrop-filter: blur(6px);
  -webkit-backdrop-filter: blur(6px);
  z-index:-1;
}

.page-hero__content .hero-actions{
  display:flex;
  gap:10px;
  flex-wrap:wrap;
  justify-content:flex-start !important;
}

@media (max-width: 768px){
  .page-hero{
    min-height:700px;
    align-items:flex-end;
    padding:22px 0 18px;
    background-position:center top;
  }
  .page-hero .container{
    padding-top:0;
    align-items:flex-end;
  }
  .page-hero__content{
    max-width:100%;
    margin:0;
    padding:12px 12px 10px;
  }
  .page-hero__content::before{
    inset:-10px -10px -10px -10px;
    border-radius:16px;
    background: rgba(6,8,12,.70);
  }
  .page-hero h1{ font-size:26px !important; line-height:1.12; }
  .page-hero .lead{ font-size:15px; }
  .page-hero__content .badge{ display:none; }
}

@media (max-width: 420px){
  .page-hero{ 
    min-height:560px;
    align-items:flex-end;
  }
  .page-hero .container{
    align-items:flex-end;
  }
  .page-hero h1{ font-size:24px !important; }
}

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

