/* CONTENT-08: continue the accepted light, spacious layout. */
.company-intro-grid{display:grid;grid-template-columns:minmax(0,43fr) minmax(0,57fr);gap:clamp(35px,5vw,80px);align-items:center}
.company-intro figure{position:relative;aspect-ratio:4/3;overflow:hidden;border-radius:28px;margin:0;background:var(--sage)}
.company-intro figure img{width:100%;height:100%;object-fit:cover}
.company-intro figcaption{position:absolute;bottom:18px;left:22px;font-size:12px;background:#fffffff0;padding:6px 11px;border-radius:14px}
.company-intro h2{font-size:clamp(32px,3.5vw,51px);line-height:1.12;white-space:pre-line;text-wrap:balance}
.company-intro-text{font-size:19px;line-height:1.65;color:var(--muted);margin:24px 0}.company-intro .benefits{margin-top:36px;padding-top:28px;border-top:1px solid var(--line)}
.company-intro .benefits h3{font-size:20px}.company-intro .benefits p{font-size:16px}
/* The photo reserves its intrinsic height, including in hidden apartment panels. */
.kit-photo,#offer-light .special-image{aspect-ratio:4/3;height:auto;flex-shrink:0;position:relative;overflow:hidden}
.kit-photo>.offer-photo-link,#offer-light .special-image>.offer-photo-link{display:block;width:100%;height:100%;position:absolute;inset:0}
.offer-photo-link img{display:block;width:100%;height:100%;max-height:none;object-fit:cover;object-position:var(--crop-x,50%) var(--crop-y,50%)}
.kit-photo figcaption,#offer-light .special-image figcaption{pointer-events:none}
.offer-photo-link:focus-visible{outline:3px solid var(--green);outline-offset:-5px;border-radius:24px}
.offer-photo-retry{position:absolute;inset:25% 10% auto;padding:18px;border:1px solid var(--line);border-radius:16px;background:#f5f8ef;color:var(--green-dark);font:inherit;font-size:15px;cursor:pointer;min-height:48px}
.offer-aside .offer-photo-link{display:block;aspect-ratio:4/3;overflow:hidden;border-radius:18px}.offer-aside .offer-photo-link img{width:100%;height:100%;object-fit:contain;background:var(--warm)}
.offer-aside figure{position:relative}.kit-image-note{font-size:13px;line-height:1.55;color:var(--muted);margin-top:14px}.kit-selection-note{font-size:15px;line-height:1.55;margin-top:12px;color:var(--ink)}
.kit-body>.kit-selection-note,.kit-body>.kit-image-note{padding-bottom:8px}
.selection-current{font-size:15px;color:var(--green-dark);margin:0 0 22px;min-height:24px}
.kit-card.is-selected,#offer-light.is-selected{outline:2px solid var(--green);outline-offset:4px}.kit-card.is-selected .kit-apartment:after{content:' · Выбран'}
/* PACKAGE-UI-14: content determines card height; one action stack sits at its foot. */
.kit-body>h3,.kit-body>.kit-subtitle,.kit-body>.kit-apartment{min-height:0}
.offer-actions{display:flex;flex-direction:column;align-items:stretch;gap:10px;margin-top:auto;padding-top:20px;width:100%;min-width:0}
.offer-actions>a{display:flex;align-items:center;justify-content:space-between;gap:12px;min-width:0;min-height:44px;line-height:1.4;box-sizing:border-box;font-size:16px}
.offer-actions>a>[aria-hidden]{flex:none}
.offer-actions .offer-action-label{min-width:0;font:inherit;line-height:inherit;text-align:left}
.offer-actions>.text-link{border-bottom:0}
.offer-actions>.view-composition{margin:0;padding:14px 0;border-top:1px solid #e3ebe1}
.offer-actions>.button{width:100%;height:auto;min-height:52px;margin:0;padding:14px 18px;font-size:15px}
.production-grid{grid-template-columns:minmax(0,1fr) minmax(0,500px);gap:clamp(35px,5vw,80px)}
.production-video-link{font-size:14px;margin-top:16px;display:inline-flex;min-height:44px;align-items:center}
.production-facts{margin:24px 0}.production-facts>div{padding-block:14px;border-top:1px solid var(--line)}.production-facts dt{font-weight:700;font-size:16px;margin-bottom:6px}.production-facts dd{margin:0;color:var(--muted);font-size:16px;line-height:1.6}
.production-video-error{font-size:14px;color:var(--ink);margin-top:10px}.project-story{margin-top:24px}.project-story h3{font-size:23px;margin-bottom:12px}.company-detail>p{max-width:850px;font-size:18px;line-height:1.7}
.home .hero h1{font-size:clamp(39px,4.1vw,66px);max-width:980px;line-height:1.08;text-wrap:balance}.home .hero-copy{max-width:1000px}.home .hero-description{max-width:720px}.home .hero-inner{min-height:100svh}.home .hero-copy{margin-block:auto}

@media(max-width:1000px) and (min-width:701px){.production-grid{grid-template-columns:minmax(0,1fr) minmax(0,44fr);gap:30px}.kit-selection-note{font-size:14px}.company-intro-text{font-size:17px}}
@media(max-width:700px){.company-intro-grid{grid-template-columns:1fr;gap:25px}.company-intro-grid>div{grid-row:1}.company-intro h2{font-size:34px}.company-intro-text{font-size:17px;margin:20px 0}.company-intro figure{max-height:300px;aspect-ratio:4/3;border-radius:24px}.company-intro .benefits{margin-top:28px;padding-top:22px}.company-intro .benefits h3{font-size:19px}.company-intro .benefits p{font-size:15px}.kit-selection-note{font-size:15px}.kit-image-note{font-size:13px}.offer-photo-link img{object-position:var(--mobile-x,50%) var(--mobile-y,50%)}.offer-aside .offer-photo-link{aspect-ratio:4/3}.selection-current{font-size:14px;margin-bottom:20px}.production-grid{grid-template-columns:minmax(0,1fr);gap:26px}.production-media{width:100%}.production-media video,.about-production-media video{width:100%;max-width:none}.home .hero h1{font-size:clamp(33px,8.6vw,47px);line-height:1.08}.home .hero-copy{margin-top:20px;margin-bottom:30px}.home .hero-inner{padding-top:calc(var(--header-offset) + 32px);min-height:100svh}.home .hero-description{font-size:16px;line-height:1.5;margin-top:20px}.home .hero-actions{margin-top:24px}.home .hero-bottom{margin-top:auto}.home .hero-actions .button{min-height:48px}}
@media(max-width:360px){.home .hero h1{font-size:32px}.home .hero-inner{padding-top:calc(var(--header-offset) + 24px)}.company-intro h2{font-size:30px}}

.review-excerpt{border-top:1px solid var(--line);padding-top:19px;margin:22px 0}.review-excerpt p{font-size:19px;line-height:1.5;color:var(--ink)}.review-excerpt footer{margin-top:12px;font-size:13px;color:var(--muted)}.review-excerpt a{text-decoration:underline;text-underline-offset:3px;display:inline-flex;align-items:center;min-height:44px}
.dh-gallery-caption{position:absolute;bottom:0;left:0;right:0;padding:12px 16px;background:linear-gradient(transparent,#182b24bb);color:#fff;font-size:13px;line-height:1.4}
.room-extra{display:block;font-size:12px;line-height:1.5;color:#627267;margin:5px 0}
