/* GIFT 2026-10-25: страницы подарка */
@font-face{font-family:"Manrope";font-style:normal;font-weight:200 800;font-display:swap;src:url("/assets/fonts/manrope-cyrillic.woff2") format("woff2");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}
@font-face{font-family:"Manrope";font-style:normal;font-weight:200 800;font-display:swap;src:url("/assets/fonts/manrope-latin.woff2") format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+20BD,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
:root{--pink:#ff2d8d;--lime:#D9F44A;--ink:#1a1a1a;--gray:#6b6b6b;--quiet:#8f8f8f;--soft:#f7f7f7;--line:#e6e6e6;--bad:#d4145a}
*{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{margin:0;background:#fff;color:var(--ink);font-family:"Manrope",system-ui,-apple-system,"Segoe UI",sans-serif;font-size:16px;line-height:1.45;-webkit-font-smoothing:antialiased}
a{color:inherit}
[hidden]{display:none!important}
.g-wrap{width:100%;max-width:520px;margin:0 auto;padding:0 20px}
.g-head{padding:18px 0 6px}
.g-logo{display:inline-block;color:var(--ink);line-height:0}
.g-logo svg{height:22px;width:auto}

.g-hero{padding:26px 0 8px}
.g-title{margin:0;font-size:clamp(38px,11vw,50px);font-weight:300;line-height:1.06;letter-spacing:-.03em}
.g-sub{margin:12px 0 0;font-size:17px;color:var(--gray)}
.g-self{margin:14px 0 0;font-size:14px;color:var(--quiet)}
.g-self a{color:var(--gray);text-underline-offset:2px}

.g-step{padding:26px 0 0}
.g-h2{margin:0 0 14px;font-size:20px;font-weight:600;letter-spacing:-.01em}
.g-note{margin:0 0 12px;font-size:14px;color:var(--gray)}

/* выбор открытки */
.g-cards{display:flex;gap:10px;overflow-x:auto;scroll-snap-type:x mandatory;margin:0 -20px;padding:4px 20px 10px;-webkit-overflow-scrolling:touch;scrollbar-width:none}
.g-cards::-webkit-scrollbar{display:none}
.g-thumb{flex:0 0 auto;width:104px;scroll-snap-align:start;border:0;background:none;padding:0;font:inherit;color:inherit;cursor:pointer;text-align:left}
.g-thumb canvas{display:block;width:104px;height:auto;aspect-ratio:600/840;border-radius:12px;box-shadow:0 0 0 1px var(--line);transition:box-shadow .15s ease,transform .15s ease}
.g-thumb span{display:block;margin-top:7px;font-size:13px;line-height:1.3;color:var(--gray)}
.g-thumb[aria-checked="true"] canvas{box-shadow:0 0 0 3px var(--pink)}
.g-thumb[aria-checked="true"] span{color:var(--ink);font-weight:600}
.g-thumb:focus-visible{outline:none}
.g-thumb:focus-visible canvas{box-shadow:0 0 0 3px var(--ink)}

.g-preview{display:block;width:100%;max-width:400px;height:auto;aspect-ratio:600/840;margin:16px auto 0;border-radius:20px;box-shadow:0 18px 40px -22px rgba(26,26,26,.35),0 0 0 1px rgba(26,26,26,.06)}

/* срок */
.g-terms{display:grid;gap:10px}
.g-term{display:flex;align-items:center;justify-content:space-between;gap:12px;width:100%;min-height:58px;padding:14px 18px;border:0;border-radius:18px;background:var(--soft);font:inherit;color:inherit;cursor:pointer;text-align:left;box-shadow:inset 0 0 0 2px transparent;transition:box-shadow .15s ease}
.g-term b{font-weight:600;font-size:17px}
.g-term small{display:block;font-size:13px;color:var(--gray);margin-top:2px}
.g-term .g-price{font-weight:600;font-size:17px;white-space:nowrap}
.g-term[aria-checked="true"]{box-shadow:inset 0 0 0 2px var(--pink);background:#fff}
.rub{font-size:.8em}

/* поля */
.g-field{display:block;margin:0 0 14px}
.g-field > span{display:block;margin:0 0 6px;font-size:14px;font-weight:600}
.g-input,.g-area{display:block;width:100%;padding:15px 16px;border:1px solid var(--line);border-radius:16px;background:#fff;font:inherit;font-size:17px;color:var(--ink);outline:none;transition:border-color .15s ease}
.g-area{resize:none;min-height:84px;line-height:1.4}
.g-input:focus,.g-area:focus{border-color:var(--ink)}
.g-input::placeholder,.g-area::placeholder{color:#b3b3b3}
.g-count{display:block;margin-top:5px;font-size:12px;color:var(--quiet);text-align:right}
.g-code{text-transform:uppercase;letter-spacing:.06em;font-weight:600;font-size:20px;text-align:center}
.g-code::placeholder{letter-spacing:.06em;font-weight:400}

.g-consents{display:grid;gap:10px;margin:16px 0 0}
.g-consent{position:relative;display:grid;grid-template-columns:20px 1fr;gap:10px;align-items:start;cursor:pointer;color:var(--gray);font-size:13px;line-height:1.45}
.g-consent input{position:absolute;width:1px;height:1px;opacity:0;pointer-events:none}
.g-box{width:20px;height:20px;margin-top:1px;border:1px solid #cfcfcf;border-radius:5px;background:#fff}
.g-consent input:checked + .g-box{background:var(--ink);border-color:var(--ink)}
.g-consent input:checked + .g-box::after{content:"";display:block;width:5px;height:9px;margin:3px 0 0 6px;border-right:2px solid #fff;border-bottom:2px solid #fff;transform:rotate(45deg)}
.g-consent input:focus-visible + .g-box{outline:2px solid var(--ink);outline-offset:2px}
.g-consent a{color:inherit;text-underline-offset:2px}
.g-consent.missing .g-box{border-color:var(--bad)}

.g-error{min-height:0;margin:12px 0 0;font-size:14px;color:var(--bad)}
.g-error:empty{margin:0}

.g-btn{display:flex;align-items:center;justify-content:center;gap:10px;width:100%;min-height:56px;margin:18px 0 0;padding:14px 20px;border:0;border-radius:18px;background:var(--pink);color:#fff;font:inherit;font-size:17px;font-weight:600;text-decoration:none;cursor:pointer;transition:transform .1s ease,opacity .15s ease}
.g-btn:active{transform:scale(.985)}
.g-btn:disabled{opacity:.5;cursor:default}
.g-btn-light{background:var(--soft);color:var(--ink)}
.g-btn + .g-btn{margin-top:10px}
.g-center{text-align:center}
.g-once{margin:12px 0 0;font-size:13px;color:var(--quiet);text-align:center}

.g-alt{display:grid;gap:8px;margin:34px 0 0;padding:20px;border-radius:20px;background:var(--soft);font-size:15px}
.g-alt a{color:var(--ink);font-weight:600;text-underline-offset:3px}
.g-alt p{margin:0;color:var(--gray)}

.g-tip{margin:16px 0 0;padding:16px 18px;border-radius:18px;background:var(--soft);font-size:14px;color:var(--gray)}
.g-tip b{color:var(--ink);font-weight:600}

.g-codebox{margin:18px 0 0;padding:18px;border-radius:20px;background:var(--lime);text-align:center}
.g-codebox small{display:block;font-size:13px}
.g-codebox strong{display:block;margin:4px 0;font-size:26px;font-weight:700;letter-spacing:.04em;user-select:all}

.g-chip{display:inline-block;margin:14px 0 0;padding:7px 14px;border-radius:999px;background:var(--lime);font-size:14px;font-weight:600}

.g-done{padding:30px 0 0;text-align:center}
.g-dot{display:block;width:64px;height:64px;margin:0 auto 18px;border-radius:50%;background:var(--pink);animation:g-pop .6s cubic-bezier(.2,1.6,.4,1) both}
@keyframes g-pop{0%{transform:scale(0)}60%{transform:scale(1.25)}100%{transform:scale(1)}}
@media (prefers-reduced-motion:reduce){.g-dot{animation:none}}

.g-foot{margin:44px 0 0;padding:22px 0 34px;border-top:1px solid #f0f0f0;font-size:14px;color:var(--gray)}
.g-foot p{margin:0}
.g-foot a{color:var(--ink);text-underline-offset:2px}

.g-wait{padding:40px 0 0;text-align:center}
.g-loader{width:56px;height:56px;margin:0 auto 18px;border-radius:50%;border:5px solid var(--soft);border-top-color:var(--pink);animation:g-spin 1s linear infinite}
@keyframes g-spin{to{transform:rotate(360deg)}}
