/* budynky.css — page-specific styles for /budynky/ (populated in Tasks 3-8) */

/* ── Task 3: hero + glass type-toggle card ── */
.bud-hero__inner { position:relative; z-index:2; width:100%; max-width:1280px; margin-inline:auto;
  padding:128px clamp(24px,5vw,56px) 84px; display:grid; grid-template-columns:1fr; gap:clamp(36px,5vw,56px); align-items:center }
@media (min-width:1000px){ .bud-hero__inner { grid-template-columns:1.08fr minmax(338px,408px); gap:clamp(48px,6vw,88px) } }
.bud-hero h1 { max-width:13ch; margin-bottom:0; font-size:clamp(2.9rem,6.6vw,5.9rem); line-height:.98 }
.bud-hero h1 .l1, .bud-hero h1 .l2, .bud-hero h1 .l3 { display:block }
.bud-hero h1 .l3 { opacity:0; animation:riseup 1s 1.2s var(--ease-out) forwards }
.bud-hero .hero__sub { max-width:42ch }
.bud-card { position:relative; z-index:2; width:100%; max-width:408px; justify-self:end; isolation:isolate;
  border-radius:16px; padding:24px 24px 22px; color:var(--ecru);
  background:rgba(25,26,24,.46); backdrop-filter:blur(15px) saturate(1.08); -webkit-backdrop-filter:blur(15px) saturate(1.08);
  border:1px solid rgba(247,243,236,.18); box-shadow:0 34px 90px -44px rgba(0,0,0,.78);
  opacity:0; animation:budCardIn 1s 1.25s var(--ease-out) forwards }
@keyframes budCardIn { from{opacity:0; transform:translateX(34px)} to{opacity:1; transform:none} }
.bud-card__eyebrow { font-size:.66rem; letter-spacing:var(--track-label); text-transform:uppercase; font-weight:600; color:var(--sand); margin-bottom:14px }
.bud-card__toggle { display:flex; gap:8px; margin-bottom:20px }
.bud-pill { flex:1; background:rgba(247,243,236,.07); border:1px solid rgba(247,243,236,.2); color:rgba(247,243,236,.86);
  font-family:var(--font-h); font-size:1rem; padding:11px 8px; border-radius:10px; cursor:pointer;
  transition:background var(--dur-tap) var(--ease-out), color var(--dur-tap) var(--ease-out), border-color var(--dur-tap) var(--ease-out) }
.bud-pill:hover { background:rgba(247,243,236,.13) }
.bud-pill[aria-selected="true"] { background:var(--ecru); color:var(--ink); border-color:var(--ecru) }
.bud-card__title { font-family:var(--font-h); font-weight:400; font-size:1.9rem; line-height:1; margin:0 0 6px }
.bud-card__lead { color:rgba(247,243,236,.82); font-size:.95rem; margin:0 0 14px; min-height:2.8em }
.bud-card__facts { margin:0 }
.bud-card__facts > div { display:flex; justify-content:space-between; align-items:baseline; gap:18px; padding:11px 0; border-top:1px solid rgba(247,243,236,.14) }
.bud-card__facts dt { color:rgba(247,243,236,.6); font-size:.72rem; letter-spacing:.07em; text-transform:uppercase; white-space:nowrap }
.bud-card__facts dd { margin:0; text-align:right; font-weight:600; font-variant-numeric:tabular-nums; color:var(--ecru) }
.bud-card__price { display:flex; justify-content:space-between; align-items:baseline; gap:18px; padding:15px 0 4px; margin-top:2px; border-top:1px solid rgba(247,243,236,.22) }
.bud-card__price .lbl { color:var(--sand); font-size:.72rem; letter-spacing:.07em; text-transform:uppercase }
.bud-card__price .price { color:var(--sand); font-family:var(--font-h); font-weight:400; font-size:1.34rem; line-height:1 }
.bud-card .btn { display:block; text-align:center; margin-top:16px; width:100% }
.bud-card__note { margin:11px 0 0; font-size:.74rem; line-height:1.45; color:rgba(247,243,236,.6) }
.bud-hero .rings--card { width:430px; height:430px; right:-120px; top:50%; transform:translateY(-50%); opacity:.14; z-index:1 }
@media (max-width:999px){ .bud-card { justify-self:stretch; max-width:none } .bud-hero .rings--card { display:none } }
@media (prefers-reduced-motion:reduce){ .bud-hero h1 .l3, .bud-card { animation:none; opacity:1 } }

