/* East London Aerials & Satellites — 2026 template, round 2
   Built from the St Albans Aerials stylesheet, re-skinned for East London.
   Direction: van-side signwriting. Heavy Poppins, solid brand blue, the wave from the old banners
   used as section edges. No icon strips, no pill clouds, no card grids, no eyebrow labels, no logo rows. */

@font-face{font-family:'Poppins';font-style:normal;font-weight:400;font-display:swap;src:url('../fonts/poppins-400.woff2') format('woff2')}
@font-face{font-family:'Poppins';font-style:normal;font-weight:500;font-display:swap;src:url('../fonts/poppins-500.woff2') format('woff2')}
@font-face{font-family:'Poppins';font-style:normal;font-weight:600;font-display:swap;src:url('../fonts/poppins-600.woff2') format('woff2')}
@font-face{font-family:'Poppins';font-style:normal;font-weight:700;font-display:swap;src:url('../fonts/poppins-700.woff2') format('woff2')}
@font-face{font-family:'Poppins';font-style:normal;font-weight:800;font-display:swap;src:url('../fonts/poppins-800.woff2') format('woff2')}

:root{
  --blue:#0042b3;        /* brand blue, from the EL roundel */
  --blue-mid:#0b71e1;    /* second blue in the old banners */
  --cyan:#23b2ef;        /* light blue, for small highlights only */
  --deep:#06245f;        /* darkest blue: headings, footer */
  --tint:#edf3fb;        /* pale blue band */
  --ink:#101c30;         /* body text */
  --muted:#46546a;
  --line:#cfdbec;
  --paper:#ffffff;
  --wa:#167a41;          /* WhatsApp green */
  --radius:6px;
  --wrap:1180px;
  --font:'Poppins',system-ui,-apple-system,'Segoe UI',Arial,sans-serif;
  color-scheme:light;
}

*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important;animation:none!important}}
body{margin:0;font-family:var(--font);font-size:1.03rem;line-height:1.7;color:var(--ink);background:var(--paper)}
img{max-width:100%;height:auto;display:block}
a{color:var(--blue);text-underline-offset:.18em}
a:hover{color:var(--deep)}
:focus-visible{outline:3px solid var(--cyan);outline-offset:2px}
h1,h2,h3{line-height:1.05;text-wrap:balance;margin:0 0 .5em;color:var(--deep);font-weight:800;letter-spacing:-.03em}
h1{font-size:clamp(2.3rem,5.6vw,4.3rem);letter-spacing:-.035em;word-spacing:.04em}
@media (max-width:560px){h1,h2{letter-spacing:-.02em;word-spacing:.06em}}
h2{font-size:clamp(1.9rem,3.8vw,3rem)}
h3{font-size:1.2rem;font-weight:700;letter-spacing:-.015em;line-height:1.25}
p{margin:0 0 1em}
strong{font-weight:600}
.wrap{max-width:var(--wrap);margin:0 auto;padding-left:max(16px,env(safe-area-inset-left,0px));padding-right:max(16px,env(safe-area-inset-right,0px))}
.skip{position:absolute;left:-999px;top:0;background:var(--cyan);color:var(--ink);padding:.6em 1em;z-index:100}
.skip:focus{left:8px}

