/* ============================================================
   PrimeStart — phone composition (applied at ≤640px only)

   Enqueued last with media="screen and (max-width:640px)", so nothing in
   this sheet can reach the desktop, laptop or tablet rendering.

   The principle (owner, 4 Sept 2026): REMOVE CLUTTER, NOT PERSUASION.
   A phone visitor gets the same important information as a desktop
   visitor - what PrimeStart offers, why it is different, what it costs,
   what is included, why to trust it, what SEO is, what the Client
   Platform provides and what to do next - presented more efficiently:
   compact rows, horizontal card strips, structured accordions of named
   groups, tighter rhythm. Copy stays in the document; only decorative
   mocks, duplicated blocks and repeated calls to action leave the flow.

   Utilities
     .m-hide          not shown on a phone (decorative or duplicated only)
     .m-only          shown on a phone only (hidden wider by primestart.css)
     .m-max-N         a grid shows only its first N children
     .m-tight         a section with reduced vertical padding
     .m-scroll        a grid becomes a horizontal, snapping card strip
     .m-scroll-sm     ...with smaller cards
     .m-rows          a card grid becomes compact hairline rows
     .m-clamp         paragraphs inside clamp to three lines (still in DOM)
     [data-m-acc]     grouped children become an accordion (site.js 5)

   Contents
     1. Utilities
     2. Type and rhythm shared by every page
     3. Home
     4. Websites (rules live in page-websites.css)
     5. SEO (rules live in page-growth.css)
     6. Pricing
     7. How it works
     8. Our work, Services
     9. Extras (SEO Boost, Logo, Google Ads, Additional pages)
    10. Locations hub, Industries hub
    11. Industry pages (data-driven and the electricians benchmark)
    12. Blog, contact, request a call
    13. Forms
   ============================================================ */

/* ---------- 1. Utilities ---------- */
.m-hide{display:none!important}
.m-only{display:block}
.m-max-1 > :nth-child(n+2),
.m-max-2 > :nth-child(n+3),
.m-max-3 > :nth-child(n+4),
.m-max-4 > :nth-child(n+5){display:none!important}
.m-tight.sec,.m-tight.sec-sm{padding:40px 0}

/* horizontal card strip: the cards keep their design, the visitor swipes */
.m-scroll{
  display:flex!important;flex-wrap:nowrap!important;overflow-x:auto;gap:12px!important;
  scroll-snap-type:x mandatory;-webkit-overflow-scrolling:touch;overscroll-behavior-x:contain;
  margin-left:calc(var(--pad) * -1)!important;margin-right:calc(var(--pad) * -1)!important;
  padding:2px var(--pad) 10px!important;scrollbar-width:none;
}
.m-scroll::-webkit-scrollbar{display:none}
.m-scroll > *{flex:0 0 78%!important;max-width:320px;width:auto!important;scroll-snap-align:start;margin:0!important;transform:none!important}
.m-scroll.m-scroll-sm > *{flex-basis:54%!important;max-width:230px}
.m-scroll.m-scroll-xs > *{flex-basis:44%!important;max-width:190px}
.m-scroll > *:last-child{margin-right:var(--pad)!important}

/* compact rows: a grid of cards becomes a hairline list */
.m-rows{display:block!important;border-top:1px solid var(--line)}
.m-rows > *{display:block;padding:14px 0!important;margin:0!important;border:0!important;border-bottom:1px solid var(--line)!important;border-radius:0!important;background:transparent!important;box-shadow:none!important}
.m-rows > * > img,.m-rows > * > figure{display:none}
.m-rows h3,.m-rows .as-h4{font-size:16.5px;margin:0 0 4px}
.m-rows p{font-size:14.5px;color:var(--muted);line-height:1.5;margin:0}
.m-rows ul{margin-top:8px}
.m-clamp p{display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}

