/* DRP Templates – procedure, hub, surgeon, consultation and home pages.
   Colours are the GeneratePress Global Colors (var(--slug)); fallbacks match playbook §3a (warm set). */

/* ---------- GeneratePress resets on template pages ---------- */
body.drp-has-page { background: var(--ground, #F6F2EE); }
body.drp-has-page .site-content,
body.drp-has-page .content-area,
body.drp-has-page .site-main,
body.drp-has-page .inside-article,
body.drp-has-page article,
body.drp-has-page .entry-content { margin: 0 !important; padding: 0 !important; max-width: none !important; width: 100% !important; float: none; background: transparent; }
body.drp-has-page .site.grid-container,
body.drp-has-page .site-content.grid-container,
body.drp-has-page .container.grid-container { max-width: none !important; padding: 0 !important; }
body.drp-has-page .entry-header { display: none; }

/* ---------- page base ---------- */
/* Classic themes (GeneratePress) wrap each group's content in .wp-block-group__inner-container;
   it is made transparent so the grids below lay out the real children. */
.drp-page .wp-block-group__inner-container { display: contents; }
:where(.drp-page) .is-layout-flow > *, :where(.drp-page) .is-layout-constrained > * { margin-block-start: 0; margin-block-end: 0; }
.drp-page { --drp-gutter: 32px; --drp-max: 1240px; color: var(--text, #2B2724); font-family: "Commissioner", system-ui, sans-serif; font-weight: 300; font-size: 17px; line-height: 1.6; }
.drp-page :where(p, ul, ol, figure, h1, h2, h3) { margin-top: 0; }
:is(.drp-page, .drp-page > .wp-block-group__inner-container) > * { box-sizing: border-box; max-width: var(--drp-max); margin-left: auto !important; margin-right: auto !important; padding-left: var(--drp-gutter); padding-right: var(--drp-gutter); }
:is(.drp-page, .drp-page > .wp-block-group__inner-container) > .drp-full { max-width: none; padding-left: 0; padding-right: 0; }
.drp-page a { color: var(--navy, #2F4570); text-decoration: none; }
.drp-page a:hover { color: var(--navy-deep, #111A2B); }
.drp-page a:focus-visible, .drp-page button:focus-visible { outline: 2px solid var(--navy, #2F4570); outline-offset: 3px; border-radius: 2px; }
.drp-page strong { font-weight: 500; }
.drp-page h1, .drp-page h2 { font-family: "Noto Serif Display", Georgia, serif; font-weight: 400; letter-spacing: -0.005em; color: var(--heading, #2A2420); text-wrap: balance; }
.drp-page h3 { font-family: "Commissioner", system-ui, sans-serif; font-weight: 500; font-size: 19px; line-height: 1.35; color: var(--heading, #2A2420); margin: 28px 0 8px; }
.drp-label { font-size: 12px !important; font-weight: 500; letter-spacing: 0.14em; text-transform: uppercase; color: var(--label, #7A5E4E); line-height: 1.3; margin: 0 0 10px !important; }
.drp-page mark.drp-fill { background: var(--panel, #EEE8E1); color: var(--label, #7A5E4E); outline: 1px dashed var(--label, #7A5E4E); padding: 0 4px; border-radius: 3px; }

/* buttons */
.drp-page .wp-block-buttons { display: flex; flex-wrap: wrap; gap: 12px; margin: 0; }
.drp-page .wp-block-button { margin: 0; }
.drp-page .wp-block-button__link, .drp-plan-btn { display: inline-flex; align-items: center; justify-content: center; box-sizing: border-box; min-height: 44px; padding: 12px 22px; border-radius: 8px; font-family: inherit; font-size: 13px; font-weight: 500; letter-spacing: 0.06em; line-height: 1; text-transform: uppercase; text-decoration: none; cursor: pointer; transition: background-color 0.15s ease, color 0.15s ease; }
.drp-btn-primary .wp-block-button__link { background: var(--navy, #2F4570); color: var(--white, #FFFFFF) !important; border: 0; }
.drp-btn-primary .wp-block-button__link:hover { background: var(--navy-deep, #111A2B); }
.drp-btn-light .wp-block-button__link { background: var(--white, #FFFFFF); color: var(--navy-deep, #111A2B) !important; border: 0; }
.drp-btn-light .wp-block-button__link:hover { background: var(--surface, #FBF8F4); }
.drp-btn-ghost .wp-block-button__link { background: transparent; color: var(--white, #FFFFFF) !important; border: 1px solid var(--topbar-text, #B0B8C8); }
.drp-btn-ghost .wp-block-button__link:hover { border-color: var(--white, #FFFFFF); }
.drp-plan-btn { background: transparent; color: var(--navy, #2F4570); border: 1px solid var(--navy, #2F4570); }
.drp-plan-btn:hover { background: var(--navy, #2F4570); color: var(--white, #FFFFFF); }

/* ---------- hero ---------- */
.drp-hero { background: var(--navy-deep, #111A2B); color: var(--white, #FFFFFF); }
.drp-hero-grid { box-sizing: border-box; max-width: var(--drp-max); margin: 0 auto; padding: 64px var(--drp-gutter) 72px; display: grid; grid-template-columns: minmax(0, 1.12fr) minmax(0, 0.88fr); gap: 64px; align-items: center; }
.drp-hero-grid.is-text { grid-template-columns: minmax(0, 860px); }
.drp-hero-text { min-width: 0; }
.drp-hero .drp-label { color: var(--topbar-text, #B0B8C8); }
.drp-page .drp-hero h1 { color: var(--white, #FFFFFF); font-size: 88px; line-height: 0.98; margin: 0 0 24px; }
.drp-lead { font-size: 19px; line-height: 1.6; max-width: 600px; margin: 0 0 14px !important; color: var(--white, #FFFFFF); }
.drp-positioning { font-size: 16px; line-height: 1.6; max-width: 600px; margin: 0 0 28px !important; color: var(--topbar-text, #B0B8C8); }
:is(.drp-hero-text, .drp-hero-text > .wp-block-group__inner-container) > .wp-block-buttons { display: inline-flex; margin-right: 12px; vertical-align: top; }
.drp-hero .drp-btn-primary .wp-block-button__link { background: var(--white, #FFFFFF); color: var(--navy-deep, #111A2B) !important; }
.drp-hero .drp-btn-primary .wp-block-button__link:hover { background: var(--surface, #FBF8F4); }
.drp-hero .drp-plan-btn { color: var(--white, #FFFFFF); border-color: var(--topbar-text, #B0B8C8); vertical-align: top; }
.drp-hero .drp-plan-btn:hover { background: rgba(255, 255, 255, 0.08); border-color: var(--white, #FFFFFF); }
.drp-proof { display: flex; align-items: baseline; gap: 14px; margin-top: 36px; }
.drp-proof-n { font-family: "Noto Serif Display", Georgia, serif; font-size: 52px; line-height: 1; margin: 0 !important; }
.drp-proof-t { font-size: 15px; margin: 0 !important; color: var(--topbar-text, #B0B8C8); }
.drp-portrait { margin: 0; min-width: 0; }
.drp-portrait img { display: block; width: 100%; height: auto; aspect-ratio: 4 / 5; object-fit: cover; object-position: center top; border-radius: 12px; }
.drp-portrait.is-3x2 img { aspect-ratio: 3 / 2; }

/* ---------- at a glance + teaser ---------- */
.drp-glance { display: grid; grid-template-columns: minmax(0, 1fr) 300px; gap: 16px; margin-top: 32px !important; align-items: stretch; }
.drp-glance:not(:has(.drp-slot, .drp-teaser, .drp-gallery)) { grid-template-columns: minmax(0, 1fr); }
.drp-glance-panel { background: var(--panel, #EEE8E1); border-radius: 12px; padding: 26px 28px; }
.drp-facts { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 0 32px; }
.drp-glance:not(:has(.drp-slot, .drp-teaser, .drp-gallery)) .drp-facts { grid-template-columns: repeat(4, minmax(0, 1fr)); }
.drp-fact { padding: 12px 0; border-top: 1px solid var(--line-soft, #E9E1D8); }
.drp-fact-k { font-size: 12px !important; font-weight: 500; letter-spacing: 0.1em; text-transform: uppercase; color: var(--label, #7A5E4E); margin: 0 0 4px !important; line-height: 1.3; }
.drp-fact-v { font-size: 15px; line-height: 1.45; margin: 0 !important; color: var(--text, #2B2724); }
.drp-review { font-size: 13px; line-height: 1.5; color: var(--muted, #6E655D); margin: 14px auto 0 !important; }
.drp-review a { color: var(--text-2, #554D46); text-decoration: underline; text-underline-offset: 2px; }

/* gallery placeholder (until the gallery plugin, Phase 4) */
.drp-slot { display: flex; flex-direction: column; justify-content: center; gap: 6px; min-height: 200px; padding: 22px; box-sizing: border-box; border-radius: 12px; border: 1px dashed var(--line, #D8CCBF); background: linear-gradient(160deg, rgba(251, 248, 244, 0.9), rgba(47, 69, 112, 0.10)), var(--panel, #EEE8E1); color: var(--text-2, #554D46); font-size: 14px; }
.drp-slot-tag { font-size: 12px; font-weight: 500; letter-spacing: 0.12em; color: var(--label, #7A5E4E); }
.drp-slot-name { font-size: 16px; color: var(--heading, #2A2420); }
.drp-slot-key { font-size: 13px; color: var(--muted, #6E655D); }
.drp-slot.is-strip { min-height: 320px; margin: 8px 0 12px; }

/* on this page */
.drp-toc { display: flex; flex-wrap: wrap; align-items: center; gap: 10px 14px; margin-top: 28px !important; }
.drp-toc .drp-label { margin: 0 !important; color: var(--muted, #6E655D); }
.drp-chips { display: flex; flex-wrap: wrap; gap: 8px; margin: 0 !important; }
.drp-chips a { display: inline-flex; align-items: center; min-height: 36px; padding: 6px 14px; border-radius: 8px; background: var(--surface, #FBF8F4); border: 1px solid var(--line-soft, #E9E1D8); color: var(--ink, #17191C); font-size: 14px; }
.drp-chips a:hover { border-color: var(--navy, #2F4570); color: var(--navy, #2F4570); }

/* ---------- sections ---------- */
.drp-sec { display: grid; grid-template-columns: 300px minmax(0, 1fr); gap: 48px; padding-top: 88px; }
.drp-page :is(.drp-sec, .drp-sec > .wp-block-group__inner-container) > h2 { font-size: 52px; line-height: 1.02; margin: 0; scroll-margin-top: 96px; }
.drp-body { min-width: 0; max-width: 720px; }
:is(.drp-body, .drp-body > .wp-block-group__inner-container) > * { margin-bottom: 20px; }
:is(.drp-body, .drp-body > .wp-block-group__inner-container) > *:last-child { margin-bottom: 0; }
:is(.drp-body, .drp-body > .wp-block-group__inner-container) > h3:first-child { margin-top: 0; }
.drp-body ul:not(.drp-refs):not(.drp-numbered) { padding-left: 20px; }
.drp-body li { margin-bottom: 6px; }
.drp-note { font-size: 14px; color: var(--muted, #6E655D); }
.drp-more { font-size: 15px; }

/* tables */
.drp-table { margin: 4px 0 24px; overflow-x: auto; border-radius: 12px; background: var(--white, #FFFFFF); border: 1px solid var(--line-soft, #E9E1D8); }
.drp-table table { width: 100%; border-collapse: collapse; font-size: 15px; line-height: 1.5; }
.drp-table th { text-align: left; font-weight: 500; font-size: 12px; letter-spacing: 0.1em; text-transform: uppercase; color: var(--navy, #2F4570); padding: 14px 16px; border-bottom: 1px solid var(--line, #D8CCBF); background: var(--white, #FFFFFF); vertical-align: bottom; }
.drp-table td { padding: 13px 16px; border-bottom: 1px solid var(--line-soft, #E9E1D8); vertical-align: top; }
.drp-table td:first-child { font-weight: 500; color: var(--heading, #2A2420); }
.drp-table tr:last-child td { border-bottom: 0; }
.drp-table.is-highlight-last tr:last-child td { background: var(--surface, #FBF8F4); color: var(--navy-deep, #111A2B); }
.drp-table th, .drp-table td { border-left: 0; border-right: 0; border-top: 0; }

/* callouts */
.drp-callout { background: var(--white, #FFFFFF); border-radius: 12px; border-top: 2px solid var(--navy, #2F4570); padding: 22px 24px; }
.drp-callout .drp-label { color: var(--navy, #2F4570); }
.drp-callout p:last-child { margin-bottom: 0; }
.drp-callout.is-accent { border-top-color: var(--label, #7A5E4E); background: var(--panel, #EEE8E1); }
.drp-callout.is-accent .drp-label { color: var(--label, #7A5E4E); }
.drp-callout.is-navy { background: var(--navy-deep, #111A2B); border-top: 0; color: var(--white, #FFFFFF); }
.drp-callout.is-navy .drp-label { color: var(--topbar-text, #B0B8C8); }
.drp-proofbox { display: grid; grid-template-columns: auto minmax(0, 1fr); gap: 4px 28px; align-items: center; background: var(--navy-deep, #111A2B); color: var(--white, #FFFFFF); border-radius: 12px; padding: 26px 28px; }
.drp-proofbox .drp-proof-n { font-size: 64px; grid-row: 1; }
.drp-proofbox .drp-proof-t { grid-row: 2; grid-column: 1; }
:is(.drp-proofbox, .drp-proofbox > .wp-block-group__inner-container) > p:last-child { grid-row: 1 / span 2; grid-column: 2; margin: 0 !important; color: var(--white, #FFFFFF); font-size: 16px; }
.drp-two { display: grid; grid-template-columns: 1fr 1fr; gap: 16px; }
.drp-card { background: var(--white, #FFFFFF); border-radius: 12px; padding: 22px 24px; min-width: 0; }
:is(.drp-card, .drp-card > .wp-block-group__inner-container) > h3 { margin: 0 0 6px; font-size: 17px; color: var(--navy, #2F4570); }
:is(.drp-card.is-muted, .drp-card.is-muted > .wp-block-group__inner-container) > h3 { color: var(--text-2, #554D46); }
.drp-card ul { list-style: none; padding: 0 !important; margin: 0; font-size: 16px; }
.drp-card li { padding: 10px 0; margin: 0; border-bottom: 1px solid var(--line-soft, #E9E1D8); }
.drp-card li:last-child { border-bottom: 0; }
.drp-numbered { list-style: none; padding: 0; margin: 0; counter-reset: drpn; }
.drp-numbered li { counter-increment: drpn; display: grid; grid-template-columns: 34px minmax(0, 1fr); gap: 12px; padding: 12px 0; margin: 0; border-bottom: 1px solid var(--line, #D8CCBF); }
.drp-numbered li::before { content: counter(drpn); font-family: "Noto Serif Display", Georgia, serif; font-size: 26px; line-height: 1; color: var(--navy, #2F4570); }

/* cost */
.drp-costcard { display: flex; flex-direction: column; gap: 6px; align-items: flex-start; }
.drp-level { font-family: "Noto Serif Display", Georgia, serif; font-size: 40px; line-height: 1; margin: 0 !important; color: var(--heading, #2A2420); }
.drp-dots { font-family: "Commissioner", system-ui, sans-serif; font-size: 18px; letter-spacing: 4px; color: var(--label, #7A5E4E); vertical-align: middle; }
.drp-level-note { font-size: 15px; color: var(--text-2, #554D46); margin: 0 0 8px !important; }

/* FAQ (H3 questions; page.js turns them into toggles) */
.drp-faq { display: flex; flex-direction: column; gap: 10px; }
:is(.drp-faq, .drp-faq > .wp-block-group__inner-container) > h3 { margin: 0; font-size: 17px; }
:is(.drp-faq.is-enhanced, .drp-faq.is-enhanced > .wp-block-group__inner-container) > h3 { background: var(--white, #FFFFFF); border-radius: 12px; }
.drp-faq-q { display: flex; justify-content: space-between; align-items: center; gap: 16px; width: 100%; min-height: 56px; padding: 16px 22px; border: 0; background: none; font: inherit; font-weight: 500; font-size: 17px; line-height: 1.4; color: var(--heading, #2A2420); text-align: left; text-transform: none; letter-spacing: normal; cursor: pointer; border-radius: 12px; }
.drp-faq-q:hover { background: none; color: var(--navy, #2F4570); }
.drp-faq-q::after { content: "+"; font-weight: 300; font-size: 22px; color: var(--navy, #2F4570); flex: 0 0 auto; }
.drp-faq-q[aria-expanded="true"]::after { content: "–"; }
:is(.drp-faq.is-enhanced, .drp-faq.is-enhanced > .wp-block-group__inner-container) > h3:has(+ .drp-faq-a:not([hidden])) { border-radius: 12px 12px 0 0; }
.drp-faq-a { background: var(--white, #FFFFFF); border-radius: 0 0 12px 12px; margin-top: -10px; padding: 0 22px 18px; font-size: 16px; }
.drp-faq-a p { margin: 0 0 10px; }
.drp-faq-a p:last-child { margin: 0; }
.drp-related { margin-top: 36px !important; }

/* references */
:is(.drp-sec.is-refs, .drp-sec.is-refs > .wp-block-group__inner-container) > h2 { font-size: 28px; }
.drp-refs { margin: 0; padding-left: 20px; font-size: 13px; line-height: 1.55; color: var(--text-2, #554D46); }
.drp-refs li { margin-bottom: 6px; }

/* cards grid (hub, home) */
.drp-cards { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 16px; }
.drp-linkcard { display: flex; flex-direction: column; gap: 8px; }
.drp-linkcard .drp-slot { min-height: 140px; margin-bottom: 6px; }
.drp-card-title { font-family: "Noto Serif Display", Georgia, serif; font-size: 28px; line-height: 1.1; margin: 0 !important; }
.drp-card-line { font-size: 15px; color: var(--text-2, #554D46); margin: 0 !important; }
.drp-formslot { padding: 28px; border: 1px dashed var(--line, #D8CCBF); border-radius: 12px; background: var(--surface, #FBF8F4); color: var(--muted, #6E655D); font-size: 15px; }

/* consultation band */
.drp-band { background: var(--navy-deep, #111A2B); color: var(--white, #FFFFFF); margin-top: 96px !important; }
.drp-band-grid { box-sizing: border-box; max-width: var(--drp-max); margin: 0 auto; padding: 64px var(--drp-gutter); display: flex; flex-wrap: wrap; justify-content: space-between; align-items: center; gap: 28px; }
.drp-page .drp-band-h { font-size: 56px; line-height: 1; margin: 0 0 12px; color: var(--white, #FFFFFF); }
.drp-band-text p { margin: 0; color: var(--topbar-text, #B0B8C8); max-width: 560px; }

/* ---------- ≤900px ---------- */
@media (max-width: 900px) {
	.drp-page { --drp-gutter: 16px; font-size: 16px; }
	.drp-hero-grid { grid-template-columns: minmax(0, 1fr); gap: 32px; padding-top: 40px; padding-bottom: 48px; }
	.drp-portrait { max-width: 420px; }
	.drp-page .drp-hero h1 { font-size: 54px; line-height: 1; }
	.drp-lead { font-size: 17px; }
	.drp-glance { grid-template-columns: minmax(0, 1fr); }
	.drp-glance:not(:has(.drp-slot, .drp-teaser, .drp-gallery)) .drp-facts, .drp-facts { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 0 20px; }
	.drp-sec { grid-template-columns: minmax(0, 1fr); gap: 20px; padding-top: 56px; }
	.drp-page :is(.drp-sec, .drp-sec > .wp-block-group__inner-container) > h2 { font-size: 38px; scroll-margin-top: 80px; }
	.drp-two, .drp-cards { grid-template-columns: minmax(0, 1fr); }
	.drp-proofbox { grid-template-columns: minmax(0, 1fr); }
	:is(.drp-proofbox, .drp-proofbox > .wp-block-group__inner-container) > p:last-child { grid-row: auto; grid-column: auto; margin-top: 12px !important; }
	.drp-page .drp-band-h { font-size: 42px; }
	.drp-band { margin-top: 64px !important; }
	.drp-table table { min-width: 560px; }
}
@media (max-width: 480px) {
	.drp-facts, .drp-glance:not(:has(.drp-slot, .drp-teaser, .drp-gallery)) .drp-facts { grid-template-columns: minmax(0, 1fr); }
	:is(.drp-hero-text, .drp-hero-text > .wp-block-group__inner-container) > .wp-block-buttons, .drp-hero .drp-plan-btn { display: flex; width: 100%; margin: 0 0 10px; }
	.drp-hero .wp-block-button, .drp-hero .wp-block-button__link { width: 100%; }
}

/* ---------- block editor ---------- */
.editor-styles-wrapper :is(.drp-page, .drp-page > .wp-block-group__inner-container) > * { margin-left: auto; margin-right: auto; }
.editor-styles-wrapper :is(.drp-sec, .drp-sec > .wp-block-group__inner-container) > .wp-block-heading { margin: 0; }

/* no gap between the consultation band and the footer; light table header line */
.entry-content > .drp-page:last-child, .drp-page:last-child { margin-bottom: 0 !important; }
.drp-table thead { border-bottom: 0; }
.drp-table table { border: 0; }
.drp-proof-n { white-space: nowrap; }

/* ===================== 1.1: all pages (Phase 5) ===================== */
/* image slots and form slots: plain palette panels until the real photo / form arrives */
.drp-imgslot { padding: 26px 28px; border-radius: 12px; background: var(--panel, #EEE8E1); color: var(--text-2, #554D46); font-size: 15px; }
.drp-imgslot p { margin: 0 !important; }
.drp-imgslot .drp-label { margin-bottom: 6px !important; }
.drp-formslot .drp-note { margin-top: 8px !important; font-size: 13px; }
/* hero proof list (homepage) */
.drp-hero ul.drp-proofs { list-style: none; padding: 0 !important; margin: 18px 0 22px !important; display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 8px 24px; font-size: 15px; color: var(--topbar-text, #B0B8C8); }
.drp-hero ul.drp-proofs li { margin: 0; padding-left: 16px; position: relative; }
.drp-hero ul.drp-proofs li::before { content: ""; position: absolute; left: 0; top: .6em; width: 6px; height: 6px; border-radius: 2px; background: var(--topbar-text, #B0B8C8); }
/* «At a glance» without a teaser */
.drp-glance.is-solo { grid-template-columns: minmax(0, 1fr) !important; }
/* gallery-only section (hub / article pages without a results H2) */
.drp-sec.is-gallery > .drp-body, .drp-sec.is-gallery > .wp-block-group__inner-container > .drp-body { grid-column: 1 / -1; }
/* extra intro paragraph below the hero */
.drp-intro-more { max-width: 1240px; margin: 0 auto; padding: 32px 32px 0; font-size: 18px; font-weight: 300; }
/* cards: procedure cards on hubs, doors on the homepage */
.drp-cards.is-four { grid-template-columns: repeat(4, minmax(0, 1fr)); }
.drp-cards.is-two { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.drp-linkcard .drp-card-title { font-size: 24px; }
.drp-linkcard .drp-card-title a { color: var(--heading, #2A2420); text-decoration: none; }
.drp-linkcard .drp-card-title a::after { content: " →"; color: var(--navy, #2F4570); }
.drp-linkcard .drp-card-title a:hover { color: var(--navy, #2F4570); }
.drp-linkcard p { font-size: 15px; margin: 0 !important; color: var(--text-2, #554D46); }
.drp-door { border-top: 2px solid var(--navy, #2F4570); }
.drp-more { margin-top: 14px !important; }
.drp-more a { color: var(--navy, #2F4570); text-decoration: none; font-weight: 500; }
/* trust and simple pages */
.drp-home .drp-sec:first-of-type { padding-top: 64px; }
.drp-simple .drp-hero { min-height: 0; }
.drp-plan-btn.is-primary { background: var(--navy, #2F4570); color: #fff; border-color: var(--navy, #2F4570); }
@media (max-width: 1100px) { .drp-cards.is-four { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (max-width: 900px) {
	.drp-cards.is-four, .drp-cards.is-two { grid-template-columns: minmax(0, 1fr); }
	.drp-hero ul.drp-proofs { grid-template-columns: minmax(0, 1fr); }
	.drp-intro-more { padding: 24px 16px 0; }
}
/* links on the dark hero */
.drp-hero a:not(.wp-block-button__link) { color: #fff; text-decoration: underline; text-underline-offset: 3px; }
/* a results strip inside the 720px text column: case facts go below the photo */
.drp-sec:not(.is-gallery) .drp-body .drp-ba-layout { grid-template-columns: minmax(0, 1fr); gap: 18px; }
.drp-sec.is-gallery .drp-body { max-width: none !important; }

/* 1.2.0 – hospitals (homepage) and office maps (consultation page) */
.drp-places { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 24px; margin-top: 8px; }
.drp-place { display: flex; flex-direction: column; min-width: 0; overflow: hidden; background: #FFFFFF; border: 1px solid rgba(15, 15, 16, .08); border-radius: 14px; }
.drp-place-media { margin: 0 !important; aspect-ratio: 16 / 9; max-width: 100%; overflow: hidden; background: #F1EBE3; }
.drp-place-media img { display: block; width: 100%; height: 100%; object-fit: cover; }
.drp-place-text { display: grid; gap: 4px; padding: 22px 24px 24px; }
.drp-place-city { font-size: 12px; font-weight: 500; letter-spacing: .16em; text-transform: uppercase; color: var(--navy, #2F4570); }
.drp-sec .drp-place-name { margin: 0; font-family: "Noto Serif Display", Georgia, serif; font-size: 24px; font-weight: 400; line-height: 1.2; }
.drp-place-area { margin: 0 !important; font-size: 15px; color: var(--text-2, #554D46); }
.drp-place-link { margin-top: 6px; font-size: 15px; text-decoration: none; }
.drp-map { display: grid; gap: 10px; max-width: 640px; margin: 4px 0 8px; }
.drp-map-media { display: block; aspect-ratio: 16 / 9; max-width: 100%; overflow: hidden; border-radius: 14px; border: 1px solid rgba(15, 15, 16, .08); background: #F1EBE3; }
.drp-map-media img { display: block; width: 100%; height: 100%; object-fit: cover; transition: transform .5s ease; }
.drp-map-media:hover img { transform: scale(1.03); }
.drp-map-ph { display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 10px; height: 100%; padding: 16px; text-align: center; font-size: 14px; color: var(--text-2, #554D46);
	background: repeating-linear-gradient(135deg, rgba(15, 15, 16, .035) 0 1px, transparent 1px 9px), linear-gradient(160deg, #F6F1EA, #ECE4D9); }
.drp-map-ph svg { color: var(--navy, #2F4570); }
.drp-map-link { font-size: 16px; text-decoration: none; }
@media (max-width: 760px) { .drp-places { grid-template-columns: minmax(0, 1fr); } }
@media (prefers-reduced-motion: reduce) { .drp-map-media img { transition: none; } }

/* 1.3.0 – images in the text (spec 17 Oct 2026) */
.drp-cand { float: right; width: 168px; aspect-ratio: 4 / 5; margin: 4px 0 14px 18px !important; border-radius: 12px; overflow: hidden; background: #F1EBE3; }
.drp-cand img { display: block; width: 100%; height: 100%; object-fit: cover; }
.drp-body:has(> .drp-cand) .drp-two, .drp-body:has(.drp-cand) .drp-two { clear: both; }
.drp-body::after { content: ""; display: block; clear: both; }
@media (max-width: 600px) { .drp-cand { width: 120px; margin-left: 14px !important; } }
.drp-sketches { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 14px; max-width: 560px; margin: 24px 0 22px !important; clear: both; }
.drp-sketches.is-single { grid-template-columns: minmax(0, 1fr); max-width: 460px; }
.drp-sketch { margin: 0 !important; min-width: 0; }
.drp-sketch-paper { display: flex; align-items: center; justify-content: center; aspect-ratio: 1 / 1.1; overflow: hidden; border-radius: 12px; background: var(--ground, #F6F2EE); }
.drp-sketches.is-single .drp-sketch-paper { aspect-ratio: auto; }
.drp-sketch img { display: block; width: 100%; height: 100%; object-fit: contain; }
.drp-sketches.is-single .drp-sketch img { height: auto; }
.drp-sketch figcaption { margin-top: 8px; font-size: 13.5px; line-height: 1.45; color: var(--text-2, #554D46); }
.drp-sketch figcaption b { font-weight: 500; color: var(--ink, #17191C); }
.drp-office { margin: 24px 0 8px !important; max-width: 720px; }
.drp-office-frame { display: block; aspect-ratio: 3 / 2; overflow: hidden; border-radius: 14px; background: #F1EBE3; }
.drp-office img { display: block; width: 100%; height: 100%; object-fit: cover; }
.drp-office picture { display: contents; }
.drp-office figcaption { margin-top: 8px; font-size: 13.5px; color: var(--text-2, #554D46); }
.drp-office.is-side { float: right; width: 240px; margin: 4px 0 14px 22px !important; }
.drp-office.is-side .drp-office-frame { aspect-ratio: 2 / 3; }
@media (max-width: 600px) { .drp-office.is-side { width: 150px; margin-left: 14px !important; } }
.drp-map.has-photo { grid-template-columns: repeat(2, minmax(0, 1fr)); max-width: 720px; }
.drp-map.has-photo .drp-map-link { grid-column: 1 / -1; }
.drp-map-photo { display: block; aspect-ratio: 16 / 9; overflow: hidden; border-radius: 14px; background: #F1EBE3; }
.drp-map-photo picture { display: contents; }
.drp-map-photo img { display: block; width: 100%; height: 100%; object-fit: cover; }
@media (max-width: 600px) { .drp-map.has-photo { grid-template-columns: minmax(0, 1fr); } .drp-map-photo { aspect-ratio: 4 / 5; } }
.drp-band.is-photo { position: relative; isolation: isolate; overflow: hidden; background: var(--navy-deep, #111A2B); }
.drp-band.is-photo .drp-band-photo, .drp-band.is-photo .drp-band-photo img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; z-index: -2; }
.drp-band.is-photo::before { content: ""; position: absolute; inset: 0; z-index: -1; background: linear-gradient(180deg, rgba(15, 15, 16, .05) 20%, rgba(15, 15, 16, .82)); }
.drp-band.is-photo .drp-band-grid { min-height: clamp(360px, 40vw, 560px); align-items: flex-end; }
.drp-band.is-photo .drp-band-text p { color: var(--on-dark, #E2DED8); }
@media (max-width: 700px) { .drp-band.is-photo .drp-band-grid { min-height: 560px; } }

.drp-map-load { margin-top: 4px; min-height: 40px; padding: 0 16px; border-radius: 8px; border: 1px solid var(--navy, #36383C); background: #FFFFFF; color: var(--navy, #36383C); font: inherit; font-size: 14px; cursor: pointer; }
.drp-map-load:hover { background: var(--navy, #36383C); color: #FFFFFF; }
/* legal pages: calmer headings */
.drp-legal .drp-sec h2 { font-size: 30px; line-height: 1.15; }
.drp-legal .drp-updated { font-size: 14px; color: var(--topbar-text, #B5B1AB); }
@media (max-width: 900px) { .drp-legal .drp-sec h2 { font-size: 26px; } }
/* buttons always in the text font (the theme's button typography can be the serif) */
.drp-page .wp-block-button__link, .drp-page .drp-plan-btn, .drp-page .drp-btn { font-family: "Commissioner", system-ui, -apple-system, "Segoe UI", Roboto, sans-serif !important; }

/* Homepage «Χωρίς ψηφιακή επεξεργασία» / "No digital editing" (17 Oct 2026) */
.drp-noedit { display: flex; gap: 14px; align-items: flex-start; max-width: 760px; margin: 6px 0 30px; padding: 16px 18px; border-radius: 12px; background: var(--surface, #FBF8F4); border: 1px solid rgba(15, 15, 16, .06); }
.drp-noedit svg { flex: 0 0 22px; margin-top: 3px; color: var(--navy, #36383C); }
.drp-noedit p { margin: 0 !important; }
.drp-noedit strong { display: block; margin-bottom: 4px; font: 500 12px/1.4 "Commissioner", system-ui, sans-serif; letter-spacing: .14em; text-transform: uppercase; color: var(--navy, #36383C); }
.drp-noedit span { display: block; color: var(--ink, #17191C); font-size: 16px; line-height: 1.6; }
.drp-home .drp-cards.is-four .drp-ba--card { max-width: none; }
/* outline button: beats the theme's filled button style (sandbox showed navy text on a navy fill) */
.drp-page .wp-block-button.drp-btn-secondary .wp-block-button__link, .drp-page .wp-block-button.drp-btn-secondary .wp-element-button { background: transparent !important; background-color: transparent !important; color: var(--navy, #31456A) !important; border: 1px solid var(--navy, #31456A) !important; box-shadow: none !important; }
.drp-page .wp-block-button.drp-btn-secondary .wp-block-button__link:hover, .drp-page .wp-block-button.drp-btn-secondary .wp-block-button__link:focus-visible { background: var(--navy, #31456A) !important; background-color: var(--navy, #31456A) !important; color: var(--white, #FFFFFF) !important; }
.drp-hero .wp-block-button.drp-btn-secondary .wp-block-button__link { color: var(--white, #FFFFFF) !important; border-color: rgba(255, 255, 255, .6) !important; }
.drp-hero .wp-block-button.drp-btn-secondary .wp-block-button__link:hover { background: var(--white, #FFFFFF) !important; color: var(--navy-deep, #11182A) !important; }

/* «Σε αυτή τη σελίδα» that follows the reader (17 Oct 2026) – strip on phones/tablets, side column on desktops */
.drp-strip, .drp-rail { position: fixed; box-sizing: border-box; font-family: "Commissioner", system-ui, -apple-system, "Segoe UI", sans-serif; }
.drp-strip *, .drp-rail * { box-sizing: border-box; }
.drp-strip { z-index: 98; left: 0; right: 0; top: 64px; background: rgba(246, 242, 238, 0.84); -webkit-backdrop-filter: blur(16px) saturate(150%); backdrop-filter: blur(16px) saturate(150%); border-bottom: 1px solid rgba(15, 15, 16, 0.06); transform: translateY(-110%); opacity: 0; visibility: hidden; transition: transform .25s ease, opacity .25s ease, visibility 0s linear .25s; }
.drp-strip.is-on { transform: none; opacity: 1; visibility: visible; transition: transform .25s ease, opacity .25s ease; }
.drp-strip-in { display: flex; gap: 8px; overflow-x: auto; padding: 9px 16px; scrollbar-width: none; -webkit-mask-image: linear-gradient(90deg, transparent 0, #000 16px, #000 calc(100% - 36px), transparent); mask-image: linear-gradient(90deg, transparent 0, #000 16px, #000 calc(100% - 36px), transparent); }
.drp-strip-in::-webkit-scrollbar { display: none; }
.drp-strip a { flex: 0 0 auto; display: inline-flex; align-items: center; min-height: 34px; padding: 5px 13px; border-radius: 8px; background: rgba(251, 248, 244, 0.6); border: 1px solid var(--line-soft, #E9E1D8); color: var(--ink, #17191C); font-size: 13.5px; line-height: 1.2; text-decoration: none; white-space: nowrap; transition: background .2s, color .2s, border-color .2s; }
.drp-strip a.is-cur, .drp-rail a.is-cur { background: var(--navy, #36383C); border-color: var(--navy, #36383C); color: var(--white, #FFFFFF); }
.drp-rail { z-index: 97; left: max(16px, calc((100vw - 1240px) / 2 + 16px)); top: 120px; width: 210px; max-height: calc(100vh - 160px); overflow-y: auto; padding: 10px; border-radius: 14px; background: rgba(251, 248, 244, 0.55); -webkit-backdrop-filter: blur(14px) saturate(140%); backdrop-filter: blur(14px) saturate(140%); border: 1px solid rgba(15, 15, 16, 0.06); opacity: 0; visibility: hidden; transform: translateX(-12px); transition: opacity .35s ease, transform .35s ease, visibility 0s linear .35s; }
.drp-rail.is-on { opacity: 1; visibility: visible; transform: none; transition: opacity .35s ease, transform .35s ease; }
.drp-rail.is-on.is-idle { opacity: .28; }
.drp-rail.is-on.is-idle:hover, .drp-rail.is-on.is-idle:focus-within { opacity: 1; }
.drp-rail .drp-rail-t { margin: 2px 8px 6px; font-size: 11px; font-weight: 500; letter-spacing: .14em; text-transform: uppercase; color: var(--muted, #6E655D); }
.drp-rail a { display: flex; align-items: center; gap: 10px; padding: 7px 10px; border-radius: 8px; border: 1px solid transparent; color: var(--text-2, #554D46); font-size: 14px; line-height: 1.3; text-decoration: none; transition: background .2s, color .2s; }
.drp-rail a i { flex: 0 0 6px; height: 6px; border-radius: 2px; background: currentColor; opacity: .35; }
.drp-rail a.is-cur i { opacity: 1; }
.drp-rail a:not(.is-cur):hover { background: rgba(15, 15, 16, 0.05); color: var(--ink, #17191C); }
.drp-strip a:focus-visible, .drp-rail a:focus-visible { outline: 2px solid var(--navy, #36383C); outline-offset: 2px; }
@media (min-width: 1025px) {
	body.drp-has-rail :is(.drp-sec-railed) { padding-left: calc(var(--drp-gutter) + 250px) !important; grid-template-columns: minmax(0, 1fr); gap: 18px; }
	body.drp-has-rail :is(.drp-sec-railed > .wp-block-group__inner-container) { grid-template-columns: minmax(0, 1fr); gap: 18px; }
	body.drp-has-rail .drp-page :is(.drp-sec-railed, .drp-sec-railed > .wp-block-group__inner-container) > h2 { font-size: 44px; }
	.drp-strip { display: none; }
}
@media (max-width: 1024px) { .drp-rail { display: none; } }
@media (prefers-reduced-motion: reduce) { .drp-strip, .drp-rail, .drp-strip.is-on, .drp-rail.is-on { transition: none; } }

/* FAQ toggles (18 Oct 2026): no navy theme hover/focus fill; the open state no longer "sticks" after a click */
.drp-faq .drp-faq-q,
.drp-faq .drp-faq-q:hover,
.drp-faq .drp-faq-q:focus,
.drp-faq .drp-faq-q:active { background: transparent !important; color: var(--heading, #2A2420) !important; box-shadow: none !important; outline: 0; -webkit-tap-highlight-color: transparent; }
@media (hover: hover) { .drp-faq .drp-faq-q:hover { background: rgba(176, 152, 120, 0.08) !important; } }
.drp-faq .drp-faq-q:focus-visible { outline: 2px solid var(--navy, #2F4570); outline-offset: -2px; }

/* 18 Oct 2026: theatre photo as a full-width dark band on the surgeon page; no captions anywhere */
.drp-theatre-band { margin: 8px 0 0; background: #141B2B; }
.drp-theatre { margin: 0; }
.drp-theatre img { display: block; width: 100%; height: auto; max-height: 72svh; object-fit: cover; object-position: 60% 80%; }
@media (min-width: 701px) { .drp-theatre img { aspect-ratio: 16 / 10; } }
.drp-sketch figcaption, .drp-office figcaption { display: none; }

/* ===== Homepage v2 (18 Oct 2026): same words, lighter design ===== */
.drp-home.is-v2 .drp-hsec { padding: 96px 0 0; }
.drp-home.is-v2 .drp-hsec-in { max-width: var(--drp-max); margin: 0 auto; }
.drp-home.is-v2 .drp-hsec-h { margin: 0 0 32px; max-width: 760px; font-family: "Noto Serif Display", Georgia, serif; font-weight: 400; font-size: clamp(32px, 4vw, 48px); line-height: 1.08; color: var(--heading, #2A2420); }
.drp-home.is-v2 .drp-hsec.is-narrow .drp-hsec-in { max-width: 820px; text-align: center; }
.drp-home.is-v2 .drp-hsec.is-narrow .drp-hsec-h { margin-left: auto; margin-right: auto; }
.drp-home.is-v2 .drp-hsec.is-narrow .drp-noedit { text-align: left; max-width: 640px; margin: 20px auto; }
.drp-home.is-v2 .drp-hsec-lead p { max-width: 760px; font-size: 18px; font-weight: 300; margin: -12px 0 28px; }

/* hero: proofs as chips, two actions */
.drp-hero ul.drp-proofs.is-chips { display: flex; flex-wrap: wrap; gap: 8px; margin: 22px 0 28px !important; }
.drp-hero ul.drp-proofs.is-chips li { padding: 7px 14px; border: 1px solid rgba(255, 255, 255, 0.22); border-radius: 8px; font-size: 14px; color: #E6E9F0; background: rgba(255, 255, 255, 0.04); }
.drp-hero ul.drp-proofs.is-chips li::before { display: none; }
.drp-hero .drp-hero-actions { display: flex; flex-wrap: wrap; align-items: center; gap: 12px; }
.drp-hero .drp-hero-actions > * { margin: 0 !important; }
.drp-hero .drp-hero-actions .drpp-open, .drp-hero .drp-hero-actions .drp-plan-btn, .drp-hero .drp-hero-actions button { min-height: 48px; padding: 0 22px; border-radius: 8px; border: 1px solid rgba(255, 255, 255, 0.55) !important; background: transparent !important; color: #FFFFFF !important; font-size: 14px; letter-spacing: .08em; text-transform: uppercase; cursor: pointer; }

/* pillar tiles: a real case on top, procedures as chips */
.drp-tiles { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 20px; }
.drp-tile { display: grid; grid-template-columns: 200px minmax(0, 1fr); gap: 0; background: var(--white, #FFFFFF); border-radius: 14px; overflow: hidden; min-width: 0; }
.drp-tile-media { background: linear-gradient(160deg, var(--panel, #EEE8E1), #E3DACE); min-height: 220px; position: relative; }
.drp-tile-media .drp-ba-card, .drp-tile-media .drp-ba--card { height: 100%; margin: 0 !important; max-width: none; }
.drp-tile-media .drp-ba-card-link { height: 100%; gap: 0; }
.drp-tile-media .drp-ba-card-img { height: 100%; aspect-ratio: auto; border-radius: 0; margin: 0; }
.drp-tile-media .drp-ba-card-link > :not(.drp-ba-card-img), .drp-tile-media .drp-ba-more, .drp-tile-media p { display: none !important; }
.drp-tile-body { padding: 24px 26px 26px; }
.drp-tile-title { margin: 0 0 8px; font-family: "Noto Serif Display", Georgia, serif; font-weight: 400; font-size: 28px; line-height: 1.1; }
.drp-tile-title a { color: inherit; text-decoration: none; }
.drp-tile-title a::after { content: " →"; font-size: .7em; color: var(--navy, #2F4570); }
.drp-tile-desc { margin: 0 0 14px; font-size: 15px; line-height: 1.55; color: var(--text-2, #554D46); }
.drp-tile-sub { margin: 12px 0 6px; font-size: 11.5px; letter-spacing: .14em; text-transform: uppercase; color: var(--label, #7A5E4E); }
.drp-tile-sub a { color: inherit; text-decoration: none; }
ul.drp-chips { list-style: none; margin: 0 !important; padding: 0 !important; display: flex; flex-wrap: wrap; gap: 6px; }
ul.drp-chips li { margin: 0; }
ul.drp-chips a { display: inline-flex; align-items: center; min-height: 34px; padding: 0 12px; border: 1px solid rgba(47, 69, 112, 0.28); border-radius: 8px; font-size: 13.5px; color: var(--navy, #2F4570); text-decoration: none; background: rgba(47, 69, 112, 0.03); }
ul.drp-chips a:hover { background: var(--navy, #2F4570); color: #FFFFFF; border-color: var(--navy, #2F4570); }

/* deep plane band with the theatre photo */
.drp-dp { margin-top: 96px; background: var(--navy-deep, #111A2B); color: #E6E9F0; }
.drp-dp-grid { box-sizing: border-box; max-width: var(--drp-max); margin: 0 auto; padding: 80px var(--drp-gutter); display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1.1fr); gap: 56px; align-items: center; }
.drp-dp .drp-label { color: var(--topbar-text, #B0B8C8); }
.drp-dp-h { margin: 6px 0 18px; font-family: "Noto Serif Display", Georgia, serif; font-weight: 400; font-size: clamp(32px, 4vw, 48px); line-height: 1.08; color: #FFFFFF; }
.drp-dp-text p { font-size: 17px; line-height: 1.65; font-weight: 300; }
.drp-dp-text a { color: #FFFFFF; }
.drp-dp-media .drp-theatre img { aspect-ratio: 16 / 11 !important; max-height: none; border-radius: 14px; }
.drp-dp-media .drp-theatre { margin: 0; }

/* plan / surgeon / consultation */
.drp-hcards { display: grid; grid-template-columns: 1.3fr 1fr 1fr; gap: 16px; }
.drp-hcard { padding: 28px 28px 26px; display: flex; flex-direction: column; }
.drp-hcard .drp-card-title { font-family: "Noto Serif Display", Georgia, serif; font-weight: 400; font-size: 26px; line-height: 1.12; margin: 0 0 10px; }
.drp-hcard.is-plan { background: var(--panel, #EEE8E1); }
.drp-hcard .drp-more { margin-top: auto; padding-top: 8px; }

@media (max-width: 1100px) {
	.drp-tiles { grid-template-columns: minmax(0, 1fr); }
	.drp-hcards { grid-template-columns: minmax(0, 1fr); }
	.drp-dp-grid { grid-template-columns: minmax(0, 1fr); gap: 32px; padding: 56px var(--drp-gutter); }
}
@media (max-width: 640px) {
	.drp-home.is-v2 .drp-hsec { padding-top: 64px; }
	.drp-tile { grid-template-columns: minmax(0, 1fr); }
	.drp-tile-media { min-height: 0; aspect-ratio: 16 / 10; }
	.drp-dp { margin-top: 64px; }
}
.drp-tile-media > .wp-block-group__inner-container { height: 100%; }
.drp-tile-media a.drp-ba--card { display: block; height: 100%; max-width: none !important; margin: 0 !important; }
.drp-tile-media .drp-ba-frost.is-card { height: 100% !important; width: 100% !important; aspect-ratio: auto !important; max-width: none !important; border-radius: 0 !important; margin: 0 !important; }
.drp-tile-media .drp-ba-cardname, .drp-tile-media .drp-ba-cardline { display: none !important; }
.drp-dp h2.drp-dp-h { color: #FFFFFF !important; }
.drp-dp p.drp-label { color: var(--topbar-text, #B0B8C8) !important; }
.drp-dp .drp-dp-text p { color: #E6E9F0; }
.drp-tile h3.drp-tile-title { font-family: "Noto Serif Display", Georgia, serif !important; font-weight: 400 !important; font-size: 28px !important; line-height: 1.1 !important; letter-spacing: 0 !important; text-transform: none !important; }
.drp-hcard h3.drp-card-title { font-family: "Noto Serif Display", Georgia, serif !important; font-weight: 400 !important; font-size: 24px !important; line-height: 1.15 !important; }
@media (max-width: 640px) { .drp-tile-media { height: auto; } .drp-tile-media .drp-ba-frost.is-card { aspect-ratio: 16 / 10 !important; height: auto !important; } }
.drp-home.is-v2 .drp-hsec { padding-left: var(--drp-gutter) !important; padding-right: var(--drp-gutter) !important; box-sizing: border-box; }
.drp-tile:not(:has(.drp-ba--card)) { grid-template-columns: minmax(0, 1fr); }
.drp-tile:not(:has(.drp-ba--card)) .drp-tile-media { display: none; }
.drp-hcards.is-four { grid-template-columns: repeat(2, minmax(0, 1fr)); }
@media (max-width: 1100px) { .drp-hcards.is-four { grid-template-columns: minmax(0, 1fr); } }
.drp-figure { margin: 18px 0 22px; }
.drp-figure img { display: block; width: 100%; height: auto; border-radius: 12px; }

/* ==========================================================================
   18 Oct 2026 – homepage and surgeon page in the approved «quiet luxury» design (.drp-x-*)
   ========================================================================== */
.drp-x-page { --x-navy: var(--navy, #31456A); --x-deep: var(--navy-deep, #111A2B); --x-sand: var(--ground, #F5F1EB); --x-sand2: #EFE7DF; --x-panel: #FAF7F2; --x-line: #E4DCD2; --x-text2: #5E554D; --x-label: var(--label, #8A6A55); background: var(--x-sand); }
.drp-x { padding: 84px 0; }
.drp-x .drp-w { box-sizing: border-box; max-width: 1180px; margin: 0 auto; padding: 0 var(--drp-gutter, 32px); }
.drp-x-page h2 { font-size: clamp(34px, 4.4vw, 52px); line-height: 1.04; margin: 0 0 26px; font-weight: 400; }
.drp-x-page h3 { font-family: "Noto Serif Display", Georgia, serif; font-weight: 400; font-size: 26px; line-height: 1.08; margin: 0 0 8px; }
.drp-x-page p { margin: 0 0 14px; }
.drp-x-page .drp-label { color: var(--x-label); }
.drp-x-muted, .drp-x-small, .drp-x-intro, .drp-x-two-b p:not(.drp-x-pull) { color: var(--x-text2); }
.drp-x-small { font-size: 13.5px; }
.drp-x-intro { max-width: 760px; margin: -8px 0 22px !important; }
.drp-x-page .drp-more { margin: 0; }
.drp-x-page .drp-more a { font-size: 12.5px; letter-spacing: .12em; text-transform: uppercase; font-weight: 500; }
.drp-x-acts { display: flex; flex-wrap: wrap; gap: 12px; align-items: center; margin: 0 0 6px; }
.drp-x-page .wp-block-button__link, .drp-x-page .drp-plan-btn { min-height: 46px; border-radius: 7px; font-size: 13px; font-weight: 500; letter-spacing: .1em; text-transform: uppercase; }
.drp-x-card { background: #fff; border: 1px solid var(--x-line); border-radius: 14px; padding: 22px; box-sizing: border-box; }
.drp-x-page .drp-figure { margin: 0; }
.drp-x-page .drp-figure img { display: block; width: 100%; height: auto; }

/* hero */
.drp-x-hero { padding: 64px 0; }
.drp-x-hero .drp-w { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, .85fr); gap: 56px; align-items: center; }
.drp-x-page .drp-x-h1 { font-family: "Commissioner", system-ui, sans-serif; font-size: 12px; font-weight: 500; letter-spacing: .16em; text-transform: uppercase; line-height: 1.4; color: var(--x-label); margin: 0 0 14px; }
.drp-x-page .drp-x-h1.is-title { font-family: "Noto Serif Display", Georgia, serif; font-size: clamp(40px, 5.2vw, 66px); font-weight: 400; letter-spacing: 0; text-transform: none; line-height: 1.02; color: var(--heading, #2A2420); margin: 0 0 22px; }
.drp-x-display { font-family: "Noto Serif Display", Georgia, serif; font-size: clamp(48px, 6.6vw, 80px); line-height: 1; color: var(--heading, #2A2420); margin: 0 0 22px !important; }
.drp-x-lead { font-size: 17px; color: var(--x-text2); max-width: 520px; margin: 0 0 26px !important; }
.drp-x-proof { margin: 26px 0 0 !important; padding-top: 16px; border-top: 1px solid var(--x-line); font-size: 13px; color: var(--x-text2); }
.drp-x-hero-media img, .drp-x-hero-media .drp-portrait img { width: 100%; aspect-ratio: 4 / 5; object-fit: cover; border-radius: 14px; display: block; }
.drp-x-hero-media figure { margin: 0; }

/* why */
.drp-x-why { background: #fff; padding: 56px 0 60px; }
.drp-x-page h2.drp-x-lab, .drp-x-page .drp-x-lab { font-family: "Commissioner", system-ui, sans-serif; font-size: 11.5px; letter-spacing: .16em; text-transform: uppercase; color: var(--x-label); font-weight: 500; margin: 0 0 18px; line-height: 1.4; }
.drp-x-why-g { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 32px; }
.drp-x-why-i p { font-size: 14px; color: var(--x-text2); margin: 0; }

/* pillars */
.drp-x-pil-g { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 16px; }
.drp-x-pil-im { aspect-ratio: 1 / 1.05; background: #fff; border: 1px solid var(--x-line); border-radius: 12px; display: flex; align-items: center; justify-content: center; overflow: hidden; }
.drp-x-pil-im .drp-figure { width: 82%; height: 82%; display: flex; align-items: center; justify-content: center; }
.drp-x-pil-im img { max-width: 100%; max-height: 100%; width: auto !important; object-fit: contain; mix-blend-mode: multiply; }
.drp-x-pil-i h3 { margin: 14px 0 4px; }
.drp-x-pil-i h3 a { color: inherit !important; display: flex; justify-content: space-between; }
.drp-x-pil-i p { font-size: 13.5px; color: var(--x-text2); margin: 0; }

/* signature procedures */
.drp-x-sig { background: var(--x-sand2); }
.drp-x-sig-g { display: grid; grid-template-columns: 1.4fr 1fr; gap: 16px; }
.drp-x-card.is-dp { display: grid; grid-template-columns: .9fr 1fr; gap: 22px; align-items: center; }
.drp-x-sk { background: var(--x-panel); border: 1px solid var(--x-line); border-radius: 10px; display: flex; align-items: center; justify-content: center; overflow: hidden; }
.drp-x-card.is-dp .drp-x-sk { aspect-ratio: 4 / 5; }
.drp-x-card.is-eye .drp-x-sk { height: 190px; margin-bottom: 14px; }
.drp-x-sk .drp-figure { width: 86%; height: 88%; display: flex; align-items: center; justify-content: center; }
.drp-x-sk img { max-width: 100%; max-height: 100%; width: auto !important; mix-blend-mode: multiply; object-fit: contain; }
.drp-x-card.is-dp h3, .drp-x-card.is-eye h3 { font-size: 34px; margin: 4px 0 10px; }
.drp-x-sig .drp-x-card p:not(.drp-label):not(.drp-more) { font-size: 14px; color: var(--x-text2); }

/* results */
.drp-x-res-hd { display: flex; justify-content: space-between; align-items: flex-end; gap: 16px; flex-wrap: wrap; }
.drp-x-res-t h2 { margin-bottom: 8px; }
.drp-x-res-t p { font-size: 14px; color: var(--x-text2); }
ul.drp-x-chips { display: flex; flex-wrap: wrap; gap: 8px; margin: 14px 0 18px; padding: 0; list-style: none; }
ul.drp-x-chips a { display: inline-block; padding: 6px 14px; border-radius: 8px; border: 1px solid var(--x-line); background: #fff; font-size: 13px; color: var(--text, #2B2724) !important; }
ul.drp-x-chips a:hover { border-color: var(--x-navy); color: var(--x-navy) !important; }
.drp-x-res-g { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 14px; }
.drp-x-res-i:empty { display: none; }

/* reviews */
.drp-x-rev { background: #fff; }
.drp-x-rev-g { display: grid; grid-template-columns: .8fr 1.6fr; gap: 40px; }
.drp-x-rev-t h2 { font-size: clamp(32px, 3.6vw, 44px); }
.drp-x-rev-t p { font-size: 14px; color: var(--x-text2); }
.drp-x-rev-q { display: grid; grid-template-columns: 1fr 1fr; gap: 14px; }
.drp-x-page blockquote.drp-rq { margin: 0; background: var(--x-panel); border: 1px solid var(--x-line); border-radius: 12px; padding: 20px; }
.drp-x-page blockquote.drp-rq p { font-family: "Noto Serif Display", Georgia, serif; font-size: 20px; line-height: 1.32; margin: 0; color: var(--heading, #2A2420); }
.drp-x-page blockquote.drp-rq cite { display: block; margin-top: 12px; font: normal 12px "Commissioner", system-ui, sans-serif; color: var(--x-text2); }

/* surgeon quote band */
.drp-x-quote { background: var(--x-deep); color: #fff; text-align: center; padding: 76px 0; }
.drp-x-quote .drp-label, .drp-x-by { color: var(--topbar-text, #B0B8C8) !important; }
.drp-x-bigq { font-family: "Noto Serif Display", Georgia, serif; font-size: clamp(27px, 3.4vw, 40px); line-height: 1.2; max-width: 880px; margin: 0 auto 18px !important; }
.drp-x-by { font-size: 13px; margin-bottom: 24px !important; }
.drp-x-quote .wp-block-buttons { justify-content: center; }

/* consultation, video, steps */
.drp-x-cons-g { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 16px; margin: 6px 0 24px; }
.drp-x-cons-g h3 { font-size: 24px; margin-bottom: 6px; }
.drp-x-cons-g p { margin: 0; font-size: 14px; color: var(--x-text2); }
.drp-x-vid { padding-top: 0; }
.drp-x-vid-g { display: grid; grid-template-columns: 1fr 1.1fr; gap: 48px; align-items: center; }
.drp-x-vid-t h2 { font-size: clamp(32px, 3.6vw, 44px); margin-bottom: 16px; }
.drp-x-vid-t p { color: var(--x-text2); }
.drp-x-vid .drp-x-card img { border-radius: 10px; }
.drp-x-vid .drp-x-card .drp-x-small { margin: 12px 0 0 !important; }
.drp-x-steps { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 14px; margin-top: 30px; }
.drp-x-step { border-top: 1px solid var(--x-navy); padding-top: 12px; }
.drp-x-step-n { font-size: 12px; font-weight: 500; letter-spacing: .14em; color: var(--x-label); margin: 0 0 4px !important; }
.drp-x-step h3 { font-size: 22px; margin: 0 0 4px; }
.drp-x-step p:not(.drp-x-step-n) { margin: 0; font-size: 13.5px; color: var(--x-text2); }

/* practices and hospitals (photo cards) */
.drp-x-loc { background: var(--x-panel); }
.drp-x-loc-g { display: grid; grid-template-columns: 1.1fr 1fr 1fr; gap: 16px; align-items: stretch; }
.drp-x-loc-t h2 { font-size: clamp(32px, 3.4vw, 42px); }
.drp-x-loc-t > p, .drp-x-loc-t p:not(.drp-more) { color: var(--x-text2); font-size: 15px; }
.drp-x-pr { background: #fff; border: 1px solid var(--x-line); border-radius: 12px; overflow: hidden; }
.drp-x-pr .drp-figure img { height: 170px; object-fit: cover; }
.drp-x-pr-t { padding: 16px 18px; font-size: 14px; }
.drp-x-pr-t h3 { font-size: 24px; margin-bottom: 4px; }
.drp-x-pr-t p { margin: 0 0 6px; }
.drp-x-hosp { padding-top: 0; }
.drp-x-hosp-g { display: grid; grid-template-columns: 1fr 1fr; gap: 16px; }
.drp-x-hosp .drp-x-pr .drp-figure img { height: 260px; }
.drp-x-hosp .drp-x-pr-t p { color: var(--x-text2); }

/* surgeon page */
.drp-x-hero.is-surgeon .drp-x-lead { max-width: 600px; }
.drp-x-facts { background: var(--x-deep); color: #fff; padding: 40px 0; }
.drp-x-facts-g, .drp-x-team-g { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 24px; }
.drp-x-fact-n { font-family: "Noto Serif Display", Georgia, serif; font-size: 52px; line-height: 1; margin: 0 0 6px !important; }
.drp-x-fact-t { font-size: 14px; margin: 0 !important; }
.drp-x-facts .drp-x-fact-t { color: var(--topbar-text, #B0B8C8); }
.drp-x-two .drp-w { display: grid; grid-template-columns: .8fr 1.4fr; gap: 48px; }
.drp-x-two.is-white { background: #fff; }
.drp-x-pull { font-family: "Noto Serif Display", Georgia, serif; font-size: 28px; line-height: 1.2; color: var(--heading, #2A2420); margin: 0 0 20px !important; padding-left: 18px; border-left: 2px solid var(--x-navy); }
.drp-x-tl-i { display: grid; grid-template-columns: 120px 1fr; gap: 20px; padding: 18px 0; border-top: 1px solid var(--x-line); }
.drp-x-tl-i:first-child { border-top: 0; padding-top: 0; }
.drp-x-tl-y { font-family: "Noto Serif Display", Georgia, serif; font-size: 28px; line-height: 1; color: var(--x-navy); margin: 0 !important; }
.drp-x-tl-t h3 { font-size: 24px; }
.drp-x-tl-t p { color: var(--x-text2); margin: 0; }
.drp-full.drp-x-band { margin: 0; }
.drp-x-band img { display: block; width: 100%; max-height: 560px; object-fit: cover; }
.drp-x-band figure { margin: 0; }
.drp-x-edu-g { display: grid; grid-template-columns: 1.4fr 1fr; gap: 16px; }
.drp-x-edu-g p { color: var(--x-text2); }
ul.drp-x-badges { list-style: none; margin: 0; padding: 0; display: grid; gap: 12px; }
ul.drp-x-badges li { display: flex; align-items: center; gap: 14px; padding: 12px 14px; border: 1px solid var(--x-line); border-radius: 10px; background: var(--x-panel); font-size: 14px; line-height: 1.4; }
ul.drp-x-badges .drp-x-badge-logo { flex: 0 0 auto; width: auto; max-width: 96px; max-height: 56px; height: auto; object-fit: contain; }
ul.drp-x-badges .drp-x-badge-logo-eepax { max-width: 170px; max-height: 46px; }
ul.drp-x-badges .drp-x-badge-logo-asps { max-height: 64px; }
.drp-x-team { background: #fff; }
.drp-x-team-i { border-top: 1px solid var(--x-navy); padding-top: 14px; }
.drp-x-team-i .drp-x-fact-n { font-size: 44px; color: var(--x-navy); }
.drp-x-team-i .drp-x-fact-t { color: var(--x-text2); }
.drp-x-intl-g { display: grid; grid-template-columns: 1.2fr 1fr; gap: 48px; align-items: center; }
.drp-x-intl-t p { color: var(--x-text2); }
ul.drp-x-langs { list-style: none; display: flex; flex-wrap: wrap; gap: 8px; margin: 4px 0 22px; padding: 0; }
ul.drp-x-langs li { padding: 6px 14px; border-radius: 8px; border: 1px solid var(--x-line); background: #fff; font-size: 13px; }
ul.drp-x-fu { list-style: none; margin: 0; padding: 0; display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 10px; }
ul.drp-x-fu li { background: #fff; border: 1px solid var(--x-line); border-radius: 12px; padding: 18px 12px; text-align: center; }
ul.drp-x-fu b { display: block; font-family: "Noto Serif Display", Georgia, serif; font-weight: 400; font-size: 44px; line-height: 1; color: var(--x-navy); }
ul.drp-x-fu span { font-size: 13px; color: var(--x-text2); }
.drp-x-cta { background: var(--x-deep); color: #fff; padding: 60px 0; }
.drp-x-cta .drp-w { display: flex; justify-content: space-between; align-items: center; gap: 24px; flex-wrap: wrap; }
.drp-x-cta h2 { color: #fff !important; margin: 0 0 6px; }
.drp-x-cta p { color: var(--topbar-text, #B0B8C8); margin: 0; }
.drp-x-cta .drp-plan-btn { color: #fff; border-color: var(--topbar-text, #B0B8C8); }
.drp-x-two-b .drp-faq h3 { font-family: "Commissioner", system-ui, sans-serif; font-size: 18px; font-weight: 500; }

@media (max-width: 1000px) {
	.drp-x-why-g, .drp-x-pil-g, .drp-x-res-g, .drp-x-facts-g, .drp-x-team-g { grid-template-columns: repeat(2, minmax(0, 1fr)); }
	.drp-x-steps { grid-template-columns: repeat(2, minmax(0, 1fr)); }
	.drp-x-loc-g { grid-template-columns: 1fr 1fr; }
	.drp-x-loc-t { grid-column: 1 / -1; }
}
@media (max-width: 760px) {
	.drp-x { padding: 56px 0; }
	.drp-x-hero { padding: 36px 0 44px; }
	.drp-x-hero .drp-w, .drp-x-sig-g, .drp-x-card.is-dp, .drp-x-rev-g, .drp-x-rev-q, .drp-x-cons-g, .drp-x-vid-g, .drp-x-steps, .drp-x-loc-g,
	.drp-x-two .drp-w, .drp-x-edu-g, .drp-x-hosp-g, .drp-x-intl-g { grid-template-columns: minmax(0, 1fr); gap: 22px; }
	.drp-x-why-g, .drp-x-pil-g { gap: 18px 12px; }
	.drp-x-tl-i { grid-template-columns: 1fr; gap: 6px; }
	.drp-x-fact-n { font-size: 40px; }
	ul.drp-x-fu { grid-template-columns: repeat(2, minmax(0, 1fr)); }
	.drp-x-hosp .drp-x-pr .drp-figure img { height: 200px; }
}
.drp-x-page .drp-plan-btn.is-primary { background: transparent; color: var(--x-navy); border: 1px solid var(--x-navy); }
.drp-x-page .drp-plan-btn.is-primary:hover { background: var(--x-navy); color: #fff; }
.drp-x-cta .drp-plan-btn.is-primary { color: #fff; border-color: var(--topbar-text, #B0B8C8); }
.drp-x-cta .drp-plan-btn.is-primary:hover { background: #fff; color: var(--x-deep); }
/* homepage: two ways to start (A booking · B My plan) */
.drp-x-opt { background: #fff; border: 1px solid var(--x-line); border-radius: 12px; padding: 16px 18px; margin: 0 0 12px; }
.drp-x-opt.is-b { border-color: var(--x-navy); box-shadow: inset 3px 0 0 var(--x-navy); }
.drp-x-opt .drp-x-opt-k { display: inline-flex; align-items: center; justify-content: center; width: 26px; height: 26px; margin: 0 0 8px !important; border-radius: 6px; background: var(--x-navy); color: #fff; font-size: 13px; font-weight: 500; }
.drp-x-opt.is-a .drp-x-opt-k { background: transparent; color: var(--x-navy); border: 1px solid var(--x-navy); }
.drp-x-opt h3 { font-size: 22px; margin: 0 0 6px; }
.drp-x-opt p:not(.drp-x-opt-k) { font-size: 14px; color: var(--x-text2); margin: 0 0 12px; }
.drp-x-loc-t > p:not(.drp-x-opt-k) { margin-bottom: 12px !important; }
.drp-x-opt.is-b .drp-x-opt-k { color: #fff !important; }
.drp-x-opt.is-a .drp-x-opt-k { color: var(--x-navy) !important; }
.drp-x-loc-g { align-items: start; }
@media (max-width: 480px) { ul.drp-x-badges li.has-logo { flex-direction: column; align-items: flex-start; gap: 8px; } }
