/* desktop-scale: native */
/* (Drawn at its final desktop size, like tx.css: tools/desktop-scale/generate.py skips a sheet whose first line is the marker above.) */
/* ============================================================
   PrimeStart, the rebuild of 12 October 2026 ("ed" layer)
   SHELL: tokens, atoms, header, phone menu, footer, closing band, buy bar.

   THE LOOK: design system v3, "ivory" (handover/rebuild-2026-10-12/
   RESET-2-DIRECTION.md, "Design system"; owner's BRIEF-5 section 3). Bright,
   warm, human, simple: an ivory page with linen bands, ink type, PrimeStart
   orange as an accent and on buttons only, a natural green used sparingly,
   hairlines and one soft shadow, refined 10px-radius buttons (no pills),
   Manrope only. ONE dark band per page at most: the footer. The navy pages,
   pill buttons and big colour panels of the rejected configurator design are
   gone, as are the serif, rubber stamp and hand-drawn underline of the first
   editorial look. No text is laid over a photograph.

   Loaded on EVERY page (inc/ed.php, primestart_ed_enqueue_shell). It must be
   right on a converted page, on a page still on the previous design (tx) and
   on the older kits, so:
     - every custom property is --ed-*, every new class is ed-*;
     - the header keeps the markup classes header.css lays out (.psh*, .psm*)
       and nav.js drives; this file changes how they LOOK, scoped to
       body.ed-shell;
     - nothing here reads a rule or a token from tx.css.
   ============================================================ */

:root{
  /* canvas */
  --ed-ivory:#FBF8F2;        /* the page */
  --ed-linen:#F3EDE2;        /* the alternate band */
  --ed-white:#FFFFFF;        /* cards, devices, forms */
  /* ink */
  --ed-ink:#14202E;          /* headings and body (15.6:1 on ivory) */
  --ed-ink-2:#2B3542;        /* long body text (12.6:1 on ivory) */
  --ed-mute:#4B5563;         /* secondary text (7.2:1 on ivory) */
  --ed-night:#14202E;        /* the one dark band: the footer; device bezels */
  /* orange: the accent, and the button */
  --ed-orange:#F26A1B;       /* brand accent: labels' rule, icons' detail, one highlight; never large areas, never small text */
  --ed-btn:#C94F0D;          /* the button: white words 4.56:1 (AA); owner decision 12 Oct 2026 */
  --ed-btn-hover:#B8470B;
  --ed-orange-600:#C24E0E;   /* orange headline words on ivory (4.6:1) */
  --ed-orange-dk:#A9440C;    /* small orange type on ivory (5.6:1) */
  --ed-orange-50:#FCEADB;    /* the warm tint, sparingly */
  /* green: natural accent for "included" marks and the guarantee, sparingly */
  --ed-green:#2E6B4E;        /* 6.1:1 on ivory */
  --ed-green-50:#E6EFE9;
  /* lines and depth */
  --ed-line:#E7DFD2;         /* hairline */
  --ed-line-2:#D5CABA;
  --ed-shadow:0 10px 30px rgba(20,32,46,.08);
  /* kept for components that still sit on the footer's ink */
  --ed-navy-50:#F3EDE2;      /* the quiet tint is now linen */
  --ed-on-night:#DCE2E8;
  --ed-on-night-2:#A3B0BC;   /* 6.9:1 on ink */

  /* type: Manrope, and nothing else */
  --ed-sans:'Manrope','Segoe UI',Helvetica,Arial,sans-serif;
  --ed-h1:clamp(2.75rem,5.2vw,4.25rem);
  --ed-h2:clamp(2rem,3.4vw,2.75rem);
  --ed-h3:clamp(1.25rem,1.1rem + .5vw,1.5rem);
  --ed-body:1.125rem;        /* 18px */

  /* space: one scale, used for every gap */
  --ed-1:4px;--ed-2:8px;--ed-3:12px;--ed-4:16px;--ed-5:24px;--ed-6:32px;--ed-7:48px;--ed-8:64px;--ed-9:96px;
  --ed-band:clamp(64px,8vw,112px);    /* sections 96-120px apart on desktop */

  /* shape: refined */
  --ed-r-sm:10px;            /* buttons, small tiles */
  --ed-r:12px;               /* photographs, cards, panels */
  --ed-r-lg:16px;            /* the largest surfaces */
  --ed-pill:10px;            /* no pills: every former pill is a 10px rounded rectangle */

  /* grid: 1200px content, 24px gutters */
  --ed-w:1200px;
  --ed-gut:clamp(20px,4vw,24px);

  --ed-ease:cubic-bezier(.2,.7,.2,1);
}
/* The creative lead's Figma variables (file BEsfPXqoj97HDEPof0zAbk, page "Foundations": Primitives / Color / Spacing),
   under the names their WEB code syntax gives. The homepage is built on these; the --ed-* names above are the same
   system for the components that predate them. */
