/* DR09 Ingyenes konzultáció — page styles (prefix dr09-). Measured on DR09_teljes.png (940 px) × 1.63 → 1536 px: plans/DR09.md §2. */

/* Hero (0–935 incl. the 96 px header) */
.dr09-hero { --hero-h: 54vw; --hero-zoom: .12; --hero-pos-phone: 70% 50%; }
.dr09-hero h1 { margin-bottom: 14px; font-size: clamp(44px, 6.6vw, 106px); }
.hero__subtitle { margin-bottom: 22px; font-size: clamp(22px, 2.35vw, 40px); font-weight: 400; line-height: 1.2; letter-spacing: -.01em; color: var(--paper); }
.dr09-hero .lead { max-width: 560px; font-size: clamp(18px, 1.82vw, 29px); }

/* Intro + form (935–2170) */
.dr09-main { padding-block: 44px 40px; }
.dr09-main .section-head { margin-bottom: 64px; }
.dr09-main__grid { display: grid; grid-template-columns: 682fr 1px 670fr; align-items: stretch; }
.dr09-main__grid > .vline { background: var(--rule); }
.dr09-intro { display: flex; flex-direction: column; padding-right: 58px; }
.dr09-intro .h2 { margin-bottom: 30px; font-size: clamp(38px, 5.6vw, 90px); letter-spacing: -.03em; }
.dr09-intro__text { max-width: 580px; margin-bottom: 56px; font-size: clamp(17px, 1.82vw, 29px); line-height: 1.4; }
.dr09-benefits { display: grid; gap: 52px; margin-bottom: 44px; }
.dr09-benefits li { display: grid; grid-template-columns: 128px 1fr; align-items: start; }
.dr09-benefits .numeral { font-size: clamp(44px, 4.95vw, 80px); }
.dr09-benefits li > div { padding: 8px 0 6px 48px; border-left: 1px solid var(--rule); }
.dr09-benefits h3 { margin-bottom: 12px; font-size: clamp(18px, 1.82vw, 29px); font-weight: 700; letter-spacing: -.01em; }
.dr09-benefits p { max-width: 420px; font-size: clamp(15px, 1.5vw, 24px); line-height: 1.4; color: var(--muted); }
.dr09-intro .side-caption { margin-top: auto; padding-top: 28px; }

.dr09-form { padding-left: 62px; }
.dr09-form__eyebrow { display: flex; align-items: center; gap: 20px; margin-bottom: 24px; }
.dr09-form__eyebrow .line { flex: 1; height: 1px; background: var(--rule); }
.dr09-form__title { margin-bottom: 22px; font-size: clamp(30px, 2.95vw, 48px); font-weight: 800; line-height: 1.05; letter-spacing: -.035em; }
.dr09-form__lead { max-width: 640px; margin-bottom: 36px; font-size: clamp(17px, 1.9vw, 30px); line-height: 1.35; }
.dr09-form .form { gap: 20px; }
.dr09-form .form__row { gap: 20px 16px; }
.dr09-form .field__control { height: 66px; padding: 28px 22px 8px; font-size: 18px; }
.dr09-form .field__label { left: 23px; top: 21px; font-size: clamp(15px, 1.2vw, 19px); }
.dr09-form .field:not(.field--stacked):focus-within .field__label,
.dr09-form .field:not(.field--stacked):has(input.field__control:not(:placeholder-shown)) .field__label,
.dr09-form .field:not(.field--stacked):has(textarea.field__control:not(:placeholder-shown)) .field__label,
.dr09-form .field:not(.field--stacked):has(select.field__control option:checked:not([value=""])) .field__label { top: 8px; font-size: 12px; }
.dr09-form .field__chev { top: 24px; right: 22px; width: 20px; height: 20px; }
.dr09-form textarea.field__control { height: 196px; min-height: 150px; padding-top: 34px; }
.dr09-form .field--check { margin-top: 8px; }
.dr09-form .field--check input { width: 28px; height: 28px; }
.dr09-form .field--check label { font-size: clamp(14px, 1.1vw, 18px); color: var(--muted); }
.dr09-form .field--check label a { color: var(--ink); text-underline-offset: 3px; }
.dr09-form .btn--form { height: 74px; min-width: 348px; font-size: clamp(17px, 1.63vw, 26px); margin-top: 16px; }

/* What happens next (2170–2548) */
.dr09-next { padding-block: 38px 90px; border-top: 1px solid var(--rule); }
.dr09-next__title { margin: 6px 0 44px; font-size: clamp(32px, 3.5vw, 56px); }
.dr09-next__cols { --n: 3; }
.dr09-next__cols > * { padding-left: 46px; gap: 34px; }
.dr09-next__cols > :first-child { padding-left: 0; }
.dr09-next__cols .numeral { font-size: clamp(44px, 4.3vw, 70px); }
.dr09-next__cols .title { margin: 10px 0 14px; font-size: clamp(18px, 1.76vw, 28px); font-weight: 700; }
.dr09-next__cols .body-muted { max-width: 300px; font-size: clamp(15px, 1.5vw, 24px); }

/* Tablet */
@media (max-width: 1180px) {
  .dr09-main__grid { grid-template-columns: 1fr; row-gap: 56px; }
  .dr09-main__grid > .vline { height: 1px; }
  .dr09-intro { padding-right: 0; }
  .dr09-form { padding-left: 0; }
}
@media (max-width: 900px) {
  .dr09-next__cols { --n: 1; }
  .dr09-next__cols > * { padding: 26px 0; border-left: 0; border-top: 1px solid var(--rule); }
  .dr09-next__cols > :first-child { border-top: 0; padding-top: 0; }
}

/* Phone layer (plans/DR09.md §6) */
@media (max-width: 768px) {
  .dr09-main .section-head { margin-bottom: 32px; }
  .dr09-intro__text { margin-bottom: 32px; }
  .dr09-benefits { gap: 28px; }
  .dr09-benefits li { grid-template-columns: 64px 1fr; }
  .dr09-benefits li > div { padding-left: 20px; }
  .dr09-form .field__control { height: 60px; padding: 24px 16px 8px; font-size: 16px; }
  .dr09-form .field__label { left: 17px; top: 19px; font-size: 16px; }
  .dr09-form .field__chev { top: 21px; right: 16px; }
  .dr09-form textarea.field__control { height: 180px; }
  .dr09-form .btn--form { width: 100%; min-width: 0; height: 60px; }
  .dr09-next__cols > * { gap: 22px; }
}
