/* =========================================================================
   S R Pharmacy Storefront — 0.1.0
   Design tokens mirror the approved study (Direction 05 — final).
   ========================================================================= */

:root {
	--srp-base:#ffffff;
	--srp-surface:#f6f9fa;
	--srp-paper:#eef2f2;
	--srp-warm:#f2ede3;
	--srp-ink:#182630;
	--srp-muted:#4e6470;
	--srp-faint:#8b9ea8;
	--srp-line:#dfe6e8;
	--srp-line-strong:#c7d2d5;
	--srp-primary:#1f6f7c;
	--srp-primary-dark:#14313d;
	--srp-forest:#173039;
	--srp-cta:#d97642;
	--srp-cta-dark:#c26436;
	--srp-hero-panel:#1c3a4b;
	--srp-hero-kicker:#e3b781;
	--srp-hero-head:#f6f4ec;
	--srp-hero-sub:#c6d5d0;
	--srp-hero-edge:#cf9f5f;
	--srp-de-bg:#fff3d9;
	--srp-de-ink:#8a5a00;
	--srp-de-line:#ecd39c;
	--srp-radius:12px;
	--srp-font-display:"Newsreader", Georgia, "Times New Roman", serif;
	--srp-font-body:"Hanken Grotesk", system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;
	--srp-font-mono:"IBM Plex Mono", ui-monospace, "SFMono-Regular", Menlo, monospace;
}

/* ---- WooCommerce-native buttons (sitewide fix) ----------------------------
   Any element carrying only the parent block theme's ".wp-element-button"
   preset — WooCommerce's own "Apply coupon" / "Update cart" / the variation
   "Update" button, etc, wherever this stylesheet has no more specific rule
   for it — was rendering white text on a fully transparent background: not
   unstyled, genuinely invisible on this site's white pages. This is a real
   sitewide bug (found 16 Sep testing the single-product add-to-cart button,
   confirmed to also hit the cart page's coupon/update buttons), not
   deliberately blank. Give every such button real, visible colours as a
   floor; anything more specific declared elsewhere in this file (like
   .single_add_to_cart_button below) still wins on specificity. */
.wp-element-button.button, button.wp-element-button, input.wp-element-button {
	background:var(--srp-primary) !important; color:#fff !important; border:none !important;
}
.wp-element-button.button:hover, button.wp-element-button:hover, input.wp-element-button:hover {
	background:var(--srp-primary-dark) !important;
}

/* ---- German badge --------------------------------------------------------- */
.srp-de {
	display:inline-flex;
	align-items:center;
	gap:.35em;
	font-family:var(--srp-font-body);
	font-size:.72em;
	font-weight:700;
	line-height:1;
	letter-spacing:.01em;
	background:var(--srp-de-bg);
	color:var(--srp-de-ink);
	border:1px solid var(--srp-de-line);
	border-radius:5px;
	padding:.28em .5em;
	vertical-align:middle;
	white-space:nowrap;
}
.srp-de span { font-weight:700; }

/* ---- Single product: use bar -------------------------------------------- */
.srp-usebar {
	display:flex;
	flex-wrap:wrap;
	align-items:center;
	gap:.5rem .7rem;
	margin:.2rem 0 1rem;
}
.srp-brandtag {
	font-family:var(--srp-font-mono);
	font-size:.72rem;
	letter-spacing:.08em;
	text-transform:uppercase;
	color:var(--srp-muted);
	text-decoration:none;
}
.srp-brandtag:hover { color:var(--srp-primary); }
.srp-usebar .srp-use {
	flex-basis:100%;
	margin:.1rem 0 0;
	font-size:1.05rem;
	line-height:1.5;
	color:var(--srp-ink);
}

/* ---- Watch button ------------------------------------------------------- */
.srp-watch {
	display:inline-flex;
	align-items:center;
	gap:.5rem;
	margin-top:.9rem;
	padding:.7rem 1.1rem;
	font:600 .92rem/1 var(--srp-font-body);
	color:var(--srp-primary-dark);
	background:transparent;
	border:1px solid var(--srp-line-strong);
	border-radius:9px;
	cursor:pointer;
}
.srp-watch:hover { border-color:var(--srp-primary); color:var(--srp-primary); }
.srp-watch span { font-size:.8em; }

/* ---- Composition / dosage tab bodies ---------------------------------- */
.srp-composition, .srp-dosage { font-size:1rem; line-height:1.6; }
.srp-composition-note, .srp-dosage-note {
	margin-top:.6rem;
	font-size:.82rem;
	font-style:italic;
	color:var(--srp-faint);
}

/* ---- Video lightbox --------------------------------------------------- */
.srp-lightbox {
	position:fixed;
	inset:0;
	z-index:99999;
	display:flex;
	align-items:center;
	justify-content:center;
	padding:5vw;
	background:rgba(15,20,19,.82);
}
.srp-lightbox[hidden] { display:none; }
.srp-lightbox__frame {
	position:relative;
	width:min(960px, 100%);
	aspect-ratio:16/9;
	background:#000;
	border-radius:12px;
	overflow:hidden;
}
.srp-lightbox__frame iframe { width:100%; height:100%; border:0; }
.srp-lightbox__close {
	position:absolute;
	top:-2.6rem;
	right:0;
	background:transparent;
	border:0;
	color:#fff;
	font-size:1.6rem;
	line-height:1;
	cursor:pointer;
}

@media (prefers-reduced-motion: reduce) {
	* { scroll-behavior:auto !important; }
}

/* =========================================================================
   Storefront layout — header, homepage, concern / brand / A–Z pages
   ========================================================================= */

.srp-main { --srp-gutter:clamp(1rem, 4vw, 2.5rem); }
.srp-de--mini { font-size:.62em; padding:.15em .4em; }

