/* =====================================================================
   Medical 1 — design system & components
   Aesthetic: clean clinical white/blue/sky, soft layered depth, a subtle
   aurora gradient mesh, Sora display + Manrope body (Tajawal for Arabic).
   Mobile-first. Dark mode via html[data-theme="dark"].
   ===================================================================== */

/* ── Design tokens ──────────────────────────────────────────────── */
:root{
	/* These three are also injected from the Customizer (functions.php). */
	--m1-primary:#1366E0;
	--m1-accent:#34C6F4;
	--m1-ink:#0A1F38;
	--m1-primary-rgb:19,102,224;
	--m1-accent-rgb:52,198,244;
	/* Readable accent for TEXT on light backgrounds (sky is too light for
	   4.5:1). Re-computed from the Customizer accent in functions.php. */
	--accent-text:#1487B0;
	/* Pharmacy badge colors (re-skinnable, clinical — not generic purple). */
	--m1-sale:#E0443E;
	--m1-rx:#0E7C86;
	--m1-wa:#25D366;
	--m1-star:#F5B301;

	--bg:#FFFFFF;
	--surface:#F4F8FD;
	--surface-2:#E9F2FB;
	--card:#FFFFFF;
	--text:#0A1F38;
	--muted:#5A6E86;
	--border:rgba(10,31,56,.10);
	--border-2:rgba(10,31,56,.06);
	--ring:rgba(var(--m1-primary-rgb),.55);

	--shadow-sm:0 1px 2px rgba(10,31,56,.06),0 1px 3px rgba(10,31,56,.05);
	--shadow-md:0 8px 24px rgba(10,31,56,.08);
	--shadow-lg:0 20px 50px rgba(10,31,56,.12);
	--shadow-primary:0 14px 34px rgba(var(--m1-primary-rgb),.30);

	--r-sm:8px; --r-md:14px; --r-lg:22px; --r-xl:30px; --r-full:999px;
	--container:1200px;
	--gap:24px;
	--ease:cubic-bezier(.16,1,.3,1);
	--dur:.35s;

	--f-display:'Sora',system-ui,sans-serif;
	--f-body:'Manrope',system-ui,-apple-system,'Segoe UI',sans-serif;
}
/* Arabic typography is scoped to the Arabic language specifically, so a
   non-Arabic second language (French, Urdu…) is NOT forced onto Tajawal. */
.medone-lang-ar{ --f-display:'Tajawal',sans-serif; --f-body:'Tajawal',sans-serif; }

html[data-theme="dark"]{
	--bg:#071426;
	--surface:#0C1D33;
	--surface-2:#102742;
	--card:#0E2138;
	--text:#EAF2FB;
	--muted:#93A8C4;
	--accent-text:var(--m1-accent); /* sky reads fine on dark surfaces */
	--border:rgba(var(--m1-accent-rgb),.16);
	--border-2:rgba(255,255,255,.05);
	--shadow-sm:0 1px 2px rgba(0,0,0,.4);
	--shadow-md:0 10px 30px rgba(0,0,0,.45);
	--shadow-lg:0 24px 60px rgba(0,0,0,.55);
}

/* ── Base ───────────────────────────────────────────────────────── */
*,*::before,*::after{ box-sizing:border-box; }
html{ scroll-behavior:smooth; }
body{
	margin:0; background:var(--bg); color:var(--text);
	font-family:var(--f-body); font-size:17px; line-height:1.7;
	-webkit-font-smoothing:antialiased; overflow-x:hidden;
	transition:background .4s ease,color .4s ease;
}
h1,h2,h3,h4{ font-family:var(--f-display); color:var(--text); line-height:1.12; margin:0 0 .5em; font-weight:700; letter-spacing:-.02em; }
p{ margin:0 0 1rem; }
a{ color:var(--m1-primary); text-decoration:none; transition:color .2s; }
a:hover{ color:var(--accent-text); }
img{ max-width:100%; height:auto; display:block; }
ul{ margin:0; padding:0; list-style:none; }
:focus-visible{ outline:3px solid var(--ring); outline-offset:2px; border-radius:4px; }
.m1-ic{ width:1.2em; height:1.2em; display:inline-block; vertical-align:middle; }
.screen-reader-text{ position:absolute!important; width:1px; height:1px; overflow:hidden; clip:rect(0,0,0,0); white-space:nowrap; border:0; }

/* ── Layout primitives ──────────────────────────────────────────── */
.m1-container{ width:100%; max-width:var(--container); margin-inline:auto; padding-inline:20px; }
.m1-section{ padding-block:clamp(56px,8vw,110px); position:relative; }
.m1-section--tint{ background:var(--surface); }
.m1-section--mesh{ background:
	radial-gradient(40% 60% at 12% 0%,rgba(var(--m1-accent-rgb),.10),transparent 70%),
	radial-gradient(40% 55% at 100% 30%,rgba(var(--m1-primary-rgb),.08),transparent 70%),
	var(--bg); }
.m1-head{ max-width:660px; margin:0 auto clamp(34px,5vw,60px); text-align:center; }
.m1-head--left{ margin-inline:0; text-align:start; }
.m1-eyebrow{
	display:inline-flex; align-items:center; gap:8px; font-family:var(--f-display);
	font-size:.78rem; font-weight:600; letter-spacing:.14em; text-transform:uppercase;
	color:var(--m1-primary); background:rgba(var(--m1-primary-rgb),.08);
	padding:7px 14px; border-radius:var(--r-full); margin-bottom:18px;
}
.m1-eyebrow .m1-ic{ width:15px; height:15px; }
.m1-h2{ font-size:clamp(1.7rem,3.6vw,2.7rem); }
.m1-lead{ color:var(--muted); font-size:1.06rem; }
.m1-grid{ display:grid; gap:var(--gap); }