:root{
  --ps-bg:#FBF8F2;--ps-band:#F3EDE2;--ps-surface:#FFFFFF;--ps-footer:#14202E;
  --ps-ink:#14202E;--ps-ink-2:#4B5563;--ps-on-dark:#FDFBF7;--ps-on-dark-2:#8A94A1;
  --ps-orange:#F26A1B;--ps-orange-50:#FEF1E8;--ps-green:#2E6B4E;--ps-green-50:#EAF3EE;
  --ps-btn:#C94F0D;--ps-btn-hover:#B8470B;--ps-line:#E7DFD2;
  --spacing-xs:4px;--spacing-sm:8px;--spacing-md:16px;--spacing-lg:24px;--spacing-xl:32px;
  --spacing-2xl:48px;--spacing-3xl:64px;--spacing-4xl:96px;--spacing-5xl:112px;
  --radius-sm:6px;--radius-md:10px;--radius-lg:16px;--radius-xl:20px;
}
body.ed,body.ed-shell{background:var(--ed-ivory)}

/* ------------------------------------------------------------ atoms */
.ed-wrap{max-width:calc(var(--ed-w) + 2*var(--ed-gut));margin-inline:auto;padding-inline:var(--ed-gut)}

.ed-i{display:block;flex:none}
.ed-i-accent{stroke:var(--ed-orange)}

/* The small label: 13px capitals in the accent, no box. */
.ed-label{
  display:inline-flex;align-items:center;gap:8px;margin:0;
  font-family:var(--ed-sans);font-size:13px;font-weight:600;letter-spacing:.08em;line-height:1.3;text-transform:uppercase;color:var(--ed-orange-dk);
}

.ed-h2{
  margin:0;font-family:var(--ed-sans);font-size:var(--ed-h2);font-weight:700;line-height:1.1;letter-spacing:-.02em;color:var(--ed-ink);text-wrap:balance;
}
.ed-h2 em{font-style:normal;color:var(--ed-orange-600)}
.ed-h3{margin:0;font-family:var(--ed-sans);font-size:var(--ed-h3);font-weight:700;line-height:1.2;letter-spacing:-.015em;color:var(--ed-ink)}
.ed-lede{margin:0;font-family:var(--ed-sans);font-size:var(--ed-body);font-weight:400;line-height:1.6;color:var(--ed-ink-2);max-width:62ch}
.ed-num{font-weight:700;font-variant-numeric:tabular-nums}

/* The primary button: refined, 48px, 10px radius, button orange with white words. One primary per view.
   The arrow moves, the button does not. */
