:root {
    color-scheme: light dark;
    --page: #f7f6f2; --surface: #fff; --surface-blue: #eef6ff; --surface-warm: #fff2ec;
    --ink: #0b2038; --muted: #58697a; --line: #c8d5e2; --primary: #ff5d45;
    --primary-hover: #e94732; --secondary: #1767d9; --success: #3e9b58; --warning: #e98123;
    --header: rgba(247,246,242,.96); --focus: #075fcb; --max: 1440px;
}
@media (prefers-color-scheme: dark) {
    :root:not([data-theme]) {
        --page:#041629; --surface:#0a2138; --surface-blue:#0c2945; --surface-warm:#221f23;
        --ink:#f4f8fc; --muted:#a6b8c8; --line:#294a66; --primary:#ff654d;
        --primary-hover:#ff806d; --secondary:#55a1ff; --success:#71cc79; --warning:#ffa047;
        --header:rgba(4,22,41,.96); --focus:#74b6ff;
    }
}
[data-theme="dark"] {
    --page:#041629; --surface:#0a2138; --surface-blue:#0c2945; --surface-warm:#221f23;
    --ink:#f4f8fc; --muted:#a6b8c8; --line:#294a66; --primary:#ff654d;
    --primary-hover:#ff806d; --secondary:#55a1ff; --success:#71cc79; --warning:#ffa047;
    --header:rgba(4,22,41,.96); --focus:#74b6ff;
}
[data-theme="light"] {
    --page:#f7f6f2; --surface:#fff; --surface-blue:#eef6ff; --surface-warm:#fff2ec;
    --ink:#0b2038; --muted:#58697a; --line:#c8d5e2; --primary:#ff5d45;
    --primary-hover:#e94732; --secondary:#1767d9; --success:#3e9b58; --warning:#e98123;
    --header:rgba(247,246,242,.96); --focus:#075fcb;
}
* { box-sizing:border-box; }
html { scroll-behavior:smooth; }
body { margin:0; background:var(--page); color:var(--ink); font:400 16px/1.55 Inter, ui-sans-serif, system-ui, -apple-system, "Segoe UI", sans-serif; }
a { color:inherit; text-decoration:none; }
a:hover { color:var(--secondary); }
button, a { -webkit-tap-highlight-color:transparent; }
:focus-visible { outline:3px solid var(--focus); outline-offset:3px; border-radius:3px; }
.shell { width:min(calc(100% - 40px), var(--max)); margin-inline:auto; }
.skip-link { position:fixed; z-index:100; top:10px; left:10px; padding:10px 16px; background:var(--ink); color:var(--page); transform:translateY(-150%); }
.skip-link:focus { transform:none; }
.site-offer-bar { position:relative; z-index:22; background:var(--primary); color:#fff; }
.site-offer-bar .shell { min-height:42px; display:flex; align-items:center; justify-content:center; gap:18px; }
.site-offer-bar p { margin:0; font-size:.8rem; font-weight:650; }
.site-offer-bar a { color:#fff; font-size:.78rem; font-weight:900; text-decoration:underline; text-underline-offset:3px; white-space:nowrap; }
.offer-bar-label { display:inline-flex; align-items:center; gap:7px; padding:3px 8px; border:1px solid rgba(255,255,255,.65); border-radius:999px; font-size:.62rem; font-weight:900; letter-spacing:.08em; text-transform:uppercase; white-space:nowrap; }
.offer-bar-label i { width:6px; height:6px; border-radius:50%; background:#fff; animation:offer-pulse 1.8s ease-in-out infinite; }
.offer-message-short { display:none; }
@keyframes offer-pulse { 50% { opacity:.35; } }
.sr-only { position:absolute; width:1px; height:1px; overflow:hidden; clip:rect(0,0,0,0); white-space:nowrap; }
.site-header { position:relative; z-index:20; background:var(--header); border-bottom:1px solid var(--line); }
.utility { border-bottom:1px solid var(--line); font-size:.78rem; }
.utility-inner { min-height:42px; display:flex; align-items:center; justify-content:space-between; gap:16px; }
.utility nav { display:flex; align-items:center; gap:13px; }
.nav-wrap { min-height:78px; display:flex; align-items:center; gap:34px; }
.brand { flex:none; font-size:1.65rem; font-weight:800; letter-spacing:-.05em; }
.brand strong { color:var(--primary); }
.primary-nav { display:flex; align-items:center; justify-content:center; gap:22px; margin-left:auto; }
.nav-item { position:relative; display:flex; align-items:center; }
.nav-item>a { padding:27px 0 25px; font-size:.91rem; white-space:nowrap; border-bottom:2px solid transparent; }
.nav-item>a[aria-current="page"] { color:var(--secondary); border-color:var(--secondary); }
.submenu-toggle { border:0; padding:3px; margin-left:4px; background:transparent; color:var(--muted); cursor:pointer; }
.submenu { display:none; position:absolute; top:65px; left:-18px; min-width:210px; padding:9px; border:1px solid var(--line); border-radius:10px; background:var(--surface); box-shadow:0 12px 30px rgba(0,0,0,.14); }
.submenu a { display:block; padding:9px 10px; border-radius:5px; }
.submenu a:hover { background:var(--surface-blue); }
.nav-item:hover .submenu, .nav-item:focus-within .submenu, .nav-item.submenu-open .submenu { display:block; }
.nav-actions { display:flex; align-items:center; gap:12px; }
.theme-toggle, .menu-toggle { border:1px solid var(--line); background:var(--surface); color:var(--ink); cursor:pointer; }
.theme-toggle { width:40px; height:40px; border-radius:50%; font-size:1.25rem; }
.menu-toggle { display:none; padding:9px 12px; border-radius:6px; }
.button { display:inline-flex; align-items:center; justify-content:center; gap:12px; min-height:48px; padding:12px 22px; border-radius:5px; background:var(--primary); color:#fff; font-weight:700; box-shadow:0 4px 0 color-mix(in srgb, var(--primary), #000 22%); transition:.15s ease; }
.button:hover { background:var(--primary-hover); color:#fff; transform:translateY(-1px); }
.button-small { min-height:40px; padding:8px 15px; font-size:.88rem; }
.button-secondary { background:var(--secondary); box-shadow:0 4px 0 color-mix(in srgb, var(--secondary), #000 25%); }
.text-link, .card-link, .side-offer a, .support-links a { color:var(--secondary); font-weight:700; }
.eyebrow { display:inline-block; padding:5px 11px; border-radius:999px; background:var(--secondary); color:#fff; font-size:.75rem; font-weight:800; letter-spacing:.04em; text-transform:uppercase; }
.breadcrumbs { margin-bottom:20px; }
.breadcrumbs ol { display:flex; flex-wrap:wrap; gap:8px; align-items:center; margin:0; padding:0; list-style:none; color:var(--muted); font-size:.78rem; }
.breadcrumbs li+li::before { content:"/"; margin-right:8px; color:var(--line); }
.breadcrumbs a { color:var(--secondary); }
.home-hero { padding:28px 0 20px; }
.offer-mosaic { display:grid; grid-template-columns:minmax(0,3fr) minmax(260px,1fr); grid-template-rows:1fr 1fr; gap:18px; }
.main-offer { grid-row:1 / 3; min-height:470px; position:relative; overflow:hidden; display:grid; grid-template-columns:1.25fr .75fr; padding:46px; border:1px solid color-mix(in srgb, var(--secondary), var(--line) 45%); border-radius:14px; background:var(--surface-blue); }
.offer-copy { position:relative; z-index:2; }
h1,h2,h3,p { margin-top:0; }
h1 { max-width:720px; margin:18px 0; font-size:clamp(2.65rem,5vw,5.2rem); line-height:.98; letter-spacing:-.055em; }
.main-offer h1 { max-width:720px; font-size:clamp(3rem,4.9vw,5rem); }
.main-offer .offer-copy>p { max-width:520px; color:var(--muted); font-size:1.12rem; }
.hero-actions { display:flex; align-items:center; gap:28px; flex-wrap:wrap; margin:28px 0; }
.hero-price { margin-top:24px; }
.hero-price>span,.from,.service-price>span { color:var(--muted); font-size:.88rem; }
.price { margin:0; font-size:.82rem; }
.price span { color:var(--ink); font-size:2.65rem; line-height:1.1; font-weight:800; letter-spacing:-.045em; }
.uk-map { display:grid; place-items:center; min-width:260px; opacity:.8; }
.uk-map svg { width:100%; max-height:370px; }
.uk-map path:first-child { fill:none; stroke:color-mix(in srgb, var(--secondary), transparent 48%); stroke-width:2; }
.uk-map path:nth-child(2) { fill:none; stroke:var(--secondary); stroke-width:2; }
.uk-map circle { fill:var(--page); stroke:var(--secondary); stroke-width:4; }
.uk-map circle:nth-last-child(4) { stroke:var(--primary); }
.side-offer { display:flex; flex-direction:column; justify-content:center; padding:28px; border:1px solid var(--line); border-radius:14px; background:var(--surface); }
.side-offer:first-of-type { background:var(--surface-warm); }
.side-offer h2 { margin-bottom:12px; font-size:1.3rem; }
.side-offer p:not(.price) { color:var(--muted); font-size:.88rem; }
.side-offer a { margin-top:auto; }
.accent-coral .price span,.accent-coral>a,.accent-coral .card-link { color:var(--primary); }
.accent-blue .price span,.accent-blue>a,.accent-blue .card-link { color:var(--secondary); }
.accent-green .price span,.accent-green>a,.accent-green .card-link { color:var(--success); }
.trust-strip { border-block:1px solid var(--line); }
.trust-items { display:grid; grid-template-columns:repeat(4,1fr); min-height:55px; align-items:center; text-align:center; font-size:.88rem; }
.trust-items span+span { border-left:1px solid var(--line); }
.section { padding:55px 0; }
.products-section { padding-top:30px; }
.section h2,.products-section h2,.network-panel h2 { font-size:clamp(2rem,3vw,3rem); line-height:1.05; letter-spacing:-.04em; }
.product-grid { display:grid; grid-template-columns:repeat(4,1fr); gap:18px; }
.product-card { position:relative; display:flex; flex-direction:column; min-height:340px; padding:26px; border:1px solid var(--line); border-radius:12px; background:var(--surface); }
.product-card.accent-green { background:color-mix(in srgb, var(--success) 8%, var(--surface)); border-color:color-mix(in srgb, var(--success) 60%, var(--line)); }
.product-card.accent-coral { background:color-mix(in srgb, var(--primary) 7%, var(--surface)); border-color:color-mix(in srgb, var(--primary) 50%, var(--line)); }
.product-card.accent-blue { background:color-mix(in srgb, var(--secondary) 7%, var(--surface)); border-color:color-mix(in srgb, var(--secondary) 55%, var(--line)); }
.product-card h3 { margin-bottom:18px; font-size:1.15rem; }
.product-card ul,.service-price ul { list-style:none; padding:0; margin:14px 0 20px; color:var(--muted); font-size:.94rem; }
.product-card .card-link { margin-top:auto; }
.popular { position:absolute; top:17px; right:17px; padding:3px 7px; border:1px solid var(--primary); border-radius:999px; color:var(--primary); font-size:.67rem; }
.network-section { padding:0 0 22px; }
.network-panel { display:grid; grid-template-columns:1fr .8fr 1.25fr; align-items:center; gap:40px; min-height:310px; padding:40px; border:1px solid color-mix(in srgb,var(--secondary),var(--line) 40%); border-radius:13px; background:var(--surface-blue); }
.network-panel>div:first-child p { max-width:420px; color:var(--muted); }
.mini-network { position:relative; height:220px; }
.mini-network:before,.mini-network:after,.mini-network i { content:""; position:absolute; height:2px; background:var(--secondary); transform-origin:left; }
.mini-network:before { width:120px; left:38px; top:70px; transform:rotate(34deg); }
.mini-network:after { width:105px; left:75px; top:140px; transform:rotate(-28deg); }
.mini-network i { width:95px; left:42px; top:70px; transform:rotate(74deg); }
.node { position:absolute; z-index:2; width:15px; height:15px; border:4px solid var(--primary); border-radius:50%; background:var(--surface-blue); }
.n1 { left:32px; top:63px; }.n2 { left:72px; top:133px; }.n3 { left:163px; top:86px; border-color:var(--success); }
.location-list { width:100%; }
.location { display:flex; justify-content:space-between; align-items:center; gap:20px; padding:14px 0; border-bottom:1px solid var(--line); }
.location:last-child { border-bottom:0; }
.location strong,.location small { display:block; }
.location small { color:var(--muted); }
.status { font-weight:700; font-size:.85rem; white-space:nowrap; }
.status-online { color:var(--success); }.status-coming-soon { color:var(--warning); }
.support-section { padding:0 0 25px; }
.support-band { display:grid; grid-template-columns:.9fr 1fr 1.55fr; align-items:center; gap:30px; padding:26px 30px; border:1px solid color-mix(in srgb,var(--warning),var(--line) 55%); border-radius:12px; background:color-mix(in srgb,var(--warning) 4%,var(--surface)); }
.support-title { display:flex; align-items:center; gap:22px; }
.support-title h2 { margin:0; font-size:1.35rem; line-height:1.12; }
.support-icon { display:grid; place-items:center; width:52px; height:52px; border:3px solid var(--primary); border-radius:50%; color:var(--primary); font-size:1.5rem; }
.support-band>p { margin:0; padding-inline:20px; border-inline:1px solid var(--line); color:var(--muted); }
.support-links { display:flex; justify-content:space-between; gap:18px; font-size:.88rem; }
.site-footer { border-top:1px solid var(--line); }
.footer-grid { display:grid; grid-template-columns:2fr 1fr 1fr; padding-block:24px; }
.footer-grid section { padding:0 32px; border-right:1px solid var(--line); }
.footer-grid section:first-child { padding-left:0; }.footer-grid section:last-child { border:0; }
.footer-grid h2 { font-size:.73rem; text-transform:uppercase; letter-spacing:.06em; }
.footer-links { display:grid; gap:7px; color:var(--muted); font-size:.82rem; }
.footer-links.two-columns { grid-template-columns:1fr 1fr; }
.footer-bottom { display:flex; justify-content:space-between; gap:20px; padding-block:18px; border-top:1px solid var(--line); color:var(--muted); font-size:.75rem; }
.footer-bottom b { padding-inline:8px; }
.service-hero { padding:68px 0; background:var(--surface-blue); border-bottom:1px solid var(--line); }
.service-hero-grid { display:grid; grid-template-columns:1.6fr .75fr; align-items:center; gap:8vw; }
.service-hero .lead { max-width:750px; color:var(--muted); font-size:1.22rem; }
.service-price { padding:32px; border:1px solid var(--line); border-radius:14px; background:var(--surface); }
.service-price .price { margin:10px 0 25px; }
.service-price li { padding:7px 0; border-bottom:1px solid var(--line); }
.split-content { display:grid; grid-template-columns:.8fr 1.2fr; gap:8vw; align-items:start; }
.split-content>div:first-child p { color:var(--muted); font-size:1.08rem; }
.feature-grid { display:grid; grid-template-columns:1fr 1fr; gap:16px; }
.feature-grid article { min-height:170px; padding:24px; border:1px solid var(--line); border-radius:10px; background:var(--surface); }
.feature-grid article>span { color:var(--primary); font-size:1.5rem; }
.feature-grid h3 { margin:10px 0 6px; }.feature-grid p { color:var(--muted); font-size:.9rem; }
.location-card h2 { font-size:1.55rem; }
.home-hero-v2 { padding:clamp(48px,7vw,105px) 0 50px; overflow:hidden; border-bottom:1px solid var(--line); background:var(--surface-blue); }
.hero-v2-grid { display:grid; grid-template-columns:1.25fr .75fr; align-items:center; gap:8vw; }
.hero-v2-copy h1 { max-width:850px; margin:22px 0; font-size:clamp(3.6rem,7vw,7.5rem); line-height:.88; letter-spacing:-.065em; }
.hero-v2-copy>p { max-width:700px; color:var(--muted); font-size:clamp(1.05rem,1.5vw,1.3rem); }
.hero-assurances { display:flex; flex-wrap:wrap; gap:12px 28px; margin-top:40px; padding-top:25px; border-top:1px solid var(--line); color:var(--muted); font-size:.82rem; }
.hero-assurances strong { color:var(--ink); }
.hero-v2-visual { position:relative; min-height:430px; }
.network-orbit { position:absolute; border:1px solid color-mix(in srgb,var(--secondary) 42%,transparent); border-radius:50%; }
.orbit-one { inset:25px 15px 55px 60px; }.orbit-two { inset:90px 70px 0 5px; }
.map-node { position:absolute; display:flex; align-items:center; gap:8px; color:var(--ink); font-size:.78rem; font-weight:700; }
.map-node i { width:12px; height:12px; border:3px solid var(--primary); border-radius:50%; background:var(--surface-blue); box-shadow:0 0 0 7px color-mix(in srgb,var(--primary) 12%,transparent); }
.node-glasgow { top:70px; left:25%; }.node-manchester { top:180px; right:8%; }.node-maidenhead { bottom:105px; left:12%; }
.hero-location-card { position:absolute; right:3%; bottom:18px; min-width:255px; padding:22px; border:1px solid var(--line); border-radius:10px; background:var(--surface); box-shadow:0 18px 45px rgba(0,0,0,.12); }
.hero-location-card span,.hero-location-card strong,.hero-location-card small { display:block; }.hero-location-card span { color:var(--secondary); font-size:.7rem; font-weight:800; text-transform:uppercase; }.hero-location-card strong { margin:5px 0; font-size:1.25rem; }.hero-location-card small { color:var(--muted); }
.service-chooser { padding:65px 0; }
.chooser-heading { display:flex; justify-content:space-between; align-items:end; gap:50px; margin-bottom:30px; }.chooser-heading h2 { margin:14px 0 0; font-size:clamp(2.4rem,4vw,4rem); letter-spacing:-.05em; }.chooser-heading>p { max-width:490px; margin:0; color:var(--muted); }
.service-link-grid { display:grid; grid-template-columns:1fr 1fr; border-top:1px solid var(--line); }
.service-link { display:grid; grid-template-columns:38px 1fr auto 24px; align-items:center; gap:18px; min-height:125px; padding:22px 25px; border-bottom:1px solid var(--line); transition:.15s ease; }
.service-link:nth-child(odd) { border-right:1px solid var(--line); }.service-link:hover { z-index:1; background:var(--surface); color:var(--ink); box-shadow:0 10px 30px rgba(0,0,0,.08); transform:translateY(-2px); }.service-link-featured { background:color-mix(in srgb,var(--success) 6%,transparent); }
.service-number { color:var(--muted); font-size:.72rem; }.service-link strong,.service-link small { display:block; }.service-link strong { font-size:1.05rem; }.service-link small { margin-top:4px; color:var(--muted); font-size:.78rem; }.service-start { color:var(--muted); font-size:.72rem; white-space:nowrap; }.service-start b { color:var(--ink); font-size:1.05rem; }.service-link>i { color:var(--secondary); font-size:1.2rem; font-style:normal; }
.home-service-story { padding:80px 0; border-top:1px solid var(--line); }
.story-tinted { background:var(--surface-blue); }
.story-row { display:grid; grid-template-columns:.9fr 1.1fr; align-items:center; gap:9vw; }
.story-reverse .story-copy { order:2; }.story-reverse .included-list { order:1; }
.story-copy h2,.why-grid h2,.workload-grid h2 { margin:18px 0; font-size:clamp(2.35rem,4vw,4.25rem); line-height:1; letter-spacing:-.055em; }
.story-copy>p,.workload-grid article>p { max-width:650px; color:var(--muted); font-size:1.05rem; }
.story-options { border-top:1px solid var(--line); }
.story-options a { display:flex; align-items:center; justify-content:space-between; gap:30px; padding:23px 5px; border-bottom:1px solid var(--line); }
.story-options a:hover { padding-inline:15px; background:var(--surface); color:var(--ink); }
.story-options strong,.story-options small { display:block; }.story-options small { margin-top:3px; color:var(--muted); font-size:.78rem; }.story-options b { color:var(--secondary); font-size:.86rem; white-space:nowrap; }
.story-actions { display:flex; flex-wrap:wrap; gap:25px; margin-top:28px; }
.included-list { display:grid; grid-template-columns:1fr 1fr; border-top:1px solid var(--line); border-left:1px solid var(--line); }
.included-list>span { min-height:145px; padding:24px; border-right:1px solid var(--line); border-bottom:1px solid var(--line); }
.included-list i,.included-list strong,.included-list small { display:block; }.included-list i { color:var(--primary); font-size:.7rem; font-style:normal; }.included-list strong { margin:22px 0 4px; }.included-list small { color:var(--muted); font-size:.78rem; }
.workload-split { padding:70px 0; }
.workload-grid { display:grid; grid-template-columns:1fr 1fr; border-block:1px solid var(--line); }
.workload-grid article { padding:50px 5vw; }.workload-grid article:first-child { padding-left:0; border-right:1px solid var(--line); }.workload-grid article:last-child { padding-right:0; }
.workload-grid h2 { font-size:clamp(2rem,3.2vw,3.3rem); }
.why-section { padding:80px 0; background:var(--ink); color:var(--page); }
.why-grid { display:grid; grid-template-columns:.8fr 1.2fr; gap:8vw; }.why-grid .eyebrow { background:var(--primary); }.why-grid h2 { color:#fff; }
.why-points { display:grid; grid-template-columns:1fr 1fr; }.why-points article { min-height:150px; padding:25px; border-left:1px solid color-mix(in srgb,#fff 20%,transparent); border-bottom:1px solid color-mix(in srgb,#fff 20%,transparent); }.why-points strong { color:#fff; }.why-points p { margin:8px 0 0; color:#b8c8d7; font-size:.85rem; }
.home-clearance-banner { border-bottom:1px solid color-mix(in srgb,var(--primary),var(--line) 55%); background:var(--surface-warm); }.home-clearance-banner .shell { min-height:74px; display:flex; align-items:center; gap:22px; }.home-clearance-banner p { flex:1; margin:0; color:var(--muted); }.home-clearance-banner p strong { color:var(--ink); }.home-clearance-banner a { color:var(--primary); font-weight:800; white-space:nowrap; }
.clearance-label { display:inline-flex; align-items:center; gap:9px; color:var(--primary); font-size:.72rem; font-weight:900; letter-spacing:.08em; text-transform:uppercase; }.clearance-label i,.stock-state i { width:8px; height:8px; border-radius:50%; background:var(--primary); box-shadow:0 0 0 5px color-mix(in srgb,var(--primary) 15%,transparent); }
.clearance-hero { padding:70px 0; background:var(--surface-blue); border-bottom:1px solid var(--line); }.clearance-hero-grid { display:grid; grid-template-columns:1.25fr .75fr; gap:8vw; align-items:center; }.clearance-hero h1 { max-width:900px; }.clearance-hero-grid>div>p { max-width:760px; color:var(--muted); font-size:1.15rem; }
.clearance-explainer { padding:32px; border:1px solid var(--line); border-radius:12px; background:var(--surface); }.clearance-explainer>span { color:var(--primary); font-size:.72rem; font-weight:900; text-transform:uppercase; }.clearance-explainer h2 { margin:10px 0; font-size:1.55rem; line-height:1.1; }.clearance-explainer p { color:var(--muted); font-size:.86rem; }.clearance-explainer ul { margin:20px 0 0; padding:16px 0 0; border-top:1px solid var(--line); list-style:none; }.clearance-explainer li { padding:5px 0; font-size:.82rem; }.clearance-explainer li::before { content:"✓"; margin-right:9px; color:var(--success); font-weight:900; }
.clearance-trust { border-bottom:1px solid var(--line); }.clearance-trust .shell { display:grid; grid-template-columns:repeat(4,1fr); min-height:70px; align-items:center; }.clearance-trust span { text-align:center; color:var(--muted); font-size:.78rem; }.clearance-trust span+span { border-left:1px solid var(--line); }.clearance-trust strong { display:block; color:var(--ink); font-size:.9rem; }
.clearance-list { border-top:1px solid var(--line); }.clearance-offer { display:grid; grid-template-columns:1.05fr 1.45fr .65fr; gap:35px; align-items:center; padding:30px 20px; border-bottom:1px solid var(--line); background:var(--surface); }.clearance-offer:hover { position:relative; z-index:1; box-shadow:0 10px 35px rgba(0,0,0,.08); }.offer-sold-out { opacity:.64; background:transparent; }.offer-badge { display:inline-block; color:var(--primary); font-size:.65rem; font-weight:900; letter-spacing:.05em; text-transform:uppercase; }.clearance-offer h3 { margin:6px 0; font-size:1.25rem; }.clearance-offer-title p { margin:0; color:var(--muted); font-size:.8rem; }.clearance-specs { display:grid; grid-template-columns:1fr 1fr; gap:7px 18px; }.clearance-specs span { color:var(--muted); font-size:.78rem; }.clearance-specs i { margin-right:7px; color:var(--success); font-style:normal; font-weight:900; }.clearance-buy { display:flex; flex-direction:column; align-items:flex-start; }.clearance-buy .price { margin:7px 0 3px; }.clearance-buy .price span { font-size:2rem; }.clearance-buy>small { margin-bottom:12px; color:var(--muted); }.stock-state { display:flex; align-items:center; gap:8px; color:var(--primary); font-size:.65rem; font-weight:900; text-transform:uppercase; }.stock-sold-out { color:var(--muted); }.stock-sold-out i { background:var(--muted); box-shadow:none; }.sold-button { width:100%; padding:11px; border:1px solid var(--line); border-radius:5px; color:var(--muted); text-align:center; font-size:.8rem; font-weight:800; }.clearance-fineprint { margin:18px 0 0; color:var(--muted); font-size:.74rem; }
.clearance-fit { padding:75px 0; background:#061a2d; color:#fff; }.clearance-fit>.shell { display:grid; grid-template-columns:.75fr 1.25fr; gap:8vw; }.clearance-fit h2 { margin:15px 0; color:#fff; font-size:clamp(2.4rem,4vw,4rem); line-height:1; letter-spacing:-.05em; }.clearance-fit .why-points strong { color:#fff; }
.faq-list { border-top:1px solid var(--line); }.faq-list details { border-bottom:1px solid var(--line); }.faq-list summary { padding:20px 5px; font-weight:800; cursor:pointer; }.faq-list p { padding:0 5px 20px; margin:0; color:var(--muted); }
.section-heading { display:flex; align-items:end; justify-content:space-between; gap:40px; margin-bottom:28px; }
.section-heading h2 { margin:14px 0 8px; }
.section-heading p { max-width:720px; margin:0; color:var(--muted); }
.promo-notice { flex:0 0 330px; display:flex; flex-direction:column; padding:17px 20px; border:1px solid var(--primary); border-radius:9px; background:var(--surface-warm); }
.promo-notice strong { color:var(--primary); font-size:.75rem; text-transform:uppercase; letter-spacing:.08em; }
.service-plan-grid { display:grid; grid-template-columns:repeat(4,1fr); gap:18px; align-items:stretch; }
.service-plan { position:relative; display:flex; flex-direction:column; min-width:0; padding:25px; border:1px solid var(--line); border-radius:12px; background:var(--surface); }
.service-plan:has(.order-dropdown[open]) { z-index:6; }
.service-plan.featured-plan { border:2px solid var(--primary); background:color-mix(in srgb,var(--primary) 5%,var(--surface)); }
.service-plan h3 { padding-right:55px; margin-bottom:7px; font-size:1.22rem; }
.plan-description { min-height:50px; color:var(--muted); font-size:.88rem; }
.service-plan .price { margin:4px 0 16px; }
.service-plan .price span { font-size:2.25rem; }
.service-plan ul { list-style:none; padding:15px 0; margin:0 0 18px; border-top:1px solid var(--line); }
.service-plan li { padding:5px 0; color:var(--muted); font-size:.87rem; }
.service-plan li span { color:var(--success); font-weight:800; }
.plan-badge { position:absolute; top:17px; right:17px; padding:3px 8px; border-radius:999px; background:var(--primary); color:#fff; font-size:.66rem; font-weight:800; text-transform:uppercase; }
.plan-order { width:100%; margin-top:auto; }
.plan-meta { margin:15px 0 0; color:var(--muted); font-size:.72rem; text-align:center; }
.order-dropdown { position:relative; margin-top:auto; }
.order-dropdown summary { display:flex; align-items:center; justify-content:space-between; min-height:48px; padding:12px 18px; border-radius:5px; background:var(--primary); color:#fff; font-weight:700; cursor:pointer; box-shadow:0 4px 0 color-mix(in srgb,var(--primary),#000 22%); list-style:none; }
.order-dropdown summary::-webkit-details-marker { display:none; }
.order-dropdown[open] summary { border-radius:5px 5px 0 0; box-shadow:none; }
.order-dropdown[open] summary span { transform:rotate(180deg); }
.order-locations { position:absolute; z-index:5; left:0; right:0; top:100%; overflow:hidden; border:1px solid var(--line); border-radius:0 0 7px 7px; background:var(--surface); box-shadow:0 12px 25px rgba(0,0,0,.18); }
.order-locations a { display:flex; align-items:center; justify-content:space-between; gap:12px; padding:11px 13px; border-bottom:1px solid var(--line); color:var(--ink); font-size:.8rem; }
.order-locations a:last-child { border-bottom:0; }
.order-locations a:hover { background:var(--surface-blue); color:var(--secondary); }
.order-locations strong,.order-locations small { display:block; }
.order-locations small { color:var(--muted); font-size:.68rem; }
.location-unavailable { display:flex; align-items:center; justify-content:space-between; gap:12px; padding:11px 13px; color:var(--muted); font-size:.8rem; }
.location-unavailable em { color:var(--warning); font-size:.68rem; font-style:normal; font-weight:800; text-transform:uppercase; }
.dedicated-list { display:grid; gap:12px; }
.dedicated-list-head,.dedicated-row { display:grid; grid-template-columns:1.45fr 1.15fr .85fr 1.05fr 1.05fr .9fr auto; align-items:center; gap:22px; }
.dedicated-list-head { padding:0 24px 5px; color:var(--muted); font-size:.72rem; font-weight:800; letter-spacing:.05em; text-transform:uppercase; }
.dedicated-row { position:relative; padding:22px 24px; border-block:1px solid var(--line); background:var(--surface); }
.dedicated-row:first-of-type { border-radius:10px 10px 0 0; }
.dedicated-row:last-child { border-radius:0 0 10px 10px; }
.dedicated-row h3 { margin:3px 0; font-size:1.05rem; }
.dedicated-row p { margin:0; color:var(--muted); font-size:.76rem; line-height:1.35; }
.dedicated-row>div:not(.dedicated-name) strong,.dedicated-row>div:not(.dedicated-name) small { display:block; }
.dedicated-row>div:not(.dedicated-name) strong { font-size:.88rem; }
.dedicated-row>div:not(.dedicated-name) small { margin-top:3px; color:var(--muted); font-size:.68rem; }
.dedicated-badge { display:inline-block; color:var(--secondary); font-size:.66rem; font-weight:800; letter-spacing:.04em; text-transform:uppercase; }
.dedicated-price>span { display:block; color:var(--muted); font-size:.68rem; }
.dedicated-price>strong { color:var(--ink); font-size:1.55rem!important; letter-spacing:-.04em; }
.dedicated-order { display:inline-flex; align-items:center; justify-content:center; gap:8px; min-height:42px; padding:9px 16px; border:2px solid var(--secondary); border-radius:6px; color:var(--secondary); font-weight:800; white-space:nowrap; }
.dedicated-order:hover { background:var(--secondary); color:#fff; }
.service-availability { padding:22px 0 0; }
.availability-inner { display:grid; grid-template-columns:1.4fr .8fr auto; align-items:center; gap:35px; padding:25px 30px; border:1px solid var(--line); border-radius:11px; background:var(--surface); }
.availability-inner h2 { margin:10px 0 4px; font-size:1.45rem; letter-spacing:-.03em; }
.availability-inner p { margin:0; color:var(--muted); font-size:.88rem; }
.availability-location { display:grid; grid-template-columns:auto 1fr auto; align-items:center; gap:12px; padding-inline:25px; border-inline:1px solid var(--line); }
.availability-location strong,.availability-location small { display:block; }
.availability-location small { color:var(--muted); font-size:.75rem; }
.availability-dot { width:11px; height:11px; border-radius:50%; background:var(--success); box-shadow:0 0 0 5px color-mix(in srgb,var(--success) 17%,transparent); }
@media (max-width:1120px) {
    .nav-wrap { gap:18px; }.primary-nav { gap:14px; }.nav-item>a { font-size:.82rem; }.button-small { display:none; }
    .main-offer { padding:34px; }.product-card { padding:20px; }
    .support-band { grid-template-columns:1fr 1fr; }.support-links { grid-column:1/-1; }.support-band>p { border-right:0; }
    .service-plan-grid { grid-template-columns:repeat(3,1fr); }
    .dedicated-list-head { display:none; }
    .dedicated-row { grid-template-columns:1.3fr 1fr 1fr; }
    .dedicated-name { grid-column:1/-1; padding-bottom:12px; border-bottom:1px solid var(--line); }
    .dedicated-order { align-self:end; }
    .availability-inner { grid-template-columns:1fr 1fr; }.availability-inner>a { grid-column:1/-1; }.availability-location { border-right:0; }
}
@media (max-width:900px) {
    .nav-wrap { min-height:68px; }.menu-toggle { display:block; margin-left:auto; }
    .primary-nav { display:none; position:absolute; top:111px; left:20px; right:20px; padding:12px; flex-direction:column; align-items:stretch; gap:0; border:1px solid var(--line); border-radius:10px; background:var(--surface); box-shadow:0 14px 30px rgba(0,0,0,.15); }
    .primary-nav.is-open { display:flex; }.nav-item { flex-wrap:wrap; justify-content:space-between; }
    .nav-item>a { flex:1; padding:12px; border:0; }.submenu { position:static; flex-basis:100%; box-shadow:none; margin-bottom:5px; }
    .nav-actions { gap:5px; }.offer-mosaic { grid-template-columns:1fr 1fr; grid-template-rows:auto auto; }
    .main-offer { grid-column:1/-1; grid-row:auto; }.product-grid { grid-template-columns:1fr 1fr; }
    .network-panel { grid-template-columns:1fr 1fr; }.mini-network { display:none; }
    .service-hero-grid,.split-content { grid-template-columns:1fr; gap:35px; }
    .hero-v2-grid { grid-template-columns:1fr; }.hero-v2-visual { display:none; }.service-link-grid { grid-template-columns:1fr; }.service-link:nth-child(odd) { border-right:0; }
    .story-row,.why-grid { grid-template-columns:1fr; gap:45px; }.story-reverse .story-copy,.story-reverse .included-list { order:initial; }
    .clearance-hero-grid,.clearance-fit>.shell { grid-template-columns:1fr; }.clearance-offer { grid-template-columns:1fr 1fr; }.clearance-offer-title { grid-column:1/-1; }
    .service-plan-grid { grid-template-columns:1fr 1fr; }
}
@media (max-width:640px) {
    .shell { width:min(calc(100% - 28px),var(--max)); }.utility-inner>span span { display:none; }.utility nav span { display:none; }
    .site-offer-bar .shell { min-height:54px; justify-content:space-between; gap:10px; padding-block:8px; }.site-offer-bar p { flex:1; margin:0; line-height:1.25; }.site-offer-bar a { margin-left:0; font-size:.7rem; }.site-offer-bar .offer-bar-label { display:none; }.offer-message-long { display:none; }.offer-message-short { display:inline; }
    .nav-wrap { gap:10px; }.brand { font-size:1.35rem; }.primary-nav { top:111px; left:14px; right:14px; }.theme-toggle { width:38px; height:38px; }
    .home-hero { padding-top:14px; }.offer-mosaic { display:block; }.main-offer { display:block; min-height:0; padding:28px 24px; }
    .main-offer h1 { font-size:clamp(2.7rem,13vw,4rem); }.uk-map { display:none; }.side-offer { margin-top:14px; min-height:225px; padding:24px; }
    .trust-items { grid-template-columns:1fr 1fr; padding:8px 0; }.trust-items span { padding:9px 5px; }.trust-items span+span { border:0; }.trust-items span:nth-child(even) { border-left:1px solid var(--line); }
    .section { padding:42px 0; }.product-grid,.feature-grid { grid-template-columns:1fr; }.product-card { min-height:310px; }
    .network-panel { grid-template-columns:1fr; padding:28px 22px; }.support-band { grid-template-columns:1fr; padding:24px 20px; }
    .support-band>p { padding:18px 0; border-inline:0; border-block:1px solid var(--line); }.support-links { grid-column:auto; flex-direction:column; }
    .footer-grid { grid-template-columns:1fr; }.footer-grid section { padding:18px 0; border-right:0; border-bottom:1px solid var(--line); }.footer-grid section:last-child { border-bottom:0; }
    .footer-bottom { flex-direction:column; }.footer-bottom span:last-child { display:none; }
    .service-hero { padding:45px 0; }.service-hero h1 { font-size:clamp(2.6rem,13vw,4.2rem); }
    .service-price { padding:24px; }.hero-actions { align-items:flex-start; flex-direction:column; gap:20px; }
    .home-hero-v2 { padding:45px 0 35px; }.hero-v2-copy h1 { font-size:clamp(3.2rem,16vw,5rem); }.hero-assurances { display:grid; grid-template-columns:1fr 1fr; }.chooser-heading { display:block; }.chooser-heading>p { margin-top:15px; }.service-link { grid-template-columns:28px 1fr 20px; gap:12px; padding:19px 10px; }.service-start { grid-column:2; }.service-link>i { grid-column:3; grid-row:1/3; }
    .home-service-story { padding:55px 0; }.story-options a { align-items:flex-start; flex-direction:column; gap:8px; }.included-list,.workload-grid,.why-points { grid-template-columns:1fr; }.workload-grid article { padding:38px 0!important; border-right:0!important; border-bottom:1px solid var(--line); }.workload-grid article:last-child { border-bottom:0; }.why-section { padding:55px 0; }.why-points article { border-left:0; padding-inline:0; }
    .home-clearance-banner .shell { align-items:flex-start; flex-direction:column; gap:9px; padding-block:18px; }.clearance-hero { padding:45px 0; }.clearance-trust .shell { grid-template-columns:1fr 1fr; padding-block:10px; }.clearance-trust span { padding:10px 4px; }.clearance-trust span+span { border:0; }.clearance-offer { grid-template-columns:1fr; gap:22px; padding-inline:14px; }.clearance-offer-title { grid-column:auto; }.clearance-specs { grid-template-columns:1fr; }.clearance-buy { padding-top:15px; border-top:1px solid var(--line); }.clearance-buy .button { width:100%; }
    .section-heading { display:block; }.promo-notice { margin-top:20px; }.service-plan-grid { grid-template-columns:1fr; }
    .dedicated-row { grid-template-columns:1fr 1fr; gap:17px; padding:20px; }
    .dedicated-row>div:not(.dedicated-name)::before { content:attr(data-label); display:block; margin-bottom:3px; color:var(--muted); font-size:.62rem; font-weight:800; letter-spacing:.05em; text-transform:uppercase; }
    .dedicated-price,.dedicated-order { grid-column:auto; }
    .dedicated-order { width:100%; }
    .availability-inner { grid-template-columns:1fr; padding:22px; }.availability-location { padding:17px 0; border-inline:0; border-block:1px solid var(--line); }.availability-inner>a { grid-column:auto; }
}
@media (prefers-reduced-motion: reduce) { *,*::before,*::after { scroll-behavior:auto!important; transition:none!important; } }

/* xHosts v1.2 — enterprise visual system */
:root {
    --page:#f4f7fa; --surface:#ffffff; --surface-blue:#edf4fb; --surface-warm:#fff4ef;
    --ink:#071b2f; --muted:#526579; --line:#d6e0e9; --primary:#f05d45;
    --primary-hover:#d94a34; --secondary:#1464c8; --success:#27864a; --warning:#c56b16;
    --header:rgba(255,255,255,.94); --focus:#0c64cc; --max:1280px;
    --navy:#061a2d; --navy-soft:#0a243d; --shadow-sm:0 1px 2px rgba(7,27,47,.05),0 8px 24px rgba(7,27,47,.05);
    --shadow-md:0 2px 4px rgba(7,27,47,.06),0 20px 48px rgba(7,27,47,.09);
}
[data-theme="dark"] {
    --page:#051522; --surface:#0a2034; --surface-blue:#0b2943; --surface-warm:#251e20;
    --ink:#f4f7fa; --muted:#a8b8c7; --line:#29445b; --primary:#ff6a51;
    --primary-hover:#ff806a; --secondary:#67aaff; --success:#71cf87; --warning:#ffad5c;
    --header:rgba(5,21,34,.94); --focus:#7ab8ff; --navy:#03111e; --navy-soft:#081d30;
    --shadow-sm:0 1px 2px rgba(0,0,0,.18),0 10px 28px rgba(0,0,0,.14);
    --shadow-md:0 3px 8px rgba(0,0,0,.2),0 24px 60px rgba(0,0,0,.2);
}
@media (prefers-color-scheme:dark) {
    :root:not([data-theme]) {
        --page:#051522; --surface:#0a2034; --surface-blue:#0b2943; --surface-warm:#251e20;
        --ink:#f4f7fa; --muted:#a8b8c7; --line:#29445b; --primary:#ff6a51;
        --primary-hover:#ff806a; --secondary:#67aaff; --success:#71cf87; --warning:#ffad5c;
        --header:rgba(5,21,34,.94); --focus:#7ab8ff; --navy:#03111e; --navy-soft:#081d30;
        --shadow-sm:0 1px 2px rgba(0,0,0,.18),0 10px 28px rgba(0,0,0,.14);
        --shadow-md:0 3px 8px rgba(0,0,0,.2),0 24px 60px rgba(0,0,0,.2);
    }
}
body { font-size:15px; line-height:1.65; letter-spacing:-.006em; }
h1,h2,h3 { text-wrap:balance; }
p { text-wrap:pretty; }
.site-offer-bar { background:linear-gradient(90deg,#d94a34,#f05d45 45%,#e4523b); box-shadow:inset 0 -1px rgba(0,0,0,.12); }
.site-offer-bar .shell { min-height:38px; }
.site-header { position:sticky; top:0; backdrop-filter:blur(18px); box-shadow:0 1px 0 var(--line); }
.utility { background:color-mix(in srgb,var(--surface) 82%,var(--surface-blue)); color:var(--muted); }
.utility-inner { min-height:34px; }
.nav-wrap { min-height:72px; }
.brand { font-size:1.5rem; letter-spacing:-.06em; }
.nav-item>a { padding:24px 0 21px; font-size:.86rem; font-weight:650; }
.nav-item>a[aria-current="page"] { color:var(--ink); border-color:var(--primary); }
.submenu { top:59px; min-width:230px; padding:8px; border-radius:12px; box-shadow:var(--shadow-md); }
.submenu a { padding:10px 12px; border-radius:7px; font-size:.85rem; }
.button,.order-dropdown summary { border-radius:8px; box-shadow:none; font-weight:750; transition:transform .18s ease,background .18s ease,box-shadow .18s ease; }
.button:hover,.order-dropdown summary:hover { transform:translateY(-1px); box-shadow:0 10px 24px color-mix(in srgb,var(--primary) 22%,transparent); }
.button-secondary:hover { box-shadow:0 10px 24px color-mix(in srgb,var(--secondary) 22%,transparent); }
.eyebrow { padding:6px 11px; border-radius:6px; background:color-mix(in srgb,var(--secondary) 11%,transparent); color:var(--secondary); font-size:.68rem; letter-spacing:.09em; }
.home-hero-v2,.service-hero,.clearance-hero { position:relative; background:linear-gradient(135deg,var(--surface-blue),color-mix(in srgb,var(--surface-blue) 64%,var(--surface))); }
.home-hero-v2::after,.service-hero::after,.clearance-hero::after { content:""; position:absolute; inset:0; pointer-events:none; opacity:.45; background-image:linear-gradient(rgba(20,100,200,.055) 1px,transparent 1px),linear-gradient(90deg,rgba(20,100,200,.055) 1px,transparent 1px); background-size:48px 48px; mask-image:linear-gradient(to right,transparent,black 70%,transparent); }
.home-hero-v2>.shell,.service-hero>.shell,.clearance-hero>.shell { position:relative; z-index:1; }
.hero-v2-copy h1 { font-size:clamp(3.4rem,6vw,6.4rem); line-height:.94; letter-spacing:-.058em; }
.service-hero h1,.clearance-hero h1 { font-size:clamp(3rem,5.5vw,5.5rem); line-height:.96; }
.hero-location-card,.service-price,.clearance-explainer { border-radius:12px; box-shadow:var(--shadow-md); }
.trust-strip,.clearance-trust { background:var(--surface); }
.trust-items,.clearance-trust .shell { min-height:64px; }
.trust-items span,.clearance-trust span { font-size:.75rem; font-weight:650; letter-spacing:.01em; }
.assurance-bar { position:relative; z-index:2; border-block:1px solid var(--line); background:var(--surface); }
.assurance-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); min-height:94px; }
.assurance-item { display:flex; align-items:center; gap:15px; min-width:0; padding:20px 24px; }
.assurance-item+.assurance-item { border-left:1px solid var(--line); }
.assurance-icon { display:grid; flex:0 0 38px; width:38px; height:38px; place-items:center; border:1px solid color-mix(in srgb,var(--secondary) 32%,var(--line)); border-radius:10px; background:var(--surface-blue); color:var(--secondary); font-size:.69rem; font-weight:900; letter-spacing:-.03em; }
.assurance-item>span:last-child { min-width:0; }
.assurance-item strong,.assurance-item small { display:block; }
.assurance-item strong { color:var(--ink); font-size:.84rem; line-height:1.25; }
.assurance-item small { margin-top:4px; color:var(--muted); font-size:.7rem; line-height:1.35; }
.section,.service-chooser { padding-block:72px; }
.chooser-heading h2,.section h2,.products-section h2,.network-panel h2 { letter-spacing:-.045em; }
.service-link-grid { overflow:hidden; border:1px solid var(--line); border-radius:12px; background:var(--surface); box-shadow:var(--shadow-sm); }
.service-link { min-height:116px; padding:22px 24px; border-color:var(--line); }
.service-link:hover { background:var(--surface-blue); box-shadow:none; transform:none; }
.service-link-featured { background:var(--surface); }
.product-card,.feature-grid article,.location-card,.support-band,.availability-inner { border-radius:12px; box-shadow:var(--shadow-sm); }
.product-card { min-height:325px; border-color:var(--line)!important; background:var(--surface)!important; transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease; }
.product-card:hover { transform:translateY(-3px); border-color:color-mix(in srgb,var(--secondary) 40%,var(--line))!important; box-shadow:var(--shadow-md); }
.popular,.plan-badge { border:0; border-radius:5px; background:var(--primary); color:#fff; font-weight:800; letter-spacing:.04em; text-transform:uppercase; }
.story-tinted { border-block:1px solid var(--line); background:var(--surface); }
.included-list { overflow:hidden; border-radius:12px; background:var(--surface); box-shadow:var(--shadow-sm); }
.included-list>span { min-height:135px; }
.why-section,.clearance-fit { background:linear-gradient(135deg,var(--navy),var(--navy-soft)); color:#fff; }
.why-section .eyebrow,.clearance-fit .eyebrow { background:rgba(255,255,255,.09); color:#a9ceff; }
.why-section h2,.clearance-fit h2,.why-section strong,.clearance-fit strong { color:#fff; }
.why-section p,.clearance-fit p,.clearance-fit .why-points p { color:#b8c8d7; }
.why-points article { border-color:rgba(255,255,255,.14); }
.section-heading { margin-bottom:34px; }
.service-plan-grid { gap:16px; }
.service-hero-grid { grid-template-columns:minmax(0,1.3fr) minmax(370px,.7fr); gap:clamp(50px,7vw,100px); }
.service-price { position:relative; isolation:isolate; align-self:center; overflow:hidden; padding:29px; border-color:color-mix(in srgb,var(--secondary) 42%,var(--line)); background:linear-gradient(145deg,var(--surface),color-mix(in srgb,var(--surface-blue) 64%,var(--surface))); box-shadow:0 24px 65px rgba(3,17,30,.18); }
.service-price::before { content:""; position:absolute; z-index:-1; inset:0 0 auto; height:3px; background:linear-gradient(90deg,var(--primary),var(--secondary)); }
.service-price::after { content:""; position:absolute; z-index:-1; top:-130px; right:-110px; width:290px; height:290px; border:1px solid color-mix(in srgb,var(--secondary) 18%,transparent); border-radius:50%; box-shadow:0 0 0 44px color-mix(in srgb,var(--secondary) 4%,transparent),0 0 0 88px color-mix(in srgb,var(--secondary) 3%,transparent); pointer-events:none; }
.service-price-head { display:flex; align-items:center; justify-content:space-between; gap:18px; margin-bottom:23px; padding-bottom:16px; border-bottom:1px solid var(--line); }
.service-price-head>span:first-child { display:flex; align-items:center; gap:9px; color:var(--ink); font-size:.78rem; font-weight:850; letter-spacing:.075em; text-transform:uppercase; }
.service-price-head>span:first-child::before { content:""; width:9px; height:9px; border:2px solid var(--primary); border-radius:3px; transform:rotate(45deg); }
.service-live { display:inline-flex; align-items:center; gap:7px; padding:6px 9px; border:1px solid color-mix(in srgb,var(--success) 30%,transparent); border-radius:999px; background:color-mix(in srgb,var(--success) 9%,transparent); color:var(--success)!important; font-size:.65rem!important; font-weight:800; white-space:nowrap; }
.service-live i { width:7px; height:7px; border-radius:50%; background:var(--success); box-shadow:0 0 0 4px color-mix(in srgb,var(--success) 14%,transparent); }
.service-price>.price { display:flex; align-items:baseline; margin:5px 0 19px; }
.service-price>.price span { font-size:3.15rem; }
.service-price ul { display:grid; grid-template-columns:1fr 1fr; gap:9px; margin:0 0 20px; padding:17px 0; border-block:1px solid var(--line); }
.service-price li { overflow:hidden; padding:9px 11px; border:1px solid color-mix(in srgb,var(--line) 75%,transparent); border-radius:8px; background:color-mix(in srgb,var(--surface) 58%,transparent); color:var(--ink); font-size:.76rem; text-overflow:ellipsis; white-space:nowrap; }
.service-price li::first-letter { color:var(--success); }
.service-price-location { display:flex; align-items:center; justify-content:space-between; gap:20px; margin-bottom:18px; padding:13px 14px; border-radius:9px; background:color-mix(in srgb,var(--secondary) 7%,var(--surface)); }
.service-price-location span { color:var(--muted); font-size:.7rem; }
.service-price-location strong { max-width:230px; color:var(--ink); font-size:.76rem; text-align:right; }
.service-price>.button { width:100%; min-height:52px; font-size:.9rem; }
.service-price-note { display:flex; align-items:center; justify-content:center; gap:18px; margin-top:14px; color:var(--muted); font-size:.64rem; }
.service-price-note span { display:flex; align-items:center; gap:6px; }
.service-price-note span::before { content:"✓"; color:var(--success); font-weight:900; }
.service-benefits-section { padding-block:66px 54px; }
.service-benefits-layout { grid-template-columns:minmax(260px,.68fr) minmax(0,1.32fr); gap:clamp(45px,6vw,86px); align-items:center; }
.service-benefits-layout>div:first-child h2 { max-width:430px; margin:16px 0; font-size:clamp(2.4rem,3.8vw,4rem); line-height:1; letter-spacing:-.05em; }
.service-benefits-layout>div:first-child p { max-width:430px; font-size:.98rem; }
.service-benefits-layout .feature-grid { gap:12px; }
.service-benefits-layout .feature-grid article { display:flex; align-items:flex-start; gap:17px; min-height:124px; padding:22px; box-shadow:none; }
.service-benefits-layout .feature-grid article>span { flex:0 0 auto; padding-top:2px; color:var(--primary); font-size:.68rem; font-weight:900; letter-spacing:.08em; }
.service-benefits-layout .feature-grid h3 { margin:0 0 6px; font-size:.94rem; }
.service-benefits-layout .feature-grid p { margin:0; font-size:.77rem; line-height:1.5; }
.service-benefits-section+.section { padding-block:48px 58px; border-top:1px solid var(--line); background:color-mix(in srgb,var(--surface-blue) 35%,var(--page)); }
.service-benefits-section+.section .split-content { grid-template-columns:minmax(260px,.68fr) minmax(0,1.32fr); gap:clamp(45px,6vw,86px); }
.service-benefits-section+.section .split-content>div:first-child h2 { margin:16px 0; font-size:clamp(2.2rem,3.2vw,3.3rem); line-height:1; letter-spacing:-.05em; }
.service-benefits-section+.section .faq-list { box-shadow:none; }
.service-plan { padding:24px; border-radius:12px; box-shadow:var(--shadow-sm); transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease; }
.service-plan:hover { transform:translateY(-3px); border-color:color-mix(in srgb,var(--secondary) 38%,var(--line)); box-shadow:var(--shadow-md); }
.service-plan.featured-plan { border:1px solid var(--primary); box-shadow:0 0 0 1px var(--primary),var(--shadow-sm); }
.service-plan h3 { font-size:1.14rem; }
.plan-description { min-height:48px; }
.service-plan li { padding:5px 0; }
.order-locations { border-radius:0 0 10px 10px; box-shadow:var(--shadow-md); }
.dedicated-list { overflow:hidden; gap:0; border:1px solid var(--line); border-radius:12px; background:var(--surface); box-shadow:var(--shadow-sm); }
.dedicated-list-head { padding:15px 24px 11px; background:var(--surface-blue); }
.dedicated-row { border:0; border-top:1px solid var(--line); transition:background .16s ease; }
.dedicated-row:hover { background:var(--surface-blue); }
.dedicated-row:first-of-type,.dedicated-row:last-child { border-radius:0; }
.dedicated-order { border-width:1px; border-radius:8px; }
.clearance-list { overflow:hidden; border:1px solid var(--line); border-radius:12px; box-shadow:var(--shadow-sm); }
.clearance-offer { border:0; border-bottom:1px solid var(--line); }
.clearance-offer:last-child { border-bottom:0; }
.clearance-offer:hover { box-shadow:none; background:var(--surface-blue); }
.offer-sold-out { background:color-mix(in srgb,var(--surface) 70%,var(--page)); }
.promo-notice { border-width:1px; border-radius:10px; }
.faq-list { overflow:hidden; border:1px solid var(--line); border-radius:12px; background:var(--surface); box-shadow:var(--shadow-sm); }
.faq-list details { padding-inline:20px; }
.faq-list details:last-child { border-bottom:0; }
.support-band { border-color:var(--line); background:var(--surface); }
.site-footer { border-top:0; background:var(--navy); color:#fff; }
.site-footer a { color:#c1cfdb; }
.site-footer a:hover { color:#fff; }
.footer-intro { display:flex; align-items:center; justify-content:space-between; gap:50px; padding-block:44px 30px; border-bottom:1px solid rgba(255,255,255,.13); }
.footer-intro>div:first-child { max-width:470px; }
.footer-brand { display:inline-block; color:#fff!important; font-size:1.65rem; font-weight:800; letter-spacing:-.055em; }
.footer-brand strong { color:var(--primary); }
.footer-intro p { margin:8px 0 0; color:#9eb1c2; font-size:.88rem; }
.footer-proof { display:flex; flex-wrap:wrap; justify-content:flex-end; gap:14px 28px; }
.footer-proof span { display:flex; align-items:center; gap:9px; color:#c1cfdb; font-size:.75rem; }
.footer-proof i { width:7px; height:7px; border-radius:50%; background:var(--success); box-shadow:0 0 0 4px rgba(113,207,135,.1); }
.footer-grid { padding-block:48px 38px; }
.footer-grid section { border-color:rgba(255,255,255,.13); }
.footer-grid h2 { color:#fff; letter-spacing:.1em; }
.footer-links { color:#c1cfdb; }
.footer-bottom { border-color:rgba(255,255,255,.13); color:#95aabd; }
@media (max-width:900px) {
    .site-header { position:relative; }
    .primary-nav { top:105px; border-radius:12px; box-shadow:var(--shadow-md); }
    .service-plan-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
    .service-hero-grid,.service-benefits-layout,.service-benefits-section+.section .split-content { grid-template-columns:1fr; gap:34px; }
    .service-price { width:100%; max-width:620px; }
    .assurance-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
    .assurance-item:nth-child(3) { border-left:0; border-top:1px solid var(--line); }
    .assurance-item:nth-child(4) { border-top:1px solid var(--line); }
}
@media (max-width:640px) {
    .section,.service-chooser { padding-block:52px; }
    .hero-v2-copy h1 { font-size:clamp(3rem,14vw,4.5rem); }
    .service-plan-grid { grid-template-columns:1fr; }
    .service-price { padding:21px; }
    .service-price>.price span { font-size:2.7rem; }
    .service-price ul { grid-template-columns:1fr; }
    .service-benefits-section { padding-block:48px 40px; }
    .service-benefits-layout .feature-grid article { min-height:0; }
    .assurance-grid { grid-template-columns:1fr 1fr; min-height:0; }
    .assurance-item { align-items:flex-start; flex-direction:column; gap:10px; padding:17px 14px; }
    .assurance-icon { flex-basis:34px; width:34px; height:34px; border-radius:8px; }
    .assurance-item strong { font-size:.78rem; }.assurance-item small { font-size:.66rem; }
    .service-plan:hover,.product-card:hover { transform:none; }
    .footer-grid { padding-block:28px; }
    .footer-intro { align-items:flex-start; flex-direction:column; gap:24px; padding-block:32px 25px; }
    .footer-proof { justify-content:flex-start; flex-direction:column; gap:10px; }
}

/* v1.2 homepage composition refinement */
.service-chooser { padding-block:64px 72px; }
.chooser-heading { display:grid; grid-template-columns:minmax(0,1fr) minmax(300px,430px); align-items:end; gap:70px; margin-bottom:34px; }
.chooser-heading h2 { max-width:760px; margin:13px 0 0; font-size:clamp(2.7rem,4vw,4.2rem); line-height:.98; }
.chooser-heading>p { padding-bottom:6px; font-size:.93rem; }
.service-link-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:14px; overflow:visible; border:0; border-radius:0; background:transparent; box-shadow:none; }
.service-link { position:relative; display:grid; grid-template-columns:32px minmax(0,1fr); grid-template-rows:auto 1fr auto; align-items:start; gap:8px 14px; min-height:178px; padding:24px; border:1px solid var(--line)!important; border-radius:12px; background:var(--surface); box-shadow:var(--shadow-sm); }
.service-link:nth-child(odd) { border-right:1px solid var(--line); }
.service-link:hover { border-color:color-mix(in srgb,var(--secondary) 38%,var(--line))!important; background:var(--surface); box-shadow:var(--shadow-md); transform:translateY(-3px); }
.service-link>span:nth-child(2) { align-self:start; }
.service-link strong { font-size:1rem; }
.service-link small { max-width:270px; margin-top:6px; line-height:1.45; }
.service-number { grid-column:1; grid-row:1/3; padding-top:3px; color:var(--secondary); font-weight:800; }
.service-start { grid-column:2; grid-row:3; align-self:end; padding-top:16px; border-top:1px solid var(--line); font-size:.68rem; }
.service-start b { font-size:1rem; }
.service-link>i { position:absolute; right:22px; bottom:21px; }
.home-service-story { padding:72px 0; }
.story-row { grid-template-columns:minmax(320px,.85fr) minmax(0,1.15fr); gap:clamp(55px,7vw,95px); }
.story-copy h2 { max-width:570px; font-size:clamp(2.7rem,4.1vw,4.35rem); line-height:.98; }
.story-copy>p { max-width:560px; font-size:.98rem; }
.story-options { overflow:hidden; border:1px solid var(--line); border-radius:12px; background:var(--surface); box-shadow:var(--shadow-sm); }
.story-options a { min-height:94px; padding:22px 24px; border-bottom:1px solid var(--line); }
.story-options a:last-child { border-bottom:0; }
.story-options a:hover { padding-inline:24px; background:var(--surface-blue); }
.story-options b { color:var(--secondary); }
.story-reverse { grid-template-columns:minmax(0,1.1fr) minmax(320px,.9fr); }
.workload-split { padding:62px 0; }
.workload-grid article { padding-block:36px; }
.workload-grid h2 { max-width:570px; }
@media (max-width:1000px) {
    .service-link-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
    .story-row,.story-reverse { grid-template-columns:1fr 1fr; gap:45px; }
}
@media (max-width:760px) {
    .chooser-heading { display:block; }.chooser-heading>p { margin-top:16px; }
    .service-link-grid { grid-template-columns:1fr; }
    .service-link { min-height:150px; }
    .story-row,.story-reverse { grid-template-columns:1fr; }
    .story-reverse .story-copy,.story-reverse .included-list { order:initial; }
}

/* Editorial platform */
.blog-hero { padding:76px 0 64px; border-bottom:1px solid var(--line); background:linear-gradient(135deg,var(--surface-blue),var(--surface)); }
.blog-hero h1 { max-width:920px; margin:20px 0; font-size:clamp(3rem,5.5vw,5.8rem); line-height:.95; }
.blog-hero p { max-width:720px; margin:0; color:var(--muted); font-size:1.08rem; }
.blog-categories { position:sticky; z-index:10; top:106px; border-bottom:1px solid var(--line); background:var(--header); backdrop-filter:blur(15px); }
.blog-categories .shell { display:flex; gap:8px; overflow:auto; padding-block:13px; }
.blog-categories a { display:flex; align-items:center; gap:8px; padding:8px 13px; border-radius:8px; color:var(--muted); font-size:.76rem; font-weight:750; white-space:nowrap; }
.blog-categories a:hover,.blog-categories a[aria-current="page"] { background:var(--surface-blue); color:var(--secondary); }
.blog-categories small { display:grid; min-width:20px; height:20px; place-items:center; border-radius:999px; background:var(--surface); font-size:.62rem; }
.blog-listing { padding-top:54px; }
.blog-featured { display:grid; grid-template-columns:1.12fr .88fr; overflow:hidden; margin-bottom:40px; border:1px solid var(--line); border-radius:14px; background:var(--surface); box-shadow:var(--shadow-md); }
.blog-featured>div { display:flex; align-items:flex-start; flex-direction:column; justify-content:center; padding:clamp(30px,5vw,64px); }
.blog-featured h2 { margin:13px 0; font-size:clamp(2rem,3.3vw,3.4rem); line-height:1; letter-spacing:-.045em; }
.blog-featured p,.blog-card p { color:var(--muted); }
.blog-image { display:block; overflow:hidden; background:var(--navy); }
.blog-image img { display:block; width:100%; height:100%; object-fit:cover; transition:transform .35s ease; }
.blog-image:hover img { transform:scale(1.025); }
.blog-kicker { color:var(--secondary); font-size:.67rem; font-weight:850; letter-spacing:.075em; text-transform:uppercase; }
.blog-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:20px; }
.blog-card { overflow:hidden; border:1px solid var(--line); border-radius:12px; background:var(--surface); box-shadow:var(--shadow-sm); }
.blog-card>.blog-image { aspect-ratio:16/9; }
.blog-card>div { padding:23px; }
.blog-card h2 { margin:12px 0 9px; font-size:1.25rem; line-height:1.2; letter-spacing:-.025em; }
.blog-card p { min-height:74px; font-size:.82rem; }
.empty-state { padding:70px; border:1px solid var(--line); border-radius:12px; background:var(--surface); text-align:center; }
.article-header { padding:64px 0; border-bottom:1px solid var(--line); background:linear-gradient(135deg,var(--surface-blue),var(--surface)); }
.article-header-grid { display:grid; grid-template-columns:1.05fr .95fr; align-items:center; gap:clamp(50px,7vw,100px); }
.article-header h1 { max-width:790px; margin:18px 0; font-size:clamp(2.8rem,5vw,5.2rem); line-height:.96; }
.article-header p { max-width:720px; color:var(--muted); font-size:1.08rem; }
.article-header img { width:100%; aspect-ratio:16/9; object-fit:cover; border:1px solid var(--line); border-radius:13px; box-shadow:var(--shadow-md); }
.article-meta { display:flex; flex-wrap:wrap; gap:10px 25px; margin-top:25px; color:var(--muted); font-size:.72rem; }
.article-layout { display:grid; grid-template-columns:minmax(0,760px) minmax(270px,340px); justify-content:space-between; gap:80px; padding-block:72px; }
.article-body { font-size:1.02rem; line-height:1.8; }
.article-body p { margin-bottom:25px; color:color-mix(in srgb,var(--ink) 86%,var(--muted)); }
.article-body h2 { margin:52px 0 18px; font-size:2rem; line-height:1.1; letter-spacing:-.035em; }
.article-body h3 { margin:38px 0 14px; font-size:1.35rem; }
.article-aside { position:sticky; top:145px; align-self:start; padding:26px; border:1px solid var(--line); border-radius:12px; background:var(--surface); box-shadow:var(--shadow-sm); }
.article-aside h2 { margin:16px 0 10px; font-size:1.55rem; line-height:1.1; }
.article-aside p { color:var(--muted); font-size:.84rem; }
.article-aside .button { width:100%; margin:10px 0 20px; }
@media(max-width:900px){.blog-categories{top:0}.blog-featured,.article-header-grid,.article-layout{grid-template-columns:1fr}.blog-featured .blog-image{aspect-ratio:16/9}.blog-grid{grid-template-columns:1fr 1fr}.article-layout{gap:40px}.article-aside{position:static}}
@media(max-width:640px){.blog-hero,.article-header{padding-block:45px}.blog-grid{grid-template-columns:1fr}.blog-featured>div{padding:26px}.article-layout{padding-block:45px}.empty-state{padding:40px 22px}}

/* Count-aware plan catalogues */
.service-plan-grid.plan-count-3 {
    grid-template-columns:repeat(3,minmax(0,1fr));
    max-width:1040px;
    margin-inline:auto;
}
.plans-section:has(.plan-count-3) .section-heading {
    max-width:1040px;
    margin-inline:auto;
}
.service-plan-grid.plan-count-2 {
    grid-template-columns:repeat(2,minmax(0,1fr));
    max-width:760px;
    margin-inline:auto;
}
.plans-section:has(.plan-count-2) .section-heading {
    max-width:760px;
    margin-inline:auto;
}
@media(max-width:900px) {
    .service-plan-grid.plan-count-3,
    .service-plan-grid.plan-count-2 {
        grid-template-columns:repeat(2,minmax(0,1fr));
        max-width:none;
    }
    .plans-section:has(.plan-count-3) .section-heading,
    .plans-section:has(.plan-count-2) .section-heading { max-width:none; }
}
@media(max-width:640px) {
    .service-plan-grid.plan-count-3,
    .service-plan-grid.plan-count-2 { grid-template-columns:1fr; }
}

/* UK network facility profiles */
.network-hero .service-hero-grid { align-items:center; }
.network-hero .location-card { padding:28px; }
.network-hero .location-card>h2 { margin:7px 0 18px; }
.location-jump { position:sticky; z-index:12; top:106px; border-block:1px solid var(--line); background:color-mix(in srgb,var(--header) 94%,transparent); backdrop-filter:blur(16px); }
.location-jump .shell { display:flex; align-items:center; gap:10px; min-height:72px; }
.location-jump .shell>span { margin-right:auto; color:var(--muted); font-size:.68rem; font-weight:800; letter-spacing:.075em; text-transform:uppercase; }
.location-jump a { display:flex; align-items:center; gap:9px; padding:10px 14px; border:1px solid var(--line); border-radius:8px; background:var(--surface); color:var(--ink); font-size:.78rem; font-weight:800; }
.location-jump a:hover { border-color:var(--secondary); color:var(--secondary); transform:translateY(-1px); }
.location-jump a i,.facility-region i { width:7px; height:7px; border-radius:50%; background:var(--success); box-shadow:0 0 0 5px color-mix(in srgb,var(--success) 15%,transparent); }
.location-jump a small { color:var(--muted); font-size:.62rem; font-weight:650; }
.network-intro { padding-block:72px; }
.network-intro h2 { max-width:520px; margin:15px 0 20px; }
.network-principles { border-top:1px solid var(--line); }
.network-principles article { display:grid; grid-template-columns:44px 1fr; gap:18px; padding:22px 0; border-bottom:1px solid var(--line); }
.network-principles b { color:var(--secondary); font-size:.7rem; }
.network-principles h3 { margin:0 0 5px; font-size:.95rem; }
.network-principles p { margin:0; color:var(--muted); font-size:.79rem; }
.facility-section { scroll-margin-top:180px; padding-block:82px; border-top:1px solid var(--line); }
.facility-alt { background:var(--surface-blue); }
.facility-header { display:grid; grid-template-columns:minmax(0,1fr) 300px; align-items:end; gap:70px; margin-bottom:36px; }
.facility-header h2 { margin:13px 0 15px; font-size:clamp(3rem,5vw,5rem); line-height:.95; }
.facility-header p { max-width:700px; margin:0; color:var(--muted); font-size:1rem; }
.facility-region { display:grid; grid-template-columns:auto 1fr; align-items:center; gap:5px 13px; padding:18px 20px; border:1px solid var(--line); border-radius:10px; background:var(--surface); box-shadow:var(--shadow-sm); }
.facility-region i { grid-row:1/3; }
.facility-region span { color:var(--muted); font-size:.66rem; text-transform:uppercase; letter-spacing:.07em; }
.facility-region strong { font-size:.82rem; }
.facility-metrics { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); overflow:hidden; margin-bottom:18px; border:1px solid var(--line); border-radius:12px; background:var(--surface); box-shadow:var(--shadow-sm); }
.facility-metrics>div { min-height:112px; padding:24px; border-right:1px solid var(--line); }
.facility-metrics>div:last-child { border-right:0; }
.facility-metrics span,.facility-metrics strong { display:block; }
.facility-metrics span { margin-bottom:10px; color:var(--muted); font-size:.66rem; font-weight:700; text-transform:uppercase; letter-spacing:.06em; }
.facility-metrics strong { font-size:1.28rem; }
.facility-spec-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:14px; }
.facility-spec { padding:25px; border:1px solid var(--line); border-radius:12px; background:var(--surface); box-shadow:var(--shadow-sm); }
.facility-spec header { display:flex; align-items:center; gap:13px; padding-bottom:17px; border-bottom:1px solid var(--line); }
.facility-spec header span { display:grid; width:34px; height:34px; place-items:center; border-radius:7px; background:var(--surface-blue); color:var(--secondary); font-size:.55rem; font-weight:900; letter-spacing:.04em; }
.facility-spec h3 { margin:0; font-size:.93rem; }
.facility-spec ul { margin:18px 0 0; padding:0; list-style:none; }
.facility-spec li { position:relative; margin-top:10px; padding-left:16px; color:var(--muted); font-size:.76rem; line-height:1.5; }
.facility-spec li:before { content:""; position:absolute; left:0; top:.6em; width:5px; height:5px; border-radius:50%; background:var(--success); }
.network-note { padding:28px 0 65px; }
.network-note .shell { display:grid; grid-template-columns:auto 1fr auto; align-items:center; gap:28px; padding:25px 28px; border:1px solid var(--line); border-radius:12px; background:var(--surface); box-shadow:var(--shadow-sm); }
.network-note p { margin:0; color:var(--muted); font-size:.8rem; }
@media(max-width:900px) {
    .location-jump { position:static; }
    .facility-header { grid-template-columns:1fr; gap:24px; }
    .facility-region { max-width:420px; }
    .facility-metrics { grid-template-columns:1fr 1fr; }
    .facility-metrics>div:nth-child(2) { border-right:0; }
    .facility-metrics>div:nth-child(-n+2) { border-bottom:1px solid var(--line); }
    .facility-spec-grid { grid-template-columns:1fr 1fr; }
    .network-note .shell { grid-template-columns:1fr; gap:10px; }
}
@media(max-width:640px) {
    .location-jump .shell { overflow:auto; padding-block:12px; }
    .location-jump .shell>span { display:none; }
    .location-jump a { flex:0 0 auto; }
    .facility-section { padding-block:55px; scroll-margin-top:20px; }
    .facility-metrics,.facility-spec-grid { grid-template-columns:1fr; }
    .facility-metrics>div { min-height:90px; border-right:0; border-bottom:1px solid var(--line); }
    .facility-metrics>div:nth-child(3) { border-bottom:1px solid var(--line); }
    .facility-metrics>div:last-child { border-bottom:0; }
}