/* ── Buttons ────────────────────────────────────────────────────── */
.m1-btn{
	--c:var(--m1-primary);
	display:inline-flex; align-items:center; justify-content:center; gap:10px;
	font-family:var(--f-display); font-weight:600; font-size:.96rem;
	padding:14px 26px; border-radius:var(--r-full); border:1.6px solid transparent;
	cursor:pointer; transition:transform var(--dur) var(--ease),box-shadow var(--dur),background .25s,color .25s,border-color .25s;
	white-space:nowrap; line-height:1;
}
.m1-btn .m1-ic{ width:18px; height:18px; }
.m1-btn--primary{ background:var(--m1-primary); background:linear-gradient(135deg,var(--m1-primary),color-mix(in srgb,var(--m1-accent) 55%,var(--m1-primary))); color:#fff; box-shadow:var(--shadow-primary); }
.m1-btn--primary:hover{ color:#fff; transform:translateY(-3px); box-shadow:0 18px 40px rgba(var(--m1-primary-rgb),.42); }
.m1-btn--ghost{ background:transparent; color:var(--text); border-color:var(--border); }
.m1-btn--ghost:hover{ color:var(--m1-primary); border-color:var(--m1-primary); transform:translateY(-3px); }
.m1-btn--wa{ background:#25D366; color:#fff; box-shadow:0 12px 30px rgba(37,211,102,.32); }
.m1-btn--wa:hover{ color:#fff; transform:translateY(-3px); box-shadow:0 16px 38px rgba(37,211,102,.45); }
.m1-btn--lg{ padding:17px 34px; font-size:1.04rem; }
.m1-btn--block{ width:100%; }

/* ── Top contact bar ────────────────────────────────────────────── */
.m1-topbar{ background:var(--m1-ink); color:#cfe0f5; font-size:.84rem; }
html[data-theme="dark"] .m1-topbar{ background:#050f1d; }
.m1-topbar .m1-container{ display:flex; align-items:center; justify-content:space-between; gap:16px; min-height:42px; flex-wrap:wrap; }
.m1-topbar a{ color:#cfe0f5; display:inline-flex; align-items:center; gap:7px; }
.m1-topbar a:hover{ color:#fff; }
.m1-topbar .m1-ic{ width:15px; height:15px; color:var(--m1-accent); }
.m1-topbar__set{ display:flex; align-items:center; gap:18px; }
.m1-topbar__contact{ display:flex; align-items:center; gap:18px; flex-wrap:wrap; }
/* Keep the tap-to-call number on mobile (highest-intent action); drop the
   secondary hours + address to save space. */
@media(max-width:720px){ .m1-topbar__contact>span{ display:none; } .m1-topbar__set{ display:none; } }

/* ── Header / navigation ────────────────────────────────────────── */
.m1-header{ position:sticky; top:0; z-index:900; background:rgba(255,255,255,.82); backdrop-filter:blur(14px); border-bottom:1px solid var(--border-2); transition:box-shadow .3s,background .3s; }
html[data-theme="dark"] .m1-header{ background:rgba(7,20,38,.82); }
.m1-header.is-stuck{ box-shadow:var(--shadow-md); }
.m1-bar{ display:flex; align-items:center; gap:18px; min-height:74px; }
.m1-logo{ display:inline-flex; align-items:center; gap:11px; font-family:var(--f-display); font-weight:700; font-size:1.22rem; color:var(--text); letter-spacing:-.02em; }
.m1-logo:hover{ color:var(--text); }
.m1-logo__mark{ width:42px; height:42px; border-radius:12px; display:grid; place-items:center; background:linear-gradient(135deg,var(--m1-primary),var(--m1-accent)); color:#fff; box-shadow:var(--shadow-primary); flex-shrink:0; }
.m1-logo__mark .m1-ic{ width:24px; height:24px; }
.m1-logo b{ color:var(--m1-primary); }
.m1-nav{ display:flex; align-items:center; gap:4px; margin-inline-start:auto; }
.m1-nav>ul,.m1-nav .m1-menu{ display:flex; align-items:center; gap:2px; list-style:none; margin:0; padding:0; }
.m1-nav a{ color:var(--text); font-weight:600; font-size:.95rem; padding:10px 14px; border-radius:var(--r-sm); position:relative; display:block; }
.m1-nav a::after{ content:""; position:absolute; left:14px; right:14px; bottom:6px; height:2px; background:var(--m1-accent); transform:scaleX(0); transform-origin:center; transition:transform .25s var(--ease); border-radius:2px; }
.m1-nav a:hover,.m1-nav .current-menu-item>a,.m1-nav .current_page_item>a{ color:var(--m1-primary); }
.m1-nav a:hover::after,.m1-nav .current-menu-item>a::after{ transform:scaleX(1); }
.m1-nav .sub-menu{ position:absolute; top:100%; inset-inline-start:0; min-width:210px; background:var(--card); border:1px solid var(--border); border-radius:var(--r-md); box-shadow:var(--shadow-lg); padding:8px; opacity:0; visibility:hidden; transform:translateY(8px); transition:.25s var(--ease); }
.m1-nav li{ position:relative; }
.m1-nav li:hover>.sub-menu{ opacity:1; visibility:visible; transform:none; }
.m1-nav .sub-menu a{ display:block; }
.m1-nav .sub-menu a::after{ display:none; }
.m1-actions{ display:flex; align-items:center; gap:10px; margin-inline-start:8px; }
.m1-iconbtn{ width:42px; height:42px; border-radius:var(--r-full); display:grid; place-items:center; background:var(--surface); border:1px solid var(--border); color:var(--text); cursor:pointer; transition:.2s; }
.m1-iconbtn:hover{ color:var(--m1-primary); border-color:var(--m1-primary); }
.m1-iconbtn .m1-ic{ width:20px; height:20px; }
.m1-lang{ display:flex; align-items:center; justify-content:center; font-family:var(--f-display); font-weight:700; font-size:.82rem; width:auto; padding-inline:13px; gap:6px; }
.m1-lang .m1-ic{ width:17px; height:17px; }
.m1-iconbtn .m1-ic-sun{ display:none; }
html[data-theme="dark"] .m1-iconbtn .m1-ic-moon{ display:none; }
html[data-theme="dark"] .m1-iconbtn .m1-ic-sun{ display:block; }
#m1-theme .m1-ic{ pointer-events:none; }
.m1-header .m1-btn{ padding:11px 20px; font-size:.9rem; }
.m1-burger{ display:none; }

/* Mobile nav drawer */
.m1-mobile{ position:fixed; inset:0; z-index:1000; visibility:hidden; pointer-events:none; }
.m1-mobile__scrim{ position:absolute; inset:0; background:rgba(5,15,28,.55); opacity:0; transition:opacity .3s; }
.m1-mobile__panel{ position:absolute; inset-block:0; inset-inline-end:0; width:min(86vw,360px); background:var(--bg); box-shadow:var(--shadow-lg); padding:22px; display:flex; flex-direction:column; gap:6px; transform:translateX(100%); transition:transform .35s var(--ease); overflow-y:auto; }
.medone-rtl .m1-mobile__panel{ transform:translateX(-100%); }
.m1-mobile.open{ visibility:visible; pointer-events:auto; }
.m1-mobile.open .m1-mobile__scrim{ opacity:1; }
.m1-mobile.open .m1-mobile__panel{ transform:none; }
.m1-mobile__head{ display:flex; align-items:center; justify-content:space-between; margin-bottom:10px; }
.m1-mobile a{ color:var(--text); font-weight:600; padding:13px 12px; border-radius:var(--r-sm); font-size:1.04rem; }
.m1-mobile a:hover{ background:var(--surface); color:var(--m1-primary); }
.m1-mobile .m1-btn{ margin-top:10px; }

/* ── Hero ───────────────────────────────────────────────────────── */
.m1-hero{ position:relative; overflow:hidden; background:
	radial-gradient(60% 80% at 80% 0%,rgba(var(--m1-accent-rgb),.16),transparent 60%),
	radial-gradient(50% 70% at 0% 100%,rgba(var(--m1-primary-rgb),.12),transparent 60%),
	var(--bg); }
.m1-hero__inner{ display:grid; grid-template-columns:1fr; gap:30px; align-items:center; padding-block:clamp(44px,7vw,84px); }
.m1-hero__copy{ position:relative; z-index:2; max-width:620px; }
.m1-hero h1{ font-size:clamp(2.1rem,5.4vw,3.7rem); margin-bottom:18px; }
.m1-hero h1 .hl{ background:linear-gradient(120deg,var(--m1-primary),var(--m1-accent)); -webkit-background-clip:text; background-clip:text; color:transparent; }
/* Solid-color fallback so the headline is never invisible. */
@supports not ((-webkit-background-clip:text) or (background-clip:text)){ .m1-hero h1 .hl{ color:var(--m1-primary); -webkit-text-fill-color:currentColor; } }
@media (forced-colors:active){ .m1-hero h1 .hl{ color:var(--m1-primary); -webkit-text-fill-color:currentColor; } }
.m1-hero__sub{ font-size:clamp(1.02rem,1.6vw,1.18rem); color:var(--muted); margin-bottom:28px; max-width:540px; }
.m1-hero__cta{ display:flex; flex-wrap:wrap; gap:14px; margin-bottom:30px; }
.m1-hero__trust{ display:flex; align-items:center; gap:18px; flex-wrap:wrap; color:var(--muted); font-size:.9rem; font-weight:600; }
.m1-hero__trust span{ display:inline-flex; align-items:center; gap:7px; }
.m1-hero__trust .m1-ic{ width:18px; height:18px; color:var(--m1-primary); }
.m1-hero__visual{ position:relative; min-height:340px; display:grid; place-items:center; }
.m1-hero__canvas{ position:absolute; inset:0; }
.m1-hero__canvas canvas{ width:100%!important; height:100%!important; display:block; }
.m1-hero__ring{ position:absolute; width:78%; aspect-ratio:1; border-radius:50%; border:1px dashed rgba(var(--m1-primary-rgb),.22); animation:m1spin 40s linear infinite; }
.m1-hero__ring::before{ content:""; position:absolute; inset:14%; border-radius:50%; border:1px dashed rgba(var(--m1-accent-rgb),.22); }
@keyframes m1spin{ to{ transform:rotate(360deg); } }
.m1-floatcard{ position:absolute; z-index:3; background:var(--card); border:1px solid var(--border); border-radius:var(--r-md); box-shadow:var(--shadow-lg); padding:13px 16px; display:flex; align-items:center; gap:11px; font-size:.85rem; }
.m1-floatcard b{ display:block; font-family:var(--f-display); color:var(--text); }
.m1-floatcard small{ color:var(--muted); }
.m1-floatcard__ic{ width:38px; height:38px; border-radius:11px; display:grid; place-items:center; background:rgba(var(--m1-primary-rgb),.1); color:var(--m1-primary); flex-shrink:0; }
.m1-floatcard--a{ top:8%; inset-inline-start:0; animation:m1float 6s ease-in-out infinite; }
.m1-floatcard--b{ bottom:10%; inset-inline-end:0; animation:m1float 6s ease-in-out infinite 1.2s; }
.m1-floatcard__ic.is-wa{ background:rgba(37,211,102,.14); color:#1fae57; }
@keyframes m1float{ 0%,100%{ transform:translateY(0); } 50%{ transform:translateY(-12px); } }

/* Reusable 3D object mount (Three.js scenes on inner pages). */
.m1-obj3d{ position:relative; width:100%; min-height:340px; }
.m1-obj3d canvas{ width:100%!important; height:100%!important; display:block; }
.m1-obj3d__ring{ position:absolute; inset:8% ; margin:auto; width:80%; aspect-ratio:1; border-radius:50%; border:1px dashed rgba(var(--m1-primary-rgb),.2); animation:m1spin 44s linear infinite; pointer-events:none; }

/* 3D object filling a split-media box (e.g. the Why-Us molecule). */
.m1-split__media--3d{ cursor:grab; }
.m1-split__media--3d:active{ cursor:grabbing; }
.m1-split__media--3d .m1-obj3d{ position:absolute; inset:0; width:100%; height:100%; min-height:0; }
.m1-obj3d__hint{ position:absolute; inset-block-end:14px; inset-inline-start:14px; z-index:2; display:inline-flex; align-items:center; gap:6px; padding:6px 12px; font-size:.74rem; font-weight:600; letter-spacing:.02em; color:var(--m1-primary); background:rgba(255,255,255,.72); backdrop-filter:blur(6px); border:1px solid var(--border); border-radius:999px; pointer-events:none; }
[data-theme="dark"] .m1-obj3d__hint{ background:rgba(10,31,56,.55); color:#cfe4ff; }

/* Tactile 3D tilt on product visuals (cheap, GPU-only — no WebGL per card). */
.m1-product__media{ perspective:700px; }
.m1-pv{ transform-style:preserve-3d; transition:transform .5s var(--ease); }
.m1-product:hover .m1-pv{ transform:translateY(-4px) rotateX(8deg) rotateY(-12deg) scale(1.06); }
.medone-rtl .m1-product:hover .m1-pv{ transform:translateY(-4px) rotateX(8deg) rotateY(12deg) scale(1.06); }

@media(min-width:980px){
	.m1-hero__inner{ grid-template-columns:1.05fr .95fr; gap:40px; }
	.m1-hero__visual{ min-height:520px; }
}

/* The floating hero cards belong only beside the two-column desktop layout;
   hide them on phones AND tablets so they never cover the 3D art. */
@media(max-width:979px){
	.m1-floatcard{ display:none; }
}
@media(max-width:640px){
	.m1-hero__visual{ min-height:360px; }
	.m1-obj3d{ min-height:300px; }
}

/* ── Stat strip ─────────────────────────────────────────────────── */
.m1-stats{ display:grid; grid-template-columns:repeat(2,1fr); gap:1px; background:var(--border); border:1px solid var(--border); border-radius:var(--r-lg); overflow:hidden; }
.m1-stat{ background:var(--card); padding:26px 18px; text-align:center; }
.m1-stat__num{ font-family:var(--f-display); font-weight:800; font-size:clamp(1.9rem,4vw,2.6rem); color:var(--m1-primary); line-height:1; }
.m1-stat__num .sfx{ color:var(--accent-text); }
.m1-stat__lbl{ color:var(--muted); font-weight:600; font-size:.9rem; margin-top:8px; }
@media(min-width:760px){ .m1-stats{ grid-template-columns:repeat(4,1fr); } }

/* ── Service cards ──────────────────────────────────────────────── */
.m1-grid--svc{ grid-template-columns:1fr; }
@media(min-width:560px){ .m1-grid--svc{ grid-template-columns:repeat(2,1fr); } }
@media(min-width:900px){ .m1-grid--svc{ grid-template-columns:repeat(4,1fr); } }
.m1-svc{ background:var(--card); border:1px solid var(--border); border-radius:var(--r-lg); padding:28px 24px; position:relative; overflow:hidden; transition:transform var(--dur) var(--ease),box-shadow var(--dur),border-color var(--dur); }
.m1-svc::before{ content:""; position:absolute; inset-block-start:0; inset-inline:0; height:4px; background:linear-gradient(90deg,var(--m1-primary),var(--m1-accent)); transform:scaleX(0); transform-origin:inline-start; transition:transform var(--dur) var(--ease); }
.m1-svc:hover{ transform:translateY(-6px); box-shadow:var(--shadow-lg); border-color:transparent; }
.m1-svc:hover::before{ transform:scaleX(1); }
.m1-svc__icon{ width:60px; height:60px; border-radius:16px; display:grid; place-items:center; background:linear-gradient(135deg,rgba(var(--m1-primary-rgb),.12),rgba(var(--m1-accent-rgb),.12)); color:var(--m1-primary); margin-bottom:18px; transition:.3s; }
.m1-svc__icon .m1-ic{ width:30px; height:30px; }
.m1-svc:hover .m1-svc__icon{ background:linear-gradient(135deg,var(--m1-primary),var(--m1-accent)); color:#fff; }
.m1-svc h3{ font-size:1.18rem; margin-bottom:8px; }
.m1-svc p{ color:var(--muted); font-size:.95rem; margin-bottom:14px; }
.m1-svc__more{ font-family:var(--f-display); font-weight:600; font-size:.9rem; display:inline-flex; align-items:center; gap:6px; }
.m1-svc__more .m1-ic{ width:16px; height:16px; transition:transform .25s; }
.medone-rtl .m1-svc__more .m1-ic{ transform:scaleX(-1); }
.m1-svc:hover .m1-svc__more .m1-ic{ transform:translateX(4px); }
.medone-rtl .m1-svc:hover .m1-svc__more .m1-ic{ transform:scaleX(-1) translateX(4px); }

/* ── Steps / how it works ───────────────────────────────────────── */
.m1-grid--steps{ grid-template-columns:1fr; counter-reset:step; }
@media(min-width:560px){ .m1-grid--steps{ grid-template-columns:repeat(2,1fr); } }
@media(min-width:980px){ .m1-grid--steps{ grid-template-columns:repeat(4,1fr); } }
.m1-step{ text-align:center; padding:10px; position:relative; }
.m1-step__ic{ width:74px; height:74px; margin:0 auto 16px; border-radius:50%; display:grid; place-items:center; background:var(--card); border:1px solid var(--border); color:var(--m1-primary); box-shadow:var(--shadow-sm); position:relative; }
.m1-step__ic .m1-ic{ width:32px; height:32px; }
.m1-step__ic::after{ counter-increment:step; content:counter(step); position:absolute; inset-block-start:-6px; inset-inline-end:-6px; width:26px; height:26px; border-radius:50%; background:var(--m1-accent); color:#04263a; font-family:var(--f-display); font-weight:700; font-size:.8rem; display:grid; place-items:center; }
.m1-step h3{ font-size:1.1rem; margin-bottom:6px; }
.m1-step p{ color:var(--muted); font-size:.92rem; margin:0; }

/* ── Product / pharmacy cards ───────────────────────────────────── */
.m1-shop-tools{ display:flex; flex-wrap:wrap; gap:10px; justify-content:center; margin-bottom:34px; }
.m1-filter{ font-family:var(--f-display); font-weight:600; font-size:.9rem; padding:10px 18px; border-radius:var(--r-full); border:1.5px solid var(--border); background:var(--card); color:var(--text); cursor:pointer; transition:.2s; display:inline-flex; align-items:center; gap:8px; }
.m1-filter .m1-ic{ width:16px; height:16px; }
.m1-filter:hover{ border-color:var(--m1-primary); color:var(--m1-primary); }
.m1-filter.active{ background:linear-gradient(135deg,var(--m1-primary),var(--m1-accent)); color:#fff; border-color:transparent; box-shadow:var(--shadow-primary); }
.m1-grid--shop{ grid-template-columns:repeat(2,1fr); }
@media(min-width:720px){ .m1-grid--shop{ grid-template-columns:repeat(3,1fr); } }
@media(min-width:1000px){ .m1-grid--shop{ grid-template-columns:repeat(4,1fr); } }
.m1-product{ background:var(--card); border:1px solid var(--border); border-radius:var(--r-lg); overflow:hidden; display:flex; flex-direction:column; transition:transform var(--dur) var(--ease),box-shadow var(--dur),border-color var(--dur); }
.m1-product:hover{ transform:translateY(-6px); box-shadow:var(--shadow-lg); border-color:transparent; }
.m1-product__media{ position:relative; aspect-ratio:1/.86; background:
	radial-gradient(60% 60% at 50% 38%,rgba(var(--m1-accent-rgb),.14),transparent 70%),var(--surface);
	display:grid; place-items:center; padding:14px; }
.m1-product__media img{ width:100%; height:100%; object-fit:cover; position:absolute; inset:0; }
.m1-pv{ width:78%; height:78%; filter:drop-shadow(0 12px 18px rgba(10,31,56,.16)); transition:transform .4s var(--ease); }
.m1-product:hover .m1-pv{ transform:translateY(-4px) scale(1.04); }
.m1-badge{ position:absolute; inset-block-start:12px; inset-inline-start:12px; font-family:var(--f-display); font-weight:700; font-size:.72rem; letter-spacing:.03em; text-transform:uppercase; padding:5px 11px; border-radius:var(--r-full); background:var(--m1-ink); color:#fff; z-index:2; }
.m1-badge.is-sale{ background:var(--m1-sale); }
.m1-badge.is-rx{ background:var(--m1-rx); }
.m1-product__body{ padding:16px 16px 18px; display:flex; flex-direction:column; flex:1; }
.m1-product__cat{ font-size:.74rem; font-weight:700; text-transform:uppercase; letter-spacing:.08em; color:var(--accent-text); margin-bottom:6px; }
.m1-product__title{ font-family:var(--f-display); font-weight:600; font-size:1rem; line-height:1.3; margin-bottom:6px; color:var(--text); }
.m1-product__desc{ color:var(--muted); font-size:.86rem; margin-bottom:14px; flex:1; }
.m1-price{ font-family:var(--f-display); font-weight:800; font-size:1.22rem; color:var(--text); }
.m1-price-old{ color:var(--muted); text-decoration:line-through; font-weight:600; font-size:.95rem; }
.m1-product__foot{ display:flex; align-items:center; justify-content:space-between; gap:10px; margin-top:auto; }
.m1-product__wa{ width:44px; height:44px; border-radius:var(--r-full); background:#25D366; color:#fff; display:grid; place-items:center; flex-shrink:0; box-shadow:0 8px 20px rgba(37,211,102,.32); transition:.25s; }
.m1-product__wa:hover{ color:#fff; transform:scale(1.08); }
.m1-product__wa .m1-ic{ width:22px; height:22px; }

/* ── Doctor cards ───────────────────────────────────────────────── */
.m1-grid--docs{ grid-template-columns:repeat(2,1fr); }
@media(min-width:760px){ .m1-grid--docs{ grid-template-columns:repeat(3,1fr); } }
@media(min-width:1040px){ .m1-grid--docs{ grid-template-columns:repeat(4,1fr); } }
.m1-doctor{ background:var(--card); border:1px solid var(--border); border-radius:var(--r-lg); overflow:hidden; transition:transform var(--dur) var(--ease),box-shadow var(--dur),border-color var(--dur); }
.m1-doctor:hover{ transform:translateY(-6px); box-shadow:var(--shadow-lg); border-color:transparent; }
.m1-doctor__photo{ aspect-ratio:1/1.04; position:relative; background:linear-gradient(160deg,rgba(var(--m1-primary-rgb),.16),rgba(var(--m1-accent-rgb),.12)); display:grid; place-items:center; overflow:hidden; }
.m1-doctor__photo img{ position:absolute; inset:0; width:100%; height:100%; object-fit:cover; }
.m1-doctor__ph{ width:64%; height:64%; color:rgba(var(--m1-primary-rgb),.5); }
.m1-doctor__tag{ position:absolute; inset-block-end:12px; inset-inline-start:12px; background:var(--card); color:var(--m1-primary); font-family:var(--f-display); font-weight:600; font-size:.78rem; padding:5px 12px; border-radius:var(--r-full); box-shadow:var(--shadow-sm); }
.m1-doctor__body{ padding:18px 18px 20px; text-align:center; }
.m1-doctor__body h3{ font-size:1.1rem; margin-bottom:3px; }
.m1-doctor__role{ color:var(--accent-text); font-weight:600; font-size:.9rem; margin-bottom:12px; }
.m1-doctor__social{ display:flex; justify-content:center; gap:8px; }
.m1-doctor__social a{ width:34px; height:34px; border-radius:50%; display:grid; place-items:center; background:var(--surface); color:var(--muted); }
.m1-doctor__social a:hover{ background:var(--m1-primary); color:#fff; }
.m1-doctor__social .m1-ic{ width:17px; height:17px; }

/* ── Split / feature band ───────────────────────────────────────── */
.m1-split{ display:grid; grid-template-columns:1fr; gap:34px; align-items:center; }
@media(min-width:920px){ .m1-split{ grid-template-columns:1fr 1fr; gap:54px; } .m1-split--rev .m1-split__media{ order:-1; } }
.m1-split__media{ position:relative; border-radius:var(--r-xl); overflow:hidden; aspect-ratio:1/.9; background:linear-gradient(160deg,rgba(var(--m1-primary-rgb),.14),rgba(var(--m1-accent-rgb),.1)); box-shadow:var(--shadow-lg); display:grid; place-items:center; }
.m1-split__media img{ position:absolute; inset:0; width:100%; height:100%; object-fit:cover; }
.m1-split__media .m1-ic{ width:34%; height:34%; color:rgba(var(--m1-primary-rgb),.45); }
.m1-feat{ display:flex; gap:14px; margin-bottom:18px; }
.m1-feat__ic{ width:48px; height:48px; border-radius:13px; flex-shrink:0; display:grid; place-items:center; background:rgba(var(--m1-primary-rgb),.1); color:var(--m1-primary); }
.m1-feat__ic .m1-ic{ width:24px; height:24px; }
.m1-feat h3{ font-size:1.1rem; margin-bottom:3px; }
.m1-feat p{ color:var(--muted); font-size:.94rem; margin:0; }
.m1-check{ display:flex; align-items:center; gap:10px; margin-bottom:11px; font-weight:600; }
.m1-check .m1-ic{ width:22px; height:22px; color:#fff; background:var(--m1-primary); border-radius:50%; padding:4px; flex-shrink:0; }

/* ── Testimonials ───────────────────────────────────────────────── */
.m1-grid--testi{ grid-template-columns:1fr; }
@media(min-width:820px){ .m1-grid--testi{ grid-template-columns:repeat(3,1fr); } }
.m1-testi{ background:var(--card); border:1px solid var(--border); border-radius:var(--r-lg); padding:28px 26px; position:relative; }
.m1-testi__q{ width:44px; height:44px; color:var(--m1-accent); opacity:.5; margin-bottom:8px; }
.m1-testi__stars{ display:flex; gap:3px; color:var(--m1-star); margin-bottom:14px; }
.m1-testi__stars .m1-ic{ width:18px; height:18px; fill:var(--m1-star); stroke:var(--m1-star); }
.m1-testi p{ font-size:1.02rem; color:var(--text); }
.m1-testi__who{ display:flex; align-items:center; gap:12px; margin-top:18px; }
.m1-testi__av{ width:46px; height:46px; border-radius:50%; background:linear-gradient(135deg,var(--m1-primary),var(--m1-accent)); color:#fff; display:grid; place-items:center; font-family:var(--f-display); font-weight:700; }
.m1-testi__who b{ font-family:var(--f-display); display:block; }
.m1-testi__who small{ color:var(--muted); }

/* ── FAQ accordion ──────────────────────────────────────────────── */
.m1-faq{ max-width:820px; margin-inline:auto; }
.m1-faq__item{ background:var(--card); border:1px solid var(--border); border-radius:var(--r-md); margin-bottom:12px; overflow:hidden; }
.m1-faq__q{ width:100%; text-align:start; background:none; border:0; cursor:pointer; padding:20px 22px; font-family:var(--f-display); font-weight:600; font-size:1.04rem; color:var(--text); display:flex; align-items:center; justify-content:space-between; gap:14px; }
.m1-faq__q .m1-ic{ width:22px; height:22px; color:var(--m1-primary); flex-shrink:0; transition:transform .3s; }
.m1-faq__item.open .m1-faq__q .m1-ic{ transform:rotate(45deg); }
.m1-faq__a{ max-height:0; overflow:hidden; transition:max-height .35s var(--ease); }
.m1-faq__a div{ padding:0 22px 20px; color:var(--muted); }

/* ── CTA band ───────────────────────────────────────────────────── */
.m1-cta{ position:relative; overflow:hidden; border-radius:var(--r-xl); padding:clamp(36px,6vw,64px); text-align:center; color:#fff; background:var(--m1-primary); background:linear-gradient(135deg,var(--m1-primary),color-mix(in srgb,var(--m1-accent) 60%,var(--m1-primary))); box-shadow:var(--shadow-lg); }
.m1-cta::before{ content:""; position:absolute; inset:0; background:radial-gradient(50% 80% at 90% 0%,rgba(255,255,255,.18),transparent 60%); }
.m1-cta>*{ position:relative; z-index:1; }
.m1-cta h2{ color:#fff; font-size:clamp(1.6rem,3.4vw,2.5rem); }
.m1-cta p{ color:rgba(255,255,255,.9); max-width:560px; margin:0 auto 26px; }
.m1-cta .m1-btn--ghost{ color:#fff; border-color:rgba(255,255,255,.5); }
.m1-cta .m1-btn--ghost:hover{ background:#fff; color:var(--m1-primary); }
.m1-cta__row{ display:flex; gap:14px; justify-content:center; flex-wrap:wrap; }

/* ── Blog cards ─────────────────────────────────────────────────── */
.m1-grid--blog{ grid-template-columns:1fr; }
@media(min-width:680px){ .m1-grid--blog{ grid-template-columns:repeat(2,1fr); } }
@media(min-width:1000px){ .m1-grid--blog{ grid-template-columns:repeat(3,1fr); } }
.m1-post{ background:var(--card); border:1px solid var(--border); border-radius:var(--r-lg); overflow:hidden; transition:transform var(--dur) var(--ease),box-shadow var(--dur),border-color var(--dur); }
.m1-post:hover{ transform:translateY(-6px); box-shadow:var(--shadow-lg); border-color:transparent; }
.m1-post__media{ aspect-ratio:16/10; background:linear-gradient(150deg,rgba(var(--m1-primary-rgb),.14),rgba(var(--m1-accent-rgb),.1)); position:relative; display:grid; place-items:center; }
.m1-post__media img{ position:absolute; inset:0; width:100%; height:100%; object-fit:cover; }
.m1-post__media .m1-ic{ width:30%; height:30%; color:rgba(var(--m1-primary-rgb),.4); }
.m1-post__body{ padding:22px 22px 24px; }
.m1-post__meta{ font-size:.82rem; color:var(--accent-text); font-weight:700; text-transform:uppercase; letter-spacing:.06em; margin-bottom:10px; }
.m1-post__body h3{ font-size:1.16rem; margin-bottom:8px; }
.m1-post__body h3 a{ color:var(--text); }
.m1-post__body h3 a:hover{ color:var(--m1-primary); }
.m1-post__body p{ color:var(--muted); font-size:.93rem; margin-bottom:14px; }

/* ── Forms ──────────────────────────────────────────────────────── */
.m1-form{ background:var(--card); border:1px solid var(--border); border-radius:var(--r-lg); padding:clamp(24px,4vw,38px); box-shadow:var(--shadow-md); }
.m1-form__grid{ display:grid; grid-template-columns:1fr; gap:16px; }
@media(min-width:620px){ .m1-form__grid--2{ grid-template-columns:1fr 1fr; } }
.m1-field{ display:flex; flex-direction:column; gap:7px; }
.m1-field label{ font-family:var(--f-display); font-weight:600; font-size:.88rem; }
.m1-input{ font-family:var(--f-body); font-size:1rem; color:var(--text); background:var(--surface); border:1.5px solid var(--border); border-radius:var(--r-sm); padding:13px 15px; width:100%; transition:border-color .2s,box-shadow .2s; }
.m1-input:focus{ outline:none; border-color:var(--m1-primary); box-shadow:0 0 0 4px var(--ring); }
textarea.m1-input{ resize:vertical; min-height:130px; }
.m1-field--full{ grid-column:1/-1; }

/* ── Page hero (inner pages) ────────────────────────────────────── */
.m1-pagehero{ position:relative; padding-block:clamp(48px,7vw,86px); text-align:center; background:
	radial-gradient(50% 80% at 80% 0%,rgba(var(--m1-accent-rgb),.14),transparent 60%),
	radial-gradient(50% 80% at 0% 100%,rgba(var(--m1-primary-rgb),.1),transparent 60%),
	var(--surface); border-bottom:1px solid var(--border-2); }
.m1-pagehero h1{ font-size:clamp(2rem,4.6vw,3.1rem); margin-bottom:12px; }
.m1-crumbs{ color:var(--muted); font-size:.9rem; font-weight:600; }
.m1-crumbs a{ color:var(--m1-primary); }
.m1-crumbs .sep{ margin-inline:8px; opacity:.5; }

/* ── Article / single content ───────────────────────────────────── */
.m1-article{ max-width:780px; margin-inline:auto; }
.m1-article p{ font-size:1.06rem; }
.m1-article h2,.m1-article h3{ margin-top:1.6em; }
.m1-prose img{ border-radius:var(--r-md); margin-block:1.4em; }

/* ── Footer ─────────────────────────────────────────────────────── */
.m1-footer{ background:var(--m1-ink); color:#b9cbe4; padding-block:clamp(48px,7vw,80px) 0; position:relative; border-top:3px solid transparent; border-image:linear-gradient(90deg,var(--m1-primary),var(--m1-accent)) 1; }
html[data-theme="dark"] .m1-footer{ background:#050f1d; }
.m1-footer a{ color:#b9cbe4; }
.m1-footer a:hover{ color:#fff; }
.m1-foot-grid{ display:grid; grid-template-columns:1fr; gap:34px; }
@media(min-width:680px){ .m1-foot-grid{ grid-template-columns:1.6fr 1fr 1fr; } }
@media(min-width:980px){ .m1-foot-grid{ grid-template-columns:1.8fr 1fr 1fr 1.4fr; } }
.m1-footer .m1-logo{ color:#fff; margin-bottom:16px; }
.m1-footer__about{ font-size:.95rem; color:#92a6c2; max-width:330px; }
.m1-foot-col h4{ color:#fff; font-size:1rem; margin-bottom:16px; }
.m1-foot-col li{ margin-bottom:10px; font-size:.93rem; }
.m1-foot-contact li{ display:flex; gap:10px; align-items:flex-start; }
.m1-foot-contact .m1-ic{ width:18px; height:18px; color:var(--m1-accent); flex-shrink:0; margin-top:3px; }
.m1-foot-social{ display:flex; gap:10px; margin-top:18px; }
.m1-foot-social a{ width:40px; height:40px; border-radius:50%; display:grid; place-items:center; background:rgba(255,255,255,.08); }
.m1-foot-social a:hover{ background:var(--m1-primary); }
.m1-foot-social .m1-ic{ width:19px; height:19px; }
.m1-foot-bottom{ border-top:1px solid rgba(255,255,255,.1); margin-top:48px; padding-block:24px; display:flex; align-items:center; justify-content:space-between; gap:14px; flex-wrap:wrap; font-size:.86rem; color:#8298b6; }
.m1-foot-bottom a{ color:var(--m1-accent); }

/* ── Floating WhatsApp ──────────────────────────────────────────── */
.m1-wafloat{ position:fixed; inset-block-end:24px; inset-inline-end:24px; z-index:980; width:58px; height:58px; border-radius:50%; background:#25D366; color:#fff; display:grid; place-items:center; box-shadow:0 12px 30px rgba(37,211,102,.45); transition:transform .3s; }
.m1-wafloat:hover{ color:#fff; transform:scale(1.08); }
.m1-wafloat .m1-ic{ width:30px; height:30px; }
.m1-wafloat::after{ content:""; position:absolute; inset:0; border-radius:50%; border:2px solid #25D366; animation:m1pulse 2.4s ease-out infinite; }
@keyframes m1pulse{ 0%{ transform:scale(1); opacity:.6; } 70%{ transform:scale(1.5); opacity:0; } 100%{ opacity:0; } }

/* ── Scroll reveal ──────────────────────────────────────────────── */
.m1-reveal{ opacity:0; transform:translateY(26px); transition:opacity .7s var(--ease),transform .7s var(--ease); }
.m1-reveal.in{ opacity:1; transform:none; }
.m1-reveal[data-d="1"]{ transition-delay:.08s; }
.m1-reveal[data-d="2"]{ transition-delay:.16s; }
.m1-reveal[data-d="3"]{ transition-delay:.24s; }

/* ── Pagination / misc ──────────────────────────────────────────── */
.m1-pager{ display:flex; gap:8px; justify-content:center; margin-top:40px; }
.m1-pager a,.m1-pager span{ min-width:44px; height:44px; padding:0 12px; border-radius:var(--r-sm); border:1px solid var(--border); display:inline-grid; place-items:center; font-weight:600; }
.m1-pager .current{ background:var(--m1-primary); color:#fff; border-color:transparent; }

/* ── Mobile header behaviour ────────────────────────────────────── */
@media(max-width:980px){
	.m1-nav,.m1-header .m1-btn--primary{ display:none; }
	.m1-burger{ display:grid; }
}

/* ── Reduced motion ─────────────────────────────────────────────── */
@media(prefers-reduced-motion:reduce){
	*,*::before,*::after{ animation-duration:.001ms!important; animation-iteration-count:1!important; transition-duration:.01ms!important; }
	.m1-reveal{ opacity:1; transform:none; }
}
