/* AdRestore site 2026: the light marketing pages (round 3 of mockups/2026-10-01-rebrand-light, approved 1 Oct 2026,
   built 2 Oct 2026 by tools/site2026/build.py). One stylesheet for the shared frame (top strip, sticky navy header,
   footer B) and every marketing component. Tokens are the Dashboard B set with the round-3 neutral greys, so these
   pages, the light articles and the client portal are one family. Documented in the mock-up's DESIGN.md.
   Fonts: Plus Jakarta Sans and Roboto from /assets/fonts, Source Serif 4 from the agreements font folder; Outfit (footer
   headings only) from Google Fonts, linked in the page head. Never edit a page's CSS inline: change it here. */

@font-face{font-family:"Plus Jakarta Sans";font-style:normal;font-weight:200 800;font-display:swap;src:url(/assets/fonts/plus-jakarta-sans-var.woff2) format("woff2")}
@font-face{font-family:"Roboto";font-style:normal;font-weight:100 900;font-display:swap;src:url(/assets/fonts/roboto-var.woff2) format("woff2")}
@font-face{font-family:"Source Serif 4";font-style:normal;font-weight:400;font-display:swap;src:url(/wp-content/uploads/ar-agreements/fonts/source-serif-4-400.woff2) format("woff2")}
@font-face{font-family:"Source Serif 4";font-style:italic;font-weight:400;font-display:swap;src:url(/wp-content/uploads/ar-agreements/fonts/source-serif-4-400-italic.woff2) format("woff2")}
@font-face{font-family:"Source Serif 4";font-style:normal;font-weight:600;font-display:swap;src:url(/wp-content/uploads/ar-agreements/fonts/source-serif-4-600.woff2) format("woff2")}

/* ================================================================== 1. tokens */
:root{
 --pb-ground:#F3F4F6;--pb-paper:#FFFFFF;--pb-paper-2:#F8F9FA;--pb-grey-tint:#F1F2F4;
 --pb-ink:#14233A;--pb-navy:#021127;--pb-navy-2:#0C2244;--pb-muted:#56677A;--pb-faint:#66758A;
 --pb-line:#E4E7EB;--pb-line-2:#CDD2D9;--pb-line-3:#8593A6;
 --pb-teal:#59C5AE;--pb-teal-ink:#0B5F52;--pb-teal-tint:#EDF8F5;--pb-teal-edge:#BFE6DC;
 --pb-blue:#1F5AA6;--pb-blue-tint:#EAF2FB;--pb-blue-edge:#BBD3F0;
 --pb-purple:#5B3A8E;--pb-purple-tint:#F3EEFB;--pb-purple-edge:#D5C6EE;
 --pb-amber:#8A5A0B;--pb-amber-bar:#E0A63B;--pb-amber-tint:#FFF6E3;--pb-amber-edge:#F1D9A3;
 --pb-red:#A32D22;--pb-red-pop:#D93025;--pb-red-tint:#FDEDEB;--pb-red-edge:#F3C2BC;
 --pb-green:#1E8E5A;--pb-green-tint:#E8F5EE;--pb-green-edge:#BFE3CF;
 --mint:#71D7BF;--mint-hi:#8FF0D8;
 --pb-serif:"Source Serif 4",Georgia,"Times New Roman",serif;
 --pb-head:"Plus Jakarta Sans",system-ui,-apple-system,"Segoe UI",Arial,sans-serif;
 --pb-body:"Roboto",system-ui,-apple-system,"Segoe UI",Arial,sans-serif;
 --pb-r-sheet:10px;--pb-r-ctl:8px;
 --pb-shadow:0 1px 2px rgba(2,17,39,.04),0 12px 32px -24px rgba(2,17,39,.25);
 --pb-shadow-lift:0 1px 2px rgba(2,17,39,.04),0 22px 44px -22px rgba(2,17,39,.32);
 --pb-shadow-frame:0 2px 4px rgba(2,17,39,.05),0 28px 56px -28px rgba(2,17,39,.35);
 --m-max:1180px;--m-gutter:22px;--m-sec:72px;--m-ease:cubic-bezier(.2,.7,.2,1);
}

/* ================================================================== 2. base */
html{background:var(--pb-paper);scroll-behavior:smooth;scroll-padding-top:96px;-webkit-text-size-adjust:100%;text-size-adjust:100%}
body.ar26{margin:0;background:var(--pb-paper);color:var(--pb-ink);font-family:var(--pb-body);font-size:16.5px;line-height:1.65;-webkit-font-smoothing:antialiased;overflow-x:clip}
.ar26 *,.ar26 *::before,.ar26 *::after{box-sizing:border-box}
.ar26 img{max-width:100%;height:auto}
.ar26 a{color:var(--pb-blue);text-decoration:underline;text-decoration-color:rgba(31,90,166,.35);text-underline-offset:.16em}
.ar26 a:hover{color:var(--pb-navy);text-decoration-color:var(--pb-navy)}
.ar26 h1,.ar26 h2,.ar26 h3,.ar26 h4{margin:0;color:var(--pb-navy);text-wrap:balance}
.ar26 p{margin:0 0 1em}
.ar26 strong{color:var(--pb-navy);font-weight:600}
.ar26 :focus-visible{outline:3px solid var(--pb-teal-ink);outline-offset:2px;border-radius:6px}
.sr{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}
.ar26-skip{position:absolute;left:12px;top:-60px;z-index:100;padding:10px 16px;border-radius:8px;background:#fff;color:var(--pb-navy)!important;font-family:var(--pb-head);font-weight:700;text-decoration:none!important;box-shadow:var(--pb-shadow-lift)}
.ar26-skip:focus{top:12px}
.shell{width:100%;max-width:var(--m-max);margin:0 auto;padding:0 var(--m-gutter)}
.i{display:inline-block;flex:0 0 auto;width:1em;height:1em;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round;vertical-align:-.125em}
.fa{display:inline-block;width:1em;height:1em;vertical-align:-.125em}
.muted{color:var(--pb-muted)}
.small{font-size:14px;line-height:1.55;color:var(--pb-muted)}
.micro{font-size:13px;line-height:1.55;color:var(--pb-muted)}

/* ================================================================== 3. type */
.m-eyebrow{display:block;font-family:var(--pb-body);font-size:11.5px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--pb-muted);margin:0 0 10px}
.m-h1{font-family:var(--pb-serif);font-weight:600;font-size:clamp(32px,4.1vw,48px);line-height:1.12;letter-spacing:0;margin:0 0 18px!important}
.m-h2{font-family:var(--pb-serif);font-weight:600;font-size:clamp(26px,3vw,34px);line-height:1.18;margin:0 0 12px!important}
.m-h3{font-family:var(--pb-head);font-weight:700;font-size:18px;line-height:1.35;letter-spacing:-.01em;margin:0 0 6px}
.m-h4{font-family:var(--pb-head);font-weight:700;font-size:16px;line-height:1.4;margin:0 0 4px}
.m-lead{font-size:19px;line-height:1.6;color:var(--pb-ink);margin:0 0 22px;max-width:60ch}
.m-p{color:var(--pb-ink);max-width:68ch}
.m-p--muted{color:var(--pb-muted)}
.m-sechead{max-width:760px;margin:0 0 34px}
.m-sechead p{font-size:17px;color:var(--pb-muted);margin:0}