/* ---- Header / nav ----------------------------------------------------- */
.srp-header { border-bottom:1px solid var(--srp-line); background:var(--srp-base); }
.srp-header__bar {
	max-width:1180px;
	margin-inline:auto;
	padding:.85rem var(--srp-gutter);
	gap:.9rem 1.5rem;
}
.srp-brand { line-height:1.25; }
.srp-brand__nm { display:block; font-family:var(--srp-font-display); font-weight:600; font-size:1.4rem; color:var(--srp-ink); text-decoration:none; }
.srp-brand__addr { display:block; margin-top:3px; font-family:var(--srp-font-mono); font-size:.66rem; letter-spacing:.03em; color:var(--srp-muted); }
.srp-brand__contact { display:flex; align-items:center; gap:.7rem; margin-top:.4rem; }
.srp-brand__tel { font-family:var(--srp-font-mono); font-size:.74rem; font-weight:600; color:var(--srp-ink); text-decoration:none; white-space:nowrap; }
.srp-brand__tel span { color:var(--srp-primary); }
.srp-brand__wa {
	font-size:.72rem; font-weight:600; color:var(--srp-primary); text-decoration:none;
	border:1.5px solid var(--srp-primary); border-radius:6px; padding:.26em .6em; line-height:1;
}
.srp-brand__wa:hover { background:var(--srp-primary); color:#fff; }
.srp-nav { display:flex; flex-wrap:wrap; align-items:center; gap:.35rem 1.1rem; font-size:.88rem; font-weight:600; }
.srp-nav a { color:var(--srp-muted); text-decoration:none; }
.srp-nav a:hover { color:var(--srp-ink); }
.srp-nav__cart { color:var(--srp-primary) !important; }

/* ---- Buttons / links ------------------------------------------------- */
.srp-btn {
	display:inline-block;
	padding:.7rem 1.3rem;
	font:700 .92rem/1 var(--srp-font-body);
	color:#fff; background:var(--srp-primary);
	border-radius:9px; text-decoration:none;
}
.srp-btn:hover { background:var(--srp-primary-dark); color:#fff; }
.srp-btn--dark { background:var(--srp-primary-dark); }
.srp-link { font-weight:600; color:var(--srp-primary-dark); text-decoration:none; }
.srp-link:hover { text-decoration:underline; }

/* ---- Homepage hero (neighbourhood pharmacy: trust intro + the assistant, already open) ---- */
.srp-hero { background:var(--srp-warm); }
.srp-hero__in {
	max-width:1180px; margin-inline:auto;
	padding:clamp(2.6rem, 5vw, 4.2rem) var(--srp-gutter);
	display:grid; grid-template-columns:.85fr 1.15fr; gap:clamp(1.8rem, 4vw, 3.2rem);
	align-items:center;
}
.srp-hero__kicker {
	margin:0; font-family:var(--srp-font-mono);
	font-size:.68rem; font-weight:500; letter-spacing:.15em; text-transform:uppercase;
	color:var(--srp-primary);
}
.srp-hero__head {
	margin:.5rem 0 0; font-family:var(--srp-font-display); font-weight:500;
	font-size:clamp(2.1rem, 4.2vw, 3rem); line-height:1.1; letter-spacing:-.01em;
	text-wrap:balance; color:var(--srp-ink);
}
.srp-hero__sub { margin:1rem 0 0; font-size:1.08rem; line-height:1.55; color:var(--srp-muted); max-width:32ch; }
.srp-hero__meta { margin:1.3rem 0 0; font-family:var(--srp-font-mono); font-size:.76rem; color:var(--srp-faint); line-height:1.8; }

/* The always-open assistant panel — dominant element of the hero. Reuses the
   drawer's own message/card/chip CSS (.srp-amsg, .srp-arows, .srp-achips)
   verbatim; only this outer chrome is new. */
.srp-heroask {
	display:flex; flex-direction:column;
	background:#fff; border:1px solid var(--srp-line-strong); border-radius:18px;
	box-shadow:0 10px 34px rgba(20,49,61,.1);
	overflow:hidden;
}
.srp-heroask__body {
	flex:1; min-height:11rem; max-height:22rem; overflow-y:auto;
	padding:1.1rem 1.1rem .6rem; display:flex; flex-direction:column; gap:.7rem;
}
.srp-heroask__form { display:flex; gap:.5rem; padding:.8rem 1.1rem; border-top:1px solid var(--srp-line); }
.srp-heroask__form input { flex:1; padding:.7rem .9rem; border:1px solid var(--srp-line-strong); border-radius:9px; font-size:.92rem; }
.srp-heroask__form input:focus { outline:2px solid var(--srp-primary); outline-offset:1px; }
.srp-heroask__form button { padding:.7rem 1.2rem; border:0; border-radius:9px; background:var(--srp-primary); color:#fff; font-weight:700; cursor:pointer; }
.srp-heroask__form button:hover { background:var(--srp-primary-dark); }
.srp-heroask__form .srp-mic { flex:none; }
/* Language picker — "English | हिन्दी" right above the writing box. Tells the
   microphone which language to listen for and swaps the example in the box. */
.srp-heroask__lang,
.srp-assistant__lang { display:flex; align-items:center; flex-wrap:wrap; gap:.4rem; margin:0; padding:0 1.1rem .55rem; font-size:.78rem; color:var(--srp-primary-dark); }
.srp-assistant__lang { padding:.1rem 1rem .5rem; }
.srp-langpick { padding:.24rem .8rem; border:1px solid var(--srp-line-strong); border-radius:999px; background:#fff; color:var(--srp-muted); font:inherit; font-size:.78rem; font-weight:700; line-height:1.3; cursor:pointer; }
.srp-langpick:hover { border-color:var(--srp-primary); color:var(--srp-primary); }
.srp-langpick[aria-pressed="true"] { background:var(--srp-primary); border-color:var(--srp-primary); color:#fff; }
.srp-langpick:focus-visible { outline:2px solid var(--srp-primary); outline-offset:2px; }
.srp-heroask__alt { margin:0; padding:.7rem 1.1rem .9rem; font-size:.8rem; color:var(--srp-muted); background:var(--srp-surface); border-top:1px solid var(--srp-line); }
.srp-heroask__alt a { color:var(--srp-primary-dark); font-weight:600; text-decoration:none; }
.srp-heroask__alt a:hover { text-decoration:underline; }

@media (max-width:840px) {
	.srp-hero__in { grid-template-columns:1fr; gap:1.6rem; padding-block:2.2rem; }
	.srp-hero__sub { max-width:none; }
	.srp-heroask__body { max-height:16rem; }
}

/* ---- Homepage: two pillars (allopathic + homeopathic) ---- */
.srp-pillars { display:grid; grid-template-columns:1fr 1fr; gap:1.5rem; margin-top:2.4rem; }
.srp-pcard { display:flex; flex-direction:column; border:1px solid var(--srp-line); border-radius:16px; overflow:hidden; background:var(--srp-base); }
.srp-pcard__top { display:flex; align-items:center; gap:.9rem; padding:1.2rem 1.4rem; border-bottom:1px solid var(--srp-line); }
.srp-pcard--allo .srp-pcard__top { background:#e6eef0; }
.srp-pcard--homeo .srp-pcard__top { background:var(--srp-de-bg); }
.srp-pcard__ic { width:44px; height:44px; flex:none; border-radius:11px; display:grid; place-items:center; background:var(--srp-base); border:1px solid var(--srp-line); }
.srp-pcard__ic svg { width:23px; height:23px; stroke:var(--srp-primary-dark); fill:none; stroke-width:1.7; }
.srp-pcard__t { font-family:var(--srp-font-display); font-size:1.35rem; line-height:1.2; }
.srp-pcard__k { font-family:var(--srp-font-mono); font-size:.66rem; letter-spacing:.1em; text-transform:uppercase; color:var(--srp-muted); margin-top:2px; }
.srp-pcard__body { display:flex; flex-direction:column; gap:.85rem; padding:1.3rem 1.4rem 1.4rem; flex:1; }
.srp-pcard__body p { margin:0; font-size:.95rem; }
.srp-pcard__lede { color:var(--srp-ink); }
.srp-pcard__mech { color:var(--srp-muted); font-size:.88rem; border-left:2px solid var(--srp-line-strong); padding-left:.75rem; }
.srp-pcard__cta { display:flex; gap:.6rem; flex-wrap:wrap; margin-top:.2rem; }
.srp-pcard__cta .srp-btn { font-size:.85rem; padding:.55rem 1rem; }
.srp-pcard__minor { display:flex; gap:1rem; flex-wrap:wrap; font-size:.82rem; color:var(--srp-muted); margin-top:.1rem; }
.srp-pcard__minor a { color:var(--srp-primary); text-decoration:none; font-weight:600; cursor:pointer; }
.srp-pcard__minor a:hover { text-decoration:underline; }

/* ---- Homepage: how-ordering-works strip ---- */
.srp-steps { margin-top:2.6rem; padding:2rem var(--srp-gutter); background:var(--srp-paper); border-radius:var(--srp-radius); }
.srp-steps__row { display:grid; grid-template-columns:repeat(3, 1fr); gap:1.6rem; }
.srp-step { display:flex; gap:.8rem; }
.srp-step__n { flex:none; width:1.7em; height:1.7em; border:1.5px solid var(--srp-cta); color:var(--srp-cta); border-radius:50%; display:grid; place-items:center; font-family:var(--srp-font-mono); font-size:.78rem; font-weight:600; }
.srp-step h3 { font-family:var(--srp-font-body); font-weight:700; font-size:.96rem; margin:0 0 .2rem; }
.srp-step p { margin:0; font-size:.87rem; color:var(--srp-muted); }
.srp-steps__foot { margin:1.4rem 0 0; text-align:center; font-family:var(--srp-font-mono); font-size:.8rem; color:var(--srp-faint); }

@media (max-width:820px) {
	.srp-pillars { grid-template-columns:1fr; }
	.srp-steps__row { grid-template-columns:1fr; gap:1.1rem; }
}

/* ---- Pillar landing pages (/allopathic/, /homeopathy/) ---- */
.srp-landing { max-width:1140px; margin-inline:auto; padding:0 var(--srp-gutter) 3rem; }
.srp-landing__hero { padding:2.6rem 0 1.6rem; border-bottom:1px solid var(--srp-line); margin-bottom:2rem; }
.srp-landing__kicker { margin:0; font-family:var(--srp-font-mono); font-size:.68rem; letter-spacing:.14em; text-transform:uppercase; color:var(--srp-primary); }
.srp-landing__hero h1 { margin:.6rem 0 0; font-size:clamp(1.9rem, 3.6vw, 2.6rem); line-height:1.12; letter-spacing:-.01em; max-width:20ch; }
.srp-landing__sub { margin:1rem 0 0; font-size:1.05rem; line-height:1.55; color:var(--srp-muted); max-width:60ch; }
.srp-landing__cta { display:flex; gap:.7rem; flex-wrap:wrap; margin:1.5rem 0 0; }
.srp-landing__note { margin:1.1rem 0 0; font-size:.82rem; color:var(--srp-faint); max-width:60ch; }
.srp-landing__cols { display:grid; grid-template-columns:1fr 1fr; gap:2rem; margin:0 0 2.4rem; }
.srp-landing__cols h2 { font-size:1.2rem; margin:0 0 .7rem; }
.srp-landing__list { margin:0; padding:0; list-style:none; }
.srp-landing__list li { position:relative; padding:.35rem 0 .35rem 1.3rem; font-size:.92rem; color:var(--srp-ink); border-bottom:1px solid var(--srp-line); }
.srp-landing__list li::before { content:"–"; position:absolute; left:0; color:var(--srp-primary); font-weight:700; }
.srp-landing__contact { margin-top:2.4rem; padding-top:1.8rem; border-top:1px solid var(--srp-line); }
.srp-landing__contact h2 { font-size:1.2rem; margin:0 0 .8rem; }
.srp-landing__addr { font-size:.85rem; color:var(--srp-muted); margin:.6rem 0 1rem; }
.srp-landing__licence { margin-top:2rem; font-size:.78rem; color:var(--srp-faint); line-height:1.7; }
.srp-landing__brands { display:grid; grid-template-columns:1fr 1fr; gap:1.4rem; margin:0 0 2.4rem; }
.srp-brandband { border:1px solid var(--srp-line); border-radius:12px; padding:1.1rem 1.2rem; background:var(--srp-surface); }
.srp-brandband--de { border-left:3px solid var(--srp-de-line); }
.srp-brandband__h { margin:0 0 .6rem; font-family:var(--srp-font-mono); font-size:.72rem; letter-spacing:.1em; text-transform:uppercase; color:var(--srp-muted); }
.srp-brandband ul { list-style:none; margin:0; padding:0; display:flex; flex-wrap:wrap; gap:.4rem .5rem; }
.srp-brandband li a { display:inline-flex; align-items:baseline; gap:.35rem; font-size:.86rem; font-weight:600; text-decoration:none; color:var(--srp-ink); border:1px solid var(--srp-line); border-radius:7px; padding:.35rem .6rem; }
.srp-brandband li a:hover { border-color:var(--srp-primary); color:var(--srp-primary); }
.srp-brandband li a span { font-family:var(--srp-font-mono); font-size:.66rem; color:var(--srp-faint); }
.srp-landing__concerns { margin:0 0 1rem; }
.srp-landing__concerns h2 { font-size:1.3rem; margin:0 0 1rem; }

@media (max-width:760px) {
	.srp-landing__cols, .srp-landing__brands { grid-template-columns:1fr; gap:1.2rem; }
}

/* ---- On-site enquiry form (/upload-prescription/) ---- */
.srp-btn--cta { background:var(--srp-cta); }
.srp-btn--cta:hover { background:var(--srp-cta-dark); }
.srp-page--narrow { padding-bottom:3rem; }
.srp-enqform { margin-top:1.4rem; }
.srp-enqform__tabs { display:flex; gap:.4rem; margin-bottom:1.2rem; }
.srp-enqform__tab { font-size:.9rem; font-weight:600; text-decoration:none; color:var(--srp-muted); border:1px solid var(--srp-line); border-radius:9px; padding:.55rem 1rem; }
.srp-enqform__tab.is-on { background:var(--srp-primary-dark); color:#fff; border-color:var(--srp-primary-dark); }
.srp-enqform__err { background:#fbe6e3; color:#8c2f2a; border:1px solid #f3c9c2; border-radius:9px; padding:.7rem .9rem; font-size:.9rem; margin:0 0 1rem; }
.srp-flash-err { max-width:1140px; margin:1rem auto 0; padding:.7rem 1rem; background:#fbe6e3; color:#8c2f2a; border:1px solid #f3c9c2; border-radius:9px; font-size:.9rem; }
.srp-enqform--cart { margin-top:1.2rem; padding-top:1.2rem; border-top:1px solid var(--srp-line); }
.srp-enqform__form { display:flex; flex-direction:column; gap:1rem; }
.srp-enqform__hp { position:absolute; left:-9999px; }
.srp-enqform__drop { display:flex; flex-direction:column; align-items:center; gap:.25rem; text-align:center; border:1.6px dashed var(--srp-line-strong); border-radius:12px; padding:1.6rem 1rem; background:var(--srp-surface); cursor:pointer; }
.srp-enqform__drop input[type=file] { position:absolute; opacity:0; width:1px; height:1px; }
.srp-enqform__drop-b { font-weight:700; color:var(--srp-ink); }
.srp-enqform__drop-s { font-size:.8rem; color:var(--srp-muted); }
.srp-enqform__files { font-family:var(--srp-font-mono); font-size:.76rem; color:var(--srp-primary); margin-top:.3rem; }
.srp-enqform__label { font-weight:700; font-size:.9rem; margin:0 0 .5rem; }
.srp-enqform__rows { display:flex; flex-direction:column; gap:.5rem; }
.srp-enqform__row { display:grid; grid-template-columns:2fr 1fr; gap:.5rem; }
.srp-enqform__addrow { align-self:flex-start; margin-top:.5rem; background:none; border:0; cursor:pointer; padding:0; }
.srp-enqform__grid { display:grid; grid-template-columns:1fr 1fr; gap:.9rem; }
.srp-enqform label { display:flex; flex-direction:column; gap:.3rem; font-size:.82rem; font-weight:600; color:var(--srp-muted); }
.srp-enqform input, .srp-enqform textarea, .srp-enqform select { font:inherit; font-weight:400; color:var(--srp-ink); background:var(--srp-base); border:1px solid var(--srp-line-strong); border-radius:8px; padding:.6rem .7rem; }
.srp-enqform input:focus, .srp-enqform textarea:focus { outline:2px solid var(--srp-primary); outline-offset:1px; }
.srp-enqform__consent { flex-direction:row !important; align-items:flex-start; gap:.6rem; font-weight:400; font-size:.84rem; color:var(--srp-muted); line-height:1.5; }
.srp-enqform__consent input { margin-top:.2rem; }
.srp-enqform__submit { align-self:flex-start; margin-top:.4rem; }
.srp-enqform__foot { font-size:.8rem; color:var(--srp-faint); margin:0; }

/* ---- Medicine search ("check if we stock it") ---- */
.srp-medsearch { margin:1.4rem 0; }
.srp-landing__hero .srp-medsearch { max-width:30rem; }
.srp-medsearch__label { display:block; font-weight:700; font-size:.9rem; margin:0 0 .5rem; color:var(--srp-ink); }
.srp-medsearch__box { position:relative; }
.srp-medsearch__input { width:100%; font:inherit; color:var(--srp-ink); background:var(--srp-base); border:1px solid var(--srp-line-strong); border-radius:8px; padding:.7rem .85rem; }
.srp-medsearch__input:focus { outline:2px solid var(--srp-primary); outline-offset:1px; }
.srp-medsearch__results { position:absolute; z-index:20; top:calc(100% + 4px); left:0; right:0; max-height:19rem; overflow-y:auto; background:var(--srp-base); border:1px solid var(--srp-line-strong); border-radius:10px; box-shadow:0 8px 24px rgba(20,49,61,.12); padding:.3rem; }
.srp-medsearch__item { display:flex; flex-direction:column; align-items:flex-start; gap:.1rem; width:100%; text-align:left; background:none; border:0; border-radius:6px; padding:.5rem .6rem; cursor:pointer; }
.srp-medsearch__item:hover, .srp-medsearch__item:focus { background:var(--srp-surface); }
.srp-medsearch__item-name { font-weight:600; color:var(--srp-ink); font-size:.92rem; }
.srp-medsearch__item-unit { font-weight:400; color:var(--srp-muted); font-size:.82rem; }
.srp-medsearch__item-meta { font-size:.76rem; color:var(--srp-muted); }
.srp-medsearch__empty { margin:0; padding:.7rem .6rem; font-size:.84rem; color:var(--srp-muted); }
.srp-medsearch__picked { margin-top:.7rem; display:flex; flex-wrap:wrap; align-items:center; gap:.6rem; }
.srp-medsearch__picked[hidden] { display:none; }
.srp-medsearch__chips { display:flex; flex-wrap:wrap; gap:.4rem; }
.srp-medsearch__chip { display:inline-flex; align-items:center; gap:.4rem; background:var(--srp-surface); border:1px solid var(--srp-line); border-radius:999px; padding:.3rem .3rem .3rem .7rem; font-size:.82rem; color:var(--srp-ink); }
.srp-medsearch__chip-x { background:none; border:0; color:var(--srp-muted); cursor:pointer; font-size:1rem; line-height:1; padding:0 .2rem; }
.srp-medsearch__chip-x:hover { color:var(--srp-cta); }
.srp-medsearch__foot { font-size:.78rem; color:var(--srp-faint); margin:.5rem 0 0; }
.srp-enqform .srp-medsearch { margin:0 0 .8rem; }

/* ---- Customer order page (/order/{token}/) ---- */
.srp-order { padding:1.6rem 0 2rem; }
.srp-order__ref { font-family:var(--srp-font-mono); font-size:.72rem; letter-spacing:.05em; color:var(--srp-faint); margin:0; }
.srp-order__status { font-size:clamp(1.6rem, 3vw, 2.1rem); margin:.3rem 0 1.2rem; }
.srp-order__track { list-style:none; display:flex; margin:0 0 1.6rem; padding:0; counter-reset:s; flex-wrap:wrap; gap:.4rem 0; }
.srp-order__track li { flex:1 1 0; min-width:96px; position:relative; font-size:.74rem; color:var(--srp-faint); padding-top:1.5rem; text-align:center; }
.srp-order__track li span { position:absolute; top:0; left:50%; transform:translateX(-50%); width:14px; height:14px; border-radius:50%; background:var(--srp-line-strong); }
.srp-order__track li::before { content:""; position:absolute; top:6px; left:-50%; width:100%; height:2px; background:var(--srp-line); }
.srp-order__track li:first-child::before { display:none; }
.srp-order__track li.is-done { color:var(--srp-muted); }
.srp-order__track li.is-done span, .srp-order__track li.is-now span { background:var(--srp-primary); }
.srp-order__track li.is-now { color:var(--srp-primary-dark); font-weight:700; }
.srp-order__track li.is-done::before { background:var(--srp-primary); }
.srp-order__cols { display:grid; grid-template-columns:1fr 260px; gap:1.4rem; }
.srp-order__box { border:1px solid var(--srp-line); border-radius:12px; padding:1.1rem 1.2rem; margin-bottom:1rem; background:var(--srp-base); }
.srp-order__box h2 { font-size:1.05rem; margin:0 0 .6rem; }
.srp-order__box--confirmed { border-color:var(--srp-primary); background:var(--srp-surface); }
.srp-order__box--ai { border-left:3px solid var(--srp-line-strong); background:var(--srp-warm); }
.srp-order__box--ai p { margin:0; font-size:.92rem; line-height:1.55; color:var(--srp-muted); }
.srp-order__list { list-style:none; margin:0; padding:0; }
.srp-order__list li { padding:.4rem 0; border-bottom:1px solid var(--srp-line); font-size:.9rem; display:flex; justify-content:space-between; gap:1rem; }
.srp-order__list li:last-child { border-bottom:0; }
.srp-order__total { margin:.7rem 0 0; font-size:.95rem; }
.srp-order__thread { display:flex; flex-direction:column; gap:.6rem; }
.srp-order__msg { max-width:82%; font-size:.88rem; padding:.55rem .75rem; border-radius:10px; line-height:1.45; }
.srp-order__msg small { display:block; font-family:var(--srp-font-mono); font-size:.62rem; opacity:.7; margin-top:.2rem; }
.srp-order__msg--them { background:var(--srp-paper); align-self:flex-start; border-bottom-left-radius:3px; }
.srp-order__msg--you { background:var(--srp-primary); color:#fff; align-self:flex-end; border-bottom-right-radius:3px; }
.srp-order__empty, .srp-order__replyhint, .srp-order__save, .srp-order__meta { font-size:.82rem; color:var(--srp-muted); }
.srp-order__replyhint { margin:.7rem 0 0; }
.srp-order__reply { display:flex; gap:.5rem; align-items:flex-start; margin-top:.9rem; }
.srp-order__reply textarea { flex:1; font:inherit; border:1px solid var(--srp-line-strong); border-radius:8px; padding:.55rem .7rem; }
.srp-order__reply .srp-btn { padding:.55rem 1rem; }
.srp-order__sent { background:var(--srp-de-bg); color:#7a5300; border-radius:8px; padding:.5rem .8rem; font-size:.85rem; margin:0 0 .8rem; }
.srp-order__cancelled { background:#fbe6e3; color:#8c2f2a; border-radius:9px; padding:.7rem .9rem; font-size:.9rem; }
.srp-order__side .srp-btn { font-size:.8rem; padding:.5rem .9rem; }
.srp-order--missing { text-align:center; padding:3rem 0; }

@media (max-width:720px) {
	.srp-enqform__grid, .srp-enqform__row { grid-template-columns:1fr; }
	.srp-order__cols { grid-template-columns:1fr; }
}

/* ---- Homepage ------------------------------------------------------- */
.srp-home { max-width:1180px; margin-inline:auto; padding:0 var(--srp-gutter) 3rem; }

.srp-doors { display:grid; grid-template-columns:1fr 1.3fr; border:1px solid var(--srp-line); border-radius:var(--srp-radius); overflow:hidden; margin-top:1.6rem; }
.srp-door { padding:clamp(1.4rem, 3vw, 2.2rem); }
.srp-door--ask { background:var(--srp-warm); }
.srp-door--concern { background:var(--srp-paper); border-left:1px solid var(--srp-line); }
.srp-door__tag { font-family:var(--srp-font-mono); font-size:.72rem; letter-spacing:.12em; text-transform:uppercase; color:var(--srp-muted); margin:0 0 .5rem; }
.srp-door--ask .srp-door__tag { color:#8a6d3b; }
.srp-door h2 { font-size:1.5rem; margin:0 0 .4rem; }
.srp-door p { margin:0 0 .9rem; color:var(--srp-muted); font-size:.98rem; }
.srp-door__eg { font-size:.88rem; }
.srp-door__eg em { color:var(--srp-muted); }

.srp-chips { list-style:none; margin:0; padding:0; display:flex; flex-wrap:wrap; gap:.5rem; }
.srp-chips a { display:inline-block; padding:.5rem .9rem; font-size:.9rem; font-weight:600; color:#33514e; background:#fff; border:1px solid var(--srp-line); border-radius:999px; text-decoration:none; }
.srp-chips a:hover { border-color:var(--srp-primary); color:var(--srp-primary); }
.srp-chips__all { color:var(--srp-primary-dark) !important; background:transparent !important; border-color:var(--srp-line-strong) !important; }

/* ---- Classical block (home) ---------------------------------------- */
.srp-clxblock { margin-top:2rem; padding-top:1.8rem; border-top:1px solid var(--srp-line); }
.srp-clxblock__head { display:flex; flex-wrap:wrap; align-items:baseline; gap:.5rem 1rem; }
.srp-clxblock h2 { font-size:1.35rem; margin:0; }
.srp-clxblock__meta { font-family:var(--srp-font-mono); font-size:.72rem; color:var(--srp-faint); margin:0; }
.srp-clxblock__search { display:flex; gap:.5rem; margin:.9rem 0; max-width:460px; }
.srp-clxblock__search input[type=search] { flex:1; padding:.65rem .9rem; border:1px solid var(--srp-line); border-radius:9px; font-size:.9rem; }
.srp-clxblock__search button { padding:.65rem 1rem; border:0; border-radius:9px; background:var(--srp-primary); color:#fff; font-weight:700; cursor:pointer; }

.srp-az { display:flex; flex-wrap:wrap; gap:.25rem; margin-bottom:1.1rem; }
.srp-az a { width:1.7rem; height:1.7rem; display:grid; place-items:center; font-family:var(--srp-font-mono); font-size:.78rem; font-weight:600; color:#5b7371; border:1px solid var(--srp-line); border-radius:5px; text-decoration:none; }
.srp-az a:hover, .srp-az a.is-active { background:var(--srp-primary); color:#fff; border-color:var(--srp-primary); }

.srp-clxblock__featured { display:grid; grid-template-columns:120px 1fr; gap:1.2rem; border:1px solid var(--srp-line); border-radius:var(--srp-radius); padding:1rem; max-width:640px; background:#fff; }
.srp-clxblock__featured img { width:100%; height:auto; border-radius:8px; }
.srp-clxblock__featured h3 { margin:0 0 .2rem; font-size:1.15rem; }
.srp-clxblock__featured h3 a { text-decoration:none; color:var(--srp-ink); }
.srp-clxblock__use { margin:.1rem 0 .5rem; color:var(--srp-muted); font-size:.92rem; }
.srp-clxblock__pick { font-size:.82rem; color:var(--srp-faint); margin:.3rem 0 .7rem; }
.srp-clxblock__cta { display:flex; flex-wrap:wrap; gap:.6rem 1rem; align-items:center; margin:0; }
.srp-clxblock__note { font-size:.8rem; color:var(--srp-faint); margin-top:.9rem; }

/* ---- Concern grid ------------------------------------------------- */
.srp-allconcerns { margin-top:2.2rem; padding-top:1.8rem; border-top:1px solid var(--srp-line); }
.srp-allconcerns h2 { font-size:1.35rem; margin:0 0 1rem; }
.srp-concerngrid { list-style:none; margin:0; padding:0; display:grid; grid-template-columns:repeat(auto-fill, minmax(190px, 1fr)); gap:.6rem; }
.srp-concerngrid a { display:flex; flex-direction:column; gap:.25rem; height:100%; padding:.85rem .9rem; border:1px solid var(--srp-line); border-radius:10px; background:var(--srp-surface); text-decoration:none; color:var(--srp-ink); }
.srp-concerngrid a:hover { border-color:var(--srp-primary); }
.srp-concerngrid__name { font-weight:700; font-size:.92rem; }
.srp-concerngrid__desc { font-size:.78rem; color:var(--srp-muted); }
.srp-concerngrid__count { font-family:var(--srp-font-mono); font-size:.7rem; color:var(--srp-faint); margin-top:auto; }

.srp-trust { margin-top:2rem; padding:1.1rem var(--srp-gutter); background:var(--srp-paper); border-radius:var(--srp-radius); font-size:.82rem; color:var(--srp-muted); }
.srp-trust p { margin:.15rem 0; }

/* ---- Concern / brand / A–Z shared ------------------------------- */
.srp-concern, .srp-brandpage, .srp-azpage { max-width:1180px; margin-inline:auto; padding:1.4rem var(--srp-gutter) 3rem; }
.srp-crumb { font-family:var(--srp-font-mono); font-size:.72rem; letter-spacing:.03em; color:var(--srp-faint); margin-bottom:.8rem; }
.srp-crumb a { color:var(--srp-muted); text-decoration:none; }
.srp-concern__head h1, .srp-brandpage__head h1 { font-size:clamp(1.7rem, 3.4vw, 2.3rem); margin:0 0 .3rem; }
.srp-concern__intro, .srp-brandpage__blurb { color:var(--srp-muted); max-width:60ch; }
.srp-concern__count { font-family:var(--srp-font-mono); font-size:.75rem; color:var(--srp-faint); margin:.5rem 0 0; }
.srp-brandpage__de { display:inline-block; margin-top:.5rem; font-size:.82rem; font-weight:600; color:var(--srp-de-ink); background:var(--srp-de-bg); border:1px solid var(--srp-de-line); border-radius:7px; padding:.3rem .6rem; }

.srp-concern__layout { display:grid; grid-template-columns:190px 1fr; gap:2rem; margin-top:1.6rem; }
.srp-filters { align-self:start; border:1px solid var(--srp-line); border-radius:var(--srp-radius); padding:1rem; position:sticky; top:1rem; }
.srp-filters__group { margin-bottom:1.1rem; }
.srp-filters h4 { font-family:var(--srp-font-mono); font-size:.68rem; letter-spacing:.1em; text-transform:uppercase; color:var(--srp-faint); margin:0 0 .5rem; }
.srp-filters ul { list-style:none; margin:0; padding:0; }
.srp-filters li { margin:.28rem 0; }
.srp-filters a { font-size:.85rem; color:#43514b; text-decoration:none; }
.srp-filters a:hover { color:var(--srp-primary); }
.srp-filters li.is-active a { font-weight:700; color:var(--srp-primary-dark); }
.srp-filters__ask a { font-size:.82rem; font-weight:600; color:var(--srp-primary-dark); text-decoration:none; }

.srp-group { font-family:var(--srp-font-mono); font-size:.8rem; letter-spacing:.04em; text-transform:uppercase; color:#4c5d5a; font-weight:600; margin:1.3rem 0 .7rem; display:flex; align-items:center; gap:.5rem; flex-wrap:wrap; }
.srp-group:first-child { margin-top:0; }
.srp-group__meta { color:var(--srp-faint); font-weight:500; text-transform:none; letter-spacing:0; }

/* Concern page: German / Indian bands */
.srp-band { margin:0 0 2rem; }
.srp-band__h { font-family:var(--srp-font-display); font-weight:600; font-size:1.35rem; margin:0 0 .15rem; display:flex; align-items:center; gap:.5rem; }
.srp-band--de .srp-band__h { color:var(--srp-primary-dark); }
.srp-band__n { font-family:var(--srp-font-mono); font-size:.72rem; color:var(--srp-faint); font-weight:500; border:1px solid var(--srp-line); border-radius:999px; padding:.1rem .5rem; }
.srp-band__note { color:var(--srp-muted); font-size:.86rem; margin:0 0 1rem; }
.srp-band--de { border-left:3px solid var(--srp-primary); padding-left:1rem; }
.srp-band--in { border-left:3px solid var(--srp-line-strong); padding-left:1rem; }

/* Concern row: spec line + collapsible details */
.srp-row__spec { display:flex; align-items:baseline; gap:.55rem; margin:.15rem 0 .35rem; flex-wrap:wrap; }
.srp-row__mrp { font-weight:700; font-size:1.02rem; color:var(--srp-ink); }
.srp-row__mrp .amount, .srp-row__mrp bdi { font-weight:700; }
.srp-row__pack { font-family:var(--srp-font-mono); font-size:.74rem; color:var(--srp-muted); }
.srp-row__pack::before { content:"· "; }
.srp-row__more { font-size:.85rem; margin-top:.15rem; }
.srp-row__more > summary { cursor:pointer; color:var(--srp-primary-dark); font-weight:600; list-style:none; display:inline-flex; align-items:center; gap:.3rem; }
.srp-row__more > summary::-webkit-details-marker { display:none; }
.srp-row__more > summary::before { content:"+"; font-family:var(--srp-font-mono); }
.srp-row__more[open] > summary::before { content:"–"; }
.srp-row__more p { margin:.5rem 0 0; color:var(--srp-muted); line-height:1.5; }
.srp-row__more p strong { color:var(--srp-ink); }
.srp-row__more-links { display:flex; gap:.8rem; align-items:center; flex-wrap:wrap; }
.srp-row__more-links a { color:var(--srp-primary-dark); font-weight:600; }

.srp-list { list-style:none; margin:0; padding:0; display:flex; flex-direction:column; gap:.55rem; }
.srp-row { display:grid; grid-template-columns:64px 1fr auto; gap:1rem; align-items:center; border:1px solid var(--srp-line); border-radius:11px; padding:.7rem .9rem; }
.srp-row__media { display:block; }
.srp-row__img, .srp-row img { width:64px; height:64px; object-fit:contain; border-radius:8px; background:#fff; }
.srp-row__brand { font-family:var(--srp-font-mono); font-size:.68rem; letter-spacing:.05em; text-transform:uppercase; color:var(--srp-faint); margin:0 0 .15rem; display:flex; align-items:center; gap:.35rem; flex-wrap:wrap; }
.srp-row__name { font-size:1rem; font-weight:700; margin:0 0 .2rem; line-height:1.3; }
.srp-row__name a { color:#26403e; text-decoration:none; }
.srp-row__name a:hover { color:var(--srp-primary); }
.srp-row__use { font-size:.86rem; color:var(--srp-muted); margin:0 0 .35rem; line-height:1.4; }
.srp-row__actions { display:flex; gap:.4rem; flex-wrap:wrap; }
.srp-chip { display:inline-flex; align-items:center; font-size:.72rem; font-weight:600; color:#33514e; background:#fbfdfd; border:1px solid var(--srp-line); border-radius:6px; padding:.28rem .5rem; text-decoration:none; cursor:pointer; }
.srp-chip:hover { border-color:var(--srp-primary); color:var(--srp-primary); }
.srp-row__buy { text-align:right; white-space:nowrap; display:flex; flex-direction:column; align-items:flex-end; gap:.35rem; }
.srp-row__price { font-weight:700; font-size:1rem; }
.srp-row__buy .button, .srp-row__buy .add_to_cart_button { font-size:.78rem !important; padding:.4rem .8rem !important; }

.srp-empty { color:var(--srp-muted); font-style:italic; padding:1rem 0; }

/* ---- classical strip on a concern page --------------------------- */
.srp-clx { margin-top:2rem; border:1px solid var(--srp-line); border-radius:var(--srp-radius); background:var(--srp-surface); padding:1.2rem 1.3rem; }
.srp-clx__h { font-size:1.15rem; margin:0 0 .3rem; }
.srp-clx__p { font-size:.9rem; color:var(--srp-muted); margin:0 0 .8rem; max-width:62ch; }
.srp-clx__search { display:flex; gap:.5rem; max-width:420px; margin-bottom:.7rem; }
.srp-clx__search input { flex:1; padding:.6rem .8rem; border:1px solid var(--srp-line); border-radius:8px; font-size:.88rem; }
.srp-clx__search button { padding:.6rem .9rem; border:0; border-radius:8px; background:var(--srp-primary); color:#fff; font-weight:700; cursor:pointer; }
.srp-clx__foot { font-size:.82rem; margin:0; }
.srp-clx__foot a { color:var(--srp-primary-dark); text-decoration:none; font-weight:600; }

/* ---- brands index ---------------------------------------------- */
.srp-brandsindex { list-style:none; margin:1.4rem 0 0; padding:0; display:grid; gap:.7rem; }
.srp-brandsindex a { display:grid; gap:.25rem; padding:1rem 1.1rem; border:1px solid var(--srp-line); border-radius:var(--srp-radius); text-decoration:none; color:var(--srp-ink); }
.srp-brandsindex a:hover { border-color:var(--srp-primary); }
.srp-brandsindex__name { font-family:var(--srp-font-display); font-size:1.2rem; }
.srp-brandsindex__blurb { font-size:.86rem; color:var(--srp-muted); }
.srp-brandsindex__count { font-family:var(--srp-font-mono); font-size:.7rem; color:var(--srp-faint); }

.srp-azpage__count { font-family:var(--srp-font-mono); font-size:.75rem; color:var(--srp-faint); margin:.4rem 0 1rem; }
.srp-azpage__head h1 { font-size:clamp(1.7rem,3.4vw,2.3rem); margin:0 0 .3rem; }
.srp-azpage__head p { color:var(--srp-muted); max-width:64ch; margin:0 0 1.4rem; }

/* Classical — "describe it" assistant entry */
.srp-clx-ask { display:flex; gap:1rem; align-items:flex-start; background:var(--srp-forest); color:#eaf3f1; border-radius:var(--srp-radius); padding:1.3rem 1.4rem; margin:0 0 1.6rem; }
.srp-clx-ask__spark { font-size:1.4rem; color:#9cd7c6; line-height:1; }
.srp-clx-ask h3 { font-family:var(--srp-font-display); font-weight:600; font-size:1.2rem; margin:0 0 .3rem; color:#fff; }
.srp-clx-ask p { margin:0 0 .8rem; font-size:.92rem; color:#cfe3df; }
.srp-clx-ask__form { display:flex; flex-wrap:wrap; gap:.5rem; }
.srp-clx-ask__form input { flex:1; min-width:220px; padding:.7rem .9rem; border:0; border-radius:9px; font-size:.92rem; }
.srp-clx-ask__disc { font-size:.76rem !important; color:#9db8b4 !important; margin:.6rem 0 0 !important; }
.srp-clx-ask__egs { display:flex; flex-wrap:wrap; gap:.4rem; margin:.7rem 0 0; }
.srp-clx-ask__egs button { background:rgba(255,255,255,.1); color:#eaf3f1; border:1px solid rgba(255,255,255,.22); border-radius:999px; padding:.32rem .7rem; font-size:.8rem; cursor:pointer; }
.srp-clx-ask__egs button:hover { background:rgba(255,255,255,.2); }

/* Classical — potency primer */
.srp-potency { margin-top:1.8rem; background:var(--srp-warm); border:1px solid var(--srp-line); border-radius:var(--srp-radius); padding:1.1rem 1.3rem; max-width:640px; }
.srp-potency h3 { font-family:var(--srp-font-display); font-weight:600; font-size:1.1rem; margin:0 0 .5rem; }
.srp-potency ul { margin:0 0 .6rem; padding-left:1.1rem; font-size:.88rem; line-height:1.6; color:var(--srp-ink); }
.srp-potency li strong { font-family:var(--srp-font-mono); font-size:.82rem; }
.srp-potency p { margin:0; font-size:.86rem; color:var(--srp-muted); }
.srp-potency a { color:var(--srp-primary-dark); font-weight:600; }

/* Classical — grouped remedy list */
.srp-remlist { list-style:none; margin:0 0 1rem; padding:0; display:grid; grid-template-columns:repeat(auto-fill,minmax(240px,1fr)); gap:.7rem; }
.srp-remcard { border:1px solid var(--srp-line); border-radius:11px; padding:.85rem 1rem; background:var(--srp-surface); }
.srp-remcard__name { font-weight:700; font-size:1rem; color:#26403e; text-decoration:none; display:inline-block; }
.srp-remcard__name:hover { color:var(--srp-primary); }
.srp-remcard__note { font-size:.83rem; color:var(--srp-muted); margin:.25rem 0 .35rem; line-height:1.4; }
.srp-remcard__meta { font-family:var(--srp-font-mono); font-size:.68rem; color:var(--srp-faint); margin:0; display:flex; flex-wrap:wrap; align-items:center; gap:.15rem .35rem; }

/* Classical — remedy detail */
.srp-remedy { max-width:1180px; margin-inline:auto; padding:1.4rem var(--srp-gutter) 3rem; }
.srp-remedy__head h1 { font-size:clamp(1.8rem,3.6vw,2.5rem); margin:0 0 .2rem; font-family:var(--srp-font-display); font-weight:500; }
.srp-remedy__tag { font-family:var(--srp-font-mono); font-size:.7rem; letter-spacing:.08em; text-transform:uppercase; color:var(--srp-primary); margin:0 0 .6rem; }
.srp-remedy__note { font-size:1.05rem; line-height:1.6; color:var(--srp-ink); max-width:62ch; }
.srp-remedy__cite { color:var(--srp-faint); font-size:.85rem; }
.srp-remedy__for { margin:1.6rem 0; padding:1.1rem 1.3rem; background:var(--srp-paper); border-radius:var(--srp-radius); }
.srp-remedy__for h2 { font-family:var(--srp-font-display); font-weight:600; font-size:1.2rem; margin:0 0 .5rem; }
.srp-remedy__for p { margin:.3rem 0; line-height:1.55; }
.srp-remedy__diff { font-size:.9rem; color:var(--srp-muted); }
.srp-remedy__reach { margin:.3rem 0 .5rem; padding-left:1.1rem; display:flex; flex-direction:column; gap:.3rem; }
.srp-remedy__reach li { line-height:1.5; }
.srp-remedy__pot { font-size:.9rem; color:var(--srp-muted); margin-top:.5rem; }
.srp-remedy__pot strong { color:var(--srp-ink); }
.srp-remedy__buy { margin:1.8rem 0 1.2rem; }
.srp-remedy__buy h2 { font-family:var(--srp-font-display); font-weight:600; font-size:1.3rem; margin:0 0 .3rem; }
.srp-remedy__buyhint { color:var(--srp-muted); font-size:.9rem; margin:0 0 1rem; max-width:64ch; }
.srp-page > .wp-block-post-title { font-size:clamp(1.7rem, 3.4vw, 2.3rem); margin-bottom:.6rem; }

/* ---- Door 1 assistant form ----------------------------------- */
.srp-door__askhead { display:flex; align-items:center; gap:.5rem; }
.srp-door__spark { width:1.7rem; height:1.7rem; border-radius:50%; background:var(--srp-primary); color:#fff; display:grid; place-items:center; font-size:.9rem; flex-shrink:0; }
.srp-door__askhead h2 { margin:0; }
.srp-door__askform { display:flex; flex-direction:column; gap:.55rem; margin-top:.9rem; }
.srp-door__askform > input { padding:.7rem .9rem; border:1px solid #d8ccb8; border-radius:10px; font-size:.92rem; background:#fff; }
.srp-door__egs { display:flex; flex-direction:column; gap:.4rem; }
.srp-door__egs button { text-align:left; font-size:.84rem; color:#6a6252; background:#fff; border:1px solid #e6ddc9; border-radius:8px; padding:.5rem .7rem; cursor:pointer; }
.srp-door__egs button:hover { border-color:var(--srp-primary); color:var(--srp-primary); }
.srp-door__disc { font-size:.78rem; font-style:italic; color:#9a8f78; margin:.5rem 0 0; }

/* ---- Assistant drawer --------------------------------------- */
.srp-assistant { position:fixed; inset:0; z-index:99998; background:rgba(15,20,19,.5); display:flex; justify-content:flex-end; }
.srp-assistant[hidden] { display:none; }
.srp-assistant__panel { width:min(420px, 100%); height:100%; background:#fff; display:flex; flex-direction:column; box-shadow:-8px 0 40px rgba(0,0,0,.2); }
.srp-assistant__head { display:flex; align-items:center; gap:.6rem; padding:.9rem 1rem; background:var(--srp-warm); border-bottom:1px solid var(--srp-line); }
.srp-assistant__avatar { width:1.9rem; height:1.9rem; border-radius:50%; background:var(--srp-primary); color:#fff; display:grid; place-items:center; flex-shrink:0; }
.srp-assistant__head strong { display:block; font-size:.92rem; }
.srp-assistant__head span { font-size:.72rem; color:var(--srp-muted); }
.srp-assistant__close { margin-left:auto; background:transparent; border:0; font-size:1.4rem; line-height:1; color:var(--srp-faint); cursor:pointer; }
.srp-assistant__body { flex:1; overflow-y:auto; padding:1rem; display:flex; flex-direction:column; gap:.7rem; }
.srp-assistant__hello { font-size:.86rem; color:var(--srp-muted); background:var(--srp-surface); border:1px solid var(--srp-line); border-radius:10px; padding:.7rem .8rem; margin:0; }
.srp-amsg { font-size:.86rem; line-height:1.5; padding:.6rem .8rem; border-radius:12px; max-width:90%; }
.srp-amsg p { margin:0 0 .4rem; }
.srp-amsg p:last-child { margin-bottom:0; }
.srp-amsg--user { align-self:flex-end; background:#eaf0ec; color:#26332e; border-bottom-right-radius:4px; }
.srp-amsg--bot { align-self:flex-start; background:var(--srp-surface); border:1px solid var(--srp-line); border-bottom-left-radius:4px; }
.srp-amsg--wait { color:var(--srp-faint); letter-spacing:.2em; }
.srp-amsg__flag { color:#8a4b2f; background:#fbeee6; border:1px solid #f0d6c4; border-radius:8px; padding:.5rem .6rem; }
.srp-amsg--note { align-self:stretch; max-width:100%; background:var(--srp-warm); border-color:#e6ddc9; color:#6a6252; font-size:.8rem; font-style:italic; }
.srp-amsg--cite { align-self:stretch; max-width:100%; background:var(--srp-surface); border-color:var(--srp-line); font-size:.8rem; color:var(--srp-muted); }
.srp-amsg--cite strong { color:var(--srp-ink); }
.srp-amsg--cite a { color:var(--srp-primary-dark); font-weight:600; cursor:pointer; }
.srp-amsg--handoff { align-self:stretch; max-width:100%; text-align:center; background:var(--srp-paper); border-color:var(--srp-line); }
.srp-assistant__hello--warn { background:var(--srp-warm); border-color:#e6ddc9; color:#6a6252; font-style:italic; }
.srp-assistant__hello--clx { display:none; }
.srp-assistant[data-mode="classical"] .srp-assistant__hello--general { display:none; }
.srp-assistant[data-mode="classical"] .srp-assistant__hello--clx { display:block; }
.srp-remq { align-self:stretch; max-width:100%; }
.srp-remq__name { font-family:var(--srp-font-display); font-weight:600; font-size:1.06rem; color:var(--srp-ink); margin:0 0 .35rem; }
.srp-remq__name span { display:inline-block; font-family:var(--srp-font); font-size:.66rem; font-weight:600; text-transform:uppercase; letter-spacing:.05em; color:var(--srp-primary-dark); background:var(--srp-surface); border:1px solid var(--srp-line); border-radius:999px; padding:.06rem .5rem; vertical-align:.12em; margin-left:.35rem; }
.srp-remq__key { font-style:italic; color:var(--srp-ink); margin:0 0 .6rem; }
.srp-remq__key em { font-style:normal; color:var(--srp-muted); font-size:.82rem; }
.srp-remq__h { font-weight:700; font-size:.78rem; text-transform:uppercase; letter-spacing:.04em; color:var(--srp-muted); margin:.7rem 0 .3rem; }
.srp-remq__list { margin:0; padding-left:1.1rem; display:flex; flex-direction:column; gap:.3rem; }
.srp-remq__list li { font-size:.9rem; color:var(--srp-ink); }
.srp-remq__vs { color:var(--srp-muted); font-size:.82rem; }
.srp-remq__foot { font-size:.8rem; color:var(--srp-muted); margin:.5rem 0 0; }
.srp-amsg--handoff .srp-btn { margin-top:.3rem; }
.srp-arows { display:flex; flex-direction:column; gap:.5rem; align-self:stretch; }
.srp-arow { display:grid; grid-template-columns:48px 1fr; gap:.7rem; border:1px solid var(--srp-line); border-radius:10px; padding:.6rem .65rem; color:var(--srp-ink); background:#fff; }
.srp-arow:hover { border-color:var(--srp-primary); }
.srp-arow__img { display:block; }
.srp-arow__img img { width:48px; height:48px; object-fit:contain; border-radius:6px; }
.srp-arow__b { display:flex; flex-direction:column; gap:.2rem; min-width:0; }
.srp-arow__brand { font-family:var(--srp-font-mono); font-size:.62rem; letter-spacing:.04em; text-transform:uppercase; color:var(--srp-faint); display:flex; align-items:center; gap:.3rem; }
.srp-arow__name { font-size:.86rem; font-weight:700; color:#26403e; line-height:1.25; text-decoration:none; }
.srp-arow__name:hover { color:var(--srp-primary); }
.srp-arow__about, .srp-arow__comp { font-size:.74rem; color:var(--srp-muted); line-height:1.4; }
.srp-arow__about strong, .srp-arow__comp strong { color:var(--srp-ink); font-weight:700; }
.srp-arow__meta { font-size:.76rem; font-weight:700; margin-top:.15rem; display:flex; flex-wrap:wrap; align-items:center; gap:.3rem; }
.srp-arow__meta a { font-weight:600; color:var(--srp-primary-dark); text-decoration:none; }
/* The single-product page's native WooCommerce add-to-cart button
   (".single_add_to_cart_button", used for both simple products and the
   variable-product variation button) inherits the parent block theme's
   ".wp-element-button" preset with NO explicit override anywhere in this
   stylesheet — it was rendering white text on a fully transparent
   background, i.e. genuinely invisible on the page's white background, not
   just unstyled. Give it real, deliberate colours instead of leaving it to
   inherited theme.json context. */
.single_add_to_cart_button.button {
	background:var(--srp-primary) !important; color:#fff !important; border:none !important;
	font-weight:700; border-radius:8px;
}
.single_add_to_cart_button.button:hover { background:var(--srp-primary-dark) !important; }
.srp-arow__buyrow { display:flex; align-items:center; gap:.6rem; margin-top:.3rem; flex-wrap:wrap; }
.srp-arow__buyrow .button, .srp-arow__buyrow .add_to_cart_button { font-size:.78rem !important; padding:.4rem .8rem !important; }
/* The real "add it now" action gets real visual weight — a solid CTA fill
   plus a gentle pulse, so it doesn't read the same as a passive "Choose
   options" / "View product" link sitting right next to it. */
.srp-arow__buyrow .add_to_cart_button.ajax_add_to_cart {
	background:var(--srp-cta) !important; color:#fff !important; font-weight:700 !important;
	border:none; animation:srp-cta-pulse 1.8s ease-in-out infinite;
}
.srp-arow__buyrow .add_to_cart_button.ajax_add_to_cart:hover { background:var(--srp-cta-dark) !important; animation:none; }
@keyframes srp-cta-pulse {
	0%, 100% { box-shadow:0 0 0 0 rgba(217,118,66,.5); }
	50% { box-shadow:0 0 0 7px rgba(217,118,66,0); }
}
@media (prefers-reduced-motion: reduce) {
	.srp-arow__buyrow .add_to_cart_button.ajax_add_to_cart { animation:none; }
}
.srp-arow__more { font-size:.74rem; font-weight:600; color:var(--srp-primary-dark); text-decoration:none; }
.srp-arow__more:hover { text-decoration:underline; }
.srp-arow--single { border-color:var(--srp-primary); background:var(--srp-paper); }
.srp-arow__tag { display:inline-block; align-self:flex-start; font-family:var(--srp-font-mono); font-size:.6rem; font-weight:600; letter-spacing:.08em; text-transform:uppercase; color:#fff; background:var(--srp-primary); border-radius:4px; padding:.15rem .4rem; margin-bottom:.15rem; }

.srp-achips { display:flex; flex-wrap:wrap; gap:.4rem; margin-top:.5rem; }
.srp-achip { font-size:.78rem; font-weight:600; color:#33514e; background:#fff; border:1px solid var(--srp-line); border-radius:999px; padding:.4rem .8rem; cursor:pointer; }
.srp-achip:hover { border-color:var(--srp-primary); color:var(--srp-primary); }
.srp-achips__skip { margin:.5rem 0 0; }
.srp-achips__skip button { background:none; border:0; padding:0; font-size:.78rem; color:var(--srp-primary-dark); text-decoration:underline; cursor:pointer; }
.srp-assistant__form { display:flex; gap:.4rem; padding:.7rem 1rem; border-top:1px solid var(--srp-line); }
.srp-assistant__form input { flex:1; padding:.6rem .8rem; border:1px solid var(--srp-line); border-radius:9px; font-size:.88rem; }
.srp-assistant__form button { padding:.6rem 1rem; border:0; border-radius:9px; background:var(--srp-primary); color:#fff; font-weight:700; cursor:pointer; }
.srp-assistant__form .srp-mic { flex:none; }

/* Voice input — mic + language pill, shared shape across the drawer and the
   homepage panel. Mic is hidden by default (see storefront.js) and only
   revealed once the browser confirms it has the Web Speech API at all. */
.srp-mic {
	display:grid; place-items:center; width:2.4rem; padding:0; border:1px solid var(--srp-line-strong);
	border-radius:9px; background:#fff; color:var(--srp-primary-dark); cursor:pointer;
}
.srp-mic svg { width:1.15rem; height:1.15rem; fill:none; stroke:currentColor; stroke-width:1.8; stroke-linecap:round; stroke-linejoin:round; }
.srp-mic:hover { border-color:var(--srp-primary); color:var(--srp-primary); }
.srp-mic.is-recording { background:var(--srp-primary); color:#fff; border-color:var(--srp-primary); animation:srp-mic-pulse 1.4s ease-in-out infinite; }
@keyframes srp-mic-pulse {
	0%, 100% { box-shadow:0 0 0 0 rgba(31,111,124,.45); }
	50% { box-shadow:0 0 0 6px rgba(31,111,124,0); }
}
@media (prefers-reduced-motion: reduce) {
	.srp-mic.is-recording { animation:none; }
}
/* The forms' generic "button" rule (specificity 0,1,1) beats the mic's own
   styling (0,1,0): it rendered as a big filled teal button and, with the input
   refusing to shrink below its intrinsic width, pushed the Ask button off the
   panel on a 375px phone. Re-assert the mic's shape here (0,2,0) and let the
   input shrink. */
.srp-heroask__form input,
.srp-assistant__form input { min-width:0; }
.srp-heroask__form .srp-mic,
.srp-assistant__form .srp-mic { padding:0; background:#fff; color:var(--srp-primary-dark); border:1px solid var(--srp-line-strong); }
.srp-heroask__form .srp-mic:hover,
.srp-assistant__form .srp-mic:hover { background:#fff; border-color:var(--srp-primary); color:var(--srp-primary); }
.srp-heroask__form .srp-mic.is-recording,
.srp-assistant__form .srp-mic.is-recording { background:var(--srp-primary); color:#fff; border-color:var(--srp-primary); }
.srp-mic-msg { margin:0; padding:0 1.1rem .5rem; font-size:.76rem; color:#a52626; }
#srp-assistant-mic-msg { padding:0 1rem .5rem; }
.srp-assistant__foot { padding:0 1rem .5rem; }
.srp-assistant__foot .srp-btn { display:block; text-align:center; }
.srp-assistant__disc { font-size:.72rem; font-style:italic; color:var(--srp-faint); text-align:center; padding:0 1rem 1rem; margin:0; }

/* The floating "Ask us" button (srp-customer-widgets) would be a redundant
   second entry point right next to the always-open hero panel — hide it on
   the homepage only. Stays exactly as-is everywhere else. */
body.home .srp-fab { display:none; }

/* ---- Header contact cluster ---------------------------------- */
.srp-header__contact { display:flex; align-items:center; gap:.9rem; font-size:.86rem; font-weight:600; }
.srp-header__call { color:var(--srp-primary-dark); text-decoration:none; white-space:nowrap; }
.srp-header__wa {
	color:#0b7a44; text-decoration:none; border:1px solid #bfe6cf;
	background:#eefaf1; border-radius:7px; padding:.3rem .65rem; white-space:nowrap;
}
.srp-header__wa:hover { background:#dff4e6; }

/* ---- Generic contact cluster (footer, thank-you, how-it-works) */
.srp-contact { display:inline-flex; flex-wrap:wrap; gap:.6rem; align-items:center; }
.srp-contact a { text-decoration:none; font-weight:600; }
.srp-contact__call { color:var(--srp-primary-dark); }
.srp-contact__wa {
	background:#0b7a44; color:#fff; border-radius:8px; padding:.5rem .9rem;
}
.srp-contact__wa:hover { background:#096536; color:#fff; }
.srp-contact--buttons .srp-contact__call {
	border:1px solid var(--srp-line-strong); border-radius:8px; padding:.5rem .9rem; color:var(--srp-ink);
}
.srp-btn--ghost { background:transparent; color:var(--srp-primary-dark); border:1px solid var(--srp-line-strong); }
.srp-btn--ghost:hover { background:var(--srp-paper); color:var(--srp-primary-dark); }
.srp-linkbtn { background:none; border:0; padding:0; font:inherit; color:inherit; cursor:pointer; text-align:left; }

/* ---- Assistant: how-ordering line --------------------------- */
.srp-assistant__how {
	font-size:.76rem; line-height:1.45; color:var(--srp-muted);
	background:var(--srp-paper); border-radius:8px; margin:.2rem 1rem .4rem; padding:.55rem .7rem;
}
.srp-assistant__how a { color:var(--srp-primary-dark); font-weight:600; }
.srp-assistant__foot { display:flex; gap:.5rem; }
.srp-assistant__foot .srp-btn { flex:1; padding:.6rem .5rem; font-size:.82rem; }

/* ---- Workflow notices (cart / checkout / product) ----------- */
.srp-wf-notice { border-left:4px solid var(--srp-primary) !important; }
.srp-wf-notice a { font-weight:600; }
.srp-wf-product {
	margin:.9rem 0 0; font-size:.86rem; line-height:1.5; color:var(--srp-muted);
	padding:.7rem .85rem; background:var(--srp-paper); border-radius:9px; max-width:46ch;
}
.srp-wf-product span[aria-hidden] { color:var(--srp-primary); font-weight:700; }
.srp-wf-product a { color:var(--srp-primary-dark); font-weight:600; }
.srp-wf-notice--area { border-left-color:var(--srp-de-ink) !important; }
.srp-mrp-note { font-size:.8rem; color:var(--srp-muted); line-height:1.5; margin:.6rem 0 0; max-width:52ch; }
.srp-mrp-tag { font-family:var(--srp-font-mono); font-size:.62em; font-weight:600; letter-spacing:.08em; color:var(--srp-muted); vertical-align:.18em; margin-right:.25em; }
.srp-wf-outofarea { color:#8a4b2f; background:#fbeee6; border:1px solid #f0d6c4; border-radius:9px; padding:.7rem .85rem; font-size:.88rem; line-height:1.5; }
.srp-acc-status { color:var(--srp-muted); font-size:.9rem; margin:.3rem 0 0; }

/* ---- Thank-you / order-received panel ---------------------- */
.srp-tyw {
	margin:1.6rem 0; padding:1.4rem 1.5rem; background:var(--srp-surface);
	border:1px solid var(--srp-line); border-radius:var(--srp-radius);
}
.srp-tyw h2 { font-family:var(--srp-font-display); font-weight:600; margin:0 0 .8rem; font-size:1.3rem; }
.srp-tyw__steps { margin:0 0 1rem; padding-left:1.2rem; display:grid; gap:.5rem; }
.srp-tyw__steps li { line-height:1.55; }
.srp-tyw__disc { font-size:.86rem; color:var(--srp-muted); font-style:italic; margin:0 0 .8rem; }
.srp-tyw__contact { display:flex; flex-wrap:wrap; gap:.6rem; align-items:center; font-size:.92rem; }
.srp-tyw__contact a { color:var(--srp-primary-dark); font-weight:600; }

/* ---- Footer ----------------------------------------------- */
.srp-site-footer { background:var(--srp-forest); color:#dfeae8; margin-top:3rem; }
.srp-footer { max-width:1180px; margin-inline:auto; padding:2.6rem var(--srp-gutter, 1.2rem) 2rem; }
.srp-footer__grid { display:grid; grid-template-columns:1.4fr 1fr 1fr; gap:2rem; }
.srp-footer p { margin:.3rem 0; line-height:1.55; font-size:.9rem; }
.srp-footer a { color:#eaf3f1; text-decoration:none; }
.srp-footer a:hover { text-decoration:underline; }
.srp-footer__name { font-family:var(--srp-font-display); font-size:1.15rem; color:#fff; }
.srp-footer__h { font-family:var(--srp-font-mono); font-size:.72rem; letter-spacing:.12em; text-transform:uppercase; color:#9db8b4; margin:0 0 .4rem; }
.srp-footer__col ul { list-style:none; margin:0; padding:0; display:grid; gap:.35rem; }
.srp-footer__col .srp-linkbtn { color:#eaf3f1; }
.srp-footer__legal { border-top:1px solid rgba(255,255,255,.14); margin-top:2rem; padding-top:1.2rem; }
.srp-footer__legal p { font-size:.8rem; color:#9db8b4; max-width:80ch; }
.srp-footer__notstore { color:#d7e6e2 !important; font-weight:500; border-left:2px solid var(--srp-cta); padding-left:.85rem; }
.srp-nap__addr { font-style:normal; line-height:1.5; font-size:.9rem; margin:.3rem 0; }
.srp-footer__map { margin-top:2rem; }

/* ---- Google map embed (click-to-load facade) ------------- */
.srp-map { position:relative; border-radius:var(--srp-radius); overflow:hidden; background:#e4efec; min-height:var(--srp-map-h,260px); }
.srp-map__facade {
	position:absolute; inset:0; display:flex; flex-direction:column;
	align-items:center; justify-content:center; gap:.55rem; text-align:center; padding:1.2rem;
	background-color:#e4efec;
	background-image:
		linear-gradient(rgba(23,107,99,.10) 1px, transparent 1px),
		linear-gradient(90deg, rgba(23,107,99,.10) 1px, transparent 1px);
	background-size:26px 26px;
}
.srp-map__addr { margin:0; font-size:.9rem; line-height:1.5; color:var(--srp-ink); max-width:34ch; }
.srp-map__load {
	border:0; cursor:pointer; background:var(--srp-primary); color:#fff; font-weight:600;
	padding:.6rem 1.15rem; border-radius:8px;
	font-family:var(--srp-font-mono); font-size:.78rem; letter-spacing:.05em; text-transform:uppercase;
}
.srp-map__load:hover { background:var(--srp-primary-dark); }
.srp-map__ext { font-size:.8rem; color:var(--srp-primary-dark); text-decoration:none; }
.srp-map__ext:hover { text-decoration:underline; }
.srp-map iframe { display:block; width:100%; height:var(--srp-map-h,260px); border:0; }
.srp-map.is-live .srp-map__facade { display:none; }

.srp-footer__map .srp-map { min-height:200px; background:#123f3a; }
.srp-footer__map .srp-map__facade {
	background-color:#123f3a;
	background-image:
		linear-gradient(rgba(255,255,255,.06) 1px, transparent 1px),
		linear-gradient(90deg, rgba(255,255,255,.06) 1px, transparent 1px);
}
.srp-footer__map .srp-map__addr { color:#e7f0ee; }
.srp-footer__map .srp-map__ext { color:#9fd8cf; }
.srp-how__contact .srp-map { margin-top:1rem; }

/* ---- How ordering works page ----------------------------- */
.srp-how { max-width:760px; margin-inline:auto; padding:2.5rem var(--srp-gutter, 1.2rem) 4rem; }
.srp-how__head h1 { font-family:var(--srp-font-display); font-weight:600; font-size:2rem; margin:0 0 .5rem; }
.srp-how__head p { color:var(--srp-muted); font-size:1.05rem; max-width:60ch; }
.srp-how__steps { list-style:none; margin:2rem 0; padding:0; display:grid; gap:1.4rem; }
.srp-how__steps li { display:grid; grid-template-columns:auto 1fr; gap:1rem; align-items:start; }
.srp-how__n {
	width:2rem; height:2rem; border-radius:50%; background:var(--srp-primary); color:#fff;
	display:grid; place-items:center; font-family:var(--srp-font-mono); font-weight:600;
}
.srp-how__steps h2 { font-family:var(--srp-font-display); font-weight:600; font-size:1.2rem; margin:.1rem 0 .3rem; }
.srp-how__steps p { margin:0; color:var(--srp-muted); line-height:1.6; }
.srp-how__note { background:var(--srp-warm); border-radius:var(--srp-radius); padding:1.1rem 1.3rem; margin:1.5rem 0; }
.srp-how__note p { margin:0; line-height:1.6; }
.srp-how__contact { margin-top:2rem; }
.srp-how__contact h2 { font-family:var(--srp-font-display); font-weight:600; font-size:1.25rem; margin:0 0 .6rem; }
.srp-how__addr { color:var(--srp-muted); font-size:.9rem; margin-top:.6rem; }

/* ---- Customer-initiated WhatsApp CTA ------------------------- */
.srp-wa-cta { margin:1rem 0; }
.srp-wa-cta__note { font-size:.88rem; line-height:1.5; color:var(--srp-muted); margin:0 0 .55rem; max-width:52ch; }
.srp-wa-cta__btn {
	display:inline-flex; align-items:center; gap:.5rem;
	background:#0b7a44; color:#fff; text-decoration:none; font-weight:700;
	font-size:1rem; padding:.85rem 1.4rem; border-radius:10px;
	box-shadow:0 2px 10px rgba(11,122,68,.28);
}
.srp-wa-cta__btn:hover { background:#096536; color:#fff; }
.srp-wa-cta__ico { font-size:1.15em; }
.srp-wa-cta--req .srp-wa-cta__note { color:var(--srp-ink); font-weight:500; }
@keyframes srp-wa-pulse {
	0%, 100% { box-shadow:0 2px 10px rgba(11,122,68,.28); transform:translateZ(0) scale(1); }
	50%      { box-shadow:0 4px 22px rgba(11,122,68,.55); transform:translateZ(0) scale(1.035); }
}
.srp-wa-cta--blink .srp-wa-cta__btn { animation:srp-wa-pulse 1.5s ease-in-out infinite; }
@media (prefers-reduced-motion: reduce) {
	.srp-wa-cta--blink .srp-wa-cta__btn { animation:none; outline:2px solid #0b7a44; outline-offset:3px; }
}

/* Cart-page details form (name/patient/age/sex/phone/email/address) that
   gates the WhatsApp button until filled — see storefront.js. */
.srp-wa-details { margin:0 0 .85rem; max-width:52ch; }
.srp-wa-details__hint { font-size:.85rem; color:var(--srp-muted); margin:0 0 .55rem; }
.srp-wa-details__row { display:flex; gap:.5rem; margin-bottom:.5rem; flex-wrap:wrap; }
.srp-wa-details__row input, .srp-wa-details__row select { flex:1 1 120px; min-width:100px; }
.srp-wa-details input, .srp-wa-details select, .srp-wa-details textarea {
	padding:.55rem .7rem; border:1px solid #d7ddd9; border-radius:8px;
	font-size:.92rem; font-family:inherit; background:#fff; color:var(--srp-ink);
}
.srp-wa-details textarea { width:100%; resize:vertical; margin-bottom:.5rem; }
.srp-wa-f--invalid { border-color:#c0392b !important; background:#fdf0ef; }
.srp-wa-details__err { color:#c0392b; font-size:.85rem; margin:0 0 .55rem; }
.srp-wa-cta--needs-details .srp-wa-cta__btn { opacity:.55; cursor:not-allowed; box-shadow:none; }
.srp-wa-cta--needs-details .srp-wa-cta__btn--ready { opacity:1; cursor:pointer; box-shadow:0 2px 10px rgba(11,122,68,.28); }
.srp-wa-cta--needs-details.srp-wa-cta--blink .srp-wa-cta__btn { animation:none; }
.srp-wa-cta--needs-details.srp-wa-cta--blink .srp-wa-cta__btn--ready { animation:srp-wa-pulse 1.5s ease-in-out infinite; }

/* On-site confirmation shown after the server sends the WhatsApp message itself
   (WhatsApp Business API configured) — the customer never leaves the page. */
.srp-wa-sent { background:#eefaf1; border:1px solid #bfe6cf; border-radius:var(--srp-radius); padding:1rem 1.15rem; }
.srp-wa-sent__title { font-weight:700; font-size:1.05rem; margin:0 0 .4rem; color:#0b7a44; }
.srp-wa-sent p { margin:.2rem 0; font-size:.92rem; line-height:1.5; }

/* Assistant drawer: the WhatsApp CTA sits tighter */
.srp-amsg .srp-wa-cta { margin:.4rem 0 0; }
.srp-amsg .srp-wa-cta__btn { width:100%; justify-content:center; font-size:.92rem; padding:.7rem 1rem; }

/* Thank-you page: make it the loud step */
.srp-tyw .srp-wa-cta { margin:1.2rem 0 .4rem; padding:1rem 1.1rem; background:#eefaf1; border:1px solid #bfe6cf; border-radius:var(--srp-radius); }
.srp-tyw .srp-wa-cta__btn { font-size:1.05rem; }

/* ---- responsive ---------------------------------------------- */
@media (max-width: 860px) {
	.srp-assistant__panel { width:100%; }
	.srp-doors { grid-template-columns:1fr; }
	.srp-door--concern { border-left:0; border-top:1px solid var(--srp-line); }
	.srp-concern__layout { grid-template-columns:1fr; }
	.srp-filters { position:static; }
	.srp-clxblock__featured { grid-template-columns:88px 1fr; }
	.srp-row { grid-template-columns:52px 1fr; }
	.srp-row__img, .srp-row img { width:52px; height:52px; }
	.srp-row__buy { grid-column:2; flex-direction:row; align-items:center; justify-content:space-between; width:100%; }
	.srp-footer__grid { grid-template-columns:1fr; gap:1.6rem; }
	.srp-nav { width:100%; order:3; gap:.3rem .9rem; }
	.srp-brand__addr { white-space:normal; }
}

@media (max-width: 560px) {
	.srp-clx-ask { flex-direction:column; gap:.5rem; padding:1.1rem 1rem; }
	.srp-clx-ask__spark { display:none; }
	.srp-clx-ask__form input { min-width:0; }
	.srp-clxblock__featured { grid-template-columns:1fr; }
	.srp-remlist { grid-template-columns:1fr; }
	.srp-remedy__buy .srp-list .srp-row { grid-template-columns:44px 1fr; }
	.srp-wa-cta__btn { width:100%; justify-content:center; }
	.srp-az a { width:1.9rem; height:1.9rem; }
}

