/* Strive Motors v6.1.0 — connected customer portal and public forms */
:root{--portal-blue:#00129e;--portal-cyan:#0ea5e9;--portal-ink:#07111f;--portal-muted:#607086;--portal-line:rgba(15,23,42,.09);--portal-surface:#fff;--portal-soft:#f5f8fc;--portal-green:#16a34a;--portal-red:#dc2626;--portal-amber:#d97706}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:Inter,ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif;background:radial-gradient(1000px 500px at 8% -10%,rgba(0,18,158,.16),transparent 66%),radial-gradient(700px 420px at 100% 28%,rgba(14,165,233,.09),transparent 64%),linear-gradient(180deg,#f8fafc,#edf2f8 72%,#e9eef5);color:var(--portal-ink);min-height:100vh}a{color:inherit}.portal-topbar{position:sticky;top:0;z-index:100;padding:12px 0;background:rgba(255,255,255,.84);backdrop-filter:blur(22px);border-bottom:1px solid var(--portal-line);box-shadow:0 12px 38px rgba(2,6,23,.055)}.portal-topbar-inner,.portal-shell{width:min(1320px,calc(100% - 30px));margin:0 auto}.portal-topbar-inner{display:flex;align-items:center;justify-content:space-between;gap:16px}.portal-brand{display:flex;align-items:center;gap:11px;text-decoration:none}.portal-brand-mark{width:43px;height:43px;display:grid;place-items:center;border-radius:15px;background:radial-gradient(circle at 70% 15%,#38bdf8,transparent 36%),linear-gradient(135deg,#020617,#00129e);color:#fff;font-size:.78rem;font-weight:1000;letter-spacing:-.04em;box-shadow:0 14px 32px rgba(0,18,158,.22)}.portal-brand span:last-child{display:grid;gap:1px}.portal-brand strong{font-size:.93rem;letter-spacing:.035em}.portal-brand small{font-size:.62rem;color:var(--portal-muted);font-weight:900;letter-spacing:.09em}.portal-nav{display:flex;gap:7px;align-items:center;flex-wrap:wrap}.portal-nav>a,.portal-nav button{display:inline-flex;align-items:center;justify-content:center;min-height:40px;padding:0 13px;border-radius:999px;border:1px solid var(--portal-line);background:#f8fafc;color:#0f172a;text-decoration:none;font:inherit;font-size:.78rem;font-weight:950;cursor:pointer}.portal-nav>a.primary{background:linear-gradient(135deg,var(--portal-blue),var(--portal-cyan));color:#fff;border-color:transparent;box-shadow:0 12px 28px rgba(0,18,158,.18)}.portal-nav form{margin:0}.portal-shell{padding:26px 0 74px}.portal-hero{position:relative;overflow:hidden;display:grid;grid-template-columns:minmax(0,1.35fr) minmax(350px,.65fr);gap:26px;align-items:end;padding:34px;border-radius:40px;background:radial-gradient(700px 300px at 94% -8%,rgba(56,189,248,.44),transparent 63%),radial-gradient(620px 300px at 0% 105%,rgba(37,99,235,.28),transparent 64%),linear-gradient(135deg,#020617,#061c55 50%,#00129e);color:#fff;box-shadow:0 38px 110px rgba(2,6,23,.27)}.portal-hero:after{content:"";position:absolute;right:-120px;top:-210px;width:500px;height:500px;border-radius:50%;border:1px solid rgba(255,255,255,.13);box-shadow:0 0 0 72px rgba(255,255,255,.035),0 0 0 144px rgba(255,255,255,.022)}.portal-hero>*{position:relative;z-index:1}.portal-kicker{display:inline-flex;align-items:center;gap:8px;color:#7dd3fc;font-size:.66rem;font-weight:1000;letter-spacing:.13em;text-transform:uppercase}.portal-kicker:before{content:"";width:24px;height:2px;background:currentColor;border-radius:999px}.portal-hero h1{margin:.18em 0 .15em;font-size:clamp(2.8rem,6vw,6.2rem);line-height:.86;letter-spacing:-.085em}.portal-hero h1 em{font-style:normal;color:#7dd3fc}.portal-hero p{margin:0;max-width:870px;color:#dbeafe;font-weight:780;line-height:1.62}.portal-hero-actions{display:flex;gap:9px;flex-wrap:wrap;margin-top:20px}.portal-btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:45px;padding:0 16px;border:1px solid transparent;border-radius:15px;background:linear-gradient(135deg,var(--portal-blue),var(--portal-cyan));color:#fff;text-decoration:none;font:inherit;font-weight:950;cursor:pointer;box-shadow:0 14px 30px rgba(0,18,158,.18)}.portal-btn.light{background:#fff;color:var(--portal-blue);box-shadow:0 16px 38px rgba(2,6,23,.16)}.portal-btn.ghost{background:rgba(255,255,255,.1);border-color:rgba(255,255,255,.2);color:#fff;box-shadow:none;backdrop-filter:blur(12px)}.portal-btn.secondary{background:#eef2ff;color:var(--portal-blue);border-color:rgba(0,18,158,.1);box-shadow:none}.portal-btn.danger{background:#fee2e2;color:#991b1b;box-shadow:none}.portal-live-card{display:grid;gap:13px;padding:20px;border-radius:30px;background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.15);backdrop-filter:blur(18px)}.portal-live-card>span{color:#bae6fd;font-size:.67rem;font-weight:1000;letter-spacing:.1em;text-transform:uppercase}.portal-live-card h2{margin:0;font-size:1.75rem;letter-spacing:-.05em}.portal-live-card p{font-size:.86rem}.portal-live-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.portal-live-grid>div{padding:12px;border-radius:18px;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.09)}.portal-live-grid small,.portal-live-grid strong{display:block}.portal-live-grid small{color:#bae6fd;font-weight:800}.portal-live-grid strong{margin-top:4px;font-size:1.3rem}.portal-alert{margin-top:14px;padding:13px 15px;border-radius:18px;background:#fff;border:1px solid var(--portal-line);box-shadow:0 12px 34px rgba(2,6,23,.06);font-weight:850}.portal-alert.error{background:#fff1f2;border-color:#fecdd3;color:#9f1239}.portal-alert.success{background:#f0fdf4;border-color:#bbf7d0;color:#166534}.portal-section-nav{position:sticky;top:78px;z-index:70;display:flex;gap:7px;overflow-x:auto;margin:16px 0;padding:7px;border-radius:21px;background:rgba(255,255,255,.89);border:1px solid var(--portal-line);box-shadow:0 12px 34px rgba(2,6,23,.065);backdrop-filter:blur(18px);scrollbar-width:none}.portal-section-nav::-webkit-scrollbar{display:none}.portal-section-nav a{display:inline-flex;align-items:center;white-space:nowrap;min-height:39px;padding:0 13px;border-radius:14px;color:#334155;text-decoration:none;font-size:.78rem;font-weight:950}.portal-section-nav a:hover{background:#eef2ff;color:var(--portal-blue)}.portal-section{scroll-margin-top:148px;margin-top:18px}.portal-section-head{display:flex;align-items:end;justify-content:space-between;gap:16px;margin-bottom:11px}.portal-section-head span{display:block;color:var(--portal-blue);font-size:.65rem;font-weight:1000;letter-spacing:.11em;text-transform:uppercase}.portal-section-head h2{margin:.2rem 0 0;font-size:clamp(1.8rem,3vw,3.1rem);letter-spacing:-.065em}.portal-section-head p{max-width:650px;margin:0;color:var(--portal-muted);font-weight:780;line-height:1.5}.portal-kpi-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px;margin-top:16px}.portal-kpi{padding:16px;border-radius:25px;background:#fff;border:1px solid var(--portal-line);box-shadow:0 15px 42px rgba(2,6,23,.065)}.portal-kpi small,.portal-kpi span{display:block;color:var(--portal-muted);font-weight:800}.portal-kpi strong{display:block;margin:6px 0;font-size:1.8rem;letter-spacing:-.06em}.portal-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.portal-grid.three{grid-template-columns:repeat(3,minmax(0,1fr))}.portal-card{min-width:0;padding:19px;border-radius:30px;background:#fff;border:1px solid var(--portal-line);box-shadow:0 18px 55px rgba(2,6,23,.075)}.portal-card.dark{background:radial-gradient(500px 180px at 100% 0,rgba(14,165,233,.2),transparent 64%),linear-gradient(135deg,#06122d,#0f172a);color:#fff}.portal-card h3{margin:.1rem 0 .35rem;font-size:1.35rem;letter-spacing:-.045em}.portal-card p{color:var(--portal-muted);font-weight:760;line-height:1.55}.portal-card.dark p{color:#cbd5e1}.portal-quick-actions{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px}.portal-quick-action{display:grid;gap:7px;min-height:155px;padding:16px;border-radius:23px;background:#fff;border:1px solid var(--portal-line);text-decoration:none;box-shadow:0 14px 40px rgba(2,6,23,.06);transition:.18s ease}.portal-quick-action:hover{transform:translateY(-2px);box-shadow:0 22px 55px rgba(2,6,23,.1)}.portal-quick-action b{width:42px;height:42px;display:grid;place-items:center;border-radius:15px;background:linear-gradient(135deg,var(--portal-blue),var(--portal-cyan));color:#fff}.portal-quick-action strong{font-size:1.05rem}.portal-quick-action span{color:var(--portal-muted);font-size:.82rem;font-weight:780;line-height:1.45}.portal-car-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:10px}.portal-car-card{overflow:hidden;display:grid;border-radius:24px;background:#fff;border:1px solid var(--portal-line);text-decoration:none;box-shadow:0 14px 40px rgba(2,6,23,.06);transition:.18s ease}.portal-car-card:hover,.portal-car-card.active{transform:translateY(-2px);border-color:rgba(14,165,233,.4);box-shadow:0 22px 60px rgba(0,18,158,.12)}.portal-car-card img{width:100%;height:155px;object-fit:cover;background:#0f172a}.portal-car-card>div{padding:13px}.portal-car-card strong,.portal-car-card span{display:block}.portal-car-card span{margin-top:4px;color:var(--portal-muted);font-weight:800}.portal-slot-date-tabs{display:flex;gap:7px;overflow-x:auto;padding-bottom:5px}.portal-slot-date-tabs a{display:grid;min-width:80px;padding:9px 11px;border:1px solid var(--portal-line);border-radius:15px;text-align:center;text-decoration:none;background:#f8fafc}.portal-slot-date-tabs a.active{background:linear-gradient(135deg,var(--portal-blue),var(--portal-cyan));color:#fff;border-color:transparent}.portal-slot-date-tabs strong,.portal-slot-date-tabs span{display:block}.portal-slot-date-tabs span{font-size:.75rem;font-weight:800}.portal-slot-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(135px,1fr));gap:8px;margin-top:10px}.portal-slot-card{display:grid;gap:4px;padding:13px;border-radius:19px;background:#f8fafc;border:1px solid var(--portal-line)}.portal-slot-card small{color:var(--portal-muted);font-weight:800}.portal-slot-card strong{font-size:1.35rem}.portal-slot-card button{margin-top:5px;min-height:38px;border:0;border-radius:12px;background:var(--portal-blue);color:#fff;font-weight:950;cursor:pointer}.portal-record-list{display:grid;gap:8px}.portal-record{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px;padding:12px;border-radius:19px;background:#f8fafc;border:1px solid var(--portal-line)}.portal-record>div>small,.portal-record>div>strong,.portal-record>div>span{display:block}.portal-record>div>small{color:var(--portal-blue);font-size:.66rem;font-weight:1000;letter-spacing:.045em;text-transform:uppercase}.portal-record>div>strong{margin:3px 0}.portal-record>div>span{color:var(--portal-muted);font-size:.81rem;font-weight:780}.portal-record-meta{display:grid;justify-items:end;align-content:start;gap:5px}.portal-pill{display:inline-flex;align-items:center;width:max-content;padding:6px 9px;border-radius:999px;background:#e2e8f0;color:#334155;font-size:.67rem;font-weight:1000}.portal-pill.blue{background:#dbeafe;color:#1d4ed8}.portal-pill.green{background:#dcfce7;color:#166534}.portal-pill.amber{background:#fef3c7;color:#92400e}.portal-pill.red{background:#fee2e2;color:#991b1b}.portal-garage-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(285px,1fr));gap:10px}.portal-vehicle-card{display:grid;gap:11px;padding:16px;border-radius:25px;background:#fff;border:1px solid var(--portal-line);box-shadow:0 14px 40px rgba(2,6,23,.06)}.portal-vehicle-card-head{display:flex;justify-content:space-between;gap:12px;align-items:start}.portal-vehicle-card-head span:first-child{display:inline-flex;border-radius:10px;padding:7px 10px;background:#111827;color:#fff;font-weight:1000;letter-spacing:.06em}.portal-vehicle-card h3{margin:0}.portal-vehicle-card p{margin:0;color:var(--portal-muted);font-weight:780}.portal-vehicle-actions{display:flex;gap:7px;flex-wrap:wrap}.portal-vehicle-actions .portal-btn{min-height:39px;padding:0 12px;font-size:.76rem}.portal-invoice-amounts{display:flex;gap:10px;flex-wrap:wrap}.portal-invoice-amounts span{padding:7px 9px;border-radius:11px;background:#eef2ff;color:#3730a3;font-size:.73rem;font-weight:950}.portal-auth-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:15px;margin-top:16px}.portal-form-card{padding:21px;border-radius:31px;background:#fff;border:1px solid var(--portal-line);box-shadow:0 18px 58px rgba(2,6,23,.08)}.portal-form-card h2{margin:.1rem 0 .4rem;font-size:1.8rem;letter-spacing:-.055em}.portal-form-card>p{color:var(--portal-muted);font-weight:780;line-height:1.5}.portal-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.portal-form-grid label{display:grid;gap:6px}.portal-form-grid label.full{grid-column:1/-1}.portal-form-grid label>span,.portal-form-card>label>span{font-size:.7rem;font-weight:950;color:#475569}.portal-form-grid input,.portal-form-grid select,.portal-form-grid textarea,.portal-form-card>label input{width:100%;min-height:46px;padding:11px 12px;border-radius:15px;border:1px solid #dbe2ea;background:#f8fafc;color:#0f172a;font:inherit;font-weight:780}.portal-form-grid textarea{min-height:110px;resize:vertical}.portal-form-card button.portal-btn{margin-top:11px}.portal-doc{border-radius:19px;background:#f8fafc;border:1px solid var(--portal-line);overflow:hidden}.portal-doc summary{cursor:pointer;padding:13px;font-weight:950}.portal-doc-body{padding:0 13px 13px}.portal-doc pre{white-space:pre-wrap;font:inherit;color:#475569;line-height:1.55}.portal-empty{display:grid;gap:5px;place-items:start;padding:18px;border-radius:20px;border:1px dashed #cbd5e1;color:var(--portal-muted);font-weight:780}.portal-empty strong{color:#0f172a}.portal-warranty-box{margin-top:5px;border-top:1px solid var(--portal-line);padding-top:10px}.portal-warranty-box summary{cursor:pointer;font-weight:950;color:var(--portal-blue)}.portal-warranty-box form{display:grid;gap:8px;margin-top:10px}.portal-warranty-box label{display:grid;gap:5px;color:#475569;font-size:.75rem;font-weight:900}.portal-warranty-box input,.portal-warranty-box select,.portal-warranty-box textarea{width:100%;padding:10px;border-radius:13px;border:1px solid #dbe2ea;background:#f8fafc;font:inherit}.portal-warranty-box textarea{min-height:95px;resize:vertical}.portal-footer{margin-top:30px;padding:20px 0;color:var(--portal-muted);font-size:.78rem;font-weight:800;text-align:center}.public-form-page{display:grid;place-items:center;min-height:100vh;padding:30px 15px}.public-form-shell{width:min(920px,100%);display:grid;gap:15px}.public-form-page.embed{display:block;min-height:auto;padding:0;background:transparent}.public-form-page.embed .public-form-shell{width:100%}.public-form-head{position:relative;overflow:hidden;padding:29px;border-radius:34px;background:radial-gradient(540px 220px at 100% 0,rgba(56,189,248,.44),transparent 62%),linear-gradient(135deg,#020617,#061c55 55%,#00129e);color:#fff;box-shadow:0 30px 90px rgba(2,6,23,.22)}.public-form-page.embed .public-form-head{border-radius:28px 28px 0 0;box-shadow:none}.public-form-head span{color:#7dd3fc;font-size:.65rem;font-weight:1000;letter-spacing:.12em;text-transform:uppercase}.public-form-head h1{margin:.2em 0;font-size:clamp(2.3rem,5vw,4.6rem);line-height:.9;letter-spacing:-.075em}.public-form-head p{margin:0;color:#dbeafe;font-weight:780;line-height:1.6}.public-form-card{padding:22px;border-radius:32px;background:#fff;border:1px solid var(--portal-line);box-shadow:0 22px 70px rgba(2,6,23,.09)}.public-form-page.embed .public-form-card{border-radius:0 0 28px 28px;box-shadow:none}.public-form-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:11px}.public-form-field{display:grid;gap:6px}.public-form-field.full{grid-column:1/-1}.public-form-field>span{font-size:.72rem;color:#475569;font-weight:950}.public-form-field em{color:#dc2626;font-style:normal}.public-form-field input,.public-form-field select,.public-form-field textarea{width:100%;padding:12px 13px;border:1px solid #dbe2ea;border-radius:15px;background:#f8fafc;color:#0f172a;font:inherit;font-weight:780}.public-form-field textarea{min-height:125px;resize:vertical}.public-form-check{display:grid;grid-template-columns:auto 1fr;gap:9px;align-items:center;padding:12px;border-radius:15px;background:#f8fafc;border:1px solid var(--portal-line)}.public-form-check input{width:20px;height:20px}.public-form-submit{display:flex;justify-content:space-between;gap:14px;align-items:center;margin-top:15px;padding-top:14px;border-top:1px solid var(--portal-line)}.public-form-submit p{margin:0;color:var(--portal-muted);font-size:.76rem;font-weight:780}.public-form-success{text-align:center;padding:40px 24px}.public-form-success-mark{width:72px;height:72px;display:grid;place-items:center;margin:0 auto 15px;border-radius:25px;background:linear-gradient(135deg,#16a34a,#4ade80);color:#fff;font-size:2rem;box-shadow:0 20px 45px rgba(22,163,74,.25)}.public-form-success h1{margin:.2rem 0;font-size:2.6rem;letter-spacing:-.065em}.public-form-success p{max-width:620px;margin:10px auto;color:var(--portal-muted);font-weight:780;line-height:1.6}.public-form-success .portal-pill{margin:10px auto}.public-form-honeypot{position:absolute!important;left:-10000px!important;width:1px!important;height:1px!important;overflow:hidden!important}.public-form-back{display:inline-flex;align-items:center;gap:7px;color:#475569;text-decoration:none;font-weight:900;font-size:.8rem}.portal-split-feature{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin-top:16px}.portal-feature-route{position:relative;overflow:hidden;min-height:260px;padding:25px;border-radius:32px;color:#fff;text-decoration:none;box-shadow:0 25px 70px rgba(2,6,23,.2)}.portal-feature-route.sales{background:radial-gradient(450px 200px at 100% 0,rgba(34,197,94,.25),transparent 65%),linear-gradient(135deg,#051b16,#064e3b)}.portal-feature-route.service{background:radial-gradient(450px 200px at 100% 0,rgba(56,189,248,.35),transparent 65%),linear-gradient(135deg,#06122d,#00129e)}.portal-feature-route small{color:#bfdbfe;font-weight:1000;letter-spacing:.1em}.portal-feature-route h2{margin:.3em 0;font-size:2.5rem;letter-spacing:-.06em}.portal-feature-route p{max-width:520px;color:#e2e8f0;font-weight:780;line-height:1.55}.portal-feature-route strong{position:absolute;right:24px;bottom:22px;font-size:1.5rem}@media(max-width:1120px){.portal-hero{grid-template-columns:1fr}.portal-live-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.portal-kpi-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.portal-grid.three{grid-template-columns:1fr 1fr}.portal-quick-actions{grid-template-columns:1fr 1fr}.portal-record{grid-template-columns:1fr}.portal-record-meta{justify-items:start}}@media(max-width:780px){.portal-topbar-inner{align-items:flex-start}.portal-nav{justify-content:flex-end}.portal-nav>a:not(.primary){display:none}.portal-shell{width:min(100% - 20px,1320px);padding-top:15px}.portal-hero{padding:23px;border-radius:30px}.portal-live-grid,.portal-kpi-grid,.portal-grid,.portal-grid.three,.portal-auth-grid,.portal-split-feature{grid-template-columns:1fr 1fr}.portal-quick-actions{grid-template-columns:1fr}.portal-section-head{display:grid}.portal-section-nav{top:70px}.public-form-fields{grid-template-columns:1fr}.public-form-field.full{grid-column:auto}}@media(max-width:560px){.portal-brand small{display:none}.portal-nav>a.primary{padding:0 10px}.portal-hero h1{font-size:3.15rem}.portal-live-grid,.portal-kpi-grid,.portal-grid,.portal-grid.three,.portal-auth-grid,.portal-split-feature,.portal-form-grid{grid-template-columns:1fr}.portal-feature-route{min-height:220px}.portal-section-nav{margin-inline:-2px}.portal-card,.portal-form-card{padding:15px;border-radius:24px}.public-form-page{padding:10px}.public-form-head{padding:22px;border-radius:27px}.public-form-card{padding:16px;border-radius:25px}.public-form-submit{display:grid}.public-form-submit .portal-btn{width:100%}}

/* v6.2.0 — connected public vehicle identity and live Service diary */
.public-connected-question,.public-vehicle-identity,.public-booking-planner{grid-column:1/-1;display:grid;gap:18px;padding:22px;border:1px solid var(--portal-line);border-radius:28px;background:linear-gradient(180deg,#fff,#f8fafc);box-shadow:0 18px 52px rgba(2,6,23,.06)}
.public-connected-question-head>span{display:block;color:var(--portal-blue);font-size:.64rem;font-weight:1000;letter-spacing:.12em;text-transform:uppercase}.public-connected-question-head h2{margin:.18rem 0 .3rem;font-size:clamp(1.5rem,3vw,2.4rem);letter-spacing:-.055em}.public-connected-question-head h2 em{color:var(--portal-red);font-style:normal}.public-connected-question-head p{margin:0;max-width:780px;color:var(--portal-muted);font-weight:760;line-height:1.55}
.public-vehicle-selected{display:grid;grid-template-columns:72px 1fr;gap:15px;align-items:center;padding:14px 16px;border-radius:22px;background:linear-gradient(135deg,#06122d,#00129e);color:#fff}.public-vehicle-selected>[data-public-selected-logo]{width:72px;height:62px;display:flex;align-items:center;justify-content:center;padding:9px;border-radius:17px;background:rgba(255,255,255,.96);overflow:hidden}.public-vehicle-selected img,.public-brand-logo img{display:block;width:100%;height:100%;max-width:100%;max-height:100%;object-fit:contain;object-position:center}.public-vehicle-selected span,.public-vehicle-selected strong,.public-vehicle-selected small{display:block}.public-vehicle-selected span{color:#7dd3fc;font-size:.62rem;font-weight:1000;letter-spacing:.12em}.public-vehicle-selected strong{margin:3px 0;font-size:1.18rem}.public-vehicle-selected small{color:#dbeafe;font-weight:750}
.public-vehicle-search{display:grid;gap:6px}.public-vehicle-search>span,.public-booking-date-row label>span{font-size:.69rem;font-weight:950;color:var(--portal-muted);text-transform:uppercase;letter-spacing:.06em}.public-vehicle-search input,.public-model-manual input,.public-booking-date-row input{min-height:48px;width:100%;padding:0 14px;border-radius:15px;border:1px solid var(--portal-line);background:#fff;color:var(--portal-ink);font:inherit;font-weight:800;outline:none}.public-vehicle-search input:focus,.public-model-manual input:focus,.public-booking-date-row input:focus{border-color:rgba(0,18,158,.45);box-shadow:0 0 0 4px rgba(0,18,158,.08)}
.public-brand-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(116px,1fr));gap:9px;max-height:420px;overflow:auto;padding:2px}.public-brand-card{appearance:none;display:grid;grid-template-rows:68px auto;gap:8px;align-items:center;justify-items:center;min-height:112px;padding:11px;border:1px solid var(--portal-line);border-radius:19px;background:#fff;color:var(--portal-ink);font:inherit;cursor:pointer;transition:.18s ease}.public-brand-card:hover{transform:translateY(-2px);border-color:rgba(14,165,233,.38);box-shadow:0 14px 32px rgba(2,6,23,.08)}.public-brand-card.is-selected{border-color:var(--portal-blue);box-shadow:0 0 0 3px rgba(0,18,158,.1)}.public-brand-logo{width:76px;height:62px;display:flex;align-items:center;justify-content:center;padding:8px;overflow:hidden}.public-brand-initials{width:50px;height:50px;display:grid;place-items:center;border-radius:15px;background:#eef2ff;color:var(--portal-blue);font-weight:1000}.public-brand-card strong{text-align:center;font-size:.78rem;line-height:1.2}
.public-model-stage{display:grid;gap:13px;padding-top:16px;border-top:1px solid var(--portal-line)}.public-model-stage[hidden]{display:none}.public-model-stage-head{display:flex;align-items:center;justify-content:space-between;gap:12px}.public-model-stage-head span,.public-model-manual span{display:block;color:var(--portal-blue);font-size:.62rem;font-weight:1000;letter-spacing:.1em}.public-model-stage-head strong{display:block;margin-top:2px;font-size:1.25rem}.public-model-stage-head button{border:0;background:#eef2ff;color:var(--portal-blue);border-radius:12px;padding:9px 12px;font:inherit;font-size:.75rem;font-weight:950;cursor:pointer}.public-model-grid{display:flex;flex-wrap:wrap;gap:8px}.public-model-chip{border:1px solid var(--portal-line);border-radius:14px;background:#fff;color:var(--portal-ink);padding:10px 13px;font:inherit;font-weight:900;cursor:pointer}.public-model-chip:hover,.public-model-chip.is-selected{background:var(--portal-blue);border-color:var(--portal-blue);color:#fff}.public-model-manual{display:grid;gap:6px}.public-model-empty{width:100%;padding:13px;border-radius:14px;background:#f1f5f9;color:var(--portal-muted);font-weight:780}
.public-choice-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(205px,1fr));gap:10px}.public-choice-card{position:relative;display:grid;grid-template-columns:48px 1fr;grid-template-rows:auto auto auto;column-gap:12px;align-items:center;padding:15px;border:1px solid var(--portal-line);border-radius:21px;background:#fff;cursor:pointer;transition:.18s ease;overflow:hidden}.public-choice-card input{position:absolute;opacity:0;pointer-events:none}.public-choice-card:hover{transform:translateY(-2px);box-shadow:0 15px 35px rgba(2,6,23,.08)}.public-choice-card.is-selected{border-color:var(--portal-blue);box-shadow:0 0 0 3px rgba(0,18,158,.09),0 16px 38px rgba(0,18,158,.09)}.public-choice-icon{grid-row:1/4;width:48px;height:48px;display:grid;place-items:center;border-radius:16px;background:#eef2ff;color:var(--portal-blue);font-size:1.4rem;font-weight:1000}.public-choice-card.is-selected .public-choice-icon{background:linear-gradient(135deg,var(--portal-blue),var(--portal-cyan));color:#fff}.public-choice-card strong{font-size:.95rem}.public-choice-card small{color:var(--portal-muted);font-weight:750;line-height:1.35}.public-choice-card em{color:var(--portal-blue);font-size:.65rem;font-style:normal;font-weight:1000;letter-spacing:.06em;text-transform:uppercase}.public-choice-card.location{min-height:120px}
.public-booking-date-row{display:grid;grid-template-columns:minmax(220px,.45fr) minmax(250px,1fr);gap:10px}.public-booking-date-row label{display:grid;gap:6px}.public-booking-duration{display:grid;align-content:center;padding:12px 16px;border-radius:17px;background:#06122d;color:#fff}.public-booking-duration span{color:#7dd3fc;font-size:.62rem;font-weight:1000;letter-spacing:.08em}.public-booking-duration strong{margin-top:3px;font-size:1rem}.public-slot-status{display:grid;grid-template-columns:44px 1fr;gap:12px;align-items:center;padding:13px 15px;border-radius:18px;background:#f1f5f9;border:1px solid var(--portal-line)}.public-slot-status-mark{width:44px;height:44px;display:grid;place-items:center;border-radius:14px;background:#fff;color:var(--portal-blue);font-size:1.2rem}.public-slot-status strong,.public-slot-status small{display:block}.public-slot-status small{margin-top:2px;color:var(--portal-muted);font-weight:750}.public-slot-status[data-state="ready"],.public-slot-status[data-state="selected"]{background:#f0fdf4;border-color:#bbf7d0}.public-slot-status[data-state="error"]{background:#fff1f2;border-color:#fecdd3}.public-slot-status[data-state="loading"] .public-slot-status-mark{animation:publicSlotPulse 1s ease infinite alternate}@keyframes publicSlotPulse{to{transform:scale(.88);opacity:.55}}
.public-slot-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(142px,1fr));gap:9px}.public-slot{display:grid;gap:4px;padding:13px;border:1px solid var(--portal-line);border-radius:17px;background:#fff;color:var(--portal-ink);font:inherit;text-align:left;cursor:pointer;transition:.16s ease}.public-slot strong{font-size:1.25rem}.public-slot small{color:var(--portal-muted);font-weight:760}.public-slot:hover,.public-slot.is-selected{transform:translateY(-2px);background:linear-gradient(135deg,var(--portal-blue),var(--portal-cyan));border-color:transparent;color:#fff;box-shadow:0 14px 32px rgba(0,18,158,.2)}.public-slot:hover small,.public-slot.is-selected small{color:#dbeafe}.public-booking-confirmed{display:grid;gap:5px;max-width:520px;margin:18px auto;padding:20px;border-radius:24px;background:linear-gradient(135deg,#06122d,#00129e);color:#fff}.public-booking-confirmed span{color:#7dd3fc;font-size:.65rem;font-weight:1000;letter-spacing:.12em}.public-booking-confirmed strong{font-size:1.5rem}.public-booking-confirmed b{font-size:2rem}.public-booking-confirmed small{color:#dbeafe;font-weight:760}
@media(max-width:700px){.public-brand-grid{grid-template-columns:repeat(3,minmax(0,1fr));max-height:520px}.public-brand-card{min-height:100px;grid-template-rows:58px auto;padding:8px}.public-brand-logo{width:62px;height:54px}.public-booking-date-row{grid-template-columns:1fr}.public-choice-grid{grid-template-columns:1fr}.public-slot-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.public-vehicle-selected{grid-template-columns:58px 1fr}.public-vehicle-selected>[data-public-selected-logo]{width:58px;height:54px}}
@media(max-width:430px){.public-brand-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.public-slot-grid{grid-template-columns:1fr 1fr}.public-connected-question,.public-vehicle-identity,.public-booking-planner{padding:16px;border-radius:22px}}


/* v6.3.0 — trusted-device sign in and additive booking extras */
.portal-remember{display:flex;align-items:flex-start;gap:10px;margin:4px 0 2px;color:var(--portal-muted);font-weight:780;font-size:.82rem;line-height:1.4}.portal-remember input{width:18px;height:18px;margin:1px 0 0;accent-color:var(--portal-blue);flex:0 0 auto}.portal-admin-redirect{display:flex;align-items:center;justify-content:center;min-height:46px;margin-top:12px;padding:0 16px;border-radius:15px;background:#06122d;color:#fff!important;text-decoration:none;font-weight:950;box-shadow:0 12px 28px rgba(2,6,23,.14)}.portal-admin-redirect:hover{transform:translateY(-1px);background:#00129e}
.public-extra-card{min-height:112px}.public-extra-card input:checked~.public-choice-icon{background:linear-gradient(135deg,var(--portal-blue),var(--portal-cyan));color:#fff}.public-extra-card input:checked~strong,.public-extra-card input:checked~small,.public-extra-card input:checked~em{position:relative}.public-extra-card.is-selected{border-color:var(--portal-blue);box-shadow:0 0 0 3px rgba(0,18,158,.09),0 16px 38px rgba(0,18,158,.09)}


/* v6.7.0 — public website handoff, shared header and mobile coverage */
.public-form-page:not(.embed) .site-header{position:sticky;top:0;z-index:140}.public-form-page:not(.embed) .public-form-shell{padding-top:24px}.public-form-routebar{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:12px}.public-form-portal-link{color:var(--portal-blue);font-size:.78rem;font-weight:950;text-decoration:none}.public-postcode-check{display:grid;gap:14px;padding:22px;border:1px solid var(--portal-line);border-radius:28px;background:linear-gradient(180deg,#fff,#f8fafc);box-shadow:0 18px 52px rgba(2,6,23,.06)}.public-postcode-input-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:9px}.public-postcode-input-row input{min-height:52px;width:100%;padding:0 15px;border-radius:16px;border:1px solid var(--portal-line);background:#fff;color:var(--portal-ink);font:inherit;font-size:1rem;font-weight:850;text-transform:uppercase;letter-spacing:.04em;outline:none}.public-postcode-input-row input:focus{border-color:rgba(0,18,158,.45);box-shadow:0 0 0 4px rgba(0,18,158,.08)}.public-postcode-input-row button{min-height:52px;padding:0 18px;border:0;border-radius:16px;background:#06122d;color:#fff;font:inherit;font-weight:950;cursor:pointer}.public-coverage-status{display:grid;grid-template-columns:44px 1fr;gap:12px;align-items:center;padding:13px 15px;border-radius:18px;background:#f1f5f9;border:1px solid var(--portal-line)}.public-coverage-status-mark{width:44px;height:44px;display:grid;place-items:center;border-radius:14px;background:#fff;color:var(--portal-blue);font-size:1.2rem}.public-coverage-status strong,.public-coverage-status small{display:block}.public-coverage-status small{margin-top:2px;color:var(--portal-muted);font-weight:750;line-height:1.4}.public-coverage-status[data-state="covered"]{background:#f0fdf4;border-color:#bbf7d0}.public-coverage-status[data-state="covered"] .public-coverage-status-mark{color:#15803d}.public-coverage-status[data-state="review"]{background:#fffbeb;border-color:#fde68a}.public-coverage-status[data-state="outside"],.public-coverage-status[data-state="invalid"],.public-coverage-status[data-state="error"]{background:#fff1f2;border-color:#fecdd3}.public-coverage-status[data-state="checking"] .public-coverage-status-mark{animation:publicSlotPulse 1s ease infinite alternate}.public-choice-card.is-disabled{opacity:.58;cursor:not-allowed;background:#f8fafc}.public-choice-card.is-disabled:hover{transform:none;box-shadow:none}.portal-shared-header-spacer{height:0}.portal-page-with-shared-header .site-header{z-index:150}.portal-page-with-shared-header .portal-shell{padding-top:26px}.portal-page-with-shared-header .portal-section-nav{top:86px}
@media(max-width:700px){.public-form-routebar{align-items:flex-start}.public-postcode-input-row{grid-template-columns:1fr}.public-postcode-input-row button{width:100%}.public-form-page:not(.embed) .brand-phone{display:none}}

.portal-account-bar{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-bottom:14px;padding:9px 11px 9px 15px;border:1px solid var(--portal-line);border-radius:19px;background:rgba(255,255,255,.9);box-shadow:0 12px 34px rgba(2,6,23,.055);backdrop-filter:blur(18px)}.portal-account-bar>strong{color:var(--portal-blue);font-size:.72rem;font-weight:1000;letter-spacing:.08em;text-transform:uppercase}.portal-account-bar>div{display:flex;align-items:center;gap:7px;flex-wrap:wrap;justify-content:flex-end}.portal-account-bar a,.portal-account-bar button{display:inline-flex;align-items:center;justify-content:center;min-height:36px;padding:0 11px;border:1px solid var(--portal-line);border-radius:12px;background:#f8fafc;color:#0f172a;text-decoration:none;font:inherit;font-size:.74rem;font-weight:950;cursor:pointer}.portal-account-bar form{margin:0}.portal-account-bar button{background:#06122d;color:#fff}@media(max-width:620px){.portal-account-bar{align-items:flex-start}.portal-account-bar>div{gap:5px}.portal-account-bar a,.portal-account-bar button{min-height:34px;padding:0 9px}}

/* v6.8.0 — shared public header sits full-width and flush on portal/form surfaces. */
.portal-page-with-shared-header > .site-header,
.public-form-page:not(.embed) > .site-header{
  width:100%;
  max-width:none;
  margin:0;
  transform:none;
  align-self:stretch;
}
.portal-page-with-shared-header > .site-header .nav,
.public-form-page:not(.embed) > .site-header .nav{
  width:100%;
  max-width:1540px;
  margin-inline:auto;
}
@media(max-width:1180px){
  .portal-page-with-shared-header > .site-header .nav,
  .public-form-page:not(.embed) > .site-header .nav{padding-inline:16px}
}
@media(max-width:560px){
  .portal-page-with-shared-header .portal-shell{width:calc(100% - 16px)}
  .portal-page-with-shared-header .portal-section-nav{top:68px;overflow-x:auto;scrollbar-width:none}
  .portal-page-with-shared-header .portal-section-nav::-webkit-scrollbar{display:none}
}
@media(max-width:720px){.portal-page-with-shared-header input,.portal-page-with-shared-header select,.portal-page-with-shared-header textarea,.public-form-page input,.public-form-page select,.public-form-page textarea{font-size:16px}}

/* v7.0 registration-first public vehicle identity */
.public-registration-lookup-row{display:grid;grid-template-columns:minmax(220px,.38fr) minmax(0,.62fr);gap:12px;align-items:stretch}.public-registration-lookup-row>button{min-height:58px;border:0;border-radius:18px;padding:0 20px;background:linear-gradient(135deg,#00129e,#0ea5e9);color:#fff;font:inherit;font-weight:950;cursor:pointer;box-shadow:0 14px 30px rgba(0,18,158,.18)}.public-registration-lookup-row>button:disabled{opacity:.65;cursor:wait}.public-registration-lookup-state{display:grid;gap:3px;padding:14px 16px;border-radius:18px;background:#f8fafc;border:1px solid rgba(15,23,42,.08)}.public-registration-lookup-state span{font-size:.68rem;letter-spacing:.1em;font-weight:950;color:#64748b}.public-registration-lookup-state strong{font-size:1.02rem}.public-registration-lookup-state small{color:#64748b;line-height:1.4}.public-registration-lookup-state[data-state=loading]{background:#eff6ff;border-color:rgba(14,165,233,.24)}.public-registration-lookup-state[data-state=success]{background:#ecfdf5;border-color:rgba(16,185,129,.24)}.public-registration-lookup-state[data-state=success] span,.public-registration-lookup-state[data-state=success] strong{color:#047857}.public-registration-lookup-state[data-state=error]{background:#fffbeb;border-color:rgba(245,158,11,.28)}.public-registration-lookup-state[data-state=error] span,.public-registration-lookup-state[data-state=error] strong{color:#92400e}.public-manual-vehicle-fallback{padding:18px;border-radius:24px;background:#fffbeb;border:1px solid rgba(245,158,11,.28)}.public-manual-vehicle-head{margin-bottom:14px}.public-manual-vehicle-head span{font-size:.68rem;letter-spacing:.1em;font-weight:950;color:#92400e}.public-manual-vehicle-head h3{font-size:1.35rem;letter-spacing:-.035em;margin:4px 0}.public-manual-vehicle-head p{margin:0;color:#92400e;line-height:1.45}@media(max-width:720px){.public-registration-lookup-row{grid-template-columns:1fr}.public-registration-lookup-row>button{min-height:54px}.public-manual-vehicle-fallback{padding:14px;border-radius:20px}}

/* v7.2 — flush public booking header and live diary day pressure cards */
.public-form-page:not(.embed){display:block;min-height:100vh;padding:0!important;place-items:initial}
.public-form-page:not(.embed)>.site-header{width:100%;margin:0;max-width:none;border-radius:0}
.public-form-page:not(.embed)>.public-form-shell{width:min(920px,calc(100% - 30px));margin:0 auto;padding:24px 0 72px}
.public-booking-days{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;max-height:390px;overflow:auto;padding:2px 2px 5px;scrollbar-width:thin}
.public-booking-day{--day-busy:0%;display:grid;gap:7px;text-align:left;min-width:0;padding:15px;border:1px solid var(--portal-line);border-radius:20px;background:#fff;color:var(--portal-ink);font:inherit;cursor:pointer;box-shadow:0 10px 28px rgba(2,6,23,.045);transition:.18s ease}
.public-booking-day>span{font-size:.67rem;font-weight:1000;letter-spacing:.1em;text-transform:uppercase;color:var(--portal-muted)}
.public-booking-day>strong{font-size:1.12rem;letter-spacing:-.025em}
.public-booking-day>div{display:flex;align-items:center;justify-content:space-between;gap:8px;min-width:0}
.public-booking-day b{font-size:.72rem;color:#334155}
.public-booking-day em{font-size:.68rem;font-weight:900;font-style:normal;color:var(--portal-blue);white-space:nowrap}
.public-booking-day>i{display:block;height:6px;overflow:hidden;border-radius:999px;background:#e2e8f0}
.public-booking-day>i>u{display:block;width:var(--day-busy);height:100%;border-radius:inherit;background:linear-gradient(90deg,#10b981,#f59e0b 70%,#ef4444);text-decoration:none;transition:width .25s ease}
.public-booking-day:hover,.public-booking-day.is-selected{transform:translateY(-2px);border-color:rgba(0,18,158,.4);box-shadow:0 16px 36px rgba(0,18,158,.11)}
.public-booking-day.is-selected{background:linear-gradient(145deg,#06122d,#00129e);color:#fff}
.public-booking-day.is-selected>span,.public-booking-day.is-selected b{color:#dbeafe}.public-booking-day.is-selected em{color:#7dd3fc}.public-booking-day.is-selected>i{background:rgba(255,255,255,.18)}
.public-booking-day.is-unavailable{opacity:.55;cursor:not-allowed;background:#f8fafc;box-shadow:none}.public-booking-day.is-unavailable:hover{transform:none;border-color:var(--portal-line)}
.public-booking-days-loading{grid-column:1/-1;display:flex;align-items:center;gap:12px;min-height:92px;padding:18px;border:1px dashed var(--portal-line);border-radius:20px;color:var(--portal-muted)}
.public-booking-days-loading span{width:24px;height:24px;border:3px solid #dbeafe;border-top-color:var(--portal-blue);border-radius:50%;animation:portalDiarySpin .8s linear infinite}@keyframes portalDiarySpin{to{transform:rotate(360deg)}}
@media(max-width:760px){.public-form-page:not(.embed)>.public-form-shell{width:calc(100% - 16px);padding-top:14px}.public-booking-days{display:flex;overflow-x:auto;max-height:none;scroll-snap-type:x proximity;padding-bottom:8px}.public-booking-day{flex:0 0 min(72vw,245px);scroll-snap-align:start}.public-booking-days-loading{flex:1 0 100%}}

/* v7.6.0 — public price review assurance */
.public-pricing-review{display:grid;gap:7px;padding:19px 21px;border:1px solid rgba(14,165,233,.24);border-radius:23px;background:radial-gradient(360px 150px at 100% 0,rgba(14,165,233,.12),transparent 70%),linear-gradient(145deg,#f8fbff,#eef6ff);color:#0f172a}
.public-pricing-review>span{font-size:.66rem;font-weight:1000;letter-spacing:.105em;color:#00129e}
.public-pricing-review>strong{font-size:1rem;line-height:1.35;letter-spacing:-.015em}
.public-pricing-review>p{margin:0;color:#475569;font-size:.78rem;font-weight:750;line-height:1.55}
@media(max-width:600px){.public-pricing-review{padding:16px;border-radius:20px}.public-pricing-review>strong{font-size:.94rem}}

/* v7.7.0 — customer-controlled Service rescheduling and bank payment choice */
.portal-service-record{grid-template-columns:minmax(0,1fr) auto}.portal-reschedule{grid-column:1/-1;margin-top:9px;border-top:1px solid var(--portal-line);padding-top:9px}.portal-reschedule>summary{display:inline-flex;align-items:center;gap:8px;min-height:38px;padding:0 12px;border-radius:13px;background:#eef2ff;color:var(--portal-blue);font-size:.76rem;font-weight:950;cursor:pointer;list-style:none}.portal-reschedule>summary::-webkit-details-marker{display:none}.portal-reschedule>summary:after{content:'↓';font-weight:1000}.portal-reschedule[open]>summary:after{content:'↑'}.portal-reschedule-body{display:grid;gap:10px;margin-top:10px;padding:12px;border-radius:18px;background:linear-gradient(145deg,#f8fafc,#eef2ff);border:1px solid rgba(0,18,158,.09)}.portal-reschedule-status{font-size:.75rem;font-weight:900;color:#475569}.portal-reschedule-status[data-state="error"]{color:#be123c}.portal-reschedule-days{display:flex;gap:7px;overflow-x:auto;padding-bottom:4px;scrollbar-width:thin}.portal-reschedule-days button{flex:0 0 104px;display:grid;gap:2px;padding:10px;border:1px solid var(--portal-line);border-radius:16px;background:#fff;color:#0f172a;text-align:left;cursor:pointer}.portal-reschedule-days button:disabled{opacity:.48;cursor:not-allowed}.portal-reschedule-days button.active{background:linear-gradient(135deg,var(--portal-blue),var(--portal-cyan));color:#fff;border-color:transparent}.portal-reschedule-days span,.portal-reschedule-days small{font-size:.62rem;font-weight:900}.portal-reschedule-days strong{font-size:.85rem}.portal-reschedule-slots{display:grid;grid-template-columns:repeat(auto-fit,minmax(118px,1fr));gap:7px}.portal-reschedule-slot{display:grid;gap:2px;padding:11px;border:1px solid var(--portal-line);border-radius:15px;background:#fff;text-align:left;cursor:pointer}.portal-reschedule-slot strong{font-size:1rem}.portal-reschedule-slot span,.portal-reschedule-slot small{font-size:.64rem;color:var(--portal-muted);font-weight:850}.portal-reschedule-slot.active{border-color:var(--portal-cyan);box-shadow:0 0 0 3px rgba(14,165,233,.12)}.portal-reschedule-loading,.portal-reschedule-empty{grid-column:1/-1;padding:13px;border-radius:14px;background:#fff;color:var(--portal-muted);font-size:.74rem;font-weight:850}.portal-reschedule-empty.error{background:#fff1f2;color:#9f1239}.portal-reschedule-confirm{display:flex;align-items:center;justify-content:space-between;gap:12px;padding-top:4px}.portal-reschedule-confirm span{font-size:.78rem;font-weight:950;color:#0f172a}
.stripe-payment-choice{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:16px}.stripe-payment-option{min-width:0;padding:17px;border-radius:23px;background:#fff;border:1px solid var(--portal-line);box-shadow:0 14px 38px rgba(2,6,23,.055)}.stripe-payment-option>span{display:block;color:var(--portal-blue);font-size:.64rem;font-weight:1000;letter-spacing:.1em}.stripe-payment-option h2{margin:5px 0 6px;font-size:1.3rem}.stripe-payment-option p{margin:0 0 12px;color:var(--portal-muted);font-size:.78rem;font-weight:760;line-height:1.5}.bank-transfer-details{display:grid;gap:7px;margin:12px 0}.bank-transfer-details>div{display:grid;grid-template-columns:minmax(110px,.7fr) minmax(0,1.3fr);gap:8px;padding:9px 10px;border-radius:13px;background:#f8fafc}.bank-transfer-details span{font-size:.68rem;color:var(--portal-muted);font-weight:900}.bank-transfer-details strong{font-size:.78rem;overflow-wrap:anywhere}.bank-transfer-warning{padding:10px;border-radius:13px;background:#fff7ed;color:#9a3412;font-size:.7rem;font-weight:850;line-height:1.45}
@media(max-width:720px){.portal-service-record{grid-template-columns:1fr}.portal-reschedule-confirm{display:grid}.portal-reschedule-confirm .portal-btn{width:100%}.stripe-payment-choice{grid-template-columns:1fr}.bank-transfer-details>div{grid-template-columns:1fr}.portal-reschedule-days button{flex-basis:96px}}

/* v7.9.0 booking-type rescheduling */
.portal-reschedule-types{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:7px}.portal-reschedule-types button{min-width:0;padding:10px 9px;border:1px solid var(--portal-line);border-radius:14px;background:#fff;color:#334155;font:inherit;font-size:.7rem;font-weight:950;cursor:pointer}.portal-reschedule-types button:hover,.portal-reschedule-types button.active{border-color:var(--portal-blue);background:#eef2ff;color:var(--portal-blue);box-shadow:0 0 0 3px rgba(0,18,158,.08)}
@media(max-width:720px){.portal-reschedule-types{grid-template-columns:1fr 1fr}.portal-reschedule-types button{min-height:44px}}

/* v7.9.2 — postcode-first customer address and alternate mobile service location */
.public-mobile-service-address{grid-column:1/-1;display:grid;gap:12px;margin-top:12px;padding:16px;border:1px solid rgba(0,18,158,.12);border-radius:22px;background:linear-gradient(180deg,#f8fbff,#eef6ff)}.public-mobile-service-address[hidden],.public-alternate-service-address[hidden]{display:none!important}.public-mobile-service-summary{display:flex;align-items:center;justify-content:space-between;gap:14px}.public-mobile-service-summary>div{min-width:0}.public-mobile-service-summary span,.public-connected-question-head.compact span{display:block;color:var(--portal-blue);font-size:.64rem;font-weight:1000;letter-spacing:.11em}.public-mobile-service-summary strong,.public-mobile-service-summary small{display:block;min-width:0}.public-mobile-service-summary strong{margin-top:3px;font-size:1rem;line-height:1.35;overflow-wrap:anywhere}.public-mobile-service-summary small{margin-top:3px;color:var(--portal-muted);font-size:.76rem;font-weight:780}.public-mobile-service-summary button,.public-use-customer-address{flex:0 0 auto;min-height:42px;padding:0 13px;border:1px solid rgba(0,18,158,.16);border-radius:13px;background:#fff;color:var(--portal-blue);font:inherit;font-size:.75rem;font-weight:950;cursor:pointer}.public-alternate-service-address{display:grid;gap:11px;padding:15px;border-radius:18px;background:#fff;border:1px solid var(--portal-line)}.public-connected-question-head.compact h3{margin:.2rem 0;font-size:1.2rem}.public-connected-question-head.compact p{margin:0;color:var(--portal-muted);font-size:.8rem;font-weight:760;line-height:1.45}.public-alternate-service-address .public-form-field{margin:0}.public-use-customer-address{justify-self:start}.public-postcode-check .strive-address-manual textarea,.public-alternate-service-address .strive-address-manual textarea{min-height:96px}
@media(max-width:700px){.public-mobile-service-summary{align-items:stretch;display:grid}.public-mobile-service-summary button{width:100%}}


/* v7.9.3 — tighter public booking layout */
.public-form-fields>.full{grid-column:1/-1}
.public-selected-vehicle-placeholder{color:#00129e}
.public-selected-vehicle-placeholder svg{display:block;width:48px;height:34px;max-width:100%;max-height:100%}
.public-pricing-review{margin-top:22px}
@media(max-width:780px){.public-form-fields>.full{grid-column:auto}.public-pricing-review{margin-top:17px}}
.portal-history-note{display:inline-flex;margin-top:8px;padding:7px 9px;border-radius:11px;background:#f1f5f9;color:#64748b!important;font-size:.72rem!important;font-weight:850!important}.portal-service-quotes-card{grid-column:1/-1}.portal-service-quotes-card .portal-record-list{grid-template-columns:repeat(2,minmax(0,1fr))}@media(max-width:780px){.portal-service-quotes-card .portal-record-list{grid-template-columns:1fr}}