/* Buttons: square-shouldered, heavy */
.btn{display:inline-flex;align-items:center;gap:.6em;font:inherit;font-weight:700;font-size:1.02rem;text-decoration:none;border:2px solid transparent;border-radius:var(--radius);padding:.85em 1.3em;cursor:pointer;line-height:1.15;transition:background .15s,color .15s}
.btn svg{width:1.15em;height:1.15em;flex:none}
.btn-call{background:var(--blue);color:#fff}
.btn-call:hover{background:var(--deep);color:#fff}
.btn-wa{background:var(--wa);color:#fff}
.btn-wa:hover{background:#126b38;color:#fff}

/* Status line */
.status{background:var(--deep);color:#c6d5f0;font-size:.8rem}
.status .wrap{display:flex;justify-content:space-between;gap:1rem;padding-block:.45rem;flex-wrap:wrap}
.status strong{color:#fff;font-weight:600}
.status a{color:#fff;text-decoration:none;font-weight:600}
.status .dot{display:inline-block;width:.55em;height:.55em;border-radius:50%;background:var(--cyan);margin-right:.45em;vertical-align:.08em}
.status .dot.closed{background:#8ea3c4}

/* Header */
.site-head{background:var(--paper);border-bottom:1px solid var(--line);position:sticky;top:env(safe-area-inset-top,0px);z-index:50}
.head-row{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding-block:.7rem}
.logo img{width:230px;transition:width .2s}
.head-actions{display:flex;align-items:center;gap:1.4rem}
.head-phone{text-decoration:none;color:var(--deep);font-weight:800;font-size:1.6rem;letter-spacing:-.025em;line-height:1;font-variant-numeric:tabular-nums}
.head-phone:hover{color:var(--blue)}
.head-wa{font-weight:700;font-size:.92rem;text-decoration:none;color:var(--wa);display:inline-flex;gap:.4em;align-items:center}
.head-wa svg{width:1.2em;height:1.2em}
.menu-toggle{display:none;background:none;border:2px solid var(--deep);border-radius:var(--radius);padding:.4rem .85rem;font:inherit;font-weight:700;color:var(--deep);cursor:pointer}
.nav ul{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:0 1.5rem}
.nav a{display:block;color:var(--deep);text-decoration:none;font-weight:600;font-size:.9rem;padding:.35rem 0 .6rem;border-bottom:3px solid transparent}
.nav a:hover,.nav a[aria-current="page"]{border-bottom-color:var(--blue);color:var(--blue)}
.site-head.is-compact .head-row{padding-block:.35rem}
.site-head.is-compact .logo img{width:170px}
.site-head.is-compact .head-phone{font-size:1.3rem}
@media (max-width:960px){
  .logo img{width:180px}
  .head-phone{font-size:1.2rem}
  .menu-toggle{display:inline-block}
  .nav{display:none;border-top:1px solid var(--line)}
  .nav.open{display:block}
  .nav ul{flex-direction:column;padding-block:.4rem}
  .nav a{padding:.6rem 0;border-bottom:1px solid var(--line)}
  .status .hide-sm{display:none}
}
@media (max-width:560px){.head-phone,.head-wa{display:none}.status .wrap{justify-content:center}.status .hide-xs{display:none}}

/* Hero */
.hero{position:relative;overflow:hidden;background:var(--paper)}
.hero-grid{display:grid;grid-template-columns:1.15fr .85fr;align-items:center;gap:2.5rem;padding-block:clamp(2.2rem,5vw,4.2rem) clamp(2rem,4vw,3.2rem)}
.hero-copy{min-width:0}
.hero .lede{font-size:1.16rem;max-width:31em}
.hero-actions{display:flex;flex-wrap:wrap;gap:.75rem;margin-top:1.6rem}
.hero-actions .btn{font-size:1.1rem;padding:1em 1.45em}
.creds{margin:1.7rem 0 0;padding-top:1.1rem;border-top:3px solid var(--deep);font-size:.93rem;color:var(--muted);max-width:36em}
.creds b{color:var(--deep);font-weight:700}
.hero-art{position:relative;aspect-ratio:1/0.86;max-width:540px;width:100%;justify-self:end}
.hero-art svg.blob{position:absolute;inset:0;width:100%;height:100%;overflow:visible}
.hero-art .blob .b1{fill:var(--blue)}
.hero-art .blob .b2{fill:var(--cyan)}
.hero-art .photo{position:absolute;inset:0}
.hero-art .photo img{width:100%;height:100%;object-fit:cover;object-position:30% center;
  -webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 560 480' preserveAspectRatio='none'%3E%3Cpath d='M300 22c98-8 196 44 232 132 36 88 6 192-64 250-70 58-178 76-262 44C122 416 46 350 28 262 10 174 58 90 134 52 182 28 240 26 300 22z'/%3E%3C/svg%3E") 0 0/100% 100% no-repeat;
          mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 560 480' preserveAspectRatio='none'%3E%3Cpath d='M300 22c98-8 196 44 232 132 36 88 6 192-64 250-70 58-178 76-262 44C122 416 46 350 28 262 10 174 58 90 134 52 182 28 240 26 300 22z'/%3E%3C/svg%3E") 0 0/100% 100% no-repeat}
@media (max-width:860px){
  .hero-grid{grid-template-columns:1fr;gap:1.6rem}
  .hero-art{justify-self:center;max-width:400px;order:-1;width:80%}
}

/* Wave edges */
.wave{display:block;width:100%;height:clamp(26px,4vw,54px)}
.wave path{fill:var(--fill,var(--tint))}
.wave.flip{transform:scaleY(-1)}

/* Bands */
.band{padding-block:clamp(2.8rem,6vw,4.8rem)}
.band-tint{background:var(--tint)}
.head-split{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:1rem 3rem;align-items:end;margin-bottom:2rem}
.head-split h2{margin:0}
.head-split p{margin:0;color:var(--muted);max-width:32em}
@media (max-width:860px){.head-split{grid-template-columns:1fr}}

/* Services: a rate card, not a card grid */
.rates-layout{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:clamp(1.5rem,4vw,3.5rem);align-items:start}
.rates-photo{position:sticky;top:8rem}
.rates-photo img{width:100%;aspect-ratio:4/5;object-fit:cover;border-radius:44% 56% 8px 8px / 26% 30% 8px 8px}
.rates-photo p{font-size:.82rem;color:var(--muted);margin:.6rem 0 0}
.rates{list-style:none;margin:0;padding:0;border-top:3px solid var(--deep)}
.rates li{border-bottom:1px solid var(--line)}
.rates a{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:.2rem 1.5rem;align-items:baseline;padding:1.05rem 0;text-decoration:none;color:var(--ink)}
.rates h3{margin:0;font-size:1.3rem;font-weight:800;color:var(--deep);transition:color .15s}
.rates p{grid-column:1;margin:0;color:var(--muted);font-size:.95rem;line-height:1.55;max-width:34em}
.rates .price{grid-column:2;grid-row:1/span 2;align-self:center;font-weight:800;font-size:1.05rem;color:var(--blue);white-space:nowrap;letter-spacing:-.01em;text-align:right}
.rates .price small{display:block;font-weight:500;font-size:.72rem;color:var(--muted);letter-spacing:0}
.rates a:hover h3{color:var(--blue)}
.rates .new{font-size:.66rem;font-weight:700;color:var(--blue-mid);letter-spacing:.08em;text-transform:uppercase;vertical-align:.4em;margin-left:.5em}
.rates-more{margin:1.3rem 0 0;color:var(--muted);font-size:.95rem}
@media (max-width:860px){.rates-layout{grid-template-columns:1fr}.rates-photo{position:static;max-width:420px}.rates-photo img{aspect-ratio:3/2}}
@media (max-width:480px){.rates h3{font-size:1.15rem}.rates .price{font-size:.95rem}}

/* Heights band: solid brand blue between two wave edges */
.heights{background:var(--blue);color:#dbe7ff}
.heights .wrap{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,.8fr);gap:1.5rem 3rem;align-items:center;padding-block:clamp(1.4rem,3.5vw,2.4rem)}
.heights h2{color:#fff}
.heights p{margin:0;max-width:36em;font-size:1.05rem}
.big-tel{display:block;color:#fff;text-decoration:none;font-weight:800;font-size:clamp(2rem,4.6vw,3.4rem);letter-spacing:-.035em;line-height:1;font-variant-numeric:tabular-nums}
.big-tel:hover{color:#fff}
.big-tel small{display:block;font-size:.85rem;font-weight:500;letter-spacing:0;color:#bcd2ff;margin-bottom:.5rem}
@media (max-width:860px){.heights .wrap{grid-template-columns:1fr}}

/* About */
.split{display:grid;grid-template-columns:1.15fr .85fr;gap:clamp(1.5rem,4vw,3.5rem);align-items:center}
.split-copy{min-width:0}
.split-copy p{max-width:36em}
.split-media img{width:100%;border-radius:46% 54% 42% 58% / 40% 44% 56% 60%;aspect-ratio:1.1/1;object-fit:cover}
@media (max-width:860px){.split{grid-template-columns:1fr}.split-media{max-width:400px}}

/* Questions: plain ruled list */
.faq-layout{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(0,.6fr);gap:2rem 3.5rem;align-items:start}
.faq{border-top:3px solid var(--deep)}
.faq details{border-bottom:1px solid var(--line)}
.faq summary{cursor:pointer;font-weight:700;font-size:1.12rem;color:var(--deep);padding:1.1rem 0;list-style:none;display:flex;justify-content:space-between;gap:1rem;letter-spacing:-.01em}
.faq summary::-webkit-details-marker{display:none}
.faq summary::after{content:"+";font-size:1.5rem;line-height:1;color:var(--blue);font-weight:500}
.faq details[open] summary::after{content:"–"}
.faq details p{padding:0 0 1.2rem;margin:0;max-width:42em;color:var(--muted)}
.photo-tip h3{font-size:1.35rem;font-weight:800}
.photo-tip p{color:var(--muted);font-size:.95rem}
@media (max-width:900px){.faq-layout{grid-template-columns:1fr}}

/* Area directory: plain columns, like a printed index */
.directory{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:2rem 3rem}
.directory .col{display:grid;gap:2rem;align-content:start;min-width:0}
.directory section{min-width:0}
.directory h3{font-size:1.05rem;font-weight:800;margin:0 0 .4rem;padding-bottom:.45rem;border-bottom:3px solid var(--deep)}
.directory ul{list-style:none;margin:0;padding:0}
.directory li{border-bottom:1px solid var(--line)}
.directory a{display:flex;justify-content:space-between;gap:.6rem;padding:.32rem 0;text-decoration:none;color:var(--ink);font-size:.92rem}
.directory a:hover{color:var(--blue)}
.directory a span{color:var(--muted);font-size:.8rem;font-variant-numeric:tabular-nums}
@media (max-width:1000px){.directory{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:560px){.directory{grid-template-columns:1fr}}

/* Contact */
.contact{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);gap:2rem 4rem;align-items:start}
.contact .lede{font-size:1.08rem;max-width:34em}
.contact .tels{display:grid;gap:1.2rem;margin:1.6rem 0}
.contact .tels a{text-decoration:none;color:var(--deep);font-weight:800;font-size:clamp(1.8rem,3.6vw,2.6rem);letter-spacing:-.035em;line-height:1;font-variant-numeric:tabular-nums}
.contact .tels a:hover{color:var(--blue)}
.contact .tels small{display:block;font-size:.8rem;font-weight:600;color:var(--muted);letter-spacing:0;margin-bottom:.35rem}
.contact dl{margin:0;display:grid;grid-template-columns:auto 1fr;gap:.7rem 1.4rem;border-top:3px solid var(--deep);padding-top:1.2rem}
.contact dt{font-weight:700;color:var(--deep)}
.contact dd{margin:0}
@media (max-width:860px){.contact{grid-template-columns:1fr}}
@media (max-width:420px){.contact dl{grid-template-columns:1fr;gap:.1rem}.contact dd{margin-bottom:.7rem}}

/* Footer */
.site-foot{background:var(--deep);color:#b7c7e6;font-size:.9rem}
.foot-grid{display:grid;grid-template-columns:1.3fr 1fr 1fr 1fr;gap:2rem;padding-block:3rem}
.foot-h{font-weight:700;color:#fff;font-size:.95rem;margin:0 0 .8rem}
.site-foot ul{list-style:none;margin:0;padding:0;display:grid;gap:.35rem}
.site-foot a{color:#dbe6fa;text-decoration:none}
.site-foot a:hover{color:#fff;text-decoration:underline}
.site-foot address{font-style:normal}
.foot-base{border-top:1px solid rgba(255,255,255,.12);padding-block:1.1rem;font-size:.78rem;display:flex;justify-content:space-between;flex-wrap:wrap;gap:.5rem}
@media (max-width:860px){.foot-grid{grid-template-columns:1fr 1fr}}
@media (max-width:480px){.foot-grid{grid-template-columns:1fr}}

/* Mobile call bar */
.callbar{display:none}
@media (max-width:760px){
  body{padding-bottom:calc(68px + env(safe-area-inset-bottom,0px))}
  .callbar{display:grid;grid-template-columns:1fr 1fr;gap:.5rem;position:fixed;left:0;right:0;bottom:0;z-index:60;background:var(--paper);border-top:1px solid var(--line);box-shadow:0 -6px 20px rgba(6,36,95,.12);padding:.55rem max(12px,env(safe-area-inset-right,0px)) calc(.55rem + env(safe-area-inset-bottom,0px)) max(12px,env(safe-area-inset-left,0px))}
  .callbar .btn{justify-content:center;padding:.8em .6em;font-size:.98rem}
}

/* Fault finder: pick a symptom, see the screen and where the fault usually is */
.ff{display:grid;grid-template-columns:minmax(0,.75fr) minmax(0,1.25fr);gap:2rem 3rem;align-items:start}
.ff-tabs{display:grid;border-top:3px solid var(--deep)}
.ff-tabs button{font:inherit;text-align:left;background:none;border:0;border-bottom:1px solid var(--line);padding:1rem 2rem 1rem 0;color:var(--deep);font-weight:700;font-size:1.05rem;letter-spacing:-.01em;line-height:1.3;cursor:pointer;position:relative}
.ff-tabs button::after{content:"→";position:absolute;right:.2rem;top:50%;transform:translateY(-50%);color:var(--line);transition:color .15s,right .15s}
.ff-tabs button:hover{color:var(--blue)}
.ff-tabs button[aria-selected="true"]{color:var(--blue)}
.ff-tabs button[aria-selected="true"]::after{color:var(--blue);right:0}
.ff-tabs button[aria-selected="true"]::before{content:"";position:absolute;left:-1rem;top:.9rem;bottom:.9rem;width:4px;background:var(--blue);border-radius:2px}
.ff-stage{min-width:0;display:grid;gap:1.4rem}
.ff-visual{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(0,1fr);gap:1.2rem;align-items:end}
.ff-tv{position:relative;aspect-ratio:16/9;background:#0b0f18;border:10px solid #1b2230;border-bottom-width:14px;border-radius:10px;overflow:hidden;box-shadow:0 18px 40px -22px rgba(6,36,95,.6)}
.ff-tv::after{content:"";position:absolute;left:50%;bottom:-14px;width:22%;height:4px;transform:translateX(-50%);background:#33405a;border-radius:2px}
.ff-screen{position:absolute;inset:0;display:none;place-items:center;color:#e8eef9;font-size:.82rem;text-align:center}
.ff-screen:first-child{display:grid}
.ff[data-active] .ff-screen{display:none}
.ff[data-active="nosignal"] [data-screen="nosignal"],
.ff[data-active="breakup"] [data-screen="breakup"],
.ff[data-active="missing"] [data-screen="missing"],
.ff[data-active="satellite"] [data-screen="satellite"],
.ff[data-active="oneroom"] [data-screen="oneroom"]{display:grid}
.ff-screen canvas{width:100%;height:100%;display:block}
.osd{background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.25);border-radius:6px;padding:.8rem 1.2rem;display:grid;gap:.15rem;animation:ff-float 6s ease-in-out infinite alternate}
.osd b{font-size:1.05rem;font-weight:700}
.osd span{font-size:.72rem;color:#aab7cf}
@keyframes ff-float{from{transform:translate(-12%,-10%)}to{transform:translate(12%,12%)}}
.retune{width:82%;display:grid;gap:.45rem;text-align:left}
.retune b{font-size:.95rem}
.retune .bar{height:6px;background:rgba(255,255,255,.15);border-radius:3px;overflow:hidden}
.retune .bar i{display:block;height:100%;width:34%;background:var(--cyan)}
.retune span{font-size:.72rem;color:#aab7cf}
.retune ol{list-style:none;margin:.2rem 0 0;padding:0;display:grid;grid-template-columns:repeat(10,1fr);gap:3px}
.retune li{background:rgba(35,178,239,.35);border-radius:2px;text-align:center;font-size:.62rem;padding:.15rem 0}
.retune li.x{background:transparent;outline:1px dashed rgba(255,255,255,.25);color:transparent}
.rooms{position:absolute;inset:0;display:grid;grid-template-columns:1fr 1fr}
.rooms div{display:grid;place-content:center;gap:.2rem;position:relative}
.rooms .ok{background:linear-gradient(160deg,#3d7fd8 0%,#7fc3ef 55%,#d9e9c8 56%,#9cc27a 100%)}
.rooms .bad{background:#0b0f18;border-left:3px solid #1b2230}
.rooms small{position:absolute;top:.4rem;left:.5rem;font-size:.62rem;color:#fff;background:rgba(0,0,0,.35);padding:.05rem .35rem;border-radius:3px}
.rooms b{font-size:.85rem}
.ff-house{width:100%;height:auto;overflow:visible}
.ff-house .roof{fill:var(--tint);stroke:var(--deep);stroke-width:3;stroke-linejoin:round}
.ff-house .body{fill:var(--paper);stroke:var(--deep);stroke-width:3}
.ff-house .chim{fill:var(--paper);stroke:var(--deep);stroke-width:3}
.ff-house .floor{stroke:var(--deep);stroke-width:2;fill:none}
.ff-house .ant path,.ff-house .sky-tx{stroke:var(--deep);stroke-width:3;fill:none;stroke-linecap:round}
.ff-house .tx-waves path{stroke:var(--line);stroke-width:2.5;fill:none;stroke-linecap:round}
.ff-house .cab{stroke:var(--blue-mid);stroke-width:2;fill:none;stroke-dasharray:5 4}
.ff-house .cab.sat{stroke:var(--cyan)}
.ff-house .dish path{stroke:var(--deep);stroke-width:3;fill:none;stroke-linecap:round}
.ff-house .dish circle{fill:var(--deep)}
.ff-house .amp{fill:var(--deep)}
.ff-house .plate{fill:var(--paper);stroke:var(--deep);stroke-width:2}
.ff-house .tvset{fill:var(--deep)}
.ff-house text{font:600 11px var(--font);fill:var(--muted)}
.ff-house .spot circle{fill:rgba(35,178,239,.18);stroke:var(--cyan);stroke-width:3;opacity:0;transform-box:fill-box;transform-origin:center;transition:opacity .2s}
.ff-house .spot.on circle{opacity:1;animation:ff-pulse 1.6s ease-out infinite}
@keyframes ff-pulse{0%{transform:scale(.7)}70%{transform:scale(1.15)}100%{transform:scale(1.15);opacity:.35}}
.ff-panel h3{font-size:1.3rem;font-weight:800;margin-bottom:.6rem}
.ff-panel dl{margin:0;display:grid;grid-template-columns:auto 1fr;gap:.5rem 1.4rem;border-top:3px solid var(--deep);padding-top:.9rem}
.ff-panel dt{font-weight:700;color:var(--deep)}
.ff-panel dd{margin:0;color:var(--muted)}
.ff[data-active] .ff-panel{display:none}
.ff[data-active] .ff-panel.on{display:block}
.ff:not([data-active]) .ff-panel+.ff-panel{margin-top:1.4rem}
.faults-foot{margin:1.6rem 0 0;font-size:.95rem;color:var(--muted)}
@media (max-width:960px){.ff{grid-template-columns:1fr}.ff-tabs button[aria-selected="true"]::before{display:none}}
@media (max-width:560px){.ff-visual{grid-template-columns:1fr}.ff-house{max-width:300px;justify-self:center}.ff-panel dl{grid-template-columns:1fr;gap:.1rem}.ff-panel dd{margin-bottom:.6rem}}
@media (prefers-reduced-motion:reduce){.osd{animation:none}.ff-house .spot.on circle{animation:none}}

/* ---------- Local area pages ---------- */
.crumbs{list-style:none;margin:0 0 1rem;padding:0;display:flex;flex-wrap:wrap;gap:.35rem;font-size:.85rem;color:var(--muted)}
.crumbs a{color:var(--muted)}
.crumbs li+li::before{content:"/";margin-right:.35rem;color:var(--line)}
.hero-tag{position:absolute;left:2%;bottom:6%;margin:0;background:var(--deep);color:#fff;padding:.55rem .9rem .6rem;border-radius:var(--radius);font-size:.85rem;line-height:1.2;box-shadow:0 10px 24px rgba(6,36,95,.25)}
.hero-tag b{display:block;font-size:1.7rem;font-weight:800;letter-spacing:-.03em;color:var(--cyan)}

/* Home-type picker */
.hp-tabs{display:flex;flex-wrap:wrap;gap:0 2rem;border-bottom:1px solid var(--line);margin-bottom:1.6rem}
.hp-tabs button{font:inherit;font-weight:700;font-size:1.08rem;color:var(--muted);background:none;border:0;padding:.7rem 0 .8rem;cursor:pointer;position:relative}
.hp-tabs button::after{content:"";position:absolute;left:0;right:0;bottom:-1px;height:4px;background:transparent;transition:background .15s}
.hp-tabs button:hover{color:var(--deep)}
.hp-tabs button[aria-selected="true"]{color:var(--deep)}
.hp-tabs button[aria-selected="true"]::after{background:var(--blue)}
.hp-panel{display:none;grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);gap:clamp(1.4rem,4vw,3rem);align-items:center}
.hp-panel.on{display:grid;animation:hpIn .35s ease}
@keyframes hpIn{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}
.hp-photo img{width:100%;aspect-ratio:16/10;object-fit:cover;border-radius:38% 62% 10px 10px / 18% 22% 10px 10px}
.hp-copy h3{font-size:clamp(1.5rem,2.6vw,2rem);font-weight:800;letter-spacing:-.03em;margin:0 0 .7rem}
.hp-copy p{max-width:32em}
.hp-do{border-left:4px solid var(--cyan);padding-left:1rem;color:var(--ink)}
.hp-do b{display:block;color:var(--deep);margin-bottom:.15rem}
@media (max-width:860px){.hp-panel{grid-template-columns:1fr}.hp-tabs{gap:0 1.3rem}.hp-tabs button{font-size:.98rem}}
@media (max-width:560px){.hp-tabs{flex-wrap:nowrap;overflow-x:auto;scrollbar-width:none;margin-inline:-16px;padding-inline:16px}.hp-tabs button{white-space:nowrap}}

/* Services with a photo that follows the row you point at */
.sv{display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);gap:clamp(1.5rem,4vw,3.5rem);align-items:start}
.sv-stage{position:sticky;top:8rem;aspect-ratio:5/4;border-radius:40% 60% 8px 8px / 30% 34% 8px 8px;overflow:hidden;background:var(--tint)}
.sv-img{position:absolute;inset:0;opacity:0;transition:opacity .35s ease}
.sv-img.on{opacity:1}
.sv-img img{width:100%;height:100%;object-fit:cover;object-position:var(--fx,50%) center}
.sv .rates li{transition:background .2s}
.sv .rates li.on h3{color:var(--blue)}
.sv-thumb{display:none}
@media (max-width:860px){
  .sv{grid-template-columns:1fr}.sv-stage{display:none}
  .sv .rates a{grid-template-columns:92px minmax(0,1fr) auto;column-gap:1rem}
  .sv-thumb{display:block;grid-row:1/span 2;align-self:center}
  .sv-thumb img{width:92px;height:70px;object-fit:cover;border-radius:6px}
  .sv .rates h3,.sv .rates p{grid-column:2}.sv .rates .price{grid-column:3}
}
@media (max-width:480px){.sv .rates a{grid-template-columns:72px minmax(0,1fr)}.sv-thumb img{width:72px;height:60px}.sv .rates .price{grid-column:2;grid-row:auto;text-align:left}.sv .rates .price[aria-hidden]{display:none}}

/* Signal map */
.sig .wrap{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}
.sig p+p{margin-top:.8rem}
.sig .big-tel{margin-top:1.6rem}
.sigmap{width:100%;max-width:460px;height:auto;justify-self:center;overflow:visible}
.sigmap .thames{fill:none;stroke:#3d7be0;stroke-width:14;stroke-linecap:round;opacity:.55}
.sigmap .river{font:500 11px var(--font);fill:#bcd2ff}
.sigmap .beam{fill:none;stroke:rgba(255,255,255,.35);stroke-width:3;stroke-dasharray:4 7}
.sigmap .beam.pulse{stroke:var(--cyan);stroke-width:4;stroke-dasharray:28 400;stroke-dashoffset:428;animation:beam 2.4s linear infinite}
@keyframes beam{to{stroke-dashoffset:0}}
.sigmap .mast path{stroke:#fff;stroke-width:3;fill:none;stroke-linecap:round}
.sigmap .ring{fill:none;stroke:var(--cyan);stroke-width:2;transform-origin:0 -30px;transform:translateY(-30px);animation:ring 2.4s ease-out infinite;opacity:0}
.sigmap .ring.r2{animation-delay:1.2s}
@keyframes ring{0%{opacity:.9;r:4}100%{opacity:0;r:34}}
.sigmap .home path{fill:#fff;stroke:#fff;stroke-width:2;stroke-linejoin:round}
.sigmap .home .ant{fill:none;stroke-linecap:round}
.sigmap .lbl{font:800 16px var(--font);fill:#fff}
.sigmap .sub{font:500 12px var(--font);fill:#bcd2ff}
.sigmap .dist{font:600 12px var(--font);fill:#dbe7ff;text-anchor:middle}
@media (max-width:860px){.sig .wrap{grid-template-columns:1fr}}
.directory-row{display:block}
.directory-row ul{columns:3 14rem;column-gap:3rem}
.directory-row li{break-inside:avoid}
.ff-panel .ff-h3{font-size:1.3rem;font-weight:800;color:var(--deep);line-height:1.2;letter-spacing:-.02em;margin:0 0 .6rem}
.photo-tip .tip-h{font-size:1.35rem;font-weight:800;color:var(--deep);line-height:1.2;letter-spacing:-.02em;margin:0 0 .5rem}

/* Service pages */
.prose-grid{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(0,.65fr);gap:clamp(1.5rem,5vw,4.5rem);align-items:start}
.prose h2{font-size:clamp(1.6rem,3vw,2.3rem)}
.prose h2:not(:first-child){margin-top:2.2rem}
.prose p{max-width:38em;font-size:1.04rem}
.glance{position:sticky;top:8rem;border-top:3px solid var(--deep);padding-top:.4rem}
.glance dl{margin:0 0 1.4rem}
.glance div{padding:.8rem 0;border-bottom:1px solid var(--line)}
.glance dt{font-weight:800;color:var(--deep);font-size:.95rem}
.glance dd{margin:.15rem 0 0;color:var(--muted);font-size:.93rem;line-height:1.5}
.glance dd a{font-weight:800;font-size:1.25rem;color:var(--blue);text-decoration:none}
.band-photo .wrap{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}
.band-photo h2{margin-bottom:.8rem}
.band-photo p{margin-bottom:1.4rem}
.bp-img img{width:100%;aspect-ratio:16/11;object-fit:cover;border-radius:10px 10px 46% 54% / 10px 10px 22% 26%;display:block}
.rates .rt{margin:0;font-size:1.3rem;font-weight:800;color:var(--deep);transition:color .15s;line-height:1.25}
.rates a:hover .rt,.sv .rates li.on .rt{color:var(--blue)}
.directory .dir-h{font-size:1.05rem;font-weight:800;color:var(--deep);margin:0 0 .4rem;padding-bottom:.45rem;border-bottom:3px solid var(--deep)}
@media (max-width:860px){.prose-grid,.band-photo .wrap{grid-template-columns:1fr}.glance{position:static}.sv .rates .rt{grid-column:2}}
@media (max-width:480px){.rates .rt{font-size:1.15rem}}

/* CCTV pages: camera planner, phone view */
.cp-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(1.4rem,4vw,3rem);align-items:center}
.cp-grid .hp-panel{grid-template-columns:1fr}
.cp-map{width:100%;height:auto;display:block}
.cp-map .garden{fill:#dcebd6}.cp-map .front-g{fill:#e6f0e1}
.cp-map .fence{fill:none;stroke:#8aa37f;stroke-width:3;stroke-dasharray:2 5}
.cp-map .shed{fill:#c9b79a}
.cp-map .house{fill:#fff;stroke:var(--deep);stroke-width:3}
.cp-map .passage{fill:#efe9df}
.cp-map .road{fill:#c7ccd6}.cp-map .kerb{stroke:#8b93a3;stroke-width:3}
.cp-map .car{fill:var(--blue-mid)}
.cp-map .t{font:800 15px var(--font);fill:var(--deep)}.cp-map .t.s{font-weight:600;font-size:12px;fill:#5a6b85}
.cp-map .cone{fill:var(--cyan);opacity:.12;transition:opacity .3s}
.cp-map .cam circle{fill:#fff;stroke:var(--deep);stroke-width:3;transition:fill .3s}
.cplan:has([id$="-t-front"][aria-selected="true"]) .c-front,.cplan:has([id$="-t-drive"][aria-selected="true"]) .c-drive,
.cplan:has([id$="-t-side"][aria-selected="true"]) .c-side,.cplan:has([id$="-t-back"][aria-selected="true"]) .c-back{opacity:.55;animation:coneIn .5s ease}
.cplan:has([id$="-t-front"][aria-selected="true"]) .k-front circle,.cplan:has([id$="-t-drive"][aria-selected="true"]) .k-drive circle,
.cplan:has([id$="-t-side"][aria-selected="true"]) .k-side circle,.cplan:has([id$="-t-back"][aria-selected="true"]) .k-back circle{fill:var(--cyan)}
@keyframes coneIn{from{opacity:0}}
.cp-h{font-size:clamp(1.5rem,2.6vw,2rem);font-weight:800;letter-spacing:-.03em;margin:0 0 .7rem;color:var(--deep);line-height:1.15}
.local-photo img{width:100%;height:auto;display:block;border-radius:40% 60% 8px 8px / 26% 30% 8px 8px;margin-top:.8rem}
.local-photo .cap{font-size:.82rem;color:var(--muted);margin:.6rem 0 0}
.phone-mock{justify-self:center;width:min(300px,100%);background:#0b1730;border-radius:30px;padding:16px 14px 18px;border:6px solid #1c2c4f;box-shadow:0 24px 50px rgba(0,0,0,.3);color:#dbe7ff;font-size:.8rem}
.pm-top{display:flex;justify-content:space-between;font-weight:700;margin-bottom:10px;font-variant-numeric:tabular-nums}
.pm-grid{display:grid;grid-template-columns:1fr 1fr;gap:6px}
.tile{position:relative;aspect-ratio:4/3;border-radius:8px;background:linear-gradient(160deg,#3a4a66,#1a2540);overflow:hidden}
.tile:nth-child(2){background:linear-gradient(200deg,#4a5670,#202a40)}.tile:nth-child(3){background:linear-gradient(140deg,#2c3a52,#141d30)}.tile:nth-child(4){background:linear-gradient(180deg,#36524a,#18262a)}
.tile .rec{position:absolute;top:5px;left:6px;font-size:.6rem;font-weight:700;color:#ff6b6b;animation:blink 1.6s steps(2) infinite}
.tile .lbl{position:absolute;left:6px;bottom:5px;font-size:.68rem;font-weight:700;color:#fff}
.pm-alert{margin-top:10px;background:#16284d;border-left:4px solid var(--cyan);border-radius:6px;padding:8px 10px;display:flex;justify-content:space-between;gap:.5rem}
.pm-alert b{color:#fff}
@keyframes blink{50%{opacity:.2}}
@media (max-width:860px){.cp-grid{grid-template-columns:1fr}.cp-map{max-width:420px}}
@media (prefers-reduced-motion:reduce){.tile .rec{animation:none}}
.cp-map .screen{fill:#bfe6fb}
.cp-map .t.w{fill:#fff}
/* regional sections (East London / North London / Essex) */
.regions{display:grid;grid-template-columns:repeat(3,1fr);gap:clamp(1.25rem,3vw,2.5rem);margin-top:1.25rem}
.regions>div{border-top:3px solid var(--deep);padding-top:1rem}
.regions h3{font-size:1.15rem;margin:0 0 .5rem}
.regions p{margin:0 0 .75rem}
.regions .near{font-size:.9rem;color:var(--muted)}
@media (max-width:860px){.regions{grid-template-columns:1fr}}
/* coverage + contact pages */
.cov-split{display:grid;grid-template-columns:1.25fr 1fr;gap:clamp(1.5rem,4vw,3.5rem);align-items:start}
.cov-list{display:block}
.cov-list ul{columns:2;column-gap:1.5rem}
.contact-teams{display:grid;grid-template-columns:1fr 1fr;gap:clamp(1.25rem,4vw,3rem);margin-top:1.25rem}
.contact-teams>div{border-top:3px solid var(--deep);padding-top:1rem}
.contact-teams h3{margin:0 0 .5rem}
.contact-teams .big-num{display:block;font-weight:800;font-size:clamp(1.6rem,3.5vw,2.2rem);color:var(--deep);text-decoration:none;margin:.5rem 0 1rem;letter-spacing:-.01em}
.steps{padding-left:1.25rem;margin:0 0 1.25rem}
.steps li{margin:.4rem 0}
@media (max-width:860px){.cov-split,.contact-teams{grid-template-columns:1fr}}
/* nav drop-down (TV Aerials) */
.nav .has-sub{position:relative;display:flex;align-items:flex-start}
.nav .sub-toggle{background:none;border:0;padding:.45rem .2rem .6rem .3rem;color:var(--deep);cursor:pointer;line-height:0}
.nav .sub-toggle svg{width:.7rem;height:.5rem;transition:transform .15s}
.nav .has-sub.open .sub-toggle svg{transform:rotate(180deg)}
.nav .sub{display:none;position:absolute;top:100%;left:-1rem;z-index:60;background:var(--paper);min-width:15rem;padding:.4rem 1rem .6rem;flex-direction:column;gap:0;border-top:3px solid var(--blue);box-shadow:0 14px 30px rgba(11,46,79,.16)}
.nav .sub a{font-weight:500;padding:.55rem 0;border-bottom:1px solid var(--line)}
.nav .sub li:last-child a{border-bottom:0}
.nav .sub a:hover{border-bottom-color:var(--line)}
.nav .has-sub:hover .sub,.nav .has-sub:focus-within .sub,.nav .has-sub.open .sub{display:flex}
@media (max-width:960px){
  .nav .has-sub{flex-wrap:wrap}
  .nav .has-sub>a{flex:1}
  .nav .sub-toggle{padding:.75rem .6rem;border-bottom:1px solid var(--line)}
  .nav .sub{position:static;box-shadow:none;border-top:0;min-width:0;width:100%;padding:0 0 0 1rem}
  .nav .has-sub:hover .sub,.nav .has-sub:focus-within .sub{display:none}
  .nav .has-sub.open .sub{display:flex}
}
.directory.dir4{grid-template-columns:repeat(4,minmax(0,1fr));gap:2rem 2rem}
@media (max-width:960px){.directory.dir4{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:560px){.directory.dir4{grid-template-columns:1fr}}
#repair-areas,#reg-title{scroll-margin-top:8rem}
/* Areas directory as one accordion per region */
.directory.acc-dir{display:block;border-top:2px solid var(--deep)}
.acc{border-bottom:1px solid var(--line)}
.acc summary{display:flex;align-items:center;gap:1rem;padding:1.35rem 0;cursor:pointer;list-style:none}
.acc summary::-webkit-details-marker{display:none}
.acc summary h3,.acc summary .dir-h{flex:1;margin:0;padding:0;border:0;font-size:clamp(1.1rem,1.8vw,1.3rem);font-weight:800;color:var(--deep)}
.acc summary:hover h3,.acc summary:hover .dir-h{color:var(--blue)}
.acc-n{color:var(--muted);font-size:.9rem;font-variant-numeric:tabular-nums}
.acc-i{position:relative;width:14px;height:14px;flex:none}
.acc-i::before,.acc-i::after{content:"";position:absolute;background:var(--blue);border-radius:1px;transition:transform .2s}
.acc-i::before{left:0;right:0;top:6px;height:3px}
.acc-i::after{top:0;bottom:0;left:6px;width:3px}
.acc[open] .acc-i::after{transform:scaleY(0)}
.acc summary:focus-visible{outline:3px solid var(--cyan);outline-offset:2px}
.acc ul{columns:4 11rem;column-gap:2.5rem;padding-bottom:1.4rem}
.acc li{break-inside:avoid}
/* Arch photo frames, sitewide (taken from John's Lovable review, 2026-11-10) */
.hero-art{aspect-ratio:4/5;max-width:420px}
.hero-art svg.blob{display:none}
.hero-art .photo{inset:0;border-radius:210px 210px 8px 8px;overflow:hidden;border-bottom:8px solid var(--blue)}
.hero-art .photo img{-webkit-mask:none;mask:none;object-position:center}
.rates-photo img{border-radius:220px 220px 8px 8px;border-bottom:6px solid var(--blue)}
.split-media img{border-radius:240px 240px 8px 8px;aspect-ratio:4/5;border-bottom:6px solid var(--blue)}
@media (max-width:860px){.hero-art{max-width:320px;width:80%}.rates-photo img{border-radius:180px 180px 8px 8px}}
@media (max-width:560px){.hero-art{max-width:260px}}
/* Homepage contact band in brand blue */
#contact{background:var(--blue);color:#fff;padding-block:clamp(2.5rem,6vw,4rem)!important}
#contact h2,#contact .lede,#contact dt,#contact dd,#contact .tels a,#contact dd a{color:#fff}
#contact .tels a:hover,#contact dd a:hover{color:var(--tint)}
#contact .tels small{color:var(--tint)}
#contact dl{border-top-color:var(--cyan)}
#contact .tels a{white-space:nowrap}
.contact-h{font-weight:800;font-size:clamp(2rem,4.4vw,3.1rem);line-height:1.05;letter-spacing:-.035em;margin:0 0 .9rem;color:#fff}
/* Full-width photo hero (.hero-full), added by tools/hero_full.py */
.hero-full{background:var(--deep);color:#fff;isolation:isolate}
.hero-full .hero-bg{position:absolute;inset:0;z-index:-1}
.hero-full .hero-bg img{width:100%;height:100%;object-fit:cover}
.hero-full .hero-bg::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(7,27,74,.94) 0%,rgba(7,27,74,.82) 38%,rgba(7,27,74,.35) 70%,rgba(7,27,74,.1) 100%)}
.hero-full .hero-grid{grid-template-columns:minmax(0,40rem) 1fr;min-height:clamp(30rem,64vh,40rem);padding-block:clamp(3rem,7vw,5.5rem) clamp(3.5rem,8vw,6rem)}
.hero-full h1{color:#fff}
.hero-full .lede{color:#e3ebfb}
.hero-full .crumbs,.hero-full .crumbs a{color:#c4d3f2}
.hero-full .creds{color:#c9d6f1;border-top-color:var(--cyan)}
.hero-full .creds b{color:#fff}
.hero-full .hero-art{aspect-ratio:auto;max-width:none;align-self:end;justify-self:end}
.hero-full .hero-art .hero-tag{position:static}
.hero-full .hero-wave{position:absolute;left:0;right:0;bottom:-1px}
@media (max-width:860px){
  .hero-full .hero-grid{grid-template-columns:1fr;min-height:0}
  .hero-full .hero-bg::after{background:linear-gradient(180deg,rgba(7,27,74,.55) 0%,rgba(7,27,74,.88) 45%,rgba(7,27,74,.95) 100%)}
  .hero-full .hero-art{order:0;width:auto;justify-self:start}
}
.hero-full .hero-tag{width:auto;max-width:16rem;justify-self:end;align-self:end}
/* wide screens: photo sits on the right so it isn't cropped to a thin strip (John, 2026-11-10) */
@media (min-width:1200px){
  .hero-full{background:#071b4a}
  .hero-full .hero-bg{left:auto;width:max(64%,calc(100% - 560px))}
  .hero-full .hero-bg::after{background:linear-gradient(90deg,#071b4a 0%,rgba(7,27,74,.82) 22%,rgba(7,27,74,.4) 52%,rgba(7,27,74,.08) 100%)}
}
/* CCTV hub: camera guide, storage calculator, privacy and the law (2026-11-10) */
.cam-group{margin-top:clamp(1.6rem,3vw,2.4rem)}
.cam-group h3{font-size:1.05rem;letter-spacing:.06em;text-transform:uppercase;color:var(--blue);margin:0 0 .4rem}
.cams{list-style:none;margin:0;padding:0;border-top:3px solid var(--deep)}
.cams li{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.3fr);gap:.3rem 2.5rem;padding:1.05rem 0;border-bottom:1px solid var(--line)}
.cams h4,.cams .cam-h{margin:0;font-size:1.25rem;font-weight:800;color:var(--deep);letter-spacing:-.02em}
.cam-for{margin:.2rem 0 0;font-size:.9rem;color:var(--blue-mid);font-weight:600}
.cams li>p{margin:0;color:var(--ink);line-height:1.6}
@media (max-width:760px){.cams li{grid-template-columns:1fr}}
.band-deep{background:var(--deep);color:#fff}
.band-deep h2{color:#fff}
.store-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,26rem);gap:clamp(1.6rem,5vw,4rem);align-items:center}
.store p{color:#d7e2f7}.store .store-note{font-size:.85rem;color:#aebfe2}
.store-calc{background:#0e2a63;border:1px solid #23458a;border-radius:var(--radius);padding:1.3rem 1.4rem}
.sc-row{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:.55rem 0;border-bottom:1px solid #23458a}
.sc-l{font-weight:700;font-size:.92rem}
.sc-step{display:flex;align-items:center;gap:.5rem}
.sc-step button,.sc-seg button{font:inherit;font-size:.85rem;font-weight:700;color:#fff;background:#173a80;border:1px solid #2d55a3;border-radius:4px;padding:.4rem .7rem;cursor:pointer;min-height:2.2rem}
.sc-step button{width:2.2rem;padding:0;font-size:1.1rem}
.sc-step output{min-width:2ch;text-align:center;font-weight:800;font-size:1.1rem}
.sc-seg{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:.35rem}
.sc-seg button[aria-checked="true"]{background:var(--cyan);border-color:var(--cyan);color:var(--deep)}
.sc-step button:focus-visible,.sc-seg button:focus-visible{outline:3px solid #fff;outline-offset:2px}
.sc-out{margin:1.1rem 0 .5rem;color:#fff!important}
.sc-out b{font-size:2.6rem;font-weight:800;letter-spacing:-.04em;line-height:1}
.sc-bar{height:6px;background:#23458a;border-radius:3px;overflow:hidden}
.sc-bar i{display:block;height:100%;background:var(--cyan);transition:width .3s}
.sc-msg{margin:.6rem 0 0;font-size:.88rem}
@media (max-width:860px){.store-grid{grid-template-columns:1fr}}
.law-grid{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:clamp(1.6rem,5vw,4rem);align-items:center}
.law-fig{margin:0}.law-fig svg{width:100%;height:auto;border-radius:var(--radius);display:block}
.law-fig figcaption{font-size:.85rem;color:var(--muted);margin-top:.6rem}
.law-list{display:grid;grid-template-columns:1fr 1fr;gap:1.1rem 1.8rem;margin:1.4rem 0}
.law-list dt{font-weight:800;color:var(--deep);margin-bottom:.2rem}
.law-list dd{margin:0;font-size:.93rem;line-height:1.55;color:var(--ink)}
.law-more{font-size:.93rem;color:var(--muted)}
@media (max-width:860px){.law-grid{grid-template-columns:1fr}.law-list{grid-template-columns:1fr}}