/* ================================================================== 4. buttons, pills, chips, sheets, notes, forms */
.ar26 .pb-btn,.ar26 .pb-btn:visited{-webkit-appearance:none;appearance:none;display:inline-flex;align-items:center;justify-content:center;gap:9px;min-height:46px;padding:10px 20px;border-radius:var(--pb-r-ctl);border:1px solid var(--pb-navy);background:var(--pb-navy);color:#fff;font-family:var(--pb-head);font-weight:700;font-size:15px;line-height:1.25;text-align:center;text-decoration:none;white-space:nowrap;cursor:pointer;transition:background-color .15s ease,border-color .15s ease,color .15s ease,transform .15s var(--m-ease)}
.pb-btn svg{width:17px;height:17px}
.ar26 .pb-btn:hover{background:var(--pb-navy-2);border-color:var(--pb-navy-2);color:#fff}
.ar26 .pb-btn--ghost,.ar26 .pb-btn--ghost:visited{background:#fff;color:var(--pb-navy)}
.ar26 .pb-btn--ghost:hover{background:var(--pb-grey-tint);border-color:var(--pb-navy);color:var(--pb-navy)}
.ar26 .pb-btn--onnavy,.ar26 .pb-btn--onnavy:visited{background:#fff;color:var(--pb-navy);border-color:#fff}
.ar26 .pb-btn--onnavy:hover{background:var(--mint-hi);border-color:var(--mint-hi);color:var(--pb-navy)}
.ar26 .pb-btn[disabled]{opacity:.6;cursor:progress}
.ar26 .pb-btn--lg{min-height:52px;padding:12px 24px;font-size:16px}
.ar26 .pb-btn--sm{min-height:38px;padding:6px 14px;font-size:14px;gap:7px}
.pb-btn--sm svg{width:15px;height:15px}
.ar26 .pb-btn--block{width:100%}
.pb-btnrow{display:flex;flex-wrap:wrap;gap:12px;margin:0;align-items:center}
.pb-btnrow .pb-aside{font-size:14.5px;color:var(--pb-muted)}
.pb-pill{display:inline-flex;align-items:center;gap:6px;padding:3px 11px;border-radius:999px;border:1px solid var(--pb-line-2);font-size:13px;font-weight:500;color:var(--pb-muted);background:#fff;white-space:nowrap;line-height:1.5}
.pb-pill--teal{border-color:var(--pb-teal-edge);background:var(--pb-teal-tint);color:var(--pb-teal-ink)}
.pb-pill--amber{border-color:var(--pb-amber-edge);background:var(--pb-amber-tint);color:var(--pb-amber)}
.pb-pill--purple{border-color:var(--pb-purple-edge);background:var(--pb-purple-tint);color:var(--pb-purple)}
.pb-pill--navy{border-color:var(--pb-navy);background:var(--pb-navy);color:#fff}
/* 4 Oct 2026: a settled outcome in Google's own word (reinstated, approved, verified, lifted) is green, the same green
   as a completed step; red stays for suspensions and problems, amber for a case still in progress */
.pb-pill--green{border-color:var(--pb-green-edge);background:var(--pb-green-tint);color:#176B45;font-weight:600}
.pb-pill--green svg{width:13px;height:13px;stroke-width:2.4}
.pb-pill--dot::before{content:"";width:7px;height:7px;border-radius:50%;background:currentColor}
.pb-chip{display:inline-flex;align-items:center;justify-content:center;flex:0 0 auto;width:40px;height:40px;border-radius:9px;background:var(--pb-grey-tint);color:var(--pb-navy);transition:transform .18s var(--m-ease),background-color .18s}
.pb-chip svg{width:20px;height:20px}
.pb-chip--teal{background:var(--pb-teal-tint);color:var(--pb-teal-ink)}
.pb-chip--red{background:var(--pb-red-tint);color:var(--pb-red)}
.pb-chip--navy{background:var(--pb-navy);color:#fff}
.pb-chip--sm{width:32px;height:32px;border-radius:8px}
.pb-chip--sm svg{width:16px;height:16px}
.pb-chip--lg{width:52px;height:52px;border-radius:12px}
.pb-chip--lg svg{width:26px;height:26px}
.pb-sheet{background:var(--pb-paper);border:1px solid var(--pb-line);border-radius:var(--pb-r-sheet);box-shadow:var(--pb-shadow)}
.pb-sheet__h{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;padding:15px 22px;border-bottom:1px solid var(--pb-line)}
.pb-sheet__h h2,.pb-sheet__h h3{font-family:var(--pb-serif);font-weight:600;font-size:20px;line-height:1.25;margin:0;display:flex;align-items:center;gap:10px}
.pb-sheet__h svg{color:var(--pb-muted)}
.pb-sheet__b{padding:20px 22px}
.pb-sheet__f{padding:14px 22px;border-top:1px solid var(--pb-line);background:var(--pb-paper-2);border-radius:0 0 var(--pb-r-sheet) var(--pb-r-sheet);font-size:14px;color:var(--pb-muted)}
.pb-note{border-radius:var(--pb-r-ctl);padding:12px 16px;font-size:14.5px;line-height:1.55;background:var(--pb-grey-tint);border:1px solid var(--pb-line);color:var(--pb-ink)}
.pb-note--info{background:var(--pb-paper-2);border-color:var(--pb-line-2)}
.pb-kv{display:grid;grid-template-columns:150px minmax(0,1fr);gap:9px 16px;margin:0;font-size:15px}
.pb-kv dt{color:var(--pb-muted)}
.pb-kv dd{margin:0;overflow-wrap:anywhere;color:var(--pb-ink)}
.pb-form{display:grid;gap:16px;margin:0}
.pb-form--2{grid-template-columns:repeat(2,minmax(0,1fr))}
.pb-form--2 .span2{grid-column:1/-1}
.pb-field{display:grid;gap:6px;min-width:0;align-content:start;margin:0;padding:0;border:0}
.pb-field .pb-input,.pb-field .pb-select{height:46px}
.pb-label{font-family:var(--pb-head);font-size:14.5px;font-weight:600;color:var(--pb-navy);padding:0}
.pb-label .opt{font-family:var(--pb-body);font-weight:400;color:var(--pb-muted)}
.pb-input,.pb-select,.pb-textarea{-webkit-appearance:none;appearance:none;width:100%;min-height:46px;padding:10px 14px;border:1px solid var(--pb-line-3);border-radius:var(--pb-r-ctl);background:#fff;color:var(--pb-ink);font-family:var(--pb-body);font-size:16px;line-height:1.4;margin:0}
.pb-select{padding-right:40px;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%2314233A' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 12px center;background-size:18px}
.pb-textarea{min-height:120px;resize:vertical}
.pb-input::placeholder,.pb-textarea::placeholder{color:var(--pb-faint)}
.pb-input:focus,.pb-select:focus,.pb-textarea:focus{outline:none;border-color:var(--pb-navy);box-shadow:0 0 0 3px rgba(89,197,174,.45)}
.pb-hint{font-size:13.5px;line-height:1.5;color:var(--pb-muted)}
.pb-check{display:flex;align-items:flex-start;gap:10px;font-size:14.5px;line-height:1.55;color:var(--pb-ink)}
.pb-check input{flex:0 0 auto;width:18px;height:18px;margin:3px 0 0;accent-color:var(--pb-navy)}
.pb-radios{display:flex;flex-wrap:wrap;gap:8px 18px}
.pb-radios label{display:inline-flex;align-items:center;gap:8px;min-height:40px;font-size:15px;color:var(--pb-ink);cursor:pointer}
.pb-radios input{width:18px;height:18px;margin:0;accent-color:var(--pb-navy)}

/* ================================================================== 5. the site header: navy, the brand edge; sticky and compact once scrolled */
.site-top *,.site-top *::before,.site-top *::after,.site-head *,.site-head *::before,.site-head *::after,.site-foot *,.site-foot *::before,.site-foot *::after{box-sizing:border-box}
.site-top :focus-visible,.site-head :focus-visible,.site-foot :focus-visible{outline:3px solid var(--mint-hi);outline-offset:2px;border-radius:6px}
.site-top{background:#010D1F;color:#C5CFDE;font-size:13.5px}
.site-top .shell{display:flex;align-items:center;gap:14px;min-height:38px}
.site-top__tag{display:inline-flex;align-items:center;gap:8px;font-family:var(--pb-head);font-weight:600;font-size:13px;color:#E6ECF4;white-space:nowrap;min-width:0;overflow:hidden;text-overflow:ellipsis}
.site-top__tag svg{width:15px;height:15px;color:var(--mint);flex:0 0 auto}
.site-top__links{margin-left:auto;display:flex;gap:2px}
.site-top .site-top__links a{color:#C5CFDE;text-decoration:none;padding:6px 9px;border-radius:6px;font-family:var(--pb-head);font-weight:500;font-size:13px;white-space:nowrap}
.site-top .site-top__links a:hover,.site-top .site-top__links a[aria-current]{color:#fff;text-decoration:underline;text-underline-offset:.2em;text-decoration-color:rgba(255,255,255,.5)}
.site-top__hours{color:#9AA7BA;white-space:nowrap;padding-left:10px;border-left:1px solid rgba(255,255,255,.14)}
.site-top .site-top__phone{display:inline-flex;align-items:center;gap:7px;color:#fff;text-decoration:none;font-family:var(--pb-head);font-weight:700;font-size:14px;white-space:nowrap}
.site-top__phone svg{width:15px;height:15px;color:var(--mint)}
.site-top .site-top__phone:hover{color:var(--mint-hi)}
.site-head{background:#021127;border-bottom:1px solid rgba(255,255,255,.06);color:#fff;position:sticky;top:0;z-index:50;box-shadow:0 0 0 rgba(0,0,0,0);transition:box-shadow .2s}
.site-head .shell{display:flex;flex-wrap:nowrap;align-items:center;gap:14px;min-height:80px;padding-top:10px;padding-bottom:10px;transition:min-height .2s var(--m-ease),padding .2s var(--m-ease)}
.site-logo{display:inline-flex;align-items:center;flex:0 0 auto}
.site-logo img{display:block;width:204px;height:auto;transition:width .2s var(--m-ease)}
.is-scrolled .site-head{box-shadow:0 10px 30px -18px rgba(2,17,39,.6)}
.is-scrolled .site-head .shell{min-height:60px;padding-top:5px;padding-bottom:5px}
.is-scrolled .site-logo img{width:172px}
.site-nav{display:flex;align-items:center;gap:4px;margin:0 0 0 10px;padding:0;list-style:none;font-family:var(--pb-head);font-size:15.5px;font-weight:500;min-width:0}
.site-nav li{position:relative;margin:0}
.site-head .site-nav a{position:relative;display:inline-flex;align-items:center;gap:6px;padding:10px 12px;border-radius:0;color:rgba(255,255,255,.82);text-decoration:none;white-space:nowrap;line-height:1;transition:color .15s}
.site-nav a::after{content:"";position:absolute;left:12px;right:12px;bottom:4px;height:2px;border-radius:2px;background:var(--mint);opacity:0;transform:scaleX(.6);transition:opacity .18s,transform .18s var(--m-ease)}
.site-head .site-nav a:hover{color:#fff}
.site-nav a:hover::after{opacity:.55;transform:none}
.site-head .site-nav a[aria-current]{color:#fff}
.site-nav a[aria-current]::after{opacity:1;transform:none}
.site-nav a svg{width:14px;height:14px;opacity:.7}
.site-nav .sub{position:absolute;left:0;top:100%;z-index:20;min-width:290px;margin:4px 0 0;padding:6px;list-style:none;background:#fff;border:1px solid var(--pb-line-2);border-radius:10px;box-shadow:0 18px 44px -18px rgba(2,17,39,.5);opacity:0;visibility:hidden;transform:translateY(4px);transition:opacity .15s,transform .15s,visibility 0s .15s}
.site-nav li:hover > .sub,.site-nav li:focus-within > .sub{opacity:1;visibility:visible;transform:none;transition-delay:0s}
.site-head .site-nav .sub a{display:flex;justify-content:space-between;gap:12px;padding:9px 12px;color:var(--pb-navy);font-weight:600;font-size:14.5px;border-radius:7px;white-space:nowrap}
.site-nav .sub a::after{content:none}
.site-head .site-nav .sub a:hover{background:var(--pb-grey-tint);color:var(--pb-navy)}
.site-nav .sub a .price{color:var(--pb-muted);font-weight:500;font-size:13.5px}
.site-nav .sub .all{border-top:1px solid var(--pb-line);margin-top:4px;padding-top:4px}
.site-right{margin-left:auto;display:flex;align-items:center;gap:6px;flex:0 0 auto}
.site-head .site-phone{display:none;align-items:center;justify-content:center;width:44px;height:44px;border-radius:10px;color:#fff}
.site-phone svg{width:22px;height:22px;color:var(--mint)}
.site-head .site-signin{display:inline-flex;align-items:center;min-height:40px;padding:8px 10px;font-family:var(--pb-head);font-size:15px;font-weight:500;color:rgba(255,255,255,.88);text-decoration:none;white-space:nowrap;text-underline-offset:.3em}
.site-head .site-signin:hover,.site-head .site-signin[aria-current]{color:#fff;text-decoration:underline;text-decoration-color:rgba(255,255,255,.5)}
.site-sep{display:block;width:1px;height:22px;background:rgba(255,255,255,.28);margin:0 4px;flex:0 0 auto}
.site-head .site-signup{display:inline-flex;align-items:center;min-height:40px;padding:7px 18px;border-radius:999px;border:1px solid #fff;background:#fff;font-family:var(--pb-head);font-size:15px;font-weight:700;color:var(--pb-navy);text-decoration:none;white-space:nowrap;transition:background-color .15s,border-color .15s}
.site-head .site-signup:hover{background:var(--mint-hi);border-color:var(--mint-hi);color:var(--pb-navy)}
.site-menu{display:none;position:relative}
.site-menu > summary{display:inline-flex;align-items:center;justify-content:center;width:44px;height:44px;border-radius:10px;color:#fff;cursor:pointer;list-style:none}
.site-menu > summary::-webkit-details-marker{display:none}
.site-menu > summary::marker{content:""}
.site-menu > summary svg{width:26px;height:26px}
.site-menu[open] > summary{background:rgba(255,255,255,.08)}
.site-menu__panel{position:absolute;right:0;top:calc(100% + 8px);z-index:30;width:min(340px,calc(100vw - 32px));max-height:calc(100vh - 96px);overflow-y:auto;padding:8px;background:#fff;border:1px solid var(--pb-line-2);border-radius:12px;box-shadow:0 18px 44px -18px rgba(2,17,39,.5)}
.site-menu__panel ul{list-style:none;margin:0;padding:0}
.site-menu__panel li{margin:0}
.site-head .site-menu__panel a{display:block;padding:10px 12px;border-radius:8px;color:var(--pb-navy);font-family:var(--pb-head);font-size:15px;font-weight:600;text-decoration:none}
.site-head .site-menu__panel a:hover{background:var(--pb-grey-tint)}
.site-head .site-menu__panel .sub a{padding-left:26px;font-weight:500;color:var(--pb-ink);font-size:14.5px}
.site-menu__panel .site-menu__k{display:block;padding:10px 12px 4px;font-size:11.5px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--pb-muted)}
.site-menu__panel .site-menu__acct{border-top:1px solid var(--pb-line);margin-top:6px;padding-top:6px}
.site-head .site-menu__panel .site-menu__acct a{display:flex;align-items:center;gap:9px}
.site-menu__panel .site-menu__acct svg{width:16px;height:16px;color:var(--pb-muted)}
/* 3 Oct 2026 (owner): Services in the phone menu is a group that opens and closes (a nested <details>, closed by default) */
.site-menu__svc > summary{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:10px 12px;border-radius:8px;color:var(--pb-navy);font-family:var(--pb-head);font-size:15px;font-weight:600;cursor:pointer;list-style:none}
.site-menu__svc > summary::-webkit-details-marker{display:none}
.site-menu__svc > summary::marker{content:""}
.site-menu__svc > summary:hover{background:var(--pb-grey-tint)}
.site-menu__svc > summary svg{width:18px;height:18px;color:var(--pb-muted);transition:transform .2s var(--m-ease)}
.site-menu__svc[open] > summary svg{transform:rotate(180deg)}
.site-menu__svc[open] > .sub{padding-bottom:4px}
@media (max-width:1100px){.site-nav{display:none}.site-menu{display:block}.site-top__links{display:none}}
@media (max-width:767px){
 .shell{padding:0 16px}
 .site-top{display:none}
 .site-logo img{width:148px}
 .site-head .shell{min-height:64px;gap:4px;padding-top:6px;padding-bottom:6px}
 .is-scrolled .site-head .shell{min-height:56px;padding-top:4px;padding-bottom:4px}
 .is-scrolled .site-logo img{width:136px}
 .site-head .site-phone{display:inline-flex}
 .site-head .site-signin,.site-sep{display:none}
 .site-head .site-signup{padding:7px 14px;font-size:14px;min-height:38px}
}

/* ================================================================== 6. sections and bands */
.m-sec{padding:var(--m-sec) 0}
.m-sec--tight{padding:48px 0}
.m-sec--tint{background:var(--pb-ground)}
.m-grid{display:grid;gap:18px}
.m-grid--2{grid-template-columns:repeat(2,minmax(0,1fr))}
.m-grid--3{grid-template-columns:repeat(3,minmax(0,1fr))}
.m-grid--4{grid-template-columns:repeat(4,minmax(0,1fr))}
.m-cols{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(0,.7fr);gap:28px;align-items:start}
.m-cols--even{grid-template-columns:repeat(2,minmax(0,1fr))}
.m-cols--narrow{grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr)}
.m-sticky{position:sticky;top:76px}
/* the sticky sidebar column (service pages, management): .m-side stretches the full height of the main column, so the
   card inside sticks just below the compact header (60px + a 16px gap) all the way down that column and stops with it;
   a card taller than the window scrolls inside itself, so its foot stays reachable */
.m-cols--side{grid-template-columns:minmax(0,1fr) minmax(0,416px);gap:32px}
.m-side{min-width:0;align-self:stretch}
.m-side > .m-sticky{max-height:calc(100vh - 92px);overflow-y:auto;scrollbar-width:thin;overscroll-behavior:auto}
.m-stack{display:grid;gap:18px;grid-template-columns:minmax(0,1fr)}
@media (max-width:1024px){
 :root{--m-sec:56px}
 .m-grid--3,.m-grid--4{grid-template-columns:repeat(2,minmax(0,1fr))}
 .m-cols,.m-cols--even,.m-cols--narrow{grid-template-columns:minmax(0,1fr)}
 .m-sticky{position:static}
 .m-side > .m-sticky{max-height:none;overflow:visible}
}
@media (max-width:767px){
 :root{--m-sec:44px}
 .m-grid--2,.m-grid--3,.m-grid--4{grid-template-columns:minmax(0,1fr)}
 .m-sechead{margin-bottom:24px}
 .m-lead{font-size:17.5px}
 .pb-btnrow .pb-btn{width:100%}
 .pb-form--2{grid-template-columns:minmax(0,1fr)}
 .pb-sheet__b{padding:16px}
 .pb-sheet__h{padding:13px 16px}
 .pb-sheet__f{padding:12px 16px}
 .pb-kv{grid-template-columns:minmax(0,1fr);gap:2px 0}
 .pb-kv dt{margin-top:8px}
 .pb-input,.pb-select,.pb-textarea{min-height:48px}
}

/* ================================================================== 7. hero: the problem first, a real photo, the Vanta birds behind it */
.m-hero{position:relative;overflow:hidden;padding:52px 0 44px;background:linear-gradient(180deg,#fff 0,#fff 55%,var(--pb-ground) 100%)}
.m-hero__grid{position:relative;z-index:1;display:grid;grid-template-columns:minmax(0,1.02fr) minmax(0,.98fr);gap:36px;align-items:center}
.m-hero .m-h1{max-width:19ch}
.m-hero__meta{display:flex;flex-wrap:wrap;gap:8px 18px;margin:18px 0 0;font-size:14.5px;color:var(--pb-muted)}
.m-hero__meta span{display:inline-flex;align-items:center;gap:7px}
.m-hero__meta svg{width:16px;height:16px;color:var(--pb-muted)}
.ar26 .m-hero__meta a{color:var(--pb-navy);font-weight:600;text-decoration:none}
.ar26 .m-hero__meta a:hover{text-decoration:underline}
.m-hero__art{position:relative;display:flex;justify-content:center;align-items:center;min-height:380px}
.m-hero__art::before{content:"";position:absolute;inset:6% 10% 2% 10%;border-radius:50%;background:radial-gradient(closest-side,#fff 0,var(--pb-ground) 70%,rgba(243,244,246,0) 100%)}
.m-hero__art img{position:relative;width:min(100%,460px);height:auto;filter:drop-shadow(0 24px 40px rgba(2,17,39,.18))}
.m-hero__chip{position:absolute;z-index:2;display:inline-flex;align-items:center;gap:8px;padding:8px 12px;background:#fff;border:1px solid var(--pb-line);border-radius:999px;box-shadow:var(--pb-shadow-lift);font-family:var(--pb-head);font-size:13px;font-weight:700;color:var(--pb-navy);white-space:nowrap}
.m-hero__chip svg{width:16px;height:16px;color:var(--pb-teal-ink)}
.m-hero__chip--tl{left:4%;top:12%}
.m-hero__chip--br{right:2%;bottom:14%}
/* the Vanta birds (three.js), behind the hero, desktop only; faded in once the library is running */
.m-hero__birds{position:absolute;inset:0;z-index:0;pointer-events:none;opacity:0;transition:opacity 1.4s ease}
.m-hero__birds.is-live{opacity:.72}
.m-hero__birds canvas{display:block}
@media (max-width:1024px){.m-hero__grid{grid-template-columns:minmax(0,1fr);gap:26px}.m-hero .m-h1{max-width:20ch}.m-hero__art{min-height:0}.m-hero__art img{width:min(100%,380px)}}
@media (max-width:767px){.m-hero{padding:28px 0 32px}.m-hero .m-h1{max-width:none}.m-hero__chip{font-size:12px;padding:6px 10px}.m-hero__chip--tl{left:0;top:4%}.m-hero__chip--br{right:0;bottom:6%}
 /* 3 Oct 2026 (owner, on his phone): the picture straight after the intro and before the buttons, so it is seen on
    landing. The text column (.m-hero__text) steps aside (display:contents) and its children are ordered around the
    picture, which is kept to 240px (under 30% of a 390x844 screen) so the buttons still reach the first screen.
    Tablets and desktop are unchanged. */
 .m-hero__grid{gap:0}
 .m-hero__text{display:contents}
 .m-hero__text > .m-h1{order:1}
 .m-hero__text > .m-lead{order:2}
 .m-hero__grid > .m-hero__art{order:3;margin:0 0 22px}
 .m-hero__text > .pb-btnrow{order:4}
 .m-hero__text > .m-hero__meta{order:5}
 .m-hero__art img{width:min(100%,240px)}}

/* ================================================================== 8. facts strip */
.m-facts{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:0;border:1px solid var(--pb-line);border-radius:var(--pb-r-sheet);background:#fff;box-shadow:var(--pb-shadow);overflow:hidden}
.m-fact{display:flex;gap:14px;align-items:flex-start;padding:20px 22px;border-left:1px solid var(--pb-line)}
.m-fact:first-child{border-left:0}
.m-fact b{display:block;font-family:var(--pb-head);font-size:15.5px;font-weight:700;color:var(--pb-navy);line-height:1.35;margin:0 0 3px}
.ar26 .m-fact b a{color:var(--pb-navy);text-decoration:none}
.ar26 .m-fact b a:hover{text-decoration:underline}
.m-fact p{margin:0;font-size:14px;line-height:1.5;color:var(--pb-muted)}
@media (max-width:1024px){.m-facts{grid-template-columns:repeat(2,minmax(0,1fr))}.m-fact:nth-child(3){border-left:0}.m-fact:nth-child(n+3){border-top:1px solid var(--pb-line)}}
@media (max-width:767px){.m-facts{grid-template-columns:minmax(0,1fr)}.m-fact{border-left:0;padding:16px}.m-fact+.m-fact{border-top:1px solid var(--pb-line)}}

/* ================================================================== 9. framed screenshots: the story, figures, tags */
.m-frame{position:relative;background:#fff;border:1px solid var(--pb-line-2);border-radius:10px;box-shadow:var(--pb-shadow-frame);overflow:hidden}
.m-frame__bar{display:flex;align-items:center;gap:6px;padding:8px 12px;border-bottom:1px solid var(--pb-line);background:var(--pb-paper-2)}
.m-frame__bar i{width:9px;height:9px;border-radius:50%;background:var(--pb-line-2)}
.m-frame__bar span{margin-left:8px;font-size:12px;color:var(--pb-muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.m-frame img{display:block;width:100%;height:auto}
.m-tag{display:inline-flex;align-items:center;gap:6px;padding:4px 10px;border-radius:6px;font-family:var(--pb-head);font-size:12.5px;font-weight:700;line-height:1.3;white-space:nowrap;box-shadow:0 2px 6px rgba(2,17,39,.18)}
.m-tag svg{width:14px;height:14px}
.m-tag--red{background:var(--pb-red-pop);color:#fff}
.m-tag--amber{background:var(--pb-amber-bar);color:#2B1B00}
.m-tag--teal{background:var(--pb-teal-ink);color:#fff}
.m-tag--grey{background:#fff;color:var(--pb-navy);border:1px solid var(--pb-line-2);box-shadow:none}
.m-tag--float{position:absolute;z-index:2;left:12px;top:12px}
/* the story: three frames the same size, tops aligned, arrows centred between them */
.m-story{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:30px;align-items:start}
.m-story__item{position:relative}
.m-story__item .m-tag{display:inline-flex;margin:0 0 10px}
.m-story__wrap{position:relative}
.m-story__body{aspect-ratio:16/10;overflow:hidden;background:#fff}
.m-story__body img,.m-story__img{width:100%;height:100%;object-fit:cover;object-position:top left}
.m-story__body .m-case{height:100%}
.m-story__cap{margin:12px 2px 0;font-size:14px;line-height:1.5;color:var(--pb-muted)}
.m-story__cap b{display:block;font-family:var(--pb-head);font-size:15px;font-weight:700;color:var(--pb-navy);margin:0 0 2px}
.m-story__wrap .m-story__arrow{position:absolute;right:-25px;top:50%;transform:translateY(-50%);width:20px;height:20px;color:var(--pb-line-3)}
.m-story__item:last-child .m-story__arrow{display:none}
@media (max-width:1024px){.m-story{grid-template-columns:minmax(0,1fr);gap:26px}.m-story__wrap .m-story__arrow{display:none}}
@media (max-width:767px){.m-story__cap{font-size:13.5px}}
/* the case card drawn as product UI (our client area), inside a frame */
.m-case{padding:16px 18px 18px}
.m-case__k{display:block;font-size:11px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--pb-muted);margin:0 0 8px}
.m-case__t{font-family:var(--pb-head);font-weight:700;font-size:16px;color:var(--pb-navy);line-height:1.3;margin:0 0 12px}
.m-rail{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:4px;margin:0 0 12px;padding:0;list-style:none}
.m-rail li{height:6px;border-radius:3px;background:var(--pb-line-2);margin:0}
.m-rail li.done{background:var(--pb-teal)}
.m-rail li.now{background:linear-gradient(90deg,var(--pb-amber-bar) 0 55%,var(--pb-line-2) 55%)}
.m-case__row{display:flex;justify-content:space-between;gap:10px;align-items:center;font-size:13.5px;color:var(--pb-muted);padding:8px 0;border-top:1px solid var(--pb-line)}
.m-case__row b{color:var(--pb-navy);font-weight:600;text-align:right}
.m-figure{margin:0}
.m-figure__frame{position:relative;border:1px solid var(--pb-line-2);border-radius:10px;overflow:hidden;background:#fff;box-shadow:var(--pb-shadow-frame)}
.m-figure__frame img{display:block;width:100%;height:auto}
.m-figure figcaption{margin:10px 2px 0;font-size:13.5px;line-height:1.5;color:var(--pb-muted)}
.m-figure figcaption b{color:var(--pb-navy);font-weight:600}
.m-figure--tall .m-figure__frame{max-height:420px}
.m-figure--tall .m-figure__frame img{object-fit:cover;object-position:top;height:420px}
@media (max-width:767px){.m-figure--tall .m-figure__frame{max-height:300px}.m-figure--tall .m-figure__frame img{height:300px}.m-figure--strip .m-tag--float{position:static;display:inline-flex;margin:0 0 8px}}

/* ================================================================== 10. service cards: lift and a little pop on hover */
.m-svc{display:flex;flex-direction:column;gap:14px;padding:22px;position:relative;transition:transform .2s var(--m-ease),box-shadow .2s var(--m-ease),border-color .2s}
.m-svc:hover,.m-guide:hover,.m-casecard:hover,.m-ccard:hover{transform:translateY(-4px) scale(1.012);box-shadow:var(--pb-shadow-lift);border-color:var(--pb-line-2)}
.m-svc:hover .pb-chip{transform:translateY(-2px);background:var(--pb-teal-tint);color:var(--pb-teal-ink)}
.m-svc:hover .m-more svg{transform:translateX(3px)}
.m-svc__top{display:flex;gap:14px;align-items:flex-start}
.m-svc__top .m-h3{margin:4px 0 2px}
.ar26 .m-svc__top .m-h3 a{color:var(--pb-navy);text-decoration:none}
.ar26 .m-svc__top .m-h3 a:hover{text-decoration:underline}
.m-svc__for{margin:0!important;font-size:13.5px;line-height:1.45;color:var(--pb-muted)}
.m-svc__price{display:flex;align-items:baseline;flex-wrap:wrap;gap:4px 10px;padding:12px 0;border-top:1px solid var(--pb-line);border-bottom:1px solid var(--pb-line)}
.m-svc__price strong{font-family:var(--pb-head);font-size:30px;font-weight:800;color:var(--pb-navy);letter-spacing:-.02em;line-height:1}
.m-svc__price span{font-size:13.5px;color:var(--pb-muted)}
.m-check{list-style:none;margin:0;padding:0;display:grid;gap:9px}
.m-check li{position:relative;padding-left:26px;font-size:15px;line-height:1.5;color:var(--pb-ink);margin:0}
.m-check li > svg{position:absolute;left:0;top:.2em;width:17px;height:17px;color:var(--pb-teal-ink)}
.m-check--sm li{font-size:14.5px}
.m-svc__refund{margin:0!important;padding:12px 14px;border-radius:var(--pb-r-ctl);background:var(--pb-paper-2);border:1px solid var(--pb-line);font-size:13.5px;line-height:1.5;color:var(--pb-muted)}
.m-svc__refund strong{color:var(--pb-navy)}
.m-svc__act{display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap;margin-top:auto;padding-top:4px}
.ar26 .m-more{display:inline-flex;align-items:center;gap:6px;font-family:var(--pb-head);font-weight:600;font-size:14.5px;color:var(--pb-navy);text-decoration:none}
.m-more svg{width:15px;height:15px;color:var(--pb-navy);transition:transform .2s var(--m-ease)}
.ar26 .m-more:hover{text-decoration:underline}
.m-more:hover svg{transform:translateX(3px)}
.m-svc--new{border-color:var(--pb-line-2);background:#fff}
.m-svc__tag{position:absolute;top:-12px;left:18px}
/* the managed card across the full grid width on the homepage */
.m-svc--wide{grid-column:1/-1;display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);gap:14px 28px;align-items:start;padding-top:26px}
.m-svc--wide .m-svc__act{grid-column:1/-1}
@media (max-width:1024px){.m-svc--wide{grid-template-columns:minmax(0,1fr)}}
@media (max-width:767px){.m-svc{padding:18px 16px}.m-svc__act .pb-btn{width:100%}.ar26 .m-svc__act .m-more{width:100%;justify-content:center;min-height:40px}}
.m-addon{display:flex;gap:14px;align-items:flex-start;padding:16px 18px}
.m-addon__b{min-width:0;flex:1 1 auto}
.m-addon__b b{display:block;font-family:var(--pb-head);font-weight:700;font-size:15.5px;color:var(--pb-navy);margin:0 0 3px}
.m-addon__b p{margin:0;font-size:14px;line-height:1.5;color:var(--pb-muted)}
.m-addon__p{font-family:var(--pb-head);font-weight:800;font-size:20px;color:var(--pb-navy);white-space:nowrap;flex:0 0 auto}

/* ================================================================== 11. how it works: four numbered steps on a rule, completed one by one */
.m-steps{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:22px;position:relative}
.m-steps::before{content:"";position:absolute;left:12.5%;right:12.5%;top:22px;height:2px;background:var(--pb-line-2)}
.m-step{position:relative;display:grid;gap:10px;justify-items:center;align-content:start;text-align:center;padding:0 6px;margin:0}
.m-step__n{position:relative;z-index:1;width:46px;height:46px;border-radius:50%;background:var(--pb-navy);color:#fff;display:inline-flex;align-items:center;justify-content:center;font-family:var(--pb-head);font-weight:800;font-size:16px;box-shadow:0 0 0 6px #fff}
.m-sec--tint .m-step__n{box-shadow:0 0 0 6px var(--pb-ground)}
.m-step__n--free{background:var(--pb-teal-ink)}
.m-step .m-h3{margin:4px 0 0;font-size:17px}
.m-step p{margin:0;font-size:14.5px;line-height:1.55;color:var(--pb-muted);max-width:30ch}
.m-step .pb-pill{margin-top:2px}
@media (max-width:1024px){
 .m-steps{grid-template-columns:minmax(0,1fr);gap:0}
 .m-steps::before{left:22px;right:auto;top:0;bottom:0;width:2px;height:auto}
 .m-step{grid-template-columns:46px minmax(0,1fr);gap:4px 18px;justify-items:start;text-align:left;padding:0 0 26px}
 .m-step:last-child{padding-bottom:0}
 .m-step__n{grid-row:1/4}
 .m-step .m-h3{margin:10px 0 0}
 .m-step p{max-width:none}
}
.m-steps--anim .m-step__n{position:relative;overflow:hidden;transition:background-color .45s ease,transform .45s var(--m-ease)}
.m-steps--anim .m-step__n .n{display:inline-block;transition:opacity .25s,transform .35s var(--m-ease)}
.m-steps--anim .m-step__n .ok{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;opacity:0;transform:scale(.5);transition:opacity .35s,transform .45s var(--m-ease)}
.m-steps--anim .m-step__n .ok svg{width:22px;height:22px;stroke-width:2.4}
.m-steps--anim .m-step.is-done .m-step__n{background:var(--pb-green)}
.m-steps--anim .m-step.is-done .m-step__n .n{opacity:0;transform:translateY(-8px)}
.m-steps--anim .m-step.is-done .m-step__n .ok{opacity:1;transform:none}
.m-steps--anim .m-step.is-done .pb-pill{border-color:var(--pb-green-edge);background:var(--pb-green-tint);color:#176B45}
.m-steps--anim .m-step::after{content:"";position:absolute;top:22px;left:50%;width:100%;height:2px;background:var(--pb-green);transform:scaleX(0);transform-origin:left center;transition:transform .7s var(--m-ease) .15s;z-index:0}
.m-steps--anim .m-step.is-done::after{transform:scaleX(1)}
.m-steps--anim .m-step:last-child::after{display:none}
@media (max-width:1024px){
 .m-steps--anim .m-step::after{top:46px;left:22px;width:2px;height:calc(100% - 46px);transform:scaleY(0);transform-origin:center top}
 .m-steps--anim .m-step.is-done::after{transform:scaleY(1)}
}
.rv-off .m-steps--anim .m-step__n,.rv-off .m-steps--anim .m-step__n .n,.rv-off .m-steps--anim .m-step__n .ok,.rv-off .m-steps--anim .m-step::after{transition:none}

/* ================================================================== 12. trust: person, stars, quotes, the reinstatement emails */
.m-person{display:flex;gap:22px;align-items:flex-start}
.m-person img{flex:0 0 112px;width:112px;height:112px;border-radius:50%;object-fit:cover;box-shadow:0 0 0 4px var(--pb-line)}
.m-person__n{font-family:var(--pb-head);font-weight:700;font-size:19px;color:var(--pb-navy);margin:2px 0 2px}
.m-person__r{font-size:14px;color:var(--pb-muted);margin:0 0 10px!important}
.m-person__b{font-size:15.5px;line-height:1.6;color:var(--pb-ink);margin:0 0 10px}
.m-person--lg{gap:34px;align-items:flex-start}
.m-person--lg img{flex-basis:220px;width:220px;height:220px;border-radius:50%;box-shadow:0 0 0 4px #fff,0 0 0 5px var(--pb-line-2),0 18px 40px -20px rgba(2,17,39,.35);border:0}
.m-stars{display:inline-flex;gap:2px;color:var(--pb-amber-bar)}
.m-stars svg{width:18px;height:18px;fill:currentColor;stroke:none}
.m-rating{display:flex;align-items:center;flex-wrap:wrap;gap:8px 12px;margin:0 0 12px}
.m-rating b{font-family:var(--pb-head);font-size:18px;font-weight:800;color:var(--pb-navy)}
.m-rating span{font-size:14px;color:var(--pb-muted)}
.m-quote{margin:0;padding:0;border:0}
.m-quote p{font-family:var(--pb-serif);font-size:17px;line-height:1.55;color:var(--pb-navy);margin:0 0 10px}
.m-quote footer{font-size:13.5px;color:var(--pb-muted)}
.m-quote footer b{color:var(--pb-navy);font-weight:600}
.m-emails{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:0;padding:0;list-style:none}
.m-emails li{margin:0}
.ar26 .m-emails a{display:block;border:1px solid var(--pb-line-2);border-radius:8px;overflow:hidden;background:#fff;text-decoration:none;color:var(--pb-navy);box-shadow:var(--pb-shadow);transition:transform .2s var(--m-ease),box-shadow .2s}
.m-emails a:hover{transform:translateY(-3px);box-shadow:var(--pb-shadow-lift)}
.m-emails img{display:block;width:100%;aspect-ratio:600/296;object-fit:cover;object-position:top;border-bottom:1px solid var(--pb-line)}
.m-emails b{display:block;padding:8px 12px;font-family:var(--pb-head);font-size:13px;font-weight:600;line-height:1.35}
@media (max-width:767px){.m-person{gap:14px}.m-person img{flex-basis:76px;width:76px;height:76px}.m-person--lg{flex-direction:column;align-items:flex-start;gap:18px}.m-person--lg img{width:100%;max-width:260px;height:auto;aspect-ratio:1/1;flex-basis:auto}.m-emails{grid-template-columns:minmax(0,1fr)}.m-emails a:hover{transform:none}}

/* ================================================================== 13. guides, FAQ, closing CTA */
.m-guides{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin:0;padding:0;list-style:none}
.m-guides li{margin:0}
.ar26 .m-guide{display:flex;flex-direction:column;height:100%;overflow:hidden;text-decoration:none;color:var(--pb-navy);transition:transform .2s var(--m-ease),box-shadow .2s,border-color .2s}
.m-guide img{display:block;width:100%;aspect-ratio:16/9;object-fit:cover;background:#0A1A33;border-bottom:1px solid var(--pb-line)}
.m-guide__b{padding:12px 14px 14px;display:flex;flex-direction:column;gap:5px}
.m-guide__k{font-size:11px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--pb-muted)}
.m-guide b{font-family:var(--pb-head);font-size:14.5px;font-weight:600;line-height:1.35}
.m-guide__meta{font-size:12px;color:var(--pb-muted)}
.m-guides--list{grid-template-columns:minmax(0,1fr);gap:10px}
.ar26 .m-guides--list .m-guide{flex-direction:row;align-items:center;gap:12px;padding:8px 12px 8px 8px}
.m-guides--list .m-guide img{width:84px;flex:0 0 84px;aspect-ratio:16/10;border:0;border-radius:6px}
.m-guides--list .m-guide__b{padding:0}
@media (max-width:1024px){.m-guides{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:767px){.m-guides{grid-template-columns:minmax(0,1fr)}.ar26 .m-guide{flex-direction:row;align-items:center;gap:12px;padding:8px 12px 8px 8px}.m-guide:hover{transform:none}.m-guide img{width:92px;flex:0 0 92px;aspect-ratio:1/1;border:0;border-radius:6px}.m-guide__b{padding:0}}
.m-faq{border:1px solid var(--pb-line);border-radius:var(--pb-r-sheet);background:#fff;overflow:hidden;box-shadow:var(--pb-shadow)}
.m-faq details{border-top:1px solid var(--pb-line)}
.m-faq details:first-child{border-top:0}
.m-faq summary{display:flex;align-items:flex-start;gap:14px;padding:16px 20px;cursor:pointer;list-style:none;font-family:var(--pb-head);font-size:16px;font-weight:600;line-height:1.45;color:var(--pb-navy)}
.m-faq summary::-webkit-details-marker{display:none}
.m-faq summary::marker{content:""}
.m-faq summary:hover{background:var(--pb-paper-2)}
.m-faq summary span{flex:1 1 auto;min-width:0}
.m-faq summary svg{margin-top:.2em;width:20px;height:20px;color:var(--pb-muted);transition:transform .25s;flex:0 0 auto}
.m-faq details[open] summary svg{transform:rotate(180deg)}
.m-faq__a{padding:0 20px 18px;font-size:15.5px;line-height:1.65;color:var(--pb-ink)}
.m-faq__a p{margin:0 0 .8em}
.m-faq__a ul,.m-faq__a ol{margin:0 0 .8em;padding-left:1.3em}
.m-faq__a li{margin:0 0 .35em}
.m-faq__a > :last-child{margin-bottom:0}
@media (max-width:767px){.m-faq summary{padding:14px 14px;font-size:15.5px}.m-faq__a{padding:0 14px 16px}}
/* /faq/ (2 Oct 2026): topic groups, and the sticky "On this page" list beside them */
.m-faqcount{margin:16px 0 0;font-size:14.5px;color:var(--pb-muted)}
.m-faqgroup{scroll-margin-top:84px}
.m-faqgroup__h{display:flex;align-items:center;gap:12px;font-size:24px!important;margin-bottom:14px!important}
.m-faqgroup__n{margin-left:auto;font-family:var(--pb-head);font-size:13px;font-weight:700;color:var(--pb-muted);background:var(--pb-grey-tint);border-radius:999px;padding:2px 10px}
.m-toc .pb-sheet__h h2{font-family:var(--pb-head);font-size:15px;font-weight:700;display:flex;align-items:center;gap:8px}
.m-toc__list{list-style:none;margin:0;padding:8px}
.m-toc__list li{margin:0}
.ar26 .m-toc__list a{display:flex;align-items:center;gap:10px;padding:8px 10px;border-radius:8px;color:var(--pb-ink);text-decoration:none;font-family:var(--pb-head);font-size:14.5px;font-weight:600}
.ar26 .m-toc__list a:hover{background:var(--pb-grey-tint);color:var(--pb-navy)}
.m-toc__list svg{width:16px;height:16px;color:var(--pb-muted)}
.m-toc__list .n{margin-left:auto;font-size:12.5px;font-weight:600;color:var(--pb-muted)}
@media (max-width:1024px){.m-side .m-toc{display:none}}
.m-cta{text-align:center;padding:40px 28px}
.m-cta .m-h2{margin-bottom:8px!important}
.m-cta p{max-width:56ch;margin:0 auto 20px;color:var(--pb-muted)}
.m-cta .pb-btnrow{justify-content:center}
.m-cta .micro{margin:18px auto 0}
@media (max-width:767px){.m-cta{padding:26px 16px}}

/* ================================================================== 14. service page: the notice, page heads, price card, prose */
.m-notice{position:relative;margin:0 0 18px;padding:16px 20px 14px 22px;background:var(--pb-purple-tint);border:1px solid var(--pb-purple-edge);border-radius:var(--pb-r-sheet);overflow:hidden;max-width:640px}
.m-notice::before{content:"";position:absolute;left:0;top:0;bottom:0;width:4px;background:var(--pb-purple)}
.m-notice__label{display:flex;align-items:center;gap:8px;margin:0 0 6px;font-size:11.5px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--pb-purple)}
.m-notice__label svg{width:15px;height:15px}
.m-notice q{font-family:var(--pb-serif);font-size:18px;font-weight:600;line-height:1.4;color:var(--pb-navy);quotes:"\201C" "\201D"}
.m-notice q::before,.m-notice q::after{color:var(--pb-purple)}
.m-pagehead{padding:40px 0 36px;border-bottom:1px solid var(--pb-line)}
.m-pagehead--tint{background:var(--pb-ground);border-bottom:0}
.m-pagehead .m-h1{max-width:26ch;font-size:clamp(30px,3.6vw,42px)}
.m-pagehead .m-lead{margin-bottom:0}
.m-pagehead__grid{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,.8fr);gap:40px;align-items:center}
.m-pagehead__grid .m-lead{margin-bottom:22px}
.m-glance .pb-sheet__h h2{font-family:var(--pb-head);font-size:16px;font-weight:700}
.m-glance__list{list-style:none;margin:0;padding:0;display:grid;gap:14px}
.m-glance__list li{margin:0}
.m-glance__list .m-feat p{font-size:13.5px}
.m-glance__list .m-feat b{font-size:15px;margin-bottom:2px}
@media (max-width:1024px){.m-pagehead__grid{grid-template-columns:minmax(0,1fr);gap:26px}}
@media (max-width:767px){.m-pagehead{padding:26px 0 28px}.m-notice q{font-size:16.5px}.m-pagehead .m-h1{max-width:none}}
.m-row-facts{display:flex;flex-wrap:wrap;gap:8px 22px;margin:20px 0 0;padding:0;list-style:none;font-size:14.5px;color:var(--pb-muted)}
.m-row-facts li{display:inline-flex;align-items:center;gap:7px;margin:0}
.m-row-facts svg{width:16px;height:16px;color:var(--pb-muted)}
.m-price{overflow:hidden}
.m-price__top{padding:20px 22px 16px;border-bottom:1px solid var(--pb-line);background:var(--pb-paper-2)}
.m-price__top .m-eyebrow{margin-bottom:4px}
.m-price__amt{display:flex;align-items:baseline;gap:10px;flex-wrap:wrap}
.m-price__amt strong{font-family:var(--pb-head);font-size:40px;font-weight:800;color:var(--pb-navy);letter-spacing:-.02em;line-height:1}
.m-price__amt span{font-size:14px;color:var(--pb-muted)}
.m-price__b{padding:18px 22px}
.m-price__b .m-h4{margin-bottom:10px}
.m-price__f{padding:14px 22px 18px;border-top:1px solid var(--pb-line);display:grid;gap:10px}
.m-price__f .micro{margin:0}
.m-price__alt{display:block;text-align:center;font-size:13.5px;color:var(--pb-muted);margin:8px 0 0}
.m-price__go{margin:14px 0 0}
/* the sidebar card is kept compact so it fits a 900px-high window whole (1366 x 900: 808px below the header) */
.m-side .m-price__top{padding:16px 20px 12px}
.m-side .m-price__go{margin-top:12px}
.m-side .m-price__alt{margin-top:6px}
.m-side .m-price__amt strong{font-size:36px}
.m-side .m-price__b{padding:14px 20px}
.m-side .m-price__b .m-h4{margin-bottom:8px}
.m-side .m-price__b .m-check{gap:6px}
.m-side .m-price__b .m-check--sm li{font-size:13.5px;line-height:1.45}
.m-side .m-price__b .m-check li > svg{width:15px;height:15px;top:.15em}
.m-side .m-price__f{padding:12px 20px 12px;gap:6px}
.m-side .m-price__f .micro{font-size:12.5px;line-height:1.5}
.m-sec--after{padding-top:0}
.m-blk--after > section:first-child{padding-top:34px;border-top:1px solid var(--pb-line)}
.m-blk--after #faq .m-faq{max-width:900px}
.m-prose{max-width:68ch}
.m-prose h2{font-family:var(--pb-serif);font-weight:600;font-size:26px;line-height:1.25;margin:0 0 14px}
.m-prose h3{font-family:var(--pb-head);font-weight:700;font-size:17.5px;line-height:1.35;margin:1.6em 0 .5em;letter-spacing:-.01em}
.m-prose p,.m-prose li{font-size:16.5px;line-height:1.7;color:var(--pb-ink)}
.m-prose ul,.m-prose ol{margin:0 0 1.2em;padding-left:1.4em}
.m-prose li{margin:0 0 .5em}
.m-prose ul > li::marker{color:var(--pb-line-3)}
.m-prose .m-figure{margin:1.6em 0}
.m-blk{display:grid;gap:30px}
.m-blk > section{padding-top:30px;border-top:1px solid var(--pb-line)}
.m-blk > section:first-child{padding-top:0;border-top:0}
.m-feat{display:flex;gap:14px;align-items:flex-start}
.m-feat b{display:block;font-family:var(--pb-head);font-size:15.5px;font-weight:700;color:var(--pb-navy);line-height:1.35;margin:0 0 4px}
.m-feat p{margin:0;font-size:14.5px;line-height:1.55;color:var(--pb-muted)}
.m-vsteps{list-style:none;margin:0;padding:0;counter-reset:vs}
.m-vsteps li{position:relative;counter-increment:vs;padding:0 0 22px 56px;min-height:40px;margin:0}
.m-vsteps li:last-child{padding-bottom:0}
.m-vsteps li::before{content:counter(vs);position:absolute;left:0;top:0;display:flex;align-items:center;justify-content:center;width:38px;height:38px;border-radius:50%;background:var(--pb-navy);color:#fff;font-family:var(--pb-head);font-size:15px;font-weight:800;z-index:1}
.m-vsteps li::after{content:"";position:absolute;left:18.25px;top:42px;bottom:4px;width:1.5px;background:var(--pb-line-2)}
.m-vsteps li:last-child::after{content:none}
.m-vsteps b{display:block;padding-top:7px;font-family:var(--pb-head);font-size:16.5px;font-weight:700;line-height:1.4;color:var(--pb-navy);margin:0 0 4px}
.m-vsteps p{margin:0;font-size:15.5px;line-height:1.65;color:var(--pb-ink)}
.m-vsteps .pb-pill{margin-left:8px;vertical-align:middle}
.m-diagram{display:block;width:100%;height:auto}
.m-diagram--chart{border-radius:8px}

/* ================================================================== 15. contact */
.m-contact-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}
.ar26 .m-ccard{display:flex;gap:14px;align-items:flex-start;padding:18px 20px;text-decoration:none;color:var(--pb-navy);transition:transform .2s var(--m-ease),box-shadow .2s}
.m-ccard b{display:block;font-family:var(--pb-head);font-size:15.5px;font-weight:700;margin:0 0 2px}
.m-ccard span{display:block;font-size:14px;color:var(--pb-muted);line-height:1.5}
.m-ccard .big{font-family:var(--pb-head);font-size:17px;font-weight:700;color:var(--pb-navy)}
@media (max-width:1024px){.m-contact-cards{grid-template-columns:minmax(0,1fr)}
 /* 3 Oct 2026 (owner, phones only): ".m-ccard span" made the icon tile a block, so its icon sat top-left; centred again
    where the cards stack. Desktop is left exactly as it is. */
 .m-ccard .pb-chip{display:grid;place-items:center}}
.m-gives{list-style:none;margin:0;padding:0;display:grid;gap:14px}
.m-gives li{display:flex;gap:12px;align-items:flex-start;margin:0}

/* ================================================================== 16. footer B: the live structure (brand, Quick Links, What We Help With, the callback form), calm */
.site-foot{background:#021127;color:#C5CFDE;margin-top:0;padding:52px 0 84px;font-family:var(--pb-body);font-size:15px;line-height:1.65}
.site-foot a{color:#E6ECF4;text-decoration:none;transition:color .3s}
.site-foot a:hover{color:#fff}
.foot__t{display:block;font-family:"Outfit",var(--pb-head);font-size:17px;font-weight:700;letter-spacing:0;color:#fff;margin:0 0 14px}
.footb__cols{display:grid;grid-template-columns:1fr .95fr 1.05fr 1.15fr;gap:30px}
.footb__cols ul{list-style:none;margin:0;padding:0;display:grid;gap:7px}
.footb__cols li{margin:0}
/* the link lists as the old footer drew them (Elementor footer 26, widgets 7b0a2fc and 189670e0): Plus Jakarta Sans
   14px/500 in #778A9B, white on hover; the arrow #8CA2B6, mint on hover; colour and fill fade over .3s */
.site-foot .footb__cols li a{display:inline-flex;align-items:flex-start;gap:7px;min-height:24px;font-family:var(--pb-head);font-size:14px;font-weight:500;line-height:1.5;color:#778A9B;text-decoration:none;transition:color .3s}
.site-foot .footb__cols li a:hover,.site-foot .footb__cols li a:focus-visible{color:#fff;text-decoration:none}
.foot__chev{width:9px;height:9px;flex:0 0 auto;margin-top:6px;color:#8CA2B6;transition:color .3s}
.site-foot .footb__cols li a:hover .foot__chev,.site-foot .footb__cols li a:focus-visible .foot__chev{color:var(--mint)}
.footb__brand img{display:block;width:176px;height:auto;margin:0 0 14px}
.footb__brand p{margin:0 0 10px;font-size:13.5px;color:#9AA7BA}
.footb__brand .footb__brandline{color:#C5CFDE;font-size:13px}
.footb__brandline strong{color:#fff;font-weight:600}
.footb__f{display:grid;gap:10px;margin:0}
.footb__f label{display:grid;gap:4px;font-size:12.5px;color:#C5CFDE}
.footb__f input,.footb__f select{width:100%;min-height:42px;padding:8px 12px;border-radius:8px;border:1px solid rgba(255,255,255,.22);background:rgba(255,255,255,.06);color:#fff;font-family:var(--pb-body);font-size:15px;margin:0}
.footb__f select{appearance:none;-webkit-appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23C5CFDE' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 10px center;background-size:16px;padding-right:34px}
.footb__f select option{color:var(--pb-ink)}
.footb__f input::placeholder{color:#8D9AAE;opacity:1}
.footb__f input:focus,.footb__f select:focus{outline:none;border-color:var(--mint);box-shadow:0 0 0 3px rgba(113,215,191,.25)}
.footb__f input[aria-invalid="true"]{border-color:#F3A79E}
.footb__f .footb__check{display:flex;gap:9px;align-items:flex-start;font-size:12.5px;line-height:1.5}
.footb__f .footb__check input{width:16px;min-height:0;height:16px;margin:3px 0 0;accent-color:var(--mint);padding:0;flex:0 0 auto}
.footb__err{margin:0;font-size:12.5px;color:#FFB4AB}
.footb__err[hidden]{display:none}
.footb__hp{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}
.footb__ok{margin:0;padding:12px 14px;border-radius:8px;border:1px solid rgba(113,215,191,.45);background:rgba(113,215,191,.08);color:#fff;font-size:14px}
.footb__ok[hidden]{display:none}
.site-foot .footb__btn{-webkit-appearance:none;appearance:none;display:inline-flex;align-items:center;justify-content:center;gap:9px;width:100%;min-height:46px;padding:10px 20px;border-radius:var(--pb-r-ctl);border:1px solid #fff;background:#fff;color:var(--pb-navy);font-family:var(--pb-head);font-weight:700;font-size:15px;line-height:1.25;cursor:pointer;transition:background-color .15s,border-color .15s}
.site-foot .footb__btn svg{width:17px;height:17px}
.site-foot .footb__btn:hover{background:var(--mint-hi);border-color:var(--mint-hi)}
.site-foot .footb__btn[disabled]{opacity:.65;cursor:progress}
.footb__or{margin:10px 0 0;font-size:12.5px;color:#9AA7BA}
/* the foot (owner, 2 Oct 2026): one centred block, as the old footer had it. The support row, the company line and the
   independence line, then the legal links on one small line at the very bottom. Old footer type: Plus Jakarta Sans,
   the contact row 13px/300 in #A6A9B8 (white on hover), the base text 12px. */
.footb__foot{margin:36px 0 0;padding:22px 0 0;border-top:1px solid rgba(255,255,255,.1);display:grid;justify-items:center;gap:12px;text-align:center;font-family:var(--pb-head)}
.footb__contact{display:flex;flex-wrap:wrap;justify-content:center;align-items:center;gap:8px 30px;margin:0;padding:0;list-style:none;font-size:13.5px;font-weight:300;line-height:1.5;color:#A6A9B8}
.footb__contact li{display:inline-flex;align-items:center;gap:8px;margin:0;min-height:24px}
.site-foot .footb__contact a{color:#A6A9B8;font-weight:300}
.site-foot .footb__contact a:hover{color:#fff}
.footb__contact svg.fa{width:13px;height:13px;color:#8CA2B6;flex:0 0 auto;transition:color .3s}
.footb__contact li:hover svg.fa{color:var(--mint)}
.site-foot p.foot__base{margin:4px 0 0;max-width:880px;font-size:12px;font-weight:400;line-height:1.6;color:#8A93A6}
.site-foot p.foot__indep{margin:0;max-width:880px;font-size:12px;font-weight:400;line-height:1.6;color:#8A93A6}
.footb__legal{margin:6px 0 0;padding:14px 0 0;border-top:1px solid rgba(255,255,255,.08);width:100%}
.footb__legal ul{display:flex;flex-wrap:wrap;justify-content:center;margin:0;padding:0;list-style:none;row-gap:4px;font-size:12.5px;font-weight:300;line-height:1.5}
.footb__legal li{margin:0;display:inline-flex;align-items:center}
.footb__legal li+li::before{content:"";width:1px;height:12px;margin:0 12px;background:rgba(221,221,221,.46)}
.site-foot .footb__legal a{color:#A6A9B8;font-weight:300;white-space:nowrap}
.site-foot .footb__legal a:hover{color:#fff}
@media (max-width:1024px){.footb__cols{grid-template-columns:1fr 1fr}}
@media (max-width:767px){.site-foot{padding:36px 0 84px}.footb__cols{grid-template-columns:minmax(0,1fr);gap:24px}.footb__foot{margin-top:28px}
 .footb__contact{flex-direction:column;gap:6px}.footb__contact li{display:block;max-width:100%;text-align:center}
 .footb__contact svg.fa{display:inline-block;vertical-align:-2px;margin-right:7px}
 .footb__legal ul{column-gap:18px;row-gap:6px}.footb__legal li+li::before{display:none}}

/* ================================================================== 17. sticky buy: the sidebar price card on desktop, a slim bottom bar on tablets and phones */
.m-buybar{display:none}
@media (max-width:1024px){
 .m-buybar{display:grid;grid-template-columns:auto minmax(0,1fr);grid-template-areas:"price go" "price alt";column-gap:12px;row-gap:2px;align-items:center;position:fixed;left:0;right:0;bottom:0;z-index:48;padding:9px 14px calc(9px + env(safe-area-inset-bottom));background:#fff;border-top:1px solid var(--pb-line-2);box-shadow:0 -10px 30px -18px rgba(2,17,39,.35)}
 .m-buybar__price{grid-area:price;font-family:var(--pb-head);font-weight:800;font-size:19px;color:var(--pb-navy);line-height:1.1}
 .m-buybar__price small{display:block;font-family:var(--pb-body);font-size:11.5px;font-weight:500;color:var(--pb-muted);margin-top:2px}
 .m-buybar__go{grid-area:go;justify-self:end}
 .ar26 .m-buybar__alt{grid-area:alt;justify-self:end;font-size:12.5px;color:var(--pb-muted);white-space:nowrap}
 body.has-buybar{padding-bottom:84px}
 /* 3 Oct 2026: while the bar shows, the cookie-settings chip is hidden (lifted above the bar it sat on the page's own
    Start now button; "Cookie settings" stays in the footer of every page), and the chat bubble moves up above the bar,
    where chat.js fades it out whenever it would cover a button */
 body.has-buybar #ar-consent .arc-chip{display:none}
 body.has-buybar #archat .ach-bubble,body.has-buybar #archat .ach-nudge{bottom:calc(92px + env(safe-area-inset-bottom))}
 body.has-buybar #archat .ach-teaser{bottom:calc(156px + env(safe-area-inset-bottom))}
}
/* 3 Oct 2026: on phones and tablets the cookie-settings chip fades out while it would cover one of the page's buttons
   (ar-site-2026.js section 7; e.g. the homepage hero's buttons on the first screen), as the chat bubble does (chat.js);
   it comes back on scroll, and shows again whenever it has keyboard focus */
#ar-consent .arc-chip.ar26-dodge:not(:focus-visible){opacity:0;pointer-events:none;transition:opacity .2s ease}

/* ================================================================== 18. hub pages: guides, case studies, testimonials */
.g-tabs{display:flex;gap:2px;margin:0 0 26px;padding:0;list-style:none;border-bottom:1px solid var(--pb-line-2);overflow-x:auto;scrollbar-width:none}
.g-tabs::-webkit-scrollbar{display:none}
.g-tabs li{margin:0}
.ar26 .g-tabs a{display:inline-flex;align-items:center;gap:8px;padding:10px 14px;color:var(--pb-muted);text-decoration:none;font-family:var(--pb-head);font-weight:600;font-size:14px;border-bottom:3px solid transparent;margin-bottom:-1px;white-space:nowrap}
.ar26 .g-tabs a:hover{color:var(--pb-navy)}
.ar26 .g-tabs a[aria-current]{color:var(--pb-navy);border-bottom-color:var(--pb-navy)}
.ar26 .m-featart{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr);overflow:hidden;text-decoration:none;color:var(--pb-navy)}
.m-featart img{display:block;width:100%;height:100%;object-fit:cover;aspect-ratio:16/9;background:#0A1A33}
.m-featart__b{padding:24px 26px;display:flex;flex-direction:column;gap:10px}
.m-featart__b h2,.m-featart__b h3{font-family:var(--pb-serif);font-weight:600;font-size:24px;line-height:1.25}
.m-featart__b p{margin:0;font-size:15px;color:var(--pb-muted)}
.m-featart__b .m-more{margin-top:auto}
/* 4 Oct 2026 (owner): the written-up cases on /case-studies/ in the featured card's layout, one under the other, each
   with its own masked screenshot; the emails are read from the top, so the picture is anchored there when it is cropped */
.m-cases{display:grid;grid-template-columns:minmax(0,1fr);gap:18px;margin:0}
.m-cases__h{margin-top:34px}
.m-featart--case img{object-fit:contain;object-position:center;background:#fff;border-right:1px solid var(--pb-line)}
.m-featart--case h3{font-size:22px}
.m-start{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
@media (max-width:1024px){.ar26 .m-featart{grid-template-columns:minmax(0,1fr)}.m-featart--case img{height:auto;aspect-ratio:4/3;border-right:0;border-bottom:1px solid var(--pb-line)}}
@media (max-width:767px){.m-start{grid-template-columns:minmax(0,1fr)}.m-featart__b{padding:16px}.m-featart--case h3{font-size:20px}}
.m-casecard{display:flex;flex-direction:column;overflow:hidden;color:var(--pb-navy);transition:transform .2s var(--m-ease),box-shadow .2s}
.m-casecard img{display:block;width:100%;aspect-ratio:16/9;object-fit:cover;object-position:top;border-bottom:1px solid var(--pb-line);background:#fff}
.m-casecard__b{padding:16px 18px 18px;display:flex;flex-direction:column;gap:10px;flex:1 1 auto}
.m-casecard__b h3{font-family:var(--pb-head);font-weight:700;font-size:16.5px;line-height:1.35}
.m-casekv{margin:0;display:grid;gap:6px;font-size:14px;line-height:1.5;color:var(--pb-ink)}
.m-casekv dt{font-family:var(--pb-head);font-weight:700;font-size:11.5px;letter-spacing:.08em;text-transform:uppercase;color:var(--pb-muted)}
.m-casekv dd{margin:0 0 4px}
.m-casecard__b .m-more{margin-top:auto}
.m-review{display:flex;flex-direction:column;gap:12px;padding:20px 22px}
.m-review__who{display:flex;align-items:center;gap:12px}
.m-avatar{flex:0 0 42px;width:42px;height:42px;border-radius:50%;background:var(--pb-navy);color:#fff;display:inline-flex;align-items:center;justify-content:center;font-family:var(--pb-head);font-weight:700;font-size:15px}
.m-review__nm{font-family:var(--pb-head);font-weight:700;font-size:15px;color:var(--pb-navy)}
.m-review__mt{font-size:13px;color:var(--pb-muted)}
.m-review__q{margin:0;font-size:15.5px;line-height:1.65;color:var(--pb-ink)}
.m-review__q p{margin:0 0 .7em}
.m-review__q p:last-child{margin:0}
.m-review .m-stars svg{width:16px;height:16px}
.m-record{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:12px;margin:0;padding:0;list-style:none}
.m-record li{margin:0}
.ar26 .m-record a{display:block;text-decoration:none;color:var(--pb-navy);border:1px solid var(--pb-line-2);border-radius:8px;overflow:hidden;background:#fff;box-shadow:var(--pb-shadow);transition:transform .2s var(--m-ease),box-shadow .2s}
.m-record a:hover{transform:translateY(-3px);box-shadow:var(--pb-shadow-lift)}
.m-record img{display:block;width:100%;aspect-ratio:4/5;object-fit:cover;object-position:top;border-bottom:1px solid var(--pb-line)}
.m-record b{display:block;padding:8px 10px;font-family:var(--pb-head);font-size:12.5px;font-weight:600;line-height:1.35}
.m-record__h{display:flex;align-items:center;gap:10px;margin:26px 0 12px}
.m-record__h h3{font-family:var(--pb-head);font-weight:700;font-size:16px}
@media (max-width:1024px){.m-record{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media (max-width:767px){.m-record{grid-template-columns:repeat(2,minmax(0,1fr))}.m-review{padding:16px}}

/* ================================================================== 19. form messages (the Elementor-form shim and the callback form) */
.ar26 .ar-form-msg{grid-column:1/-1;margin:4px 0 0;padding:12px 14px;border-radius:var(--pb-r-ctl);font-size:14.5px;line-height:1.5}
.ar26 .ar-form-msg.elementor-message-success{background:var(--pb-green-tint);border:1px solid var(--pb-green-edge);color:#176B45}
.ar26 .ar-form-msg.elementor-message-danger{background:var(--pb-red-tint);border:1px solid var(--pb-red-edge);color:var(--pb-red)}
.ar26 .ar-field-error{display:block;margin:4px 0 0;font-size:13px;color:var(--pb-red)}

/* ================================================================== 21. /book-consultation/ (1 Oct 2026): the light callback form and the "Pick a time" slot */
.pb-err{margin:0;font-size:13px;line-height:1.45;color:var(--pb-red)}
.pb-err[hidden]{display:none}
.pb-hp{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}
.pb-ok{margin:0;padding:14px 16px;border-radius:var(--pb-r-ctl);background:var(--pb-green-tint);border:1px solid var(--pb-green-edge);color:#176B45;font-size:15px;line-height:1.5}
.pb-ok[hidden]{display:none}
/* 3 Oct 2026 (owner): the marked box sits straight under the lead, full width, with the call-back form inside it while
   booking is off; with booking live src/booking-inline.js swaps the whole box for the calendar (.bk-inline) */
.m-pagehead--book .m-slot,.m-pagehead--book .bk-inline{margin-top:24px}
.m-slot .pb-sheet__h svg{color:var(--pb-muted)}
.m-slot__intro{margin:0 0 18px;font-size:15px;line-height:1.55;color:var(--pb-muted)}
.m-slot__alt{margin:14px 0 0;font-size:15px;line-height:1.55;color:var(--pb-muted)}
.m-stack--book{gap:28px}

/* ================================================================== 22. the Guides section (2 Oct 2026): /guides/ and the two category pages are three views of one
   page, on the light "news" design the owner preferred. The Guides bar under the header: Latest, Google Ads policy and PPC
   guides (with their counts) swap the H1, the lead and the list in place without moving the page (ar-site-2026.js,
   section 6; without JavaScript they are links to the three addresses); after a hairline, FAQ, Case studies and
   Testimonials are ordinary links to their own pages, which carry the same bar. Then a featured guide, the guides newest
   first, and the "Popular" sidebar. */
.g-bar{background:var(--pb-paper);border-bottom:1px solid var(--pb-line-2)}
.g-bar .shell{display:flex;align-items:stretch;gap:18px;min-height:52px}
.g-bar__who{display:flex;align-items:center;gap:8px;font-size:11.5px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--pb-teal-ink);white-space:nowrap;padding-right:18px;border-right:1px solid var(--pb-line-2)}
.g-bar__who svg{width:15px;height:15px}
.g-bar__nav{display:flex;align-items:stretch;min-width:0;flex:1 1 auto;overflow-x:auto;overscroll-behavior-x:contain;scrollbar-width:none}
.g-bar__nav::-webkit-scrollbar{display:none}
.g-bar__tabs{display:flex;flex:0 0 auto;gap:2px;margin:0;padding:0;list-style:none}
.g-bar__tabs li{display:flex;margin:0}
.g-bar__pages{position:relative;margin-left:10px;padding-left:10px}
.g-bar__pages::before{content:"";position:absolute;left:0;top:50%;height:20px;margin-top:-10px;border-left:1px solid var(--pb-line-2)}
.ar26 .g-bar__tabs a{display:inline-flex;align-items:center;gap:8px;padding:0 13px;min-height:52px;color:var(--pb-muted);text-decoration:none;font-family:var(--pb-head);font-weight:600;font-size:14.5px;border-bottom:3px solid transparent;margin-bottom:-1px;white-space:nowrap;transition:color .15s,border-color .15s}
.ar26 .g-bar__tabs a:hover{color:var(--pb-navy)}
.ar26 .g-bar__tabs a[aria-current]{color:var(--pb-navy);border-bottom-color:var(--pb-navy)}
.ar26 .g-bar__tabs a:focus-visible{outline-offset:-3px}
.g-bar__n{display:inline-flex;align-items:center;justify-content:center;min-width:22px;height:20px;padding:0 6px;border-radius:999px;background:var(--pb-grey-tint);font-size:11.5px;font-weight:700;color:var(--pb-muted);transition:background-color .15s,color .15s}
.ar26 .g-bar__tabs a[aria-current] .g-bar__n{background:var(--pb-navy);color:#fff}
/* a view still on its way (slow networks only: the script fetches the other two ahead) dims after a moment */
[data-g-head][aria-busy="true"],.g-main[aria-busy="true"]{opacity:.55;transition:opacity .2s .15s}
.g-head{padding:34px 0 30px}
.g-intro{margin:-4px 0 20px;max-width:70ch;font-size:15.5px;line-height:1.65;color:var(--pb-ink)}  /* Latest's "Popular reads" line, on top of its list */
.ar26 .g-intro a{color:var(--pb-navy);text-decoration-color:rgba(2,17,39,.35)}
.g-sec{padding-top:40px}
.g-title{font-family:var(--pb-serif);font-weight:600;font-size:24px;line-height:1.25;margin:0 0 18px!important}
.g-feat{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);overflow:hidden;margin:0 0 18px}
.g-feat__img{display:block;background:#0A1A33}
.g-feat__img img{display:block;width:100%;height:100%;object-fit:cover;aspect-ratio:16/9}
.g-feat__b{padding:20px 22px;display:flex;flex-direction:column;gap:8px}
.g-feat__b .m-eyebrow{margin:0;color:var(--pb-teal-ink)}
.g-feat__b h3{font-family:var(--pb-head);font-weight:700;font-size:19px;line-height:1.35;letter-spacing:-.01em}
.ar26 .g-feat__b h3 a{color:var(--pb-navy);text-decoration:none}
.ar26 .g-feat__b h3 a:hover{text-decoration:underline}
.g-feat__b p{margin:0;font-size:14.5px;line-height:1.6;color:var(--pb-muted)}
.g-feat__b .g-feat__go{margin-top:auto;padding-top:6px}
.g-cards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin:0;padding:0;list-style:none}
.g-cards li{margin:0}
.g-cards li[hidden]{display:none}
.g-card .m-guide__k{color:var(--pb-teal-ink)}
.g-card b{font-size:15px}
.g-foot{display:flex;flex-direction:column;align-items:flex-start;gap:10px;margin:22px 0 0}
.g-foot .pb-btn[hidden]{display:none}
.g-count{margin:0;font-size:14px;color:var(--pb-muted)}
.g-side{padding:0;overflow:hidden}
.g-side__h{font-family:var(--pb-serif);font-weight:600;font-size:18px;line-height:1.3;padding:16px 18px 10px;border-bottom:1px solid var(--pb-line)}
.g-plist{list-style:none;margin:0;padding:6px 10px 10px}
.g-plist li{margin:0}
.g-plist li+li{border-top:1px solid var(--pb-line)}
.ar26 .g-plist a{display:flex;gap:12px;align-items:center;padding:9px 8px;border-radius:8px;text-decoration:none;color:var(--pb-navy)}
.ar26 .g-plist a:hover{background:var(--pb-paper-2)}
.g-plist img{flex:0 0 76px;width:76px;height:43px;object-fit:cover;border-radius:6px;background:#0A1A33}
.g-plist span{display:flex;flex-direction:column;gap:2px;min-width:0}
.g-plist b{font-family:var(--pb-head);font-size:13.5px;font-weight:600;line-height:1.35;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.g-plist time{font-size:12px;color:var(--pb-muted)}
.g-checks{list-style:none;margin:0;padding:6px 18px 16px;display:grid;gap:14px}
.g-checks li{margin:0;padding-top:10px}
.g-checks li+li{border-top:1px solid var(--pb-line)}
.g-checks p{margin:0 0 10px;font-size:14px;line-height:1.55;color:var(--pb-muted)}
.g-checks b{color:var(--pb-navy);font-weight:700;font-family:var(--pb-head)}
@media (max-width:1024px){.g-feat{grid-template-columns:minmax(0,1fr)}.g-aside{order:2}}
@media (max-width:767px){
 .g-bar__who{display:none}
 .g-bar .shell{padding-right:0}
 .ar26 .g-bar__tabs a{padding:0 11px;font-size:14px;min-height:48px}
 .g-bar__pages{margin-left:6px;padding-left:6px}
 .g-head{padding:24px 0 22px}
 .g-cards{grid-template-columns:minmax(0,1fr);gap:10px}
 .g-feat__b{padding:16px}
}

/* ================================================================== 23. pages moved into the frame with their content unchanged (2 Oct 2026, tools/site2026/legacy.py):
   the guide-like pages, the legal pages, the 404, the category archives, the shop and the old product pages */
.m-sec--legacy{padding-top:40px}
.m-legacy{max-width:760px}
.m-legacy > h2:not(:first-child){margin-top:1.7em}
.m-legacy > h2 + h3{margin-top:.6em}
.m-legacy blockquote{margin:1.2em 0;padding:4px 0 4px 18px;border-left:3px solid var(--pb-line-2);color:var(--pb-ink)}
.m-legacy table{width:100%;border-collapse:collapse;margin:0 0 1.2em;font-size:15px;background:#fff;border:1px solid var(--pb-line);border-radius:var(--pb-r-sheet);overflow:hidden}
.m-legacy th{font-family:var(--pb-head);font-size:11.5px;letter-spacing:.09em;text-transform:uppercase;font-weight:700;color:var(--pb-muted);background:var(--pb-paper-2);text-align:left;padding:11px 14px;border-bottom:1px solid var(--pb-line)}
.m-legacy td{padding:12px 14px;border-bottom:1px solid var(--pb-line);line-height:1.55;vertical-align:top;color:var(--pb-ink)}
.m-legacy tr:last-child td{border-bottom:0}
.m-legacy .arpr-lede{font-size:19px;line-height:1.6}
.m-legacy .arpr-price{font-family:var(--pb-head);font-weight:800;font-size:18px;color:var(--pb-navy);white-space:nowrap}
.m-legacy .arpr-who{display:block;font-size:14px;color:var(--pb-muted);margin-top:3px}
.m-legacy .arpr-small{font-size:14.5px;color:var(--pb-muted)}
.m-legacy .arpr-cta{margin:24px 0 8px}
.ar26 .m-legacy a.arpr-btn{display:inline-flex;align-items:center;min-height:46px;padding:10px 20px;border-radius:var(--pb-r-ctl);background:var(--pb-navy);color:#fff;font-family:var(--pb-head);font-weight:700;font-size:15px;text-decoration:none}
.ar26 .m-legacy a.arpr-btn:hover{background:var(--pb-navy-2);color:#fff}
@media (max-width:640px){
 .m-legacy .arpr-table thead{display:none}
 .m-legacy .arpr-table,.m-legacy .arpr-table tbody,.m-legacy .arpr-table tr,.m-legacy .arpr-table td{display:block;width:100%}
 .m-legacy .arpr-table tr{border-bottom:1px solid var(--pb-line);padding:6px 0}
 .m-legacy .arpr-table tr:last-child{border-bottom:0}
 .m-legacy .arpr-table td{border:0;padding:6px 14px}
 .m-legacy .arpr-table td[data-label]::before{content:attr(data-label);display:block;font-family:var(--pb-head);font-size:11px;font-weight:700;letter-spacing:.09em;text-transform:uppercase;color:var(--pb-muted);margin-bottom:2px}
}
.m-404{padding:72px 0 84px}
.m-404 .m-lead{max-width:62ch}
/* category archives: light_shell.post_card() cards (the listing contract of tools/new_article.py), drawn as a grid */
.m-catdesc{margin:0;font-size:17px;color:var(--pb-ink)}
.m-catdesc p{margin:0}
.m-catlist{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin:0;padding:0;list-style:none}
.m-catlist li{margin:0}
.ar26 .m-catlist a{display:flex;gap:14px;align-items:center;height:100%;padding:10px 14px 10px 10px;border:1px solid var(--pb-line);border-radius:var(--pb-r-sheet);background:#fff;box-shadow:var(--pb-shadow);color:var(--pb-navy);text-decoration:none;transition:transform .2s var(--m-ease),box-shadow .2s}
.ar26 .m-catlist a:hover{transform:translateY(-2px);box-shadow:var(--pb-shadow-lift)}
.m-catlist img{flex:0 0 128px;width:128px;height:72px;object-fit:cover;border-radius:6px;background:#0A1A33}
.m-catlist span{display:flex;flex-direction:column;gap:4px;min-width:0}
.m-catlist b{font-family:var(--pb-head);font-size:15px;font-weight:600;line-height:1.4}
.m-catlist time{font-size:12.5px;color:var(--pb-muted)}
.m-pager{margin:26px 0 0}
.m-pager ul{display:flex;flex-wrap:wrap;gap:6px;margin:0;padding:0;list-style:none}
.m-pager li{margin:0}
.ar26 .m-pager a{display:inline-flex;align-items:center;justify-content:center;min-width:42px;height:42px;padding:0 10px;border:1px solid var(--pb-line-2);border-radius:8px;background:#fff;color:var(--pb-navy);font-family:var(--pb-head);font-weight:700;text-decoration:none}
.ar26 .m-pager a:hover{border-color:var(--pb-navy)}
.ar26 .m-pager a[aria-current]{background:var(--pb-navy);border-color:var(--pb-navy);color:#fff}
@media (max-width:767px){.m-catlist{grid-template-columns:minmax(0,1fr);gap:10px}.m-catlist img{flex-basis:92px;width:92px;height:62px}}
/* the shop and product-category grids */
.m-crumb{font-size:13.5px;color:var(--pb-muted);margin:0 0 10px}
.m-prods{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin:0;padding:0;list-style:none}
.m-prods li{margin:0;display:flex;flex-direction:column;gap:10px}
.ar26 .m-prod{display:flex;flex-direction:column;overflow:hidden;text-decoration:none;color:var(--pb-navy);transition:transform .2s var(--m-ease),box-shadow .2s}
.ar26 .m-prod:hover{transform:translateY(-2px);box-shadow:var(--pb-shadow-lift)}
.m-prod img{display:block;width:100%;aspect-ratio:1/1;object-fit:cover;background:#0A1A33}
.m-prod__b{padding:14px 16px;display:flex;flex-direction:column;gap:4px}
.m-prod__b b{font-family:var(--pb-head);font-size:16px;font-weight:700;line-height:1.35}
.m-prod__p{font-family:var(--pb-head);font-size:18px;font-weight:800;color:var(--pb-navy)}
.m-prods .m-prod__buy{align-self:flex-start}
@media (max-width:1024px){.m-prods{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:767px){.m-prods{grid-template-columns:minmax(0,1fr)}}
/* the old product pages: their widgets in order */
.m-product{max-width:860px}
.m-product > p,.m-product > ul,.m-product > ol{max-width:68ch}
.m-prodimg{margin:0 0 22px}
.m-prodimg img{display:block;width:min(100%,360px);height:auto;border-radius:var(--pb-r-sheet);border:1px solid var(--pb-line)}
.m-prodprice{font-family:var(--pb-head);font-size:40px!important;font-weight:800;color:var(--pb-navy)!important;letter-spacing:-.02em;line-height:1.1;margin:10px 0 14px!important}
.m-prodprice .woocommerce-Price-currencySymbol{font-size:.8em}
.m-prodcta{margin:0 0 10px}
.m-prodnote p,.m-product .ar-commerce-phone{font-size:14.5px;color:var(--pb-muted)}
.m-prodfeats{margin:18px 0 26px}
.m-prodreviews{margin:14px 0 26px}
.m-product > h2{margin-top:1.5em}
.m-product .m-feat p{max-width:none}

/* ================================================================== 20. reveal on scroll: 8px rise and fade, once. Only when the head script set .ar26-rv (IntersectionObserver
   present, motion allowed); .rv-off shows everything (the page script's fallback, and the 4-second safety net). */
.ar26-rv .rv{opacity:0;transform:translateY(8px);transition:opacity .5s var(--m-ease),transform .5s var(--m-ease)}
.ar26-rv .rv.is-in,.rv-off .rv{opacity:1;transform:none}

@media (prefers-reduced-motion:reduce){
 .ar26 *,.ar26 *::before,.ar26 *::after{transition:none!important;animation:none!important;scroll-behavior:auto!important}
 html{scroll-behavior:auto}
 .m-svc:hover,.m-guide:hover,.m-emails a:hover,.m-ccard:hover,.m-casecard:hover,.m-record a:hover{transform:none}
 .m-svc:hover .pb-chip,.m-more:hover svg,.m-svc:hover .m-more svg{transform:none}
 .m-hero__birds{display:none}
 .rv{opacity:1;transform:none}
 .site-menu__svc > summary svg{transition:none}
}
@media print{.site-top,.site-menu,.m-buybar,.m-hero__birds{display:none}.site-head{position:static}}

/* 4 Oct 2026, owner: the slight lift on hover must also work on cards that use the reveal animation. ".ar26-rv .rv.is-in"
   resets transform after the reveal and out-ranked the old ".m-svc:hover" rule, so price cards never lifted. */
.m-ev,.m-featart{transition:transform .2s var(--m-ease),box-shadow .2s var(--m-ease),border-color .2s}
.m-svc:hover,.m-guide:hover,.m-casecard:hover,.m-ccard:hover,.m-ev:hover,.m-featart:hover,
.ar26-rv .rv.is-in:is(.m-svc,.m-guide,.m-casecard,.m-ccard,.m-ev,.m-featart):hover,
.ar26-rv .rv.is-in :is(.m-ev,.m-featart):hover{transform:translateY(-4px);box-shadow:var(--pb-shadow-lift);border-color:var(--pb-line-2)}
@media (prefers-reduced-motion:reduce){
  .m-svc:hover,.m-guide:hover,.m-casecard:hover,.m-ccard:hover,.m-ev:hover,.m-featart:hover,
  .ar26-rv .rv.is-in:is(.m-svc,.m-guide,.m-casecard,.m-ccard,.m-ev,.m-featart):hover,
  .ar26-rv .rv.is-in :is(.m-ev,.m-featart):hover{transform:none}
}

/* 4 Oct 2026: the Vanta birds now also run on phones and tablets (fewer and smaller, see ar-site-2026.js section 4); a
   lighter touch there so they never compete with the hero text. */
@media (max-width:767px){.m-hero__birds.is-live{opacity:.45}}

/* 4 Oct 2026, owner: when a phone or trackpad over-scrolls past the top or bottom, the gap showed white above the navy
   header and below the navy footer. The page canvas is now the header/footer navy on every page that has the site footer;
   each body keeps its own explicit light background (body.ar26 here, body in site-light-article.css), so content is
   unchanged. Browsers without :has() keep the old white. */
html:has(.site-foot){background:#021127}
