/* Blog — list (/blogs-samarth-ivf/) and articles. A fresh, editorial design on the owner's request (28 Oct 2026),
   in the brand palette and fonts: K2D headings, Archivo reading text, Montserrat UI. */


/* ---------- List ---------- */
.bl-hero { padding: 64px 30px 56px; background: radial-gradient(120% 140% at 85% 0%, #fae8ff 0%, rgba(250, 232, 255, 0) 55%), linear-gradient(160deg, #f6f3ff 0%, #fbf8ff 100%); }
.bl-hero-in { max-width: 860px; margin: 0 auto; text-align: center; display: flex; flex-direction: column; align-items: center; gap: 16px; }
.bl-eyebrow { margin: 0; padding: 5px 14px; border-radius: 999px; background: #fff; border: 1px solid var(--sv-line); font-family: 'Montserrat', sans-serif; font-size: 12px; font-weight: 700; letter-spacing: 0.1em; text-transform: uppercase; color: var(--sv-purple); }
.bl-h1 { margin: 0; font-family: 'K2D', sans-serif; font-size: 52px; font-weight: 700; line-height: 1.08; color: #1d1530; }
.bl-h1 em { font-style: normal; background: linear-gradient(120deg, #563084, #8b2b89); -webkit-background-clip: text; background-clip: text; color: transparent; }
.bl-intro { max-width: 620px; margin: 0; font-family: 'Archivo', sans-serif; font-size: 17px; line-height: 1.65; color: var(--sv-slate); }
.bl-search { position: relative; width: 100%; max-width: 640px; margin-top: 10px; display: flex; align-items: center; gap: 8px; padding: 7px 7px 7px 50px; border-radius: 999px; background: #fff; border: 1px solid #e3d8f3; box-shadow: 0 18px 40px -24px rgba(86, 48, 132, 0.45); transition: border-color 0.2s, box-shadow 0.2s; }
.bl-search:focus-within { border-color: var(--sv-violet); box-shadow: 0 18px 44px -20px rgba(139, 43, 137, 0.5); }
.bl-search svg { position: absolute; left: 20px; width: 20px; height: 20px; fill: none; stroke: #8b7fa6; stroke-width: 2; stroke-linecap: round; }
.bl-search input { flex: 1; min-width: 0; height: 44px; border: 0; outline: 0; background: transparent; font-family: 'Archivo', sans-serif; font-size: 16px; color: #1d1530; }
.bl-search input::-webkit-search-cancel-button { cursor: pointer; }
.bl-search button { height: 44px; padding: 0 24px; border: 0; border-radius: 999px; background: var(--sv-grad); font-family: 'Montserrat', sans-serif; font-size: 14px; font-weight: 700; color: #fff; cursor: pointer; }
.bl-stats { margin: 4px 0 0; font-family: 'Montserrat', sans-serif; font-size: 13px; color: #7b7590; }

.bl-bar { position: sticky; top: 130px; z-index: 20; margin: 18px 0 0; padding: 10px 0; background: rgba(255, 255, 255, 0.92); -webkit-backdrop-filter: blur(10px); backdrop-filter: blur(10px); border-bottom: 1px solid #f0ebf8; }
.bl-bar-in { max-width: 1250px; margin: 0 auto; padding: 0 30px; display: flex; align-items: center; gap: 20px; }
.bl-tabs { flex: 1; min-width: 0; min-inline-size: 0; margin: 0; padding: 4px 2px; border: 0; display: flex; gap: 8px; overflow-x: auto; scrollbar-width: none; scroll-behavior: smooth; mask-image: linear-gradient(90deg, #000 92%, transparent); }
.bl-tabs::-webkit-scrollbar { display: none; }
.bl-tab { position: relative; flex: none; cursor: pointer; }
.bl-tab input { position: absolute; opacity: 0; pointer-events: none; }
.bl-tab span { display: inline-flex; align-items: center; gap: 7px; padding: 8px 15px; border-radius: 999px; border: 1px solid #e6dff3; background: #fff; font-family: 'Montserrat', sans-serif; font-size: 13px; font-weight: 600; color: #4a4560; white-space: nowrap; transition: background 0.2s, color 0.2s, border-color 0.2s; }
.bl-tab span em { font-style: normal; font-size: 11px; font-weight: 700; padding: 1px 7px; border-radius: 999px; background: var(--sv-ghost); color: #7b7590; }
.bl-tab:hover span { border-color: #cdbbe6; color: var(--sv-purple); }
.bl-tab input:checked + span { background: var(--sv-purple); border-color: var(--sv-purple); color: #fff; }
.bl-tab input:checked + span em { background: rgba(255, 255, 255, 0.2); color: #fff; }
.bl-tab input:focus-visible + span { outline: 2px solid var(--sv-violet); outline-offset: 2px; }
.bl-filters { flex: none; display: flex; gap: 10px; }
.bl-select { position: relative; display: flex; align-items: center; }
.bl-select span { position: absolute; left: 14px; top: 50%; transform: translateY(-50%); font-family: 'Montserrat', sans-serif; font-size: 10px; font-weight: 700; letter-spacing: 0.08em; text-transform: uppercase; color: #9a93ad; pointer-events: none; }
.bl-select select { appearance: none; height: 40px; padding: 0 34px 0 70px; border: 1px solid #e6dff3; border-radius: 12px; background: #fff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23563084' stroke-width='2.4'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E") right 12px center / 14px no-repeat; font-family: 'Montserrat', sans-serif; font-size: 13px; font-weight: 600; color: #1d1530; cursor: pointer; }
.bl-select select:focus-visible { outline: 2px solid var(--sv-violet); outline-offset: 1px; }

.bl-body { max-width: 1250px; margin: 0 auto; padding: 32px 30px 40px; transition: opacity 0.2s; }
.bl-body.is-loading { opacity: 0.45; pointer-events: none; }

.bl-feat { display: grid; grid-template-columns: minmax(0, 1.15fr) minmax(0, 1fr); align-items: stretch; margin-bottom: 40px; border-radius: 28px; overflow: hidden; background: #fff; border: 1px solid #eee7f7; box-shadow: 0 30px 60px -40px rgba(86, 48, 132, 0.5); text-decoration: none; transition: transform 0.35s, box-shadow 0.35s; }
.bl-feat:hover { transform: translateY(-4px); box-shadow: 0 40px 70px -40px rgba(86, 48, 132, 0.6); }
.bl-feat-img { position: relative; min-height: 340px; background: var(--sv-ghost); overflow: hidden; }
.bl-feat-img img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; transition: transform 0.6s; }
.bl-feat:hover .bl-feat-img img { transform: scale(1.03); }
.bl-feat-txt { display: flex; flex-direction: column; justify-content: center; gap: 14px; padding: 40px 44px; }
.bl-feat-txt h2 { margin: 0; font-family: 'K2D', sans-serif; font-size: 32px; font-weight: 700; line-height: 1.15; color: #1d1530; }
.bl-feat-txt > p:not(.bl-meta) { margin: 0; font-family: 'Archivo', sans-serif; font-size: 16px; line-height: 1.65; color: var(--sv-slate); display: -webkit-box; -webkit-line-clamp: 3; -webkit-box-orient: vertical; overflow: hidden; }
.bl-pill { padding: 3px 10px; border-radius: 999px; background: var(--sv-grad); color: #fff; font-size: 11px; font-weight: 700; letter-spacing: 0.06em; text-transform: uppercase; }
.bl-read { align-self: flex-start; font-family: 'Montserrat', sans-serif; font-size: 14px; font-weight: 700; color: var(--sv-purple); text-decoration: none; }

.bl-meta { display: flex; flex-wrap: wrap; align-items: center; gap: 8px; margin: 0; font-family: 'Montserrat', sans-serif; font-size: 12px; font-weight: 500; color: #8a849c; }
.bl-cat { margin: 0; font-family: 'Montserrat', sans-serif; font-size: 11px; font-weight: 700; letter-spacing: 0.08em; text-transform: uppercase; color: var(--sv-violet); }

.bl-summary { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 12px; margin-bottom: 20px; }
.bl-summary > p { margin: 0; font-family: 'Montserrat', sans-serif; font-size: 15px; color: #4a4560; }
.bl-summary strong { color: #1d1530; }
.bl-active { list-style: none; margin: 0; padding: 0; display: flex; flex-wrap: wrap; gap: 8px; }
.bl-active a { display: inline-flex; align-items: center; gap: 6px; padding: 5px 12px; border-radius: 999px; background: var(--sv-ghost); border: 1px solid #e6dff3; font-family: 'Montserrat', sans-serif; font-size: 12px; font-weight: 600; color: var(--sv-purple); text-decoration: none; }
.bl-active a span { font-size: 15px; line-height: 1; }
.bl-active a:hover { border-color: var(--sv-violet); }
.bl-active .bl-clear { background: transparent; border-color: transparent; color: #8a849c; text-decoration: underline; }

.bl-grid { list-style: none; margin: 0; padding: 0; display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 28px; }
.bl-card { height: 100%; display: flex; flex-direction: column; border-radius: 22px; overflow: hidden; background: #fff; border: 1px solid #eee7f7; text-decoration: none; transition: transform 0.3s, box-shadow 0.3s, border-color 0.3s; }
.bl-card:hover { transform: translateY(-5px); border-color: #ddd0ef; box-shadow: 0 26px 44px -30px rgba(86, 48, 132, 0.55); }
.bl-card-img { position: relative; aspect-ratio: 16 / 10; overflow: hidden; background: linear-gradient(140deg, #efe6fb, #fae8ff); }
.bl-card-img img { width: 100%; height: 100%; object-fit: cover; transition: transform 0.6s; }
.bl-card:hover .bl-card-img img { transform: scale(1.04); }
.bl-card-ph { position: absolute; inset: 0; display: grid; place-items: center; font-family: 'K2D', sans-serif; font-size: 64px; font-weight: 700; color: rgba(86, 48, 132, 0.25); }
.bl-card-txt { flex: 1; display: flex; flex-direction: column; gap: 10px; padding: 20px 22px 22px; }
.bl-card h3 { margin: 0; font-family: 'K2D', sans-serif; font-size: 20px; font-weight: 700; line-height: 1.3; color: #1d1530; display: -webkit-box; -webkit-line-clamp: 3; -webkit-box-orient: vertical; overflow: hidden; }
.bl-card:hover h3 { color: var(--sv-purple); }
.bl-ex { margin: 0; flex: 1; font-family: 'Archivo', sans-serif; font-size: 14.5px; line-height: 1.6; color: #5d5871; display: -webkit-box; -webkit-line-clamp: 3; -webkit-box-orient: vertical; overflow: hidden; }

.bl-empty { padding: 60px 20px; border-radius: 24px; background: var(--sv-ghost); text-align: center; display: flex; flex-direction: column; align-items: center; gap: 10px; }
.bl-empty svg { width: 44px; height: 44px; fill: none; stroke: #b9a8d6; stroke-width: 2; stroke-linecap: round; }
.bl-empty h2 { margin: 0; font-family: 'K2D', sans-serif; font-size: 24px; color: #1d1530; }
.bl-empty p { margin: 0; font-family: 'Archivo', sans-serif; color: var(--sv-slate); }

.bl-pages { display: flex; align-items: center; justify-content: center; gap: 14px; margin-top: 44px; }
.bl-pages ol { list-style: none; margin: 0; padding: 0; display: flex; gap: 6px; }
.bl-num, .bl-dots { display: grid; place-items: center; min-width: 40px; height: 40px; padding: 0 8px; border-radius: 12px; font-family: 'Montserrat', sans-serif; font-size: 14px; font-weight: 600; color: #4a4560; text-decoration: none; }
a.bl-num:hover { background: var(--sv-ghost); color: var(--sv-purple); }
.bl-num.is-on { background: var(--sv-purple); color: #fff; }
.bl-pg { padding: 9px 16px; border-radius: 12px; border: 1px solid #e6dff3; font-family: 'Montserrat', sans-serif; font-size: 13px; font-weight: 700; color: var(--sv-purple); text-decoration: none; }
a.bl-pg:hover { border-color: var(--sv-violet); }
.bl-pg.is-off { color: #c3bdd2; border-color: #f0ebf8; }


/* ---------- Article ---------- */
.ar-progress { position: fixed; left: 0; right: 0; top: 0; z-index: 1000; height: 3px; pointer-events: none; }
.ar-progress span { display: block; height: 100%; background: var(--sv-grad); transform: scaleX(0); transform-origin: 0 50%; }

.ar { padding-top: 10px; }
.ar-head { max-width: 860px; margin: 0 auto; padding: 48px 30px 32px; text-align: center; display: flex; flex-direction: column; align-items: center; gap: 16px; }
.ar-crumbs { display: flex; gap: 8px; font-family: 'Montserrat', sans-serif; font-size: 13px; color: #8a849c; }
.ar-crumbs a { color: inherit; text-decoration: none; }
.ar-crumbs a:hover { color: var(--sv-purple); }
.ar-cat { padding: 5px 14px; border-radius: 999px; background: #fae8ff; font-family: 'Montserrat', sans-serif; font-size: 12px; font-weight: 700; letter-spacing: 0.08em; text-transform: uppercase; color: var(--sv-violet); text-decoration: none; }
.ar-h1 { margin: 0; font-family: 'K2D', sans-serif; font-size: 48px; font-weight: 700; line-height: 1.12; letter-spacing: -0.01em; color: #1d1530; text-wrap: balance; }
.ar-lead { max-width: 700px; margin: 0; font-family: 'Archivo', sans-serif; font-size: 19px; line-height: 1.65; color: #5d5871; text-wrap: pretty; }
.ar-meta { display: flex; flex-wrap: wrap; justify-content: center; align-items: center; gap: 6px 18px; margin-top: 6px; font-family: 'Montserrat', sans-serif; font-size: 13px; color: #8a849c; }
.ar-meta > span + span::before { content: '·'; margin-right: 18px; color: #c9c3d6; }
.ar-by { display: inline-flex; align-items: center; gap: 10px; font-weight: 600; color: #1d1530; }
.ar-by img { width: 36px; height: 36px; padding: 6px; border-radius: 50%; background: var(--sv-ghost); object-fit: contain; }

.ar-hero { position: relative; max-width: 1180px; margin: 0 auto 10px; padding: 0 30px; }
.ar-hero img { display: block; width: 100%; aspect-ratio: 16 / 8; object-fit: cover; border-radius: 28px; box-shadow: 0 40px 80px -50px rgba(86, 48, 132, 0.6); }
.ar-hero figcaption { position: absolute; right: 46px; top: 16px; padding: 3px 10px; border-radius: 999px; background: rgba(29, 21, 48, 0.62); color: #fff; font-family: 'Archivo', sans-serif; font-size: 11px; letter-spacing: 0.04em; }

.ar-grid { max-width: 1180px; margin: 0 auto; padding: 48px 30px 20px; display: grid; grid-template-columns: 250px minmax(0, 720px); justify-content: center; gap: 70px; align-items: start; }
.ar-side { position: sticky; top: 120px; display: flex; flex-direction: column; gap: 24px; max-height: calc(100vh - 140px); overflow-y: auto; scrollbar-width: thin; }
.ar-side-h { margin: 0 0 10px; font-family: 'Montserrat', sans-serif; font-size: 11px; font-weight: 700; letter-spacing: 0.12em; text-transform: uppercase; color: var(--sv-purple); }
.ar-toc ol { list-style: none; margin: 0; padding: 0; border-left: 2px solid #ece6fb; }
.ar-toc a { display: block; margin-left: -2px; padding: 6px 0 6px 14px; border-left: 2px solid transparent; font-family: 'Archivo', sans-serif; font-size: 13.5px; line-height: 1.4; color: #6b6680; text-decoration: none; transition: color 0.2s, border-color 0.2s; }
.ar-toc a:hover { color: var(--sv-purple); }
.ar-toc a[aria-current='true'] { color: var(--sv-purple); font-weight: 600; border-left-color: var(--sv-violet); }
.ar-help { padding: 20px; border-radius: 20px; background: linear-gradient(160deg, #f6f3ff, #fbf4ff); border: 1px solid #ece6fb; display: flex; flex-direction: column; align-items: flex-start; gap: 10px; }
.ar-help p:not(.ar-side-h) { margin: 0; font-family: 'Archivo', sans-serif; font-size: 13.5px; line-height: 1.55; color: var(--sv-slate); }
.ar-help .ar-side-h { margin: 0; font-size: 14px; letter-spacing: 0; text-transform: none; }
.ar-help .sv-btn { font-size: 13px; }
.ar-link { font-family: 'Montserrat', sans-serif; font-size: 13px; font-weight: 600; color: var(--sv-purple); text-decoration: none; }

/* Reading column */
.ar-body { font-family: 'Archivo', sans-serif; font-size: 18px; line-height: 1.8; color: #302b40; }
.ar-body > * { margin: 0 0 1.25em; }
.ar-body > p:first-child { font-size: 20px; line-height: 1.75; color: #1d1530; }
.ar-body h2 { margin: 2.2em 0 0.7em; scroll-margin-top: 120px; font-family: 'K2D', sans-serif; font-size: 31px; font-weight: 700; line-height: 1.2; color: #1d1530; }
.ar-body h3 { margin: 1.8em 0 0.5em; font-family: 'K2D', sans-serif; font-size: 22px; font-weight: 700; line-height: 1.3; color: var(--sv-purple); }
.ar-body h2 + h3 { margin-top: 0.6em; }
.ar-body strong { color: #1d1530; font-weight: 700; }
.ar-body a { color: var(--sv-purple); text-decoration: underline; text-decoration-color: rgba(86, 48, 132, 0.35); text-underline-offset: 3px; text-decoration-thickness: 1.5px; }
.ar-body a:hover { text-decoration-color: currentColor; }
.ar-body ul, .ar-body ol { padding-left: 0; list-style: none; }
.ar-body li { position: relative; margin: 0 0 0.6em; padding-left: 30px; }
.ar-body ul > li::before { content: ''; position: absolute; left: 6px; top: 0.72em; width: 8px; height: 8px; border-radius: 50%; background: linear-gradient(135deg, #563084, #8b2b89); }
.ar-body ol { counter-reset: ar; }
.ar-body ol > li { counter-increment: ar; }
.ar-body ol > li::before { content: counter(ar); position: absolute; left: 0; top: 0.2em; width: 22px; height: 22px; display: grid; place-items: center; border-radius: 50%; background: var(--sv-ghost); font-family: 'Montserrat', sans-serif; font-size: 12px; font-weight: 700; color: var(--sv-purple); }
.ar-body blockquote { margin: 1.8em 0; padding: 22px 26px; border-radius: 18px; border-left: 4px solid var(--sv-violet); background: linear-gradient(120deg, #faf4ff, #f6f8ff); color: #2b2540; }
.ar-body blockquote p { margin: 0 0 0.6em; }
.ar-body blockquote p:last-child { margin: 0; }
.ar-body blockquote .ar-callout-h { margin-bottom: 4px; font-family: 'K2D', sans-serif; font-size: 19px; }
.ar-body blockquote .ar-callout-h strong { color: var(--sv-purple); }
.ar-body img { display: block; max-width: 100%; height: auto; margin: 1.5em auto; border-radius: 18px; }
.ar-body hr { border: 0; height: 1px; margin: 2.4em 0; background: #ece6fb; }
.ar-table { margin: 1.8em 0; overflow-x: auto; border-radius: 16px; border: 1px solid #ece6fb; }
.ar-body table { width: 100%; min-width: 520px; border-collapse: collapse; font-size: 15px; line-height: 1.55; }
.ar-body th { padding: 13px 16px; background: var(--sv-purple); font-family: 'Montserrat', sans-serif; font-size: 13px; font-weight: 700; color: #fff; text-align: left; vertical-align: bottom; }
.ar-body td { padding: 12px 16px; border-top: 1px solid #f0ebf8; vertical-align: top; }
.ar-body tbody tr:nth-child(even) td { background: #fcfaff; }
.ar-body td:first-child { font-weight: 600; color: #1d1530; }

.ar-faq { display: flex; flex-direction: column; gap: 10px; margin: 0 0 1.25em; }
.ar-faq details { border: 1px solid #ece6fb; border-radius: 16px; background: #fff; overflow: hidden; transition: border-color 0.2s; }
.ar-faq details[open] { border-color: #d9c8ee; }
.ar-faq summary { list-style: none; cursor: pointer; position: relative; padding: 16px 52px 16px 20px; font-family: 'Montserrat', sans-serif; font-size: 16px; font-weight: 600; line-height: 1.45; color: #1d1530; }
.ar-faq summary::-webkit-details-marker { display: none; }
.ar-faq summary::after { content: ''; position: absolute; right: 20px; top: 50%; width: 10px; height: 10px; border-right: 2px solid var(--sv-purple); border-bottom: 2px solid var(--sv-purple); transform: translateY(-70%) rotate(45deg); transition: transform 0.2s; }
.ar-faq details[open] summary { color: var(--sv-purple); background: var(--sv-ghost); }
.ar-faq details[open] summary::after { transform: translateY(-30%) rotate(-135deg); }
.ar-faq-a { padding: 4px 20px 18px; font-size: 16px; line-height: 1.7; }
.ar-faq-a > * { margin: 0 0 0.8em; }
.ar-faq-a > :last-child { margin: 0; }

.ar-note { margin: 2.5em 0 0; padding: 16px 20px; border-radius: 14px; background: #f8f7fb; font-family: 'Archivo', sans-serif; font-size: 13.5px; line-height: 1.6; color: #6b6680; }
.ar-foot { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 16px; margin-top: 28px; padding-top: 24px; border-top: 1px solid #f0ebf8; }
.ar-tag { padding: 6px 14px; border-radius: 999px; background: var(--sv-ghost); font-family: 'Montserrat', sans-serif; font-size: 13px; font-weight: 600; color: var(--sv-purple); text-decoration: none; }
.ar-share { display: flex; align-items: center; gap: 8px; font-family: 'Montserrat', sans-serif; font-size: 13px; font-weight: 600; color: #8a849c; }
.ar-share a, .ar-share button { position: relative; width: 38px; height: 38px; display: grid; place-items: center; border-radius: 50%; border: 1px solid #ece6fb; background: #fff; color: var(--sv-purple); cursor: pointer; transition: background 0.2s, color 0.2s; }
.ar-share a:hover, .ar-share button:hover { background: var(--sv-purple); color: #fff; }
.ar-share svg { width: 16px; height: 16px; fill: currentColor; }
.ar-share button svg { fill: none; stroke: currentColor; stroke-width: 2; stroke-linecap: round; }
.ar-copied { position: absolute; bottom: calc(100% + 6px); left: 50%; transform: translateX(-50%); padding: 3px 8px; border-radius: 6px; background: #1d1530; color: #fff; font-size: 11px; white-space: nowrap; }
.ar-nav { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 16px; margin-top: 32px; }
.ar-nav a { display: flex; flex-direction: column; gap: 6px; padding: 18px 20px; border-radius: 18px; border: 1px solid #ece6fb; text-decoration: none; transition: border-color 0.2s, background 0.2s; }
.ar-nav a:hover { border-color: #d9c8ee; background: #fcfaff; }
.ar-nav small { font-family: 'Montserrat', sans-serif; font-size: 12px; font-weight: 700; color: var(--sv-violet); }
.ar-nav span { font-family: 'K2D', sans-serif; font-size: 17px; font-weight: 700; line-height: 1.3; color: #1d1530; }
.ar-nav-r { grid-column: 2; text-align: right; }

.ar-related { margin-top: 40px; padding: 56px 0; background: linear-gradient(180deg, #fbf9ff, #fff); }
.ar-related-in { max-width: 1250px; margin: 0 auto; padding: 0 30px; }
.ar-related-head { display: flex; flex-wrap: wrap; align-items: baseline; justify-content: space-between; gap: 10px; margin-bottom: 24px; }
.ar-related-head h2 { margin: 0; font-family: 'K2D', sans-serif; font-size: 32px; font-weight: 700; color: #1d1530; }
.ar-related-head a { font-family: 'Montserrat', sans-serif; font-size: 14px; font-weight: 700; color: var(--sv-purple); text-decoration: none; }

/* ---------- Responsive ---------- */
@media (max-width: 1100px) {
  .bl-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .ar-grid { grid-template-columns: minmax(0, 720px); gap: 0; }
  .ar-side { display: none; }
}
@media (max-width: 900px) {
  .bl-bar-in { flex-direction: column; align-items: stretch; gap: 10px; padding: 0 16px; }
  .bl-filters { gap: 8px; }
  .bl-select { flex: 1; }
  .bl-select select { width: 100%; }
  .bl-feat { grid-template-columns: 1fr; }
  .bl-feat-img { min-height: 0; aspect-ratio: 16 / 9; }
  .bl-feat-txt { padding: 24px 22px 26px; }
  .bl-feat-txt h2 { font-size: 25px; }
}
@media (max-width: 767px) {
  .bl-hero { padding: 40px 18px 36px; }
  .bl-h1 { font-size: 34px; }
  .bl-intro { font-size: 15.5px; }
  .bl-search { padding-left: 42px; }
  .bl-search svg { left: 16px; }
  .bl-search button { padding: 0 16px; }
  .bl-bar { top: 110px; }
  .bl-body { padding: 24px 16px 30px; }
  .bl-grid { grid-template-columns: 1fr; gap: 18px; }
  .bl-pages { gap: 6px; }
  .bl-pg { padding: 8px 10px; }
  .ar-head { padding: 28px 18px 22px; }
  .ar-h1 { font-size: 31px; }
  .ar-lead { font-size: 16.5px; }
  .ar-meta > span + span::before { margin-right: 10px; }
  .ar-meta { gap: 6px 10px; }
  .ar-hero { padding: 0 12px; }
  .ar-hero img { aspect-ratio: 16 / 10; border-radius: 20px; }
  .ar-hero figcaption { right: 24px; }
  .ar-grid { padding: 30px 18px 10px; }
  .ar-body { font-size: 17px; line-height: 1.75; }
  .ar-body > p:first-child { font-size: 18px; }
  .ar-body h2 { font-size: 25px; }
  .ar-body h3 { font-size: 19px; }
  .ar-body blockquote { padding: 18px 18px; }
  .ar-nav { grid-template-columns: 1fr; }
  .ar-nav-r { grid-column: auto; }
  .ar-related-in { padding: 0 16px; }
  .ar-related-head h2 { font-size: 26px; }
}
@media (prefers-reduced-motion: reduce) {
  .bl-card, .bl-feat, .bl-card-img img, .bl-feat-img img, .bl-body { transition: none; }
}

/* Dashboard pages (legal, disclaimer) reuse the article layout; a single centred column when there is no contents list. */
.ar--page .ar-head { padding-bottom: 10px; }
.ar-grid--solo { grid-template-columns: minmax(0, 720px); }
.ar--page .ar-body > p:first-child { font-size: 18px; }
.ar-toc--letters ol { display: grid; grid-template-columns: repeat(5, 1fr); gap: 4px; border: 0; }
.ar-toc--letters a { margin: 0; padding: 6px 0; border: 1px solid #ece6fb; border-left-width: 1px; border-radius: 8px; text-align: center; font-weight: 600; }
.ar-toc--letters a[aria-current='true'] { border-color: var(--sv-violet); background: var(--sv-ghost); }
.ar-reg { font-family: 'Archivo', sans-serif; font-size: 14px; color: #6b6680; }

/* Forms under dashboard pages: booking widget or a topic enquiry form (live/enquiry-form). */
.ar-jump { margin-top: 6px; }
.ar-book { padding: 56px 10px 50px; background: var(--sv-ghost); display: flex; flex-direction: column; align-items: center; gap: 24px; scroll-margin-top: 120px; }
.ar-book h2 { margin: 0; font-family: 'K2D', sans-serif; font-size: 36px; color: #1d1530; text-align: center; }
.ar-book > .ivf-home { max-width: 1225px; }
.ar-form { padding: 56px 20px; background: linear-gradient(160deg, #f6f3ff, #fbf8ff); }
.eq { max-width: 860px; margin: 0 auto; scroll-margin-top: 130px; }
.eq-head { margin-bottom: 24px; text-align: center; }
.eq-head h2 { margin: 0 0 8px; font-family: 'K2D', sans-serif; font-size: 34px; color: #1d1530; }
.eq-head p { margin: 0; font-family: 'Archivo', sans-serif; font-size: 15.5px; line-height: 1.6; color: var(--sv-slate); }
.eq-form { display: flex; flex-direction: column; gap: 16px; padding: 30px; border-radius: 26px; background: #fff; border: 1px solid #ece6fb; box-shadow: 0 30px 60px -44px rgba(86, 48, 132, 0.55); }
.eq-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 16px; }
.eq-form label { display: flex; flex-direction: column; gap: 6px; font-family: 'Montserrat', sans-serif; font-size: 13px; font-weight: 600; color: #1d1530; }
.eq-form label i { font-style: normal; color: #d0244d; }
.eq-form input:not([type='checkbox']), .eq-form select, .eq-form textarea { padding: 12px 14px; border: 1px solid #d9d2ea; border-radius: 12px; background: #fff; font-family: 'Archivo', sans-serif; font-size: 15px; color: #1d1530; }
.eq-form textarea { resize: vertical; }
.eq-form :focus-visible { outline: 2px solid var(--sv-violet); outline-offset: 1px; }
.eq-form .eq-consent { flex-direction: row; align-items: flex-start; gap: 10px; font-family: 'Archivo', sans-serif; font-weight: 400; color: var(--sv-slate); }
.eq-consent input { margin-top: 3px; }
.eq-consent a { color: var(--sv-purple); }
.eq-form .sv-btn { align-self: flex-start; border: 0; cursor: pointer; }
.eq-hp { position: absolute; left: -9999px; }
.eq-err { padding: 12px 16px; border-radius: 12px; background: #fef2f2; border: 1px solid #fca5a5; font-family: 'Archivo', sans-serif; font-size: 14px; color: #991b1b; }
.eq-err ul { margin: 6px 0 0; padding-left: 1.1em; }
.eq-ok { padding: 22px; border-radius: 20px; background: #f0fdf4; border: 1px solid #86efac; font-family: 'Archivo', sans-serif; font-size: 16px; color: #14532d; text-align: center; }
@media (max-width: 767px) {
  .eq-grid { grid-template-columns: 1fr; }
  .eq-form { padding: 20px; }
  .eq-head h2, .ar-book h2 { font-size: 26px; }
}
