:root{--blush-50:#fdf6f5;--blush-100:#f9e9e8;--blush-200:#f1d4d2;--peach-300:#f0b6a6;--rose-400:#e08c93;--wine-600:#b0474f;--wine-700:#8e3139;--ink-900:#1f1a1b;--ink-600:#5e5456;--ink-400:#8f8486;--line:#1f1a1b1f;--line-strong:#1f1a1b38;--sage-500:#5e8576;--cream:#fffdfb;--accent:var(--wine-600);--petal:#f2b8b5;--font-display:"Playfair Display Variable", "Playfair Display", Georgia, serif;--font-accent:"Cormorant Garamond", "Playfair Display Variable", Georgia, serif;--font-body:"Manrope Variable", "Manrope", system-ui, -apple-system, "Segoe UI", sans-serif;--font-hand:"Caveat Variable", "Caveat", cursive;--fs-h1:clamp(2.75rem, 1.6rem + 4.4vw, 6rem);--fs-h2:clamp(2.125rem, 1.4rem + 2.8vw, 4rem);--fs-h3:clamp(1.375rem, 1.15rem + .8vw, 1.875rem);--fs-lead:clamp(1.0625rem, 1rem + .3vw, 1.25rem);--fs-body:1rem;--fs-small:.875rem;--fs-xs:.75rem;--ease-out:cubic-bezier(.16, 1, .3, 1);--ease-in-out:cubic-bezier(.65, 0, .35, 1);--ease-back:cubic-bezier(.34, 1.56, .64, 1);--t-fast:.2s;--t-med:.45s;--t-slow:.8s;--r-xl:32px;--r-lg:24px;--r-md:20px;--r-sm:12px;--r-pill:999px;--shadow-soft:0 30px 60px -20px #8e313940;--shadow-card:0 20px 40px -24px #1f1a1b40;--shadow-pop:0 24px 60px -12px #1f1a1b47;--container:1440px;--gutter:clamp(20px, 4.5vw, 64px);--header-h:84px;--announce-h:34px;--frame:0px}@media (max-width:1023px){:root{--header-h:64px}}.season-autumn{--petal:#e9a487}.season-winter{--petal:#f4eeee}.season-spring{--petal:#f6c1c5}.season-summer{--petal:#f3a9b0}.product-page{padding-top:clamp(16px,2vw,28px)}.product-layout{gap:clamp(28px,4vw,72px);margin-top:20px;display:grid}@media (min-width:1024px){.product-layout{grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);align-items:start}}.gallery{min-width:0;position:relative}.gallery__track{gap:12px;display:grid}@media (min-width:1024px){.gallery__track{grid-template-columns:1fr 1fr}}@media (max-width:1023px){.gallery__track{scroll-snap-type:x mandatory;scrollbar-width:none;margin-inline:calc(var(--gutter) * -1);padding-inline:var(--gutter);gap:10px;display:flex;overflow-x:auto}.gallery__track::-webkit-scrollbar{display:none}}.gallery__item{aspect-ratio:4/5;border-radius:var(--r-md);background:var(--blush-100);cursor:zoom-in;width:100%;display:block;position:relative;overflow:hidden}.gallery__item img{object-fit:cover;width:100%;height:100%;transition:transform 1.2s var(--ease-out)}@media (hover:hover) and (pointer:fine){.gallery__item:hover img{transform:scale(1.04)}}@media (min-width:1024px){.gallery__item:first-child,.gallery__item:nth-child(2):last-child{grid-column:1/-1}}@media (max-width:1023px){.gallery__item{scroll-snap-align:center;flex:none;width:86%}}.gallery__dots{justify-content:center;gap:6px;margin-top:14px;display:flex}@media (min-width:1024px){.gallery__dots{display:none}}.gallery__dot{background:var(--blush-200);width:6px;height:6px;transition:width var(--t-med) var(--ease-out), background var(--t-med);border-radius:3px}.gallery__dot.is-active{background:var(--wine-600);width:22px}.gallery__badges{gap:6px;display:flex;position:absolute;top:14px;left:14px}@media (max-width:1023px){.gallery__badges{left:0}}.pinfo{min-width:0}@media (min-width:1024px){.pinfo__sticky{top:calc(var(--header-h) + 20px);position:sticky}}.pinfo__top{justify-content:space-between;align-items:center;display:flex}.pinfo__top .kicker{margin:0}.pinfo__wish{box-shadow:inset 0 0 0 1px var(--line)}.pinfo__title{margin:14px 0 12px;font-size:clamp(2.5rem,1.6rem + 3vw,4.25rem);line-height:1}.pinfo__rating{font-size:var(--fs-small);color:var(--ink-600);align-items:center;gap:10px;display:inline-flex}.pinfo__stars{color:var(--wine-600);display:inline-flex}.pinfo__stars .icon{width:15px;height:15px}.pinfo__lead{color:var(--ink-600);font-size:var(--fs-lead);margin-top:14px}.pform{gap:26px;margin-top:26px;display:grid}.pform__price{flex-wrap:wrap;align-items:baseline;gap:6px 16px;display:flex}.pform__price .price{display:inline-block}.pform__stems{font-size:var(--fs-small);color:var(--ink-600)}.pform__label{font-size:var(--fs-xs);letter-spacing:.14em;text-transform:uppercase;color:var(--ink-600);margin-bottom:12px;padding:0;font-weight:600}.pform__actions{gap:10px;display:flex}.pform__actions .qty{flex:none;height:58px}.pform__add{flex:1;gap:8px;min-height:58px}.pform__total{opacity:.75;font-weight:500}.pform__quick{font-size:var(--fs-small);color:var(--ink-600);text-underline-offset:3px;justify-content:center;align-items:center;gap:8px;margin-top:-12px;padding:6px;text-decoration:underline;display:inline-flex}.pform__quick .icon{width:16px;height:16px;color:var(--wine-600)}@media (hover:hover) and (pointer:fine){.pform__quick:hover{color:var(--wine-600)}}.pform fieldset{border:0;min-width:0;margin:0;padding:0}.sizes__grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;display:grid}.size{cursor:pointer;position:relative}.size input{opacity:0;pointer-events:none;position:absolute}.size__box{border-radius:var(--r-sm);border:1px solid var(--line-strong);text-align:center;transition:border-color var(--t-fast), background var(--t-fast), transform var(--t-fast) var(--ease-out);gap:2px;padding:12px 10px;display:grid}.size__label{font-family:var(--font-display);font-size:1.375rem;line-height:1.1}.size__price{font-size:var(--fs-xs);font-weight:600}.size__stems{color:var(--ink-600);font-size:.6875rem}@media (hover:hover) and (pointer:fine){.size:hover .size__box{border-color:var(--ink-900)}}input:checked+.size__box{border-color:var(--wine-600);background:var(--cream);box-shadow:inset 0 0 0 1px var(--wine-600)}input:focus-visible+.size__box{outline:2px solid var(--wine-600);outline-offset:2px}.size.is-disabled{opacity:.4;cursor:not-allowed}.size.is-disabled .size__box{text-decoration:line-through}.size-scale{border-radius:var(--r-sm);background:var(--blush-100);align-items:center;gap:16px;margin-top:14px;padding:10px 16px;display:flex}.size-scale__svg{flex:none;width:120px;height:66px;overflow:visible}.size-scale__bouquet{fill:var(--rose-400)}.size-scale__bouquet circle:nth-child(odd){fill:var(--peach-300)}.size-scale__wrap{fill:var(--blush-200);stroke:var(--wine-600);stroke-width:1px}.size-scale__hand{fill:none;stroke:var(--ink-600);stroke-width:1.3px;stroke-linecap:round;stroke-linejoin:round}.size-scale__floor{stroke:var(--line-strong)}.size-scale__caption{font-size:var(--fs-small);color:var(--ink-600)}.addons__track{scrollbar-width:none;gap:10px;margin:-2px;padding:2px;display:flex;overflow-x:auto}.addons__track::-webkit-scrollbar{display:none}.addon{cursor:pointer;flex:none;width:124px;position:relative}.addon input{opacity:0;pointer-events:none;position:absolute}.addon__box{border-radius:var(--r-md);border:1px solid var(--line);background:var(--cream);transition:border-color var(--t-fast), box-shadow var(--t-fast);gap:4px;padding:8px 8px 12px;display:grid;position:relative}.addon__img{aspect-ratio:1;border-radius:12px;margin-bottom:4px;display:block;overflow:hidden}.addon__img img{object-fit:cover;width:100%;height:100%}.addon__name{font-size:var(--fs-xs);min-height:2.5em;line-height:1.25}.addon__price{font-size:var(--fs-xs);font-weight:700}.addon__check{background:var(--cream);width:26px;height:26px;box-shadow:inset 0 0 0 1px var(--line-strong);border-radius:50%;place-items:center;display:grid;position:absolute;top:14px;right:14px}.addon__check .icon{width:16px;height:16px;color:var(--cream);transition:transform var(--t-med) var(--ease-back);transform:scale(0)}input:checked+.addon__box{border-color:var(--wine-600);box-shadow:inset 0 0 0 1px var(--wine-600)}input:checked+.addon__box .addon__check{background:var(--wine-600);box-shadow:none}input:checked+.addon__box .addon__check .icon{transform:none}input:focus-visible+.addon__box{outline:2px solid var(--wine-600);outline-offset:2px}.postcard{border-radius:var(--r-md);background:var(--blush-100);padding:18px}.postcard__body{gap:14px;margin-top:18px;display:grid}.postcard__preview{perspective:900px}.postcard__card{min-height:150px;transform-style:preserve-3d;background:#fffaf3 repeating-linear-gradient(#0000 0 31px,#b0474f14 31px 32px);border-radius:6px;padding:22px 26px 34px;position:relative;box-shadow:0 18px 30px -18px #1f1a1b59,inset 0 0 0 1px #b0474f14}.postcard__stamp{border:1px dashed #b0474f66;border-radius:3px;width:46px;height:54px;padding:4px;position:absolute;top:12px;right:14px}.postcard__stamp .lineart{opacity:.5;color:var(--wine-600)}.postcard__text{max-width:calc(100% - 60px);font-family:var(--font-hand);color:#2a3b6e;white-space:pre-wrap;overflow-wrap:anywhere;font-size:1.625rem;line-height:32px}.postcard__text.is-empty{color:#2a3b6e59}.postcard__sign{font-family:var(--font-display);color:var(--wine-600);font-size:.75rem;font-weight:700;position:absolute;bottom:10px;right:22px}.postcard__meta{justify-content:space-between;align-items:center;gap:12px;display:flex}.postcard__ideas{scrollbar-width:none;gap:6px;display:flex;overflow-x:auto}.postcard__count{font-size:var(--fs-xs);color:var(--ink-400);flex:none}.delivery-hint{border-radius:var(--r-sm);color:var(--sage-500);font-size:var(--fs-small);border:1px dashed #5e857680;align-items:center;gap:10px;padding:12px 16px;font-weight:600;display:flex}.delivery-hint .icon{flex:none}.guarantees{border-block:1px solid var(--line);gap:12px;margin-top:28px;padding:20px 0;display:grid}.guarantees li{font-size:var(--fs-small);color:var(--ink-600);align-items:center;gap:12px;display:flex}.guarantees strong{color:var(--ink-900);font-weight:600}.guarantees .icon{color:var(--wine-600);flex:none}.related{padding-bottom:0}.viewed__title{margin-bottom:40px}.container--narrow{max-width:860px}.reviews-block .woocommerce-Reviews-title,.reviews-block #reply-title{font-family:var(--font-display);font-size:var(--fs-h3);margin-bottom:24px;display:block}.reviews-block .commentlist{gap:16px;margin-bottom:40px;display:grid}.reviews-block .comment_container{border-radius:var(--r-md);background:var(--cream);gap:16px;padding:20px;display:flex}.reviews-block .avatar{border-radius:50%;width:48px;height:48px}.reviews-block .star-rating{color:var(--wine-600);font-size:.8125rem}.reviews-block .meta{font-size:var(--fs-small);color:var(--ink-600);margin:4px 0 8px}.reviews-block .comment-form{gap:16px;display:grid}.reviews-block .comment-form label{font-size:var(--fs-small);color:var(--ink-600);margin-bottom:6px;display:block}.reviews-block .comment-form input[type=text],.reviews-block .comment-form input[type=email],.reviews-block .comment-form textarea,.reviews-block .comment-form select{border:1px solid var(--line-strong);border-radius:var(--r-sm);background:var(--cream);width:100%;padding:14px 16px}.reviews-block .stars a{color:var(--wine-600);margin-right:6px}.reviews-block .form-submit input{border-radius:var(--r-pill);background:var(--wine-600);min-height:54px;color:var(--cream);letter-spacing:.1em;text-transform:uppercase;cursor:pointer;border:0;padding:0 30px;font-size:.8125rem;font-weight:600}.reviews-block .woocommerce-noreviews{color:var(--ink-600);margin-bottom:24px}.sticky-buy{z-index:72;left:10px;right:10px;bottom:calc(84px + env(safe-area-inset-bottom));background:var(--cream);box-shadow:var(--shadow-pop);transition:transform var(--t-med) var(--ease-out);border-radius:20px;align-items:center;gap:12px;padding:8px;display:flex;position:fixed;transform:translateY(160%)}.sticky-buy.is-visible{transform:none}@media (min-width:1024px){.sticky-buy{display:none}}.sticky-buy__img{border-radius:12px;flex:none;width:44px;height:54px;overflow:hidden}.sticky-buy__img img{object-fit:cover;width:100%;height:100%}.sticky-buy__info{flex:1;min-width:0;display:grid}.sticky-buy__name{font-family:var(--font-display);white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.sticky-buy__price{font-size:var(--fs-small);font-weight:700}.lightbox{z-index:1100;visibility:hidden;opacity:0;transition:opacity var(--t-med), visibility var(--t-med);cursor:zoom-out;background:#fdf6f5f5;place-items:center;display:grid;position:fixed;top:0;bottom:0;left:0;right:0;overflow:hidden}.lightbox.is-open{visibility:visible;opacity:1}.lightbox__img{object-fit:contain;border-radius:var(--r-md);width:auto;max-width:min(92vw,1100px);max-height:92vh;box-shadow:var(--shadow-pop)}.lightbox__close{z-index:1;background:var(--cream);position:absolute;top:16px;right:16px}.modal__result{font-size:var(--fs-small);color:var(--wine-600);min-height:1.4em}