/* structured accordion of named groups (built by site.js module 5) */
.m-acc{display:block!important;gap:0!important;border-top:1px solid var(--line);border-bottom:0}
.m-acc > .m-acc-item{padding:0!important;margin:0!important;border:0!important;border-bottom:1px solid var(--line)!important;border-radius:0!important;background:transparent!important;box-shadow:none!important}
.m-acc-head{margin:0!important;font-size:inherit}
.m-acc-btn{
  display:flex;align-items:center;justify-content:space-between;gap:14px;width:100%;min-height:54px;
  padding:14px 0;background:none;border:0;text-align:left;cursor:pointer;
  font-family:var(--fh);font-size:16.5px;font-weight:700;letter-spacing:-0.025em;line-height:1.3;color:var(--ink);
}
.m-acc-btn:focus-visible{outline:2px solid var(--orange);outline-offset:2px}
.m-acc-chev{width:9px;height:9px;border-right:2px solid var(--orange);border-bottom:2px solid var(--orange);transform:rotate(45deg) translateY(-2px);flex:none;margin-right:4px;transition:transform .2s ease}
.m-acc-item.open .m-acc-chev{transform:rotate(-135deg) translateY(2px)}
.m-acc-item{flex-wrap:wrap}
.m-acc-item > .m-acc-panel{grid-column:1/-1;flex-basis:100%;width:100%;min-width:0}
.m-acc-panel{padding:0 0 16px}
.m-acc-panel > *:first-child{margin-top:0}
.m-acc-panel ul{margin-top:0}
.m-acc .g-lbl,.m-acc .why-lbl{margin:14px 0 -6px;font-size:12.5px}
.m-acc-item .step-marker{display:none}
@media (prefers-reduced-motion:reduce){.m-acc-chev{transition:none}}

/* ---------- 2. Type and rhythm shared by every page ----------
   One scale for phones: a headline that never runs past four lines,
   16px body, one lede size, and a consistent 48/40/56 spacing rhythm so
   sections read as one designed page rather than a stacked desktop. */
body{font-size:16px;line-height:1.6}
h1,.h1-lg,.h1-sm{font-size:clamp(30px,8.6vw,36px);line-height:1.08;letter-spacing:-0.035em;text-wrap:balance}
h2{font-size:clamp(25px,7vw,29px);line-height:1.14;letter-spacing:-0.03em;text-wrap:balance}
h3{font-size:19px;line-height:1.25}
.as-h3{font-size:22px}
h4,.as-h4{font-size:16.5px}
.lede{font-size:16.5px;line-height:1.55;max-width:none}
.eyebrow{font-size:11.5px;letter-spacing:.13em;margin-bottom:16px}
.eyebrow::before{width:22px}
.sec{padding:52px 0}
.sec-sm{padding:40px 0}
.final{padding:56px 0}
.head{grid-template-columns:1fr;gap:12px;align-items:start;margin-bottom:26px}
.head h2,.head-wide h2{max-width:none}
main h1,main h2,main h3{max-width:none}
.head .lede{padding-bottom:0}
.head-solo,.head-solo-wide,.head-solo-narrow{max-width:none;margin-bottom:22px}
.btn{min-height:48px}
.btn-lg{padding:14px 22px;font-size:16px}
.hero-sub{font-size:16.5px;line-height:1.55;margin-bottom:20px}
.hero-line{display:none}
.hero-ctas{display:flex;flex-direction:column;gap:10px;margin-bottom:0}
.hero-ctas .btn{width:100%}
.assurances > div:nth-child(n+4),
.reassure > div:nth-child(n+4){display:none}
.flow-cta{flex-direction:column;align-items:stretch;gap:10px}
.flow-cta > span,.spot-cta > span,.calc-cta > span{display:none}
.flow-cta .btn{width:100%}
.groups-note{margin-top:20px;font-size:14.5px}
.plans-foot{margin-top:20px}
.work-foot{flex-direction:column;align-items:flex-start;gap:10px}
.work-foot p{font-size:14.5px}
.faq-side .card{display:none}
.faq-side .lede{margin-bottom:6px}
.faq-wrap{gap:22px}
.final .btns{display:flex;flex-direction:column;gap:10px}
.final .btns .btn{width:100%}
.final .final-facts{margin-bottom:22px}
.final .sub + .sub{display:none}
/* comparison pairs stack; the second column keeps its identity through a rule */
.split,.honest,.duo{grid-template-columns:1fr;gap:12px}
.split-col,.honest-col{padding:22px 20px}
.duo-col{padding:24px 20px}
.duo-col + .duo-col{border-left:0;border-top:1px solid var(--line)}
.fact{grid-template-columns:1fr;gap:4px;padding:14px 20px}
.groups{grid-template-columns:1fr}
.groups > div{padding:22px 0!important;border-left:0!important}
.groups h3{font-size:18px}
.groups li{font-size:15px}
.flow-row{grid-template-columns:1fr;gap:8px;padding:20px 0}
.flow-n{font-size:12px}
.diy-cap{display:none}
.diy-row{grid-template-columns:1fr;gap:4px;padding:12px 0}
.diy-row > div{padding:0!important;border:0!important}
.diy-row .a{font-size:13.5px;color:var(--muted)}
.diy-row .a::before{content:"Yourself: ";font-family:var(--fh);font-weight:700;color:var(--muted)}
.diy-row > div:last-child{font-size:15.5px;font-weight:600;color:var(--ink)}
.diy-row > div:last-child::before{content:"PrimeStart: ";font-family:var(--fh);font-weight:700;color:var(--orange-dk)}
.diy-close{font-size:22px;margin-top:26px;max-width:none}
.term-tl-steps{grid-template-columns:1fr;border-radius:14px}
.term-tl-step{padding:18px 18px;border-right:0;border-bottom:1px solid var(--line)}
.term-tl-step:last-child{border-bottom:0}
.term-tl-step p{font-size:14.5px}
.term-tl-note{font-size:13.5px;margin-top:14px}
.vsum{padding:18px 18px}
.vsum-row{flex-direction:column;align-items:flex-start;gap:14px}
.vsum-items{row-gap:6px;font-size:13.5px}
.vsum-total{border-left:0;padding-left:0;border-top:1px solid var(--line);padding-top:12px;width:100%}
.istrip{grid-template-columns:1fr 1fr;gap:10px}
.istrip-cap b{font-size:14px}
.extras-grid{grid-template-columns:1fr}
.extra-item{padding:16px 0!important;border-left:0!important}
.extra-item p{font-size:14.5px}
.chips{gap:8px;margin-top:18px}
.chips span{font-size:13.5px;padding:8px 12px}
.trust-wrap{gap:14px}
.sticky-cta .btn{font-size:15px}