/* ── Task 4: S2 Вибір + S3 Два типи (warm cards) ── */
.bud-choice .kicker, .bud-types .kicker { color:var(--brown); display:inline-flex; align-items:center; gap:.7em }
.bud-choice .kicker::before, .bud-types .kicker::before { content:''; width:30px; height:1px; background:currentColor; opacity:.55 }
.bud-choice { padding-block:clamp(64px,9vh,128px) }
.bud-choice h2 { max-width:18ch; font-size:clamp(2.1rem,4.4vw,3.4rem); margin:18px 0 0 }
.bud-choice__body { font-size:clamp(1.12rem,1.5vw,1.4rem); line-height:1.75; max-width:60ch; margin-top:24px; color:var(--ink-soft) }
.bud-types h2 { max-width:18ch; margin-top:clamp(18px,1.8vw,24px) }
.bud-types__grid { margin-top:clamp(36px,4.5vw,64px); align-items:stretch; gap:clamp(24px,3vw,40px) }
.bud-type { position:relative; background:var(--paper); border-radius:10px; overflow:hidden; display:flex; flex-direction:column;
  box-shadow:0 1px 2px rgba(25,26,24,.04), 0 18px 40px -28px rgba(25,26,24,.45);
  transition:transform .5s var(--ease-out), box-shadow .5s var(--ease-out) }
.bud-type:hover { transform:translateY(-4px); box-shadow:0 1px 2px rgba(25,26,24,.05), 0 30px 64px -30px rgba(25,26,24,.5) }
.bud-type picture { display:block; aspect-ratio:3/2; overflow:hidden; background:var(--sand) }
.bud-type img { width:100%; height:100%; object-fit:cover; display:block; transition:transform .8s var(--ease-out) }
.bud-type:hover img { transform:scale(1.04) }
.bud-type__body { padding:clamp(24px,3vw,38px); display:flex; flex-direction:column; gap:18px; flex:1 }
.bud-type__body h3 { font-size:clamp(1.7rem,2.4vw,2.1rem); line-height:1 }
.bud-type__body > p { color:var(--ink-soft); max-width:48ch }
.bud-facts > div { display:flex; justify-content:space-between; align-items:baseline; gap:24px; padding:13px 0; border-top:1px solid rgba(140,90,43,.16) }
.bud-facts dt { color:var(--willow); font-size:.78rem; letter-spacing:.07em; text-transform:uppercase; white-space:nowrap }
.bud-facts dd { margin:0; text-align:right; font-weight:600; font-variant-numeric:tabular-nums }
.bud-facts > div:last-child { border-bottom:1px solid rgba(140,90,43,.16) }
.bud-facts > div:last-child dt { color:var(--brown) }
.bud-facts > div:last-child dd { font-family:var(--font-h); font-weight:400; font-size:1.22rem; color:var(--brown) }
.bud-type .btn--ghost { align-self:flex-start; margin-top:auto }
.bud-types__note { margin-top:30px; color:var(--willow); font-size:.95rem; max-width:64ch }
@media (max-width:760px){ .grid-2.bud-types__grid { grid-template-columns:1fr } }

/* ── Task 5: S4 П'ять будинків (warm house cards + ornament accent) ── */
.bud-houses .kicker { color:var(--brown); display:inline-flex; align-items:center; gap:.7em }
.bud-houses .kicker::before { content:''; width:30px; height:1px; background:currentColor; opacity:.55 }
.bud-houses h2 { max-width:18ch; margin-top:clamp(18px,1.8vw,24px) }
.bud-house-group { font-family:var(--font-b); font-size:.74rem; letter-spacing:var(--track-label); text-transform:uppercase;
  color:var(--brown); font-weight:600; margin:clamp(36px,5vw,56px) 0 18px; padding-bottom:10px; border-bottom:1px solid rgba(140,90,43,.22) }
.bud-houses__grid { display:grid; gap:24px; grid-template-columns:repeat(2,1fr) }
.bud-houses__grid--3 { grid-template-columns:repeat(3,1fr) }
.bud-house { position:relative; background:var(--paper); border-radius:8px; overflow:hidden; display:flex; flex-direction:column;
  box-shadow:var(--shadow-card), var(--edge-card);
  transition:transform .4s var(--ease-out), box-shadow .4s var(--ease-out) }
