/* inner.css — салон, свадьба, политика, 404 */
.ihero{background:#f7f5f0;padding:64px 0 0;overflow:hidden}
.ihero__in{display:grid;grid-template-columns:5fr 7fr;gap:56px;align-items:end}
.ihero__txt{padding-bottom:72px}
.ihero__txt .eyebrow{margin-bottom:24px}
.ihero__txt .lead{margin:26px 0 26px}
.ihero__facts{list-style:none;margin:0 0 34px;padding:0;display:grid;gap:10px;font-size:16px;color:var(--ink-2)}
.ihero__facts li{padding-left:22px;position:relative}
.ihero__facts li::before{content:"";position:absolute;left:0;top:.7em;width:10px;height:1px;background:var(--plum)}
.ihero__cta{display:flex;gap:12px;flex-wrap:wrap}
.ihero__pic{margin:0;aspect-ratio:4/3;overflow:hidden;border-radius:4px 4px 0 0}
.ihero__pic img{width:100%;height:100%;object-fit:cover}

.facts{list-style:none;margin:0 0 48px;padding:0;display:grid;grid-template-columns:repeat(3,1fr);gap:40px}
.facts li{border-top:1px solid var(--line);padding-top:24px}
.facts b{display:block;font:500 56px/1 var(--serif);color:var(--blue);margin-bottom:14px}
.facts p{margin:0;font-size:18px;line-height:1.5}
.strip-photos{display:grid;grid-template-columns:repeat(4,1fr);gap:20px}
.strip-photos figure{margin:0;aspect-ratio:3/4;overflow:hidden;border-radius:4px}
.strip-photos img{width:100%;height:100%;object-fit:cover}
.photo-note{margin:14px 0 0;font-size:13px;color:var(--mute)}

.florist__in{display:grid;grid-template-columns:5fr 7fr;gap:64px;align-items:center}
.florist__pic{margin:0;aspect-ratio:3/4;overflow:hidden;border-radius:4px}
.florist__pic img{width:100%;height:100%;object-fit:cover}
.florist__txt .lead{margin:24px 0 32px}

.dost__lead{margin:-12px 0 40px}
.dost__grid{display:grid;grid-template-columns:7fr 5fr;gap:48px;align-items:start}
.zones{width:100%;border-collapse:collapse;font-size:16px}
.zones th{font:400 12px/1 var(--sans);letter-spacing:.14em;text-transform:uppercase;color:var(--mute);text-align:left;padding:0 0 14px;border-bottom:1px solid var(--ink)}
.zones td{padding:13px 0;border-bottom:1px solid var(--line)}
.zones td:first-child{font-weight:400}
.zones td:nth-child(2){font-weight:500}
.zones tr:first-child td{color:var(--plum)}
.rules{display:grid;gap:14px}
.rule-card{background:var(--paper-2);border-radius:4px;padding:22px 24px}
.rule-card b{display:block;font:500 22px/1.1 var(--serif);margin-bottom:8px}
.rule-card p{margin:0;font-size:15px;color:var(--ink-2)}
.dost__sub{margin:80px 0 28px}
.pay{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.pay__it{border-top:1px solid var(--ink);padding-top:20px}
.pay__it b{display:block;font:500 24px/1.1 var(--serif);margin-bottom:10px}
.pay__it p{margin:0;font-size:15px;color:var(--ink-2)}
.acc2 details{border-top:1px solid var(--line)}
.acc2 details:last-child{border-bottom:1px solid var(--line)}
.acc2 summary{list-style:none;cursor:pointer;display:flex;justify-content:space-between;align-items:center;padding:20px 0;font:500 24px/1.15 var(--serif)}
.acc2 summary::-webkit-details-marker{display:none}
.acc2 summary::after{content:"+";font:300 26px/1 var(--sans);color:var(--plum);transition:transform .4s var(--ease)}
.acc2 details[open] summary::after{transform:rotate(45deg)}
.acc2 p{margin:0 0 22px;max-width:52em;color:var(--ink-2)}
.acc2 a{border-bottom:1px solid var(--line)}

/* отзывы — как на главной */
.revs__head{align-items:center}
.revs__score{display:flex;align-items:center;gap:18px}
.revs__score b{font:500 96px/1 var(--serif);color:var(--plum)}
.revs__score span{font:400 13px/1.4 var(--sans);letter-spacing:.12em;text-transform:uppercase;color:var(--ink-2)}
.revs__grid{display:grid;grid-template-columns:repeat(3,1fr);gap:28px;margin-bottom:40px}
.rev{margin:0;background:#fff;border-radius:4px;padding:30px 30px 26px;display:flex;flex-direction:column;gap:16px}
.rev__stars{color:var(--pink);letter-spacing:.2em;font-size:15px}
.rev blockquote{margin:0;font:300 17px/1.55 var(--sans);color:var(--ink);flex:1}
.rev figcaption{display:grid;gap:4px;border-top:1px solid var(--line-2);padding-top:14px}
.rev figcaption b{font:500 15px/1 var(--sans)}
.rev figcaption span{font:400 13px/1 var(--sans);color:var(--mute)}

.contacts__in{display:grid;grid-template-columns:5fr 7fr;gap:56px;align-items:start}
.contacts dl{margin:32px 0 0;display:grid;grid-template-columns:150px 1fr;gap:16px 24px;font-size:16px}
.contacts dt{font:400 12px/1.6 var(--sans);letter-spacing:.14em;text-transform:uppercase;color:var(--mute)}
.contacts dd{margin:0}
.contacts dd a{border-bottom:1px solid var(--line)}
.contacts__map{aspect-ratio:4/3;border-radius:4px;overflow:hidden;background:var(--paper-2)}
.contacts__map iframe{width:100%;height:100%;border:0}

/* свадьба */
.wed-hero{position:relative;min-height:780px;overflow:hidden;background:#f7f0f2;display:grid;align-items:center}
.wed-hero canvas,.wed-hero .wed-still{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.wed-hero canvas{opacity:0;transition:opacity 1.2s}.wed-hero.gl canvas{opacity:1}.wed-hero.gl .wed-still{opacity:0}
.wed-hero::after{content:"";position:absolute;inset:0;z-index:1;background:linear-gradient(90deg,rgba(255,255,255,.86) 0,rgba(255,255,255,.55) 38%,rgba(255,255,255,0) 62%)}
.wed-hero__in{position:relative;z-index:2;display:grid;grid-template-columns:6fr 6fr;gap:48px;align-items:center;padding:72px var(--pad)}
.wed-hero__txt .lead{margin:24px 0 34px}
.wed-hero__pic{margin:0;aspect-ratio:3/4;max-height:640px;overflow:hidden;border-radius:4px;justify-self:end;width:min(100%,480px)}
.wed-hero__pic img{width:100%;height:100%;object-fit:cover}
.packs{display:grid;grid-template-columns:repeat(4,1fr);gap:22px}
.packs--3{grid-template-columns:repeat(3,1fr);margin-top:22px}
.pack{background:#fff;border:1px solid var(--line);border-radius:6px;padding:26px 24px;display:flex;flex-direction:column;gap:16px}
.pack__price{font:500 34px/1 var(--serif);color:var(--plum)}
.pack__name{font:400 12px/1 var(--sans);letter-spacing:.14em;text-transform:uppercase;color:var(--mute)}
.pack ul{list-style:none;margin:0;padding:0;display:grid;gap:8px;align-content:start;font-size:14px;color:var(--ink-2);flex:1}
.pack li{padding-left:16px;position:relative}
.pack li::before{content:"";position:absolute;left:0;top:.72em;width:6px;height:6px;border-radius:50%;background:var(--blush)}
.pack__pics{display:flex;gap:6px}
.pack__pics a{width:56px;height:56px;border-radius:4px;overflow:hidden;background:var(--paper-2)}
.pack__pics img{width:100%;height:100%;object-fit:contain;mix-blend-mode:multiply}
.pack__note{margin:22px 0 0;color:var(--ink-2);max-width:52em}
.svc{display:grid;grid-template-columns:repeat(2,1fr);gap:0 56px;list-style:none;margin:0;padding:0}
.svc li{display:flex;justify-content:space-between;gap:24px;border-bottom:1px solid var(--line);padding:16px 0;font-size:16px}
.svc li span:last-child{white-space:nowrap;font-weight:500;color:var(--plum)}
.live{display:grid;grid-template-columns:1fr 1fr;gap:28px;margin-bottom:64px}
.live figure{margin:0;overflow:hidden;border-radius:4px}
.live img{width:100%;height:100%;object-fit:cover}
.live figure:first-child{aspect-ratio:3/2}.live figure:last-child{aspect-ratio:3/2}
.live figcaption{font-size:13px;color:var(--mute);padding-top:10px}

/* политика и 404 */
.doc{max-width:860px;padding:64px 0 120px}
.doc h1{margin-bottom:32px}
.doc h2{font:500 28px/1.2 var(--serif);margin:48px 0 16px}
.doc p,.doc li{color:var(--ink-2)}
.nf{min-height:70vh;display:grid;place-items:center;text-align:center;padding:80px 0}
.nf b{display:block;font:500 180px/1 var(--serif);color:var(--blush)}
.nf .btns{display:flex;gap:12px;justify-content:center;margin-top:32px}
.pay__list{list-style:none;margin:8px 0 10px;padding:0;display:flex;flex-wrap:wrap;gap:6px 14px;font:500 14px/1.4 var(--sans);color:var(--ink)}
.pay__it p+p{margin-top:6px}

/* карта по щелчку: фото салона и адрес; iframe Яндекса грузится только по «Показать на карте» */
.contacts__map{position:relative}
.contacts__map>img{width:100%;height:100%;object-fit:cover}
.contacts__mapcard{position:absolute;left:24px;bottom:24px;right:24px;max-width:420px;background:#fff;border-radius:4px;padding:22px 24px;display:grid;gap:8px;box-shadow:0 12px 34px rgba(52,52,35,.14)}
.contacts__mapcard b{font:500 22px/1.2 var(--serif);color:var(--ink)}
.contacts__mapcard span{font:400 14px/1.45 var(--sans);color:var(--ink-2)}
.contacts__mapbtns{display:flex;align-items:center;gap:18px;margin-top:8px}
.contacts__map iframe{position:absolute;inset:0;z-index:2;width:100%;height:100%;border:0}

/* свадьба, раунд 2 — пакеты с крупным фото первой позиции и кнопкой «Обсудить пакет»; артикулы приглушены */
.pack{overflow:hidden}
.pack__hero{display:block;margin:-26px -24px 6px;aspect-ratio:4/3;background:var(--paper-2);overflow:hidden}
.pack__hero img{width:100%;height:100%;object-fit:cover;transition:transform .8s var(--ease)}
.pack:hover .pack__hero img{transform:scale(1.04)}
.pack small.art{font-size:12px;color:var(--mute);white-space:nowrap}
.pack__foot{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:4px}
.pack__foot .pack__pics a{width:52px;height:52px}
.pack__cta{margin-left:auto}
/* разделы свадебной флористики — справка без витрины */
.wsec__h{margin:64px 0 24px}
.wsec{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}
.wsec__it{background:#fff;border-radius:4px;padding:18px 20px;display:grid;gap:6px;align-content:start}
.wsec__it b{font:500 20px/1.2 var(--serif);color:var(--ink)}
.wsec__it span{font:400 13px/1.4 var(--sans);color:var(--mute)}
.wsec__cta{background:var(--blue);transition:transform .35s var(--ease)}
.wsec__cta:hover{transform:translateY(-3px)}
.wsec__cta b,.wsec__cta span{color:#fff}
.pack__foot{flex-direction:column;align-items:stretch;gap:12px}
.pack__cta{margin:0;width:100%;justify-content:center}
.pack__hero img{object-position:center 35%}

/* статьи — одна страница, текст клиента раскрывается на месте */
.stati{max-width:980px;padding:64px 0 120px}
.stati h1{margin:18px 0 20px}
.stati__lead{margin:0 0 44px}
.art{border-top:1px solid var(--line)}
.art:last-child{border-bottom:1px solid var(--line)}
.art summary{list-style:none;cursor:pointer;display:grid;grid-template-columns:110px minmax(0,1fr) 28px;gap:8px 24px;padding:24px 0;align-items:baseline}
.art summary::-webkit-details-marker{display:none}
.art__date{grid-row:1/3;font:400 12px/1.5 var(--sans);letter-spacing:.1em;color:var(--mute);font-variant-numeric:tabular-nums}
.art__t{font:500 26px/1.2 var(--serif);color:var(--ink)}
.art__lead{grid-column:2;font:300 15px/1.55 var(--sans);color:var(--ink-2)}
.art summary::after{content:"+";grid-column:3;grid-row:1;font:300 26px/1 var(--sans);color:var(--plum);transition:transform .4s var(--ease)}
.art[open] summary::after{transform:rotate(45deg)}
.art[open] .art__lead{display:none}
.art__body{padding:0 52px 30px 134px}
.art__body p{margin:0 0 14px;max-width:64ch;font:300 16px/1.7 var(--sans);color:var(--ink-2)}
.stati__more{margin-top:48px}

/* разделы свадебной флористики — кнопки, раскрывающие галерею раздела (раунд 2, «берём весь») */
.wsec__it{font:inherit;text-align:left;border:1px solid transparent;cursor:pointer;width:100%;transition:transform .35s var(--ease)}
button.wsec__it:hover{transform:translateY(-3px)}
.wsec__it[aria-expanded="true"]{border-color:var(--blue)}
.wsec__open{font:500 11px/1 var(--sans);font-style:normal;letter-spacing:.14em;text-transform:uppercase;color:var(--blue);margin-top:6px}
.wgal{margin-top:36px;scroll-margin-top:110px}
.wgal__head{display:flex;justify-content:space-between;align-items:baseline;gap:24px;margin-bottom:26px}
.wgal__head p{margin:0;font:300 15px/1.4 var(--sans);color:var(--ink-2)}
.wgal__more{margin-top:32px;text-align:center}

/* свадьба, раунд 3 — портфолио работ вместо витрины: квадратные фото, имя, «Обсудить»; артикулы обычным текстом */
.pack small.art{font-size:inherit;color:inherit}
.wtile{display:grid;gap:12px;align-content:start}
.wtile__img{display:block;aspect-ratio:1/1;overflow:hidden;border-radius:4px;background:var(--paper-2)}
.wtile__img img{width:100%;height:100%;object-fit:cover;transition:transform .8s var(--ease)}
.wtile:hover .wtile__img img{transform:scale(1.04)}
.wtile__cap{display:flex;justify-content:space-between;align-items:baseline;gap:14px;font:400 15px/1.35 var(--sans)}
.wtile__cap a:first-child{color:var(--ink)}
.wtile__ask{flex:none;font:500 11px/1 var(--sans);letter-spacing:.14em;text-transform:uppercase;color:var(--blue);border-bottom:1px solid currentColor;padding-bottom:3px}
/* прайс свадьбы строками клиента: строка переносится целиком, цена выделена внутри неё */
.svc--lines li{display:block}
.svc--lines li span:last-child{white-space:normal;font-weight:400;color:var(--ink)}
.svc--lines li b{font-weight:500;color:var(--plum);white-space:nowrap}