/* ---------- 3. Home ----------
   Hero copy and actions (the illustration is desktop). Then: what you get
   with the price line, the industry strip to swipe, one built website,
   four steps, the two plans and their terms, the ownership timeline,
   SEO in brief, doing it yourself as compact rows, two places, every
   question, the CTA. */

/* ---------- 4. Websites ----------
   /pay-monthly-websites/ is being rebuilt in its own stream; its phone
   rules live in page-websites.css. Nothing here targets it. */

/* ---------- 5. SEO ----------
   /seo/ is being rebuilt in its own stream; its phone rules
   live in page-growth.css. Nothing here targets it. */

/* ---------- 6. Pricing ----------
   Hero copy and two reassurances; the two plans in full with a phone-
   native presentation; which one; what each covers; the comparison as a
   per-plan accordion rather than a wide table; the terms; extras; every
   question; the two-plan CTA. */
/* the tick table fits a phone once the feature column takes more of the
   width; the two plan columns are narrow tick columns */

/* ---------- 7. How it works ----------
   Hero copy; the eight-step spine; choosing the plan in two lines;
   signup; onboarding as a short list; what to do if something is
   missing; the first-draft clock; the build; review and approval; after
   launch; the SEO branch; your part; every question; CTA. */
/* the desktop illustration cards (signup confirmation, draft and approval
   mock-ups, the onboarding form mock) leave the phone; the copy stays */

/* ---------- 8. Our work, Services ---------- */
.page-template-our-work #projects .work-hint{display:none}
.page-template-our-work #projects .work-grid > *{flex-basis:82%!important;max-width:340px}
.page-template-our-work #projects::after{content:"Swipe to see more";display:block;margin-top:8px;font-family:var(--fh);font-size:12px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--muted);text-align:center}
.page-template-our-work #common .common-grid{grid-template-columns:1fr;gap:14px}
.page-template-services #more .extras-grid > .extra-item:nth-child(n+7){display:none}
.page-template-services #which .duo-col li,.page-template-services #which .honest-col li{font-size:14.5px;padding:6px 0}
.page-template-services #plans .duo-col ul li:nth-child(n+6){display:none}

/* ---------- 9. Extras ---------- */

/* ---------- 10. Locations hub, Industries hub ----------
   The finders stay complete (that is the page's job) but each card
   becomes a compact row: a small photograph beside the name. Two hero
   postcards rather than four. */