.bud-house:hover { transform:translateY(-4px); box-shadow:0 18px 50px -30px rgba(25,26,24,.5) }
.bud-house picture { display:block; aspect-ratio:16/11; overflow:hidden; background:var(--sand) }
.bud-house img { width:100%; height:100%; object-fit:cover; transition:transform var(--dur-zoom) var(--ease-out) }
.bud-house:hover img { transform:scale(1.04) }
.bud-house__stripe { display:block; height:5px; background:var(--house) }
/* орнамент-емблема: малий вертикальний знак у кольорі будинку, локап із назвою (НЕ на фото) */
.bud-house__head { display:flex; align-items:center; gap:11px; margin-bottom:2px }
.bud-house__orn { flex:none; width:18px; height:42px;
  background:var(--house); -webkit-mask:var(--orn) no-repeat center/contain; mask:var(--orn) no-repeat center/contain }
.bud-house__body { padding:14px 20px 20px; display:flex; flex-direction:column; gap:6px; flex:1 }
.bud-house__body h4 { font-family:var(--font-h); font-weight:400; font-size:1.35rem; line-height:1 }
.bud-house__body > p { color:var(--ink-soft); font-size:.92rem }
.bud-house .house__meta { color:var(--willow); font-size:.72rem; letter-spacing:.06em; text-transform:uppercase }
.bud-house .btn--ghost { align-self:flex-start; margin-top:auto }
.bud-houses__note { margin-top:24px; color:var(--willow); font-size:.9rem; max-width:64ch }
@media (max-width:900px){ .bud-houses__grid, .bud-houses__grid--3 { grid-template-columns:1fr 1fr } }
@media (max-width:600px){ .bud-houses__grid, .bud-houses__grid--3 { grid-template-columns:1fr } }
@media (prefers-reduced-motion:reduce){ .bud-house, .bud-house img { transition:none } .bud-house:hover{transform:none} .bud-house:hover img{transform:none} }

/* ── Task 6: S5 Деталі (amenities list + GEO fact-block) ── */
.bud-glance { background:var(--paper) }
.bud-glance .kicker { color:var(--brown); display:inline-flex; align-items:center; gap:.7em }
.bud-glance .kicker::before { content:''; width:30px; height:1px; background:currentColor; opacity:.55 }
.bud-glance h2 { max-width:18ch; margin-top:clamp(18px,1.8vw,24px) }
.bud-glance__included { list-style:none; padding:0; margin:28px 0 clamp(40px,5vw,64px);
  display:grid; grid-template-columns:repeat(auto-fit,minmax(210px,1fr)); gap:0 clamp(28px,4vw,56px) }
.bud-glance__included li { padding:13px 0 13px 22px; position:relative; color:var(--ink-soft); border-top:1px solid rgba(140,90,43,.14) }
.bud-glance__included li::before { content:''; position:absolute; left:0; top:1.2em; width:6px; height:6px; border-radius:50%; background:var(--brown) }
.bud-facts--wide { display:grid; grid-template-columns:repeat(3,1fr); gap:0 clamp(28px,4vw,56px); border-top:2px solid rgba(140,90,43,.22); margin-top:4px }
.bud-facts--wide > div { display:block; padding:18px 0; border-top:1px solid rgba(140,90,43,.14) }
.bud-facts--wide dt { color:var(--willow); font-size:.72rem; letter-spacing:.1em; text-transform:uppercase; margin-bottom:7px }
.bud-facts--wide dd { margin:0; font-weight:600; font-size:1.06rem; line-height:1.4; font-variant-numeric:tabular-nums }
@media (max-width:880px){ .bud-facts--wide { grid-template-columns:repeat(2,1fr) } }
@media (max-width:760px){ .bud-facts--wide { grid-template-columns:1fr } }

/* ── Task 7: FAQ (S6) + Final CTA (S7) ── */
.faq .faq__item { border-top:1px solid rgba(140,90,43,.18) }
.faq .faq__item:last-of-type { border-bottom:1px solid rgba(140,90,43,.18) }
.bud-final { position:relative; overflow:hidden; background:var(--ink); color:var(--ecru); text-align:center; padding:clamp(96px,14vh,140px) 24px }
.bud-final::before { content:''; position:absolute; width:min(60vw,640px); height:min(60vw,640px); border-radius:50%;
  border:clamp(32px,5vw,64px) solid var(--brown); opacity:.16; left:50%; top:-32%; transform:translateX(-50%); pointer-events:none }
.bud-final .wrap { position:relative; z-index:1 }
.bud-final h2 { color:var(--ecru); max-width:16ch; margin-inline:auto; font-size:clamp(2rem,4vw,3.2rem) }
.bud-final p { margin:16px 0 14px; color:rgba(247,243,236,.85); font-size:1.1rem }
