:root{
      --bg:#07111F;--surface:#101C2C;--surface2:#15243A;--blue:#2563EB;--cyan:#06B6D4;
      --orange:#F97316;--green:#22C55E;--red:#EF4444;--text:#FFF;--muted:#AEB8C7;
      --border:rgba(255,255,255,.10);--shadow:0 28px 80px rgba(0,0,0,.38)
    }
    *{box-sizing:border-box} html{scroll-behavior:smooth}
    body{margin:0;color:var(--text);font-family:Inter,sans-serif;background:
      radial-gradient(circle at 12% 4%,rgba(37,99,235,.18),transparent 30%),
      radial-gradient(circle at 88% 10%,rgba(249,115,22,.16),transparent 28%),
      radial-gradient(circle at 50% 85%,rgba(6,182,212,.10),transparent 35%),var(--bg);overflow-x:hidden}
    button,input,textarea,select{font:inherit} a{text-decoration:none;color:inherit} img{max-width:100%;display:block}
    .shell{max-width:1220px;margin:auto;padding:0 22px}
    .topbar{position:fixed;inset:0 0 auto 0;z-index:50;transition:.3s}
    .topbar.scrolled{background:rgba(7,17,31,.82);border-bottom:1px solid var(--border);backdrop-filter:blur(18px)}
    .nav{height:76px;display:flex;align-items:center;gap:18px}
    .brand-account-group{display:flex;align-items:center;gap:14px;min-width:0}
    .header-account-controls{display:flex;align-items:center;gap:7px;min-width:0}
    .header-account-btn{min-height:34px;padding:0 12px;border:1px solid rgba(249,115,22,.38);border-radius:10px;background:rgba(249,115,22,.10);color:#ffd0ae;font-size:11px;font-weight:900;cursor:pointer;white-space:nowrap}
    .header-account-btn:hover{background:rgba(249,115,22,.22)}
    .g58-bell-btn{position:relative;display:flex;align-items:center;justify-content:center;width:34px;height:34px;border:1px solid rgba(255,255,255,.16);border-radius:10px;background:rgba(255,255,255,.05);color:#dfe7f0;cursor:pointer;flex-shrink:0}
    .g58-bell-btn:hover{background:rgba(255,255,255,.1)}
    .g58-bell-btn svg{width:18px;height:18px}
    .g58-bell-btn.hidden{display:none}
    .g58-bell-badge{position:absolute;top:-5px;right:-5px;min-width:16px;height:16px;padding:0 3px;border-radius:999px;background:#EF4444;color:#fff;font-size:9.5px;font-weight:800;line-height:16px;text-align:center}
    .header-account-btn.login{background:#f97316;color:#111;border-color:#f97316}
    .header-account-btn.logout{border-color:rgba(239,68,68,.34);background:rgba(239,68,68,.10);color:#fecaca}
    .header-user-name{max-width:150px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#fff;font-size:12px;font-weight:900}
    .brand{display:flex;align-items:center;gap:11px;font-family:Manrope,sans-serif;font-weight:800;font-size:20px}
    .logo3d{width:40px;height:40px;flex-shrink:0}
    .nav-actions{margin-left:auto;display:flex;gap:8px;align-items:center;padding:6px;border:1px solid rgba(255,255,255,.10);background:rgba(255,255,255,.045);border-radius:18px;backdrop-filter:blur(12px)}

    .nav-icon-btn{width:42px;height:42px;padding:0;border-radius:13px;border:1px solid rgba(255,255,255,.10);background:rgba(255,255,255,.055);color:#fff;display:grid;place-items:center;font-size:18px;cursor:pointer;transition:.22s;position:relative}
    .nav-icon-btn:hover{transform:translateY(-2px);background:rgba(249,115,22,.18);border-color:rgba(249,115,22,.45);color:#fdba74}
    .nav-icon-btn.primary{background:#F97316;color:#111;border-color:#F97316;box-shadow:0 8px 20px rgba(249,115,22,.25)}
    .nav-icon-btn.primary:hover{background:#F97316;color:#111;transform:translateY(-2px) scale(1.03)}
    .nav-tooltip{position:absolute;top:52px;left:50%;transform:translateX(-50%) translateY(-4px);background:#05070a;color:#fff;border:1px solid rgba(255,255,255,.12);border-radius:9px;padding:6px 8px;font-size:10px;font-weight:700;white-space:nowrap;opacity:0;pointer-events:none;transition:.18s;box-shadow:0 10px 24px rgba(0,0,0,.35)}
    .nav-icon-btn:hover .nav-tooltip{opacity:1;transform:translateX(-50%) translateY(0)}
    .btn{border:1px solid var(--border);background:rgba(255,255,255,.055);color:#fff;padding:12px 17px;border-radius:14px;
      font-weight:700;cursor:pointer;transition:.24s;display:inline-flex;align-items:center;justify-content:center;gap:8px}
    .btn:hover{transform:translateY(-2px);background:rgba(255,255,255,.10)}
    .btn.primary{border:0;background:linear-gradient(135deg,var(--blue),var(--cyan))}
    .btn.orange{border:0;background:linear-gradient(135deg,var(--orange),#fb923c);color:#111}
    .btn.green{border:0;background:linear-gradient(135deg,var(--green),#4ade80);color:#07111F}
    .btn.danger{border:0;background:linear-gradient(135deg,#dc2626,#ef4444)}
    .landing{min-height:100vh;display:grid;place-items:center;padding:110px 0 55px}
    .landing-card{width:min(980px,100%);min-height:760px;border:1px solid var(--border);border-radius:34px;background:
      radial-gradient(circle at top left,rgba(37,99,235,.20),transparent 35%),
      radial-gradient(circle at bottom right,rgba(249,115,22,.16),transparent 35%),rgba(16,28,44,.75);
      backdrop-filter:blur(18px);box-shadow:var(--shadow);padding:42px 42px 48px;text-align:center;position:relative;overflow:hidden}
    .landing-card h1{font-family:Manrope,sans-serif;font-size:clamp(42px,6.5vw,72px);line-height:.98;letter-spacing:-.055em;margin:28px auto 18px;max-width:760px}
    .gradient-text{background:linear-gradient(90deg,#60a5fa,#67e8f9,#fb923c);-webkit-background-clip:text;color:transparent}
    .landing-card p{color:var(--muted);max-width:680px;margin:0 auto;line-height:1.75;font-size:17px}
    .location-chip{display:inline-flex;align-items:center;gap:8px;padding:9px 13px;border:1px solid rgba(6,182,212,.28);
      background:rgba(6,182,212,.08);color:#bcf7ff;border-radius:999px;font-size:12px}
    .ribbon-wrap{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin-top:24px}
    .ribbon-btn{position:relative;min-height:170px;border:1px solid var(--border);border-radius:24px;background:rgba(255,255,255,.045);
      color:#fff;cursor:pointer;overflow:hidden;transition:.28s;padding:30px 28px;text-align:left}
    .ribbon-btn:hover{transform:translateY(-6px);border-color:rgba(255,255,255,.22);box-shadow:0 24px 60px rgba(0,0,0,.24)}
    .ribbon-btn.customer{background:linear-gradient(145deg,rgba(37,99,235,.18),rgba(255,255,255,.035))}
    .ribbon-btn.business{background:linear-gradient(145deg,rgba(249,115,22,.18),rgba(255,255,255,.035))}
    .ribbon{position:absolute;top:18px;right:-42px;width:170px;padding:8px 0;transform:rotate(35deg);text-align:center;font-size:11px;font-weight:800}
    .customer .ribbon{background:var(--blue)} .business .ribbon{background:var(--orange);color:#111}

    .landing-content{position:relative;z-index:2;padding-left:78px}
    .ad-vertical-rail{position:absolute;left:0;top:0;bottom:0;width:70px;background:linear-gradient(180deg,#f97316,#ea580c);display:flex;align-items:center;justify-content:center;box-shadow:inset -8px 0 14px rgba(0,0,0,.28),8px 0 22px rgba(0,0,0,.24);border-right:1px solid rgba(255,255,255,.16);z-index:3}
    .ad-vertical-rail span{writing-mode:vertical-rl;transform:rotate(180deg);font-family:Manrope,sans-serif;font-weight:800;letter-spacing:.18em;color:#111;text-transform:uppercase;text-shadow:1px 1px 0 rgba(255,255,255,.25)}
    .ad-showcase{position:relative;min-height:190px;border:1px solid rgba(249,115,22,.38);border-radius:25px;background:linear-gradient(145deg,rgba(249,115,22,.22),rgba(255,255,255,.04));display:grid;grid-template-columns:180px 1fr;gap:24px;align-items:center;padding:28px 30px;text-align:left;overflow:hidden;cursor:pointer;transition:.28s;box-shadow:0 20px 45px rgba(0,0,0,.22),inset 0 1px 0 rgba(255,255,255,.08)}
    .ad-showcase:hover{transform:translateY(-6px);border-color:rgba(249,115,22,.72);box-shadow:0 28px 60px rgba(0,0,0,.3)}
    .ad-showcase:after{content:"";position:absolute;width:260px;height:260px;border-radius:50%;right:-100px;top:-130px;background:radial-gradient(circle,rgba(249,115,22,.35),transparent 68%)}
    .ad-card-stack{height:130px;position:relative;perspective:700px}
    .mini-ad{position:absolute;width:125px;height:92px;border-radius:15px;background:#111;border:2px solid #f97316;box-shadow:0 16px 26px rgba(0,0,0,.38);display:grid;place-items:center;font-family:Manrope,sans-serif;font-weight:800;color:#f97316}
    .mini-ad:nth-child(1){left:4px;top:24px;transform:rotateY(20deg) rotateZ(-8deg)}
    .mini-ad:nth-child(2){left:42px;top:8px;transform:rotateY(-12deg) rotateZ(5deg);background:#f97316;color:#111}
    .mini-ad:nth-child(3){left:26px;top:42px;transform:translateZ(18px);background:linear-gradient(145deg,#1c1c1c,#060606)}
    .ad-copy{position:relative;z-index:2;padding-top:48px}
    .ad-copy strong{display:block;font-family:Manrope,sans-serif;font-size:30px;margin-bottom:8px}
    .ad-copy span{color:var(--muted);line-height:1.65;display:block;max-width:520px}
    .ad-pill{position:absolute;top:22px;left:234px;padding:7px 11px;border-radius:999px;background:#f97316;color:#111;font-size:11px;font-weight:800;letter-spacing:.08em}
    .ribbon-btn strong{display:block;font-family:Manrope,sans-serif;font-size:26px;margin-bottom:9px}
    .ribbon-btn span{color:var(--muted);line-height:1.6;display:block;max-width:360px}
    .choice-icon{width:52px;height:52px;border-radius:17px;display:grid;place-items:center;margin-bottom:18px;background:rgba(255,255,255,.08);font-size:23px}
    .content-area{display:none;padding:96px 0 90px}.content-area.show{display:block}
    .wall-header{display:flex;justify-content:space-between;align-items:end;gap:20px;margin-bottom:22px}
    .wall-header h2{font-family:Manrope,sans-serif;font-size:clamp(24px,3.5vw,36px);letter-spacing:-.045em;line-height:1.05;margin:0 0 8px}
    .wall-header p{color:var(--muted);line-height:1.7;margin:0}
    .filters{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:20px}
    .filters input,.filters select{background:#0B1726;border:1px solid var(--border);color:#fff;padding:12px 14px;border-radius:12px;outline:0}
    .filters input{flex:1;min-width:250px}
    .wall{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
    .flip-card{perspective:1200px;min-height:455px}
    .flip-inner{position:relative;width:100%;height:455px;transition:transform .7s;transform-style:preserve-3d}
    .flip-card.flipped .flip-inner{transform:rotateY(180deg)}
    .market-card{position:absolute;inset:0;border:1px solid var(--border);border-radius:24px;overflow:hidden;display:flex;flex-direction:column;
      background:linear-gradient(145deg,rgba(255,255,255,.065),rgba(255,255,255,.025));backface-visibility:hidden;box-shadow:0 15px 35px rgba(0,0,0,.18)}
    .market-card.back{transform:rotateY(180deg);padding:18px;overflow:auto}
    .card-image{height:112px;position:relative;overflow:hidden;background:linear-gradient(135deg,var(--surface2),var(--blue))}
    .card-image img{width:100%;height:100%;object-fit:cover}
    .card-image:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent,rgba(7,17,31,.82))}
    .badge-row{position:absolute;left:12px;right:12px;top:12px;z-index:2;display:flex;justify-content:space-between;gap:8px}
    .badge{padding:6px 9px;border-radius:999px;background:rgba(7,17,31,.76);border:1px solid rgba(255,255,255,.12);font-size:10px;font-weight:700}
    .badge.customer{color:#9ec0ff}.badge.business{color:#ffc195}.badge.open{color:#8af6ae}
    .card-body{padding:18px;display:flex;flex-direction:column;gap:12px;flex:1}
    .card-body h3{font-size:19px;line-height:1.28;margin:0;font-family:Manrope,sans-serif}
    .card-body p{color:var(--muted);font-size:13px;line-height:1.6;margin:0}
    .meta{display:grid;grid-template-columns:1fr 1fr;gap:8px}
    .meta span{padding:9px;border-radius:11px;background:rgba(255,255,255,.04);font-size:11px;color:#dfe7f0}
    .card-actions{display:flex;gap:8px;margin-top:auto}.card-actions .btn{flex:1;padding:11px 9px;font-size:12px}
    .unlock-box{margin-top:auto;padding:12px;border-radius:14px;background:rgba(255,255,255,.04);border:1px solid var(--border)}
    .unlock-box input{width:100%;padding:11px;border-radius:10px;border:1px solid var(--border);background:#091421;color:#fff;margin:8px 0}
    .lock-title{font-weight:800}.lock-title span{font-size:20px;margin-right:6px}
    .bid-table{display:grid;gap:8px;margin-top:12px}
    .bid-row{display:grid;grid-template-columns:1.2fr .8fr .8fr auto;gap:8px;align-items:center;padding:10px;border-radius:12px;background:rgba(255,255,255,.045);border:1px solid var(--border);font-size:12px}
    .bid-row.header{font-weight:800;color:#b9c8d8;background:rgba(255,255,255,.07)}
    .expiry{font-size:11px;color:#ffd29f}

    .business-card{min-height:310px;position:relative;border-radius:24px;overflow:hidden;border:1px solid rgba(249,115,22,.30);background:linear-gradient(145deg,#18110d,#0b111c 52%,#111827);box-shadow:0 18px 48px rgba(0,0,0,.28);padding:20px}
    .business-card:before{content:"";position:absolute;left:-70px;top:-95px;width:230px;height:230px;border-radius:50%;background:radial-gradient(circle,rgba(249,115,22,.30),transparent 70%)}
    .business-card-top{position:relative;display:flex;align-items:center;gap:14px;padding-bottom:16px;border-bottom:1px solid var(--border)}
    .business-avatar{width:62px;height:62px;border-radius:19px;display:grid;place-items:center;font-family:Manrope,sans-serif;font-size:24px;font-weight:800;background:linear-gradient(145deg,#f97316,#111827);box-shadow:inset 3px 3px 7px rgba(255,255,255,.16),inset -5px -5px 9px rgba(0,0,0,.42)}
    .business-identity h3{margin:0 0 5px;font-size:20px}.business-identity span{font-size:12px;color:#fdba74}
    .verified-dot{margin-left:auto;padding:6px 9px;border-radius:999px;background:rgba(34,197,94,.10);border:1px solid rgba(34,197,94,.28);font-size:10px;color:#9ff3b9}
    .business-card-body{position:relative;padding-top:16px}.business-card-body p{color:var(--muted);font-size:13px;line-height:1.65;margin:0 0 15px}
    .business-details{display:grid;grid-template-columns:1fr 1fr;gap:9px;margin-bottom:16px}
    .business-details span{padding:10px;border-radius:12px;background:rgba(255,255,255,.045);font-size:11px;color:#e6edf5}
    .business-card-actions{display:flex;gap:9px;flex-wrap:wrap}.business-card-actions .btn{flex:1}

    .quick-tools{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-top:16px}
    .quick-tool{min-height:88px;border:1px solid var(--border);border-radius:20px;background:rgba(255,255,255,.045);color:#fff;padding:16px 18px;display:flex;align-items:center;gap:14px;text-align:left;transition:.25s}
    .quick-tool:hover{transform:translateY(-4px);border-color:rgba(255,255,255,.24);box-shadow:0 18px 38px rgba(0,0,0,.24)}
    .quick-tool.whatsapp{background:linear-gradient(145deg,rgba(34,197,94,.16),rgba(255,255,255,.035))}
    .quick-tool.instagram{background:linear-gradient(145deg,rgba(236,72,153,.15),rgba(124,58,237,.08))}
    .quick-icon{width:48px;height:48px;border-radius:15px;display:grid;place-items:center;background:rgba(255,255,255,.09);font-size:22px}
    .quick-tool strong{display:block;font-family:Manrope,sans-serif;font-size:16px}
    .quick-tool small{display:block;color:var(--muted);font-size:11px;margin-top:5px}
    .share-btn{background:rgba(255,255,255,.07)}
    .share-status{font-size:11px;color:#9ff3b9;margin-top:8px;min-height:16px}
    .floating-business-wrap{position:fixed;inset:0;z-index:350;display:none;align-items:center;justify-content:center;padding:20px;background:rgba(2,6,23,.82);backdrop-filter:blur(12px)}
    .floating-business-wrap.show{display:flex}
    .floating-stage{width:min(520px,100%);perspective:1400px;position:relative}
    .floating-card{transform:rotateX(5deg) rotateY(-7deg);animation:floatCard 4s ease-in-out infinite;box-shadow:0 45px 90px rgba(0,0,0,.5)}
    .floating-close{position:absolute;right:-8px;top:-52px;width:42px;height:42px;border:1px solid var(--border);border-radius:13px;background:#111827;color:#fff;font-size:22px;cursor:pointer}
    @keyframes floatCard{0%,100%{transform:translateY(0) rotateX(5deg) rotateY(-7deg)}50%{transform:translateY(-12px) rotateX(2deg) rotateY(5deg)}}
    .short-tool-result{display:flex;gap:8px;margin-top:10px}.short-tool-result input{flex:1}


    .location-notice{margin:0 0 14px;padding:11px 14px;border-radius:13px;border:1px solid var(--border);font-size:12px;color:#dce7f4;background:rgba(255,255,255,.04)}
    .location-notice.loading{border-color:rgba(249,115,22,.35);color:#ffd4b5}
    .location-notice.ready{border-color:rgba(34,197,94,.32);background:rgba(34,197,94,.08);color:#bdf7cc}
    .location-notice.warning{border-color:rgba(245,158,11,.35);background:rgba(245,158,11,.08);color:#ffe2a8}
    .bid-donut-button{width:100%;min-height:76px;border:1px solid rgba(249,115,22,.7);border-radius:18px;padding:9px 15px;display:flex;align-items:center;justify-content:center;gap:14px;cursor:pointer;color:#fff;background:linear-gradient(135deg,#f97316,#ff9b3d);box-shadow:0 14px 30px rgba(249,115,22,.24);transition:.22s}
    .bid-donut-button:hover{transform:translateY(-2px);box-shadow:0 18px 38px rgba(249,115,22,.34)}
    .bid-donut{--bid-progress:0deg;width:57px;height:57px;border-radius:50%;display:grid;place-items:center;flex:0 0 57px;background:conic-gradient(#fff var(--bid-progress),rgba(12,22,36,.28) 0);position:relative}
    .bid-donut:before{content:"";position:absolute;inset:7px;border-radius:50%;background:#111827}
    .bid-donut>span{position:relative;z-index:1;font-size:18px;font-weight:900;line-height:1}.bid-donut small{font-size:10px;color:#cbd5e1}
    .bid-donut-copy{text-align:left;display:grid;gap:3px}.bid-donut-copy strong{font-family:Manrope,sans-serif;font-size:18px}.bid-donut-copy small{font-size:11px;color:#fff}

    .bid-closed{width:100%;padding:12px;border-radius:13px;background:rgba(239,68,68,.09);border:1px solid rgba(239,68,68,.28);color:#ffc1c1;font-size:12px;text-align:center}

    .empty{padding:40px;border:1px dashed var(--border);border-radius:20px;color:var(--muted);text-align:center;grid-column:1/-1}
    .modal{position:fixed;inset:0;z-index:200;display:none;align-items:center;justify-content:center;padding:18px;background:rgba(0,0,0,.74);backdrop-filter:blur(9px)}
    .modal.show{display:flex}.modal-card{width:min(820px,100%);max-height:92vh;overflow:auto;border-radius:24px;border:1px solid var(--border);background:#0D1928;padding:24px;box-shadow:var(--shadow)}
    .modal-head{display:flex;justify-content:space-between;align-items:center;gap:14px}.modal-head h3{margin:0}.close{border:0;background:transparent;color:#fff;font-size:26px;cursor:pointer}
    .form-grid{display:grid;grid-template-columns:1fr 1fr;gap:13px;margin-top:18px}.field{display:flex;flex-direction:column;gap:7px}.field.full{grid-column:1/-1}
    .field label{font-size:12px;color:#dce5ef}.field input,.field textarea,.field select{width:100%;padding:13px 14px;border-radius:12px;border:1px solid var(--border);background:#091421;color:#fff}
    .field textarea{min-height:105px;resize:vertical}.notice{padding:13px 14px;border-radius:13px;font-size:12px;line-height:1.6}
    .notice.info{border:1px solid rgba(6,182,212,.25);background:rgba(6,182,212,.08);color:#bff7ff}
    .notice.success{border:1px solid rgba(34,197,94,.25);background:rgba(34,197,94,.08);color:#bff8cf}
    .notice.error{border:1px solid rgba(239,68,68,.28);background:rgba(239,68,68,.08);color:#ffc2c2}
    .moderation-status{display:none;margin-top:14px;padding:14px;border-radius:14px;line-height:1.6;font-size:13px}
    .admin-grid{display:grid;gap:10px;margin-top:16px}
    .admin-row{display:grid;grid-template-columns:auto 1fr 1fr 1fr;gap:10px;align-items:center;padding:12px;border:1px solid var(--border);border-radius:12px;background:rgba(255,255,255,.035);font-size:12px}
    footer{border-top:1px solid var(--border);padding:34px 0;color:var(--muted);text-align:center;font-size:12px}.hidden{display:none!important}
    .g58-site-footer{position:relative;border-top:0;margin-top:32px;padding:40px 0 26px;background:var(--surface)}
    .g58-site-footer::before{content:'';position:absolute;top:-9px;left:0;right:0;height:9px;background-image:linear-gradient(-45deg,var(--surface) 6px,transparent 0),linear-gradient(45deg,var(--surface) 6px,transparent 0);background-position:0 6px,0 6px;background-size:12px 12px;background-repeat:repeat-x;background-color:transparent}
    .g58-site-footer-badge{display:flex;justify-content:center;margin-bottom:16px}
    .g58-app-badge{display:inline-flex;align-items:center;gap:10px;padding:9px 18px;border-radius:11px;background:#0b0b0b;border:1px solid #3a3a3a;cursor:pointer;color:#fff;text-decoration:none;transition:.2s transform}
    .g58-app-badge:hover{transform:translateY(-1px);border-color:#5a5a5a}
    .g58-app-badge-icon{font-size:20px;color:var(--orange);flex-shrink:0}
    .g58-app-badge-text{display:flex;flex-direction:column;align-items:flex-start;line-height:1.2;text-align:left}
    .g58-app-badge-text small{font-size:9px;letter-spacing:.03em;color:#c9c9c9;text-transform:uppercase}
    .g58-app-badge-text strong{font-size:15px;font-weight:700;color:#fff}
    .auth-success-card{max-width:430px!important;text-align:center!important;padding:34px!important}
    .auth-success-icon{width:62px;height:62px;margin:0 auto 16px;border-radius:50%;display:grid;place-items:center;background:rgba(34,197,94,.14);border:1px solid rgba(34,197,94,.42);color:#4ade80;font-size:30px;font-weight:1000}
    .auth-success-card h3{margin:0 0 9px;color:#fff;font-size:24px}.auth-success-card p{margin:0 0 22px;color:#b9c5d4;line-height:1.65}.auth-success-card .btn{min-width:130px}
    @media(max-width:980px){.wall{grid-template-columns:repeat(2,minmax(0,1fr))}}
    @media(max-width:720px){.quick-tools{grid-template-columns:1fr}.floating-close{right:0;top:-48px}.landing-content{padding-left:0}.ad-vertical-rail{position:relative;width:100%;height:52px;bottom:auto;border-right:0;border-bottom:1px solid rgba(255,255,255,.16)}.ad-vertical-rail span{writing-mode:horizontal-tb;transform:none}.ad-showcase{grid-template-columns:1fr;text-align:center;padding:24px 18px}.ad-card-stack{width:180px;margin:auto}.ad-copy{padding-top:18px}.ad-pill{position:static;display:inline-flex;margin-bottom:12px}.nav{gap:8px}.brand-account-group{gap:7px}.header-account-controls{gap:4px}.header-account-btn{min-height:31px;padding:0 8px;font-size:9px}.header-user-name{max-width:76px;font-size:9px}.brand>div:last-child{display:none}.nav-actions{gap:5px;padding:5px}.nav-icon-btn{width:38px;height:38px;font-size:16px}.landing-card{padding:30px 20px}.ribbon-wrap{grid-template-columns:1fr}.wall-header{flex-direction:column;align-items:flex-start}.form-grid{grid-template-columns:1fr}.field.full{grid-column:auto}.content-area{padding-top:88px}.admin-row{grid-template-columns:auto 1fr}}
    @media(max-width:560px){.shell{padding:0 15px}.landing{padding-top:95px}.landing-card h1{font-size:44px}.wall{grid-template-columns:1fr}.filters input,.filters select,.filters .btn{width:100%;min-width:0}.bid-row{grid-template-columns:1fr}.bid-row.header{display:none}}

    /* V5.5 professional three-column landing layout */
    .landing>.shell{max-width:1540px;width:100%}
    .landing-grid{display:grid;grid-template-columns:180px minmax(0,980px) 230px;gap:18px;align-items:stretch;justify-content:center}
    .landing-card{width:100%;min-height:760px}
    .landing-content{padding-left:0}
    .ad-vertical-rail{display:none}
    .landing-side{border:1px solid var(--border);border-radius:25px;background:rgba(16,28,44,.78);backdrop-filter:blur(18px);box-shadow:var(--shadow);overflow:hidden;position:relative}
    .side-title{font-family:Manrope,sans-serif;font-size:13px;letter-spacing:.09em;text-transform:uppercase;padding:17px 14px;border-bottom:1px solid var(--border);color:#fff;display:flex;align-items:center;justify-content:space-between;gap:8px}
    .side-title small{font-family:Inter,sans-serif;font-size:9px;letter-spacing:0;color:var(--muted);text-transform:none}
    .recent-jobs{padding:12px;display:grid;gap:10px;max-height:720px;overflow:auto}
    .recent-job{border:1px solid rgba(249,115,22,.28);border-radius:15px;background:linear-gradient(145deg,rgba(249,115,22,.12),rgba(255,255,255,.035));padding:13px 11px;color:#fff;text-align:left;transition:.22s;position:relative;overflow:hidden}
    .recent-job:hover{transform:translateX(4px);border-color:rgba(249,115,22,.62);background:rgba(249,115,22,.16)}
    .recent-job strong{display:block;font-family:Manrope,sans-serif;font-size:12px;line-height:1.35;margin-bottom:7px}
    .recent-job span{display:block;color:var(--muted);font-size:9px;line-height:1.45}
    .recent-job .recent-category{color:#fdba74;font-size:9px;font-weight:700;margin-bottom:5px}
    .recent-job .recent-count{position:absolute;right:8px;top:8px;width:20px;height:20px;border-radius:50%;display:grid;place-items:center;background:#f97316;color:#111;font-size:9px;font-weight:800}
    .recent-empty{padding:22px 9px;text-align:center;color:var(--muted);font-size:11px;line-height:1.6}
    .landing-actions{padding:12px;display:grid;grid-template-rows:repeat(4,1fr);gap:12px;height:100%}
    .landing-action{min-height:150px;border:1px solid var(--border);border-radius:17px;background:rgba(255,255,255,.045);color:#fff;padding:17px;text-align:left;display:flex;flex-direction:column;justify-content:space-between;transition:.24s;position:relative;overflow:hidden}
    .landing-action:after{content:"";position:absolute;width:100px;height:100px;border-radius:50%;right:-45px;bottom:-50px;background:rgba(255,255,255,.08)}
    .landing-action:hover{transform:translateY(-4px) scale(1.01);border-color:rgba(255,255,255,.24);box-shadow:0 18px 38px rgba(0,0,0,.25)}
    .landing-action .action-icon{width:43px;height:43px;border-radius:13px;display:grid;place-items:center;background:rgba(255,255,255,.10);font-size:19px}
    .landing-action strong{display:block;font-family:Manrope,sans-serif;font-size:16px;line-height:1.2;margin-top:13px}
    .landing-action small{display:block;color:var(--muted);font-size:10px;line-height:1.5;margin-top:5px}
    .landing-action.jobs{background:linear-gradient(145deg,rgba(37,99,235,.22),rgba(255,255,255,.035))}
    .landing-action.businesses{background:linear-gradient(145deg,rgba(249,115,22,.22),rgba(255,255,255,.035))}
    .landing-action.whatsapp{background:linear-gradient(145deg,rgba(34,197,94,.20),rgba(255,255,255,.035))}
    .landing-action.instagram{background:linear-gradient(145deg,rgba(236,72,153,.18),rgba(124,58,237,.10))}
    .landing-card .ribbon-wrap,.landing-card .quick-tools{display:none}
    @media(max-width:1250px){
      .landing-grid{grid-template-columns:160px minmax(0,1fr) 205px}
      .landing-action{min-height:140px;padding:14px}
    }
    @media(max-width:980px){
      .landing-grid{grid-template-columns:1fr}
      .landing-side.left-side{order:2}.landing-card{order:1}.landing-side.right-side{order:3}
      .recent-jobs{grid-template-columns:repeat(3,1fr);max-height:none}
      .landing-actions{grid-template-columns:repeat(2,1fr);grid-template-rows:none}
      .landing-action{min-height:125px}
    }
    @media(max-width:650px){
      .recent-jobs,.landing-actions{grid-template-columns:1fr}
      .landing-action{min-height:112px}
      .landing-card{min-height:auto}
    }

  
    /* V5.6 landing refinements */
    .landing-grid{grid-template-columns:250px minmax(0,1080px)!important;gap:22px!important}
    .landing-side.right-side{display:none!important}
    .landing-side.left-side{min-height:780px}
    .recent-jobs{padding:14px;gap:14px;max-height:720px}
    .recent-job{padding:16px 14px;min-height:118px;border-radius:18px}
    .recent-job strong{font-size:14px;margin-bottom:8px}
    .recent-job span{font-size:10px}
    .recent-job .recent-category{font-size:10px}
    .recent-job .recent-count{width:24px;height:24px;font-size:10px}
    .landing-card{min-height:780px;padding-top:24px!important}
    .catalogue-ribbons{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin-bottom:20px}
    .catalogue-btn{position:relative;min-height:72px;border:1px solid rgba(249,115,22,.35);border-radius:14px;background:linear-gradient(145deg,rgba(249,115,22,.16),rgba(255,255,255,.035));color:#fff;padding:13px 14px 13px 18px;text-align:left;overflow:hidden;transition:.24s;box-shadow:0 10px 24px rgba(0,0,0,.18)}
    .catalogue-btn:before{content:"";position:absolute;left:0;top:0;bottom:0;width:6px;background:#f97316}
    .catalogue-btn:after{content:"";position:absolute;right:-24px;top:-24px;width:70px;height:70px;border-radius:50%;background:rgba(249,115,22,.16)}
    .catalogue-btn:hover{transform:translateY(-4px);border-color:#f97316;box-shadow:0 18px 36px rgba(0,0,0,.24)}
    .catalogue-btn strong{display:block;font-family:Manrope,sans-serif;font-size:14px;line-height:1.15}
    .catalogue-btn small{display:block;color:var(--muted);font-size:9px;margin-top:5px}
    .catalogue-btn.jobs{background:linear-gradient(145deg,rgba(37,99,235,.19),rgba(255,255,255,.035))}
    .catalogue-btn.business{background:linear-gradient(145deg,rgba(249,115,22,.20),rgba(255,255,255,.035))}
    .catalogue-btn.digital-menu-ribbon{background:linear-gradient(145deg,rgba(245,158,11,.20),rgba(255,255,255,.035))}
    .catalogue-btn.digit58-ribbon{background:linear-gradient(145deg,rgba(127,255,212,.20),rgba(255,255,255,.035))}
    .free-ad-pop{position:relative;margin-bottom:26px;border:2px solid #f97316;border-radius:24px;background:linear-gradient(145deg,rgba(249,115,22,.18),rgba(255,255,255,.035));padding:24px 26px 24px 150px;min-height:170px;color:#fff;text-align:left;overflow:hidden;box-shadow:0 24px 55px rgba(249,115,22,.18);transition:.25s}
    .free-ad-pop:hover{transform:translateY(-5px) scale(1.01);box-shadow:0 32px 70px rgba(249,115,22,.28)}
    .free-ad-pop:before{content:"FREE";position:absolute;right:18px;top:16px;background:#f97316;color:#111;border-radius:999px;padding:7px 12px;font-size:10px;font-weight:900;letter-spacing:.08em}
    .free-ad-pop .ad-visual{position:absolute;left:24px;top:50%;transform:translateY(-50%);width:96px;height:96px}
    .free-ad-pop .ad-visual span{position:absolute;inset:0;border:2px solid #f97316;border-radius:18px;background:#111;display:grid;place-items:center;color:#f97316;font:800 18px Manrope}
    .free-ad-pop .ad-visual span:nth-child(1){transform:translate(-14px,-12px) rotate(-5deg);background:#f97316;color:#111}
    .free-ad-pop .ad-visual span:nth-child(2){transform:translate(-7px,-5px) rotate(-2deg)}
    .free-ad-pop .ad-visual span:nth-child(3){transform:none}
    .free-ad-pop .ad-kicker{display:inline-block;color:#f97316;font-size:11px;font-weight:900;letter-spacing:.12em;text-transform:uppercase;margin-bottom:7px}
    .free-ad-pop strong{display:block;font-family:Manrope,sans-serif;font-size:30px;line-height:1.05;color:#f97316;margin-bottom:9px}
    .free-ad-pop p{margin:0;color:#c8d1dc;font-size:13px;line-height:1.55;max-width:720px}
    .free-ad-pop .ad-cta{display:inline-flex;margin-top:13px;padding:10px 14px;border-radius:12px;background:#f97316;color:#111;font-weight:900;font-size:11px}
    .landing-card h1{margin-top:22px}
    @media(max-width:1100px){
      .landing-grid{grid-template-columns:210px minmax(0,1fr)!important}
      .catalogue-ribbons{grid-template-columns:repeat(2,1fr)}
    }
    @media(max-width:800px){
      .landing-grid{grid-template-columns:1fr!important}
      .landing-side.left-side{order:2;min-height:auto}
      .landing-card{order:1}
      .recent-jobs{grid-template-columns:repeat(2,1fr);max-height:none}
    }
    @media(max-width:600px){
      .catalogue-ribbons,.recent-jobs{grid-template-columns:1fr}
      .free-ad-pop{padding:145px 20px 22px;min-height:310px}
      .free-ad-pop .ad-visual{left:50%;top:30px;transform:translateX(-50%)}
      .free-ad-pop strong{font-size:25px}
    }


    .catalogue-ribbons{
      display:flex!important;
      gap:0!important;
      align-items:flex-end;
      margin:0 auto 22px;
      padding:0 10px;
      border-bottom:6px solid #f97316;
      position:relative;
      max-width:940px
    }
    .catalogue-btn{
      flex:1;
      min-height:58px!important;
      border:0!important;
      border-radius:18px 18px 0 0!important;
      background:linear-gradient(180deg,#fff,#ececec)!important;
      color:#2b2b2b!important;
      padding:12px 16px 10px!important;
      text-align:center!important;
      box-shadow:inset 0 1px 0 rgba(255,255,255,.9),0 -2px 7px rgba(0,0,0,.16)!important;
      transform:skewX(-10deg);
      position:relative;
      z-index:1
    }
    .catalogue-btn strong,.catalogue-btn small{transform:skewX(10deg)}
    .catalogue-btn strong{font-size:13px!important}
    .catalogue-btn small{font-size:8px!important;color:#777!important}
    .catalogue-btn.jobs{
      background:linear-gradient(180deg,#ffbd39,#f59e0b)!important;
      color:#111!important;
      z-index:4
    }
    .catalogue-btn.business{z-index:3}
    .catalogue-btn.digital-menu-ribbon{z-index:2}
    .catalogue-btn.digit58-ribbon{
      background:linear-gradient(180deg,#a6ffe4,#7fffd4)!important;
      color:#04231a!important;
      z-index:1
    }
    .catalogue-btn:hover{
      transform:skewX(-10deg) translateY(-5px)!important;
      filter:brightness(1.04)
    }
    .catalogue-btn:before,.catalogue-btn:after{display:none!important}
    @media(max-width:700px){
      .catalogue-ribbons{display:grid!important;grid-template-columns:1fr 1fr;border-bottom:0;gap:8px!important}
      .catalogue-btn{transform:none;border-radius:14px!important;border-bottom:4px solid #f97316!important}
      .catalogue-btn strong,.catalogue-btn small{transform:none}
      .catalogue-btn:hover{transform:translateY(-3px)!important}
    }


    .gravity-brand{gap:13px!important}
    .gravity-wordmark{display:flex;flex-direction:column;line-height:1}
    .gravity-main{
      font-family:Manrope,sans-serif;
      font-size:24px;
      font-weight:900;
      letter-spacing:.045em;
      color:#fff;
      text-shadow:0 4px 16px rgba(0,0,0,.35)
    }
    .gravity-main span{
      color:#f97316;
      font-size:17px;
      margin-left:3px;
      letter-spacing:0
    }
    .gravity-wordmark small{
      margin-top:6px;
      color:var(--muted);
      font-size:9px;
      letter-spacing:.17em;
      font-weight:700
    }
    @media(max-width:560px){
      .gravity-main{font-size:18px}
      .gravity-main span{font-size:14px}
      .gravity-wordmark small{font-size:7px;letter-spacing:.11em}
    }


/* Contextual Browse-page guide popups */
.wall-header-actions{display:flex;align-items:center;justify-content:flex-end;gap:12px;flex-wrap:wrap}
.how-popup-btn{background:rgba(255,122,0,.12);border-color:rgba(255,122,0,.48);color:#ff9b3d;white-space:nowrap}
.how-popup-btn:hover{background:#ff7a00;color:#07111f;border-color:#ff7a00}
.guide-popup-modal{padding:22px}
.guide-popup-card{width:min(920px,96vw);max-height:90vh;overflow-y:auto}
.guide-popup-kicker{display:block;color:#ff8a1f;font-size:.72rem;font-weight:800;letter-spacing:.12em;text-transform:uppercase;margin-bottom:4px}
.browse-guide{display:none;padding:4px 2px 2px}
.browse-guide.active{display:block}
.guide-popup-intro{color:var(--muted);margin:0 0 18px;line-height:1.65}
.popup-visual-steps{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
.popup-visual-step{position:relative;display:grid;grid-template-columns:92px 1fr;gap:14px;align-items:center;padding:16px;border:1px solid rgba(255,255,255,.1);border-radius:18px;background:rgba(255,255,255,.035)}
.popup-visual-step:last-child:nth-child(odd){grid-column:1/-1}
.popup-visual-step img{width:92px;height:76px;object-fit:contain;border-radius:12px;background:rgba(255,122,0,.06)}
.popup-visual-step .step-number{position:absolute;top:9px;right:11px;color:rgba(255,138,31,.7);font:800 .72rem Manrope,sans-serif}
.popup-visual-step h4{margin:0 0 6px;font:800 1rem Manrope,sans-serif;color:var(--text)}
.popup-visual-step p{margin:0;color:var(--muted);font-size:.86rem;line-height:1.55}
.guide-popup-card .flow-note{margin-top:16px}
.guide-popup-card .modal-actions{margin-top:18px}
@media(max-width:760px){
  .wall-header-actions{width:100%;justify-content:flex-start}
  .how-popup-btn{width:100%}
  .popup-visual-steps{grid-template-columns:1fr}
  .popup-visual-step:last-child:nth-child(odd){grid-column:auto}
  .popup-visual-step{grid-template-columns:72px 1fr;padding:14px}
  .popup-visual-step img{width:72px;height:64px}
  .guide-popup-modal{padding:10px}
  .guide-popup-card{width:100%;max-height:94vh}
}

/* Final5 business contact and sharing enhancements */
.copyable-number{cursor:pointer;transition:transform .18s ease,border-color .18s ease}.copyable-number:hover{transform:translateY(-1px);border-color:rgba(255,126,28,.55)}
.business-card-actions{flex-wrap:wrap}.business-card-actions .btn{flex:1 1 150px}
.success-actions{flex-wrap:wrap}.success-actions .btn{flex:1 1 150px}
/* Final 5.1: linked customer requirement popup */
.customer-floating-stage{width:min(760px,100%)}
#floatingCustomerCard .flip-card{width:100%;height:auto;min-height:680px;perspective:1400px}
#floatingCustomerCard .flip-inner{min-height:680px}
#floatingCustomerCard .market-card{width:100%;min-height:680px}
#floatingCustomerCard .card-image{height:250px}
#floatingCustomerCard .floating-customer-card{animation:floatCard 4s ease-in-out infinite;box-shadow:0 45px 90px rgba(0,0,0,.5)}
@media(max-width:700px){
  #floatingCustomerCard .flip-card,#floatingCustomerCard .flip-inner,#floatingCustomerCard .market-card{min-height:760px}
  #floatingCustomerCard .card-image{height:210px}
  .customer-floating-stage{width:100%}
}



    .field-help{display:block;margin-top:7px;color:var(--muted);font-size:11px;line-height:1.45}
    .bid-success-card{max-width:520px;text-align:center}
    .bid-success-card .modal-head{text-align:left}
    .bid-success-icon{width:76px;height:76px;border-radius:50%;margin:12px auto 16px;display:grid;place-items:center;background:rgba(34,197,94,.14);border:2px solid rgba(34,197,94,.55);color:#76f29a;font-size:38px;font-weight:900}
    .bid-success-card h2{margin:0 0 8px;font-family:Manrope,sans-serif;font-size:24px}
    .bid-success-card>p{margin:0 0 16px;color:#dce7f4}
    .bid-success-note{margin:0 0 20px;padding:15px;border-radius:15px;border:1px solid rgba(249,115,22,.34);background:rgba(249,115,22,.08);color:#ffd7bd;line-height:1.55;font-size:13px}

.state-change-chip{cursor:pointer}
.state-district-filter{display:flex;align-items:center;gap:10px;margin:0 0 14px;padding:12px 14px;border:1px solid var(--border);border-radius:14px;background:rgba(255,255,255,.035)}
.state-district-filter label{font-size:12px;font-weight:800;white-space:nowrap}
.state-district-filter select,.state-selection-card select{width:100%;border:1px solid var(--border);border-radius:12px;background:#0b1422;color:#fff;padding:12px}
.state-selection-modal{z-index:5000}
.state-selection-card{max-width:520px}
.state-selection-card p{color:var(--muted);line-height:1.55}
.state-selection-error{min-height:22px;color:#ff9d9d;font-size:12px;margin:4px 0 8px}
@media(max-width:640px){.state-district-filter{align-items:stretch;flex-direction:column}.state-district-filter label{white-space:normal}}

/* FINAL 5.9 FIXED — complete customer bid card */
.flip-card{
  min-height:650px;
  height:650px;
}
.flip-inner{
  height:650px;
}
.market-card.front{
  overflow-y:auto;
  overflow-x:hidden;
  scrollbar-width:thin;
}
.market-card.front .card-body{
  min-height:0;
  padding-bottom:20px;
}
.card-actions{
  margin-top:4px;
  align-items:stretch;
}
.card-actions .bid-donut-button{
  flex:2.4 1 220px;
}
.card-actions .btn{
  min-height:76px;
  display:flex;
  align-items:center;
  justify-content:center;
  text-align:center;
  white-space:normal;
}
.unlock-box{
  margin-top:14px;
  flex:0 0 auto;
}
.unlock-box .btn{
  min-height:46px;
  font-weight:800;
}
.bid-lock-warning{
  padding:12px 14px;
  border-radius:13px;
  border:1px solid rgba(249,115,22,.35);
  background:rgba(249,115,22,.09);
  color:#ffd0ae;
  font-size:12px;
  line-height:1.55;
}
.locked-bid-label{
  display:block;
  margin-top:4px;
  color:#9fb0c4;
  font-size:9px;
  font-weight:700;
}
.bid-row>span:first-child{
  min-width:0;
}
@media(max-width:1100px){
  .flip-card,.flip-inner{height:680px;min-height:680px}
}
@media(max-width:720px){
  .flip-card,.flip-inner{height:720px;min-height:720px}
  .card-actions{display:grid;grid-template-columns:1fr 1fr}
  .card-actions .bid-donut-button{grid-column:1/-1}
  .card-actions .btn{min-height:52px}
  .meta{grid-template-columns:1fr}
}

.bid-owner-note{
  margin:12px 0 2px;
  padding:11px 13px;
  border-radius:12px;
  border:1px solid rgba(6,182,212,.28);
  background:rgba(6,182,212,.08);
  color:#bfeefa;
  font-size:11px;
  line-height:1.55;
}
.bid-owner-actions{
  display:flex;
  gap:6px;
  align-items:center;
}
.bid-owner-actions .btn{
  min-width:68px;
  padding:9px 10px;
  font-size:10px;
}
@media(max-width:720px){
  .bid-row{
    grid-template-columns:1fr 1fr;
  }
  .bid-row.header{
    display:none;
  }
  .bid-owner-actions{
    grid-column:1/-1;
  }
  .bid-owner-actions .btn{
    flex:1;
  }
}

.business-owner-box{
  margin-top:16px;
  padding:13px;
  border-radius:14px;
  border:1px solid rgba(249,115,22,.28);
  background:rgba(249,115,22,.07);
}
.business-owner-title{
  margin-bottom:9px;
  font-size:12px;
  font-weight:900;
  color:#ffd0ae;
}
.business-owner-box input{
  width:100%;
  margin-bottom:9px;
  padding:11px 12px;
  border-radius:11px;
  border:1px solid var(--border);
  background:#091421;
  color:#fff;
}
.business-owner-actions{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:8px;
  margin-top:9px;
}
.business-owner-actions.hidden{
  display:none;
}
.business-edit-card{
  max-width:900px;
}

.business-national-toggle{
  margin-bottom:14px;
  padding:12px 14px;
  border:1px solid rgba(34,197,94,.28);
  border-radius:14px;
  background:rgba(34,197,94,.07);
}
.business-national-toggle.hidden{display:none}
.checkbox-row{
  display:flex;
  align-items:flex-start;
  gap:10px;
  cursor:pointer;
}
.checkbox-row input{
  width:18px!important;
  height:18px;
  margin-top:2px;
  accent-color:#22c55e;
}
.checkbox-row span{
  display:grid;
  gap:3px;
}
.checkbox-row small{
  color:var(--muted);
  font-size:10px;
  line-height:1.4;
}
.checkbox-row.compact{
  align-items:center;
}
.national-card-option{
  padding:11px 13px;
  border:1px solid rgba(34,197,94,.25);
  border-radius:13px;
  background:rgba(34,197,94,.06);
}
.qr-business-modal-card{
  max-width:480px;
}
.qr-business-content{
  display:grid;
  justify-items:center;
  gap:14px;
  margin-top:18px;
  text-align:center;
}
.qr-business-content img{
  width:min(280px,80vw);
  aspect-ratio:1;
  border-radius:16px;
  padding:10px;
  background:#fff;
}
.qr-business-content p{
  margin:0;
  color:var(--muted);
  line-height:1.55;
}
.qr-business-content input{
  width:100%;
  padding:12px;
  border:1px solid var(--border);
  border-radius:11px;
  background:#091421;
  color:#fff;
}
.qr-business-actions{
  width:100%;
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:9px;
}
@media(max-width:640px){
}

/* Landing promo cards — side by side */
.promo-split{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:18px;
  width:100%;
  margin-top:18px;
}
.promo-split-card{
  min-width:0;
  min-height:210px;
  display:grid;
  grid-template-columns:92px minmax(0,1fr);
  align-items:center;
  gap:18px;
  padding:24px;
  text-align:left;
}
.promo-split-card .promo-mini-icon{
  width:86px;
  height:86px;
  border-radius:24px;
  display:grid;
  place-items:center;
  flex:none;
  font-family:Manrope,sans-serif;
  font-size:18px;
  font-weight:900;
  letter-spacing:.04em;
  background:linear-gradient(145deg,#f97316,#111827);
  box-shadow:
    inset 3px 3px 8px rgba(255,255,255,.18),
    inset -6px -6px 12px rgba(0,0,0,.42),
    0 14px 28px rgba(249,115,22,.20);
}
.promo-split-copy{
  min-width:0;
  display:grid;
  gap:8px;
}
.promo-split-card strong{
  font-size:clamp(21px,2vw,30px);
  line-height:1.12;
}
.promo-split-card p{
  max-width:38ch;
  margin:0;
  font-size:13px;
  line-height:1.5;
}
.promo-split-card .ad-cta{
  width:max-content;
  margin-top:4px;
}
.business-promo-card{
  border-color:rgba(6,182,212,.30);
  background:
    radial-gradient(circle at 15% 20%,rgba(6,182,212,.16),transparent 34%),
    linear-gradient(145deg,rgba(255,255,255,.055),rgba(255,255,255,.02));
}
.business-promo-card .promo-mini-icon{
  background:linear-gradient(145deg,#06b6d4,#111827);
  box-shadow:
    inset 3px 3px 8px rgba(255,255,255,.18),
    inset -6px -6px 12px rgba(0,0,0,.42),
    0 14px 28px rgba(6,182,212,.18);
}
@media(max-width:980px){
  .promo-split-card{
    grid-template-columns:72px minmax(0,1fr);
    min-height:190px;
    padding:20px;
  }
  .promo-split-card .promo-mini-icon{
    width:68px;
    height:68px;
    border-radius:20px;
    font-size:14px;
  }
}
@media(max-width:760px){
  .promo-split{
    grid-template-columns:1fr;
  }
}

.qr-front-modal{z-index:10050!important}
.qr-front-modal .modal-card{position:relative;z-index:10051}
.floating-business-wrap.qr-behind-hidden{opacity:0;visibility:hidden;pointer-events:none}
body.qr-modal-open{overflow:hidden}
.qr-permanent-note{width:100%;padding:11px 13px;border-radius:12px;border:1px solid rgba(34,197,94,.28);background:rgba(34,197,94,.08);color:#bff3cf;font-size:11px;line-height:1.5}
.qr-business-content p strong{color:#fff}

.seo-link-strip{width:min(1180px,calc(100% - 32px));margin:26px auto 0;padding:16px;display:flex;flex-wrap:wrap;gap:10px;border:1px solid var(--border);border-radius:16px;background:rgba(255,255,255,.03)}
.seo-link-strip a{color:#cbd5e1;text-decoration:none;font-size:11px;padding:8px 11px;border-radius:10px;background:rgba(255,255,255,.045)}
.seo-link-strip a:hover{color:#fff;background:rgba(249,115,22,.14)}


/* GRAVITY58 POS navigation promotion */
.nav-pos-wrap{
  position:relative;
  display:inline-flex;
  align-items:center;
  justify-content:center;
}
.nav-icon-btn.pos-nav-btn{
  color:#101010;
  background:linear-gradient(145deg,#ff9a3d,#f97316);
  border-color:rgba(255,154,61,.75);
  box-shadow:0 12px 28px rgba(249,115,22,.28);
}
.nav-icon-btn.pos-nav-btn:hover{
  transform:translateY(-2px);
  box-shadow:0 16px 34px rgba(249,115,22,.38);
}
.pos-free-callout{
  position:absolute;
  top:calc(100% + 10px);
  left:50%;
  transform:translateX(-50%);
  z-index:100;
  display:flex;
  flex-direction:column;
  align-items:center;
  pointer-events:none;
  color:#ff8a2a;
  font-family:Inter,system-ui,sans-serif;
  font-weight:900;
  text-shadow:0 4px 16px rgba(0,0,0,.65);
  animation:posCalloutFloat 1.4s ease-in-out infinite;
}
.pos-free-arrow{
  font-size:28px;
  line-height:.75;
  transform:rotate(180deg);
}
.pos-free-text{
  margin-top:4px;
  padding:4px 9px;
  border-radius:999px;
  color:#fff;
  background:#f97316;
  font-size:10px;
  line-height:1;
  letter-spacing:.08em;
  box-shadow:0 8px 20px rgba(249,115,22,.38);
}
@keyframes posCalloutFloat{
  0%,100%{transform:translate(-50%,0)}
  50%{transform:translate(-50%,6px)}
}
@media(max-width:720px){
  .pos-free-callout{top:calc(100% + 7px)}
  .pos-free-arrow{font-size:23px}
  .pos-free-text{font-size:9px;padding:4px 7px}
}


/* Secure Free POS landing promotion */
.pos-free-text{white-space:nowrap;padding-left:8px!important;padding-right:8px!important}
.promo-split{grid-template-columns:repeat(3,minmax(0,1fr))!important}
.promo-split-card{text-decoration:none}
.pos-promo-card{
  border-color:rgba(34,197,94,.72)!important;
  background:linear-gradient(145deg,rgba(34,197,94,.16),rgba(15,28,45,.88))!important;
  box-shadow:0 20px 46px rgba(34,197,94,.10)!important;
}
.pos-promo-card:before{content:"FREE POS"!important;background:#22c55e!important;color:#06170d!important}
.pos-promo-card .promo-mini-icon{color:#b9ffd0!important;background:linear-gradient(145deg,rgba(34,197,94,.35),rgba(34,197,94,.12))!important;border-color:rgba(74,222,128,.55)!important}
.pos-promo-card .ad-kicker,.pos-promo-card strong{color:#63e88d!important}
.pos-promo-card .ad-cta{background:#22c55e!important;color:#06170d!important}
.digit58-promo-card{
  border-color:rgba(127,255,212,.55)!important;
  background:linear-gradient(145deg,rgba(127,255,212,.18),rgba(15,28,45,.88))!important;
  box-shadow:0 20px 46px rgba(127,255,212,.12)!important;
}
.digit58-promo-card:before{content:"PREMIUM"!important;background:#7fffd4!important;color:#04231a!important}
.digit58-promo-card .promo-mini-icon{
  background:linear-gradient(145deg,#7fffd4,#111827)!important;
  box-shadow:inset 3px 3px 8px rgba(255,255,255,.18),inset -6px -6px 12px rgba(0,0,0,.42),0 14px 28px rgba(127,255,212,.22)!important;
}
.digital-menu-promo-card{
  border-color:rgba(245,158,11,.55)!important;
  background:linear-gradient(145deg,rgba(245,158,11,.18),rgba(15,28,45,.88))!important;
  box-shadow:0 20px 46px rgba(245,158,11,.12)!important;
}
.digital-menu-promo-card .promo-mini-icon{
  background:linear-gradient(145deg,#f59e0b,#111827)!important;
  box-shadow:inset 3px 3px 8px rgba(255,255,255,.18),inset -6px -6px 12px rgba(0,0,0,.42),0 14px 28px rgba(245,158,11,.22)!important;
}
.pos-trust-panel{
  margin:18px 0 6px;padding:18px 20px;display:grid;grid-template-columns:auto 1fr auto;
  align-items:center;gap:16px;border:1px solid rgba(34,197,94,.28);border-radius:18px;
  background:linear-gradient(145deg,rgba(34,197,94,.09),rgba(255,255,255,.025));text-align:left
}
.pos-trust-icon{width:48px;height:48px;border-radius:15px;display:grid;place-items:center;color:#06200e;background:#4ade80;font-size:23px;font-weight:950}
.pos-trust-panel strong{display:block;color:#fff;font:800 16px Manrope,sans-serif;margin-bottom:5px}
.pos-trust-panel p{margin:0!important;max-width:none!important;color:#aebccc!important;font-size:12px!important;line-height:1.55!important}
.pos-trust-button{min-height:44px;padding:0 16px;display:inline-flex;align-items:center;justify-content:center;border-radius:12px;background:linear-gradient(135deg,#4ade80,#22c55e);color:#06170d;text-decoration:none;font-size:11px;font-weight:950;white-space:nowrap}
@media(max-width:1100px){.promo-split{grid-template-columns:1fr!important}}
@media(max-width:720px){.pos-trust-panel{grid-template-columns:auto 1fr}.pos-trust-button{grid-column:1/-1;width:100%}.pos-free-text{font-size:8px!important;padding:4px 6px!important}}


/* Final GRAVITY58 navigation */
.nav-actions{
  display:flex;
  align-items:center;
  gap:10px;
}
.nav-icon-btn{
  position:relative;
  text-decoration:none;
}
.nav-letter-icon{
  font-size:20px;
  font-weight:950;
  line-height:1;
}
.nav-pos-wrap{
  position:relative;
  display:inline-flex;
  align-items:center;
}
.pos-free-callout{
  top:calc(100% + 10px)!important;
  left:50%!important;
}
.pos-free-arrow{
  transform:none!important;
  font-size:30px!important;
}
.pos-free-text{
  white-space:nowrap!important;
  min-width:max-content;
}

.pos-trust-panel{display:none!important}


/* Requested final navigation and floating Post Ad */
.nav-actions{
  display:flex;
  align-items:center;
  gap:10px;
  padding:7px;
  border:1px solid rgba(255,255,255,.10);
  border-radius:22px;
  background:rgba(255,255,255,.035);
  box-shadow:0 16px 38px rgba(0,0,0,.28);
  backdrop-filter:blur(18px);
}
.nav-icon-btn{
  position:relative;
  width:52px;
  height:52px;
  display:grid;
  place-items:center;
  border:1px solid rgba(255,255,255,.12);
  border-radius:15px;
  color:#fff;
  background:rgba(255,255,255,.045);
  text-decoration:none;
  cursor:pointer;
  transition:.2s ease;
}
.nav-icon-btn:hover{transform:translateY(-2px);background:rgba(255,255,255,.08)}
.nav-symbol{font:900 19px/1 Inter,system-ui,sans-serif}
.nav-icon-btn.pos-nav-btn{
  color:#111;
  background:linear-gradient(145deg,#ff9a3d,#f97316);
  border-color:rgba(255,154,61,.78);
}
.nav-icon-btn.primary{
  color:#111;
  background:linear-gradient(145deg,#ff9a3d,#ff6a00);
  border-color:rgba(255,154,61,.8);
  box-shadow:0 12px 26px rgba(249,115,22,.25);
}
.nav-tooltip{
  position:absolute;
  left:50%;
  top:calc(100% + 8px);
  transform:translateX(-50%);
  min-width:max-content;
  padding:5px 8px;
  border-radius:8px;
  color:#fff;
  background:#0b1321;
  border:1px solid rgba(255,255,255,.10);
  font-size:9px;
  font-weight:800;
  opacity:0;
  pointer-events:none;
  transition:.18s;
  z-index:100;
}
.nav-icon-btn:hover .nav-tooltip{opacity:1}

50%{transform:scale(1.08)}}
@media(max-width:720px){
  .nav-actions{gap:7px;padding:6px;border-radius:18px}
  .nav-icon-btn{width:44px;height:44px;border-radius:13px}
  .nav-symbol{font-size:16px}
}


/* Supporting text for Business Card and Secure Billing cards */
.promo-white-text{
  margin:10px 0 0!important;
  color:#ffffff!important;
  font-size:14px!important;
  line-height:1.45!important;
  font-weight:650!important;
  opacity:.96;
}


/* Requested: bold white supporting text in the Post Ad card only */
.customer-promo-card .promo-split-copy p{
  color:#ffffff!important;
  font-weight:800!important;
}


/* Premium trust and customer-rating experience */
.premium-trust-strip{
  display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin:18px 0 26px;
}
.premium-trust-strip>div{
  min-height:86px;padding:14px;border:1px solid rgba(255,255,255,.11);border-radius:16px;
  background:linear-gradient(145deg,rgba(255,255,255,.07),rgba(255,255,255,.025));
  box-shadow:0 12px 30px rgba(0,0,0,.16);display:grid;grid-template-columns:auto 1fr;column-gap:10px;align-content:center;
}
.premium-trust-strip>div>span{
  grid-row:1/3;width:35px;height:35px;border-radius:11px;display:grid;place-items:center;
  background:linear-gradient(145deg,#ff9d46,#f97316);color:#111;font-weight:950;
}
.premium-trust-strip strong{color:#fff;font-size:12px}
.premium-trust-strip small{color:#aeb9c8;font-size:10px;line-height:1.4;margin-top:3px}

.business-rating-bar{padding:0 18px;margin-top:-2px}
.business-rating-bar>button{
  width:100%;border:1px solid rgba(251,191,36,.25);border-radius:14px;padding:10px 12px;
  display:flex;align-items:center;gap:8px;background:rgba(251,191,36,.07);color:#fff;cursor:pointer;text-align:left;
}
.rating-stars{display:inline-flex;gap:1px;white-space:nowrap}
.rating-stars span{color:#465263;font-size:16px;line-height:1}
.rating-stars span.filled{color:#fbbf24;text-shadow:0 0 10px rgba(251,191,36,.25)}
.business-rating-bar strong{font-size:14px;color:#fff}
.business-rating-bar small{font-size:10px;color:#aeb9c8}
.rate-now-label{margin-left:auto;font-size:10px;font-weight:900;color:#ffc567;text-transform:uppercase;letter-spacing:.06em}
.rating-btn{border-color:rgba(251,191,36,.35)!important;color:#ffd878!important;background:rgba(251,191,36,.08)!important}

.rating-modal-card{max-width:720px!important;text-align:left!important;max-height:min(90vh,850px);overflow:auto}
.rating-summary-large{
  display:flex;align-items:center;justify-content:center;gap:10px;padding:15px;margin:4px 0 14px;
  border:1px solid rgba(251,191,36,.24);border-radius:16px;background:rgba(251,191,36,.07)
}
.rating-summary-large .rating-stars span{font-size:25px}
.rating-summary-large strong{font-size:24px;color:#fff}
.rating-summary-large small{color:#b6c0cf;font-size:11px}
.rating-form-box{padding:15px;border:1px solid rgba(255,255,255,.10);border-radius:17px;background:rgba(255,255,255,.035)}
.rating-form-box>label,.rating-fields label{display:block;margin-bottom:7px;color:#dce5ef;font-size:11px;font-weight:800}
.rating-input-stars{display:flex;gap:5px;margin-bottom:14px}
.rating-input-stars button{
  width:43px;height:43px;border:1px solid rgba(255,255,255,.13);border-radius:12px;
  background:#111b29;color:#475465;font-size:26px;cursor:pointer;transition:.16s;
}
.rating-input-stars button:hover,.rating-input-stars button.selected{
  color:#fbbf24;border-color:rgba(251,191,36,.55);background:rgba(251,191,36,.10);transform:translateY(-1px)
}
.rating-fields{display:grid;grid-template-columns:1fr 1.6fr;gap:10px}
.rating-fields textarea{min-height:92px;resize:vertical}
.rating-privacy-note{margin:11px 0;color:#8fa0b3;font-size:10px;line-height:1.55}
.rating-form-actions{display:flex;gap:9px;flex-wrap:wrap}
.reviews-title{margin:18px 0 9px;color:#fff;font-weight:900;font-size:13px}
.rating-review-list{display:grid;gap:9px}
.customer-review{padding:13px;border:1px solid rgba(255,255,255,.09);border-radius:14px;background:rgba(255,255,255,.025)}
.customer-review-head{display:flex;align-items:flex-start;justify-content:space-between;gap:10px}
.customer-review-head strong{display:block;color:#fff;font-size:12px}
.customer-review-head small{display:block;margin-top:3px;color:#8190a3;font-size:9px}
.customer-review p{margin:9px 0 0;color:#c3cfdd;font-size:11px;line-height:1.55}
.rating-empty{padding:18px!important}

.g58-donate-float{
  position:fixed;left:18px;bottom:18px;z-index:950;
}
.g58-donate-button{
  position:relative;overflow:hidden;display:inline-flex;align-items:center;justify-content:center;padding:10px 17px;border:1px solid rgba(255,255,255,.58);border-radius:11px;
  background:linear-gradient(160deg,#fff0cf 0%,#ffc77f 35%,#ff9f43 68%,#f47a18 100%);color:#35200e;font:900 13px/1 Inter,system-ui,sans-serif;
  text-decoration:none;box-shadow:inset 0 2px 1px rgba(255,255,255,.75),inset 0 -3px 6px rgba(155,65,0,.22),0 10px 28px rgba(249,115,22,.34);transition:.18s ease;
}
.g58-donate-button:before{content:"";position:absolute;left:8%;right:8%;top:2px;height:42%;border-radius:999px;background:linear-gradient(rgba(255,255,255,.78),rgba(255,255,255,0));pointer-events:none}
.g58-donate-button:hover{filter:brightness(1.08);transform:translateY(-2px)}
.digital-menu-launch{display:inline-flex;align-items:center;justify-content:center;gap:8px;color:#fff!important;background:linear-gradient(135deg,#ff3b30,#b30000 62%,#730000)!important;border:1px solid rgba(255,112,101,.75)!important;box-shadow:0 0 0 1px rgba(255,255,255,.1) inset,0 0 22px rgba(255,45,45,.55),0 12px 28px rgba(88,0,0,.5)!important;font-weight:950;letter-spacing:.04em;text-transform:uppercase;animation:g58DigitalPulse 2.4s ease-in-out infinite}
.recent-side-title{padding:12px 12px 11px;gap:10px}
.recent-menu-launch{margin:0;padding:8px 9px;border-radius:10px;font-size:9px;line-height:1;white-space:nowrap;text-decoration:none}.recent-menu-launch span{color:#ffdfdc;text-shadow:0 0 12px #fff}
.recent-location-row{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:9px 14px 0;color:var(--muted);font-size:9px;text-transform:uppercase;letter-spacing:.08em}
.recent-location-row small{color:#fdba74;font-size:10px;letter-spacing:0;text-transform:none;text-align:right}
@keyframes g58DigitalPulse{0%,100%{box-shadow:0 0 0 1px rgba(255,255,255,.1) inset,0 0 16px rgba(255,45,45,.38),0 12px 28px rgba(88,0,0,.45)}50%{box-shadow:0 0 0 1px rgba(255,255,255,.16) inset,0 0 32px rgba(255,45,45,.72),0 16px 36px rgba(88,0,0,.58)}}

@media(max-width:760px){
  .premium-trust-strip{grid-template-columns:1fr 1fr}
  .rating-fields{grid-template-columns:1fr}
  .g58-donate-float{left:10px;bottom:10px}
}
@media(max-width:430px){
  .premium-trust-strip{grid-template-columns:1fr}
  .business-rating-bar{padding:0 13px}
  .rating-input-stars button{width:40px;height:40px}
}
.g58-contact-round{
  position:fixed;
  right:18px;
  bottom:18px;
  z-index:980;
  height:54px;
  padding:0 20px 0 16px;
  border:0;
  border-radius:999px;
  display:inline-flex;
  align-items:center;
  gap:9px;
  background:linear-gradient(145deg,var(--orange),#ea580c);
  box-shadow:0 14px 38px rgba(0,0,0,.38),0 0 0 5px rgba(249,115,22,.16);
  cursor:pointer;
  color:#fff;
  font-weight:800;
  font-size:15px;
  transition:transform .18s ease,box-shadow .18s ease;
}
.g58-contact-round:hover{
  transform:translateY(-3px) scale(1.03);
  box-shadow:0 18px 46px rgba(0,0,0,.44),0 0 0 7px rgba(249,115,22,.2);
}
.g58-contact-round:active{transform:scale(.96)}
.g58-contact-round svg{
  width:26px;
  height:26px;
  flex-shrink:0;
  filter:drop-shadow(0 2px 2px rgba(0,0,0,.18));
}
@media(max-width:640px){
  .g58-contact-round{
    right:12px;
    bottom:12px;
    height:50px;
    padding:0 16px 0 13px;
    font-size:14px;
  }
  .g58-contact-round svg{width:23px;height:23px}
}
.g58-contact-field{margin:0 0 14px}
.g58-contact-field label{display:block;font-size:13px;color:var(--muted);margin-bottom:6px}
.phone-dialog select{width:100%;padding:14px;border-radius:12px;border:1px solid rgba(255,255,255,.15);background:#091421;color:#fff;font-size:16px;outline:none}
.phone-dialog select:focus{border-color:#ff7a00;box-shadow:0 0 0 3px rgba(255,122,0,.15)}


/* Customer Wall and Business Owner Wall card unlock controls */
.unlock-check-row{display:flex;gap:10px;align-items:center;margin-top:14px;padding:12px;border:1px solid rgba(255,255,255,.14);border-radius:13px;background:rgba(255,255,255,.04);font-weight:800;cursor:pointer}
.unlock-check-row input{width:18px;height:18px;accent-color:#ff7a00;flex:0 0 auto}
.phone-modal{position:fixed;inset:0;background:rgba(0,0,0,.76);display:none;align-items:center;justify-content:center;padding:20px;z-index:11000}
.phone-modal.open{display:flex}
.phone-dialog{width:min(440px,100%);background:#101b2a;border:1px solid rgba(255,255,255,.15);border-radius:20px;padding:22px;box-shadow:0 24px 80px rgba(0,0,0,.5)}
.phone-dialog h3{margin:0 0 8px;color:#fff}
.phone-dialog p{color:#aebcd1;margin:0 0 15px;line-height:1.55}
.phone-dialog input{width:100%;padding:14px;border-radius:12px;border:1px solid rgba(255,255,255,.15);background:#091421;color:#fff;font-size:16px;outline:none}
.phone-dialog input:focus{border-color:#ff7a00;box-shadow:0 0 0 3px rgba(255,122,0,.15)}
.phone-actions{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:14px}


/* Compact wall unlock controls and reduced wall-card height */
.unlock-check-row{
  display:inline-flex;
  width:auto;
  align-self:flex-start;
  gap:6px;
  margin-top:5px;
  padding:5px 8px;
  border-radius:8px;
  font-size:10px;
  line-height:1;
  font-weight:800;
}
.unlock-check-row input{
  width:13px;
  height:13px;
  margin:0;
}
.business-owner-box{
  display:flex;
  align-items:center;
  flex-wrap:wrap;
  gap:8px;
  margin-top:8px;
  padding:7px 9px;
  border-radius:10px;
}
.business-owner-box .unlock-check-row{margin:0}
.business-owner-title{display:none}
.business-owner-actions{
  flex:1 1 190px;
  gap:6px;
}
.business-owner-actions .btn{padding:8px 10px;font-size:10px}

/* Keep customer wall cards compact after adding the small unlock control */
.flip-card,.flip-inner{
  height:570px;
  min-height:570px;
}
.market-card.front .card-body{
  gap:9px;
  padding:15px;
  padding-bottom:14px;
}
.card-image{height:104px}
.meta{gap:6px}
.meta span{padding:7px 8px}
.card-actions .btn{min-height:48px}

/* Business wall cards use natural compact height */
.business-card{min-height:0;padding:17px}
.wall .flip-card,.wall .flip-inner{height:340px!important;min-height:340px!important}
.wall .market-card.front{min-height:340px!important}
.wall .market-card.front .card-image{height:70px!important}
.wall .market-card.front .card-body{gap:6px;padding:10px 12px!important}
.wall .market-card.front .card-body p{margin:0;line-height:1.35;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.wall .market-card.front .meta{gap:4px}.wall .market-card.front .meta span{padding:5px 7px}
.wall .market-card.front .card-actions .btn{min-height:39px;padding:7px 8px}
.post-focus-pulse{animation:postFocusPulse .65s ease 2}
@keyframes postFocusPulse{50%{filter:drop-shadow(0 0 16px rgba(249,115,22,.8));transform:translateY(-3px)}}
.business-card{padding:13px!important}.business-card-top{padding-bottom:8px!important}.business-card-body{padding-top:8px!important}.business-card-body p{line-height:1.35!important;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.business-card-top{padding-bottom:12px}
.business-card-body{padding-top:12px}
.business-card-body p{margin-bottom:10px;line-height:1.5}
.business-details{gap:6px;margin-bottom:10px}
.business-details span{padding:7px 8px}
.business-card-actions{gap:6px}
.business-card-actions .btn{padding:9px 8px;font-size:11px}

@media(max-width:1100px){
  .wall .flip-card,.wall .flip-inner{height:365px!important;min-height:365px!important}
}
@media(max-width:720px){
  .wall .flip-card,.wall .flip-inner{height:385px!important;min-height:385px!important}
  .unlock-check-row{font-size:10px;padding:5px 7px}
}


/* ================================================================
   Corporate refresh — quieter palette, no per-card carnival colors,
   no ribbon badges, calmer motion. Overrides the layers above.
   ================================================================ */
body{background:
  radial-gradient(circle at 12% 0%,rgba(37,99,235,.12),transparent 32%),
  radial-gradient(circle at 92% 8%,rgba(37,99,235,.06),transparent 30%),var(--bg)!important}

.gradient-text{background:linear-gradient(90deg,#eef2ff,#93c5fd)!important;-webkit-background-clip:text!important;background-clip:text!important;color:transparent!important}
.landing-card{background:
  radial-gradient(circle at top left,rgba(37,99,235,.14),transparent 40%),rgba(16,28,44,.82)!important;
  border-color:rgba(255,255,255,.08)!important}

/* Top ribbon: one calm card style, no skew, no per-category paint job */
.catalogue-ribbons{display:grid!important;grid-template-columns:repeat(4,1fr)!important;gap:10px!important;
  border-bottom:0!important;max-width:none!important;padding:0!important;align-items:stretch!important}
.catalogue-btn{
  min-height:72px!important;border:1px solid var(--border)!important;border-radius:14px!important;
  background:rgba(255,255,255,.03)!important;color:#fff!important;padding:14px 16px!important;
  text-align:left!important;box-shadow:none!important;transform:none!important;transition:.2s ease!important
}
.catalogue-btn:hover{border-color:rgba(147,197,253,.55)!important;background:rgba(255,255,255,.055)!important;transform:translateY(-2px)!important}
.catalogue-btn strong,.catalogue-btn small{transform:none!important;color:inherit}
.catalogue-btn strong{font-size:14px!important;font-weight:700!important}
.catalogue-btn small{font-size:10px!important;color:var(--muted)!important}
.catalogue-btn.jobs,.catalogue-btn.business,.catalogue-btn.digital-menu-ribbon,.catalogue-btn.digit58-ribbon{background:rgba(255,255,255,.03)!important}
.catalogue-btn:before,.catalogue-btn:after{display:none!important}
@media(max-width:700px){.catalogue-ribbons{grid-template-columns:repeat(2,1fr)!important}}

/* Promo cards: one restrained card system, no FREE/PREMIUM ribbons */
.promo-split-card{border:1px solid var(--border)!important;border-radius:18px!important;
  background:rgba(255,255,255,.03)!important;box-shadow:none!important;transition:.2s ease!important}
.promo-split-card:hover{transform:translateY(-3px)!important;border-color:rgba(147,197,253,.4)!important;box-shadow:0 18px 40px rgba(0,0,0,.24)!important}
.free-ad-pop{padding:24px!important}
.free-ad-pop:before{display:none!important}
.free-ad-pop .ad-kicker{display:none!important}
.promo-split-card,.business-promo-card,.pos-promo-card,.digit58-promo-card,.digital-menu-promo-card{
  border-color:var(--border)!important;background:rgba(255,255,255,.03)!important}
.promo-split-card .promo-mini-icon{
  background:linear-gradient(150deg,rgba(37,99,235,.9),rgba(29,78,216,.95))!important;
  box-shadow:none!important;color:#eaf1ff!important;font-size:11px!important;letter-spacing:.06em!important;
  border-radius:16px!important
}
.promo-split-card strong,.free-ad-pop strong{color:#fff!important;font-size:clamp(19px,2vw,26px)!important;font-weight:700!important}
.promo-split-card .ad-kicker,.pos-promo-card .ad-kicker,.pos-promo-card strong{color:#fff!important}
.promo-split-card p,.promo-white-text,.customer-promo-card .promo-split-copy p{color:var(--muted)!important;font-weight:400!important}
.ad-cta,.promo-split-card .ad-cta,.pos-promo-card .ad-cta{
  background:transparent!important;color:#93c5fd!important;padding:0!important;font-weight:700!important;font-size:12px!important
}

/* Trust strip: one accent color, not orange-badge-everywhere */
.premium-trust-strip>div{background:rgba(255,255,255,.03)!important;box-shadow:none!important}
.premium-trust-strip>div>span{background:rgba(37,99,235,.18)!important;color:#93c5fd!important;font-weight:800!important}

/* Buttons: fewer competing hues, calmer hover */
.btn{transition:.18s ease!important}
.btn:hover{transform:translateY(-1px)!important}
.btn.orange{background:linear-gradient(135deg,var(--blue),#1d4ed8)!important;color:#fff!important}
.header-account-btn.login{background:var(--blue)!important;border-color:var(--blue)!important;color:#fff!important}
.header-account-btn{border-color:rgba(255,255,255,.14)!important;background:rgba(255,255,255,.04)!important;color:#dfe7f0!important}
.header-account-btn:hover{background:rgba(255,255,255,.08)!important}
.nav-icon-btn.pos-nav-btn,.nav-icon-btn.primary{background:rgba(37,99,235,.16)!important;border-color:rgba(37,99,235,.4)!important;color:#93c5fd!important}

/* Forms: more breathing room, quieter inputs */
.modal-card{background:#0B1622!important;border-color:rgba(255,255,255,.08)!important}
.modal-head h3{font-size:18px!important;font-weight:700!important}
.form-grid{gap:16px 14px!important}
.field label{font-size:11px!important;font-weight:600!important;letter-spacing:.02em!important;text-transform:uppercase!important;color:var(--muted)!important}
.field input,.field textarea,.field select{background:rgba(255,255,255,.03)!important;border-color:rgba(255,255,255,.10)!important;transition:.15s ease!important}
.field input:focus,.field textarea:focus,.field select:focus{outline:none!important;border-color:var(--blue)!important;box-shadow:0 0 0 3px rgba(37,99,235,.18)!important}


/* ================================================================
   Hero v2 — light, minimal, single-accent (reference: paid.ai).
   Scoped to .landing only; the wall/modals below stay on the dark
   surface theme. Every text rule below is written against the exact
   class combo it targets (not left to inherit) so it can't lose a
   specificity fight the way the old ribbon/promo colors did.
   ================================================================ */
:root{--ink:#12181F;--ink-muted:#5B6472;--accent:#1D4ED8;--hero-bg:#F5F4EF;--hero-surface:#FFFFFF;--hero-border:rgba(18,24,31,.10)}

.landing{background:var(--hero-bg)!important;position:relative;z-index:1}
.landing:before{content:'';position:absolute;inset:0;z-index:-1;background:var(--hero-bg)}
.landing-card{background:var(--hero-surface)!important;border:1px solid var(--hero-border)!important;box-shadow:0 1px 2px rgba(18,24,31,.04)!important;backdrop-filter:none!important}
.landing-side{background:var(--hero-surface)!important;border:1px solid var(--hero-border)!important;box-shadow:0 1px 2px rgba(18,24,31,.04)!important;backdrop-filter:none!important}
.side-title{color:var(--ink)!important;border-color:var(--hero-border)!important}
.recent-location-row{color:var(--ink-muted)!important}
.recent-location-row small{color:var(--accent)!important}
.recent-empty{color:var(--ink-muted)!important}

.recent-job{background:var(--hero-surface)!important;border:1px solid var(--hero-border)!important;color:var(--ink)!important}
.recent-job strong{color:var(--ink)!important}
.recent-job span{color:var(--ink-muted)!important}
.recent-job .recent-category{color:var(--accent)!important}
.recent-job .recent-count{background:var(--accent)!important;color:#fff!important}

.landing-card h1{color:var(--ink)!important}
.gradient-text{background:none!important;-webkit-text-fill-color:var(--accent)!important;color:var(--accent)!important}
.landing-card>.landing-content>p,.landing-content>p{color:var(--ink-muted)!important}

/* Top ribbon — flat white cards, one accent, bulletproof text color */
.catalogue-ribbons{gap:12px!important}
.catalogue-btn,
.catalogue-btn.jobs,.catalogue-btn.business,.catalogue-btn.digital-menu-ribbon,.catalogue-btn.digit58-ribbon{
  background:var(--hero-surface)!important;border:1px solid var(--hero-border)!important;color:var(--ink)!important;
  border-radius:12px!important;box-shadow:none!important
}
.catalogue-btn:hover,
.catalogue-btn.jobs:hover,.catalogue-btn.business:hover,.catalogue-btn.digital-menu-ribbon:hover,.catalogue-btn.digit58-ribbon:hover{
  border-color:var(--accent)!important;background:var(--hero-surface)!important;transform:translateY(-2px)!important
}
.catalogue-btn strong,.catalogue-btn small,
.catalogue-btn.jobs strong,.catalogue-btn.jobs small,
.catalogue-btn.business strong,.catalogue-btn.business small,
.catalogue-btn.digital-menu-ribbon strong,.catalogue-btn.digital-menu-ribbon small,
.catalogue-btn.digit58-ribbon strong,.catalogue-btn.digit58-ribbon small{color:var(--ink)!important}
.catalogue-btn small,.catalogue-btn.jobs small,.catalogue-btn.business small,.catalogue-btn.digital-menu-ribbon small,.catalogue-btn.digit58-ribbon small{color:var(--ink-muted)!important;font-weight:400!important}

/* Promo cards — same flat card, one accent icon badge, bulletproof text color */
.promo-split-card,.free-ad-pop,
.business-promo-card,.pos-promo-card,.digit58-promo-card,.digital-menu-promo-card,.customer-promo-card{
  background:var(--hero-surface)!important;border:1px solid var(--hero-border)!important;box-shadow:none!important
}
.promo-split-card:hover{border-color:var(--accent)!important;box-shadow:0 12px 28px rgba(18,24,31,.08)!important}
.promo-split-card .promo-mini-icon{background:var(--accent)!important;color:#fff!important;box-shadow:none!important}
.promo-split-card strong,.free-ad-pop strong,
.promo-split-card .ad-kicker,.pos-promo-card .ad-kicker,.pos-promo-card strong{color:var(--ink)!important}
.promo-split-card p,.promo-white-text,.customer-promo-card .promo-split-copy p{color:var(--ink-muted)!important;font-weight:400!important}
.promo-split-card .ad-cta,.pos-promo-card .ad-cta,.free-ad-pop .ad-cta{color:var(--accent)!important;background:transparent!important}

/* Trust strip — flat, one accent */
.premium-trust-strip>div{background:var(--hero-surface)!important;border:1px solid var(--hero-border)!important;box-shadow:none!important}
.premium-trust-strip>div>span{background:rgba(29,78,216,.10)!important;color:var(--accent)!important}
.premium-trust-strip strong{color:var(--ink)!important}
.premium-trust-strip small{color:var(--ink-muted)!important}

/* Header — dark icons/text while floating over the light hero; the
   existing .scrolled state (dark blurred bar) is unchanged. */
.topbar:not(.scrolled) .gravity-main{color:var(--ink)!important;text-shadow:none!important}
.topbar:not(.scrolled) .gravity-wordmark small{color:var(--ink-muted)!important}
.topbar:not(.scrolled) .nav-icon-btn{background:rgba(18,24,31,.05)!important;border-color:rgba(18,24,31,.12)!important;color:var(--ink)!important}
.topbar:not(.scrolled) .nav-icon-btn.pos-nav-btn,.topbar:not(.scrolled) .nav-icon-btn.primary{background:rgba(29,78,216,.10)!important;border-color:rgba(29,78,216,.3)!important;color:var(--accent)!important}
.topbar:not(.scrolled) .nav-actions{background:rgba(18,24,31,.03)!important;border-color:var(--hero-border)!important;box-shadow:none!important}
.topbar:not(.scrolled) .header-account-btn:not(.login){background:rgba(18,24,31,.05)!important;border-color:rgba(18,24,31,.14)!important;color:var(--ink)!important}
.topbar:not(.scrolled) .header-user-name{color:var(--ink)!important}

@media(max-width:800px){
  .landing-side.left-side{background:var(--hero-surface)!important}
}


/* ================================================================
   Hero v3 — drop the card grid. One bordered strip, plain rows
   inside separated by hairline dividers, instead of a box per item.
   ================================================================ */
.catalogue-ribbons{
  display:flex!important;flex-wrap:nowrap!important;gap:0!important;
  border:1px solid var(--hero-border)!important;border-radius:14px!important;
  background:var(--hero-surface)!important;overflow:hidden!important
}
.catalogue-btn,
.catalogue-btn.jobs,.catalogue-btn.business,.catalogue-btn.digital-menu-ribbon,.catalogue-btn.digit58-ribbon{
  flex:1!important;min-height:64px!important;border:0!important;border-right:1px solid var(--hero-border)!important;
  border-radius:0!important;background:transparent!important
}
.catalogue-btn.digit58-ribbon{border-right:0!important}
.catalogue-btn:hover,
.catalogue-btn.jobs:hover,.catalogue-btn.business:hover,.catalogue-btn.digital-menu-ribbon:hover,.catalogue-btn.digit58-ribbon:hover{
  background:rgba(18,24,31,.03)!important;border-color:var(--hero-border)!important;transform:none!important
}

.promo-split{display:block!important;border:1px solid var(--hero-border)!important;border-radius:14px!important;background:var(--hero-surface)!important;overflow:hidden!important}
.promo-split-card,.free-ad-pop,
.business-promo-card,.pos-promo-card,.digit58-promo-card,.digital-menu-promo-card,.customer-promo-card{
  display:grid!important;grid-template-columns:60px minmax(0,1fr)!important;align-items:center!important;gap:16px!important;
  min-height:0!important;border:0!important;border-bottom:1px solid var(--hero-border)!important;border-radius:0!important;
  background:transparent!important;padding:20px 24px!important
}
.promo-split-card:last-child{border-bottom:0!important}
.promo-split-card:hover{background:rgba(18,24,31,.025)!important;transform:none!important;box-shadow:none!important}
.promo-split-card .promo-mini-icon{width:48px!important;height:48px!important;border-radius:11px!important;font-size:9px!important}
.promo-split-card strong,.free-ad-pop strong{font-size:17px!important}
.promo-split-card p{font-size:12.5px!important;max-width:44ch!important}

@media(max-width:700px){
  .catalogue-ribbons{flex-wrap:wrap!important}
  .catalogue-btn,.catalogue-btn.jobs,.catalogue-btn.business,.catalogue-btn.digital-menu-ribbon{
    flex:1 1 50%!important;border-bottom:1px solid var(--hero-border)!important
  }
  .catalogue-btn.business,.catalogue-btn.digit58-ribbon{border-right:0!important}
  .promo-split-card{grid-template-columns:44px minmax(0,1fr)!important;padding:16px!important}
  .promo-split-card .promo-mini-icon{width:40px!important;height:40px!important}
}


/* ================================================================
   Redesign v2 — nav, hero demo, marquee, workflow, comparison,
   tools showcase, dual CTAs, footer. Everything below lives inside
   #home, so it hides/shows exactly like the existing quick-actions
   block already does when selectMode() toggles the wall.
   ================================================================ */
.landing{display:block;place-items:initial!important;padding:130px 0 0!important;min-height:0!important}
.reveal{opacity:0;transform:translateY(18px);transition:opacity .6s ease,transform .6s ease}
.reveal.in-view{opacity:1;transform:none}
@media(prefers-reduced-motion:reduce){.reveal{opacity:1;transform:none;transition:none}}

/* Header v2 */
.nav-v2{display:flex;align-items:center;gap:28px}
.nav-center{display:flex;align-items:center;gap:26px;margin:0 auto}
.nav-link{background:none;border:0;color:var(--ink);font-size:14px;font-weight:600;cursor:pointer;padding:6px 0}
.topbar.scrolled .nav-link{color:#e7ecf3}
.nav-mega-wrap{position:relative}
.nav-mega-wrap::after{content:"";position:absolute;top:100%;left:50%;transform:translateX(-50%);width:300px;height:14px}
.nav-mega-trigger{display:inline-flex;align-items:center;gap:5px}
.mega-caret{font-size:11px;transition:.2s}
.nav-mega-wrap:hover .mega-caret,.nav-mega-wrap:focus-within .mega-caret{transform:rotate(180deg)}
.nav-mega-menu{position:absolute;top:calc(100% + 14px);left:50%;transform:translateX(-50%) translateY(6px);width:300px;
  background:var(--hero-surface);border:1px solid var(--hero-border);border-radius:14px;box-shadow:0 20px 50px rgba(18,24,31,.14);
  padding:8px;display:grid;gap:2px;opacity:0;pointer-events:none;transition:.18s ease;z-index:80}
.nav-mega-wrap:hover .nav-mega-menu,.nav-mega-wrap:focus-within .nav-mega-menu,.nav-mega-wrap.touch-open .nav-mega-menu{opacity:1;pointer-events:auto;transform:translateX(-50%) translateY(0)}
.nav-mega-menu a{display:block;padding:10px 12px;border-radius:9px;text-decoration:none}
.nav-mega-menu a:hover{background:rgba(29,78,216,.06)}
.nav-mega-menu a strong{display:block;color:var(--ink);font-size:13px}
.nav-mega-menu a small{color:var(--ink-muted);font-size:11px}
.nav-post-cta{margin-left:6px;padding:10px 18px!important;font-size:13px!important}
.header-icon-nav{gap:8px}
.header-icon-nav a{display:inline-flex;align-items:center;gap:6px;padding:8px 14px;border-radius:999px;border:1px solid var(--hero-border);background:var(--hero-surface);color:var(--ink);text-decoration:none;font-size:12.5px;font-weight:700;transition:.15s ease}
.header-icon-nav a:hover{border-color:var(--accent);color:var(--accent)}
.header-icon-nav svg{width:16px;height:16px;flex-shrink:0}
@media(max-width:980px){.nav-center{display:none}.nav-mega-last{display:none}}

/* Hero v2 */
.hero-v2{max-width:900px;margin:0 auto;text-align:center;padding-bottom:64px}
.hero-badge{display:inline-flex;padding:7px 16px;border-radius:999px;background:rgba(29,78,216,.08);
  border:1px solid rgba(29,78,216,.22);color:var(--accent);font-size:12px;font-weight:700;letter-spacing:.02em;margin-bottom:22px}
.hero-v2-heading{position:relative;font-family:Manrope,sans-serif;font-weight:800;letter-spacing:-.03em;line-height:1.04;
  font-size:clamp(38px,6vw,72px);color:var(--ink);margin:0 0 20px;min-height:clamp(150px,20vw,210px)}
.hero-heading-text,.hero-result-text{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;text-align:center;opacity:1;transition:opacity .48s ease,transform .56s cubic-bezier(.22,1,.36,1)}
.hero-result-text{opacity:0;transform:translateY(12px) scale(.985);background:linear-gradient(90deg,var(--ink) 0%,var(--accent) 52%,#e76310 100%);-webkit-background-clip:text;background-clip:text;color:transparent}
.hero-flow-dots{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;gap:0;opacity:0;pointer-events:none;transition:opacity .38s ease}
.flow-dot-node{display:flex;flex-direction:column;align-items:center;gap:12px;opacity:0;transition:opacity .56s ease,transform .56s cubic-bezier(.34,1.56,.64,1)}
.flow-dot-ring{display:flex;align-items:center;justify-content:center;width:clamp(76px,9vw,135px);height:clamp(76px,9vw,135px);border-radius:50%;border:1.6px dashed color-mix(in srgb,var(--orange) 55%,var(--hero-border));flex-shrink:0}
.flow-dot-node svg{width:clamp(30px,3.4vw,52px);height:clamp(30px,3.4vw,52px)}
.flow-dot-node small{font-size:clamp(16px,1.6vw,30px);font-weight:600;color:var(--ink-muted);white-space:nowrap;opacity:0;transition:opacity .44s ease}
.flow-dot-logo svg{width:clamp(28px,3.2vw,48px);height:clamp(28px,3.2vw,48px)}
#flowDotStore{transform:translateX(clamp(70px,9vw,140px))}
#flowDotCart{transform:translateX(clamp(-140px,-9vw,-70px))}
.flow-dot-line{width:0;height:0;border-top:1.5px dashed color-mix(in srgb,var(--orange) 45%,var(--hero-border));transition:width .5s ease;flex-shrink:1}
.hero-flow-dots .flow-dot-logo{opacity:1}
.hero-v2-heading.dots-active .hero-heading-text{opacity:0}
.hero-v2-heading.dots-active .hero-flow-dots{opacity:1;pointer-events:auto}
.hero-v2-heading.dots-active .flow-dot-logo svg{animation:heroDotsSpin 1.25s linear}
.hero-v2-heading.dots-active #flowDotStore{opacity:1;transform:translateX(0);transition-delay:1.25s}
.hero-v2-heading.dots-active #flowDotCart{opacity:1;transform:translateX(0);transition-delay:1.25s}
.hero-v2-heading.dots-active #flowLineOne{width:clamp(50px,7vw,130px);transition-delay:1.88s}
.hero-v2-heading.dots-active #flowLineTwo{width:clamp(50px,7vw,130px);transition-delay:2.38s}
.hero-v2-heading.dots-active #flowDotStore small,.hero-v2-heading.dots-active #flowDotCart small{opacity:1;transition-delay:2.88s}
.hero-v2-heading.result-active .hero-heading-text{opacity:0}
.hero-v2-heading.result-active .hero-flow-dots{opacity:0;pointer-events:none}
.hero-v2-heading.result-active .hero-result-text{opacity:1;transform:none}
@keyframes heroDotsSpin{from{transform:rotate(0)}to{transform:rotate(360deg)}}
@media(prefers-reduced-motion:reduce){.hero-flow-dots,.hero-result-text{display:none!important}.hero-heading-text{opacity:1!important}}
.hero-v2-sub{max-width:560px;margin:0 auto 30px;color:var(--ink-muted);font-size:17px;line-height:1.6}
.hero-v2-ctas{display:flex;align-items:center;justify-content:center;gap:12px;flex-wrap:wrap;margin-bottom:26px}
.hero-primary-cta{padding:15px 24px!important;font-size:15px!important}
.hero-secondary-cta{padding:15px 22px!important;font-size:15px!important;border:1px solid var(--hero-border)!important;
  background:transparent!important;color:var(--ink)!important}
.hero-secondary-cta:hover{background:rgba(18,24,31,.03)!important}
.cta-arrow{display:inline-block;transition:transform .18s ease}
.btn:hover .cta-arrow{transform:translateX(3px)}
.hero-trust-row{display:flex;flex-wrap:wrap;justify-content:center;gap:22px;list-style:none;padding:0;margin:0 0 56px;
  color:var(--ink-muted);font-size:12.5px;font-weight:600}
.hero-trust-row li{display:flex;align-items:center;gap:6px}
.hero-trust-row li:before{content:'✓';color:var(--accent);font-weight:900}

.hero-demo{position:relative;max-width:640px;margin:0 auto;height:300px}
.hero-demo-lines{position:absolute;inset:0;width:100%;height:100%;overflow:visible}
.demo-line{stroke:rgba(29,78,216,.35);stroke-width:1.5;stroke-dasharray:5 6}
.hero-demo-card{position:absolute;width:230px;text-align:left;background:var(--hero-surface);border:1px solid var(--hero-border);
  border-radius:16px;padding:16px 18px;box-shadow:0 18px 40px rgba(18,24,31,.10);animation:heroFloat 5s ease-in-out infinite}
.demo-card-1{left:0;top:0;animation-delay:0s}
.demo-card-2{left:200px;top:110px;animation-delay:.6s}
.demo-card-3{left:410px;top:200px;animation-delay:1.2s;text-align:center}
.demo-card-label{display:block;font-size:10px;font-weight:800;letter-spacing:.06em;text-transform:uppercase;color:var(--accent);margin-bottom:6px}
.hero-demo-card strong{display:block;font-size:14px;color:var(--ink)}
.demo-card-loc{margin:3px 0 8px;color:var(--ink-muted);font-size:11.5px}
.demo-card-row{display:flex;justify-content:space-between;align-items:center;font-size:12px;color:var(--ink-muted);margin-top:6px}
.demo-card-row strong{font-size:12.5px}
.demo-status-pill{background:rgba(29,78,216,.10);color:var(--accent);border-radius:999px;padding:3px 9px;font-size:10.5px;font-weight:700}
.demo-stars{color:#f59e0b;font-size:12px;margin:2px 0 4px}
.demo-view-btn{display:inline-block;margin-top:10px;padding:8px 12px;border-radius:9px;background:var(--accent);color:#fff;
  font-size:11px;font-weight:700;text-align:center}
.demo-card-3{border-color:rgba(34,197,94,.35)}
.demo-status-dot{display:inline-block;width:9px;height:9px;border-radius:50%;background:#22c55e;box-shadow:0 0 0 4px rgba(34,197,94,.18);margin-bottom:8px}
.demo-card-3 small{color:var(--ink-muted);font-size:11px}
@keyframes heroFloat{0%,100%{transform:translateY(0)}50%{transform:translateY(-9px)}}
@media(prefers-reduced-motion:reduce){.hero-demo-card{animation:none}}
@media(max-width:760px){
  .hero-demo{height:auto;display:grid;gap:14px;justify-items:center}
  .hero-demo-lines{display:none}
  .hero-demo-card{position:static;width:100%;max-width:280px;animation:none}
}

/* Refills and Digital Menu journeys mirror the landing requirement flow. */
.product-workflow-section{padding:12px 20px 56px}
.product-workflow-heading{max-width:700px;margin:0 auto 28px;text-align:center}
.product-workflow-kicker{display:block;margin-bottom:8px;color:var(--accent);font-size:11px;font-weight:800;letter-spacing:.1em;text-transform:uppercase}
.product-workflow-heading h2{margin:0 0 9px;color:var(--ink);font-family:Manrope,sans-serif;font-size:clamp(27px,4vw,42px);letter-spacing:-.025em}
.product-workflow-heading p{max-width:590px;margin:0 auto;color:var(--ink-muted);font-size:14px;line-height:1.6}
.product-workflow-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}
.product-workflow-card{--workflow-accent:#0f8f7c;overflow:hidden;border:1px solid var(--hero-border);border-radius:24px;background:var(--hero-surface);box-shadow:0 18px 46px rgba(18,24,31,.08)}
.workflow-menu{--workflow-accent:#d65b18}
.product-workflow-copy{padding:25px 26px 12px}
.product-workflow-product{display:inline-flex;align-items:center;gap:8px;margin-bottom:9px;padding:5px 10px;border-radius:999px;background:color-mix(in srgb,var(--workflow-accent) 11%,transparent);color:var(--workflow-accent);font-size:10px;font-weight:900;letter-spacing:.09em;text-transform:uppercase}
.product-workflow-promo{padding:3px 9px;border-radius:999px;background:var(--orange);color:#fff;font-size:9.5px;font-weight:800;letter-spacing:.04em}
.product-workflow-copy h3{margin:0 0 8px;color:var(--ink);font-family:Manrope,sans-serif;font-size:21px;line-height:1.25}
.product-workflow-copy p{margin:0;color:var(--ink-muted);font-size:13.5px;line-height:1.55}
.product-workflow-cta{display:inline-flex;align-items:center;gap:6px;margin-top:14px;color:var(--workflow-accent);font-size:13px;font-weight:800;text-decoration:none}
.product-workflow-cta:hover span{transform:translateX(3px)}
.product-workflow-cta span{transition:transform .18s ease}
.product-workflow-demo{position:relative;height:276px;margin:8px 16px 16px;border-radius:18px;background:linear-gradient(145deg,color-mix(in srgb,var(--workflow-accent) 7%,var(--hero-bg)),var(--hero-bg));border:1px solid color-mix(in srgb,var(--workflow-accent) 18%,var(--hero-border))}
.product-workflow-line{position:absolute;height:0;border-top:1.5px dashed color-mix(in srgb,var(--workflow-accent) 38%,transparent);transform-origin:left center;z-index:0}
.product-workflow-line.line-one{width:145px;left:124px;top:89px;transform:rotate(20deg)}
.product-workflow-line.line-two{width:128px;left:275px;top:149px;transform:rotate(16deg)}
.product-flow-node{position:absolute;z-index:1;width:174px;padding:14px 15px;border:1px solid var(--hero-border);border-radius:14px;background:var(--hero-surface);box-shadow:0 14px 30px rgba(18,24,31,.1);animation:heroFloat 5s ease-in-out infinite}
.product-flow-node span{display:block;margin-bottom:5px;color:var(--workflow-accent);font-size:9px;font-weight:900;letter-spacing:.07em;text-transform:uppercase}
.product-flow-node strong{display:block;color:var(--ink);font-size:13.5px}
.product-flow-node small{display:block;margin-top:4px;color:var(--ink-muted);font-size:10px;line-height:1.35}
.product-flow-node.node-one{left:18px;top:24px}
.product-flow-node.node-two{left:50%;top:106px;transform:translateX(-50%);animation-delay:.6s}
.product-flow-node.node-three{right:18px;bottom:18px;text-align:center;border-color:rgba(34,197,94,.36);animation-delay:1.2s}
.product-flow-node.node-three i{display:block;width:9px;height:9px;margin:0 auto 7px;border-radius:50%;background:#22c55e;box-shadow:0 0 0 5px rgba(34,197,94,.16)}
.product-flow-badge{position:absolute;z-index:2;padding:6px 10px;border:1px solid var(--hero-border);border-radius:999px;background:var(--hero-surface);box-shadow:0 8px 20px rgba(18,24,31,.08);color:var(--ink-muted);font-size:9.5px;font-weight:800;white-space:nowrap}
.product-flow-badge.badge-one{right:18px;top:26px}
.product-flow-badge.badge-two{left:22px;bottom:24px}
@media(prefers-reduced-motion:reduce){.product-flow-node{animation:none}}
@media(max-width:980px){.product-workflow-grid{grid-template-columns:1fr}.product-workflow-card{max-width:680px;width:100%;margin:0 auto}}
@media(max-width:540px){
  .product-workflow-section{padding-inline:14px}
  .product-workflow-copy{padding:21px 19px 10px}
  .product-workflow-demo{height:auto;display:grid;gap:10px;padding:16px}
  .product-workflow-line,.product-flow-badge{display:none}
  .product-flow-node,.product-flow-node.node-one,.product-flow-node.node-two,.product-flow-node.node-three{position:relative;inset:auto;width:auto;transform:none;animation:none;text-align:left}
  .product-flow-node.node-three{display:grid;grid-template-columns:auto 1fr;column-gap:9px;align-items:center}
  .product-flow-node.node-three i{grid-row:1/3;margin:0}
}

/* Refills service-booking journey */
.service-bookings-showcase{position:relative;margin-bottom:56px;padding:34px;border:1px solid rgba(249,115,22,.2);border-radius:28px;background:linear-gradient(145deg,#fff 0%,#fffaf5 60%,#f7f9ff 100%);box-shadow:0 22px 60px rgba(18,24,31,.08);overflow:hidden}
.service-bookings-showcase:before{content:"";position:absolute;right:-140px;top:-170px;width:380px;height:380px;border-radius:50%;background:radial-gradient(circle,rgba(249,115,22,.14),transparent 68%);pointer-events:none}
.service-bookings-intro{position:relative;max-width:780px;margin:0 auto 30px;text-align:center}
.service-bookings-kicker{display:inline-flex;margin-bottom:10px;padding:6px 11px;border-radius:999px;background:rgba(249,115,22,.1);color:#cf5408;font-size:10px;font-weight:900;letter-spacing:.11em;text-transform:uppercase}
.service-bookings-intro h2{margin:0 0 11px;color:var(--ink);font-family:Manrope,sans-serif;font-size:clamp(25px,3.5vw,39px);font-weight:800;letter-spacing:-.025em;line-height:1.14}
.service-bookings-intro p{max-width:690px;margin:0 auto;color:var(--ink-muted);font-size:14.5px;line-height:1.65}
.service-bookings-cta{display:inline-flex;align-items:center;gap:7px;margin-top:17px;color:var(--accent);font-size:13px;font-weight:850;text-decoration:none}.service-bookings-cta span{transition:transform .18s ease}.service-bookings-cta:hover span{transform:translateX(3px)}
.service-bookings-panel{position:relative;padding:16px 10px 10px}
.service-bookings-route{position:absolute;left:11.5%;right:11.5%;top:51px;height:2px;background:linear-gradient(90deg,rgba(249,115,22,.18),rgba(29,78,216,.25),rgba(34,197,94,.22));overflow:visible}
.service-bookings-route:before{content:"";position:absolute;inset:-1px 0 auto;height:4px;background:linear-gradient(90deg,transparent,#f97316,#2563eb,#22c55e,transparent);transform:scaleX(0);transform-origin:left;animation:serviceBookingRoute 7.2s cubic-bezier(.4,0,.2,1) infinite}
.service-bookings-route span{position:absolute;top:50%;left:0;width:11px;height:11px;border:2px solid #fff;border-radius:50%;background:var(--orange);box-shadow:0 0 0 5px rgba(249,115,22,.13),0 0 18px rgba(249,115,22,.55);transform:translate(-50%,-50%);animation:serviceBookingDot 7.2s cubic-bezier(.4,0,.2,1) infinite}
.service-bookings-steps{position:relative;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px;list-style:none;margin:0;padding:0}
.service-bookings-steps li{position:relative;text-align:center;opacity:.58;animation:serviceBookingStep 7.2s ease-in-out infinite;animation-delay:calc(var(--booking-step) * 1.6s)}
.service-booking-icon{position:relative;z-index:1;display:grid;place-items:center;width:70px;height:70px;margin:0 auto 15px;border:1px solid rgba(249,115,22,.25);border-radius:22px;background:#fff;color:#d85d0e;box-shadow:0 13px 30px rgba(18,24,31,.09),inset 0 1px 0 #fff;transition:transform .24s ease,border-color .24s ease}
.service-booking-icon b{font-family:Manrope,sans-serif;font-size:16px;letter-spacing:-.02em}.service-booking-icon.booking-time{border-color:rgba(29,78,216,.22);color:var(--accent)}.service-booking-icon.booking-time b{font-size:12px}.service-booking-icon.booking-expert{border-color:rgba(124,58,237,.22);color:#7c3aed}.service-booking-icon.booking-confirmed{border-color:rgba(34,197,94,.28);color:#16803c}.service-booking-icon.booking-confirmed b{font-size:25px}
.service-bookings-steps small{display:block;margin-bottom:5px;color:#9a6b4e;font-size:9px;font-weight:900;letter-spacing:.1em;text-transform:uppercase}.service-bookings-steps strong{display:block;color:var(--ink);font-family:Manrope,sans-serif;font-size:15px}.service-bookings-steps p{max-width:210px;margin:7px auto 0;color:var(--ink-muted);font-size:11.5px;line-height:1.5}
.service-bookings-proof{display:flex;flex-wrap:wrap;justify-content:center;gap:8px;margin-top:23px;padding-top:20px;border-top:1px solid var(--hero-border)}.service-bookings-proof span{padding:7px 10px;border:1px solid var(--hero-border);border-radius:999px;background:rgba(255,255,255,.72);color:var(--ink-muted);font-size:10.5px;font-weight:700}.service-bookings-proof span:before{content:"✓";margin-right:5px;color:#16803c;font-weight:900}
@keyframes serviceBookingRoute{0%,10%{transform:scaleX(0)}70%,88%{transform:scaleX(1)}100%{transform:scaleX(0)}}
@keyframes serviceBookingDot{0%,10%{left:0;background:#f97316}32%{left:33.33%;background:#2563eb}54%{left:66.66%;background:#7c3aed}70%,88%{left:100%;background:#22c55e}100%{left:0;background:#f97316}}
@keyframes serviceBookingStep{0%,12%,100%{opacity:.58;transform:translateY(0)}16%,31%{opacity:1;transform:translateY(-5px)}36%{opacity:.58;transform:translateY(0)}}
@media(prefers-reduced-motion:reduce){.service-bookings-route:before,.service-bookings-route span,.service-bookings-steps li{animation:none}.service-bookings-route:before{transform:scaleX(1)}.service-bookings-route span{left:100%}.service-bookings-steps li{opacity:1}}
@media(max-width:720px){.service-bookings-showcase{margin-inline:14px;padding:27px 20px}.service-bookings-intro{text-align:left}.service-bookings-panel{padding:8px 0}.service-bookings-route{left:34px;right:auto;top:35px;bottom:35px;width:2px;height:auto}.service-bookings-route:before{inset:0 auto 0 -1px;width:4px;height:auto;transform:scaleY(0);transform-origin:top;animation-name:serviceBookingRouteMobile}.service-bookings-route span{top:0;left:50%;animation-name:serviceBookingDotMobile}.service-bookings-steps{grid-template-columns:1fr;gap:14px}.service-bookings-steps li{min-height:86px;padding-left:84px;text-align:left}.service-booking-icon{position:absolute;left:0;top:0;width:68px;height:68px;margin:0}.service-bookings-steps p{max-width:none;margin:5px 0 0}.service-bookings-proof{justify-content:flex-start}@keyframes serviceBookingRouteMobile{0%,10%{transform:scaleY(0)}70%,88%{transform:scaleY(1)}100%{transform:scaleY(0)}}@keyframes serviceBookingDotMobile{0%,10%{top:0;background:#f97316}32%{top:33.33%;background:#2563eb}54%{top:66.66%;background:#7c3aed}70%,88%{top:100%;background:#22c55e}100%{top:0;background:#f97316}}}
@media(max-width:720px) and (prefers-reduced-motion:reduce){.service-bookings-route:before{transform:scaleY(1)}.service-bookings-route span{top:100%}}

/* Category marquee */
.g58-marquee-section{padding:36px 0 54px;border-top:1px solid var(--hero-border);border-bottom:1px solid var(--hero-border);margin-top:12px}
.marquee-kicker{text-align:center;color:var(--ink-muted);font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.08em;margin:0 0 20px}
.marquee-track{overflow:hidden;-webkit-mask-image:linear-gradient(90deg,transparent,#000 8%,#000 92%,transparent);mask-image:linear-gradient(90deg,transparent,#000 8%,#000 92%,transparent)}
.marquee-track-inner{display:flex;gap:14px;width:max-content;animation:marqueeScroll 32s linear infinite}
.marquee-track-inner span{flex:none;padding:10px 20px;border:1px solid var(--hero-border);border-radius:999px;font-size:13px;font-weight:600;color:var(--ink);background:var(--hero-surface)}
@keyframes marqueeScroll{from{transform:translateX(0)}to{transform:translateX(-50%)}}
.marquee-track:hover .marquee-track-inner{animation-play-state:paused}
@media(prefers-reduced-motion:reduce){.marquee-track-inner{animation:none}}

/* Section heading shared */
.section-heading{max-width:640px;margin:0 auto 44px;text-align:center}
.section-heading h2,.comparison-section>.shell>h2,.tools-showcase h2{font-family:Manrope,sans-serif;font-weight:800;letter-spacing:-.02em;
  font-size:clamp(28px,4vw,44px);color:var(--ink);line-height:1.12;margin:0 0 14px}
.section-sub{color:var(--ink-muted);font-size:15.5px;line-height:1.6;margin:0}

/* How it works */
.how-it-works-section{padding:78px 0}
.workflow-steps{display:grid;grid-template-columns:repeat(4,1fr);gap:20px}
.workflow-step{background:var(--hero-surface);border:1px solid var(--hero-border);border-radius:16px;padding:24px 20px;min-height:180px}
.step-num{display:block;font-family:Manrope,sans-serif;font-weight:800;font-size:13px;color:var(--accent);margin-bottom:10px}
.workflow-step h3{font-size:18px;color:var(--ink);margin:0 0 8px}
.workflow-step p{color:var(--ink-muted);font-size:13.5px;line-height:1.55;margin:0}
.bid-chip-stack{display:flex;flex-direction:column;gap:6px;margin-top:12px}
.bid-chip-stack span{background:rgba(29,78,216,.06);border:1px solid rgba(29,78,216,.16);border-radius:8px;padding:5px 9px;
  font-size:11.5px;font-weight:700;color:var(--accent);opacity:0;animation:chipIn .5s ease forwards}
.bid-chip-stack span:nth-child(1){animation-delay:.1s}.bid-chip-stack span:nth-child(2){animation-delay:.35s}
.bid-chip-stack span:nth-child(3){animation-delay:.6s}.bid-chip-stack span:nth-child(4){animation-delay:.85s}
@keyframes chipIn{from{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}
.accepted-pill{display:inline-block;margin-top:12px;background:rgba(34,197,94,.10);color:#16803c;border:1px solid rgba(34,197,94,.28);
  border-radius:999px;padding:5px 11px;font-size:11.5px;font-weight:700}
@media(max-width:900px){.workflow-steps{grid-template-columns:repeat(2,1fr)}}
@media(max-width:560px){.workflow-steps{grid-template-columns:1fr}}

/* Comparison */
.comparison-section{padding:70px 0;background:var(--hero-surface);border-top:1px solid var(--hero-border);border-bottom:1px solid var(--hero-border)}
.comparison-section>.shell>h2{text-align:center;margin-bottom:36px}
.comparison-grid{display:grid;grid-template-columns:1fr 1fr;gap:22px;max-width:760px;margin:0 auto}
.comparison-col{border-radius:16px;padding:26px}
.comparison-col.old{background:rgba(18,24,31,.03);border:1px solid var(--hero-border)}
.comparison-col.new{background:rgba(29,78,216,.05);border:1px solid rgba(29,78,216,.22)}
.comparison-col h4{margin:0 0 16px;font-size:15px;color:var(--ink-muted);text-transform:uppercase;letter-spacing:.04em}
.comparison-col.new h4{color:var(--accent)}
.comparison-col ol{margin:0;padding-left:20px;color:var(--ink);font-size:14px;line-height:2}
.comparison-col.old ol{color:var(--ink-muted)}
@media(max-width:640px){.comparison-grid{grid-template-columns:1fr}}

/* Tools showcase */
.tools-showcase{position:relative;padding:88px 0 96px;overflow:hidden;background:
  radial-gradient(circle at 8% 12%,rgba(37,99,235,.09),transparent 27%),
  radial-gradient(circle at 94% 82%,rgba(249,115,22,.09),transparent 28%),var(--hero-bg)}
.tools-showcase:before{content:"";position:absolute;inset:0;pointer-events:none;opacity:.32;background-image:linear-gradient(rgba(18,24,31,.035) 1px,transparent 1px),linear-gradient(90deg,rgba(18,24,31,.035) 1px,transparent 1px);background-size:42px 42px;mask-image:linear-gradient(to bottom,transparent,#000 18%,#000 82%,transparent)}
.tools-showcase .shell{position:relative}
.tools-showcase .section-heading{max-width:760px;margin-bottom:42px}
.tools-section-kicker{display:inline-flex;align-items:center;gap:8px;margin-bottom:14px;padding:7px 12px;border:1px solid rgba(249,115,22,.24);border-radius:999px;background:rgba(249,115,22,.08);color:#d95d0d;font-size:10px;font-weight:900;letter-spacing:.12em;text-transform:uppercase}
.tools-section-kicker:before{content:"";width:7px;height:7px;border-radius:50%;background:var(--orange);box-shadow:0 0 0 5px rgba(249,115,22,.12)}
.tools-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px;align-items:stretch}
.tool-card{--tool-accent:#f97316;position:relative;isolation:isolate;display:flex;flex-direction:column;min-height:500px;overflow:hidden;padding:27px;border:1px solid rgba(255,255,255,.11);border-radius:26px;background:linear-gradient(155deg,#122238 0%,#091321 60%,#07101c 100%);box-shadow:0 24px 60px rgba(7,17,31,.18),inset 0 1px 0 rgba(255,255,255,.08);transition:transform .24s ease,border-color .24s ease,box-shadow .24s ease}
.tool-card:before{content:"";position:absolute;z-index:-1;width:250px;height:250px;right:-115px;top:-120px;border-radius:50%;background:radial-gradient(circle,color-mix(in srgb,var(--tool-accent) 36%,transparent),transparent 68%);opacity:.85}
.tool-card:after{content:"";position:absolute;left:27px;right:27px;top:0;height:3px;border-radius:0 0 99px 99px;background:linear-gradient(90deg,transparent,var(--tool-accent),transparent);box-shadow:0 0 18px color-mix(in srgb,var(--tool-accent) 65%,transparent)}
.tool-card-menu{--tool-accent:#3b82f6}.tool-card-stay{--tool-accent:#8b5cf6}.tool-card-pos{--tool-accent:#14b8a6}
.tool-card:hover{transform:translateY(-7px);border-color:color-mix(in srgb,var(--tool-accent) 50%,rgba(255,255,255,.12));box-shadow:0 34px 74px rgba(7,17,31,.28),0 0 0 1px color-mix(in srgb,var(--tool-accent) 14%,transparent)}
.tool-card-topline{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:20px}
.tool-kicker{display:inline-flex;align-items:center;gap:8px;color:color-mix(in srgb,var(--tool-accent) 85%,white);font-size:10.5px;font-weight:900;text-transform:uppercase;letter-spacing:.1em}
.tool-kicker:before{content:"";width:7px;height:7px;border-radius:50%;background:var(--tool-accent);box-shadow:0 0 0 5px color-mix(in srgb,var(--tool-accent) 16%,transparent)}
.tool-card-number{font-family:Manrope,sans-serif;color:rgba(255,255,255,.26);font-size:12px;font-weight:800;letter-spacing:.12em}
.tool-card-icon{display:grid;place-items:center;width:64px;height:64px;margin-bottom:22px;border:1px solid color-mix(in srgb,var(--tool-accent) 40%,rgba(255,255,255,.12));border-radius:19px;background:linear-gradient(145deg,color-mix(in srgb,var(--tool-accent) 24%,transparent),rgba(255,255,255,.025));box-shadow:inset 0 1px 0 rgba(255,255,255,.14),0 13px 28px color-mix(in srgb,var(--tool-accent) 16%,transparent);color:#fff}
.tool-card-icon>span{font-family:Manrope,sans-serif;font-size:31px;font-weight:700;line-height:1}
.tool-card-icon-qr{grid-template-columns:repeat(2,10px);grid-template-rows:repeat(2,10px);gap:5px}
.tool-card-icon-qr span{width:10px;height:10px;border:2px solid #fff;border-radius:2px}
.tool-card-icon-qr span:nth-child(4){border:0;background:var(--tool-accent);box-shadow:0 0 12px var(--tool-accent)}
.tool-card h3{min-height:78px;margin:0 0 13px;color:#fff;font-family:Manrope,sans-serif;font-size:clamp(22px,2vw,27px);font-weight:800;letter-spacing:-.025em;line-height:1.16}
.tool-card>p{min-height:66px;margin:0 0 18px;color:#aebbd0;font-size:13.5px;line-height:1.62}
.tool-mini-preview{display:flex;align-items:center;min-height:66px;margin-bottom:18px;padding:13px 14px;border:1px solid rgba(255,255,255,.09);border-radius:15px;background:rgba(255,255,255,.045);box-shadow:inset 0 1px 0 rgba(255,255,255,.04)}
.tool-refill-preview{gap:11px}.tool-preview-dot{width:9px;height:9px;flex:0 0 auto;border-radius:50%;background:var(--tool-accent);box-shadow:0 0 0 6px color-mix(in srgb,var(--tool-accent) 14%,transparent),0 0 16px var(--tool-accent)}
.tool-refill-preview div{min-width:0}.tool-mini-preview small{display:block;margin-bottom:3px;color:#8090a6;font-size:8px;font-weight:900;letter-spacing:.1em}.tool-mini-preview strong{display:block;overflow:hidden;color:#f6f8fb;font-size:11px;white-space:nowrap;text-overflow:ellipsis}
.tool-preview-status{margin-left:auto;padding:5px 7px;border-radius:999px;background:rgba(34,197,94,.12);color:#8bf0ad;font-size:8.5px;font-weight:800;white-space:nowrap}
.tool-menu-preview{justify-content:space-between;gap:7px;color:#dce6f5;font-size:9px;font-weight:800}.tool-menu-preview i{height:1px;min-width:12px;flex:1;background:linear-gradient(90deg,var(--tool-accent),rgba(255,255,255,.14));position:relative}.tool-menu-preview i:after{content:"";position:absolute;right:-1px;top:-2px;border-width:2.5px 0 2.5px 4px;border-style:solid;border-color:transparent transparent transparent var(--tool-accent)}
.tool-pos-preview{justify-content:space-between;gap:12px}.tool-pos-preview strong{font-size:17px}.tool-pos-preview>span{padding:6px 8px;border-radius:999px;background:color-mix(in srgb,var(--tool-accent) 13%,transparent);color:#76e5d6;font-size:8.5px;font-weight:900;text-transform:uppercase;white-space:nowrap}
.tool-stay-preview{justify-content:space-between;gap:12px}.tool-stay-preview>div{min-width:0}.tool-stay-preview>span{padding:6px 8px;border-radius:999px;background:color-mix(in srgb,var(--tool-accent) 14%,transparent);color:#d8c8ff;font-size:8.5px;font-weight:900;text-transform:uppercase;white-space:nowrap}
.tool-feature-list{display:flex;flex-wrap:wrap;gap:7px;list-style:none;margin:0 0 20px;padding:0}.tool-feature-list li{padding:6px 9px;border:1px solid rgba(255,255,255,.09);border-radius:999px;background:rgba(255,255,255,.035);color:#c7d2e2;font-size:9.5px;font-weight:700}.tool-feature-list li:before{content:"✓";margin-right:5px;color:var(--tool-accent);font-weight:900}
.tool-cta{display:flex;align-items:center;justify-content:space-between;gap:8px;width:100%;min-height:48px;margin-top:auto;padding:0 17px;border:1px solid color-mix(in srgb,var(--tool-accent) 36%,rgba(255,255,255,.1));border-radius:14px;background:linear-gradient(135deg,color-mix(in srgb,var(--tool-accent) 20%,transparent),rgba(255,255,255,.035));color:#fff;font-size:12.5px;font-weight:800;text-decoration:none;transition:background .18s ease,border-color .18s ease,transform .18s ease}
.tool-cta:hover{border-color:var(--tool-accent);background:color-mix(in srgb,var(--tool-accent) 26%,rgba(255,255,255,.04));transform:translateY(-2px)}
.tool-cta .cta-arrow{display:grid;place-items:center;width:26px;height:26px;border-radius:50%;background:var(--tool-accent);color:#07111f;font-size:15px}
@media(prefers-reduced-motion:reduce){.tool-card,.tool-cta{transition:none}.tool-card:hover,.tool-cta:hover{transform:none}}
@media(max-width:1100px){.tools-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:680px){.tools-showcase{padding:64px 0 72px}.tools-showcase .section-heading{margin-bottom:28px;text-align:left}.tools-grid{grid-template-columns:1fr;gap:14px}.tool-card,.tool-card-pos{grid-column:auto;max-width:none;min-height:0;padding:23px}.tool-card h3{min-height:0;font-size:24px}.tool-card>p{min-height:0}.tool-card:after{left:23px;right:23px}}

/* Dual CTA sections */
.business-cta-dark{background:#101114;padding:80px 0;text-align:center;position:relative;overflow:hidden}
.business-cta-dark:before{content:'';position:absolute;inset:0;background:radial-gradient(circle at 20% 20%,rgba(29,78,216,.22),transparent 45%),radial-gradient(circle at 80% 80%,rgba(249,115,22,.14),transparent 40%)}
.business-cta-dark .shell{position:relative}
.business-cta-dark h2{font-family:Manrope,sans-serif;font-weight:800;letter-spacing:-.02em;font-size:clamp(26px,4vw,42px);color:#fff;line-height:1.2;margin:0 0 28px}
.dark-cta-actions{display:flex;justify-content:center;gap:12px;flex-wrap:wrap}
.ghost-light{border:1px solid rgba(255,255,255,.25)!important;background:transparent!important;color:#fff!important}
.ghost-light:hover{background:rgba(255,255,255,.08)!important}

.customer-cta-search{padding:80px 0;text-align:center}
.customer-cta-search h2{font-family:Manrope,sans-serif;font-weight:800;letter-spacing:-.02em;font-size:clamp(26px,4vw,42px);color:var(--ink);margin:0 0 28px}
.cta-search-form{display:flex;gap:10px;max-width:560px;margin:0 auto;background:var(--hero-surface);border:1px solid var(--hero-border);
  border-radius:16px;padding:8px;box-shadow:0 10px 30px rgba(18,24,31,.06)}
.cta-search-form input{flex:1;border:0;background:none;padding:12px 14px;font-size:14px;color:var(--ink);outline:none;cursor:pointer}
.cta-search-form input::placeholder{color:var(--ink-muted)}
.cta-search-form .btn{white-space:nowrap}
@media(max-width:560px){.cta-search-form{flex-direction:column}.cta-search-form input{text-align:center}}

/* Footer v2 */
.g58-footer-v2{background:#101114;color:#c7ccd4;padding:60px 0 0;margin-top:0}
.g58-footer-grid{display:grid;grid-template-columns:1.6fr 1fr 1fr 1fr;gap:36px;padding-bottom:44px;border-bottom:1px solid rgba(255,255,255,.08)}
.footer-brand-col .gravity-main{color:#fff}
.footer-tagline{color:#9aa1ac;font-size:13.5px;line-height:1.6;max-width:280px;margin:16px 0 20px}
.footer-col h5{color:#fff;font-size:12px;text-transform:uppercase;letter-spacing:.06em;margin:0 0 14px}
.footer-col{display:flex;flex-direction:column;gap:10px}
.footer-col a,.footer-col button{background:none;border:0;text-align:left;padding:0;color:#9aa1ac;font-size:13.5px;cursor:pointer;text-decoration:none;font-family:inherit}
.footer-col a:hover,.footer-col button:hover{color:#fff}
.footer-bottom{padding:22px 0;color:#6d7480;font-size:12px}
@media(max-width:900px){.g58-footer-grid{grid-template-columns:1fr 1fr}}
@media(max-width:560px){.g58-footer-grid{grid-template-columns:1fr}}

/* Hero demo: rotation pulse + floating micro-indicators */
.hero-demo{position:relative}
.demo-pulse{animation:demoPulse .6s ease}
@keyframes demoPulse{0%{box-shadow:0 0 0 0 rgba(29,78,216,.35)}100%{box-shadow:0 0 0 14px rgba(29,78,216,0)}}
.hero-float-badge{position:absolute;background:var(--hero-surface,#fff);border:1px solid var(--hero-border,rgba(18,24,31,.1));border-radius:999px;padding:7px 14px;font-size:12px;font-weight:600;color:var(--ink,#12181F);box-shadow:0 10px 24px rgba(18,24,31,.1);opacity:0;pointer-events:none;animation:floatBadgeIn 9s ease-in-out infinite;white-space:nowrap;z-index:3}
.float-badge-1{top:-14px;right:60px;animation-delay:0s}
.float-badge-2{bottom:56px;left:-24px;animation-delay:2.2s}
.float-badge-3{top:130px;right:-28px;animation-delay:4.4s}
.float-badge-4{bottom:-16px;left:140px;animation-delay:6.6s}
@keyframes floatBadgeIn{0%,100%{opacity:0;transform:translateY(6px)}10%,24%{opacity:1;transform:translateY(0)}34%{opacity:0;transform:translateY(-6px)}}
@media(prefers-reduced-motion:reduce){.demo-pulse{animation:none}.hero-float-badge{animation:none;opacity:0}}
@media(max-width:900px){.hero-float-badge{display:none}}

/* Dual-path selector: "What brings you to G58?" */
.dual-path-shell{padding:36px 20px 0}
.dual-path-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}
.dual-path-card{display:flex;flex-direction:column;align-items:flex-start;gap:6px;text-align:left;background:var(--hero-surface,#fff);border:1px solid var(--hero-border,rgba(18,24,31,.1));border-radius:18px;padding:28px 26px;cursor:pointer;font-family:inherit;transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease}
.dual-path-card:hover{transform:translateY(-3px);box-shadow:0 16px 34px rgba(18,24,31,.1);border-color:rgba(29,78,216,.35)}
.dual-path-icon{font-size:26px}
.dual-path-card h3{margin:2px 0 0;font-size:19px;color:var(--ink,#12181F)}
.dual-path-card p{margin:0;color:var(--ink-muted,#5B6472);font-size:14px;line-height:1.5}
.dual-path-cta{margin-top:8px;font-weight:700;color:var(--accent,#1D4ED8);font-size:14px}
@media(max-width:760px){.dual-path-grid{grid-template-columns:1fr}}

/* Live activity: real-data requirement cards */
.live-activity-section{padding:64px 0}
.live-activity-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-top:28px}
.live-activity-card{display:flex;flex-direction:column;gap:10px;background:var(--hero-surface,#fff);border:1px solid var(--hero-border,rgba(18,24,31,.1));border-radius:16px;padding:20px}
.live-activity-top{display:flex;align-items:center;justify-content:space-between;gap:8px}
.live-activity-category{font-size:11.5px;font-weight:700;letter-spacing:.03em;text-transform:uppercase;color:var(--accent,#1D4ED8)}
.live-status-pill{font-size:11px;font-weight:700;color:#0a7d3c;background:rgba(16,163,74,.12);border-radius:999px;padding:3px 10px}
.live-activity-card h3{margin:0;font-size:16.5px;color:var(--ink,#12181F);line-height:1.3}
.live-activity-meta{display:flex;flex-direction:column;gap:4px;font-size:13px;color:var(--ink-muted,#5B6472)}
.live-activity-foot{display:flex;align-items:center;justify-content:space-between;font-size:12.5px;color:var(--ink-muted,#5B6472);border-top:1px solid var(--hero-border,rgba(18,24,31,.1));padding-top:10px}
.live-activity-cta{align-self:flex-start;background:none;border:0;padding:0;font-family:inherit;font-weight:700;font-size:13.5px;color:var(--accent,#1D4ED8);cursor:pointer}
.live-activity-empty{grid-column:1/-1;text-align:center;padding:38px 20px;color:var(--ink-muted,#5B6472);background:var(--hero-surface,#fff);border:1px solid var(--hero-border,rgba(18,24,31,.1));border-radius:16px;display:flex;flex-direction:column;align-items:center;gap:14px}
@media(max-width:900px){.live-activity-grid{grid-template-columns:1fr 1fr}}
@media(max-width:600px){.live-activity-grid{grid-template-columns:1fr}}

/* Business card promotion section */
.card-promo-section{padding:60px 0}
.card-promo-shell{display:grid;grid-template-columns:1.1fr .9fr;gap:40px;align-items:center;background:var(--hero-surface,#fff);border:1px solid var(--hero-border,rgba(18,24,31,.1));border-radius:20px;padding:44px}
.card-promo-copy h2{margin:6px 0 10px;font-size:clamp(24px,3vw,32px)}
.card-promo-flow{display:flex;align-items:center;justify-content:center;gap:12px}
.card-promo-step{display:flex;flex-direction:column;align-items:center;gap:8px;background:var(--hero-bg,#F5F4EF);border:1px solid var(--hero-border,rgba(18,24,31,.1));border-radius:14px;padding:18px 14px;min-width:96px}
.card-promo-icon{font-size:22px}
.card-promo-step small{font-size:12px;color:var(--ink-muted,#5B6472);font-weight:600}
.card-promo-arrow{color:var(--ink-muted,#5B6472);font-size:16px}
@media(max-width:820px){.card-promo-shell{grid-template-columns:1fr;padding:30px}.card-promo-flow{margin-top:8px}}
@media(max-width:520px){.card-promo-flow{flex-direction:column}.card-promo-arrow{transform:rotate(90deg)}}

/* Home search: link-style secondary action */
.cta-search-hint{margin:14px 0 0;font-size:13.5px;color:var(--ink-muted,#5B6472)}
.cta-search-hint .link-btn{background:none;border:0;padding:0;font-family:inherit;font-size:inherit;color:var(--accent,#1D4ED8);font-weight:700;cursor:pointer;text-decoration:underline}

/* ============ CUSTOMER WALL PREMIUM REDESIGN (scoped to .g58-mode-customer) ============ */
.cw-filter-group{display:contents}
.cw-header,.cw-stats,.cw-sidebar,.cw-mobile-filters-btn,.cw-clear-chip{display:none}
.g58-mode-customer{background:var(--hero-bg,#F5F4EF)}
.g58-mode-customer .wall-header{display:none}
.g58-mode-customer .cw-header{display:flex;align-items:flex-end;justify-content:space-between;gap:16px;flex-wrap:wrap;margin-bottom:18px}
.g58-mode-customer .cw-header-left h2{margin:0 0 4px;font-family:Manrope,sans-serif;font-size:clamp(22px,3vw,30px);letter-spacing:-.03em;color:var(--ink,#12181F)}
.g58-mode-customer .cw-header-left p{margin:0;color:var(--ink-muted,#5B6472);font-size:14px}
.g58-mode-customer .cw-header-right{display:flex;gap:10px;flex-wrap:wrap}
.g58-mode-customer .cw-location-pill,.g58-mode-customer .cw-refresh-pill,.g58-mode-customer .cw-help-pill{background:var(--hero-surface,#fff);border:1px solid var(--hero-border,rgba(18,24,31,.1));border-radius:999px;padding:9px 16px;font-size:13.5px;font-weight:600;color:var(--ink,#12181F);cursor:pointer;font-family:inherit}
.g58-mode-customer .cw-location-pill:hover,.g58-mode-customer .cw-refresh-pill:hover{border-color:var(--accent,#1D4ED8)}

.g58-mode-customer .cw-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:12px;margin-bottom:18px}
.cw-stat{background:var(--hero-surface,#fff);border:1px solid var(--hero-border,rgba(18,24,31,.1));border-radius:14px;padding:14px 16px}
.cw-stat strong{display:block;font-size:24px;color:var(--ink,#12181F);line-height:1.1}
.cw-stat small{color:var(--ink-muted,#5B6472);font-size:12.5px;font-weight:600}

.g58-mode-customer #locationNotice{background:var(--hero-surface,#fff)!important;border-color:var(--hero-border,rgba(18,24,31,.1))!important;color:var(--ink-muted,#5B6472)!important;border-radius:14px!important}
.g58-mode-customer #locationNotice.ready{background:rgba(16,163,74,.08)!important;border-color:rgba(16,163,74,.25)!important;color:#0a7d3c!important}
.g58-mode-customer #locationNotice.warning{background:rgba(217,119,6,.08)!important;border-color:rgba(217,119,6,.25)!important;color:#92400e!important}

.g58-mode-customer .cw-filter-group{display:flex;flex-direction:column;gap:10px;margin-bottom:20px}
.g58-mode-customer .state-district-filter{background:transparent!important;border:0!important;padding:0!important;margin:0!important;display:flex;flex-wrap:wrap;order:2}
.g58-mode-customer .state-district-filter label{display:none}
.g58-mode-customer .state-district-filter select{width:auto!important;background:var(--hero-surface,#fff)!important;color:var(--ink,#12181F)!important;border:1px solid var(--hero-border,rgba(18,24,31,.1))!important;border-radius:999px!important;padding:9px 14px!important;font-size:13.5px;font-weight:600;appearance:none;-webkit-appearance:none;cursor:pointer}
.g58-mode-customer .filters{order:3;display:flex;flex-wrap:wrap;gap:10px;margin:0}
.g58-mode-customer .filters input{flex-basis:100%;min-width:0;background:var(--hero-surface,#fff);border:1px solid var(--hero-border,rgba(18,24,31,.1));color:var(--ink,#12181F);border-radius:16px;padding:16px 18px 16px 46px;font-size:15px;order:1;background-image:none;box-shadow:0 1px 2px rgba(18,24,31,.03)}
.g58-mode-customer .filters{position:relative}
.g58-mode-customer .filters::before{content:"🔍";position:absolute;left:16px;top:15px;font-size:16px;order:1;pointer-events:none}
.g58-mode-customer .filters select{background:var(--hero-surface,#fff)!important;color:var(--ink,#12181F)!important;border:1px solid var(--hero-border,rgba(18,24,31,.1))!important;border-radius:999px!important;padding:9px 14px!important;font-size:13.5px;font-weight:600;order:2;appearance:none;-webkit-appearance:none;cursor:pointer}
.g58-mode-customer .cw-clear-chip{display:inline-flex;order:2;background:transparent;border:1px dashed var(--hero-border,rgba(18,24,31,.2));color:var(--ink-muted,#5B6472);border-radius:999px;padding:9px 14px;font-size:13px;font-weight:600;cursor:pointer;font-family:inherit}
.g58-mode-customer .cw-clear-chip:hover{border-color:var(--accent,#1D4ED8);color:var(--accent,#1D4ED8)}

.g58-mode-customer .cw-body{display:flex;align-items:flex-start;gap:24px}
.g58-mode-customer .wall{flex:1 1 66%;min-width:0;display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
.g58-mode-customer .cw-sidebar{display:block;flex:0 0 32%;max-width:340px;position:sticky;top:100px}

/* Requirement (opportunity) card */
.req-card{position:relative;overflow:hidden;background:linear-gradient(145deg,var(--hero-surface,#fff),rgba(248,250,252,.96));border:1px solid var(--hero-border,rgba(18,24,31,.1));border-radius:22px;padding:22px;min-height:380px;display:flex;flex-direction:column;box-shadow:0 18px 40px rgba(18,24,31,.08),inset 0 1px 0 rgba(255,255,255,.85);transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease}
.req-card::before{content:"";position:absolute;left:0;top:0;width:100%;height:5px;background:linear-gradient(90deg,#2563eb,#7c3aed,#f97316)}
.req-card.owner::before{background:linear-gradient(90deg,#7c3aed,#a855f7,#f97316)}
.req-card:hover{transform:translateY(-5px);box-shadow:0 24px 50px rgba(18,24,31,.13),0 0 0 1px rgba(37,99,235,.08);border-color:rgba(37,99,235,.22)}
.req-top{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:8px}
.req-status-stack{display:flex;align-items:flex-end;gap:6px;flex-direction:column;min-width:0}
.req-category{font-size:11.5px;font-weight:700;letter-spacing:.03em;text-transform:uppercase;color:var(--accent,#1D4ED8)}
.req-owner-badge{font-size:11px;font-weight:700;letter-spacing:.02em;text-transform:uppercase;color:#7c3aed;background:rgba(124,58,237,.1);border-radius:999px;padding:4px 10px}
.req-status{display:inline-flex;align-items:center;gap:6px;font-size:12px;font-weight:700;border-radius:999px;padding:4px 10px 4px 8px}
.req-status i{width:7px;height:7px;border-radius:50%;display:inline-block}
.req-status.open{color:#0a7d3c;background:rgba(16,163,74,.1)}
.req-status.open i{background:#16a34a}
.req-status.almost{color:#9a5b00;background:rgba(217,119,6,.12)}
.req-status.almost i{background:#d97706}
.req-status.full{color:#4b5563;background:rgba(75,85,99,.12)}
.req-status.full i{background:#6b7280}
.req-title{margin:0 0 6px;font-size:19px;line-height:1.3;color:var(--ink,#12181F)}
.req-meta-row{display:flex;flex-wrap:wrap;gap:12px;font-size:13px;color:var(--ink-muted,#5B6472);margin-bottom:10px}
.req-desc{margin:0 0 14px;color:var(--ink-muted,#5B6472);font-size:14px;line-height:1.55;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.req-bottom-row{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-bottom:12px;flex-wrap:wrap}
.req-budget strong{display:block;font-size:18px;color:var(--ink,#12181F)}
.req-budget small{color:var(--ink-muted,#5B6472);font-size:11.5px;font-weight:600}
.req-bid-progress{text-align:right}
.req-ring{--pct:0;width:44px;height:44px;border-radius:50%;margin-left:auto;background:conic-gradient(var(--accent,#1D4ED8) calc(var(--pct) * 1%),rgba(18,24,31,.1) 0);display:flex;align-items:center;justify-content:center;position:relative;flex-shrink:0}
.req-ring::before{content:"";position:absolute;inset:4px;border-radius:50%;background:var(--hero-surface,#fff)}
.req-ring span{position:relative;font-size:10.5px;font-weight:800;color:var(--ink,#12181F)}
.req-expiry-badge{position:static;display:inline-flex;font-size:10.5px;font-weight:700;color:var(--ink-muted,#5B6472);background:var(--hero-bg,#F5F4EF);border:1px solid var(--hero-border,rgba(18,24,31,.08));border-radius:999px;padding:4px 10px;white-space:nowrap}
.req-expiry-badge.urgent{color:#b91c1c;background:rgba(220,38,38,.08);border-color:rgba(220,38,38,.2)}
.req-bid-progress small{color:var(--ink-muted,#5B6472);font-size:11.5px;font-weight:600}
.req-scarcity{font-size:12px;font-weight:700;color:#b45309;background:rgba(217,119,6,.1);border-radius:8px;padding:6px 10px;margin-bottom:12px;display:inline-block}
.req-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:auto}
.req-actions .btn{flex:1;min-width:130px;border-radius:12px;font-weight:600}
.req-actions .btn.ghost{background:transparent;border:1px solid var(--hero-border,rgba(18,24,31,.14));color:var(--ink,#12181F)}
.req-actions .btn.primary{background:var(--accent,#1D4ED8);border:0;color:#fff}
.req-actions .btn:disabled{opacity:.55;cursor:not-allowed}
.req-arrow{display:inline-block;transition:transform .15s ease}
.req-card:hover .req-arrow{transform:translateX(3px)}
.req-unlock-row{display:flex;align-items:center;gap:8px;margin-top:12px;font-size:12px;color:var(--ink-muted,#5B6472);cursor:pointer}
.req-share-row{display:flex;gap:14px;margin-top:12px}
.req-link-btn{background:none;border:0;padding:0;font-family:inherit;font-size:12.5px;font-weight:600;color:var(--ink-muted,#5B6472);cursor:pointer;text-decoration:underline}
.req-link-btn:hover{color:var(--accent,#1D4ED8)}
.req-owner-unlock-link{color:#7c3aed}
.req-card .share-status{font-size:11.5px;color:var(--ink-muted,#5B6472);margin-top:4px}

/* Skeleton loading */
.req-skeleton{pointer-events:none}
.sk-line{height:12px;border-radius:6px;background:linear-gradient(90deg,rgba(18,24,31,.06) 25%,rgba(18,24,31,.12) 37%,rgba(18,24,31,.06) 63%);background-size:400% 100%;animation:skShimmer 1.4s ease infinite;margin-bottom:10px}
.sk-w40{width:40%}.sk-w60{width:60%}.sk-w80{width:80%}.sk-w100{width:100%}.sk-w30{width:30%}
.sk-h20{height:20px}
.sk-row{display:flex;justify-content:space-between;gap:14px}
@keyframes skShimmer{0%{background-position:100% 0}100%{background-position:0 0}}

/* Empty states */
.req-empty{grid-column:1/-1;text-align:center;padding:60px 24px;background:var(--hero-surface,#fff);border:1px solid var(--hero-border,rgba(18,24,31,.1));border-radius:18px;display:flex;flex-direction:column;align-items:center;gap:12px}
.req-empty-icon{font-size:34px}
.req-empty h3{margin:0;color:var(--ink,#12181F);font-size:19px}
.req-empty p{margin:0;color:var(--ink-muted,#5B6472);font-size:14px;max-width:360px}
.req-empty-actions{display:flex;gap:10px;margin-top:6px;flex-wrap:wrap;justify-content:center}

/* Sidebar */
.cw-sidebar-card{background:var(--hero-surface,#fff);border:1px solid var(--hero-border,rgba(18,24,31,.1));border-radius:16px;padding:18px;margin-bottom:16px}
.cw-sidebar-card h4{margin:0 0 12px;font-size:13px;text-transform:uppercase;letter-spacing:.03em;color:var(--ink-muted,#5B6472)}
.cw-market-loc{font-size:13px;color:var(--ink-muted,#5B6472);margin-bottom:10px}
.cw-market-stat{display:flex;justify-content:space-between;align-items:baseline;padding:8px 0;border-top:1px solid var(--hero-border,rgba(18,24,31,.08))}
.cw-market-stat:first-of-type{border-top:0}
.cw-market-stat strong{font-size:16px;color:var(--ink,#12181F)}
.cw-market-stat small{color:var(--ink-muted,#5B6472);font-size:12.5px}
.cw-cat-list{display:flex;flex-direction:column;gap:2px}
.cw-cat-chip{background:none;border:0;text-align:left;padding:9px 4px;font-family:inherit;font-size:13.5px;color:var(--ink,#12181F);cursor:pointer;border-radius:8px;display:flex;justify-content:space-between}
.cw-cat-chip:hover{background:rgba(29,78,216,.06);color:var(--accent,#1D4ED8)}
.cw-cat-chip small{color:var(--ink-muted,#5B6472)}

/* Requirement detail panel */
.req-detail-overlay{position:fixed;inset:0;background:rgba(15,20,28,.5);z-index:410;opacity:0;pointer-events:none;transition:opacity .2s ease}
.req-detail-overlay.open{opacity:1;pointer-events:auto}
.req-detail-panel{position:fixed;top:0;right:0;bottom:0;width:min(480px,100%);background:var(--hero-surface,#fff);z-index:411;transform:translateX(100%);transition:transform .28s cubic-bezier(.2,.8,.2,1);overflow-y:auto;padding:26px 26px 100px}
#bidModal,#bidSuccessModal,#acceptConfirmModal,#acceptedAnimationModal{z-index:500!important}
.req-detail-panel.open{transform:translateX(0)}
.req-detail-close{position:absolute;top:18px;right:18px;width:34px;height:34px;border-radius:50%;border:1px solid var(--hero-border,rgba(18,24,31,.12));background:var(--hero-surface,#fff);font-size:18px;color:var(--ink,#12181F);cursor:pointer}
.req-detail-category{font-size:12px;font-weight:700;letter-spacing:.03em;text-transform:uppercase;color:var(--accent,#1D4ED8)}
.req-detail-title{margin:6px 0 8px;font-size:24px;line-height:1.25;color:var(--ink,#12181F);padding-right:34px}
.req-detail-meta{display:flex;flex-wrap:wrap;gap:14px;font-size:13.5px;color:var(--ink-muted,#5B6472);margin-bottom:10px}
.req-detail-section{margin-top:22px}
.req-detail-section h4{margin:0 0 8px;font-size:12.5px;text-transform:uppercase;letter-spacing:.03em;color:var(--ink-muted,#5B6472)}
.req-detail-section p{margin:0;color:var(--ink,#12181F);font-size:14.5px;line-height:1.6}
.req-detail-budget{font-size:24px;font-weight:700;color:var(--ink,#12181F)}
.req-detail-sticky{position:sticky;bottom:0;margin-top:28px;padding:16px 0;background:var(--hero-surface,#fff);border-top:1px solid var(--hero-border,rgba(18,24,31,.1))}
.req-detail-sticky-note{margin:8px 0 0;font-size:12.5px;color:var(--ink-muted,#5B6472);text-align:center}

/* Offer comparison (owner view) */
.req-compare-heading{margin:22px 0 4px;font-size:19px;color:var(--ink,#12181F)}
.req-compare-sub{margin:0 0 18px;color:var(--ink-muted,#5B6472);font-size:13.5px}
.req-offer-empty{padding:30px 10px;text-align:center;color:var(--ink-muted,#5B6472);font-size:14px}
.req-offer-list{display:flex;flex-direction:column;gap:14px}
.req-offer-card{border:1px solid var(--hero-border,rgba(18,24,31,.1));border-radius:14px;padding:16px}
.req-offer-num{font-size:11px;font-weight:700;letter-spacing:.04em;color:var(--ink-muted,#5B6472)}
.req-offer-card h4{margin:4px 0 6px;font-size:17px;color:var(--ink,#12181F)}
.req-offer-price{font-size:20px;font-weight:700;color:var(--ink,#12181F)}
.req-offer-time{font-size:13px;color:var(--ink-muted,#5B6472);margin-bottom:8px}
.req-offer-proposal{font-size:13.5px;color:var(--ink,#12181F);line-height:1.55;margin:0 0 10px}
.req-offer-contact{font-size:12px;color:var(--ink-muted,#5B6472);margin-bottom:12px}
.req-offer-actions{display:flex;gap:10px}
.req-offer-actions .btn{flex:1;border-radius:10px;font-weight:600}
.req-compare-table-wrap{overflow-x:auto;margin-top:20px}
.req-compare-table{width:100%;border-collapse:collapse;font-size:13px}
.req-compare-table th,.req-compare-table td{border:1px solid var(--hero-border,rgba(18,24,31,.1));padding:9px 12px;text-align:left;white-space:nowrap}
.req-compare-table th{background:var(--hero-bg,#F5F4EF);color:var(--ink-muted,#5B6472);font-weight:700}
body.req-detail-lock{overflow:hidden}

/* Bid modal, success, accept confirm, accepted animation — light premium theme */
#bidModal .modal-card,#bidSuccessModal .modal-card,#acceptConfirmModal .modal-card,#acceptedAnimationModal .modal-card,#businessQrModal .modal-card{background:var(--hero-surface,#fff)!important;border-color:var(--hero-border,rgba(18,24,31,.1))!important;color:var(--ink,#12181F);position:relative}
#bidModal .modal-card,#acceptConfirmModal .modal-card,#acceptedAnimationModal .modal-card{width:min(520px,100%)}
.bid-modal-card .close,.accept-confirm-card .close,.accepted-animation-card .close,#bidSuccessModal .close{position:absolute;top:18px;right:18px;color:var(--ink-muted,#5B6472)!important}
.bid-modal-label{display:block;font-size:11.5px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--accent,#1D4ED8);margin-bottom:6px}
.bid-modal-heading{margin:0 0 16px;font-size:24px;color:var(--ink,#12181F)}
.bid-req-summary{background:var(--hero-bg,#F5F4EF);border:1px solid var(--hero-border,rgba(18,24,31,.1));border-radius:14px;padding:14px 16px;margin-bottom:18px}
.bid-req-summary strong{display:block;font-size:15px;color:var(--ink,#12181F)}
.bid-req-summary>span{font-size:12.5px;color:var(--ink-muted,#5B6472)}
.bid-req-summary-row{display:flex;justify-content:space-between;margin-top:10px;padding-top:10px;border-top:1px solid var(--hero-border,rgba(18,24,31,.1))}
.bid-req-summary-row small{display:block;color:var(--ink-muted,#5B6472);font-size:11px}
.bid-req-summary-row strong{font-size:14px}
#bidModal .field label{color:var(--ink,#12181F)!important;font-size:12.5px;font-weight:700}
#bidModal .field input,#bidModal .field textarea{background:var(--hero-surface,#fff)!important;border:1px solid var(--hero-border,rgba(18,24,31,.14))!important;color:var(--ink,#12181F)!important;border-radius:12px!important}
.bid-amount-wrap{display:flex;align-items:center;border:1px solid var(--hero-border,rgba(18,24,31,.14));border-radius:12px;background:var(--hero-surface,#fff);padding:0 4px 0 14px}
.bid-amount-prefix{font-size:22px;font-weight:700;color:var(--ink-muted,#5B6472)}
#bidModal .field .bid-amount-wrap input{border:0!important;font-size:22px!important;font-weight:700;padding:14px 10px!important;background:transparent!important}
#bidModal .field-help{color:var(--ink-muted,#5B6472)!important}
.bid-char-count{display:block;text-align:right}
.bid-lock-warning{display:flex;gap:12px;align-items:flex-start;background:rgba(29,78,216,.06);border:1px solid rgba(29,78,216,.18);border-radius:12px;padding:12px 14px}
.bid-lock-icon{font-size:18px}
.bid-lock-warning strong{display:block;color:var(--ink,#12181F);font-size:13.5px;margin-bottom:2px}
.bid-lock-warning p{margin:0;color:var(--ink-muted,#5B6472);font-size:12.5px}

.bid-success-card,.accept-confirm-card,.accepted-animation-card{text-align:center}
.bid-success-icon,.accepted-check{width:56px;height:56px;border-radius:50%;background:rgba(16,163,74,.12);color:#16a34a;font-size:28px;display:flex;align-items:center;justify-content:center;margin:6px auto 14px;animation:checkPop .4s cubic-bezier(.2,1.4,.4,1)}
@keyframes checkPop{0%{transform:scale(0)}70%{transform:scale(1.15)}100%{transform:scale(1)}}
.bid-success-card h2,.accepted-animation-card h2{margin:0 0 6px;font-size:22px;color:var(--ink,#12181F)}
.bid-success-sub{margin:0 0 18px;color:var(--ink-muted,#5B6472);font-size:14px}
.bid-success-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-bottom:16px}
.bid-success-stats div{background:var(--hero-bg,#F5F4EF);border-radius:12px;padding:12px 8px}
.bid-success-stats strong{display:block;font-size:16px;color:var(--ink,#12181F)}
.bid-success-stats small{color:var(--ink-muted,#5B6472);font-size:11px}
.bid-success-count-note{font-size:13px;color:var(--ink-muted,#5B6472);margin:0 0 12px}
.bid-success-note{background:var(--hero-bg,#F5F4EF);border-radius:12px;padding:12px 14px;font-size:13px;color:var(--ink-muted,#5B6472);margin-bottom:16px}

.accept-confirm-card h2{margin:6px 0 16px;font-size:22px;color:var(--ink,#12181F)}
.accept-confirm-summary{background:var(--hero-bg,#F5F4EF);border-radius:14px;padding:16px;margin-bottom:14px}
.accept-confirm-summary strong{display:block;font-size:17px;color:var(--ink,#12181F);margin-bottom:4px}
.accept-confirm-row{display:flex;justify-content:center;gap:16px;color:var(--ink-muted,#5B6472);font-size:13.5px}
.accept-confirm-note{color:var(--ink-muted,#5B6472);font-size:13.5px;margin:0 0 18px}
.accept-confirm-actions{display:flex;gap:10px}
.accept-confirm-actions .btn{flex:1;border-radius:12px}

.accepted-summary{margin:0 0 18px}
.accepted-summary strong{display:block;font-size:18px;color:var(--ink,#12181F)}
.accepted-summary-row{display:flex;justify-content:center;gap:16px;color:var(--ink-muted,#5B6472);font-size:13.5px;margin-top:4px}
.accepted-connected-heading{margin:0 0 14px;font-size:16px;color:var(--ink,#12181F)}
.accepted-contact-actions{display:flex;flex-direction:column;gap:10px;margin-bottom:14px}
.accepted-contact-actions .btn{border-radius:12px;text-decoration:none}

/* Responsive */
@media(max-width:980px){
  .g58-mode-customer .cw-body{flex-direction:column}
  .g58-mode-customer .cw-sidebar{max-width:none;position:static;width:100%}
  .g58-mode-customer .cw-sidebar-card{display:none}
  .req-detail-panel{width:100%}
}
@media(max-width:640px){
  .g58-mode-customer .cw-header{flex-direction:column;align-items:flex-start}
  .g58-mode-customer .filters,.g58-mode-customer .state-district-filter{flex-wrap:nowrap;overflow-x:auto;padding-bottom:4px;-webkit-overflow-scrolling:touch}
  .g58-mode-customer .filters select,.g58-mode-customer .state-district-filter select,.g58-mode-customer .cw-clear-chip{flex:0 0 auto;white-space:nowrap}
  .req-title{font-size:17px}
  .g58-mode-customer .wall{grid-template-columns:1fr}
  .req-card{min-height:0;padding:20px}
  .bid-success-stats{grid-template-columns:1fr}
}

/* ============ BUSINESS WALL PREMIUM REDESIGN (scoped to .g58-mode-business) ============ */
.bw-header,.bw-results-head,.bw-category-chips,.bw-sidebar,.bw-only{display:none}
.g58-mode-business{background:var(--hero-bg,#F5F4EF)}
.g58-mode-business .wall-header,.g58-mode-business .cw-header{display:none}
.g58-mode-business .bw-header{display:block;margin-bottom:12px}
.bw-header-top{display:flex;align-items:center;justify-content:space-between;gap:14px;flex-wrap:wrap;margin-bottom:6px}
.bw-eyebrow{font-size:11px;font-weight:700;letter-spacing:.08em;color:var(--accent,#1D4ED8)}
.bw-header-right{display:flex;gap:10px;flex-wrap:wrap;align-items:center}
.bw-header h2{margin:2px 0 4px;font-family:Manrope,sans-serif;font-size:clamp(20px,2.4vw,26px);letter-spacing:-.03em;color:var(--ink,#12181F);line-height:1.15}
.bw-header p{margin:0;color:var(--ink-muted,#5B6472);font-size:13.5px;max-width:620px}
.g58-mode-business .cw-stats{display:none}

.g58-mode-business .bw-results-head{display:block;margin-bottom:10px}
.bw-results-left strong{display:block;font-size:15px;color:var(--ink,#12181F)}
.bw-results-left small{color:var(--ink-muted,#5B6472);font-size:12px}

.g58-mode-business .bw-category-chips{display:flex;gap:8px;overflow-x:auto;padding-bottom:6px;margin-bottom:10px;-webkit-overflow-scrolling:touch}
.bw-chip{flex:0 0 auto;background:var(--hero-surface,#fff);border:1px solid var(--hero-border,rgba(18,24,31,.1));border-radius:999px;padding:7px 14px;font-size:12.5px;font-weight:600;color:var(--ink,#12181F);cursor:pointer;font-family:inherit;white-space:nowrap}
.bw-chip.active{background:var(--accent,#1D4ED8);border-color:var(--accent,#1D4ED8);color:#fff}
.bw-chip:hover{border-color:var(--accent,#1D4ED8)}

.g58-mode-business #locationNotice{background:var(--hero-surface,#fff)!important;border-color:var(--hero-border,rgba(18,24,31,.1))!important;color:var(--ink-muted,#5B6472)!important;border-radius:14px!important;padding:9px 14px!important;margin-bottom:10px!important;font-size:12.5px!important}
.g58-mode-business #locationNotice.ready{background:rgba(16,163,74,.08)!important;border-color:rgba(16,163,74,.25)!important;color:#0a7d3c!important}
.g58-mode-business #locationNotice.warning{background:rgba(217,119,6,.08)!important;border-color:rgba(217,119,6,.25)!important;color:#92400e!important}

/* Shared premium filter chrome for both walls */
.g58-mode-business .cw-filter-group{display:flex;flex-direction:column;gap:8px;margin-bottom:14px}
.g58-mode-business .state-district-filter{background:transparent!important;border:0!important;padding:0!important;margin:0!important;display:none}
.g58-mode-business .business-national-toggle{order:1;background:var(--hero-surface,#fff)!important;border:1px solid var(--hero-border,rgba(18,24,31,.1))!important;border-radius:14px!important;padding:12px 14px!important}
.g58-mode-business .business-national-toggle strong{color:var(--ink,#12181F)}
.g58-mode-business .business-national-toggle small{color:var(--ink-muted,#5B6472)}
.g58-mode-business .filters{order:2;display:flex;flex-wrap:wrap;gap:10px;margin:0;position:relative}
.g58-mode-business .filters input{flex-basis:100%;min-width:0;background:var(--hero-surface,#fff);border:1px solid var(--hero-border,rgba(18,24,31,.1));color:var(--ink,#12181F);border-radius:16px;padding:16px 18px 16px 46px;font-size:15px;order:1;box-shadow:0 1px 2px rgba(18,24,31,.03)}
.g58-mode-business .filters::before{content:"🔍";position:absolute;left:16px;top:15px;font-size:16px;pointer-events:none}
.g58-mode-business .filters select{background:var(--hero-surface,#fff)!important;color:var(--ink,#12181F)!important;border:1px solid var(--hero-border,rgba(18,24,31,.1))!important;border-radius:999px!important;padding:9px 14px!important;font-size:13.5px;font-weight:600;order:2;appearance:none;-webkit-appearance:none;cursor:pointer}
.g58-mode-business .cw-clear-chip.bw-only{display:inline-flex;order:2;background:transparent;border:1px dashed var(--hero-border,rgba(18,24,31,.2));color:var(--ink-muted,#5B6472);border-radius:999px;padding:9px 14px;font-size:13px;font-weight:600;cursor:pointer;font-family:inherit}
.g58-mode-business .cw-clear-chip.bw-only:hover{border-color:var(--accent,#1D4ED8);color:var(--accent,#1D4ED8)}
.g58-mode-business select#budgetFilter,.g58-mode-business .cw-clear-chip:not(.bw-only){display:none}
.g58-mode-customer select#areaFilter,.g58-mode-customer select#ratingFilter,.g58-mode-customer select#experienceFilter,.g58-mode-customer .cw-clear-chip.bw-only{display:none}

.g58-mode-business .cw-body{display:flex;align-items:flex-start;gap:24px}
.g58-mode-business .wall{flex:1 1 66%;min-width:0;display:grid!important;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:18px}
.g58-mode-business .bw-sidebar{display:block;flex:0 0 32%;max-width:340px;position:sticky;top:100px}
.bw-cross-link p{margin:0 0 12px;color:var(--ink-muted,#5B6472);font-size:13px;line-height:1.5}

.g58-mode-business .cw-location-pill,.g58-mode-business .cw-refresh-pill,.g58-mode-business .cw-help-pill{background:var(--hero-surface,#fff);border:1px solid var(--hero-border,rgba(18,24,31,.1));border-radius:999px;padding:9px 16px;font-size:13.5px;font-weight:600;color:var(--ink,#12181F);cursor:pointer;font-family:inherit}
.bw-create-btn{border-radius:999px!important;padding:9px 18px!important}

/* Business opportunity/profile card (skeleton loading state only) */
.biz-card{position:relative;background:var(--hero-surface,#fff);border:1px solid var(--hero-border,rgba(18,24,31,.1));border-radius:16px;padding:16px 18px;transition:transform .16s ease,box-shadow .16s ease,border-color .16s ease}
.biz-card:hover{transform:translateY(-3px);box-shadow:0 14px 30px rgba(18,24,31,.08);border-color:rgba(18,24,31,.16)}
.biz-card.owner{border-color:rgba(124,58,237,.35)}
.biz-fav-btn{background:var(--hero-surface,#fff);border:1px solid var(--hero-border,rgba(18,24,31,.12));border-radius:50%;width:32px;height:32px;font-size:16px;line-height:1;color:#c4425c;cursor:pointer;display:flex;align-items:center;justify-content:center}
.biz-fav-btn.active{background:rgba(196,66,92,.1);border-color:rgba(196,66,92,.3)}
.rating-stars{display:inline-flex;gap:1px;color:rgba(18,24,31,.18);font-size:13px}
.rating-stars .filled{color:#f5a623}
.biz-owner-badge{display:inline-block;font-size:10.5px;font-weight:700;letter-spacing:.03em;text-transform:uppercase;color:#7c3aed;background:rgba(124,58,237,.1);border-radius:999px;padding:4px 10px;margin-bottom:8px}

/* Digital business card as the Business Wall grid tile */
.biz-card-wall-item{display:flex;justify-content:center}
.biz-card-wall-item .biz-card-glass{width:100%;max-width:340px}

/* Keep Business Wall cards short and scannable: view pill, name/rating, QR,
   WhatsApp + Instagram only. The expanded profile (with header, quick actions,
   contact, save, location and share controls) is what the user reaches via View. */
.biz-card-wall-item .biz-card-glass{padding:14px 16px 12px;border-radius:22px;box-shadow:0 16px 38px rgba(18,24,31,.12)}
.biz-card-wall-item .biz-card-glass::before{border-radius:23px}
.biz-card-wall-item .biz-card-view-pill{min-width:170px;margin:0 auto 8px;padding:9px 24px;font-size:15px;font-weight:900;letter-spacing:.14em;color:var(--ink,#12181F);box-shadow:0 5px 16px rgba(124,58,237,.12)}
.biz-card-wall-item .biz-card-profile{margin-bottom:8px}
.biz-card-wall-item .biz-card-name{font-size:20px}
.biz-card-wall-item .biz-card-category{margin-bottom:5px;font-size:10px}
.biz-card-wall-item .biz-card-rating{gap:4px}
.biz-card-wall-item .biz-card-qr-block{margin-bottom:8px}
.biz-card-wall-item .biz-card-qr-wrap{padding:8px;border-radius:14px;box-shadow:0 8px 20px rgba(18,24,31,.08)}
.biz-card-wall-item .biz-card-qr-img{width:100px;height:100px}
.biz-card-wall-item .biz-card-qr-logo{width:23px;height:23px;border-radius:7px}
.biz-card-wall-item .biz-card-qr-logo svg{width:14px;height:14px}
.biz-card-wall-item .biz-card-popup-retention{margin-top:8px;font-size:9.5px}
.biz-card-wall-item .biz-card-popup-retention small{font-size:8px}
.biz-card-wall-item .biz-card-primary-actions{gap:8px;margin-bottom:0}
.biz-card-wall-item .biz-card-cta{padding:10px 8px;font-size:12px}
.biz-card-wall-item .biz-card-glass-head,
.biz-card-wall-item .biz-card-tagline-pill,
.biz-card-wall-item .biz-card-qr-label,
.biz-card-wall-item .biz-card-qr-caption,
.biz-card-wall-item .biz-card-quickrow,
.biz-card-wall-item .biz-card-footer,
.biz-card-wall-item .biz-card-tagline,
.biz-card-wall-item .share-status{display:none}

/* Business skeleton reuses .sk-line etc from Customer Wall */
.biz-skeleton{pointer-events:none}

/* Full business profile (floating panel) */
#floatingBusinessWrap .floating-close{background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.25);backdrop-filter:blur(10px);border-radius:50%;width:38px;height:38px;font-size:19px}
.business-floating-stage{width:min(760px,100%);max-height:96vh;overflow-y:auto;overflow-x:hidden;perspective:none}
.biz-profile{background:transparent;padding:0}
.biz-popup-layout{display:grid;grid-template-columns:92px minmax(0,460px) 92px;align-items:center;justify-content:center;gap:14px}
.biz-popup-side-rail{display:grid;gap:14px;position:relative;z-index:3}
.biz-popup-side-action{
  min-height:126px;padding:12px 7px;border:1px solid rgba(116,93,255,.68);border-radius:18px;
  background:linear-gradient(155deg,rgba(19,27,72,.96),rgba(7,11,35,.98));color:#fff;text-decoration:none;
  display:flex;flex-direction:column;align-items:center;justify-content:center;gap:13px;text-align:center;font-family:inherit;
  box-shadow:0 0 18px rgba(52,93,255,.2),0 0 12px rgba(210,66,255,.12);cursor:pointer
}
.biz-popup-side-action span{width:44px;height:44px;display:grid;place-items:center;color:#6b8cff;filter:drop-shadow(0 0 7px #2f74ff)}
.biz-popup-side-action svg{width:42px;height:42px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.biz-popup-side-action strong{font-size:11px;line-height:1.25;color:#fff}
.biz-popup-side-right .biz-popup-side-action span{color:#825cff;filter:drop-shadow(0 0 7px #9b43ff)}
.biz-popup-side-action:hover{transform:translateY(-2px);border-color:#8aa2ff;box-shadow:0 0 24px rgba(63,111,255,.35),0 0 18px rgba(220,63,255,.2)}
.biz-popup-side-action.disabled{opacity:.42;pointer-events:none}

/* Digital business card — default simple view */
.biz-card-glass{position:relative;isolation:isolate;background:var(--hero-surface,#fff);border:1px solid var(--hero-border,rgba(18,24,31,.08));border-radius:28px;padding:26px 22px 20px;box-shadow:0 30px 70px rgba(18,24,31,.18);color:var(--ink,#12181F);animation:bizCardIn .5s cubic-bezier(.16,1,.3,1)}
.biz-card-glass::before{content:"";position:absolute;inset:-1px;border-radius:29px;padding:1.5px;background:linear-gradient(135deg,#F97316,#a855f7 45%,#2563EB);-webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);-webkit-mask-composite:xor;mask-composite:exclude;opacity:.55;pointer-events:none;animation:bizCardGlow 6s ease-in-out infinite;z-index:-1}
@keyframes bizCardIn{from{opacity:0;transform:translateY(14px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}
@keyframes bizCardGlow{0%,100%{opacity:.4}50%{opacity:.8}}
.biz-card-glass-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:14px}
.biz-card-nfc-label{display:inline-flex;align-items:center;gap:6px;font-size:10.5px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:var(--ink-muted,#5B6472)}
.biz-card-nfc-label svg{color:#F97316;flex-shrink:0}
.biz-fav-btn-glass{width:34px;height:34px;border-radius:50%;background:var(--hero-bg,#F5F4EF);border:1px solid var(--hero-border,rgba(18,24,31,.12));color:#c4425c;font-size:16px;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:transform .15s ease,background .15s ease,color .15s ease}
.biz-fav-btn-glass.active{background:rgba(196,66,92,.12);border-color:rgba(196,66,92,.35);animation:favPulse .45s ease}
@keyframes favPulse{0%{transform:scale(1)}40%{transform:scale(1.3)}70%{transform:scale(.92)}100%{transform:scale(1)}}
.biz-card-view-pill{position:relative;isolation:isolate;overflow:hidden;display:block;margin:0 auto 16px;padding:8px 24px;border:0;border-radius:999px;background:transparent;color:var(--ink,#12181F);font-size:14px;font-weight:900;letter-spacing:.16em;text-transform:uppercase;cursor:pointer;font-family:inherit;transition:color .18s ease,transform .18s ease,box-shadow .18s ease}
.biz-card-view-pill::before{content:"";position:absolute;z-index:-2;left:-45%;top:-240%;width:190%;height:580%;background:conic-gradient(from 0deg,transparent 0 68%,#2563eb 75%,#fff 80%,#a855f7 85%,#f97316 90%,transparent 96%);animation:bizViewLightTravel 3.2s linear infinite;pointer-events:none}
.biz-card-view-pill::after{content:"";position:absolute;z-index:-1;inset:2px;border-radius:inherit;background:var(--hero-surface,#fff);box-shadow:inset 0 0 0 1px rgba(91,100,114,.14);pointer-events:none}
.biz-card-view-pill:hover{color:#7c3aed;transform:translateY(-1px);box-shadow:0 8px 22px rgba(124,58,237,.2)}
@keyframes bizViewLightTravel{to{transform:rotate(360deg)}}
.biz-card-profile{text-align:center;margin-bottom:18px}
.biz-card-name{margin:0 0 2px;font-size:24px;font-weight:800;color:var(--ink,#12181F);font-family:Manrope,sans-serif}
.biz-card-category{margin:0 0 10px;font-size:11px;text-transform:uppercase;letter-spacing:.08em;color:var(--ink-muted,#5B6472);font-weight:700}
.biz-card-tagline-pill{display:inline-block;margin:0 0 12px;padding:5px 16px;border-radius:999px;border:1px solid var(--hero-border,rgba(18,24,31,.14));font-size:12px;font-style:italic;color:var(--ink-muted,#5B6472)}
.biz-card-rating{display:inline-flex;align-items:center;gap:6px;font-size:13px;background:none;border:0;cursor:default;font-family:inherit;padding:0}
.biz-card-rating strong{color:var(--ink,#12181F);font-size:13px}
.biz-card-rating small{color:var(--ink-muted,#5B6472);font-size:11.5px}
.biz-card-rating-empty,.biz-card-rating-action{cursor:pointer}
.biz-card-rating-action:hover{transform:translateY(-1px);box-shadow:0 7px 18px rgba(124,58,237,.16)}
.biz-card-qr-block{text-align:center;margin-bottom:18px}
.biz-card-qr-label{margin:0 0 10px;font-size:10.5px;font-weight:800;letter-spacing:.09em;text-transform:uppercase;color:var(--ink,#12181F)}
.biz-card-qr-wrap{display:inline-block;padding:12px;background:#fff;border-radius:18px;box-shadow:0 14px 32px rgba(18,24,31,.1);position:relative;border:1px solid var(--hero-border,rgba(18,24,31,.08))}
.biz-card-qr-wrap::before,.biz-card-qr-wrap::after{content:"";position:absolute;width:16px;height:16px;pointer-events:none}
.biz-card-qr-wrap::before{top:5px;left:5px;border-top:2px solid #F97316;border-left:2px solid #F97316;border-radius:6px 0 0 0}
.biz-card-qr-wrap::after{bottom:5px;right:5px;border-bottom:2px solid #a855f7;border-right:2px solid #a855f7;border-radius:0 0 6px 0}
.biz-card-qr-img{display:block;width:164px;height:164px;border-radius:6px}
.biz-card-qr-logo{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:32px;height:32px;background:#fff;border-radius:9px;display:flex;align-items:center;justify-content:center;box-shadow:0 2px 6px rgba(0,0,0,.18)}
.biz-card-qr-logo svg{width:19px;height:19px}
.biz-card-qr-caption{margin:10px 0 0;font-size:11.5px;color:var(--ink-muted,#5B6472)}
.biz-card-popup-retention{display:flex;align-items:center;justify-content:center;flex-wrap:wrap;column-gap:6px;row-gap:2px;margin:9px 0 0;color:var(--ink-muted,#5B6472);font-size:10.5px;font-weight:700;line-height:1.35}
.biz-card-popup-retention span{width:7px;height:7px;border-radius:50%;background:#f97316;box-shadow:0 0 9px rgba(249,115,22,.72);flex:0 0 auto}
.biz-card-popup-retention small{flex:0 0 100%;display:block;text-align:center;font-size:8.5px;font-weight:600;letter-spacing:.01em;opacity:.76}
.biz-card-primary-actions{display:flex;gap:10px;margin-bottom:16px}
.biz-card-cta{flex:1;display:flex;align-items:center;justify-content:center;gap:6px;padding:13px 10px;border-radius:999px;font-weight:700;font-size:13.5px;text-decoration:none;border:0;cursor:pointer;font-family:inherit;transition:transform .15s ease,box-shadow .15s ease}
.biz-brand-logo{width:19px;height:19px;display:block;flex:0 0 auto}
.biz-card-cta-whatsapp{background:linear-gradient(135deg,#25D366,#128C4A);color:#fff;box-shadow:0 10px 26px rgba(37,211,102,.3)}
.biz-card-cta-instagram{background:linear-gradient(135deg,#833ab4,#fd1d1d 60%,#fcb045);color:#fff;box-shadow:0 10px 26px rgba(131,58,180,.3)}
.biz-card-cta:hover{transform:translateY(-2px)}
.biz-card-cta:active{transform:translateY(0) scale(.97)}
.biz-card-cta-disabled{opacity:.4;pointer-events:none}
.biz-card-quickrow{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin-bottom:18px}
.biz-quick-ic{display:flex;flex-direction:column;align-items:center;gap:6px;background:var(--hero-bg,#F5F4EF);border:1px solid var(--hero-border,rgba(18,24,31,.08));border-radius:16px;padding:12px 4px;cursor:pointer;font-family:inherit;transition:transform .15s ease,box-shadow .15s ease}
.biz-quick-ic:hover{transform:translateY(-2px);box-shadow:0 10px 20px rgba(18,24,31,.08)}
.biz-quick-ic:active{transform:translateY(0) scale(.95)}
.biz-quick-ic[disabled]{opacity:.35;pointer-events:none}
.biz-quick-ic-ic{width:32px;height:32px;border-radius:50%;display:flex;align-items:center;justify-content:center}
.biz-quick-ic-label{font-size:10px;font-weight:700;color:var(--ink-muted,#5B6472);text-transform:uppercase;letter-spacing:.02em}
.biz-quick-ic-call .biz-quick-ic-ic{background:rgba(34,197,94,.14);color:#16a34a}
.biz-quick-ic-save .biz-quick-ic-ic{background:rgba(37,99,235,.14);color:#2563EB}
.biz-quick-ic-loc .biz-quick-ic-ic{background:rgba(249,115,22,.14);color:#ea580c}
.biz-quick-ic-share .biz-quick-ic-ic{background:rgba(168,85,247,.14);color:#9333ea}
.biz-card-footer{display:flex;align-items:center;justify-content:center;gap:6px;padding-top:14px;border-top:1px solid var(--hero-border,rgba(18,24,31,.08))}
.biz-card-footer svg{width:14px;height:14px}
.biz-card-footer span{font-size:10.5px;font-weight:800;letter-spacing:.06em;color:var(--ink-muted,#5B6472)}
.biz-card-glass .share-status{text-align:center;font-size:11px;color:var(--ink-muted,#5B6472);margin-top:8px;min-height:0}
.biz-card-tagline{text-align:center;margin:10px 0 0;font-size:12px;font-style:italic;color:var(--ink-muted,#5B6472)}
@media(prefers-reduced-motion:reduce){.biz-card-glass,.biz-card-glass::before,.biz-fav-btn-glass.active,.biz-card-view-pill::before{animation:none}}

/* Business Wall popup: dark neon digital card from the approved reference. */
#floatingBusinessCard .biz-card-glass{
  --ink:#f8fafc;--ink-muted:#bcc7df;--hero-bg:#101735;--hero-surface:#070d23;--hero-border:rgba(130,154,255,.34);
  overflow:hidden;border-color:rgba(86,141,255,.72);border-radius:30px;padding:18px 20px 14px;color:#f8fafc;
  background:
    radial-gradient(circle at 50% 17%,rgba(95,64,255,.27),transparent 23%),
    radial-gradient(circle at 8% 70%,rgba(0,113,255,.14),transparent 29%),
    radial-gradient(circle at 92% 72%,rgba(255,57,209,.14),transparent 28%),
    repeating-linear-gradient(90deg,transparent 0 54px,rgba(80,121,255,.025) 55px,transparent 56px),
    linear-gradient(155deg,#07112d 0%,#070b20 52%,#10102d 100%);
  box-shadow:0 0 0 1px rgba(255,255,255,.05) inset,0 0 28px rgba(32,112,255,.42),0 0 44px rgba(210,50,255,.24),0 34px 90px rgba(0,0,0,.62)
}
#floatingBusinessCard .biz-card-glass::before{
  inset:0;border-radius:30px;padding:2px;opacity:1;
  background:linear-gradient(120deg,#48a9ff 0%,#315dff 22%,#d15bff 62%,#ff8b35 100%);
  filter:drop-shadow(0 0 8px rgba(78,142,255,.8)) drop-shadow(0 0 10px rgba(219,76,255,.55))
}
#floatingBusinessCard .biz-card-glass-head{margin-bottom:0}
#floatingBusinessCard .biz-card-nfc-label{
  padding:9px 14px;border:1px solid rgba(118,142,255,.48);border-radius:999px;color:#f5f7ff;
  background:rgba(10,17,52,.75);box-shadow:0 0 18px rgba(52,104,255,.18);font-size:10px
}
#floatingBusinessCard .biz-card-nfc-label svg{color:#dbe8ff;filter:drop-shadow(0 0 5px #63a5ff)}
#floatingBusinessCard .biz-fav-btn-glass{
  color:#ff3a69;background:rgba(12,17,51,.78);border-color:rgba(194,83,255,.55);
  box-shadow:0 0 18px rgba(187,61,255,.2);width:40px;height:40px;font-size:22px
}
.biz-popup-card-close{width:40px;height:40px;border-radius:50%;border:1px solid rgba(133,151,255,.55);background:rgba(12,17,51,.82);color:#fff;display:grid;place-items:center;font-size:25px;line-height:1;cursor:pointer;box-shadow:0 0 18px rgba(77,105,255,.28);transition:transform .16s ease,background .16s ease}
.biz-popup-card-close:hover{transform:rotate(5deg) scale(1.06);background:rgba(45,60,132,.9)}
#floatingBusinessCard .biz-card-view-pill{
  width:min(78%,320px);margin:8px auto 10px;padding:7px 14px;letter-spacing:.03em;font-size:12px;font-weight:600;color:#f2f4ff;
  border:1.5px solid transparent;background:linear-gradient(#0a102d,#0a102d) padding-box,linear-gradient(90deg,#ff8a00,#7c4dff,#e14cff) border-box;
  box-shadow:0 0 16px rgba(115,72,255,.18)
}
#floatingBusinessCard .biz-card-view-pill::after{background:#0a102d;box-shadow:inset 0 0 0 1px rgba(142,158,255,.28)}
#floatingBusinessCard .biz-card-profile{margin-bottom:9px}
#floatingBusinessCard .biz-card-name{color:#fff;font-size:30px;letter-spacing:.07em;text-shadow:0 0 20px rgba(105,133,255,.32)}
#floatingBusinessCard .biz-card-category{color:#ff8a22;font-size:13px;letter-spacing:.24em;margin-bottom:6px}
#floatingBusinessCard .biz-card-tagline-pill{border:0;padding:0;color:#d7d9e8;font-size:14px}
#floatingBusinessCard .biz-card-rating{padding:6px 14px;border:1px solid rgba(119,96,255,.4);border-radius:999px;background:rgba(8,13,38,.72)}
#floatingBusinessCard .biz-card-rating strong{color:#fff}
#floatingBusinessCard .biz-card-rating small{color:#c3c8dc}
#floatingBusinessCard .rating-stars{font-size:17px}
#floatingBusinessCard .biz-card-qr-block{margin-bottom:9px}
#floatingBusinessCard .biz-card-qr-label{
  position:relative;z-index:2;display:table;margin:0 auto -9px;padding:6px 18px;border-radius:999px;
  background:#070c22;color:#fff;border:1px solid rgba(105,126,255,.35);box-shadow:0 0 15px rgba(48,103,255,.3)
}
#floatingBusinessCard .biz-card-qr-wrap{padding:9px;border-color:rgba(113,97,255,.55);box-shadow:0 0 18px rgba(59,112,255,.45),0 0 24px rgba(214,68,255,.24)}
#floatingBusinessCard .biz-card-qr-img{width:146px;height:146px}
#floatingBusinessCard .biz-card-qr-caption{margin-top:7px}
#floatingBusinessCard .biz-card-qr-caption{color:#d0d6e5}
#floatingBusinessCard .biz-card-popup-retention{color:#d7dcef}
#floatingBusinessCard .biz-card-primary-actions{gap:12px;margin-bottom:10px}
#floatingBusinessCard .biz-card-cta{padding:10px 8px;border-radius:16px;box-shadow:0 0 0 1px rgba(255,255,255,.45) inset,0 0 18px rgba(40,211,105,.34)}
#floatingBusinessCard .biz-card-cta-instagram{box-shadow:0 0 0 1px rgba(255,255,255,.45) inset,0 0 18px rgba(217,58,255,.36)}
#floatingBusinessCard .biz-quick-ic{background:linear-gradient(155deg,rgba(19,27,72,.94),rgba(7,11,35,.96));border-color:rgba(109,102,255,.46);box-shadow:0 0 15px rgba(57,97,255,.14)}
#floatingBusinessCard .biz-quick-ic-label{color:#f3f5ff}
#floatingBusinessCard .biz-card-footer{border-color:rgba(118,118,255,.3)}
#floatingBusinessCard .biz-card-footer{padding-top:9px}
#floatingBusinessCard .biz-card-footer span,#floatingBusinessCard .biz-card-tagline{color:#d9deef}
#floatingBusinessCard .biz-card-tagline{margin-top:6px;font-size:10px}
#floatingBusinessCard .biz-card-footer svg{filter:drop-shadow(0 0 6px #ff7419)}
#floatingBusinessCard .biz-card-quickrow{display:none}
#businessEditModal,#businessRatingModal{z-index:12000}
@media(max-width:520px){
  #floatingBusinessCard .biz-card-glass{padding:16px 12px 12px;border-radius:24px}
  #floatingBusinessCard .biz-card-glass::before{border-radius:24px}
  #floatingBusinessCard .biz-card-name{font-size:25px}
  #floatingBusinessCard .biz-card-primary-actions{gap:8px}
  #floatingBusinessCard .biz-card-cta{font-size:12px;padding:11px 6px}
}
@media(max-width:640px){
  .business-floating-stage{width:min(460px,100%)}
  .biz-popup-layout{display:block;position:relative}
  .biz-popup-side-rail{position:absolute;top:285px;width:64px;gap:9px}
  .biz-popup-side-left{left:7px}.biz-popup-side-right{right:7px}
  .biz-popup-side-action{min-height:88px;padding:7px 3px;border-radius:13px;gap:7px}
  .biz-popup-side-action span{width:30px;height:30px}
  .biz-popup-side-action svg{width:28px;height:28px}
  .biz-popup-side-action strong{font-size:8px}
}
.biz-profile-more{max-width:520px;margin:22px auto 0;background:var(--hero-surface,#fff);border-radius:22px;padding:24px;border:1px solid var(--hero-border,rgba(18,24,31,.08));box-shadow:0 20px 50px rgba(18,24,31,.12)}
@media(max-width:420px){
  .biz-card-glass{padding:22px 16px 16px}
  .biz-card-qr-img{width:150px;height:150px}
  .biz-profile-more{padding:20px 16px}
}
.biz-quick-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(110px,1fr));gap:10px;margin:18px 0}
.biz-quick-stat{background:var(--hero-bg,#F5F4EF);border-radius:14px;padding:14px 10px;text-align:center}
.biz-quick-stat strong{display:block;font-size:19px;color:var(--ink,#12181F)}
.biz-quick-stat small{color:var(--ink-muted,#5B6472);font-size:11px}
.biz-profile-section{margin-top:22px;padding-top:22px;border-top:1px solid var(--hero-border,rgba(18,24,31,.08))}
.biz-profile-section:first-of-type{border-top:0}
.biz-profile-section h4{margin:0 0 10px;font-size:12.5px;text-transform:uppercase;letter-spacing:.03em;color:var(--ink-muted,#5B6472)}
.biz-profile-section p{margin:0;font-size:14.5px;line-height:1.6;color:var(--ink,#12181F)}
.biz-contact-list{display:flex;flex-direction:column;gap:8px}
.biz-contact-row{display:flex;align-items:center;justify-content:space-between;background:var(--hero-bg,#F5F4EF);border:0;border-radius:12px;padding:13px 16px;font-family:inherit;text-decoration:none;cursor:pointer;text-align:left;width:100%}
.biz-contact-row span{font-size:12px;color:var(--ink-muted,#5B6472)}
.biz-contact-row strong{font-size:14px;color:var(--ink,#12181F)}
.biz-contact-static{cursor:default}
.biz-reviews-head{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:12px}
.biz-reviews-head h4{margin:0}
.biz-reviews-summary{display:flex;align-items:center;gap:10px;margin-bottom:14px}
.biz-reviews-summary strong{font-size:26px}
.biz-reviews-summary small{color:var(--ink-muted,#5B6472);font-size:12.5px}
.biz-rating-breakdown{display:flex;flex-direction:column;gap:6px;margin-bottom:18px}
.biz-rating-bar-row{display:grid;grid-template-columns:32px 1fr 24px;align-items:center;gap:8px;font-size:12px;color:var(--ink-muted,#5B6472)}
.biz-rating-bar-track{height:6px;border-radius:999px;background:rgba(18,24,31,.08);overflow:hidden}
.biz-rating-bar-fill{height:100%;background:#f5a623;border-radius:999px}
.biz-no-reviews{color:var(--ink-muted,#5B6472);font-size:13.5px;margin-bottom:14px}
.biz-review-list{display:flex;flex-direction:column;gap:12px}
.biz-review-card{background:var(--hero-bg,#F5F4EF);border-radius:14px;padding:14px 16px}
.biz-review-card strong{display:block;margin:4px 0;font-size:13.5px;color:var(--ink,#12181F)}
.biz-review-card p{margin:0 0 6px;font-size:13px;color:var(--ink-muted,#5B6472);line-height:1.5}
.biz-review-card small{color:var(--ink-muted,#5B6472);font-size:11px}
.biz-owner-dash{background:rgba(124,58,237,.05);border:1px solid rgba(124,58,237,.15);border-radius:16px;padding:16px}
.biz-owner-dash-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin:10px 0 14px}
.biz-owner-dash-grid strong{display:block;font-size:17px;color:var(--ink,#12181F)}
.biz-owner-dash-grid small{color:var(--ink-muted,#5B6472);font-size:11px}
.biz-unlock-block{margin-top:22px;padding-top:22px;border-top:1px solid var(--hero-border,rgba(18,24,31,.08));text-align:center}
.biz-unlock-icon{font-size:24px;margin-bottom:6px}
.biz-unlock-block strong{display:block;font-size:15px;margin-bottom:6px}
.biz-unlock-block p{margin:0 0 12px;color:var(--ink-muted,#5B6472);font-size:13px}
.biz-unlock-block input{width:100%;border:1px solid var(--hero-border,rgba(18,24,31,.14));border-radius:12px;padding:12px 14px;margin-bottom:10px;font-family:inherit;font-size:14px}

/* Compare bar + modal */
#businessEditSuccessModal .modal-card{background:var(--hero-surface,#fff)!important;border-color:var(--hero-border,rgba(18,24,31,.1))!important;color:var(--ink,#12181F)}

/* Business edit modal sections */
.business-edit-card .edit-section{margin-top:18px;padding-top:18px;border-top:1px solid var(--border)}
.business-edit-card .edit-section:first-of-type{margin-top:0;padding-top:0;border-top:0}
.business-edit-card .edit-section h4{margin:0 0 12px;font-size:12px;text-transform:uppercase;letter-spacing:.04em;color:var(--muted)}
.edit-sticky-actions{display:flex;gap:10px;margin-top:20px;position:sticky;bottom:-24px;background:#0B1622;padding:14px 0 4px}
.edit-sticky-actions .btn{flex:1;border-radius:12px}

/* Responsive */
@media(max-width:980px){
  .g58-mode-business .cw-body{flex-direction:column}
  .g58-mode-business .bw-sidebar{max-width:none;position:static;width:100%}
  .g58-mode-business .wall{grid-template-columns:repeat(2,minmax(0,1fr))}
  .business-floating-stage{width:min(760px,100%)}
}
@media(max-width:640px){
  .g58-mode-business .wall{grid-template-columns:1fr}
  .bw-header-top{flex-direction:column;align-items:flex-start}
  .biz-owner-dash-grid{grid-template-columns:1fr}
  .business-floating-stage{width:min(460px,100%)}
}

/* Home landing "visiting card" horizontal scroller for the core products — full-bleed, edge to edge */
.g58-vcard-section{margin:10px 0 30px}
.g58-vcard-track{overflow:hidden;-webkit-mask-image:linear-gradient(90deg,transparent,#000 4%,#000 96%,transparent);mask-image:linear-gradient(90deg,transparent,#000 4%,#000 96%,transparent)}
.g58-vcard-track-inner{display:flex;gap:16px;width:max-content;animation:vcardScroll 55s linear infinite}
@keyframes vcardScroll{from{transform:translateX(-50%)}to{transform:translateX(0)}}
.g58-vcard-track:hover .g58-vcard-track-inner{animation-play-state:paused}
@media(prefers-reduced-motion:reduce){.g58-vcard-track-inner{animation:none}}
.g58-vcard{flex:0 0 auto;width:280px;min-height:170px;border-radius:18px;padding:20px 22px;color:var(--ink,#12181F);display:flex;flex-direction:column;border:1px solid var(--hero-border,rgba(18,24,31,.1));box-shadow:0 10px 22px rgba(18,24,31,.06)}
.g58-vcard-top{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px}
.g58-vcard-mark{font-size:20px;color:var(--vcard-accent,var(--accent,#1D4ED8))}
.g58-vcard-badge{font-size:10.5px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:var(--vcard-accent,var(--accent,#1D4ED8));background:#fff;border:1px solid currentColor;border-radius:999px;padding:4px 10px}
.g58-vcard h4{margin:0 0 8px;font-size:18px;line-height:1.25;color:var(--ink,#12181F)}
.g58-vcard p{margin:0 0 16px;font-size:12.5px;line-height:1.5;color:var(--ink,#12181F)}
.g58-vcard-cta{margin-top:auto;align-self:flex-start;background:var(--vcard-accent,var(--accent,#1D4ED8));border:0;border-radius:999px;padding:8px 14px;font-size:12.5px;font-weight:700;color:#fff;text-decoration:none;cursor:pointer;font-family:inherit}
.g58-vcard-cta:hover{opacity:.88}
.g58-vcard-refills{--vcard-accent:#0f8f7c;background:#e3f6f2}
.g58-vcard-menu{--vcard-accent:#c96a2a;background:#fbead9}
.g58-vcard-pos{--vcard-accent:#F97316;background:#ffe9da}
.g58-vcard-card{--vcard-accent:#6d5ef0;background:#ece9fd}
.g58-vcard-ad{--vcard-accent:#1D4ED8;background:#e1eafd}
@media(max-width:640px){.g58-vcard{width:240px;min-height:150px;padding:16px 18px}.g58-vcard h4{font-size:16px}}

/* Visiting-card camera and OCR setup */
.visiting-card-scan{display:grid!important;grid-template-columns:minmax(0,1fr) auto;gap:14px;align-items:center;padding:16px;border:1px solid rgba(249,115,22,.35);border-radius:16px;background:linear-gradient(135deg,rgba(249,115,22,.12),rgba(37,99,235,.08))}
.visiting-card-scan.hidden{display:none!important}
.visiting-card-scan-copy{display:flex;flex-direction:column;gap:4px}
.visiting-card-scan-copy .scan-kicker{font-size:10px;font-weight:900;letter-spacing:.12em;text-transform:uppercase;color:#fb923c}
.visiting-card-scan-copy strong{font-size:16px;color:#fff}
.visiting-card-scan-copy small{font-size:11.5px;line-height:1.5;color:#cbd5e1}
.visiting-card-file{position:absolute!important;width:1px!important;height:1px!important;opacity:0!important;pointer-events:none!important}
.visiting-card-camera-btn{background:linear-gradient(135deg,#f97316,#fb923c)!important;color:#111!important;border:0!important;white-space:nowrap}
.visiting-card-scan-result{grid-column:1/-1;display:grid;grid-template-columns:92px minmax(0,1fr);gap:13px;align-items:center;padding-top:13px;border-top:1px solid rgba(255,255,255,.12)}
.visiting-card-scan-result img{width:92px;height:60px;object-fit:cover;border-radius:10px;border:1px solid rgba(255,255,255,.18);background:#fff}
.visiting-card-scan-result div{display:flex;flex-direction:column;gap:4px}
.visiting-card-scan-result strong{font-size:13px;color:#fff}
.visiting-card-scan-result span{font-size:11.5px;line-height:1.45;color:#cbd5e1}
@media(max-width:640px){
  .visiting-card-scan{grid-template-columns:1fr}
  .visiting-card-camera-btn{width:100%}
}

/* Redesigned business QR share card — brand, big avatar, big QR, WhatsApp + Profile, domain */
.qr-card-redesign{max-width:380px;padding:32px 26px 26px;text-align:center;position:relative}
.qr-card-redesign .close{position:absolute;top:16px;right:16px;color:var(--ink-muted,#5B6472)!important}
.qr-card-brand{display:flex;align-items:center;justify-content:center;gap:8px;margin-bottom:20px}
.qr-card-brand svg{width:22px;height:22px}
.qr-card-brand span{font-family:Manrope,sans-serif;font-weight:800;font-size:14px;letter-spacing:.03em;color:var(--ink,#12181F)}
.qr-card-avatar{width:64px;height:64px;margin:0 auto 14px;border-radius:18px;display:flex;align-items:center;justify-content:center;color:#fff;font-family:Manrope,sans-serif;font-weight:800;font-size:26px;box-shadow:0 10px 22px rgba(18,24,31,.16)}
.qr-card-name{margin:0 0 2px;font-size:19px;color:var(--ink,#12181F)}
.qr-card-category{margin:0 0 18px;font-size:12px;color:var(--ink-muted,#5B6472);text-transform:uppercase;letter-spacing:.04em;font-weight:700}
.qr-card-qr-wrap{display:inline-block;padding:14px;background:#fff;border:1px solid var(--hero-border,rgba(18,24,31,.1));border-radius:20px;box-shadow:0 14px 30px rgba(18,24,31,.08);margin-bottom:12px}
.qr-card-qr-img{display:block;width:200px;height:200px}
.qr-card-scan-hint{margin:0 0 18px;font-size:12.5px;color:var(--ink-muted,#5B6472)}
.qr-card-social-row{display:flex;gap:10px;margin-bottom:18px}
.qr-social-btn{flex:1;display:flex;align-items:center;justify-content:center;gap:6px;padding:11px 8px;border-radius:12px;font-weight:700;font-size:13px;text-decoration:none;color:#fff}
.qr-social-btn .biz-brand-logo{width:20px;height:20px}
.qr-social-whatsapp{background:linear-gradient(135deg,#25D366,#1da851)}
.qr-social-instagram{background:linear-gradient(135deg,#833ab4,#fd1d1d 60%,#fcb045)}
.qr-social-btn[hidden]{display:none}
.qr-card-domain{font-family:Manrope,sans-serif;font-weight:800;font-size:13px;letter-spacing:.1em;color:var(--accent,#1D4ED8);margin-bottom:22px}

/* Mobile hamburger nav (nav-center is hidden below 980px with no replacement otherwise) */
.mobile-nav-toggle{display:none;flex-direction:column;justify-content:center;align-items:center;gap:5px;width:38px;height:38px;border:0;background:none;cursor:pointer;padding:0;flex-shrink:0}
.mobile-nav-toggle span{display:block;width:22px;height:2px;background:var(--ink,#12181F);border-radius:2px;transition:transform .2s ease,opacity .2s ease}
.topbar.scrolled .mobile-nav-toggle span{background:#e7ecf3}
.mobile-nav-toggle.active span:nth-child(1){transform:translateY(7px) rotate(45deg)}
.mobile-nav-toggle.active span:nth-child(2){opacity:0}
.mobile-nav-toggle.active span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}
.mobile-nav-overlay{position:fixed;inset:0;background:rgba(15,20,28,.42);z-index:59;opacity:0;pointer-events:none;transition:opacity .2s ease}
.mobile-nav-overlay.open{opacity:1;pointer-events:auto}
.mobile-nav-panel{position:fixed;top:0;right:0;bottom:0;width:min(300px,82vw);background:#fff;z-index:60;box-shadow:-14px 0 34px rgba(18,24,31,.18);transform:translateX(100%);transition:transform .25s ease;padding:26px 18px 30px;overflow-y:auto;display:flex;flex-direction:column;gap:2px}
.mobile-nav-panel.open{transform:translateX(0)}
.mobile-nav-link{display:block;width:100%;text-align:left;padding:13px 12px;border:0;background:none;font-size:15px;font-weight:600;color:var(--ink,#12181F);text-decoration:none;border-radius:10px;cursor:pointer;font-family:inherit}
.mobile-nav-link:hover{background:rgba(29,78,216,.06)}
.mobile-nav-group-label{padding:16px 12px 4px;font-size:11px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--ink-muted,#5B6472)}
.mobile-nav-sublink{padding-left:22px;font-weight:500;font-size:14px}
@media(max-width:980px){.mobile-nav-toggle{display:flex}}