.page-template-locations .loc-postcards .loc-postcard:nth-child(n+3){display:none}
.page-template-locations .loc-hero-t{font-size:14.5px;margin-top:18px}
.page-template-locations #london .london-panel{grid-template-columns:1fr;gap:20px}
.page-template-locations #london .london-panel > *{min-width:0}
.page-template-locations #london .london-actions .btn{white-space:normal;width:100%;text-align:center;line-height:1.3}
.page-template-locations #london .london-areas-note{font-size:14.5px}
.page-template-locations #local .local-grid{grid-template-columns:1fr;gap:16px}
.page-template-locations .loc-grid{gap:10px}
.page-template-locations .loc-card{display:grid;grid-template-columns:84px 1fr;align-items:center;gap:14px;padding:10px 12px 10px 10px;min-height:0}
.page-template-locations .loc-card .loc-art{aspect-ratio:4/3;height:auto;border-radius:8px;overflow:hidden;margin:0}
.page-template-locations .loc-card .loc-body{padding:0}
.page-template-locations .loc-card .loc-blurb,
.page-template-locations .loc-card .loc-links{display:none}
.page-template-locations .loc-card .loc-name{font-size:17px;margin:0}
.page-template-locations .loc-card .loc-region{font-size:12.5px;margin:2px 0 0}
.page-template-locations .loc-card .loc-go{margin-top:6px;font-size:13.5px}

.page-template-industries .ind-grid{gap:10px}
.page-template-industries .ind-card{display:grid;grid-template-columns:64px 1fr;align-items:center;gap:14px;padding:8px 12px 8px 8px;min-height:0}
.page-template-industries .ind-card .ind-media{aspect-ratio:4/3;height:auto;border-radius:8px;overflow:hidden;margin:0}
.page-template-industries .ind-card .ind-media img{width:100%;height:100%;object-fit:cover}
.page-template-industries .ind-card .ind-body{padding:0}
.page-template-industries .ind-card .ind-blurb{display:none}
.page-template-industries .ind-card .ind-name{font-size:16.5px;margin:0}
.page-template-industries .ind-card .ind-more{display:none}
.page-template-industries .ind-cat-head{margin:26px 0 12px}
.page-template-industries #why-industry .why-ind-grid{grid-template-columns:1fr;gap:16px}
.page-template-industries #detail .detail-grid{grid-template-columns:1fr;gap:16px}

/* ---------- 11. Industry pages ----------
   Hero copy, its photograph where the hero is photographic, two facts;
   then EVERY industry-specific module in a compact form (they are the
   page's unique content), the site plan, the process as a short spine,
   the two plans, SEO in brief, every question, related industries and
   the CTA. */
