#gmp{--brand:#2e3a8c;--brand-700:#232d70;--brand-900:#141a45;--accent:#4f6bff;--tint:#eef1fb;--tint-2:#f6f8fd;--b-rgb:46,58,140;--a-rgb:79,107,255;--edge:#d9dff5;--edge-2:#cfd6f2;--glow:#e3e8ff;--on-dark:#c9cff0;--on-dark-2:#cdd3f5;--on-dark-3:#b9c0e6;--on-dark-4:#dfe4ff;--on-dark-5:#8d95c4;--spark:#8f9cff;--deep:#3d4fc0;--logo:#2a2ba6;--outline:#1f2f6e;--green:#10b981;--green-tint:#e7f8f1;--ink:#141a33;--muted:#5a6280;--line:#e3e7f2;--radius:18px;--shadow:0 1px 2px rgba(20,26,69,.04),0 8px 24px rgba(20,26,69,.06);--shadow-lg:0 2px 4px rgba(20,26,69,.05),0 24px 48px rgba(20,26,69,.12);font-family:"Poppins",system-ui,sans-serif;color:var(--ink);background:#fff;line-height:1.6;font-size:16px;-webkit-font-smoothing:antialiased}
/* Cancel leftover Elementor kit typography (e.g. .elementor-kit-49 h2 on Crighton) inside the theme. :where keeps this at ID-only priority, so every theme rule still wins. */
#gmp :where(h1,h2,h3,h4,h5,h6,a){color:revert;font-family:revert;font-size:revert;font-weight:revert}
#gmp *,#gmp *::before,#gmp *::after{box-sizing:border-box}
#gmp img{max-width:100%;display:block}
#gmp a{color:inherit;text-decoration:none}
#gmp h1,#gmp h2,#gmp h3,#gmp h4,#gmp p{margin:0}
#gmp .wrap{max-width:1200px;margin:0 auto;padding:0 20px}
#gmp .grad{background:linear-gradient(90deg,var(--brand),var(--accent));-webkit-background-clip:text;background-clip:text;color:transparent}
#gmp .eyebrow{display:inline-flex;align-items:center;gap:8px;font-size:12px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--brand);background:var(--tint);border:1px solid var(--edge);padding:6px 14px;border-radius:999px}
#gmp .eyebrow i{width:6px;height:6px;border-radius:50%;background:var(--accent)}
#gmp .btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;font-weight:600;font-size:15px;padding:14px 24px;border-radius:12px;transition:transform .15s,box-shadow .15s,background .15s;min-height:48px;white-space:nowrap}
#gmp .btn:hover{transform:translateY(-1px)}
#gmp .btn-primary{background:var(--brand);color:#fff;box-shadow:0 8px 20px rgba(var(--b-rgb),.28)}
#gmp .btn-primary:hover{background:var(--brand-700)}
#gmp .btn-ghost{background:#fff;color:var(--brand);border:1.5px solid var(--edge-2)}
#gmp .btn-ghost:hover{border-color:var(--brand)}
#gmp .btn-white{background:#fff;color:var(--brand)}
#gmp .btn-outline-white{border:1.5px solid rgba(255,255,255,.5);color:#fff}
#gmp svg.ic{width:22px;height:22px;flex:none}
#gmp .sec{padding:96px 0}
#gmp .sec-head{text-align:center;max-width:720px;margin:0 auto 56px}
#gmp .sec-head h2{font-size:clamp(28px,4vw,42px);line-height:1.15;font-weight:700;margin:16px 0 14px;letter-spacing:-.02em}
#gmp .sec-head p{color:var(--muted);font-size:17px}
/* top bar + header */
#gmp .topbar{background:var(--brand-900);color:var(--on-dark);font-size:13px}
#gmp .topbar .wrap{display:flex;justify-content:space-between;align-items:center;gap:16px;min-height:40px;flex-wrap:wrap}
#gmp .topbar span{display:inline-flex;align-items:center;gap:8px}
#gmp .topbar svg{width:15px;height:15px;color:var(--spark)}
#gmp .topbar .tb-left{display:flex;gap:24px;flex-wrap:wrap}
#gmp .open-dot{width:8px;height:8px;border-radius:50%;background:#9aa3c7;display:inline-block}
#gmp .open-dot.on{background:var(--green);box-shadow:0 0 0 4px rgba(16,185,129,.2)}
#gmp header.hd{position:sticky;top:0;z-index:50;background:rgba(255,255,255,.92);backdrop-filter:saturate(1.4) blur(10px);border-bottom:1px solid var(--line)}
#gmp header.hd .wrap{display:flex;align-items:center;justify-content:space-between;gap:20px;min-height:78px}
#gmp .logo{flex:none}#gmp .logo img{height:58px;width:auto;margin:-6px 0}
#gmp nav.main{display:flex;gap:2px;align-items:center;height:78px}
#gmp .nv{position:relative;height:100%;display:flex;align-items:center}
#gmp .nv-top{display:inline-flex;align-items:center;gap:4px;font-size:15px;font-weight:500;color:#39406a;padding:10px 12px;white-space:nowrap;border-radius:10px;transition:background .15s,color .15s}
#gmp .nv:hover .nv-top,#gmp .nv:focus-within .nv-top{background:var(--tint);color:var(--brand)}
#gmp .chev{width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:2.2;stroke-linecap:round;stroke-linejoin:round;transition:transform .2s}
#gmp .nv:hover .chev,#gmp .nv:focus-within .chev{transform:rotate(180deg)}
#gmp .mega{position:absolute;top:calc(100% - 6px);left:50%;transform:translate(-50%,8px);background:#fff;border:1px solid var(--line);border-radius:20px;box-shadow:0 24px 60px rgba(20,26,69,.16);padding:22px;opacity:0;visibility:hidden;transition:opacity .18s,transform .18s,visibility .18s;z-index:70}
#gmp .mega::before{content:"";position:absolute;left:0;right:0;top:-14px;height:14px}
#gmp .nv:hover .mega,#gmp .nv:focus-within .mega{opacity:1;visibility:visible;transform:translate(-50%,0)}
#gmp .mega-wide{width:min(940px,92vw);display:grid;grid-template-columns:repeat(var(--cols,3),1fr);gap:8px;left:0;transform:translate(-30%,8px)}
#gmp .nv:hover .mega-wide,#gmp .nv:focus-within .mega-wide{transform:translate(-30%,0)}
#gmp .mega-sm{width:330px}
#gmp .mega-md{width:460px}
#gmp .mega-h{display:block;font-size:11.5px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:#8a91b3;padding:4px 10px 10px}
#gmp .mega-col a{display:flex;gap:12px;align-items:center;padding:10px;border-radius:12px;transition:background .15s}
#gmp .mega-col a:hover{background:var(--tint-2)}
#gmp .mega-col a b{display:block;font-size:14.5px;font-weight:600;color:var(--ink);line-height:1.3}
#gmp .mega-col a small{display:block;font-size:12.5px;color:var(--muted);margin-top:2px}
#gmp .mi{width:36px;height:36px;border-radius:10px;display:grid;place-items:center;flex:none}
#gmp .mi svg{width:18px;height:18px}
#gmp .mega .mega-cta{display:block;margin-top:10px;background:linear-gradient(135deg,var(--brand),var(--accent));color:#fff;border-radius:14px;padding:16px}
#gmp .mega .mega-cta:hover{background:linear-gradient(135deg,var(--brand-700),var(--brand))}
#gmp .mega .mega-cta b{color:#fff}
#gmp .mega .mega-cta small{color:var(--on-dark-4);margin:4px 0 10px}
#gmp .mega .mega-cta span{display:inline-flex;align-items:center;gap:6px;font-weight:600;font-size:13.5px}
#gmp .mega-cta svg,#gmp .mega-all svg{width:15px;height:15px}
#gmp .mega-all{display:flex;align-items:center;gap:6px;margin-top:10px;padding:12px 10px 4px;border-top:1px solid var(--line);font-size:13.5px;font-weight:600;color:var(--brand)}
#gmp .vgrid{display:grid;grid-template-columns:1fr 1fr;gap:2px}
#gmp .vgrid a{font-size:14px;font-weight:500;color:#39406a;padding:9px 10px;border-radius:10px;display:flex;align-items:center;gap:8px}
#gmp .vgrid a::before{content:"";width:6px;height:6px;border-radius:50%;background:var(--spark);flex:none}
#gmp .vgrid a:hover{background:var(--tint-2);color:var(--brand)}
#gmp .hd-cta{display:flex;gap:12px;align-items:center}
#gmp .hd-phone{display:flex;align-items:center;gap:10px;font-weight:600;color:var(--ink);font-size:15px;line-height:1.2;white-space:nowrap}
#gmp .ph-ic{width:40px;height:40px;border-radius:12px;background:var(--tint);color:var(--brand);display:grid;place-items:center}
#gmp .ph-ic svg{width:18px;height:18px}
#gmp .ph-txt small{display:block;font-size:11.5px;color:var(--muted);font-weight:500}
#gmp .burger{display:none;width:44px;height:44px;border-radius:12px;border:1px solid var(--line);background:#fff;cursor:pointer;flex-direction:column;justify-content:center;align-items:center;gap:5px;padding:0}
#gmp .burger span{width:20px;height:2px;border-radius:2px;background:var(--ink);display:block}
#gmp .drawer{position:fixed;inset:0;z-index:100;visibility:hidden}
#gmp .drawer.open{visibility:visible}
#gmp .drawer-bg{position:absolute;inset:0;background:rgba(14,18,48,.45);opacity:0;transition:opacity .25s}
#gmp .drawer.open .drawer-bg{opacity:1}
#gmp .drawer-panel{position:absolute;top:0;right:0;bottom:0;width:min(380px,88vw);background:#fff;padding:18px 20px 28px;overflow-y:auto;transform:translateX(100%);transition:transform .28s ease;display:flex;flex-direction:column}
#gmp .drawer.open .drawer-panel{transform:none}
#gmp .drawer-top{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px}
#gmp .drawer-top img{height:34px;width:auto}
#gmp .drawer-x{width:44px;height:44px;border-radius:12px;border:1px solid var(--line);background:#fff;font-size:26px;line-height:1;cursor:pointer;color:var(--ink)}
#gmp .drawer details{border-bottom:1px solid var(--line)}
#gmp .drawer summary{list-style:none;cursor:pointer;padding:16px 4px;font-weight:600;font-size:16px;display:flex;justify-content:space-between;align-items:center}
#gmp .drawer summary::-webkit-details-marker{display:none}
#gmp .drawer summary::after{content:"";width:9px;height:9px;border-right:2px solid var(--muted);border-bottom:2px solid var(--muted);transform:rotate(45deg);transition:transform .2s;margin-right:6px}
#gmp .drawer details[open] summary::after{transform:rotate(-135deg)}
#gmp .drawer details a{display:block;padding:11px 12px;font-size:15px;color:#39406a;border-radius:10px}
#gmp .drawer details a:hover{background:var(--tint-2)}
#gmp .drawer details[open]{padding-bottom:10px}
#gmp .drawer-link{display:block;padding:16px 4px;font-weight:600;font-size:16px;border-bottom:1px solid var(--line)}
#gmp .drawer-ctas{display:grid;gap:10px;margin-top:auto;padding-top:24px}
/* hero */
#gmp .hero{position:relative;overflow:hidden;background:radial-gradient(1200px 500px at 85% -10%,var(--glow) 0%,transparent 60%),radial-gradient(800px 400px at -10% 110%,#e9f7f1 0%,rgba(233,247,241,0) 60%),var(--tint-2)}
#gmp .hero .wrap{display:grid;grid-template-columns:1.05fr .95fr;gap:56px;align-items:center;padding-top:72px;padding-bottom:88px}
#gmp .hero h1{font-size:clamp(36px,5.4vw,60px);line-height:1.06;font-weight:800;letter-spacing:-.03em;margin:20px 0 20px}
#gmp .hero .lead{font-size:18px;color:var(--muted);max-width:560px}
#gmp .chips{display:flex;flex-wrap:wrap;gap:10px;margin:26px 0 30px}
#gmp .chip{display:inline-flex;align-items:center;gap:8px;background:#fff;border:1px solid var(--line);border-radius:999px;padding:8px 14px;font-size:13.5px;font-weight:500;color:#39406a;box-shadow:0 1px 2px rgba(20,26,69,.04)}
#gmp .chip svg{width:16px;height:16px;color:var(--green)}
#gmp .hero-ctas{display:flex;gap:12px;flex-wrap:wrap}
#gmp .hero-meta{display:flex;gap:28px;margin-top:34px;flex-wrap:wrap}
#gmp .hero-meta div{font-size:13px;color:var(--muted)}
#gmp .hero-meta b{display:block;font-size:22px;color:var(--ink);font-weight:700;letter-spacing:-.01em}
#gmp .hero-visual{position:relative}
#gmp .hero-illo{border-radius:36px;box-shadow:var(--shadow-lg);background:#fff}
#gmp .hero-illo svg{display:block;width:100%;height:auto;border-radius:36px}
#gmp .illo{border-radius:28px;overflow:hidden;box-shadow:var(--shadow-lg)}
#gmp .illo svg{display:block;width:100%;height:auto}
#gmp .float{position:absolute;background:#fff;border-radius:16px;box-shadow:var(--shadow-lg);padding:14px 16px;display:flex;gap:12px;align-items:center;font-size:13px}
#gmp .float b{display:block;font-size:14px;color:var(--ink)}
#gmp .float span{color:var(--muted)}
#gmp .float .fi{width:40px;height:40px;border-radius:12px;display:grid;place-items:center;flex:none}
#gmp .float.f1{left:-28px;bottom:auto;top:40px}
#gmp .float.f2{right:-18px;top:auto;bottom:-22px}
#gmp .fi.g{background:var(--green-tint);color:var(--green)}
#gmp .fi.b{background:var(--tint);color:var(--brand)}
/* quick actions */
#gmp .quick{margin-top:-44px;position:relative;z-index:2}
#gmp .quick-grid{display:grid;grid-template-columns:repeat(6,1fr);gap:14px}
#gmp .q{background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:20px 16px;text-align:center;box-shadow:var(--shadow);transition:transform .15s,box-shadow .15s,border-color .15s}
#gmp .q:hover{transform:translateY(-3px);box-shadow:var(--shadow-lg);border-color:var(--edge-2)}
#gmp .q .qi{width:52px;height:52px;border-radius:14px;display:grid;place-items:center;margin:0 auto 12px;color:#fff}
#gmp .q b{display:block;font-size:14.5px;font-weight:600;line-height:1.3}
#gmp .q span{display:block;font-size:12.5px;color:var(--muted);margin-top:4px}
/* service cards */
#gmp .cards{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}
#gmp .card{background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:28px;box-shadow:var(--shadow);display:flex;flex-direction:column;transition:transform .15s,box-shadow .15s}
#gmp .card:hover{transform:translateY(-3px);box-shadow:var(--shadow-lg)}
#gmp .card .ci{width:54px;height:54px;border-radius:15px;display:grid;place-items:center;margin-bottom:20px}
#gmp .card h3{font-size:19px;font-weight:600;margin-bottom:8px;letter-spacing:-.01em}
#gmp .card p{color:var(--muted);font-size:15px;flex:1}
#gmp .card .meta{display:flex;justify-content:space-between;align-items:center;margin-top:22px;padding-top:18px;border-top:1px solid var(--line)}
#gmp .card .price{font-size:13px;color:var(--muted)}
#gmp .card .price b{color:var(--ink);font-size:16px}
#gmp .card .more{display:inline-flex;align-items:center;gap:6px;font-weight:600;font-size:14px;color:var(--brand)}
#gmp .tag-nhs{font-size:11px;font-weight:700;letter-spacing:.04em;color:#005eb8;background:#e6f0fa;border-radius:6px;padding:3px 8px}
#gmp .c1{background:#e8ecff;color:#3a4fd6}#gmp .c2{background:#e7f8f1;color:#0f9f6e}#gmp .c3{background:#fff2e3;color:#d9770b}#gmp .c4{background:#fde9f1;color:#d23c7a}#gmp .c5{background:#eaf5fd;color:#1b84c7}#gmp .c6{background:#f1ebfe;color:#7a4fe0}
#gmp .g1{background:linear-gradient(135deg,var(--accent),var(--brand))}#gmp .g2{background:linear-gradient(135deg,#34d399,#0f9f6e)}#gmp .g3{background:linear-gradient(135deg,#fbbf24,#ea7a0b)}#gmp .g4{background:linear-gradient(135deg,#f472b6,#d23c7a)}#gmp .g5{background:linear-gradient(135deg,#38bdf8,#1b6fc7)}#gmp .g6{background:linear-gradient(135deg,#a78bfa,#6d3fd8)}
/* feature split */
#gmp .split{display:grid;grid-template-columns:1fr 1fr;gap:64px;align-items:center}
#gmp .split h2{font-size:clamp(28px,3.6vw,40px);line-height:1.15;font-weight:700;letter-spacing:-.02em;margin:16px 0 16px}
#gmp .split .lead{color:var(--muted);font-size:17px}
#gmp .ticks{list-style:none;padding:0;margin:26px 0 30px;display:grid;gap:12px}
#gmp .ticks li{display:flex;gap:12px;align-items:flex-start;font-size:15.5px}
#gmp .ticks li svg{width:22px;height:22px;color:var(--green);flex:none;margin-top:1px}
#gmp .media{border-radius:26px;overflow:hidden;box-shadow:var(--shadow-lg);position:relative;background:var(--tint)}
#gmp .media img{width:100%;height:100%;object-fit:cover}
#gmp .bg-tint{background:var(--tint-2)}
/* price table */
#gmp .ptable{background:#fff;border-radius:22px;box-shadow:var(--shadow-lg);overflow:hidden;border:1px solid var(--line)}
#gmp .ptable .ph{background:linear-gradient(90deg,var(--brand),var(--accent));color:#fff;padding:20px 26px;display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap}
#gmp .ptable .ph b{font-size:17px;font-weight:600;display:flex;align-items:center;gap:10px}
#gmp .ptable .ph span{font-size:12.5px;background:rgba(255,255,255,.18);padding:6px 12px;border-radius:999px}
#gmp .prow{display:flex;justify-content:space-between;align-items:center;gap:16px;padding:20px 26px;border-top:1px solid var(--line)}
#gmp .prow:first-of-type{border-top:0}
#gmp .prow h4{font-size:16px;font-weight:600}
#gmp .prow p{font-size:13.5px;color:var(--muted);margin-top:2px}
#gmp .prow .amt{font-size:22px;font-weight:700;color:var(--brand);white-space:nowrap;text-align:right}
#gmp .prow .amt small{display:block;font-size:12px;font-weight:500;color:var(--muted)}
#gmp .pfoot{padding:16px 26px;background:var(--tint-2);font-size:13px;color:var(--muted);border-top:1px solid var(--line)}
/* weight band */
#gmp .wl{background:linear-gradient(135deg,var(--brand-900),var(--brand) 60%,var(--deep));color:#fff;border-radius:32px;padding:64px;display:grid;grid-template-columns:1.1fr .9fr;gap:48px;align-items:center;position:relative;overflow:hidden}
#gmp .wl::after{content:"";position:absolute;width:520px;height:520px;border-radius:50%;background:radial-gradient(circle,rgba(var(--a-rgb),.45),rgba(var(--a-rgb),0) 70%);right:-160px;top:-200px}
#gmp .wl > *{position:relative;z-index:1}
#gmp .wl .eyebrow{background:rgba(255,255,255,.1);border-color:rgba(255,255,255,.2);color:var(--on-dark-4)}
#gmp .wl .eyebrow i{background:#7dd3b0}
#gmp .wl h2{font-size:clamp(28px,3.6vw,40px);line-height:1.15;font-weight:700;margin:16px 0;letter-spacing:-.02em}
#gmp .wl p{color:var(--on-dark-2);font-size:16.5px}
#gmp .wl-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin:30px 0}
#gmp .wl-stats div{background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.14);border-radius:16px;padding:16px}
#gmp .wl-stats b{display:block;font-size:20px;font-weight:700}
#gmp .wl-stats span{font-size:12.5px;color:var(--on-dark-2)}
#gmp .wl-img{background:#fff;border-radius:24px;padding:26px;display:grid;place-items:center;box-shadow:0 30px 60px rgba(0,0,0,.25)}
#gmp .wl-img img{max-height:340px;width:auto}
#gmp .wl-meds{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:28px}
#gmp .wl-meds a{font-size:13px;font-weight:500;background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.2);border-radius:999px;padding:7px 14px}
#gmp .wl-meds a:hover{background:rgba(255,255,255,.2)}
/* travel */
#gmp .vchips{display:flex;flex-wrap:wrap;gap:8px;margin:24px 0 30px}
#gmp .vchips span,#gmp .vchips a{font-size:13px;font-weight:500;background:#fff;border:1px solid var(--line);border-radius:10px;padding:7px 12px;color:#39406a}
#gmp .travel-media{aspect-ratio:4/3.2}
#gmp .travel-media .badge{position:absolute;left:20px;bottom:20px;background:#fff;border-radius:14px;padding:12px 16px;box-shadow:var(--shadow-lg);font-size:13px;display:flex;gap:10px;align-items:center}
#gmp .travel-media .badge b{display:block;font-size:14px}
/* steps */
#gmp .steps{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;counter-reset:s}
#gmp .steps>.step{background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:30px;box-shadow:var(--shadow);position:relative}
#gmp .steps>.step .n{width:40px;height:40px;border-radius:50%;background:var(--brand);color:#fff;font-weight:700;display:grid;place-items:center;margin-bottom:18px}
#gmp .steps>.step h3{font-size:18px;font-weight:600;margin-bottom:8px}
#gmp .steps>.step p{color:var(--muted);font-size:15px}
/* team */
#gmp .team{display:grid;grid-template-columns:.9fr 1.1fr;gap:56px;align-items:center}
#gmp .team-photo{aspect-ratio:4/4.3;border-radius:26px;overflow:hidden;box-shadow:var(--shadow-lg)}
#gmp .team-photo img{width:100%;height:100%;object-fit:cover;object-position:60% 25%}
#gmp .creds{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-top:28px}
#gmp .cred{background:#fff;border:1px solid var(--line);border-radius:16px;padding:18px;box-shadow:var(--shadow)}
#gmp .cred span{font-size:12px;color:var(--muted);text-transform:uppercase;letter-spacing:.06em;font-weight:600}
#gmp .cred b{display:block;font-size:16px;margin-top:4px}
/* visit */
#gmp .visit{display:grid;grid-template-columns:1fr 1.2fr;gap:28px;align-items:stretch}
#gmp .vcard{background:#fff;border:1px solid var(--line);border-radius:22px;padding:32px;box-shadow:var(--shadow)}
#gmp .vcard h3{font-size:20px;font-weight:600;margin-bottom:18px}
#gmp .hours{width:100%;border-collapse:collapse;font-size:15px}
#gmp .hours td{padding:10px 0;border-bottom:1px dashed var(--line)}
#gmp .hours td:last-child{text-align:right;font-weight:500}
#gmp .hours tr.today td{color:var(--brand);font-weight:700}
#gmp .hours tr.today td:first-child::after{content:" Today";font-size:11px;background:var(--tint);color:var(--brand);padding:2px 8px;border-radius:999px;margin-left:8px;font-weight:600}
#gmp .vlist{display:grid;gap:16px;margin-top:24px}
#gmp .vlist a,#gmp .vlist div{display:flex;gap:14px;align-items:flex-start;font-size:15px}
#gmp .vlist .vi{width:42px;height:42px;border-radius:12px;background:var(--tint);color:var(--brand);display:grid;place-items:center;flex:none}
#gmp .vlist small{display:block;color:var(--muted);font-size:12.5px}
#gmp .map{border-radius:22px;overflow:hidden;box-shadow:var(--shadow);min-height:420px;border:1px solid var(--line)}
#gmp .map iframe{width:100%;height:100%;min-height:420px;border:0;display:block}
/* faq */
#gmp .faq{max-width:820px;margin:0 auto;display:grid;gap:12px}
#gmp .faq details{background:#fff;border:1px solid var(--line);border-radius:16px;padding:0 24px;box-shadow:var(--shadow)}
#gmp .faq summary{cursor:pointer;list-style:none;padding:20px 0;font-weight:600;font-size:16px;display:flex;justify-content:space-between;gap:16px;align-items:center}
#gmp .faq summary::-webkit-details-marker{display:none}
#gmp .faq summary::after{content:"+";font-size:24px;font-weight:400;color:var(--brand);flex:none;transition:transform .2s}
#gmp .faq details[open] summary::after{transform:rotate(45deg)}
#gmp .faq details p{color:var(--muted);padding:0 0 20px;font-size:15px}
/* cta band */
#gmp .cta-band{background:linear-gradient(120deg,var(--brand),var(--accent));border-radius:28px;padding:56px;color:#fff;display:flex;justify-content:space-between;align-items:center;gap:28px;flex-wrap:wrap}
#gmp .cta-band h2{font-size:clamp(26px,3.2vw,36px);font-weight:700;line-height:1.2;letter-spacing:-.02em}
#gmp .cta-band p{color:var(--on-dark-4);margin-top:8px}
#gmp .cta-band .btns{display:flex;gap:12px;flex-wrap:wrap}
/* footer */
#gmp footer.ft{background:var(--brand-900);color:var(--on-dark-3);margin-top:96px;padding:72px 0 28px;font-size:14.5px}
#gmp .ft-grid{display:grid;grid-template-columns:1.4fr 1fr 1fr 1.2fr;gap:40px}
#gmp .ft h4{color:#fff;font-size:15px;font-weight:600;margin-bottom:16px}
#gmp .ft ul{list-style:none;padding:0;margin:0;display:grid;gap:10px}
#gmp .ft a:hover{color:#fff}
#gmp .ft .ft-logo{background:#fff;border-radius:12px;padding:10px 14px;display:inline-block;margin-bottom:18px}
#gmp .ft .ft-logo img{height:34px;width:auto}
#gmp .ft-bottom{border-top:1px solid rgba(255,255,255,.1);margin-top:48px;padding-top:24px;display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap;font-size:13px;color:var(--on-dark-5)}
/* mobile bar */
#gmp .mbar{display:none}
@media (max-width:1320px){
#gmp .ph-txt{display:none}
}
@media (max-width:1080px){
#gmp nav.main{display:none}
#gmp .burger{display:flex}
#gmp .quick-grid{grid-template-columns:repeat(3,1fr)}
#gmp .cards{grid-template-columns:repeat(2,1fr)}
#gmp .ft-grid{grid-template-columns:1fr 1fr}
}
@media (max-width:860px){
#gmp .sec{padding:72px 0}
#gmp .hero .wrap,#gmp .split,#gmp .team,#gmp .visit,#gmp .wl{grid-template-columns:1fr}
#gmp .hero .wrap{padding-top:44px;gap:40px}
#gmp .hero-visual{max-width:460px;margin:0 auto;width:100%}
#gmp .float.f1{left:-8px}
#gmp .float.f2{right:-8px}
#gmp .split{gap:40px}
#gmp .split .media{order:-1}
#gmp .wl{padding:40px 28px}
#gmp .steps{grid-template-columns:1fr}
}
@media (max-width:600px){
#gmp .wrap{padding:0 16px}
#gmp .topbar .tb-hide{display:none}
#gmp header.hd .wrap{min-height:66px}
#gmp .logo img{height:52px;margin:-8px 0}
#gmp .hd-book{display:none}
#gmp .hd-cta{gap:8px}
#gmp .quick-grid{grid-template-columns:repeat(2,1fr);gap:10px}
#gmp .cards{grid-template-columns:1fr}
#gmp .creds{grid-template-columns:1fr}
#gmp .wl-stats{grid-template-columns:1fr}
#gmp .hero-ctas .btn{flex:1}
#gmp .cta-band{padding:36px 24px}
#gmp .cta-band .btns,#gmp .cta-band .btn{width:100%}
#gmp .prow{padding:18px 18px}
#gmp .ptable .ph{padding:18px}
#gmp .ft-grid{grid-template-columns:1fr}
#gmp .float{display:none}
#gmp .mbar{display:grid;grid-template-columns:1fr 1fr;gap:10px;position:fixed;left:0;right:0;bottom:0;z-index:60;background:#fff;padding:10px 16px calc(10px + env(safe-area-inset-bottom));box-shadow:0 -6px 24px rgba(20,26,69,.12)}
#gmp .mbar .btn{padding:12px 14px;font-size:14px}
#gmp footer.ft{padding-bottom:96px}
}
#gmp table.hours,#gmp table.hours tbody,#gmp table.hours tr,#gmp table.hours td{border:0!important;background:transparent!important;margin:0}#gmp table.hours td{padding:12px 0!important;border-bottom:1px dashed var(--line)!important;vertical-align:middle}#gmp table.hours tr:last-child td{border-bottom:0!important}#gmp table.hours tr.today td{background:transparent!important}