.ed-btn{
  display:inline-flex;align-items:center;justify-content:center;gap:10px;
  min-height:48px;padding:0 22px;border:0;border-radius:var(--ed-pill);
  background:var(--ed-btn);color:#fff;
  font-family:var(--ed-sans);font-size:16px;font-weight:600;letter-spacing:-.005em;line-height:1;text-decoration:none;white-space:nowrap;
  cursor:pointer;transition:background-color .2s ease,color .2s ease,box-shadow .2s ease;
}
.ed-btn .ed-i{transition:transform .28s var(--ed-ease)}
.ed-btn:hover{background:var(--ed-btn-hover);color:#fff}
.ed-btn:hover .ed-i{transform:translateX(4px)}
.ed-btn--lg{min-height:52px;padding:0 26px;font-size:16.5px}
/* The secondary button: an ink outline on ivory. */
.ed-btn--line{background:transparent;color:var(--ed-ink);box-shadow:inset 0 0 0 1.5px var(--ed-ink)}
.ed-btn--line:hover{background:var(--ed-ink);color:#fff}
.ed-btn--navy{background:var(--ed-ink);color:#fff}
.ed-btn--navy:hover{background:#26364A;color:#fff}
.ed-btn--line-light{background:transparent;color:#fff;box-shadow:inset 0 0 0 1.5px rgba(255,255,255,.7)}
.ed-btn--line-light:hover{background:#fff;color:var(--ed-ink)}

/* The tertiary route: a text link with an arrow. */
.ed-link{
  display:inline-flex;align-items:center;gap:8px;min-height:44px;
  font-family:var(--ed-sans);font-size:16px;font-weight:600;letter-spacing:-.005em;line-height:1.2;color:var(--ed-ink);
  text-decoration:underline;text-decoration-color:var(--ed-orange);text-decoration-thickness:1.5px;text-underline-offset:6px;
}
.ed-link .ed-i{transition:transform .28s var(--ed-ease)}
.ed-link:hover{color:var(--ed-orange-dk)}
.ed-link:hover .ed-i{transform:translateX(4px)}

.ed-actions{display:flex;flex-wrap:wrap;align-items:center;gap:var(--ed-3) var(--ed-4)}

/* Focus: designed, not default. Navy ring on light, white on dark, always clear of the control. */
.ed-btn:focus-visible,.ed-link:focus-visible,
body.ed-shell .psh a:focus-visible,body.ed-shell .psh button:focus-visible,
body.ed-shell .psh-util a:focus-visible,
body.ed-shell .psm a:focus-visible,body.ed-shell .psm button:focus-visible{outline:3px solid var(--ed-ink);outline-offset:3px;border-radius:var(--ed-pill)}
.ed-foot a:focus-visible,.ed-foot button:focus-visible,
.ed-on-navy .ed-btn:focus-visible,.ed-on-navy .ed-link:focus-visible{outline:3px solid #fff;outline-offset:3px;border-radius:var(--ed-pill)}

/* A photograph fills the frame its parent gives it, cropped about its own focal point (set per photograph, and again for phones). */
.ed-photo{display:block}
.ed-photo img{display:block;width:100%;height:100%;object-fit:cover;object-position:var(--ed-focus,50% 50%)}
@media (max-width:760px){.ed-photo img{object-position:var(--ed-focus-phone,var(--ed-focus,50% 50%))}}

/* ============================================================
   HEADER (markup: template-parts/layout/site-header*.php)
   ============================================================ */
body.ed-shell .psh-util{background:var(--ed-white);border-bottom:1px solid var(--ed-line)}
body.ed-shell .psh-util-call,body.ed-shell .psh-util-link{font-family:var(--ed-sans);font-size:13px;font-weight:600;letter-spacing:0;color:var(--ed-ink-2)}
body.ed-shell .psh-util-call:hover,body.ed-shell .psh-util-link:hover{background:transparent;color:var(--ed-ink);text-decoration:underline;text-underline-offset:5px;text-decoration-color:var(--ed-orange)}
body.ed-shell .psh-util-call .ed-i{color:var(--ed-orange-dk)}

body.ed-shell .psh{background:rgba(251,248,242,.94);border-bottom:1px solid var(--ed-line);backdrop-filter:saturate(1.2) blur(8px)}
body.ed-shell .psh--pk .psh-bar{min-height:76px}
body.ed-shell .psh--pk .psh-get{gap:8px}
body.ed-shell .psh--pk .psh-login-link .ed-i{display:none}
body.ed-shell .psh-get-phone{display:none}
body.ed-shell .psh.stuck{border-bottom-color:var(--ed-line);background:rgba(251,248,242,.97)}
body.ed-shell .psh-bar{max-width:calc(var(--ed-w) + 2*var(--ed-gut))}
body.ed .psh .wrap,body.ed .psh-util .wrap{max-width:calc(var(--ed-w) + 2*var(--ed-gut));padding-inline:var(--ed-gut)}

body.ed-shell .psh-trigger,body.ed-shell .psh-link{
  font-family:var(--ed-sans);font-size:15px;font-weight:600;letter-spacing:-.005em;color:var(--ed-ink);border-radius:8px;background:transparent;
}
body.ed-shell .psh-trigger:hover,body.ed-shell .psh-link:hover,
body.ed-shell .psh-trigger[aria-expanded="true"]{background:var(--ed-linen);color:var(--ed-ink)}
body.ed-shell .psh-chev{color:var(--ed-ink)}
body.ed-shell .psh-trigger[aria-expanded="true"] .psh-chev{color:var(--ed-orange-dk)}
/* the current page: an orange bar under the word, as well as aria-current */
body.ed-shell .psh-trigger.is-current::after,body.ed-shell .psh-link[aria-current="page"]::after{left:12px;right:12px;bottom:4px;height:3px;border-radius:3px;background:var(--ed-orange)}

body.ed-shell .psh-actions{gap:var(--ed-2)}
body.ed-shell .psh-get{min-height:44px;padding:0 22px;font-size:15px}
body.ed-shell .psh-login-link{display:inline-flex;align-items:center;gap:7px;min-height:44px;padding:0 12px;border-radius:8px;font-family:var(--ed-sans);font-size:14.5px;font-weight:600;color:var(--ed-ink-2);white-space:nowrap}
body.ed-shell .psh-login-link:hover{background:var(--ed-linen);color:var(--ed-ink)}
/* the earlier header's text link beside its button (kept for hosts that show the live offer) */
body.ed-shell .psh-see{font-size:15px;min-height:44px}
body.ed-shell .psh-see-short{display:none}
@media (min-width:1100px) and (max-width:1299px){
  body.ed-shell .psh-see-long{display:none}
  body.ed-shell .psh-see-short{display:inline}
  /* seven destinations, the login and the button share about 1,000px here */
  body.ed-shell .psh--pk .psh-bar{gap:10px}
  body.ed-shell .psh--pk .psh-trigger,body.ed-shell .psh--pk .psh-link{padding:0 8px;font-size:14px}
  body.ed-shell .psh--pk .psh-login-link{padding:0 8px;font-size:14px}
  body.ed-shell .psh--pk .psh-get{padding:0 16px;font-size:14.5px}
  body.ed-shell .psh--pk .psh-logo img{height:28px}
}

/* The dropdown: a white rounded panel. */
body.ed-shell .psh-panel{border-radius:var(--ed-r);border:1px solid var(--ed-line);background:var(--ed-white);box-shadow:var(--ed-shadow),0 2px 6px rgba(20,32,46,.05)}
body.ed-shell .psh-panel::before{display:none}
body.ed-shell .psh-group-h{font-family:var(--ed-sans);letter-spacing:.08em;font-size:12px;color:var(--ed-mute)}
body.ed-shell .psh-group a{font-family:var(--ed-sans);color:var(--ed-ink)}
body.ed-shell .psh-group a:hover,body.ed-shell .psh-group a:focus-visible{color:var(--ed-orange-dk)}
body.ed-shell .psh-ind-all{color:var(--ed-ink);font-family:var(--ed-sans)}

/* Websites: the two websites, Compare and pricing, the Client Dashboard; each with one quiet line. */
body.ed-shell .psh-panel-websites{width:min(400px,calc(100vw - 32px))}
body.ed-shell .psh-panel-websites .psh-panel-in{padding:8px}
.psh-pk{list-style:none;margin:0;padding:0;display:grid;gap:2px}
.psh-pk-row{display:grid;grid-template-columns:1fr auto;column-gap:var(--ed-4);row-gap:2px;align-items:center;padding:12px 14px;border-radius:10px;color:var(--ed-ink);text-decoration:none;transition:background-color .16s ease}
.psh-pk-row:hover,.psh-pk-row:focus-visible{background:var(--ed-linen);color:var(--ed-ink)}
.psh-pk-name{font-family:var(--ed-sans);font-size:16px;font-weight:600;letter-spacing:-.01em;line-height:1.25}
.psh-pk-line{grid-column:1;font-size:13.5px;line-height:1.4;color:var(--ed-ink-2)}
.psh-pk-price{grid-column:2;grid-row:1/span 2;font-family:var(--ed-sans);font-size:14px;font-weight:800;white-space:nowrap;color:var(--ed-ink)}
.psh-pk-price small{display:block;font-size:11.5px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:var(--ed-mute)}

/* ---- phone and tablet bar */
@media (max-width:1099px){
  body.ed-shell .psh-logo img{height:26px}
  body.ed-shell .psh-mob{gap:6px}
  body.ed-shell .psh-free{min-height:40px;padding:0 15px;border-radius:var(--ed-pill);background:var(--ed-btn);color:#fff;font-family:var(--ed-sans);font-size:14.5px;font-weight:600;letter-spacing:0;gap:0}
  body.ed-shell .psh-free-short{display:none}
  body.ed-shell .psh-menu{min-height:44px;padding:0 4px 0 10px;border:0;border-radius:var(--ed-pill);background:transparent;font-family:var(--ed-sans);color:var(--ed-ink)}
  body.ed-shell .psh-menu:active{background:transparent;opacity:.7}
  body.ed-shell .psh-menu-ico{width:22px;gap:5px}
  body.ed-shell .psh-menu-ico i{height:2px;border-radius:2px}
  body.ed-shell .psh-menu-ico i:nth-child(3){width:14px}
}
/* Phones: the mark and the menu only. The page's own button is the first screen's action, and the buy bar takes over
   once it has scrolled away. Tablets keep the bar's button: they have the room. */
@media (max-width:760px){
  body.ed-shell .psh-free{display:none}
  /* The frame's phone header: the mark, Get Started, the menu. */
  body.ed-shell .psh--pk .psh-get-phone{display:inline-flex;min-height:38px;padding:0 13px;font-size:14px;border-radius:8px}
  body.ed-shell .psh--pk .psh-bar{min-height:62px}
}
/* Under 460px the word "Menu" is kept for screen readers only; the three bars carry it. */
@media (max-width:459px){
  body.ed-shell .psh-menu-t{position:absolute;width:1px;height:1px;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}
  body.ed-shell .psh-menu{padding:0 2px 0 8px}
}

/* ============================================================
   PHONE MENU (markup: template-parts/layout/mobile-nav*.php)
   A full-height ivory sheet: clear Manrope links, the Websites group open,
   and Get Started at the bottom.
   ============================================================ */
body.ed-shell .psm{background:var(--ed-ivory)}
body.ed-shell .psm-head{background:var(--ed-ivory);border-bottom-color:var(--ed-line)}
body.ed-shell .psm-logo img{height:26px}
body.ed-shell .psm-close{border:0;background:var(--ed-linen);border-radius:var(--ed-pill);padding:0 16px 0 14px;font-family:var(--ed-sans);font-size:15px;font-weight:600;color:var(--ed-ink)}
body.ed-shell .psm-scroll{padding-top:var(--ed-3)}
body.ed-shell .psm-lines > li{border-bottom-color:var(--ed-line)}
body.ed-shell .psm-line{min-height:56px;font-family:var(--ed-sans);font-size:21px;font-weight:700;letter-spacing:-.02em;line-height:1.15;color:var(--ed-ink)}
body.ed-shell .psm-lines--quiet{margin-top:var(--ed-4)}
body.ed-shell .psm-lines--quiet .psm-line{min-height:46px;font-size:16px;font-weight:700;letter-spacing:-.01em;color:var(--ed-ink-2)}
body.ed-shell .psm .psm-line[aria-current="page"]{font-weight:800;padding-left:18px}
body.ed-shell .psm .psm-line[aria-current="page"]::before{top:18px;bottom:18px;width:4px;border-radius:4px;background:var(--ed-orange)}
body.ed-shell .psm-sub{border-left:0;margin-left:0;padding:0 0 var(--ed-4)}
body.ed-shell .psm-sub a{font-family:var(--ed-sans);font-size:17px;font-weight:600;color:var(--ed-ink)}
body.ed-shell .psm-sub-all i{display:inline-block;text-decoration:none}
body.ed-shell .psm-sub-all a{color:var(--ed-ink);text-decoration:underline;text-decoration-color:var(--ed-orange);text-decoration-thickness:2px;text-underline-offset:6px}
/* the Websites group inside the menu: four quiet rows on white */
body.ed-shell .psm-sub--pk{display:grid;gap:6px}
body.ed-shell .psm-sub--pk[hidden]{display:none}
body.ed-shell .psm-sub--pk .psh-pk-row{display:grid;min-height:0;padding:12px 14px;background:var(--ed-white);box-shadow:0 0 0 1px var(--ed-line);font-size:inherit;font-weight:inherit}
body.ed-shell .psm-sub--pk .psh-pk-name{font-size:17px}

body.ed-shell .psm-foot{background:var(--ed-ivory);border-top-color:var(--ed-line);gap:var(--ed-1);padding-top:var(--ed-4)}
body.ed-shell .psm-get{min-height:52px;font-size:16.5px;width:100%}
body.ed-shell .psm-see{justify-content:center;min-height:48px}
body.ed-shell .psm-pair{gap:0;margin-top:var(--ed-1)}
body.ed-shell .psm-call,body.ed-shell .psm-login{border:0;border-radius:var(--ed-pill);background:transparent;min-height:48px;font-family:var(--ed-sans);font-size:15px;font-weight:600;color:var(--ed-ink-2)}
body.ed-shell .psm-call{justify-content:flex-start;padding-left:0}
body.ed-shell .psm-login{justify-content:flex-end;padding-right:0}
body.ed-shell .psm-call .ed-i{color:var(--ed-orange-dk)}
@media (max-height:520px){
  body.ed-shell .psm-line{min-height:46px;font-size:20px}
  body.ed-shell .psm-foot{grid-template-columns:1fr 1fr;align-items:center}
  body.ed-shell .psm-pair{margin-top:0;grid-column:1/-1}
}

/* ============================================================
   CLOSING BAND: a linen panel with the words on one side and a rounded
   photograph of someone at work on the other. The words are never laid over
   the photograph. Linen, not navy: the footer is a page's one dark band.
   ============================================================ */
.ed-closer{padding-block:var(--ed-band);background:var(--ed-ivory)}
.ed-closer-in{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);gap:clamp(24px,4vw,64px);align-items:center;padding:clamp(28px,4.4vw,56px);border-radius:var(--ed-r-lg);background:var(--ed-linen);color:var(--ed-ink);max-width:var(--ed-w);margin-inline:max(var(--ed-gut),calc((100% - var(--ed-w))/2))}
.ed-closer-in.ed-on-navy{color:var(--ed-ink)}
.ed-closer--right .ed-closer-copy{order:2}
.ed-closer-photo{aspect-ratio:4/3;border-radius:var(--ed-r);overflow:hidden;background:var(--ed-line)}
.ed-closer-photo--phone{display:none}
.ed-closer-copy{display:grid;gap:var(--ed-5);justify-items:start}
.ed-closer .ed-h2{color:var(--ed-ink);font-size:clamp(1.9rem,1.2rem + 1.8vw,2.75rem)}
.ed-closer .ed-h2 em{color:var(--ed-orange-600);display:block}
.ed-closer .ed-lede{color:var(--ed-ink-2);max-width:44ch}
.ed-closer .ed-link{color:var(--ed-ink)}
.ed-closer .ed-btn--line-light{color:var(--ed-ink);box-shadow:inset 0 0 0 1.5px var(--ed-ink)}
.ed-closer .ed-btn--line-light:hover{background:var(--ed-ink);color:#fff}
.ed-closer .ed-btn:focus-visible,.ed-closer .ed-link:focus-visible{outline-color:var(--ed-ink)}
.ed-closer-talk{margin:0;font-family:var(--ed-sans);font-size:15px;line-height:1.5;color:var(--ed-ink-2)}
.ed-closer-talk a{font-weight:600;color:var(--ed-ink);text-decoration:underline;text-decoration-color:var(--ed-orange);text-underline-offset:4px;white-space:nowrap}
.ed-closer-talk a:focus-visible{outline:3px solid var(--ed-ink);outline-offset:3px;border-radius:4px}
/* The footer's own copy of the band steps aside when the page brought a closing section. */
main:has(.close) + footer.site .ed-closer,
main:has(.ind-final) + footer.site .ed-closer{display:none}
@media (max-width:860px){
  .ed-closer-in{grid-template-columns:1fr;margin-inline:var(--ed-gut)}
  .ed-closer--right .ed-closer-copy{order:0}
  .ed-closer-photo{order:-1;aspect-ratio:16/10}
  .ed-closer--art .ed-closer-photo{display:none}
  .ed-closer--art .ed-closer-photo--phone{display:block;aspect-ratio:4/5}
  .ed-closer .ed-actions{flex-direction:column;align-items:stretch;width:100%}
  .ed-closer .ed-actions .ed-link{justify-content:center}
}

/* ============================================================
   FOOTER (markup: template-parts/layout/site-footer.php)
   ============================================================ */
footer.site.ed-foot{background:var(--ed-night);color:var(--ed-on-night);font-family:var(--ed-sans);border:0;padding:0;margin:0}
.ed-foot a{color:inherit;text-decoration:none}
.ed-foot-in{max-width:calc(var(--ed-w) + 2*var(--ed-gut));margin-inline:auto;padding:clamp(56px,7vw,96px) var(--ed-gut) var(--ed-6)}
.ed-foot-top{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,3fr);gap:clamp(32px,6vw,96px)}
.ed-foot-brand .logo{display:inline-flex;min-height:44px;align-items:center}
.ed-foot-brand .logo img{height:30px;width:auto;display:block}
.ed-foot-brand > p{margin:var(--ed-4) 0 var(--ed-5);max-width:30ch;font-size:15.5px;line-height:1.55;color:var(--ed-on-night-2)}
.ed-foot ul{list-style:none;margin:0;padding:0}
.ed-foot-contact a{display:inline-flex;align-items:center;gap:10px;min-height:40px;font-size:16px;font-weight:700;color:#fff}
.ed-foot-contact .ed-i{color:var(--ed-orange)}
.ed-foot-social{display:flex;gap:var(--ed-5);margin-top:var(--ed-4)}
.ed-foot-social a{display:inline-flex;align-items:center;gap:8px;min-height:44px;font-size:14px;font-weight:600;color:var(--ed-on-night)}
.ed-foot-groups{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:var(--ed-6)}
.ed-foot-h{margin:0 0 var(--ed-3);font-family:var(--ed-sans);font-size:12.5px;font-weight:600;letter-spacing:.08em;line-height:1.3;text-transform:uppercase;color:var(--ed-on-night-2)}
.ed-foot-h button{all:unset;box-sizing:border-box;display:flex;align-items:center;justify-content:space-between;width:100%;min-height:52px;cursor:pointer;font:inherit;letter-spacing:inherit;text-transform:inherit;color:#fff}
.ed-foot-h button::after{content:"";width:9px;height:9px;border-right:2px solid currentColor;border-bottom:2px solid currentColor;transform:rotate(45deg) translate(-3px,-3px);transition:transform .2s ease}
.ed-foot-h button[aria-expanded="true"]::after{transform:rotate(-135deg) translate(-2px,-2px)}
.ed-foot-g li a,.ed-foot .legal-consent{
  display:inline-flex;align-items:center;gap:8px;min-height:0;padding:7px 0;border:0;background:none;cursor:pointer;
  font-family:var(--ed-sans);font-size:15px;font-weight:500;line-height:1.4;color:var(--ed-on-night);text-align:left;
}
.ed-foot-g li a:hover,.ed-foot .legal-consent:hover,.ed-foot-contact a:hover,.ed-foot-social a:hover{color:#fff;text-decoration:underline;text-decoration-color:var(--ed-orange);text-underline-offset:5px}
/* The footer's one Client login leads its group as a small outlined button (owner, 24 September 2026). */
.ed-foot-g .ed-foot-login a{border:1px solid rgba(255,255,255,.34);border-radius:var(--ed-pill);min-height:40px;padding:0 16px;margin-bottom:8px;font-weight:600;color:#fff}
.ed-foot-g .ed-foot-login a:hover{border-color:#fff;text-decoration:none}
.ed-foot-login .ed-i{color:var(--ed-orange)}
.ed-foot-bottom{display:grid;gap:var(--ed-4);margin-top:clamp(40px,5vw,72px);padding-top:var(--ed-5);border-top:1px solid rgba(255,255,255,.14);font-size:13px;line-height:1.55;color:var(--ed-on-night-2)}
.ed-foot-company{margin:0;max-width:92ch;font-size:13px;line-height:1.55}
.ed-foot-end{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:var(--ed-3) var(--ed-5)}
@media (max-width:980px){
  .ed-foot-top{grid-template-columns:1fr}
}
@media (max-width:720px){
  .ed-foot-groups{grid-template-columns:1fr;gap:0}
  .ed-foot-g{border-top:1px solid rgba(255,255,255,.14)}
  .ed-foot-h:has(button){margin:0}
  .ed-foot-g.is-acc:not(.is-open) > ul{display:none}
  .ed-foot-h:has(button) + ul{padding-bottom:var(--ed-4)}
  .ed-foot-g li a,.ed-foot .legal-consent{min-height:44px;padding:4px 0}
  /* Legal is never collapsed: nobody should have to discover that a heading opens to find the terms. */
  .ed-foot-legal{padding-top:var(--ed-5)}
  .ed-foot-g:not(.is-acc):not(.ed-foot-legal){padding-block:var(--ed-5) var(--ed-3)}
}

/* ============================================================
   PHONE BUY BAR (sales pages; shown by ed.js once the hero's button has gone)
   ============================================================ */
.ed-buy{
  position:fixed;left:0;right:0;bottom:0;z-index:70;
  padding:10px 16px calc(10px + env(safe-area-inset-bottom));
  background:rgba(251,248,242,.97);border-top:1px solid var(--ed-line);
  transform:translateY(102%);transition:transform .32s var(--ed-ease);
}
.ed-buy[hidden]{display:none}
.ed-buy.is-on{transform:none}
.ed-buy-in{display:flex;align-items:center;justify-content:space-between;gap:var(--ed-3)}
.ed-buy-price{margin:0;font-family:var(--ed-sans);line-height:1.25;color:var(--ed-ink)}
.ed-buy-price b{display:block;font-size:15.5px;font-weight:700;letter-spacing:-.01em}
.ed-buy-price span{display:block;font-size:12.5px;color:var(--ed-mute)}
.ed-buy .ed-btn{min-height:46px;padding:0 20px;font-size:15px;flex:none}
.ed-buy-in > .ed-btn:only-child{flex:1}
body.ed-buy-on .btt{opacity:0;visibility:hidden;pointer-events:none}
@media (min-width:761px){.ed-buy{display:none}}

@media (prefers-reduced-motion:reduce){
  .ed-btn,.ed-btn .ed-i,.ed-link,.ed-link .ed-i,.ed-buy,.psh-pk-row{transition:none}
  .ed-btn:hover .ed-i,.ed-link:hover .ed-i{transform:none}
}