.page-template-industry .ind-hero h1,.page-template-industry-electricians .hero h1{font-size:29px}
.page-template-industry .ind-sec h2,.page-template-industry-electricians .sec h2{font-size:24px;max-width:none}
.page-template-industry .ind-tablist [role=tab]{min-height:44px}
.page-template-industry .ind-sec-five-second-grid .ind-check-copy{grid-template-columns:1fr;gap:10px;margin-bottom:22px}
.page-template-industry .ind-sec-five-second-grid .ind-check-list{grid-template-columns:1fr}
.page-template-industry .ind-hero:not(.ind-hero-photo) .ind-hero-visual{display:none}
.page-template-industry .ind-facts > div:nth-child(n+3){display:none}
.page-template-industry .ind-sec{padding:44px 0}
.page-template-industry .ind-sec .m-acc-btn{font-size:16px;min-height:50px;padding:12px 0}
.page-template-industry .ind-sec .m-acc-item .ind-n{display:block;font-size:12px;margin:10px 0 -8px}
.page-template-industry .ind-sec .m-acc-item .ind-time{margin:10px 0 -6px}
.page-template-industry .ind-sec .m-acc-panel p{font-size:14.5px}
.page-template-industry .ind-sec .m-acc-panel ul{margin-top:8px}
.page-template-industry .ind-sec .m-acc-panel li{font-size:14.5px;padding:4px 0}
.page-template-industry .ind-sec-faq .q summary{padding:12px 0;font-size:15.5px}
.page-template-industry .ind-sec-pricing .duo-col{padding:20px 18px}
.page-template-industry .ind-sec-pricing .amount .num{font-size:40px}
.page-template-industry .ind-sec-pricing .ind-price-note{font-size:14px}
.page-template-industry .ind-sec-pricing .duo-col .btn{margin-top:16px!important}
.page-template-industry .ind-sec-pricing .ind-spec-scroll table{font-size:13.5px}
.page-template-industry .ind-sec-pricing .ind-spec-foot{font-size:13.5px}
.page-template-industry .ind-sec-pricing .ind-stack-plan{padding:20px 18px}
.page-template-industry .ind-sec-growth .ind-facts-list li{padding:8px 0;font-size:14px;gap:8px}
.page-template-industry .ind-sec-growth .ind-facts-list b{font-size:15px}
.page-template-industry .ind-sec-growth .ind-nopromise{padding:14px 16px}
.page-template-industry .ind-sec-growth .ind-nopromise p{font-size:14px}
.page-template-industry .ind-sec-growth .ind-searches li{padding:8px 12px;font-size:14.5px}
.page-template-industry .ind-sec-growth .ind-btn-row{margin-top:14px}
.page-template-industry .ind-sec-trust .ind-cred-check ul li,.page-template-industry .ind-sec-trust .ind-cred-strip ul li{font-size:14.5px;padding:5px 0}
.page-template-industry .ind-sec-trust .ind-badges li{font-size:13.5px}
.page-template-industry .ind-sec-site-plan .ind-sitemap-row{grid-template-columns:1fr;gap:8px}
.page-template-industry .ind-sec-site-plan .ind-sitemap-page{padding:12px 14px}
.page-template-industry .ind-sec-site-plan .ind-sitemap-page p{font-size:14px}
.page-template-industry .ind-sec-site-plan .ind-plantabs-copy p{font-size:14.5px}
.page-template-industry .ind-sec-site-plan .ind-plan{padding:16px 14px}
.page-template-industry .ind-sec-site-plan .ind-page p{font-size:14px}
.page-template-industry .ind-sec-services .ind-tablist{margin-bottom:16px;padding-bottom:12px}
.page-template-industry .ind-sec-services .ind-svc-col li{font-size:14.5px;padding:5px 0}
.page-template-industry .ind-sec-services .ind-ladder p{font-size:14px}
.page-template-industry .ind-sec-lead .ind-check-copy p,.page-template-industry .ind-sec-more .ind-head p{font-size:15px}
.page-template-industry .ind-sec-pricing .duo-col li{font-size:14.5px;padding:6px 0}
.page-template-industry .ind-sec .ind-head{margin-bottom:20px;max-width:none}
.page-template-industry .ind-sec .lede{font-size:15.5px}
/* industry-specific modules: the copy, lists, photographs and tabs stay;
   the browser and phone mock-ups (desktop compositions) leave the flow */