#gmp .rv{opacity:0;transform:translateY(22px);transition:opacity .7s ease,transform .7s ease}
#gmp .rv.in{opacity:1;transform:none}
@keyframes whfloat{0%,100%{transform:translateY(0)}50%{transform:translateY(-8px)}}
#gmp .float{animation:whfloat 5s ease-in-out infinite}
#gmp .float.f1{animation-delay:-2.5s}
#gmp header.hd{transition:box-shadow .25s}
#gmp header.hd.scrolled{box-shadow:0 10px 30px rgba(20,26,69,.08)}
#gmp .bmi{background:#fff;color:var(--ink);border-radius:24px;padding:26px;box-shadow:0 30px 60px rgba(0,0,0,.25)}
#gmp .bmi-h{display:flex;gap:12px;align-items:center;margin-bottom:18px}
#gmp .bmi-h b{display:block;font-size:18px;font-weight:700}
#gmp .bmi-h small{display:block;color:var(--muted);font-size:13px}
#gmp .bmi-h .mi{width:44px;height:44px;border-radius:12px}
#gmp .bmi-h .mi svg{width:22px;height:22px}
#gmp .bmi-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}
#gmp .bmi label{display:block;font-size:13px;font-weight:600;color:#39406a}
#gmp .bmi input{display:block;width:100%;margin-top:6px;font:inherit;font-size:16px;padding:12px 14px;border:1.5px solid var(--line);border-radius:12px;background:var(--tint-2);color:var(--ink);outline:none;min-height:48px}
#gmp .bmi input:focus{border-color:var(--accent);background:#fff;box-shadow:0 0 0 4px rgba(var(--a-rgb),.15)}
#gmp .bmi-out{display:flex;align-items:center;gap:14px;margin:20px 0 14px}
#gmp .bmi-num{font-size:40px;font-weight:800;letter-spacing:-.02em;color:var(--brand);line-height:1;min-width:88px}
#gmp .bmi-txt{font-size:14.5px;font-weight:500;color:#39406a;line-height:1.35}
#gmp .bmi-bar{position:relative;height:12px;border-radius:999px;background:linear-gradient(90deg,#60a5fa 0%,#60a5fa 14%,#34d399 14%,#34d399 40%,#fbbf24 40%,#fbbf24 60%,#f87171 60%,#f87171 100%)}
#gmp .bmi-bar i{position:absolute;top:50%;left:0;width:22px;height:22px;margin:-11px 0 0 -11px;border-radius:50%;background:#fff;border:4px solid var(--brand);box-shadow:0 4px 10px rgba(20,26,69,.25);transition:left .4s ease;opacity:0}
#gmp .bmi-bar i.on{opacity:1}
#gmp .bmi-scale{position:relative;height:18px;margin-top:6px;font-size:11.5px;color:var(--muted)}
#gmp .bmi-scale span{position:absolute;transform:translateX(-50%)}
#gmp .bmi-cta{display:none;margin-top:16px;width:100%}
#gmp .bmi-cta.on{display:flex}
#gmp .wl .bmi p.bmi-note{color:var(--muted);font-size:12.5px;margin-top:14px}
@media (max-width:600px){
#gmp .split .btn,#gmp .team .btn,#gmp .wl .hero-ctas .btn,#gmp .sec .btn-primary{width:100%}
#gmp .bmi{padding:20px}
#gmp .bmi-num{font-size:34px;min-width:76px}
}
@media (prefers-reduced-motion:reduce){
#gmp .rv{opacity:1;transform:none;transition:none}
#gmp .float{animation:none}
}
#gmp .rev-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:20px;align-items:start}
#gmp .rev{margin:0;background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:26px;box-shadow:var(--shadow);display:flex;flex-direction:column;gap:16px;position:relative}
#gmp .rev::after{content:"\201C";position:absolute;right:20px;top:6px;font-size:72px;line-height:1;color:var(--tint);font-family:Georgia,serif}
#gmp .rev-stars{display:flex;gap:3px}
#gmp .rev-stars svg{width:18px;height:18px;fill:#fbbc04}
#gmp .rev blockquote{margin:0;padding:0;border:0;font-size:15.5px;line-height:1.6;color:#2b3150;font-style:normal;position:relative;z-index:1}
#gmp .rev figcaption{display:flex;gap:12px;align-items:center;margin-top:auto;padding-top:14px;border-top:1px solid var(--line)}
#gmp .rev-av{width:40px;height:40px;border-radius:50%;background:linear-gradient(135deg,var(--accent),var(--brand));color:#fff;display:grid;place-items:center;font-weight:700;flex:none}
#gmp .rev figcaption b{display:block;font-size:14.5px}
#gmp .rev figcaption small{display:block;font-size:12.5px;color:var(--muted)}
#gmp .rev-more{text-align:center;margin-top:36px}
@media (max-width:1080px){#gmp .rev-grid{grid-template-columns:repeat(2,1fr)}}
@media (max-width:600px){#gmp .rev-grid{grid-template-columns:1fr}#gmp .rev-more .btn{width:100%}}
#gmp .rev-grid{align-items:stretch}
#gmp .rev figcaption,#gmp .rev figcaption b,#gmp .rev figcaption small{font-style:normal}
#gmp .mega-md{width:620px}
#gmp .vgrid2{display:grid;grid-template-columns:1fr 1fr;gap:2px}
#gmp .visit > *,#gmp .ft-grid > *,#gmp .split > *,#gmp .team > *,#gmp .hero .wrap > *,#gmp .wl > *{min-width:0}#gmp .vlist span,#gmp .ft li,#gmp .ft p{overflow-wrap:anywhere}@media (max-width:600px){#gmp .vcard{padding:24px 20px}}
#gmp .wl,#gmp .hero{overflow:hidden;overflow:clip}
#gmp .gmp-logo{display:block;height:54px;width:auto;color:var(--logo);overflow:visible}
#gmp .gmp-logo-img{display:block;height:58px;width:auto;max-width:260px;object-fit:contain;margin:0}#gmp .drawer-top .gmp-logo-img{height:42px}#gmp .ft .gmp-logo-img-footer{height:76px;max-width:300px;filter:brightness(0) invert(1)}@media (max-width:600px){#gmp .logo .gmp-logo-img{height:44px}}
#gmp .drawer-top .gmp-logo{height:42px}
#gmp .ft .ft-logo{background:none;padding:0;border-radius:0;margin-bottom:20px}
#gmp .ft .ft-logo .gmp-logo{height:76px;color:#fff}
@media (max-width:600px){#gmp .logo .gmp-logo{height:44px}}

/* ===== Theme base (GM SEO Services, https://www.gm-seo-services.com/) ===== */
body{margin:0;background:#fff}
#gmp main{display:block}
#gmp .skip{position:absolute;left:-9999px;top:8px;z-index:200;background:#fff;color:var(--brand);padding:10px 16px;border-radius:10px;font-weight:600}
#gmp .skip:focus{left:16px}
#gmp .topbar a{color:inherit;display:inline-flex;align-items:center;gap:8px}
#gmp .topbar a:hover{color:#fff}
#gmp .sec-cta{padding:96px 0 0}@media (max-width:1080px){#gmp .sec-cta{padding-top:72px}}@media (max-width:600px){#gmp .sec-cta{padding-top:56px}}
#gmp .ft-bottom a{color:inherit;text-decoration:none}
#gmp .ft-bottom a:hover{color:#fff}
#gmp :focus-visible{outline:3px solid var(--accent);outline-offset:2px;border-radius:6px}

/* Breadcrumbs */
#gmp .crumbs ol{list-style:none;margin:0 0 18px;padding:0;display:flex;flex-wrap:wrap;gap:6px;font-size:13px;color:var(--muted)}
#gmp .crumbs li{display:flex;align-items:center;gap:6px}
#gmp .crumbs li+li::before{content:"/";color:#b3b9d1}
#gmp .crumbs a:hover{color:var(--brand)}
#gmp .crumbs [aria-current]{color:var(--ink);font-weight:500}

/* Inner page hero */
#gmp .page-hero{background:radial-gradient(900px 400px at 90% -20%,var(--glow) 0%,transparent 60%),radial-gradient(700px 300px at -10% 120%,#e9f7f1 0%,rgba(233,247,241,0) 60%),var(--tint-2);padding:44px 0 56px;border-bottom:1px solid var(--line)}
#gmp .page-hero h1{font-size:clamp(32px,4.6vw,52px);line-height:1.08;font-weight:800;letter-spacing:-.03em;margin:16px 0 14px;max-width:860px}
#gmp .page-hero .lead{font-size:18px;color:var(--muted);max-width:720px;margin-bottom:26px}
#gmp .page-hero .hero-ctas{margin-top:22px}

/* Page body with side panel */
#gmp .page-body{padding:64px 0 24px}
#gmp .page-grid{display:grid;grid-template-columns:minmax(0,1fr) 340px;gap:48px;align-items:start}
#gmp .page-grid-wide{grid-template-columns:minmax(0,1fr)}
#gmp .page-aside{position:sticky;top:100px;display:grid;gap:16px}
#gmp .aside-card{background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:22px;box-shadow:var(--shadow)}
#gmp .aside-card > b{display:block;font-size:16px;font-weight:700;margin-bottom:10px}
#gmp .aside-card p{color:var(--muted);font-size:14px;margin-bottom:14px}
#gmp .aside-book{background:linear-gradient(135deg,var(--brand-900),var(--brand));border:0;color:#fff}
#gmp .aside-book p{color:var(--on-dark-2)}
#gmp .aside-book .btn{width:100%;margin-top:8px}
#gmp .aside-book .btn-ghost{background:transparent;color:#fff;border-color:rgba(255,255,255,.4)}
#gmp .aside-card .hours{font-size:14px}
#gmp .aside-card .hours td{padding:8px 0!important}
#gmp .aside-dir{display:flex;gap:8px;align-items:center;margin-top:14px;font-size:13.5px;font-weight:500;color:var(--brand)}
#gmp .aside-dir svg{width:18px;height:18px;flex:none}
#gmp .aside-links{list-style:none;margin:0;padding:0}
#gmp .aside-links a{display:flex;justify-content:space-between;align-items:center;gap:10px;padding:10px 0;border-bottom:1px solid var(--line);font-size:14.5px;font-weight:500}
#gmp .aside-links li:last-child a{border-bottom:0}
#gmp .aside-links a:hover{color:var(--brand)}
#gmp .aside-links svg{width:16px;height:16px;color:#9aa3c7;flex:none}

/* Content typography for the block editor */
#gmp .entry{font-size:17px;line-height:1.75;color:#2b3150;min-width:0}
#gmp .entry > *+*{margin-top:1.1em}
#gmp .entry h2{font-size:clamp(24px,3vw,32px);line-height:1.2;font-weight:700;letter-spacing:-.02em;color:var(--ink);margin-top:1.8em}
#gmp .entry h3{font-size:21px;line-height:1.3;font-weight:600;color:var(--ink);margin-top:1.6em}
#gmp .entry h4{font-size:18px;font-weight:600;color:var(--ink)}
#gmp .entry h2:first-child,#gmp .entry h3:first-child{margin-top:0}
#gmp .entry a{color:var(--brand);text-decoration:underline;text-decoration-color:rgba(var(--b-rgb),.3);text-underline-offset:3px}
#gmp .entry a:hover{text-decoration-color:var(--brand)}
#gmp .entry ul,#gmp .entry ol{padding-left:1.3em}
#gmp .entry ul li::marker{color:var(--accent)}
#gmp .entry li+li{margin-top:.4em}
#gmp .entry img{border-radius:16px;height:auto}
#gmp .entry figure{margin-left:0;margin-right:0}
#gmp .entry figcaption{font-size:14px;color:var(--muted);margin-top:8px}
#gmp .entry blockquote{margin-left:0;padding:18px 22px;border-left:4px solid var(--accent);background:var(--tint-2);border-radius:0 14px 14px 0;font-style:normal}
#gmp .entry table{width:100%;border-collapse:collapse;font-size:15.5px}
#gmp .entry th,#gmp .entry td{padding:12px 14px;border-bottom:1px solid var(--line);text-align:left}
#gmp .entry th{background:var(--tint-2);font-weight:600;color:var(--ink)}
#gmp .entry hr{border:0;border-top:1px solid var(--line);margin:2em 0}
#gmp .entry .wp-block-button__link{background:var(--brand);color:#fff;border-radius:12px;padding:14px 24px;font-weight:600;text-decoration:none;display:inline-flex;min-height:48px;align-items:center}
#gmp .entry .wp-block-button.is-style-outline .wp-block-button__link{background:#fff;color:var(--brand);border:1.5px solid var(--edge-2)}
#gmp .entry .wp-block-buttons{display:flex;gap:12px;flex-wrap:wrap}
#gmp .entry .wp-block-columns{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:20px}
#gmp .entry .wp-block-column{min-width:0}
#gmp .entry .has-tint-background-color{background:var(--tint)}
#gmp .entry .has-brand-color{color:var(--brand)}
#gmp .entry details{border:1px solid var(--line);border-radius:14px;padding:0 20px;background:#fff}
#gmp .entry details summary{cursor:pointer;padding:16px 0;font-weight:600;color:var(--ink)}
#gmp .entry details[open]{padding-bottom:16px}
#gmp .entry-feature img{width:100%}

/* Pattern blocks used inside page content */
#gmp .entry .gmp-card{background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:24px;box-shadow:var(--shadow)}
#gmp .entry .gmp-card h3{margin-top:0}
#gmp .entry .gmp-callout{background:linear-gradient(135deg,var(--brand-900),var(--brand));color:#fff;border-radius:24px;padding:32px}
#gmp .entry .gmp-callout h2,#gmp .entry .gmp-callout h3{color:#fff;margin-top:0}
#gmp .entry .gmp-callout p{color:var(--on-dark-2)}
#gmp .entry .gmp-callout .wp-block-button__link{background:#fff;color:var(--brand)}
#gmp .entry .gmp-prices table{border:1px solid var(--line);border-radius:18px;overflow:hidden;box-shadow:var(--shadow)}
#gmp .entry .gmp-prices td:last-child{text-align:right;font-weight:700;color:var(--brand);font-size:18px;white-space:nowrap}
#gmp .entry .gmp-steps{counter-reset:gmpstep}
#gmp .entry .gmp-steps .wp-block-column{background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:24px;box-shadow:var(--shadow);position:relative}
#gmp .entry .gmp-steps .wp-block-column::before{counter-increment:gmpstep;content:counter(gmpstep);display:grid;place-items:center;width:38px;height:38px;border-radius:50%;background:var(--brand);color:#fff;font-weight:700;margin-bottom:14px}
#gmp .entry .gmp-steps h3{margin-top:0;font-size:18px}
#gmp .entry .gmp-ticks{list-style:none;padding-left:0}
#gmp .entry .gmp-ticks li{position:relative;padding-left:32px}
#gmp .entry .gmp-ticks li::before{content:"";position:absolute;left:0;top:.35em;width:20px;height:20px;border-radius:50%;background:var(--green-tint) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%2310b981' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 12 4 4 8-8'/%3E%3C/svg%3E") center/14px no-repeat}

/* Blog listing */
#gmp .post-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}
#gmp .post-card{background:#fff;border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;box-shadow:var(--shadow);display:flex;flex-direction:column;transition:transform .15s,box-shadow .15s}
#gmp .post-card:hover{transform:translateY(-3px);box-shadow:var(--shadow-lg)}
#gmp .post-img img{width:100%;height:200px;object-fit:cover}
#gmp .post-body{padding:22px;display:flex;flex-direction:column;gap:8px;flex:1}
#gmp .post-body small{color:var(--muted);font-size:12.5px}
#gmp .post-body b{font-size:18px;line-height:1.35;font-weight:600}
#gmp .post-body span{color:var(--muted);font-size:14.5px}
#gmp .post-body em{margin-top:auto;padding-top:8px;font-style:normal;font-weight:600;font-size:14px;color:var(--brand);display:inline-flex;align-items:center;gap:6px}
#gmp .post-body em svg{width:15px;height:15px}
#gmp .pager{margin-top:36px}
#gmp .pager .nav-links{display:flex;gap:8px;justify-content:center}
#gmp .pager .page-numbers{min-width:42px;height:42px;display:grid;place-items:center;border:1px solid var(--line);border-radius:10px;padding:0 12px}
#gmp .pager .current{background:var(--brand);color:#fff;border-color:var(--brand)}

/* Pages still built with Elementor keep their own layout */
#gmp .el-legacy{min-height:40vh}
#gmp .quick-404{margin-top:-28px;margin-bottom:24px}

@media (max-width:1080px){
#gmp .page-grid{grid-template-columns:1fr}
#gmp .page-aside{position:static;grid-template-columns:repeat(auto-fit,minmax(260px,1fr))}
#gmp .post-grid{grid-template-columns:repeat(2,1fr)}
}
@media (max-width:600px){
#gmp .page-hero{padding:28px 0 40px}
#gmp .page-body{padding:40px 0 8px}
#gmp .entry{font-size:16.5px}
#gmp .post-grid{grid-template-columns:1fr}
#gmp .page-hero .hero-ctas .btn{flex:1}
}

/* Reusable theme parts (GM SEO Services, https://www.gm-seo-services.com/) */
#gmp .vchips a{transition:border-color .15s,color .15s}
#gmp .vchips a:hover{border-color:var(--brand);color:var(--brand)}
#gmp .team-h{font-size:clamp(28px,3.6vw,40px);line-height:1.15;font-weight:700;letter-spacing:-.02em;margin:16px 0}
#gmp .team-p{color:var(--muted);font-size:17px}
#gmp .cred small{color:var(--muted)}
#gmp .team-more{margin-top:28px}
#gmp .team.team-noimg{grid-template-columns:1fr;max-width:820px;text-align:center}
#gmp .team.team-noimg .creds{text-align:left}
#gmp .drawer-sub{padding-left:18px !important;font-size:14px;color:var(--muted)}

/* Page content polish 1.0.4 (GM SEO Services, https://www.gm-seo-services.com/) */
#gmp .entry .wp-block-table{margin:1.4em 0;overflow-x:auto}
#gmp .entry .wp-block-table table{width:100%;border:1px solid var(--line);border-collapse:separate;border-spacing:0;border-radius:16px;overflow:hidden;background:#fff;box-shadow:var(--shadow);font-size:15.5px}
#gmp .entry .wp-block-table th,#gmp .entry .wp-block-table td{border:0;border-bottom:1px solid var(--line);padding:14px 18px;text-align:left;vertical-align:middle}
#gmp .entry .wp-block-table thead th{background:var(--brand);color:#fff;font-weight:600;font-size:13px;letter-spacing:.05em;text-transform:uppercase;border-bottom:0}
#gmp .entry .wp-block-table tbody tr:nth-child(even) td{background:var(--tint-2)}
#gmp .entry .wp-block-table tbody tr:last-child td{border-bottom:0}
#gmp .entry .wp-block-table tbody tr:hover td{background:var(--tint)}
#gmp .entry .gmp-prices td:last-child,#gmp .entry .gmp-prices th:last-child{text-align:right;white-space:nowrap}
#gmp .entry .gmp-prices td:last-child{font-weight:700;color:var(--brand);font-size:17px}
#gmp .entry .gmp-prices td strong{display:block;color:var(--ink);font-size:16px}
#gmp .entry .gmp-hours table{max-width:480px}
#gmp .entry .gmp-hours td:last-child{text-align:right;font-weight:600}
#gmp .entry .wp-block-image img{max-height:460px;width:100%;object-fit:cover}
#gmp .entry .bookly-form img,#gmp .entry .wpforms-container img{width:auto;max-width:100%;max-height:none;border-radius:0;object-fit:initial}
/* bookly booking form */
#gmp .bookly-form{color:var(--ink);font-family:inherit}
#gmp .bookly-form *{font-family:inherit}
#gmp .bookly-form .bookly-box{margin:0 0 18px}
#gmp .bookly-form .bookly-bold{font-weight:600;font-size:16px;color:var(--ink)}
#gmp .bookly-form label{font-size:13px;font-weight:600;color:var(--muted);margin-bottom:6px;display:block}
#gmp .bookly-form .bookly-progress-tracker{display:flex;gap:8px;margin:0 0 26px;width:100%;table-layout:auto}
#gmp .bookly-form .bookly-progress-tracker>div{flex:1;display:block;font-size:13px;font-weight:600;color:var(--muted);padding:0;text-align:left;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
#gmp .bookly-form .bookly-progress-tracker>.active{color:var(--brand)}
#gmp .bookly-form .bookly-progress-tracker .step{height:6px;margin-top:8px;padding:0;border:0;border-radius:999px!important;box-shadow:none;background:var(--line)}
#gmp .bookly-form .bookly-progress-tracker>.active .step{background:var(--brand)!important}
#gmp .bookly-form input[type=text],#gmp .bookly-form input[type=email],#gmp .bookly-form input[type=tel],#gmp .bookly-form input[type=number],#gmp .bookly-form select,#gmp .bookly-form textarea{width:100%;min-height:46px;border:1.5px solid var(--line)!important;border-radius:12px!important;padding:10px 14px!important;font-size:16px!important;line-height:1.4;color:var(--ink);background-color:#fff;box-shadow:none;transition:border-color .15s,box-shadow .15s}
#gmp .bookly-form select{appearance:none;-webkit-appearance:none;padding-right:40px!important;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath d='M1 1l5 5 5-5' fill='none' stroke='%235a6280' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 14px center}
#gmp .bookly-form input:focus,#gmp .bookly-form select:focus,#gmp .bookly-form textarea:focus{outline:0;border-color:var(--brand)!important;box-shadow:0 0 0 4px rgba(var(--b-rgb),.12)}
#gmp .bookly-form .bookly-service-step .bookly-table.bookly-box{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;width:100%}
#gmp .bookly-form .bookly-service-step .bookly-table .bookly-form-group{display:block;width:auto;padding:0;margin:0}
#gmp .bookly-form .bookly-mobile-step-2>.bookly-box{display:flex!important;flex-wrap:wrap;gap:18px;align-items:flex-end;width:100%}
#gmp .bookly-form .bookly-mobile-step-2 .bookly-left{float:none;margin:0}
#gmp .bookly-form .bookly-available-date,#gmp .bookly-form .bookly-time-range{margin:0}
#gmp .bookly-form .bookly-time-range{display:flex;gap:12px}
#gmp .bookly-form .bookly-time-range .bookly-form-group{min-width:120px;margin:0}
#gmp .bookly-form .bookly-week-days{display:flex;gap:6px;margin:0}
#gmp .bookly-form .bookly-week-days .bookly-form-group{display:flex;flex-direction:column;align-items:center;gap:6px;margin:0;padding:0;width:auto}
#gmp .bookly-form .bookly-week-days .bookly-col-label{margin:0;font-size:12px}
#gmp .bookly-form .bookly-week-days input[type=checkbox]{width:20px;height:20px;accent-color:var(--brand);margin:0}
#gmp .bookly-form .bookly-nav-steps{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;margin-top:24px;padding-top:20px;border-top:1px solid var(--line);overflow:visible}
#gmp .bookly-form .bookly-nav-steps .bookly-left,#gmp .bookly-form .bookly-nav-steps .bookly-right{float:none;margin:0}
#gmp .bookly-form .bookly-nav-steps>.bookly-left:only-child{margin-left:auto}
#gmp .bookly-form .bookly-btn{background:var(--brand)!important;color:#fff!important;border:0!important;border-radius:999px!important;min-height:46px;padding:12px 28px!important;font-size:15px!important;font-weight:600;letter-spacing:0;text-transform:none;box-shadow:0 6px 16px rgba(var(--b-rgb),.22);cursor:pointer;transition:background .15s,transform .15s,box-shadow .15s}
#gmp .bookly-form .bookly-btn:hover{background:var(--brand-700)!important;transform:translateY(-1px);box-shadow:0 10px 22px rgba(var(--b-rgb),.28)}
#gmp .bookly-form .bookly-btn .ladda-label{font-size:15px!important;color:#fff}
#gmp .bookly-form .bookly-back-step,#gmp .bookly-form .bookly-js-back-step,#gmp .bookly-form .bookly-mobile-prev-step{background:#fff!important;color:var(--brand)!important;border:1.5px solid var(--edge)!important;box-shadow:none}
#gmp .bookly-form .bookly-back-step .ladda-label,#gmp .bookly-form .bookly-js-back-step .ladda-label,#gmp .bookly-form .bookly-mobile-prev-step .ladda-label{color:var(--brand)}
#gmp .bookly-form .bookly-back-step:hover,#gmp .bookly-form .bookly-js-back-step:hover,#gmp .bookly-form .bookly-mobile-prev-step:hover{background:var(--tint)!important}
#gmp .bookly-form .bookly-columnizer .bookly-day{background:var(--brand)!important;color:#fff!important;border:0!important;border-radius:12px!important;font-weight:600;padding:10px!important;margin-bottom:8px}
#gmp .bookly-form .bookly-columnizer .bookly-hour{background:#fff!important;color:var(--ink)!important;border:1.5px solid var(--line)!important;border-radius:12px!important;min-height:44px;margin-bottom:8px;font-size:15px;transition:border-color .15s,background .15s}
#gmp .bookly-form .bookly-columnizer .bookly-hour:hover{border-color:var(--brand)!important;background:var(--tint)!important}
#gmp .bookly-form .bookly-columnizer .bookly-hour .bookly-hour-icon{border-color:var(--edge-2)!important}
#gmp .bookly-form .bookly-columnizer .bookly-hour:hover .bookly-hour-icon{border-color:var(--brand)!important}
#gmp .bookly-form .bookly-columnizer .bookly-hour:hover .bookly-hour-icon span{background:var(--brand)!important}
#gmp .bookly-form .bookly-time-step .bookly-input-wrap,#gmp .bookly-form .bookly-time-step .bookly-js-slot-calendar{border-radius:14px;overflow:hidden}
#gmp .bookly-form .bookly-details-step .bookly-table,#gmp .bookly-form .bookly-details-step .bookly-box{width:100%}
#gmp .bookly-form .bookly-label-error,#gmp .bookly-form .bookly-error{color:#c0392b;font-size:13px;margin-top:4px}
#gmp .bookly-form .bookly-box.bookly-list{background:var(--tint-2);border:1px solid var(--line);border-radius:14px;padding:14px 16px}
#gmp .bookly-form .bookly-nav-steps>.bookly-left:last-child{margin-left:auto}
#gmp .bookly-form .bookly-btn,#gmp .bookly-form .bookly-btn .ladda-label{text-transform:none!important;letter-spacing:0!important}
#gmp .bookly-form .bookly-back-step .ladda-label,#gmp .bookly-form .bookly-js-back-step .ladda-label,#gmp .bookly-form .bookly-mobile-prev-step .ladda-label{color:var(--brand)!important}
#gmp .bookly-form .bookly-panel-mark{border:1.5px solid var(--line)!important;border-radius:16px!important;padding:10px!important;box-shadow:var(--shadow)}
#gmp .bookly-form .bookly-calendar-dates-mark [class*="bookly:h-10"]{border-radius:10px;margin:2px;transition:background .15s}
#gmp .bookly-form .bookly-calendar-dates-mark [class*="bookly:text-white"]{background:var(--brand)!important;box-shadow:0 4px 12px rgba(var(--b-rgb),.25)}
#gmp .bookly-form .iti{display:block;width:100%}
#gmp .bookly-form .iti input.iti__tel-input,#gmp .bookly-form .iti>input[type=text],#gmp .bookly-form .iti>input[type=tel]{padding-left:58px!important}
#gmp .bookly-form .bookly-details-step .bookly-table.bookly-box{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;width:100%}
#gmp .bookly-form .bookly-details-step .bookly-table .bookly-form-group{display:block;width:auto;padding:0;margin:0}
#gmp .bookly-form .bookly-checkbox-group{display:flex;align-items:center;gap:10px;line-height:1.5!important}
#gmp .bookly-form .bookly-checkbox-group label{display:inline-block;margin:0!important;font-size:14px;font-weight:400;color:var(--ink);float:none!important}
#gmp .bookly-form .bookly-checkbox-group label.bookly-square{flex:0 0 24px;width:24px!important;height:24px;border:1.5px solid var(--edge-2)!important;border-radius:7px!important}
#gmp .bookly-form .bookly-checkbox-group a{color:var(--brand);font-weight:600}
@media(max-width:700px){
#gmp .bookly-form .bookly-details-step .bookly-table.bookly-box{grid-template-columns:1fr}
#gmp .bookly-form .bookly-service-step .bookly-table.bookly-box{grid-template-columns:1fr}
#gmp .bookly-form .bookly-progress-tracker>div{font-size:0}
#gmp .bookly-form .bookly-progress-tracker>.active{font-size:12px}
#gmp .bookly-form .bookly-nav-steps .bookly-btn{width:100%}
#gmp .bookly-form .bookly-nav-steps>*{flex:1 1 100%}
#gmp .bookly-form .bookly-time-range{width:100%}
#gmp .bookly-form .bookly-time-range .bookly-form-group{flex:1}
#gmp .bookly-form .bookly-available-date{width:100%}
}
/* end bookly */
/* complianz cookie policy table: long cookie names must wrap, not widen the page on phones */
#gmp .cookies-per-purpose{grid-template-columns:minmax(0,110px) minmax(0,1fr)!important;max-width:100%}#gmp .cookies-per-purpose>*{min-width:0;overflow-wrap:anywhere}#gmp .cmplz-cookies-overview{max-width:100%}
#gmp .entry .wp-block-columns.gmp-cards{grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:18px}
#gmp .entry .gmp-card{background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:22px;box-shadow:var(--shadow);transition:transform .15s,box-shadow .15s,border-color .15s}
#gmp .entry .gmp-cards .gmp-card{display:flex;flex-direction:column}
#gmp .entry .gmp-cards .gmp-card:hover{transform:translateY(-3px);box-shadow:var(--shadow-lg);border-color:var(--edge-2)}
#gmp .entry .gmp-card > *+*{margin-top:.6em}
#gmp .entry .gmp-card h3{margin:0;font-size:18px;line-height:1.3}
#gmp .entry .gmp-card h3 a{color:var(--ink);text-decoration:none}
#gmp .entry .gmp-cards .gmp-card p{font-size:15px;color:var(--muted);line-height:1.6}
#gmp .entry .gmp-cards .gmp-card p:last-child{margin-top:auto;padding-top:10px}
#gmp .entry .gmp-cards .gmp-card p:last-child a{font-weight:600;text-decoration:none;color:var(--brand)}
#gmp .entry .gmp-cards .gmp-card p:last-child a::after{content:" \2192"}
#gmp .entry .gmp-map iframe{display:block;width:100%;height:360px;border:0;border-radius:18px;box-shadow:var(--shadow)}
#gmp .entry .gmp-booking{padding:24px}
#gmp .entry .wpforms-container{margin:0}
#gmp .entry .wpforms-container input[type=text],#gmp .entry .wpforms-container input[type=email],#gmp .entry .wpforms-container textarea{width:100%;max-width:100%;border:1.5px solid var(--line);border-radius:12px;padding:12px 14px;font:inherit;font-size:16px}
#gmp .entry .wpforms-container input:focus,#gmp .entry .wpforms-container textarea:focus{border-color:var(--brand);outline:0;box-shadow:0 0 0 3px rgba(var(--b-rgb),.15)}
#gmp .entry .wpforms-container button[type=submit]{background:var(--brand);color:#fff;border:0;border-radius:12px;padding:14px 26px;font:inherit;font-weight:600;min-height:48px;cursor:pointer}
#gmp .entry .wpforms-container button[type=submit]:hover{background:var(--brand-700)}
@media (max-width:600px){
#gmp .entry .wp-block-table table{font-size:14px}
#gmp .entry .wp-block-table th,#gmp .entry .wp-block-table td{padding:11px 12px}
#gmp .entry .gmp-prices td:last-child{font-size:15px}
#gmp .entry .gmp-map iframe{height:280px}
}
/* Mobile: every button stacked and full width */
@media (max-width:600px){
#gmp .hero-ctas,#gmp .btns,#gmp .entry .wp-block-buttons{flex-direction:column;align-items:stretch}
#gmp .hero-ctas .btn,#gmp .btns .btn,#gmp .entry .wp-block-button,#gmp .entry .wp-block-button__link,#gmp .entry .wpforms-container button[type=submit],#gmp .rev-more .btn,#gmp .team-more .btn{width:100%;display:flex;justify-content:center;text-align:center}
}

/* Booking callout card 1.0.8 */
#gmp .entry .gmp-callout{position:relative;overflow:hidden;isolation:isolate;display:grid;grid-template-columns:1fr auto;column-gap:32px;align-items:center;margin-top:2.6em;padding:34px 40px 34px 116px;border-radius:24px;background:linear-gradient(120deg,var(--brand-900) 0%,var(--brand) 70%,var(--deep) 100%);box-shadow:0 22px 44px rgba(var(--b-rgb),.28)}
#gmp .entry .gmp-callout::before{content:"";position:absolute;left:40px;top:50%;transform:translateY(-50%);width:54px;height:54px;border-radius:16px;background:rgba(255,255,255,.12) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='white' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='3' y='5' width='18' height='16' rx='3'/%3E%3Cpath d='M16 3v4M8 3v4M3 10h18M9 15l2 2 4-4'/%3E%3C/svg%3E") center/26px no-repeat;box-shadow:inset 0 0 0 1px rgba(255,255,255,.18)}
#gmp .entry .gmp-callout::after{content:"";position:absolute;right:-80px;top:-120px;width:320px;height:320px;border-radius:50%;background:radial-gradient(circle,rgba(255,255,255,.16),rgba(255,255,255,0) 70%);z-index:-1}
#gmp .entry .gmp-callout > .wp-block-group__inner-container{display:contents}
#gmp .entry .gmp-callout > *,#gmp .entry .gmp-callout > .wp-block-group__inner-container > *{max-width:none !important;margin-left:0 !important;margin-right:0 !important;grid-column:1}
#gmp .entry .gmp-callout h2,#gmp .entry .gmp-callout h3{margin:0 !important;font-size:22px;line-height:1.25;letter-spacing:-.01em}
#gmp .entry .gmp-callout p{margin:6px 0 0 !important;font-size:15.5px;line-height:1.6;color:var(--on-dark-2)}
#gmp .entry .gmp-callout .wp-block-buttons{grid-column:2;grid-row:1 / span 3;margin:0 !important;flex-wrap:nowrap}
#gmp .entry .gmp-callout .wp-block-button__link{display:inline-flex;align-items:center;gap:8px;background:#fff;color:var(--brand);padding:15px 26px;border-radius:14px;font-weight:600;text-decoration:none;white-space:nowrap;box-shadow:0 10px 24px rgba(0,0,0,.18);transition:transform .15s,box-shadow .15s}
#gmp .entry .gmp-callout .wp-block-button__link::after{content:"\2192";font-weight:700;transition:transform .15s}
#gmp .entry .gmp-callout .wp-block-button__link:hover{transform:translateY(-2px);box-shadow:0 14px 30px rgba(0,0,0,.24)}
#gmp .entry .gmp-callout .wp-block-button__link:hover::after{transform:translateX(3px)}
@media (max-width:760px){
#gmp .entry .gmp-callout{grid-template-columns:1fr;padding:28px 24px;text-align:left}
#gmp .entry .gmp-callout::before{position:static;transform:none;display:block;margin-bottom:16px;grid-column:1}
#gmp .entry .gmp-callout .wp-block-buttons{grid-column:1;grid-row:auto;margin-top:20px !important}
#gmp .entry .gmp-callout .wp-block-button,#gmp .entry .gmp-callout .wp-block-button__link{width:100%;justify-content:center}
}

/* Price cards and vaccine table 1.0.10 */
#gmp .entry .gmp-pricelist{list-style:none;padding:0;margin:1.4em 0;display:grid;gap:12px}
#gmp .entry .gmp-pricelist li{margin:0;padding:0}
#gmp .entry .gmp-pricelist li::marker{content:none}
#gmp .entry .gmp-pricelist a{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:18px 22px;background:#fff;border:1px solid var(--line);border-radius:18px;box-shadow:var(--shadow);text-decoration:none;color:inherit;transition:transform .15s,box-shadow .15s,border-color .15s}
#gmp .entry .gmp-pricelist a:hover{transform:translateY(-2px);box-shadow:var(--shadow-lg);border-color:var(--edge-2)}
#gmp .entry .gmp-pricelist .pl-text{min-width:0}
#gmp .entry .gmp-pricelist .pl-text b{display:block;font-size:17px;line-height:1.3;color:var(--ink)}
#gmp .entry .gmp-pricelist .pl-text > span{display:block;margin-top:4px;font-size:14.5px;line-height:1.55;color:var(--muted)}
#gmp .entry .gmp-pricelist .pl-text em{display:inline-block;margin-top:8px;padding:3px 10px;border-radius:999px;background:var(--tint);color:var(--brand);font-style:normal;font-size:12px;font-weight:600}
#gmp .entry .gmp-pricelist .pl-price{flex:none;text-align:right;font-size:26px;font-weight:700;line-height:1.1;color:var(--brand)}
#gmp .entry .gmp-pricelist .pl-price small{display:block;font-size:12px;font-weight:500;color:var(--muted)}
#gmp .entry .gmp-vaccine-table td:first-child{color:var(--ink)}
#gmp .entry .gmp-vaccine-table{overflow-x:visible}
#gmp .entry .gmp-vaccine-table table{table-layout:fixed;font-size:14px}
#gmp .entry .gmp-vaccine-table th,#gmp .entry .gmp-vaccine-table td{padding:12px 10px;overflow-wrap:anywhere}
#gmp .entry .gmp-vaccine-table th:nth-child(1){width:22%}#gmp .entry .gmp-vaccine-table th:nth-child(2){width:22%}#gmp .entry .gmp-vaccine-table th:nth-child(3){width:18%}#gmp .entry .gmp-vaccine-table th:nth-child(4){width:18%}#gmp .entry .gmp-vaccine-table th:nth-child(5){width:20%}
#gmp .entry .gmp-vaccine-table td:last-child,#gmp .entry .gmp-vaccine-table th:last-child{white-space:normal;font-size:14.5px}
@media (max-width:600px){
#gmp .entry .gmp-pricelist a{padding:16px;gap:14px}
#gmp .entry .gmp-pricelist .pl-price{font-size:21px}
}
@media (max-width:900px){
#gmp .entry .gmp-vaccine-table table,#gmp .entry .gmp-vaccine-table tbody,#gmp .entry .gmp-vaccine-table tr,#gmp .entry .gmp-vaccine-table td{display:block;width:100%}
#gmp .entry .gmp-vaccine-table table{border:0;box-shadow:none;background:none;border-radius:0}
#gmp .entry .gmp-vaccine-table thead{display:none}
#gmp .entry .gmp-vaccine-table tr{background:#fff;border:1px solid var(--line);border-radius:16px;box-shadow:var(--shadow);padding:14px 16px;margin-bottom:12px}
#gmp .entry .gmp-vaccine-table tbody tr:nth-child(even) td,#gmp .entry .gmp-vaccine-table tbody tr:hover td{background:none}
#gmp .entry .gmp-vaccine-table td{border:0;padding:4px 0;text-align:left !important;font-size:14.5px}
#gmp .entry .gmp-vaccine-table td:first-child{font-size:16px;padding-bottom:8px}
#gmp .entry .gmp-vaccine-table td:empty{display:none}
#gmp .entry .gmp-vaccine-table td:nth-child(2)::before{content:"Doses: ";font-weight:600;color:var(--ink)}
#gmp .entry .gmp-vaccine-table td:nth-child(3)::before{content:"Brand: ";font-weight:600;color:var(--ink)}
#gmp .entry .gmp-vaccine-table td:nth-child(4)::before{content:"Protection: ";font-weight:600;color:var(--ink)}
#gmp .entry .gmp-vaccine-table td:last-child{margin-top:8px;padding-top:10px;border-top:1px solid var(--line);font-size:17px}
}

/* Price cards with photos, no link (1.0.11) */
#gmp .entry .gmp-pricelist .pl-card{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:16px 22px 16px 16px;background:#fff;border:1px solid var(--line);border-radius:18px;box-shadow:var(--shadow)}
#gmp .entry .gmp-pricelist .pl-img{flex:none;width:72px;height:72px;max-height:none;object-fit:cover;border-radius:14px;margin:0}
#gmp .entry .gmp-pricelist.has-img .pl-text{flex:1}
@media (max-width:600px){
#gmp .entry .gmp-pricelist .pl-card{flex-wrap:wrap;padding:14px;gap:12px}
#gmp .entry .gmp-pricelist .pl-img{width:56px;height:56px;border-radius:12px}
#gmp .entry .gmp-pricelist.has-img .pl-text{flex:1 1 calc(100% - 140px)}
#gmp .entry .gmp-pricelist .pl-card .pl-price{font-size:21px}
}
