*,:before,:after{box-sizing:border-box}body{font-family:var(--font-body);color:var(--color-text);background:var(--color-bg);margin:0;line-height:1.6}[hidden]{display:none!important}img{max-width:100%;height:auto;display:block}a{color:var(--color-primary)}.button{border-radius:var(--radius);background:var(--color-primary);color:#fff;font:inherit;cursor:pointer;border:0;padding:.75rem 1.5rem;font-weight:600;text-decoration:none;display:inline-block}.button:disabled{opacity:.6;cursor:wait}.button--secondary{background:var(--color-surface);color:var(--color-text)}.link-button{color:var(--color-muted);font:inherit;cursor:pointer;background:0 0;border:0;text-decoration:underline}.visually-hidden{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.block-hero{align-items:center;gap:2rem;display:grid}@media (width>=768px){.block-hero:has(img){grid-template-columns:1fr 1fr}}.block-hero h1{margin:0 0 1rem;font-size:clamp(2rem,5vw,3.5rem);line-height:1.1}.block-hero p{color:var(--color-muted);font-size:1.25rem}.block-hero img{border-radius:var(--radius)}.block-media figcaption{color:var(--color-muted);margin-top:.5rem;font-size:.9rem}.block-cta{text-align:center}.block-cta__links{flex-wrap:wrap;justify-content:center;gap:1rem;margin-top:1.5rem;display:flex}.info-modules{grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:1.5rem;display:grid}.info-module{background:var(--color-surface);border-radius:var(--radius);overflow:hidden}.info-module__body{padding:1.5rem}.info-module__body h3{margin:0 0 .25rem}.info-module__subtitle{color:var(--color-muted);margin:0 0 1rem}.reviews{grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:1.5rem;display:grid}.review{background:var(--color-surface);border-radius:var(--radius);overflow:hidden}.review__body{padding:1.5rem}.review__body h3{margin:.5rem 0}.review__stars{color:#f5a623;letter-spacing:.1em}.review__stars-off{color:var(--color-muted);opacity:.4}.review__author{color:var(--color-muted);margin-bottom:0;font-weight:600}.form{max-width:640px}.form__fields{flex-wrap:wrap;gap:1rem;margin-bottom:1.5rem;display:flex}.form__field{border:0;flex-direction:column;flex:100%;gap:.25rem;margin:0;padding:0;display:flex}.form__choice{align-items:center;gap:.5rem;display:flex}.form input:not([type=checkbox]):not([type=radio]),.form select,.form textarea{font:inherit;border-radius:var(--radius);border:1px solid #d1d5db;padding:.6rem .75rem}.form__error{color:#b91c1c}.not-found{text-align:center}.nav__list,.nav__submenu{margin:0;padding:0;list-style:none}.nav__list{flex-wrap:wrap;gap:.25rem 1.5rem;display:flex}.nav__item{position:relative}.nav__link{color:var(--color-text);padding:.5rem 0;text-decoration:none;display:block}.nav__link:hover,.nav__link[aria-current=page]{color:var(--color-primary)}.nav__link[aria-current=page]{font-weight:600}.nav__item--has-children>.nav__link:after{content:" ▾";font-size:.75em}.nav__submenu{z-index:10;background:var(--color-bg);border-radius:var(--radius);min-width:200px;padding:.5rem 1rem;display:none;position:absolute;top:100%;left:-1rem;box-shadow:0 8px 24px #0000001f}.nav__item:hover>.nav__submenu,.nav__item:focus-within>.nav__submenu{display:block}.nav--footer .nav__submenu{box-shadow:none;min-width:0;padding:0;display:block;position:static}.nav--footer .nav__item--has-children>.nav__link:after{content:none}.shop,.product-page,.cart{--store-line:color-mix(in srgb, var(--color-text) 12%, transparent)}.button--small{padding:.5rem 1rem;font-size:.9rem}.breadcrumbs ol{color:var(--color-muted);flex-wrap:wrap;gap:.25rem;margin:0 0 1.5rem;padding:0;font-size:.9rem;list-style:none;display:flex}.breadcrumbs li+li:before{content:"›";margin-right:.25rem}.breadcrumbs a{color:inherit}.breadcrumbs [aria-current]{color:var(--color-text)}.shop__header h1{margin-top:0}.shop__layout{gap:1.5rem;display:grid}@media (width>=768px){.shop__layout{grid-template-columns:240px 1fr;align-items:start;gap:2.5rem}.shop-filters{position:sticky;top:1rem}}.shop__layout>*{min-width:0}.shop-filters{gap:1rem;display:grid}.shop-filters input:not([type=checkbox]):not([type=radio]){border:1px solid var(--store-line);border-radius:var(--radius);background:var(--color-bg);width:100%;color:var(--color-text);font:inherit;padding:.6rem .8rem}.shop-filters__panel{border:1px solid var(--store-line);border-radius:var(--radius);padding:0 1rem}.shop-filters__panel>summary{cursor:pointer;align-items:center;gap:.5rem;padding:.85rem 0;font-weight:700;display:flex}.shop-filters__count{background:var(--color-primary);color:#fff;border-radius:999px;place-items:center;min-width:1.4rem;height:1.4rem;padding:0 .35rem;font-size:.75rem;display:inline-grid}.shop-filters__group{border:0;border-top:1px solid var(--store-line);gap:.35rem;margin:0;padding:1rem 0;display:grid}.shop-filters__group legend{float:left;letter-spacing:.04em;text-transform:uppercase;width:100%;color:var(--color-muted);margin-bottom:.5rem;font-size:.8rem;font-weight:700}.shop-filters__choice,.shop-filters__check{cursor:pointer;align-items:center;gap:.6rem;padding:.3rem 0;display:flex}.shop-filters__choice input,.shop-filters__check input{accent-color:var(--color-primary);width:1.05rem;height:1.05rem}.shop-filters__choice:has(input:checked){color:var(--color-primary);font-weight:600}.shop-filters__price{grid-template-columns:1fr 1fr;gap:.5rem;display:grid}.shop-filters__price label{color:var(--color-muted);gap:.2rem;font-size:.85rem;display:grid}.shop-filters__actions{flex-wrap:wrap;align-items:center;gap:.75rem;padding:0 0 1rem;display:flex}html.js .shop-filters__apply{display:none}.shop__toolbar{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.75rem;margin-bottom:1rem;display:flex}.shop__count{color:var(--color-muted);margin:0}.shop__sort{align-items:center;gap:.5rem;font-size:.9rem;display:flex}.shop__sort select{border:1px solid var(--store-line);border-radius:var(--radius);background:var(--color-bg);color:var(--color-text);font:inherit;padding:.5rem .75rem}.shop__chips{flex-wrap:wrap;gap:.5rem;margin:0 0 1.25rem;padding:0;list-style:none;display:flex}.shop__chip{background:var(--color-surface);color:var(--color-text);border-radius:999px;align-items:center;gap:.4rem;padding:.3rem .8rem;font-size:.85rem;text-decoration:none;display:inline-flex}.shop__chip:hover{background:color-mix(in srgb, var(--color-primary) 15%, var(--color-surface))}.shop__empty{border:1px dashed var(--store-line);border-radius:var(--radius);text-align:center;color:var(--color-muted);padding:3rem 1rem}[data-shop-results][aria-busy=true] .product-grid{opacity:.5;transition:opacity .15s}.product-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:1.5rem 1rem;display:grid}@media (width>=640px){.product-grid{grid-template-columns:repeat(auto-fill,minmax(210px,1fr));gap:2rem 1.5rem}}.product-card{flex-direction:column;min-width:0;display:flex}.product-card__image{aspect-ratio:1;border-radius:var(--radius);background:var(--color-surface);display:block;position:relative;overflow:hidden}.product-card__image img{object-fit:cover;width:100%;height:100%;transition:transform .4s}.product-card__hover{opacity:0;transition:opacity .3s;position:absolute;inset:0}.product-card:hover .product-card__hover{opacity:1}.product-card:hover .product-card__image>img{transform:scale(1.04)}.product-card--sold-out .product-card__image img{opacity:.55}.product-card__badge{background:var(--color-primary);color:#fff;border-radius:999px;padding:.2rem .6rem;font-size:.75rem;font-weight:700;position:absolute;top:.6rem;left:.6rem}.product-card__badge--sold-out{background:var(--color-text)}.product-card__body{flex-direction:column;flex:1;gap:.25rem;padding-top:.75rem;display:flex}.product-card__category{letter-spacing:.04em;text-transform:uppercase;color:var(--color-muted);font-size:.75rem;font-weight:600}.product-card__title{margin:0;font-size:1rem;line-height:1.35}.product-card__title a{color:var(--color-text);text-decoration:none}.product-card__title a:hover{color:var(--color-primary)}.product-card__price,.product__price{color:var(--color-primary);margin:0;font-weight:700}.product-card__add{margin-top:auto;padding-top:.6rem}.product-card__add .button,.product-card__options{text-align:center;width:100%}.product-card__options{margin-top:auto;display:inline-block}.product-card__body>.product-card__options{margin-top:auto}.product-card__add .product__error{margin:0 0 .4rem;font-size:.8rem}.product{gap:2rem;display:grid}@media (width>=768px){.product{grid-template-columns:1.1fr 1fr;align-items:start;gap:3rem}.product__gallery{position:sticky;top:1rem}}.product>*{min-width:0}.product__main-image{aspect-ratio:1;border-radius:var(--radius);background:var(--color-surface);overflow:hidden}.product__main-image img,.product__no-image{object-fit:cover;width:100%;height:100%}.product__thumbs{scrollbar-width:thin;gap:.6rem;margin-top:.75rem;display:flex;overflow-x:auto}.product__thumb{aspect-ratio:1;border-radius:var(--radius);background:var(--color-surface);cursor:pointer;opacity:.7;border:2px solid #0000;flex:0 0 4.5rem;padding:0;overflow:hidden}.product__thumb[aria-pressed=true],.product__thumb:hover{border-color:var(--color-primary);opacity:1}.product__thumb img{object-fit:cover;width:100%;height:100%}.product__category{letter-spacing:.04em;text-transform:uppercase;color:var(--color-muted);margin:0 0 .25rem;font-size:.8rem;font-weight:600}.product__info h1{margin:0 0 .5rem}.product__price{font-size:1.75rem}.product__summary{color:var(--color-muted)}.product__buy{border:1px solid var(--store-line);border-radius:var(--radius);flex-direction:column;gap:1rem;margin:1.5rem 0;padding:1.25rem;display:flex}.product__variants{border:0;margin:0;padding:0}.product__variants legend{margin-bottom:.6rem;font-weight:700}.product__variant-list{grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:.5rem;display:grid}.variant-option{border:1px solid var(--store-line);border-radius:var(--radius);cursor:pointer;flex-direction:column;gap:.1rem;padding:.65rem .85rem;transition:border-color .15s,box-shadow .15s;display:flex;position:relative}.variant-option input{opacity:0;pointer-events:none;position:absolute}.variant-option:hover{border-color:var(--color-primary)}.variant-option:has(input:checked){border-color:var(--color-primary);box-shadow:0 0 0 1px var(--color-primary);background:color-mix(in srgb, var(--color-primary) 6%, transparent)}.variant-option:has(input:focus-visible){outline:2px solid var(--color-primary);outline-offset:2px}.variant-option__label{font-weight:600}.variant-option__price{color:var(--color-muted);font-size:.9rem}.variant-option--disabled{opacity:.45;cursor:not-allowed}.variant-option--disabled .variant-option__label{text-decoration:line-through}.variant-option__stock,.product__sold-out{color:#b91c1c;font-size:.8rem;font-weight:600}.product__stock{color:#15803d;margin:0;font-size:.95rem;font-weight:600}.product__stock:before{content:"● "}.product__stock--few{color:#b45309}.product__purchase{flex-wrap:wrap;gap:.75rem;display:flex}.product__add{flex:12rem}.product__secure,.checkout__secure{color:var(--color-muted);align-items:center;gap:.4rem;margin:0;font-size:.85rem;display:flex}.product__secure svg,.checkout__secure svg{flex-shrink:0;width:1rem;height:1rem}.product__description{border-top:1px solid var(--store-line);padding-top:.5rem}.product-related{margin-top:4rem}.stepper{border:1px solid var(--store-line);border-radius:var(--radius);background:var(--color-bg);align-items:stretch;display:inline-flex;overflow:hidden}.stepper__button{width:2.5rem;color:var(--color-text);cursor:pointer;background:0 0;border:0;font-size:1.2rem}.stepper__button:hover{background:var(--color-surface)}html:not(.js) .stepper__button{display:none}.stepper input{width:3.25rem;color:var(--color-text);font:inherit;text-align:center;-moz-appearance:textfield;background:0 0;border:0;padding:.55rem 0}.stepper input::-webkit-inner-spin-button,.stepper input::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.cart__header{flex-wrap:wrap;align-items:baseline;gap:.75rem;display:flex}.cart__header h1{margin-top:0}.cart__count{color:var(--color-muted)}.cart__empty{text-align:center;color:var(--color-muted);justify-items:center;gap:.25rem;padding:3rem 1rem;display:grid}.cart__empty svg{width:3.5rem;height:3.5rem;color:var(--color-primary);margin-bottom:.5rem}.cart__empty p{margin:0}.cart__empty-title{color:var(--color-text);font-size:1.25rem;font-weight:700}.cart__empty .button{margin-top:1rem}.cart__layout{gap:2rem;display:grid}@media (width>=1024px){.cart__layout{grid-template-columns:3fr 2fr;align-items:start}}.cart__layout>*{min-width:0}.cart__items{margin:0;padding:0;list-style:none}.cart-item{border-bottom:1px solid var(--store-line);grid-template-columns:5rem 1fr auto;align-items:start;gap:.5rem 1rem;padding:1.25rem 0;display:grid}.cart-item__image{aspect-ratio:1;border-radius:var(--radius);background:var(--color-surface);grid-row:span 2;overflow:hidden}.cart-item__image img{object-fit:cover;width:100%;height:100%}.cart-item__info{flex-direction:column;gap:.1rem;display:flex}.cart-item__title{color:var(--color-text);font-weight:600;text-decoration:none}.cart-item__title:hover{color:var(--color-primary)}.cart-item__variant,.cart-item__unit{color:var(--color-muted);font-size:.9rem}.cart-item__actions{flex-wrap:wrap;grid-column:2;align-items:center;gap:.5rem;display:flex}.cart-item__actions .button{padding:.45rem .9rem}.cart-item__remove{width:2.25rem;height:2.25rem;color:var(--color-muted);cursor:pointer;background:0 0;border:0;border-radius:999px;place-items:center;display:grid}.cart-item__remove:hover{color:#b91c1c;background:#b91c1c1a}.cart-item__remove svg{width:1.15rem;height:1.15rem}.cart-item__total{white-space:nowrap;grid-area:1/3}html.js .cart-item__update{display:none}.cart__continue{margin-top:1.25rem;font-weight:600;text-decoration:none;display:inline-block}.cart__aside{gap:1.25rem;display:grid}.cart-summary,.checkout{border-radius:var(--radius);background:var(--color-surface);padding:1.5rem}.cart-summary h2,.checkout h2{margin:0 0 1rem;font-size:1.25rem}.cart-summary__row{justify-content:space-between;gap:1rem;margin:0 0 .5rem;display:flex}.cart-summary__row--total{border-top:1px solid var(--store-line);margin:.75rem 0 0;padding-top:.75rem;font-size:1.25rem}.checkout{max-width:none}.checkout__step{border:0;margin:0 0 .5rem;padding:0}.checkout__step legend{margin-bottom:.75rem;font-weight:700}.checkout .form__fields{margin-bottom:1rem}.form__field--half{flex:calc(50% - .5rem)}.checkout input{width:100%}.checkout__pay{width:100%;margin-bottom:.75rem;padding-block:.9rem;font-size:1.05rem}.checkout__secure{justify-content:center}.cart[aria-busy=true] .cart__items,.cart[aria-busy=true] .cart-summary__total,[data-cart-drawer-body][aria-busy=true]{opacity:.5;transition:opacity .15s}.cart-drawer{--store-line:color-mix(in srgb, var(--color-text) 12%, transparent);background:var(--color-bg);width:min(26rem,100%);max-width:none;height:100%;max-height:none;color:var(--color-text);border:0;margin:0;padding:0;position:fixed;inset:0 0 0 auto;box-shadow:-10px 0 40px #0003}.cart-drawer[open]{animation:.25s ease-out cart-drawer-in}.cart-drawer::backdrop{background:#00000073}@keyframes cart-drawer-in{0%{transform:translate(100%)}}@media (prefers-reduced-motion:reduce){.cart-drawer[open]{animation:none}}html:has(.cart-drawer[open]){overflow:hidden}.cart-drawer__panel{flex-direction:column;height:100%;display:flex}.cart-drawer__header{border-bottom:1px solid var(--store-line);justify-content:space-between;align-items:center;padding:1rem 1.25rem;display:flex}.cart-drawer__header h2{margin:0;font-size:1.25rem}.cart-drawer__close{width:2.25rem;height:2.25rem;color:var(--color-text);cursor:pointer;background:0 0;border:0;border-radius:999px;font-size:1.5rem}.cart-drawer__close:hover{background:var(--color-surface)}.cart-drawer__added{color:#15803d;background:#15803d1f;gap:.4rem;margin:0;padding:.6rem 1.25rem;font-weight:600;display:flex}.cart-drawer__body{flex:1;padding:0 1.25rem;overflow-y:auto}.cart-drawer__body .cart-item{grid-template-columns:4rem 1fr auto}.cart-drawer__footer{border-top:1px solid var(--store-line);gap:.6rem;padding:1rem 1.25rem 1.25rem;display:grid}.cart-drawer__footer .cart-summary__row:not(.cart-summary__row--total){color:var(--color-muted);font-size:.9rem}.cart-drawer__footer .cart-summary__row--total{margin-top:0}.cart-drawer__checkout{text-align:center}.cart-drawer__footer .link-button{justify-self:center}.cart-toast{z-index:100;border-radius:var(--radius);background:var(--color-text);max-width:calc(100% - 2rem);color:var(--color-bg);opacity:0;pointer-events:none;flex-wrap:wrap;align-items:center;gap:.5rem 1rem;padding:.875rem 1.25rem;transition:opacity .2s,transform .2s;display:flex;position:fixed;bottom:1.5rem;left:50%;transform:translate(-50%,1rem);box-shadow:0 10px 30px #0003}.cart-toast--visible{opacity:1;pointer-events:auto;transform:translate(-50%)}.cart-toast a{color:inherit;font-weight:600}@media (prefers-reduced-motion:reduce){.cart-toast{transition:none}}.checkout-result{text-align:center}.preview-banner{z-index:100;color:#78350f;text-align:center;background:#fef3c7;padding:.5rem 1rem;font-size:.9rem;position:sticky;top:0}.preview-banner a{color:inherit;margin-left:.5rem;font-weight:600}.visual-edit{z-index:2147483000;pointer-events:none;outline-offset:-2px;outline:2px dashed #2563eb;position:fixed}.visual-edit--selected{background:#2563eb0f;outline-style:solid}.visual-edit__button{color:#fff;cursor:pointer;pointer-events:auto;background:#2563eb;border:0;border-radius:999px;padding:.3rem .7rem;font:600 .8rem/1.2 system-ui,sans-serif;position:absolute;top:8px;left:8px;box-shadow:0 2px 8px #0003}.visual-edit__button:hover{background:#1d4ed8}.gallery__description{max-width:65ch;color:var(--color-muted)}.gallery__items{grid-template-columns:repeat(var(--gallery-columns,3), 1fr);gap:1rem;display:grid}@media (width<=767px){.gallery__items{grid-template-columns:repeat(2,1fr)}}.gallery__item{border-radius:var(--radius);background:var(--color-surface);cursor:zoom-in;display:block;position:relative;overflow:hidden}.gallery__item img{width:100%;transition:transform .3s}.gallery__item:hover img{transform:scale(1.04)}.gallery--grid .gallery__item img,.gallery--carousel .gallery__item img{aspect-ratio:4/3;object-fit:cover}.gallery--masonry .gallery__items{columns:var(--gallery-columns,3) 220px;column-gap:1rem;display:block}.gallery--masonry .gallery__item{break-inside:avoid;margin-bottom:1rem}.gallery__caption{color:#fff;background:linear-gradient(#0000,#0009);padding:1.5rem .75rem .6rem;font-size:.85rem;position:absolute;inset:auto 0 0}.gallery__viewer{background:0 0;border:0;width:min(92vw,1200px);max-height:92vh;padding:0;overflow:visible}.gallery__viewer::backdrop{background:#000000d9}.gallery__viewer figure{text-align:center;margin:0}.gallery__viewer img{border-radius:var(--radius);max-width:100%;max-height:82vh;margin:0 auto}.gallery__viewer figcaption{color:#fff;margin-top:.75rem}.gallery__nav,.gallery__close{color:#fff;cursor:pointer;background:#ffffff26;border:0;border-radius:999px;width:3rem;height:3rem;font-size:2rem;line-height:1;position:fixed}.gallery__nav:hover,.gallery__close:hover{background:#ffffff4d}.gallery__nav{top:50%;transform:translateY(-50%)}.gallery__nav--prev{left:1rem}.gallery__nav--next{right:1rem}.gallery__close{top:1rem;right:1rem}.site-footer__code{margin-top:2rem;font-size:.9rem}.site-footer__code img{vertical-align:middle;display:inline-block}.legal-link{color:inherit;white-space:nowrap}.site-logo{color:inherit;align-items:center;text-decoration:none;display:inline-flex}.site-logo__name{font-size:1.2rem;font-weight:800}.social-links{flex-wrap:wrap;gap:.5rem;margin:1rem 0 0;padding:0;list-style:none;display:flex}.social-links a{background:color-mix(in srgb, currentColor 10%, transparent);width:2.5rem;height:2.5rem;color:inherit;border-radius:999px;place-items:center;transition:background .2s;display:grid}.social-links a:hover{background:var(--color-primary);color:#fff}.contact-details{gap:.75rem;margin:0;padding:0;list-style:none;display:grid}.contact-details li{flex-direction:column;display:flex}.contact-details__label{text-transform:uppercase;letter-spacing:.05em;opacity:.7;font-size:.8rem}.contact-details a{color:inherit}.contact-map{border-radius:var(--radius);border:0;width:100%;min-height:320px}.block-contact-info{gap:2rem;display:grid}@media (width>=768px){.block-contact-info--map{grid-template-columns:1fr 1.4fr;align-items:start}}.whatsapp-button{z-index:90;color:#fff;background:#25d366;border-radius:999px;place-items:center;width:3.5rem;height:3.5rem;transition:transform .2s;display:grid;position:fixed;bottom:1.25rem;right:1.25rem;box-shadow:0 6px 20px #0003}.whatsapp-button:hover{transform:scale(1.08)}.language-switcher{gap:.25rem;font-size:.85rem;display:flex}.language-switcher__link{border-radius:var(--radius);color:var(--color-muted);padding:.25rem .5rem;font-weight:600;text-decoration:none}.language-switcher__link[aria-current=true]{background:var(--color-surface);color:var(--color-text)}.post-grid{grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:2rem;display:grid}.post-card{color:var(--color-text);text-decoration:none}.post-card__image,.post__image{border-radius:var(--radius);background:var(--color-surface);overflow:hidden}.post-card__image{aspect-ratio:16/10}.post-card__image img{object-fit:cover;width:100%;height:100%}.post-card__date,.post__date{color:var(--color-muted);font-size:.85rem;display:block}.post-card__date{margin-top:.75rem}.post-card h3{margin:.25rem 0;font-size:1.15rem}.post-card__excerpt{color:var(--color-muted);margin:0}.post{max-width:760px;margin-inline:auto}.post__back{color:var(--color-muted);font-size:.9rem;text-decoration:none}.post__header h1{margin:.5rem 0 .25rem}.post__image{margin:1.5rem 0 2rem}.post__image img{width:100%}.post__extra{border-left:4px solid var(--color-primary);border-radius:var(--radius);background:var(--color-surface);margin-top:2.5rem;padding:1.25rem 1.5rem}.post__extra h2{margin:0 0 .5rem;font-size:1.15rem}.post__extra>:last-child>:last-child{margin-bottom:0}.newsletter{border-bottom:1px solid color-mix(in srgb, currentColor 15%, transparent);flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:1rem 2rem;margin-bottom:2rem;padding-bottom:2rem;display:flex}.newsletter__intro{flex:280px}.newsletter__heading{color:inherit;margin:0 0 .25rem;font-size:1.25rem}.newsletter__text{margin:0}.newsletter__form{flex-wrap:wrap;flex:360px;align-items:flex-end;gap:.75rem;max-width:560px;display:flex}.newsletter__form .form__fields{flex:220px;margin:0}.newsletter__form .form__error{flex-basis:100%;margin:0}.newsletter__confirmation{flex:360px}.block-menu{--menu-gap:clamp(1rem, 3vw, 1.5rem)}.block-menu__header{margin-bottom:var(--menu-gap);text-align:center}.block-menu__restaurant{color:var(--color-muted);letter-spacing:.15em;text-transform:uppercase;margin:0;font-size:.85rem}.block-menu__title{margin:.25rem 0}.block-menu__description,.block-menu__served{max-width:60ch;color:var(--color-muted);margin:.25rem auto 0}.block-menu__nav{z-index:2;margin:0 0 var(--menu-gap);background:var(--color-bg);scrollbar-width:none;gap:.5rem;padding:.6rem 0;display:flex;position:sticky;top:0;overflow-x:auto}.block-menu__nav a{border:1px solid var(--color-surface);color:var(--color-text);white-space:nowrap;border-radius:999px;flex:none;padding:.4rem 1rem;font-size:.9rem;text-decoration:none}.block-menu__nav a:hover,.block-menu__nav a:focus-visible{border-color:var(--color-primary);color:var(--color-primary)}.block-menu__category{margin-bottom:calc(var(--menu-gap) * 2);scroll-margin-top:4.5rem}.block-menu__category-header{border-bottom:2px solid var(--color-primary);margin-bottom:.75rem;padding-bottom:.5rem}.block-menu__category-header h3{margin:0}.block-menu__category-header p{color:var(--color-muted);margin:.25rem 0 0}.block-menu__items{gap:.75rem;margin:0;padding:0;list-style:none;display:grid}.block-menu__item{border-radius:var(--radius);background:var(--color-surface);grid-template-columns:auto minmax(0,1fr) auto;align-items:start;gap:1rem;padding:.85rem;display:grid}.block-menu__item.is-featured{box-shadow:inset 4px 0 0 var(--color-primary)}.block-menu__item.is-sold-out{opacity:.55}.block-menu__item.is-sold-out .block-menu__prices{text-decoration:line-through}.block-menu__photos{width:clamp(76px,18vw,120px);position:relative}.block-menu__photo{aspect-ratio:1;object-fit:cover;border-radius:calc(var(--radius) * .75);width:100%}.block-menu__more{color:#fff;background:#0009;border-radius:999px;padding:0 .4rem;font-size:.75rem;position:absolute;bottom:4px;right:4px}.block-menu__name{flex-wrap:wrap;align-items:center;gap:.4rem;display:flex}.block-menu__name h4{margin:0;font-size:1.05rem}.block-menu__badge{background:var(--color-primary);color:#fff;text-transform:uppercase;letter-spacing:.05em;border-radius:999px;padding:.05rem .5rem;font-size:.7rem}.block-menu__badge--out{background:var(--color-muted)}.block-menu__text{color:var(--color-muted);margin:.3rem 0 0;font-size:.92rem}.block-menu__tags{flex-wrap:wrap;gap:.35rem;margin:.45rem 0 0;padding:0;list-style:none;display:flex}.block-menu__tag{border:1px solid var(--color-primary);color:var(--color-primary);border-radius:999px;padding:.05rem .55rem;font-size:.75rem}.block-menu__tag--plain{color:var(--color-muted);border-color:#0000}.block-menu__allergens{color:var(--color-muted);margin:.35rem 0 0;font-size:.8rem;font-style:italic}.block-menu__extras{flex-wrap:wrap;gap:.25rem 1rem;margin:.45rem 0 0;padding:0;font-size:.85rem;list-style:none;display:flex}.block-menu__extras span{color:var(--color-muted);margin-left:.35rem}.block-menu__prices{white-space:nowrap;flex-direction:column;align-items:flex-end;gap:.2rem;display:flex}.block-menu__price{align-items:baseline;gap:.4rem;display:flex}.block-menu__price strong{color:var(--color-primary);font-size:1.05rem}.block-menu__price s{color:var(--color-muted);font-size:.85rem}.block-menu__price-label{color:var(--color-muted);font-size:.8rem}.block-menu--compact .block-menu__item{border-bottom:1px dashed var(--color-surface);background:0 0;border-radius:0;grid-template-columns:minmax(0,1fr) auto;padding:.6rem 0}.block-menu--cards .block-menu__items{grid-template-columns:repeat(auto-fill,minmax(min(100%,240px),1fr));gap:1rem}.block-menu--cards .block-menu__item{grid-template-columns:1fr;gap:.6rem;padding:0 0 1rem;overflow:hidden}.block-menu--cards .block-menu__item>:not(.block-menu__photos){padding:0 .9rem}.block-menu--cards .block-menu__photos{scroll-snap-type:x mandatory;scrollbar-width:none;width:100%;display:flex;overflow-x:auto}.block-menu--cards .block-menu__photo{aspect-ratio:4/3;scroll-snap-align:start;border-radius:0;flex:0 0 100%}.block-menu--cards .block-menu__prices{flex-flow:wrap;justify-content:flex-start;gap:.75rem}.block-menu__note{color:var(--color-muted);text-align:center;margin:0 0 1rem;font-size:.85rem}.block-menu__info{border-radius:var(--radius);background:var(--color-surface);padding:1rem 1.25rem}.block-menu__info p{margin:.35rem 0}.block-menu__links{flex-wrap:wrap;align-items:center;gap:.75rem;display:flex}@media (width<=560px){.block-menu__item{grid-template-columns:auto minmax(0,1fr)}.block-menu__prices{flex-flow:wrap;grid-column:1/-1;justify-content:flex-end;gap:.75rem}.block-menu--compact .block-menu__prices,.block-menu--cards .block-menu__prices{grid-column:auto}}.block-reservations{gap:clamp(1.5rem,4vw,2.5rem);display:grid}.block-reservations--details{grid-template-columns:minmax(0,2fr) minmax(0,1fr);align-items:start}.block-reservations__header{margin-bottom:1.5rem}.block-reservations__header h2{margin-top:0}.block-reservations__restaurant{color:var(--color-muted);letter-spacing:.15em;text-transform:uppercase;margin:0;font-size:.85rem}.block-reservations__form{max-width:none}.form__field--third{flex:calc(33.333% - .667rem);min-width:9rem}.block-reservations__status{color:var(--color-muted);margin:0;font-size:.9rem}.block-reservations__note{color:var(--color-muted);margin:0 0 1rem;font-size:.9rem}.block-reservations__trap{width:1px;height:1px;position:absolute;left:-9999px;overflow:hidden}.block-reservations__done{border-radius:var(--radius);background:var(--color-surface);padding:1.25rem 1.5rem}.block-reservations__done-message{margin:0 0 .35rem;font-weight:600}.block-reservations__summary{color:var(--color-muted);margin:0}.block-reservations__summary:first-letter{text-transform:uppercase}.block-reservations__info{border-radius:var(--radius);background:var(--color-surface);padding:1rem 1.25rem}.block-reservations__info p{margin:.5rem 0}@media (width<=760px){.block-reservations--details{grid-template-columns:minmax(0,1fr)}}.cookie-banner{z-index:1100;pointer-events:none;padding:1rem;position:fixed;bottom:0;left:0;right:0}.cookie-banner[hidden]{display:none}.cookie-banner__panel{max-width:var(--content-width,1100px);border:1px solid color-mix(in srgb, var(--color-text) 12%, transparent);border-radius:var(--radius);background:var(--color-bg);color:var(--color-text);pointer-events:auto;flex-wrap:wrap;align-items:center;gap:1rem 1.5rem;max-height:calc(100vh - 2rem);margin:0 auto;padding:1.25rem 1.5rem;display:flex;overflow-y:auto;box-shadow:0 10px 40px #00000026}.cookie-banner__body{flex:22rem}.cookie-banner__title{margin:0 0 .25rem;font-weight:700}.cookie-banner__text{color:var(--color-muted);margin:0;font-size:.92rem}.cookie-banner__choices{flex:100%;gap:.75rem;display:grid}.cookie-banner__choices[hidden]{display:none}.cookie-banner__choice{border-radius:var(--radius);background:var(--color-surface);cursor:pointer;align-items:flex-start;gap:.75rem;padding:.75rem 1rem;display:flex}.cookie-banner__choice input{width:1.1rem;height:1.1rem;accent-color:var(--color-primary);margin-top:.15rem}.cookie-banner__choice span{gap:.15rem;display:grid}.cookie-banner__choice small{color:var(--color-muted)}.cookie-banner__actions{flex-wrap:wrap;justify-content:flex-end;gap:.5rem;display:flex}.cookie-banner__actions .button{padding:.6rem 1.1rem}.cookie-banner__actions [hidden]{display:none}.cookie-banner--box{max-width:26rem;left:auto}.cookie-banner--box .cookie-banner__panel{flex-direction:column;align-items:stretch}.cookie-banner--box .cookie-banner__body{flex-basis:auto}.cookie-banner--center{pointer-events:auto;background:#00000073;place-items:center;display:grid;top:0}.cookie-banner--center .cookie-banner__panel{flex-direction:column;align-items:stretch;width:min(32rem,100%);max-height:calc(100vh - 2rem);overflow-y:auto}.cookie-banner--center .cookie-banner__body{flex-basis:auto}@media (width<=560px){.cookie-banner{padding:.5rem}.cookie-banner--box{max-width:none;left:0}.cookie-banner__actions .button{flex:auto}}.popup,.popup-alert{--popup-surface:var(--popup-bg,var(--color-bg));--popup-ink:var(--popup-text,var(--color-text));--popup-button:var(--popup-accent,var(--color-primary))}.popup{border-radius:var(--radius);background:var(--popup-surface);width:calc(100% - 2rem);max-width:32rem;max-height:calc(100dvh - 2rem);color:var(--popup-ink);border:0;padding:0;overflow:auto;box-shadow:0 25px 60px #0000004d}.popup--small{max-width:24rem}.popup--large{max-width:44rem}.popup::backdrop{background:#0000008c}.popup[open]{animation:.25s ease-out popup-in}@keyframes popup-in{0%{opacity:0;transform:translateY(1rem)scale(.98)}}@media (prefers-reduced-motion:reduce){.popup[open]{animation:none}}.popup--no-overlay{z-index:1000;position:fixed}.popup--center.popup--no-overlay{margin:0;inset:50% auto auto 50%;transform:translate(-50%,-50%)}.popup--center.popup--no-overlay[open]{animation:none}.popup--bottom-right,.popup--bottom-left{max-width:min(22rem,100% - 2rem);margin:0;inset:auto 1rem 1rem auto}.popup--bottom-left{inset:auto auto 1rem 1rem}.popup__panel{position:relative}.popup__close{z-index:1;background:color-mix(in srgb, var(--popup-surface) 85%, transparent);width:2.25rem;height:2.25rem;color:var(--popup-ink);cursor:pointer;border:0;border-radius:999px;place-items:center;font-size:1.5rem;line-height:1;display:grid;position:absolute;top:.5rem;right:.5rem}.popup__close:hover{background:color-mix(in srgb, var(--popup-ink) 12%, var(--popup-surface))}.popup__image img{object-fit:cover;width:100%;max-height:16rem}.popup__body{text-align:center;gap:.75rem;padding:1.75rem 1.5rem 1.5rem;display:grid}.popup--image-side .popup__panel{display:grid}@media (width>=640px){.popup--image-side .popup__panel{grid-template-columns:2fr 3fr}.popup--image-side .popup__image img{height:100%;max-height:none}.popup--image-side .popup__body{text-align:left;align-content:center}}.popup__heading{color:inherit;margin:0;font-size:1.5rem;line-height:1.2}.popup__text>:first-child{margin-top:0}.popup__text>:last-child{margin-bottom:0}.popup .button,.popup-alert__button{background:var(--popup-button);color:#fff}.popup__button{justify-self:center}.popup__form{text-align:left;max-width:none}.popup__form .form__fields{margin-bottom:.75rem}.popup__form .popup__button{width:100%}.popup__dismiss{color:inherit;opacity:.7;justify-self:center}.popup-alert{z-index:1000;background:var(--popup-bg,var(--color-primary));color:var(--popup-text,#fff);align-items:center;gap:.5rem;padding:.6rem 3rem .6rem 1rem;font-size:.95rem;display:flex;position:relative}.popup-alert--bottom{position:fixed;inset:auto 0 0;box-shadow:0 -6px 20px #00000026}.popup-alert+.popup-alert--top{border-top:1px solid color-mix(in srgb, currentColor 20%, transparent)}.popup-alert__inner{text-align:center;flex-wrap:wrap;flex:1;justify-content:center;align-items:center;gap:.35rem .75rem;display:flex}.popup-alert__text>*{margin:0}.popup-alert__text a{color:inherit}.popup-alert__button{background:var(--popup-accent,#ffffff38);white-space:nowrap;border-radius:999px;padding:.3rem .9rem;font-weight:600;text-decoration:none}.popup-alert__close{width:2rem;height:2rem;color:inherit;background:0 0;top:50%;transform:translateY(-50%)}.popup__panel:focus{outline:none}@media (width<=639px){.popup__image img{max-height:10rem}}:root{--color-primary:#e4572e;--color-text:#2f2433;--color-muted:#7a6672;--color-bg:#fff8ee;--color-surface:#fdebd6;--font-body:"Fraunces", Georgia, serif;--radius:10px;--content-width:820px}body{font-size:1.15rem}h1,h2,h3{font-weight:500;line-height:1.2}main.page>*{max-width:var(--content-width);margin:0 auto;padding:3rem 1rem}.site-header,.site-footer{max-width:var(--content-width);margin:0 auto;padding:1rem}.logo{color:var(--color-text);align-items:center;gap:.6rem;font-size:1.15rem;font-weight:700;text-decoration:none;display:inline-flex}.site-footer{color:var(--color-muted);border-top:1px solid var(--color-surface)}.site-header{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;display:flex}.site-header__toggle{border-radius:var(--radius);cursor:pointer;background:0 0;border:1px solid #d1d5db;padding:.25rem .75rem;font-size:1.25rem;display:none}@media (width<=767px){.site-header__toggle{display:block}.site-header__nav{flex-basis:100%;display:none}.site-header__toggle[aria-expanded=true]+.site-header__nav{display:block}.site-header__nav .nav__list{flex-direction:column}.site-header__nav .nav__submenu{box-shadow:none;padding:0 0 0 1rem;display:block;position:static}}.site-header__cart{color:var(--color-text);order:2;margin-left:auto;font-weight:600;text-decoration:none}.site-header__cart-count{background:var(--color-primary);color:#fff;text-align:center;border-radius:999px;min-width:1.5em;margin-left:.35rem;padding:0 .4em;font-size:.8rem;display:inline-block}.site-header__toggle,.site-header__nav{order:3}@media (width>=768px){.site-header__nav{order:1;margin-left:auto}}.site-footer__inner{flex-wrap:wrap;justify-content:space-between;gap:2rem;display:flex}.site-footer__legal{font-size:.85rem}:root{--bg:#fff8ee;--bg-2:#fdebd6;--paper:#fffdf8;--ink:#2f2433;--muted:#7a6672;--leaf:#5fa88f;--gold:#d9a520;--line:#5a3c5029;--shadow:0 18px 50px #50283c29;--glow:transparent;--ease:cubic-bezier(.2, .7, .2, 1);--serif:"Fraunces", Georgia, serif;--script:"Pacifico", cursive;--sans:"Nunito", system-ui, sans-serif;--flower:#e4572e;--flower-soft:#ffd8c2;--petal-1:#f25f5c;--petal-2:#ffd23f;--petal-3:#3bceac;--petal-4:#247ba0;--rose:var(--flower);--rose-soft:var(--flower-soft);color-scheme:light}:root[data-flowers=pastel]{--flower:#c2558a;--flower-soft:#f9d7e6;--gold:#e2b44f;--petal-1:#f7a8c4;--petal-2:#a8d8f0;--petal-3:#fbe38e;--petal-4:#c3b1e1}:root[data-flowers=dorado]{--flower:#9a6b12;--flower-soft:#f3e1a6;--gold:#c9971c;--petal-1:#d4af37;--petal-2:#f3e5ab;--petal-3:#b8860b;--petal-4:#fff1c1}:root[data-flowers=arcoiris]{--flower:#5b3f8c;--flower-soft:#e3d8f5;--petal-1:#ff595e;--petal-2:#ffca3a;--petal-3:#8ac926;--petal-4:#1982c4}:root[data-flowers=rosa]{--flower:#c92a62;--flower-soft:#ffd6e2;--gold:#d4a23a;--petal-1:#ff8fab;--petal-2:#ffc2d1;--petal-3:#fb6f92;--petal-4:#e8c07a}:root[data-theme=noche]{--bg:#1d1526;--bg-2:#2a1f36;--paper:#2f2540;--ink:#f8eefc;--muted:#c3b2cf;--leaf:#7fc8b0;--gold:#f2c94c;--line:#f0dcff29;--shadow:0 18px 60px #0000008c;--glow:#ffbe5a29;--rose:color-mix(in srgb, var(--flower) 72%, #fff);--rose-soft:color-mix(in srgb, var(--flower) 50%, #1d1526);color-scheme:dark}.is-letter,.is-letter body{height:100%;margin:0}.is-letter body{background:radial-gradient(120% 80% at 50% 0%, var(--bg) 40%, var(--bg-2) 100%), var(--bg);color:var(--ink);font-family:var(--serif);-webkit-font-smoothing:antialiased;font-size:1.2rem;line-height:1.6;transition:background 1s,color 1s;overflow:hidden}.love button{font:inherit;color:inherit;cursor:pointer}.love :focus-visible{outline:2px solid var(--rose);outline-offset:3px}.no-gold .corner,.no-gold .card:after{display:none}.no-gold .stop__card,.no-gold .reason__face--front{border-color:var(--line)}.script{font-family:var(--script);font-size-adjust:.34;font-weight:400}.love{--dir:1;position:fixed;inset:0}.petals{pointer-events:none;z-index:5;width:100%;height:100%;position:fixed;inset:0}.glow{pointer-events:none;background:radial-gradient(60% 50% at 50% 60%, var(--glow), transparent 70%);animation:4s ease-in-out infinite flicker;position:fixed;inset:0}@keyframes flicker{0%{transform:scale(1)rotate(-3deg)}50%{transform:scale(.92,1.12)rotate(2deg)}to{transform:scale(1.05,.94)rotate(-1deg)}}.balloons{pointer-events:none;z-index:6;position:fixed;inset:0;overflow:hidden}.balloon{--x:10vw;--c:var(--petal-1);left:var(--x);opacity:.88;width:44px;animation:26s linear infinite balloon-rise;position:absolute;bottom:0;transform:translateY(110%)}.balloon svg{filter:drop-shadow(0 6px 8px #0000001f);transform-origin:50% 0;width:100%;animation:4.5s ease-in-out infinite alternate balloon-sway;display:block;overflow:visible}.balloon__body,.balloon__knot{fill:var(--c)}.balloon__shine{fill:none;stroke:#fff9;stroke-width:2.4px;stroke-linecap:round}.balloon__string{fill:none;stroke:color-mix(in srgb, var(--ink) 35%, transparent);stroke-width:1px}.balloon--1{--x:78vw;--c:var(--petal-2);width:36px;animation-duration:31s;animation-delay:-12s}.balloon--2{--x:34vw;--c:var(--petal-3);width:30px;animation-duration:36s;animation-delay:-22s}.balloon--3{--x:90vw;--c:var(--petal-4);width:40px;animation-duration:29s;animation-delay:-5s}.balloon--4{--x:58vw;--c:var(--rose);width:26px;animation-duration:40s;animation-delay:-30s}.balloon--1 svg,.balloon--3 svg{animation-duration:5.5s;animation-direction:alternate-reverse}@media (width<=640px){.balloon--3,.balloon--4{display:none}}@keyframes balloon-rise{0%{transform:translateY(110%)}to{transform:translateY(calc(-100vh - 110%))}}@keyframes balloon-sway{0%{transform:translate(-10px)rotate(-5deg)}to{transform:translate(10px)rotate(5deg)}}.topbar{z-index:20;font-family:var(--sans);letter-spacing:.08em;justify-content:space-between;align-items:center;gap:12px;padding:16px clamp(16px,4vw,40px);font-size:.8rem;display:flex;position:fixed;top:0;left:0;right:0}.topbar__count{color:var(--muted);opacity:0;margin:0;transition:opacity .8s .4s}.is-open .topbar__count{opacity:1}.topbar__num{color:var(--ink)}.topbar__title{text-transform:uppercase;margin-left:10px}.topbar__tools{gap:8px;display:flex}.tool{border:1px solid var(--line);background:color-mix(in srgb, var(--paper) 70%, transparent);backdrop-filter:blur(6px);width:40px;height:40px;color:var(--muted);transition:color .3s, border-color .3s, transform .3s var(--ease);border-radius:50%;place-items:center;display:grid}.tool:hover{transform:translateY(-2px)}.tool.is-on{color:var(--rose);border-color:var(--rose)}.icon,.love-nav__arrow svg{fill:none;stroke:currentColor;stroke-width:1.6px;stroke-linecap:round;stroke-linejoin:round;width:18px;height:18px}.icon--moon,:root[data-theme=noche] .icon--sun{display:none}:root[data-theme=noche] .icon--moon{display:block}.cover{z-index:10;text-align:center;pointer-events:auto;transition:opacity .9s, transform 1.2s var(--ease), visibility 0s 1s;flex-direction:column;justify-content:center;align-items:center;gap:10px;padding:80px 16px;display:flex;position:fixed;inset:0}.is-open .cover{opacity:0;visibility:hidden;pointer-events:none;transform:scale(1.08)}.no-intro .cover{display:none}.cover__kicker,.kicker{font-family:var(--sans);letter-spacing:.3em;text-transform:uppercase;color:var(--muted);margin:0;font-size:.78rem}.cover__name{font-family:var(--script);font-size-adjust:.34;color:var(--rose);margin:0 0 24px;font-size:clamp(3rem,10vw,5.5rem);font-weight:400;line-height:1.1}.cover__hint{font-family:var(--sans);color:var(--muted);margin:28px 0 0;font-size:.8rem;animation:2.4s ease-in-out infinite breathe}.reveal-in{animation:rise 1.2s var(--ease) both}.cover__name.reveal-in{animation-delay:.2s}.cover__hint.reveal-in{animation:rise 1.2s .8s var(--ease) both, breathe 2.4s 2s ease-in-out infinite}.is-opening .cover__hint{opacity:0;transition:opacity .3s}@keyframes rise{0%{opacity:0;transform:translateY(20px)}}@keyframes breathe{50%{opacity:.45}}.envelope{--ribbon:var(--gold);--box:var(--rose);--box-dark:color-mix(in srgb, var(--rose) 78%, #000);aspect-ratio:1/.86;width:min(280px,72vw);animation:rise 1.2s .4s var(--ease) both, wobble 4.5s 1.6s ease-in-out infinite;margin-top:34px;position:relative}.no-gold .envelope{--ribbon:var(--paper)}@keyframes wobble{0%,70%,to{transform:none}76%{transform:translateY(-6px)rotate(-3deg)}82%{transform:translateY(0)rotate(2.5deg)}88%{transform:translateY(-3px)rotate(-1.5deg)}94%{transform:rotate(.5deg)}}@keyframes float{50%{transform:translateY(-8px)rotate(-.6deg)}}.envelope__back,.envelope__pocket{border-radius:4px 4px 10px 10px;position:absolute;inset:26% 6% 0}.envelope__back{background:var(--box-dark);box-shadow:var(--shadow)}.envelope__pocket{z-index:2;background:linear-gradient(90deg, transparent 43%, var(--ribbon) 43% 57%, transparent 57%), radial-gradient(circle at 25% 30%, color-mix(in srgb, var(--paper) 30%, transparent) 0 5px, transparent 6px) 0 0 / 46px 46px, linear-gradient(180deg, color-mix(in srgb, var(--box) 88%, #fff), var(--box));box-shadow:inset 0 -10px 18px #0000001f}.envelope__letter{background:var(--paper);height:70%;color:var(--rose);z-index:1;transition:transform 1s .6s var(--ease);border-radius:6px;place-items:center;padding:0 10px;font-size:1.9rem;line-height:1.1;display:grid;position:absolute;top:24%;left:14%;right:14%;box-shadow:0 2px 10px #0000001f}.envelope__flap{z-index:3;background:linear-gradient(90deg, transparent 44%, var(--ribbon) 44% 56%, transparent 56%), linear-gradient(180deg, color-mix(in srgb, var(--box) 80%, #fff), var(--box));transform-origin:20% 100%;border-radius:6px;height:18%;transition:transform .8s cubic-bezier(.3,1.4,.5,1) .25s,opacity .5s .5s,z-index 0s .65s;position:absolute;top:12%;left:0;right:0;box-shadow:0 6px 12px #0000002e}.seal{z-index:4;transform-origin:50% 100%;width:120px;height:64px;transition:transform .4s var(--ease), opacity .4s;background:0 0;border:0;place-items:center;margin:-54px 0 0 -60px;padding:0;animation:2.4s ease-in-out infinite bow;display:grid;position:absolute;top:12%;left:50%}.seal svg{filter:drop-shadow(0 4px 6px #0003);width:100%;height:100%;overflow:visible}.seal .bow__loop{fill:var(--ribbon);stroke:color-mix(in srgb, var(--ribbon) 70%, #000);stroke-width:1.2px}.seal .bow__knot{fill:color-mix(in srgb, var(--ribbon) 85%, #000)}.seal:hover{transform:scale(1.08)}@keyframes bow{0%,to{transform:none}50%{transform:scale(1.06,.96)}}.is-opening .seal{opacity:0;pointer-events:none;transform:translateY(-60px)scale(.6)rotate(-25deg)}.is-opening .envelope{animation-play-state:paused}.is-opening .envelope__flap{opacity:0;z-index:0;transform:translate(-30%,-260%)rotate(-28deg)}.is-opening .envelope__letter{transform:translateY(-78%)}.is-closing .cover{transition:opacity .9s, transform 1.2s var(--ease), visibility 0s}.is-closing .envelope,.is-sealed .envelope{animation:5s ease-in-out infinite float}.is-closing .envelope__letter{transition:transform 1s .4s var(--ease)}.is-closing .envelope__flap{transition:transform .8s 1.2s var(--ease), opacity .3s 1.2s, z-index 0s 1.6s}.is-closing .seal{transition:transform .5s 1.9s var(--ease), opacity .5s 1.9s}.is-closing .cover__hint{opacity:0}.cover__brand{left:50%;bottom:max(18px, env(safe-area-inset-bottom));opacity:0;transition:opacity .8s var(--ease), transform .8s var(--ease);pointer-events:none;margin:0;position:absolute;transform:translate(-50%,12px)}.cover__brand img{background:color-mix(in srgb, var(--paper) 92%, transparent);border-radius:12px;width:min(130px,34vw);height:auto;padding:10px 14px;display:block;box-shadow:0 6px 18px #0000001a}.is-sealed .cover__brand{opacity:1;transform:translate(-50%)}.is-opening .cover__brand{opacity:0;transition-duration:.3s}.ama-mark{flex-direction:column;align-items:center;gap:6px;max-width:none;margin:.6rem auto 0;display:flex}.ama-mark__label{font-family:var(--sans);letter-spacing:.25em;text-transform:uppercase;color:var(--muted);font-size:.7rem}.ama-mark img{background:color-mix(in srgb, var(--paper) 92%, transparent);border-radius:12px;width:min(150px,40vw);height:auto;padding:8px 12px;display:block;box-shadow:0 6px 18px #00000014}.ama-mark--corner{left:clamp(16px,4vw,40px);bottom:max(18px, env(safe-area-inset-bottom));z-index:20;opacity:0;transition:opacity .8s var(--ease), transform .8s var(--ease);pointer-events:none;align-items:flex-start;gap:3px;margin:0;position:fixed;transform:translateY(12px)}.is-open .ama-mark--corner{opacity:1;transform:none}.ama-mark--corner .ama-mark__label{letter-spacing:.2em;font-size:.55rem}.ama-mark--corner img{border-radius:10px;width:min(96px,24vw);padding:5px 8px}@media (width<=640px){.ama-mark--corner{bottom:calc(max(18px, env(safe-area-inset-bottom)) + 62px)}.ama-mark--corner .ama-mark__label{display:none}.ama-mark--corner img{width:72px}}.creator__done .ama-mark{margin-top:2rem}.stage{z-index:8;pointer-events:none;position:fixed;inset:0}.moment{overscroll-behavior:contain;-webkit-overflow-scrolling:touch;scrollbar-width:thin;scrollbar-color:color-mix(in srgb, var(--rose) 40%, transparent) transparent;overflow-wrap:break-word;text-align:center;opacity:0;visibility:hidden;transform:translateX(calc(var(--dir) * 60px)) scale(.98);filter:blur(8px);transition:opacity .7s, transform .9s var(--ease), filter .7s, visibility 0s .9s;flex-direction:column;justify-content:flex-start;align-items:center;gap:14px;padding:84px 16px 110px;display:flex;position:absolute;inset:0;overflow:hidden auto}.moment:before,.moment:after{content:"";flex:none}.moment:before{margin:auto 0 -14px}.moment:after{margin:-14px 0 auto}.moment>*{flex-shrink:0}.moment.is-leaving{transform:translateX(calc(var(--dir) * -60px)) scale(.98)}.moment.is-active{opacity:1;visibility:visible;filter:none;pointer-events:auto;transition:opacity .9s .35s, transform 1s .35s var(--ease), filter .9s .35s, visibility 0s;transform:none}.reveal{opacity:0;transition:opacity .5s,transform .5s;transform:translateY(18px)}.is-active .reveal{opacity:1;transition:opacity .9s calc(.6s + var(--i,0) * .15s), transform .9s calc(.6s + var(--i,0) * .15s) var(--ease);transform:none}.title{color:var(--rose);margin:0;font-size:clamp(3.2rem,12vw,6.5rem);line-height:1.05}.lead{max-width:34ch;margin:0;font-size:clamp(1.3rem,3.6vw,1.7rem);font-style:italic}.note{font-family:var(--sans);color:var(--muted);margin:0;font-size:.82rem}.bloom svg{width:clamp(90px,20vw,130px);overflow:visible}.bloom__stem{fill:none;stroke:var(--leaf);stroke-width:3px;stroke-linecap:round;stroke-dasharray:90;stroke-dashoffset:90px;transition:stroke-dashoffset 1.2s .5s var(--ease)}.bloom__leaf{fill:var(--leaf);transform-box:fill-box;transform-origin:100%;transition:transform .8s 1.2s var(--ease);transform:scale(0)}.bloom__leaf--r{transform-origin:0}.bloom__petal{fill:var(--rose-soft);stroke:var(--rose);stroke-width:.8px;transform:rotate(var(--a)) scale(0);transition:transform 1s calc(1.4s + var(--i) * .1s) cubic-bezier(.3, 1.5, .5, 1)}.bloom__core{fill:var(--gold);transition:transform .6s 2.1s var(--ease);transform:scale(0)}.is-active .bloom__stem{stroke-dashoffset:0}.is-active .bloom__leaf,.is-active .bloom__core{transform:scale(1)}.is-active .bloom__petal{transform:rotate(var(--a)) scale(1)}.card{background:var(--paper);width:min(620px,100%);box-shadow:var(--shadow);text-align:left;border-radius:6px;padding:clamp(32px,6vw,56px) clamp(24px,6vw,60px);position:relative}.card:after{content:"";border:1px solid color-mix(in srgb, var(--gold) 45%, transparent);pointer-events:none;border-radius:3px;position:absolute;inset:10px}.corner{width:46px;height:46px;color:var(--gold);position:absolute}.corner--tl{top:6px;left:6px}.corner--tr{top:6px;right:6px;transform:scaleX(-1)}.corner--bl{bottom:6px;left:6px;transform:scaleY(-1)}.corner--br{bottom:6px;right:6px;transform:scale(-1)}.letter p{margin:0 0 14px}.letter__to{color:var(--rose);font-size:2.3rem}.letter__sign{text-align:right;font-style:italic}.letter__sign .script{color:var(--rose);font-size:2rem;font-style:normal}.counter{flex-direction:column;margin:10px 0;line-height:1;display:flex}.counter__value{letter-spacing:-.02em;font-variant-numeric:tabular-nums;color:var(--rose);filter:drop-shadow(0 10px 30px color-mix(in srgb, var(--rose) 35%, transparent));font-size:clamp(5.5rem,22vw,11rem);font-weight:600;line-height:.95}.is-active .counter__value{animation:3.2s ease-in-out 2.4s infinite counter-glow}@keyframes counter-glow{50%{filter:drop-shadow(0 12px 42px color-mix(in srgb, var(--rose) 60%, transparent));transform:scale(1.02)}}.counter__label{font-family:var(--sans);letter-spacing:.3em;text-transform:uppercase;color:var(--ink);opacity:.8;margin-top:10px;font-size:clamp(.85rem,2.4vw,1rem)}.clock{align-items:flex-start;gap:clamp(6px,2vw,14px);margin:2px 0 6px;display:flex}.clock__unit{border:1px solid color-mix(in srgb, var(--gold) 35%, transparent);background:color-mix(in srgb, var(--paper) 85%, transparent);border-radius:14px;flex-direction:column;align-items:center;min-width:clamp(64px,16vw,92px);padding:10px 8px 8px;display:flex;box-shadow:0 10px 24px #00000014}.no-gold .clock__unit{border-color:var(--line)}.clock__value{color:var(--rose);font-variant-numeric:tabular-nums;font-size:clamp(1.9rem,7vw,2.8rem);font-weight:600;line-height:1}.clock__value.is-tick{animation:tick .45s var(--ease)}@keyframes tick{0%{opacity:.3;transform:translateY(-6px)}}.clock__label{font-family:var(--sans);letter-spacing:.14em;text-transform:uppercase;color:var(--muted);margin-top:4px;font-size:.66rem}.clock__sep{color:var(--rose);padding-top:12px;font-size:clamp(1.6rem,6vw,2.4rem);line-height:1;animation:1s steps(2,start) infinite blink}@keyframes blink{to{visibility:hidden}}.memories{width:min(820px,100%);transition:opacity .35s, transform .35s var(--ease);position:relative}.memories.is-switching{opacity:0;transform:scale(.97)}.memories__track{transition:opacity .8s .5s}.moment:not(.is-active) .memories__track{opacity:0;transition-delay:0s}.memory{cursor:pointer;background:#fffdf8;margin:0;padding:10px 10px 0;box-shadow:0 10px 30px #3c1e1438}.memory img,.memory__placeholder{aspect-ratio:1;object-fit:cover;width:100%;display:block}.memory__placeholder--0{background:linear-gradient(135deg,#f6c9cf,#e98f9f)}.memory__placeholder--1{background:linear-gradient(135deg,#fbe0c3,#e9a37a)}.memory__placeholder--2{background:linear-gradient(135deg,#e5d6f2,#b79ad4)}.memory__placeholder--3{background:linear-gradient(135deg,#cfe4dc,#86b5a5)}.memory figcaption{text-align:center;color:#5a3a36;padding:6px 0 8px;font-size:1.35rem;line-height:1.2}.memories__controls{display:none}[data-layout=polaroids] .memories__track{height:clamp(320px,58vh,480px);position:relative}[data-layout=polaroids] .memory{opacity:0;width:clamp(160px,36vw,260px);transition:transform 1s var(--ease), opacity .6s;position:absolute;top:50%;left:50%;transform:translate(-50%,30%)}.is-active [data-layout=polaroids] .memory{opacity:1;transform:translate(calc(-50% + var(--x) * 3), calc(-50% + var(--y) * 3)) rotate(var(--r));transition:transform 1.1s calc(.5s + var(--i) * .18s) var(--ease), opacity .6s calc(.5s + var(--i) * .18s)}.is-active [data-layout=polaroids] .memory:hover,.is-active [data-layout=polaroids] .memory.is-front{transform:translate(calc(-50% + var(--x) * 3), calc(-50% + var(--y) * 3 - 10px)) rotate(0deg) scale(1.06);transition:transform .4s var(--ease)}[data-layout=mosaico] .memories__track{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;width:min(640px,100%);margin:0 auto;display:grid}[data-layout=mosaico] .memory{cursor:default;opacity:0;transition:transform .6s var(--ease), opacity .4s;border-radius:12px;padding:0;position:relative;overflow:hidden;transform:scale(.85)}.is-active [data-layout=mosaico] .memory{opacity:1;transition:transform .9s calc(.5s + var(--i) * .12s) var(--ease), opacity .6s calc(.5s + var(--i) * .12s);transform:none}[data-layout=mosaico] .memory img,[data-layout=mosaico] .memory__placeholder{aspect-ratio:4/3;transition:transform .8s var(--ease)}[data-layout=mosaico] .memory:hover img,[data-layout=mosaico] .memory:hover .memory__placeholder{transform:scale(1.08)}[data-layout=mosaico] .memory figcaption{color:#fff8f2;background:linear-gradient(#0000,#2814148c);padding:24px 10px 6px;position:absolute;bottom:0;left:0;right:0}[data-layout=carrusel] .memories__track{perspective:1000px;height:clamp(340px,58vh,480px);position:relative}[data-layout=carrusel] .memory{width:clamp(210px,54vw,320px);opacity:calc(1 - var(--abs,0) * .45);z-index:calc(10 - var(--abs,0));transform:translate(calc(-50% + var(--pos,0) * 62%), -50%) rotateY(calc(var(--pos,0) * -28deg)) scale(calc(1 - var(--abs,0) * .18));transition:transform .9s var(--ease), opacity .9s;position:absolute;top:50%;left:50%}[data-layout=carrusel] .memory.is-current{cursor:default}[data-layout=carrusel] .memories__controls{justify-content:center;gap:12px;margin-top:4px;display:flex}.memories__arrow{border:1px solid var(--rose);width:40px;height:40px;color:var(--rose);background:0 0;border-radius:50%;place-items:center;transition:background .3s,color .3s;display:grid}.memories__arrow:hover{background:var(--rose);color:#fff8f6}.memories__arrow svg{fill:none;stroke:currentColor;stroke-width:1.6px;stroke-linecap:round;stroke-linejoin:round;width:18px;height:18px}.memories[data-layout=pelicula]{width:min(960px,100%);overflow:hidden;mask-image:linear-gradient(90deg,#0000,#000 10% 90%,#0000)}[data-layout=pelicula] .memories__track{background:repeating-linear-gradient(90deg,#0000 0 8px,#fff8eed9 8px 18px,#0000 18px 26px) 0 8px/100% 8px no-repeat,repeating-linear-gradient(90deg,#0000 0 8px,#fff8eed9 8px 18px,#0000 18px 26px) left bottom 8px/100% 8px no-repeat,#1d1716;width:max-content;padding:24px 0;animation:28s linear infinite film;display:flex}.memories[data-layout=pelicula]:hover .memories__track{animation-play-state:paused}[data-layout=pelicula] .memory{width:clamp(190px,32vw,260px);box-shadow:none;cursor:default;background:0 0;margin:0 8px;padding:0}[data-layout=pelicula] .memory img,[data-layout=pelicula] .memory__placeholder{aspect-ratio:4/5;border-radius:3px}[data-layout=pelicula] .memory figcaption{color:#f3e6da;padding:6px 0 0;font-size:1.2rem}@keyframes film{to{transform:translate(-50%)}}[data-layout=pila] .memories__track{height:clamp(360px,60vh,500px);position:relative}[data-layout=pila] .memory{width:clamp(220px,58vw,330px);z-index:calc(20 - var(--depth));opacity:0;transition:transform .9s var(--ease), opacity .6s;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)translateY(40px)}.is-active [data-layout=pila] .memory{opacity:1;transform:translate(-50%, -50%) translateY(calc(var(--depth) * -6px)) rotate(calc(var(--r) * .6));transition:transform .9s calc(.5s + var(--i) * .12s) var(--ease), opacity .6s calc(.5s + var(--i) * .12s)}.is-active .is-ready[data-layout=pila] .memory{transition-delay:0s}.is-active [data-layout=pila] .memory.is-thrown{opacity:0;transition:transform .45s var(--ease), opacity .4s;transform:translate(30%,-70%)rotate(20deg)}[data-layout=cuerda] .memories__track{--w:clamp(130px, 25vw, 190px);--row:calc(var(--w) + 96px);background:linear-gradient(transparent 11px, var(--muted) 11px 13px, transparent 13px) left top / 100% var(--row) repeat-y;flex-wrap:wrap;justify-content:center;gap:22px clamp(10px,3vw,26px);width:min(760px,100%);margin:0 auto;display:flex}[data-layout=cuerda] .memory{width:var(--w);transform-origin:50% -14px;opacity:0;translate:0 -40px;rotate:calc(var(--r) * .4);transition:translate .9s var(--ease), opacity .5s, scale .3s;margin-top:26px;padding:8px 8px 0;position:relative}[data-layout=cuerda] .memory:before{content:"";background:linear-gradient(90deg,#b88352,#d6a873 50%,#b88352);border-radius:2px;width:10px;height:26px;margin-left:-5px;position:absolute;top:-18px;left:50%;box-shadow:0 2px 4px #0003}.is-active [data-layout=cuerda] .memory{opacity:1;animation:sway calc(3.2s + var(--i) * .45s) ease-in-out infinite alternate;transition:translate 1s calc(.5s + var(--i) * .15s) cubic-bezier(.3, 1.4, .5, 1), opacity .5s calc(.5s + var(--i) * .15s), scale .3s;translate:0}.is-active [data-layout=cuerda] .memory:hover{scale:1.06}[data-layout=cuerda] .memory figcaption{white-space:nowrap;text-overflow:ellipsis;height:40px;padding:0 2px;font-size:1.1rem;line-height:40px;overflow:hidden}[data-layout=cuerda] .memory:not(:has(figcaption)){padding-bottom:40px}@keyframes sway{0%{rotate:calc(var(--r) * -.4)}to{rotate:calc(var(--r) * .4)}}[data-layout=abanico] .memories__track{height:clamp(360px,58vh,480px);position:relative}[data-layout=abanico] .memory{transform-origin:50% 130%;opacity:0;width:clamp(170px,38vw,250px);transition:transform .8s var(--ease), opacity .5s;position:absolute;bottom:4%;left:50%;transform:translate(-50%)rotate(0)}.is-active [data-layout=abanico] .memory{opacity:1;transform:translateX(-50%) rotate(calc(var(--k) * min(14deg, 100deg / var(--n))));transition:transform 1.1s calc(.5s + var(--i) * .1s) var(--ease), opacity .5s calc(.5s + var(--i) * .1s)}.is-active [data-layout=abanico] .memory:hover,.is-active [data-layout=abanico] .memory.is-front{transform:translateX(-50%) rotate(calc(var(--k) * min(14deg, 100deg / var(--n)))) translateY(-30px);transition:transform .4s var(--ease)}[data-layout=corazon] .memories__track{aspect-ratio:1;width:min(540px,100%);margin:0 auto;position:relative}.is-active [data-layout=corazon] .memories__track{animation:2.8s ease-in-out 2.4s infinite heart-pulse}[data-layout=corazon] .memories__track:after{content:"";aspect-ratio:1;background:var(--rose);opacity:.85;width:18%;position:absolute;top:44%;left:50%;transform:translate(-50%,-50%);mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M12 21s-7-4.5-9.5-9A5.5 5.5 0 0 1 12 6a5.5 5.5 0 0 1 9.5 6c-2.5 4.5-9.5 9-9.5 9z'/%3E%3C/svg%3E") 50%/contain no-repeat}[data-layout=corazon] .memory{left:var(--hx);top:var(--hy);opacity:0;width:clamp(74px,21vw,128px);transition:transform .6s var(--ease), opacity .4s;border-radius:50%;padding:4px;position:absolute;transform:translate(-50%,-50%)scale(0)}[data-layout=corazon] .memory img,[data-layout=corazon] .memory__placeholder{border-radius:50%}[data-layout=corazon] .memory figcaption{display:none}.is-active [data-layout=corazon] .memory{opacity:1;transition:transform .8s calc(.5s + var(--i) * .12s) cubic-bezier(.3, 1.6, .5, 1), opacity .4s calc(.5s + var(--i) * .12s);transform:translate(-50%,-50%)scale(1)}.is-active [data-layout=corazon] .memory:hover{z-index:5;transition:transform .3s var(--ease);transform:translate(-50%,-50%)scale(1.2)}@keyframes heart-pulse{0%,to{transform:scale(1)}50%{transform:scale(1.03)}}.timeline{gap:clamp(10px,2.4vh,22px);width:min(600px,100%);margin:8px 0 0;padding:0;list-style:none;display:grid;position:relative}.timeline:before{content:"";background:linear-gradient(var(--rose), var(--gold));transform-origin:top;width:2px;margin-left:-1px;transition:transform .4s;position:absolute;top:0;bottom:0;left:50%;transform:scaleY(0)}.is-active .timeline:before{transition:transform calc(var(--n) * .6s + .4s) .6s ease-in-out;transform:scaleY(1)}.stop{grid-template-columns:1fr 44px 1fr;align-items:center;display:grid;position:relative}.stop__mark{border:2px solid var(--rose);background:var(--paper);border-radius:50%;grid-area:1/2;place-items:center;width:44px;height:44px;transition:transform .3s;display:grid;transform:scale(0)}.stop__mark svg{width:20px;fill:var(--rose)}.stop__mark circle{fill:var(--paper)}.is-active .stop__mark{animation:ping 2.4s calc(1.6s + var(--i) * .6s) infinite;transition:transform .6s calc(.8s + var(--i) * .6s) cubic-bezier(.3, 1.8, .5, 1);transform:scale(1)}@keyframes ping{0%{box-shadow:0 0 0 0 color-mix(in srgb, var(--rose) 55%, transparent)}70%,to{box-shadow:0 0 0 14px #0000}}.stop__card{--from:24px;border:1px solid color-mix(in srgb, var(--gold) 30%, transparent);background:var(--paper);text-align:left;opacity:0;transform:translateX(var(--from));border-radius:10px;flex-direction:column;grid-area:1/3;margin-left:18px;padding:12px 16px;transition:opacity .4s,transform .4s;display:flex;box-shadow:0 10px 26px #00000014}.stop:nth-child(2n) .stop__card{--from:-24px;text-align:right;grid-column:1;margin:0 18px 0 0}.is-active .stop__card{opacity:1;transition:opacity .7s calc(.9s + var(--i) * .6s), transform .8s calc(.9s + var(--i) * .6s) var(--ease);transform:none}.stop__num{font-family:var(--sans);letter-spacing:.2em;color:var(--rose);font-size:.7rem}.stop__card strong{font-size:1.25rem;font-weight:600;line-height:1.2}.stop__note{color:var(--muted);font-size:1rem;font-style:italic}.reasons{grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;width:min(640px,100%);display:grid}.reasons--few{grid-template-columns:repeat(2,minmax(0,1fr));width:min(460px,100%)}.reason{perspective:800px;aspect-ratio:4/3;background:0 0;border:0;padding:0}.reason__inner{height:100%;transform-style:preserve-3d;transition:transform .8s var(--ease);display:block;position:relative}.reason.is-flipped .reason__inner{transform:rotateY(180deg)}.reason__face{backface-visibility:hidden;border-radius:8px;flex-direction:column;justify-content:center;align-items:center;gap:4px;padding:12px;display:flex;position:absolute;inset:0;box-shadow:0 8px 24px #0000001a}.reason__face--front{background:var(--paper);border:1px solid color-mix(in srgb, var(--gold) 40%, transparent);font-size:1.2rem;font-weight:600}.reason__num{font-family:var(--script);font-size-adjust:.34;color:var(--rose);font-size:1.8rem;font-weight:400;line-height:1}.reason__face--back{background:var(--rose);color:#fff8f6;font-size:1rem;font-style:italic;line-height:1.35;transform:rotateY(180deg)}.reason:hover .reason__inner{transform:translateY(-4px)}.reason.is-flipped:hover .reason__inner{transform:rotateY(180deg)translateY(-4px)}.vinyl{aspect-ratio:1;width:clamp(180px,42vw,240px);margin:10px 0;position:relative}.vinyl__disc{box-shadow:var(--shadow);background:repeating-radial-gradient(circle,#1b1414 0 2px,#2a2020 2px 4px),#1b1414;border-radius:50%;place-items:center;animation:4s linear infinite paused spin;display:grid;position:absolute;inset:0}.vinyl__disc:after{content:"";background:conic-gradient(from 40deg,#0000,#ffffff1f,#0000 30% 50%,#ffffff14,#0000 80%);border-radius:50%;position:absolute;inset:0}.vinyl__label{aspect-ratio:1;background:radial-gradient(circle, var(--bg) 0 7%, var(--rose) 8%);border-radius:50%;width:36%}.vinyl__arm{background:linear-gradient(var(--gold), color-mix(in srgb, var(--gold) 60%, black));transform-origin:top;width:8px;height:60%;transition:transform .8s var(--ease);border-radius:4px;position:absolute;top:-6%;right:-8%;transform:rotate(10deg)}.is-playing .vinyl__disc{animation-play-state:running}.is-playing .vinyl__arm{transform:rotate(28deg)}@keyframes spin{to{transform:rotate(360deg)}}.song{margin:0;font-size:clamp(1.8rem,5vw,2.4rem);font-weight:500}.player{border-radius:14px;width:min(100%,460px);margin:18px auto 0;animation:.5s both player-in;overflow:hidden;box-shadow:0 10px 30px #0000002e}.player[hidden]{display:none}.player iframe{width:100%;height:var(--player-h,152px);border:0;display:block}.player--video iframe{aspect-ratio:16/9;height:auto}@keyframes player-in{0%{opacity:0;transform:translateY(10px)}}.love-button{border:1px solid var(--rose);background:var(--rose);color:#fff8f6;font-family:var(--sans);letter-spacing:.12em;text-transform:uppercase;transition:transform .3s var(--ease), box-shadow .3s;border-radius:999px;padding:12px 26px;font-size:.85rem;text-decoration:none;display:inline-block}.love-button:hover{box-shadow:0 10px 24px color-mix(in srgb, var(--rose) 35%, transparent);transform:translateY(-2px)}.love-button--ghost{color:var(--rose);background:0 0}.love-button__pause,.is-playing .love-button__play{display:none}.is-playing .love-button__pause{display:inline}.heart{width:70px;fill:var(--rose);filter:drop-shadow(0 8px 20px color-mix(in srgb, var(--rose) 45%, transparent))}.is-active .heart{animation:1.4s ease-in-out 1.2s infinite beat}@keyframes beat{0%,40%,to{transform:scale(1)}15%{transform:scale(1.18)}25%{transform:scale(1.04)}32%{transform:scale(1.14)}}.actions{flex-wrap:wrap;justify-content:center;gap:12px;margin-top:10px;display:flex}.letter__body p,.free__text p{margin:0 0 14px}.letter__body a,.free__text a{color:var(--rose)}.free__image{width:auto;max-width:min(420px,100%);max-height:38vh;box-shadow:var(--shadow);object-fit:cover;border:8px solid #fffdf8;border-radius:4px}.free__title{margin:0;font-size:clamp(2rem,6vw,3rem);font-weight:500;line-height:1.15}.free__text{max-width:38ch;font-size:clamp(1.15rem,3vw,1.4rem)}.love-nav{left:50%;bottom:max(18px, env(safe-area-inset-bottom));z-index:20;border:1px solid var(--line);background:color-mix(in srgb, var(--paper) 75%, transparent);backdrop-filter:blur(10px);opacity:0;transition:transform 1s .6s var(--ease), opacity .8s .6s;border-radius:999px;align-items:center;gap:10px;padding:6px;display:flex;position:fixed;transform:translate(-50%,140%);box-shadow:0 10px 30px #00000014}.is-open .love-nav{opacity:1;transform:translate(-50%)}.is-open .love-nav.is-hidden{opacity:0;transition:transform .6s var(--ease), opacity .5s;transform:translate(-50%,160%)}.love-nav__arrow{background:var(--rose);color:#fff8f6;width:42px;height:42px;transition:opacity .3s, transform .3s var(--ease);border:0;border-radius:50%;place-items:center;display:grid}.love-nav__arrow:hover{transform:scale(1.08)}.is-first .love-nav__arrow[data-action=prev],.is-last .love-nav__arrow[data-action=next]{opacity:.3;pointer-events:none}.love-nav__dots{gap:4px;margin:0;padding:0;list-style:none;display:flex}.love-nav__dot{background:0 0;border:0;width:22px;height:30px;padding:0;display:block;position:relative}.love-nav__dot:before{content:"";border:1.5px solid var(--rose);width:9px;height:9px;transition:background .4s, transform .5s var(--ease);border-radius:50%;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.love-nav__dot.is-past:before{background:var(--rose-soft)}.love-nav__dot[aria-current]:before{background:var(--rose);transform:translate(-50%,-50%)scale(1.5)}@media (width<=640px){body{font-size:1.08rem}.topbar__title{display:none}.reasons{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.reason__face--front{font-size:1.05rem}.reason__face--back{font-size:.9rem}.is-active [data-layout=polaroids] .memory{transform:translate(calc(-50% + var(--x) * 2), calc(-50% + var(--y) * 3)) rotate(var(--r))}.timeline:before{left:22px}.stop{grid-template-columns:44px 1fr}.stop__mark{grid-column:1}.stop__card,.stop:nth-child(2n) .stop__card{--from:24px;text-align:left;grid-column:2;margin:0 0 0 14px}.love-nav__dot{width:16px}.love-nav__arrow{width:38px;height:38px}}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.2s!important;transition-delay:0s!important;animation-duration:.01ms!important;animation-iteration-count:1!important}.balloons{display:none}}.is-sketch .preview-banner{display:none}:root[data-flowers=neon]{--bg:#140f24;--bg-2:#22163d;--paper:#1e1734;--ink:#f6f0ff;--muted:#b9a9dc;--leaf:#29e7cd;--gold:#ffe45e;--line:#c8a0ff33;--shadow:0 18px 60px #0009;--glow:#ff3cac24;--flower:#ff3cac;--flower-soft:#4a1f5c;--rose:#ff4fb6;--rose-soft:#4f2266;--petal-1:#ff3cac;--petal-2:#29e7cd;--petal-3:#ffe45e;--petal-4:#7b5cff;color-scheme:dark}:root[data-flowers=neon][data-theme=noche]{--bg:#0a0714;--bg-2:#170e2a;--paper:#150f26;--glow:#7b5cff33}:root[data-flowers=neon] .memory{background:#f4efff}:root[data-flowers=neon] .reason__face--back{color:#fff}:root[data-flowers=neon] .ama-mark img,:root[data-flowers=neon] .cover__brand img{background:#f4efff}.figure svg{width:clamp(90px,20vw,130px);display:block;overflow:visible}.fig__draw{fill:none;stroke:var(--rose);stroke-width:3px;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:1;stroke-dashoffset:1px;transition:stroke-dashoffset .4s}.fig__fill{fill:var(--rose-soft);opacity:0;transition:opacity .3s}.fig__gem{fill:var(--gold);opacity:0;transform-box:fill-box;transform-origin:50%;transition:opacity .3s,transform .3s;transform:scale(0)}.fig__shape{transform-box:fill-box;transform-origin:50%}.fig__spark,.fig__float{fill:var(--gold);opacity:0}.fig__float{fill:var(--rose)}.is-active .fig__draw{stroke-dashoffset:0;transition:stroke-dashoffset 1.6s ease-in-out .5s}.is-active .fig__draw--late{transition-delay:1.1s}.is-active .fig__fill{opacity:.9;transition:opacity .9s 1.6s}.is-active .fig__gem{opacity:1;transition:opacity .4s 2.4s,transform .6s cubic-bezier(.3,1.8,.5,1) 2.4s;transform:scale(1)}.is-active .figure--corazon .fig__shape{animation:1.4s ease-in-out 2.4s infinite beat}.is-active .figure--estrella .fig__shape{animation:2.4s ease-in-out 2.4s infinite glow-pulse}.is-active .fig__shape--sway{animation:4s ease-in-out 2.4s infinite alternate sway-soft}.is-active .fig__spark{transform-box:fill-box;transform-origin:50%;animation:twinkle 2.2s calc(2s + var(--d)) ease-in-out infinite}.is-active .fig__float{animation:float-up 3.2s calc(2.4s + var(--d)) ease-in infinite}.fig__flame{fill:color-mix(in srgb, var(--gold) 55%, #ff9a3c);opacity:0;transform-box:fill-box;transform-origin:50% 100%}.is-active .fig__flame{opacity:1;transition:opacity .5s calc(2.9s + var(--d));animation:flicker .9s calc(2.9s + var(--d)) ease-in-out infinite alternate;filter:drop-shadow(0 0 4px color-mix(in srgb, var(--gold) 80%, transparent))}@keyframes glow-pulse{50%{filter:drop-shadow(0 0 10px color-mix(in srgb, var(--gold) 70%, transparent));transform:scale(1.08)rotate(6deg)}}@keyframes sway-soft{0%{transform:rotate(-5deg)}to{transform:rotate(5deg)}}@keyframes twinkle{0%,to{opacity:0}50%{opacity:1}}@keyframes float-up{0%{opacity:0;translate:0}20%{opacity:.9}to{opacity:0;translate:0 -90px}}.sky{grid-template-columns:repeat(auto-fit,minmax(130px,1fr));gap:12px;width:min(560px,100%);margin:4px 0 0;padding:0;list-style:none;display:grid}.sky__card{border:1px solid color-mix(in srgb, var(--gold) 30%, transparent);background:color-mix(in srgb, var(--paper) 85%, transparent);border-radius:14px;flex-direction:column;align-items:center;gap:2px;padding:14px 10px 12px;display:flex;box-shadow:0 10px 26px #00000014}.no-gold .sky__card{border-color:var(--line)}.sky__icon{width:56px;height:56px;margin-bottom:4px;overflow:visible}.sky__value{color:var(--rose);font-variant-numeric:tabular-nums;font-size:clamp(1.8rem,6vw,2.4rem);font-weight:500;line-height:1}.sky__label{font-family:var(--sans);letter-spacing:.12em;text-transform:uppercase;color:var(--muted);font-size:.72rem}.sky__sun{fill:#f4a259}.sky__card--atardeceres .sky__sun{animation:5s ease-in-out infinite sunset}.sky__rays line{stroke:#f4a259;stroke-width:2.5px;stroke-linecap:round}.sky__rays{transform-origin:32px 40px;opacity:.8;animation:12s linear infinite rays}.sky__horizon{stroke:var(--muted);stroke-width:2px;stroke-linecap:round}.sky__horizon--short{opacity:.5}@keyframes sunset{0%,to{transform:translateY(-4px)}50%{transform:translateY(12px)}}@keyframes rays{to{transform:rotate(360deg)}}.sky__moon{fill:#f1e3c6}.sky__shadow{fill:#2a1f22;opacity:.88;animation:6s ease-in-out infinite moon-phase}.sky__star{fill:var(--gold);animation:2.4s ease-in-out infinite twinkle}.sky__star--late{animation-delay:1.2s}@keyframes moon-phase{0%,to{transform:translate(0)}50%{transform:translate(38px)}}.sky__corona{fill:none;stroke:#f4a259;stroke-width:3px;opacity:.4;transform-origin:32px 32px;animation:6s ease-in-out infinite corona}.sky__eclipse{fill:#2a1f22;animation:6s ease-in-out infinite eclipse}@keyframes eclipse{0%{transform:translate(-34px)}45%,55%{transform:translate(0)}to{transform:translate(34px)}}@keyframes corona{0%,35%,65%,to{opacity:.25;transform:scale(1)}50%{opacity:.9;transform:scale(1.15)}}.fig__fill--balloon{fill:var(--c)}.figure--globos .fig__draw{stroke:color-mix(in srgb, var(--c) 70%, #000);stroke-width:2px}.fig__line{fill:none;stroke:color-mix(in srgb, var(--ink) 40%, transparent);stroke-width:1.2px;stroke-dasharray:1;stroke-dashoffset:1px}.fig__shine{fill:none;stroke:#ffffffb3;stroke-width:2.5px;stroke-linecap:round;opacity:0}.fig__balloon{transform-box:fill-box;transform-origin:50% 100%}.is-active .fig__line{stroke-dashoffset:0;transition:stroke-dashoffset 1.2s ease-out .4s}.is-active .fig__shine{opacity:1;transition:opacity .6s 2.2s}.is-active .fig__balloon{animation:sway-soft 3.6s calc(2.2s + var(--d)) ease-in-out infinite alternate}.cake{transition:transform .3s var(--ease);background:0 0;border:0;border-radius:50%;place-items:center;padding:8px;display:grid}.cake .figure svg{width:clamp(130px,30vw,180px)}.cake:hover{transform:scale(1.04)}.cake:active{transform:scale(.97)}.cake.is-blown .fig__flame{opacity:0;transition:opacity .4s;animation:.5s ease-in both blow-out}@keyframes blow-out{to{transform:translate(6px)scale(.2,.6)rotate(25deg)}}.cake .figure{position:relative}.cake .figure:after{content:"";background:radial-gradient(closest-side, color-mix(in srgb, var(--muted) 45%, transparent), transparent);opacity:0;pointer-events:none;border-radius:50%;width:40%;height:30%;position:absolute;top:8%;left:50%;translate:-50%}.cake.is-blown .figure:after{animation:1.8s ease-out .2s both smoke}@keyframes smoke{0%{opacity:0;transform:translateY(0)scale(.6)}25%{opacity:.8}to{opacity:0;transform:translateY(-50px)scale(1.6)}}.wish-hint{animation:2.4s ease-in-out infinite breathe}.is-wished .wish-hint{opacity:0;transition:opacity .4s}.is-wished .title{animation:.7s cubic-bezier(.3,1.6,.5,1) .2s cheer}@keyframes cheer{40%{transform:scale(1.12)rotate(-2deg)}}.sky__box,.sky__lid{fill:var(--rose)}.sky__lid{transform-box:fill-box;transform-origin:0 100%;animation:3.2s ease-in-out infinite lid-peek}.sky__ribbon{stroke:var(--gold);stroke-width:4px}.sky__bow{fill:var(--gold);transform-box:fill-box;transform-origin:50% 100%;animation:3.2s ease-in-out infinite lid-peek}.sky__gift{transform-box:fill-box;transform-origin:50% 100%;animation:3.2s ease-in-out infinite gift-hop}@keyframes lid-peek{0%,60%,to{translate:0;rotate:0deg}72%{translate:0 -5px;rotate:-8deg}}@keyframes gift-hop{0%,55%,to{transform:none}62%{transform:scale(1.06,.92)}70%{transform:translateY(-4px)}}.sky__heart{fill:var(--rose);transform-box:fill-box;transform-origin:50%;animation:.75s ease-in-out infinite heartbeat}.sky__pulse{fill:none;stroke:var(--gold);stroke-width:2.4px;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:.35 .65;animation:1.5s linear infinite pulse-run}@keyframes heartbeat{0%,to{transform:scale(1)}15%{transform:scale(1.14)}30%{transform:scale(1)}45%{transform:scale(1.08)}}@keyframes pulse-run{0%{stroke-dashoffset:1px}to{stroke-dashoffset:0}}.sky__card.is-today{border-color:var(--rose);background:color-mix(in srgb, var(--rose-soft) 55%, var(--paper))}.progress{z-index:21;pointer-events:none;opacity:0;height:3px;transition:opacity .6s;position:fixed;top:0;left:0;right:0}.progress span{background:linear-gradient(90deg, var(--petal-1), var(--petal-2), var(--petal-3), var(--petal-4));height:100%;transform:scaleX(var(--progress,0));transform-origin:0;transition:transform .9s var(--ease);display:block}.is-open .progress{opacity:1}.is-gsap .stage{perspective:1400px;perspective-origin:50% 45%}.is-gsap .moment,.is-gsap .moment.is-leaving,.is-gsap .moment.is-active{filter:none;touch-action:pan-y;transition:none;transform:none}.is-gsap .reveal,.is-gsap .is-active .reveal{opacity:1;transition:none;transform:none}.is-gsap .envelope,.is-gsap .envelope__flap,.is-gsap .envelope__letter,.is-gsap .seal{transition:none}.is-gsap.is-opening .envelope,.is-gsap.is-closing .envelope,.is-gsap.is-opening .seal,.is-gsap.is-closing .seal{animation:none}.is-gsap .cake{transition:none}.is-gsap .reason,.is-gsap .sky__card{transform-style:preserve-3d}.is-dragging,.is-dragging *{cursor:grabbing;user-select:none}.is-gsap .title,.is-gsap .intro__name{perspective:700px}.word{white-space:nowrap;display:inline-block}.char{will-change:transform;display:inline-block}.split-label{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.moment--intro{gap:10px}.intro__name{color:var(--rose);text-shadow:0 1px 0 color-mix(in srgb, var(--rose) 82%, #000), 0 2px 0 color-mix(in srgb, var(--rose) 76%, #000), 0 3px 0 color-mix(in srgb, var(--rose) 70%, #000), 0 4px 0 color-mix(in srgb, var(--rose) 64%, #000), 0 14px 24px #0000002e;margin:0;font-size:clamp(4.8rem,19vw,8.5rem);line-height:1.15}.intro__scene{perspective:900px;width:min(340px,86vw);height:230px;transform-style:preserve-3d;place-items:center;display:grid;position:relative}.intro__scene:before{content:"";background:radial-gradient(closest-side, color-mix(in srgb, var(--gold) 35%, transparent), transparent);filter:blur(6px);border-radius:50%;position:absolute;inset:10% 18%}.intro__scene .figure{position:relative;transform:translateZ(0)}.intro__scene .figure svg{width:clamp(120px,30vw,150px)}.ring{--r:calc(var(--n) * .24rem);width:0;height:0;transform-style:preserve-3d;animation:16s linear infinite ring-spin;position:absolute;top:74%;left:50%}.ring span{width:1em;font-family:var(--sans);text-align:center;color:var(--rose);backface-visibility:hidden;transform:rotateY(calc(var(--k) * 360deg / var(--n))) translateZ(var(--r));font-size:1.1rem;font-weight:800;line-height:1.2;position:absolute;top:-.6em;left:-.5em}.ring .ring__star{color:var(--gold)}@keyframes ring-spin{0%{transform:rotateX(-14deg)rotateY(0)}to{transform:rotateX(-14deg)rotateY(-360deg)}}@media (width<=640px){.intro__scene{height:200px}.ring span{font-size:.95rem}.ring{--r:calc(var(--n) * .19rem)}}.locked{z-index:10;text-align:center;font-family:var(--sans);color:var(--ink);flex-direction:column;justify-content:center;align-items:center;gap:.6rem;padding:24px 16px;display:flex;position:fixed;inset:0;overflow-y:auto}.locked__kicker{letter-spacing:.3em;text-transform:uppercase;color:var(--muted);margin:0;font-size:.75rem}.locked__name{font-family:var(--script);font-size-adjust:.34;color:var(--rose);margin:0;font-size:clamp(3.2rem,14vw,6rem);font-weight:400;line-height:1.1}.locked__gift{transform-origin:50% 95%;width:clamp(130px,34vw,190px);animation:3.2s ease-in-out infinite locked-wobble;overflow:visible}.locked__box{fill:var(--rose)}.locked__lid{fill:color-mix(in srgb, var(--rose) 78%, #000)}.locked__ribbon,.locked__bow{fill:var(--gold)}.locked__lock{fill:var(--paper);stroke:var(--gold);stroke-width:3px}@keyframes locked-wobble{0%,60%,to{transform:rotate(0)}66%{transform:rotate(-6deg)}72%{transform:rotate(6deg)}78%{transform:rotate(-3deg)}84%{transform:rotate(2deg)}}.locked__from{max-width:32ch;font-family:var(--serif);margin:.6rem 0 0;font-size:1.1rem}.locked__clock{gap:clamp(8px,3vw,14px);margin:0;padding:0;list-style:none;display:flex}.locked__clock li{background:var(--paper);min-width:clamp(62px,18vw,82px);box-shadow:var(--shadow);border-radius:16px;padding:12px 6px 10px;display:grid}.locked__num{font-family:var(--serif);font-variant-numeric:tabular-nums;color:var(--rose);font-size:clamp(1.8rem,8vw,2.6rem);line-height:1.1}.locked__clock small{letter-spacing:.08em;text-transform:uppercase;color:var(--muted);font-size:.72rem}.locked__date{color:var(--muted);margin:.4rem 0 0;font-size:.9rem}.locked__date:first-letter{text-transform:uppercase}.locked__remind{cursor:pointer;margin-top:.6rem}@media (prefers-reduced-motion:reduce){.locked__gift{animation:none}}.wall__count{font-size:clamp(1.9rem,5.4vw,2.8rem)}.wall{text-align:left;flex-wrap:wrap;justify-content:center;align-items:flex-start;gap:16px;width:min(780px,100%);margin:6px 0 0;padding:0;list-style:none;display:flex}.wall__note{background:var(--paper);box-shadow:var(--shadow);rotate:var(--tilt,0deg);border-radius:14px;flex:0 230px;margin:10px 0 0;padding:20px 16px 12px;position:relative}.wall__note:before{content:"";background:color-mix(in srgb, var(--c,var(--rose)) 70%, transparent);width:72px;height:22px;translate:-50%;rotate:calc(var(--tilt,0deg) * -2);position:absolute;top:-10px;left:50%}.wall__photo{aspect-ratio:4/3;object-fit:cover;border-radius:6px;width:100%;margin-bottom:10px;display:block}.wall__text{white-space:pre-line;margin:0;font-size:1.02rem;line-height:1.45}.wall__name{font-family:var(--script);font-size-adjust:.34;color:var(--rose);text-align:right;margin:8px 0 0;font-size:1.25rem}@media (width<=560px){.wall__note{flex-basis:100%}}.share-moment{flex-direction:column;align-items:center;gap:6px;display:none}.is-wished .share-moment{animation:share-in .6s .8s var(--ease) both;display:flex}.share-moment .love-button[disabled]{opacity:.6;cursor:progress}.share-moment__save{font-family:var(--sans);color:var(--muted);cursor:pointer;font-size:.85rem}.share-moment__status{min-height:1.2em;font-family:var(--sans);color:var(--muted);margin:0;font-size:.82rem}@keyframes share-in{0%{opacity:0;transform:translateY(12px)}}@media (prefers-reduced-motion:reduce){.is-wished .share-moment{animation:none}}