.page-template-industry .ind-sec-more .ind-mockgrid-visual,
.page-template-industry .ind-sec-more .ind-mobile-stage,
.page-template-industry .ind-sec-more .ind-pl-list,
.page-template-industry .ind-sec-more .ind-cred-wall,
.page-template-industry .ind-sec-lead .ind-mockgrid-visual{display:none}
.page-template-industry .ind-sec-more .ind-mockgrid,
.page-template-industry .ind-sec-more .ind-area,
.page-template-industry .ind-sec-more .ind-cred,
.page-template-industry .ind-sec-more .ind-exp,
.page-template-industry .ind-sec-more .ind-ed,
.page-template-industry .ind-sec-more .ind-tt-grid,
.page-template-industry .ind-sec-more .ind-pl,
.page-template-industry .ind-sec-more .ind-care{grid-template-columns:1fr;gap:18px}
.page-template-industry .ind-sec-more .ind-pairs{grid-template-columns:1fr;gap:14px}
.page-template-industry .ind-sec-more .ind-pairs > *:nth-child(n+3){display:none}
.page-template-industry .ind-sec-more .ind-gallery-grid{grid-template-columns:1fr 1fr;gap:8px}
.page-template-industry .ind-sec-more .ind-gallery-grid > *:nth-child(n+5){display:none}
.page-template-industry .ind-sec-more .ind-svc-grid,.page-template-industry .ind-sec-more .ind-svc-tiles,.page-template-industry .ind-sec-more .ind-decision-cards,.page-template-industry .ind-sec-more .ind-cmp{grid-template-columns:1fr;gap:12px}
.page-template-industry .ind-sec-more .ind-svc p,.page-template-industry .ind-sec-more .ind-decision-card p,.page-template-industry .ind-sec-more .ind-cmp-col p{font-size:14.5px}
.page-template-industry .ind-sec-more .ind-pl-cards{grid-template-columns:1fr 1fr;gap:10px}
.page-template-industry .ind-sec-more .ind-projects{grid-template-columns:1fr;gap:14px}
.page-template-industry .ind-sec-more .ind-projects > *:nth-child(n+3){display:none}
.page-template-industry .ind-sec-more .ind-details li,.page-template-industry .ind-sec-more .ind-expertise-list li,.page-template-industry .ind-sec-more .ind-exp-list li{padding:10px 0}
.page-template-industry .ind-sec-more .ind-details p,.page-template-industry .ind-sec-more .ind-expertise-list p,.page-template-industry .ind-sec-more .ind-exp-list p{font-size:14.5px}
.page-template-industry .ind-sec-process .ind-steps{grid-template-columns:1fr;gap:0;display:block;border-top:1px solid var(--line)}
.page-template-industry .ind-sec-process .ind-steps > li{padding:14px 0;border-bottom:1px solid var(--line);margin:0}
.page-template-industry .ind-sec-process .ind-steps p{font-size:14px;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.page-template-industry .ind-sec-process .ind-steps > li{padding:11px 0}
.page-template-industry .ind-sec-process .ind-steps h3{font-size:16.5px}
.page-template-industry .ind-check-list li{padding:14px 0}
.page-template-industry .ind-check-list p{font-size:15px}
.page-template-industry .ind-check-list h3{font-size:18px}
.page-template-industry .ind-sec-process .ind-steps-rail{padding-top:0}
.page-template-industry .ind-sec-process .ind-steps-rail::before,.page-template-industry .ind-sec-process .ind-steps-rail > li::before{display:none}
.page-template-industry .ind-sec-process .ind-steps-row{border:0;border-radius:0;background:transparent}
.page-template-industry .ind-sec-process .ind-steps-row li{border-right:0}
.page-template-industry .ind-sec-process .ind-step-n{display:inline;margin:0 8px 0 0}
.page-template-industry .ind-sec-process .ind-steps h3{display:inline}
.page-template-industry .ind-sec-process .ind-steps p{margin-top:4px}
.page-template-industry .ind-timing{grid-template-columns:1fr;gap:10px;margin-top:18px}
.page-template-industry .ind-timing div{padding:16px 16px}
.page-template-industry .ind-timing p{font-size:14.5px}
.page-template-industry .ind-sec-site-plan .ind-choices,
.page-template-industry .ind-sec-site-plan .ind-plan-foot,
.page-template-industry .ind-sec-site-plan .ind-foot{display:none}
.page-template-industry .ind-sec-site-plan .ind-page ul li:nth-child(n+4){display:none}
.page-template-industry .ind-sec-growth .ind-demo,
.page-template-industry .ind-sec-growth .ind-journey,
.page-template-industry .ind-sec-growth .ind-serp,
.page-template-industry .ind-sec-growth .ind-demo-note{display:none}
.page-template-industry .ind-sec-growth .ind-searches{margin-top:18px}
.page-template-industry .ind-sec-growth .ind-nopromise{font-size:14.5px}
.page-template-industry .ind-sec-pricing .svc-best,
.page-template-industry .ind-sec-pricing .ind-plans-foot,
.page-template-industry .ind-sec-pricing .ind-vsum{display:none}
.page-template-industry .ind-sec-pricing .duo-col ul li:nth-child(n+5){display:none}
.page-template-industry .ind-sec-pricing .ind-spec tbody tr:nth-child(n+6){display:none}
.page-template-industry .ind-sec-pricing .ind-spec-detail{display:none}
.page-template-industry .ind-sec-faq .faq-more{margin-top:14px}
.page-template-industry .ind-sec-related .istrip{grid-template-columns:1fr 1fr}

/* the electricians benchmark: the same composition, its own class names */
.page-template-industry-electricians .sec{padding:44px 0}
.page-template-industry-electricians .el-facts > div:nth-child(n+3){display:none}
.page-template-industry-electricians .m-acc-btn{font-size:16px;min-height:50px;padding:12px 0}
.page-template-industry-electricians .m-acc-item .el-time{margin:10px 0 -6px}
.page-template-industry-electricians .m-acc-panel p,.page-template-industry-electricians .m-acc-panel li{font-size:14.5px}
.page-template-industry-electricians #site-plan .el-plan{padding:16px 14px}
.page-template-industry-electricians #site-plan .el-page p{font-size:14px}
.page-template-industry-electricians #spec .el-spec-scroll table{font-size:13.5px}
.page-template-industry-electricians #spec .el-spec-foot{font-size:13.5px}
.page-template-industry-electricians #process .el-steps{display:block;border-top:1px solid var(--line)}
.page-template-industry-electricians #process .el-steps > li{padding:11px 0;border-bottom:1px solid var(--line)}
.page-template-industry-electricians #process .el-step-n{display:inline;margin:0 8px 0 0}
.page-template-industry-electricians #process .el-steps h3{display:inline;font-size:16.5px}
.page-template-industry-electricians #process .el-steps p{font-size:14px;margin-top:4px;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.page-template-industry-electricians #process .el-timing{grid-template-columns:1fr;gap:0;margin-top:18px}
.page-template-industry-electricians #process .el-timing p{font-size:14.5px}
.page-template-industry-electricians #growth .el-facts-list li{padding:8px 0;font-size:14px}
.page-template-industry-electricians #growth .el-nopromise p{font-size:14px}
.page-template-industry-electricians #pricing .duo-col{padding:20px 18px}
.page-template-industry-electricians #pricing .amount .num{font-size:40px}
.page-template-industry-electricians #pricing .duo-col .btn{margin-top:16px!important}
.page-template-industry-electricians #faq .q summary{padding:12px 0;font-size:15.5px}
.page-template-industry-electricians #accreditations .el-cred-strip{gap:10px}
.page-template-industry-electricians #five-second .el-check-list li:nth-child(n+5){display:none}
.page-template-industry-electricians #urgent-planned .el-up-grid{grid-template-columns:1fr;gap:14px}
.page-template-industry-electricians #site-plan .el-choices,
.page-template-industry-electricians #site-plan .el-plan-foot,
.page-template-industry-electricians #site-plan .el-builder-cta .link-u{display:none}
.page-template-industry-electricians #accreditations .el-acc-grid{grid-template-columns:1fr 1fr;gap:12px}
.page-template-industry-electricians #spec .el-spec tbody tr:nth-child(n+6){display:none}
.page-template-industry-electricians #process .el-process{grid-template-columns:1fr;gap:0}
.page-template-industry-electricians #process .el-process > *{padding:14px 0;border-bottom:1px solid var(--line)}
.page-template-industry-electricians #growth .el-demo{display:none}
.page-template-industry-electricians #growth .el-nopromise{font-size:14.5px}
.page-template-industry-electricians #pricing .svc-best,
.page-template-industry-electricians #pricing .el-plans-foot{display:none}
.page-template-industry-electricians #pricing .duo-col ul li:nth-child(n+5){display:none}

/* ---------- 12. Blog, contact, request a call ---------- */
.single-post .post-related .post-card:nth-child(n+3),
.single-post .post-related article:nth-child(n+3){display:none}
.page-template-contact .contact-grid,.page-template-request-a-call .call-grid{grid-template-columns:1fr;gap:22px}
.page-template-request-a-call #or-plan .call-plans{grid-template-columns:1fr;gap:12px}

/* ---------- 13. Forms ----------
   Large targets, one column, visible errors, no tiny checkboxes. */
.ps-grid{grid-template-columns:1fr;gap:14px}
.ps-field-wide{grid-column:auto}
.ps-form input[type="text"],.ps-form input[type="email"],.ps-form input[type="tel"],.ps-form input[type="url"],.ps-form textarea,.ps-form select{font-size:16px;min-height:50px;padding:12px 14px}
.ps-form textarea{min-height:120px}
.ps-choices{gap:8px}
.ps-choice{min-height:46px;flex:1 1 calc(50% - 8px)}
.ps-choice span{padding:11px 12px;font-size:14.5px;display:block;text-align:center}
.ps-check{gap:12px;align-items:flex-start;font-size:14.5px}
.ps-box{width:24px;height:24px;flex:none;margin-top:1px}
.ps-submit{width:100%}
.ps-err{font-size:13.5px;margin-top:6px}
.contact-form,.call-form{padding:22px 18px}

/* ============================================================
   9. The mobile pass (5 September 2026)

   Measured, not guessed. Every public page was rendered at 390px and
   audited: pages ran 8,000-16,600px, single sections ran to 1,800px,
   14-113 sentence elements per page fell under 15px, and 38-49 links per
   page were under 40px tall. The rules below fix those four things
   globally, so every page moves at once. See tools/mobile/MOBILE-SYSTEM.md.
   ============================================================ */

/* ---- type: headings stop taking over the screen ---- */
h1,.h1-lg,.h1-sm{font-size:clamp(27px,7.4vw,32px);line-height:1.1;letter-spacing:-0.036em}
h2{font-size:clamp(22px,6.1vw,26px);line-height:1.16;letter-spacing:-0.032em}
.as-h3{font-size:20px}
/* no single-word orphans on the last line of a paragraph */
p,li,dd,.lede,figcaption{text-wrap:pretty}

/* ---- readability floor ----
   Nothing carrying a sentence drops below 14.5px on a phone. The device
   mock-ups are deliberately excluded: a miniature website or dashboard is a
   picture of a screen, not copy to read, and lifting its type would break
   the illusion of scale. */
.ind-more,
.m-acc-panel p,.m-acc-panel li,.m-acc-panel em,
.m-row-note,
.hm-sum-facts li,
.hm-diy-row span,
.foot-brand > p,.foot-copy,
.ind-facts-list li,
.loc-side-note,.groups-note,.work-foot p{font-size:14.5px;line-height:1.55}

/* ---- touch: 44px minimum, and never two targets crowded together ---- */
/* The menu's own product rows set a taller 60px and this file loads last,
   so listing .m-list a here would cap them back to 44px. The grid links
   and the contact rows take the floor instead. */
.m-links a,.m-quick a,
.foot-col a,.foot-places-list a,.foot-contact a,
.faq-list summary,details.q summary,
.finder-chip,.area-chip,
.m-acc-btn,.foot-grp-btn{min-height:44px}
.foot-places-list li{margin-right:2px}
.faq-list summary,details.q summary{padding-top:15px;padding-bottom:15px}

/* ---- rhythm: shorter sections, tighter heads ---- */
.sec{padding:44px 0}
.sec-sm{padding:34px 0}
.final{padding:48px 0}
.eyebrow{margin-bottom:13px}
h1 + .hero-sub,h2 + .lede,h2 + p{margin-top:10px}
.head,.head-solo,.head-solo-wide{margin-bottom:24px}

/* ============================================================
   10. TOUCH FEEDBACK AND DISCLOSURE CONSISTENCY
   (the polish pass, 5 September 2026)

   The owner asked for the site to "feel expensive because everything
   responds beautifully, not because everything moves". Two gaps stood
   out in the audit: there was almost no pressed state anywhere on the
   site, so a tap gave no acknowledgement at all; and the three
   disclosure controls had drifted apart, with chevrons at 8px in the
   footer, 9px in the phone accordions and 12px in the FAQ.

   Everything here is guarded by (hover:none), so it can only reach a
   touch device: a desktop mouse never sees any of it, and the desktop
   design is untouched by construction.
   ============================================================ */
@media (hover:none){
  /* a press should be felt, not watched: one pixel and a moment */
  .btn{transition:transform .12s ease,background-color .18s ease,border-color .18s ease}
  .btn:active{transform:translateY(1px)}

  /* opening something should acknowledge the tap before it animates */
  .m-acc-btn:active,.foot-grp-btn:active,
  .faq-list summary:active,details.q summary:active{opacity:.7}

  /* the plan chips and the menu rows take the same press */
  .hm-sum-tab:active{transform:translateY(1px)}
  .m-list-plans a:active,.m-links a:active{opacity:.65}
}

/* one chevron size across the three disclosure controls on a phone */
.faq-list details.q summary::after,
details.q summary::after{width:10px;height:10px;right:4px;top:calc(50% - 9px)}
details.q[open] summary::after{top:calc(50% - 4px)}

@media (prefers-reduced-motion:reduce){
  .btn,.btn:active,.hm-sum-tab:active{transition:none;transform:none}
}

/* ------------------------------------------------------------
   Don't offer a page you are already on (owner, 5 September 2026)

   The Get Started page carried the orange "Get started" button in its
   own header, which points back at the page the visitor is reading.
   On a phone that is a wasted button in the tightest space on the
   site, sitting directly above the real choice. Hidden here, phones
   only; desktop keeps it for now at the owner's request.
   ------------------------------------------------------------ */
body.page-template-get-started .head-get{display:none}