/* Статичный подарочный блок; предыдущая анимационная идея сохранена отдельно. */
.gift-photo { display:grid; grid-template-columns: 1fr 1fr; background:#f2f2f2; color:#30431e; }
.gift-photo__image { position:relative; min-height:480px; }
.gift-photo__image img { position:absolute; inset:0; width:100%; height:100%; object-fit:cover; object-position:center 46%; }
.gift-photo__content { padding:clamp(32px,4vw,64px); align-self:center; justify-self:center; width:100%; max-width:780px; text-align:center; font:400 16px/1.5 'Jost',sans-serif; }
.gift-photo .gift-photo__content h2 { margin:0 0 22px; font:400 clamp(40px,3.6vw,60px)/1.02 'Forum',serif; letter-spacing:-.025em; text-transform:none; color:#30431e; text-wrap:balance; }
.gift-photo__content h2 span { display:block; }
.gift-photo__content p { margin:0 auto 18px; max-width:34em; }
.gift-photo__content strong { font-weight:500; }
.gift-photo__services { display:flex; flex-wrap:wrap; gap:8px 20px; list-style:none; padding:0; margin:0 0 20px; }
.gift-photo__services li { border-bottom:1px solid #30431e40; padding-bottom:5px; }
.gift-photo__closing { font-weight:500; }
.gift-photo__button { display:inline-flex; max-width:100%; gap:24px; align-items:center; justify-content:center; padding:16px 24px; border-radius:999px; background:#30431e; color:#fff; text-decoration:none; font-weight:500; }
.gift-photo__button span { font-size:22px; line-height:1; }
.gift-photo__button:hover { background:#496033; color:#fff; }
.gift-photo__button:focus-visible { outline:2px solid #30431e; outline-offset:4px; }
@media(max-width:700px) {
 .gift-photo { grid-template-columns:1fr; }
 .gift-photo__image { min-height:0; aspect-ratio: 4 / 3; }
 .gift-photo__image img { object-position:center 42%; }
 .gift-photo__content { padding:30px 24px 36px; }
 .gift-photo__button { gap:16px; padding-inline:20px; }
}

@media (max-width:700px) {
 .gift-photo__content { grid-row:1; }
 .gift-photo__image { grid-row:2; }
 .gift-photo .gift-photo__content h2 { text-align:center; }
}

/* Фото заполняет секцию без общих отступов section из темы. */
.home-release-20260924-page section.gift-photo { padding:0; }

/* Дополнительные 25 px сверху и снизу; фото растягивается вместе с секцией. */
.gift-photo__content { padding-top:calc(clamp(32px,4vw,64px) + 45px); padding-bottom:calc(clamp(32px,4vw,64px) + 45px); }
@media(max-width:700px) { .gift-photo__content { padding-top:75px; padding-bottom:81px; } }

/* Увеличение типографики секции на 2 px. */
.gift-photo__content { font-size:18px; }
.gift-photo .gift-photo__content h2 { font-size:calc(clamp(40px,3.6vw,60px) + 2px); }
.gift-photo__button span { font-size:24px; }

/* Мягкий блик на кнопке, один проход каждые три секунды. */
.home-release-20260924-page .gift-photo__button { position:relative; overflow:hidden; isolation:isolate; }
.home-release-20260924-page .gift-photo__button::after { content:''; position:absolute; inset:-50% auto -50% -60%; width:40%; background:linear-gradient(90deg,transparent,rgba(255,255,255,.28),transparent); transform:translateX(0) skewX(-22deg); pointer-events:none; animation:gift-button-shine 3s ease-in-out infinite; }
@keyframes gift-button-shine { 0%,65% { transform:translateX(0) skewX(-22deg); } 95%,100% { transform:translateX(450%) skewX(-22deg); } }
@media(prefers-reduced-motion:reduce) { .home-release-20260924-page .gift-photo__button::after { animation:none; display:none; } }

.gift-photo p { text-wrap:pretty; hyphens:none; word-break:normal; overflow-wrap:normal; }
.gift-photo h2, .gift-photo h2 span, .gift-photo dd, .gift-photo__recognition p { text-wrap:balance; hyphens:none; word-break:normal; }

.home-release-20260924-page .gift-photo__content { text-wrap:pretty; }
.home-release-20260924-page .gift-photo__content p { text-wrap:pretty; }
.home-release-20260924-page .gift-photo__content h2,
.home-release-20260924-page .gift-photo__closing,
.home-release-20260924-page .gift-photo__button { text-wrap:balance; }
