:root{--color-rose: #D4899A;--color-rose-light: #E8B4C0;--color-rose-lighter: #F5DDE3;--color-rose-pale: #FBF0F3;--color-teal: #7EAAB4;--color-teal-light: #A6C8CF;--color-teal-lighter: #D4E5E9;--color-teal-pale: #EDF4F6;--color-bg: #F8F6F3;--color-bg-warm: #F4F1ED;--color-white: #FFFFFF;--color-text: #2D2D2D;--color-text-light: #6B6B6B;--color-text-lighter: #9B9B9B;--color-border: #E8E4E0;--color-border-light: #F0EDE9;--font-heading: "Manrope", sans-serif;--font-body: "Inter", sans-serif;--space-xs: .5rem;--space-sm: 1rem;--space-md: 1.5rem;--space-lg: 2.5rem;--space-xl: 4rem;--space-2xl: 6rem;--space-3xl: 8rem;--space-4xl: 10rem;--max-width: 1200px;--border-radius: 12px;--border-radius-sm: 8px;--border-radius-lg: 16px;--border-radius-pill: 50px;--shadow-sm: 0 2px 8px rgba(45, 45, 45, .04);--shadow-md: 0 4px 16px rgba(45, 45, 45, .06);--shadow-lg: 0 8px 32px rgba(45, 45, 45, .08);--shadow-card: 0 2px 12px rgba(45, 45, 45, .05);--transition-fast: .2s ease;--transition-base: .3s ease;--transition-slow: .5s ease}*,*:before,*:after{margin:0;padding:0;box-sizing:border-box}html{scroll-behavior:smooth;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body{font-family:var(--font-body);font-weight:300;color:var(--color-text);background-color:var(--color-bg);line-height:1.7;font-size:16px;overflow-x:hidden}img{max-width:100%;display:block}a{text-decoration:none;color:inherit}button{border:none;cursor:pointer;font-family:var(--font-body)}input{font-family:var(--font-body)}h1,h2,h3,h4,h5,h6{font-family:var(--font-heading);font-weight:500;line-height:1.2}ul{list-style:none}.container{width:100%;max-width:var(--max-width);margin:0 auto;padding:0 var(--space-md)}.section{padding:var(--space-3xl) 0}.section-title{font-family:var(--font-heading);font-size:clamp(1.5rem,3vw,2.25rem);font-weight:500;letter-spacing:.06em;text-transform:uppercase;text-align:center;color:var(--color-text);margin-bottom:var(--space-xl)}.section-subtitle{font-family:var(--font-body);font-size:1rem;font-weight:300;color:var(--color-text-light);text-align:center;max-width:500px;margin:calc(var(--space-sm) * -1) auto var(--space-xl);line-height:1.8}::-webkit-scrollbar{width:6px}::-webkit-scrollbar-track{background:var(--color-bg)}::-webkit-scrollbar-thumb{background:var(--color-teal-light);border-radius:3px}::-webkit-scrollbar-thumb:hover{background:var(--color-teal)}::selection{background:var(--color-rose-lighter);color:var(--color-text)}@keyframes fadeInUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes scaleIn{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}.animate-fade-in-up{animation:fadeInUp .8s ease forwards}.animate-fade-in{animation:fadeIn .6s ease forwards}.animate-scale-in{animation:scaleIn .6s ease forwards}.delay-1{animation-delay:.1s}.delay-2{animation-delay:.2s}.delay-3{animation-delay:.3s}.delay-4{animation-delay:.4s}.delay-5{animation-delay:.5s}.navbar{position:fixed;top:0;left:0;right:0;z-index:1000;padding:1.25rem 0;transition:all var(--transition-base);background:transparent}.navbar--scrolled{background:#f8f6f3eb;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);padding:.875rem 0;box-shadow:0 1px 0 var(--color-border-light)}.navbar__inner{display:flex;align-items:center;justify-content:space-between}.navbar__logo{display:flex;align-items:center;gap:.6rem;z-index:1001}.navbar__logo-img{width:32px;height:32px;object-fit:contain}.navbar__brand{font-family:var(--font-heading);font-size:1.15rem;font-weight:600;letter-spacing:.15em;color:var(--color-text)}.navbar__right{display:flex;align-items:center;gap:2rem}.navbar__links{display:flex;align-items:center;gap:2.5rem}.navbar__link{font-family:var(--font-body);font-size:.82rem;font-weight:400;letter-spacing:.08em;text-transform:uppercase;color:var(--color-text-light);transition:color var(--transition-fast);position:relative;background:none;border:none;padding:0;cursor:pointer}.navbar__link:after{content:"";position:absolute;bottom:-4px;left:0;width:0;height:1px;background:var(--color-rose);transition:width var(--transition-base)}.navbar__link:hover{color:var(--color-text)}.navbar__link:hover:after{width:100%}.navbar__bag{position:relative;display:flex;align-items:center;justify-content:center;color:var(--color-text-light);transition:color var(--transition-fast);padding:4px}.navbar__bag:hover{color:var(--color-rose)}.navbar__bag-count{position:absolute;top:-4px;right:-6px;min-width:18px;height:18px;display:flex;align-items:center;justify-content:center;background:var(--color-rose);color:var(--color-white);font-family:var(--font-body);font-size:.6rem;font-weight:600;border-radius:50%;padding:0 4px;animation:scaleIn .3s cubic-bezier(.16,1,.3,1)}.navbar__hamburger{display:none;flex-direction:column;gap:5px;background:none;padding:4px;z-index:1001}.navbar__hamburger span{display:block;width:22px;height:1.5px;background:var(--color-text);transition:all var(--transition-base);transform-origin:center}.navbar__hamburger--active span:nth-child(1){transform:translateY(6.5px) rotate(45deg)}.navbar__hamburger--active span:nth-child(2){opacity:0}.navbar__hamburger--active span:nth-child(3){transform:translateY(-6.5px) rotate(-45deg)}@media(max-width:768px){.navbar__hamburger{display:flex}.navbar__right{position:fixed;inset:0;background:var(--color-bg);flex-direction:column;justify-content:center;gap:2rem;opacity:0;pointer-events:none;transition:opacity var(--transition-base);z-index:1000}.navbar__right--open{opacity:1;pointer-events:all}.navbar__links{flex-direction:column;gap:2rem}.navbar__link{font-size:1.1rem;letter-spacing:.12em}.navbar__bag{margin-top:1rem}.navbar__bag svg{width:24px;height:24px}}.footer{padding:var(--space-3xl) 0 var(--space-lg);background:var(--color-bg-warm)}.footer__inner{display:flex;flex-direction:column;align-items:center;text-align:center}.footer__brand{display:flex;align-items:center;gap:.6rem;margin-bottom:var(--space-lg)}.footer__logo{width:36px;height:36px;object-fit:contain}.footer__brand-name{font-family:var(--font-heading);font-size:1.15rem;font-weight:600;letter-spacing:.15em;color:var(--color-text)}.footer__nav{display:flex;align-items:center;gap:2rem;margin-bottom:var(--space-lg)}.footer__link{font-family:var(--font-body);font-size:.8rem;font-weight:400;letter-spacing:.08em;text-transform:uppercase;color:var(--color-text-light);transition:color var(--transition-fast)}.footer__link:hover{color:var(--color-rose)}.footer__social{display:flex;align-items:center;gap:1.25rem;margin-bottom:var(--space-lg)}.footer__social-link{display:flex;align-items:center;justify-content:center;width:40px;height:40px;border-radius:50%;background:var(--color-bg);color:var(--color-text-light);transition:all var(--transition-base)}.footer__social-link:hover{background:var(--color-rose-lighter);color:var(--color-rose);transform:translateY(-2px)}.footer__divider{width:60px;height:1px;background:var(--color-border);margin-bottom:var(--space-md)}.footer__copyright{font-family:var(--font-body);font-size:.75rem;font-weight:300;color:var(--color-text-lighter);letter-spacing:.04em}@media(max-width:480px){.footer__nav{flex-wrap:wrap;justify-content:center;gap:1rem 1.5rem}}.hero{position:relative;width:100%;min-height:100vh;display:flex;align-items:center;justify-content:center;overflow:hidden}.hero__bg-wrapper{position:absolute;inset:0;z-index:0}.hero__bg{width:100%;height:100%;object-fit:cover;object-position:center 35%;transform:scale(1.08);transition:transform 1.8s cubic-bezier(.16,1,.3,1);will-change:transform}.hero__overlay{position:absolute;inset:0;background:radial-gradient(ellipse 70% 60% at 50% 45%,rgba(248,246,243,.55) 0%,rgba(248,246,243,.25) 50%,transparent 100%);pointer-events:none}.hero__bottom-fade{position:absolute;bottom:0;left:0;right:0;height:160px;background:linear-gradient(to top,var(--color-bg) 0%,transparent 100%);z-index:1;pointer-events:none}.hero__content{position:relative;z-index:2;display:flex;flex-direction:column;align-items:center;text-align:center;padding-top:80px}.hero__text{display:flex;flex-direction:column;align-items:center;opacity:0;transform:translateY(40px);transition:all 1.2s cubic-bezier(.16,1,.3,1)}.hero--visible .hero__text{opacity:1;transform:translateY(0)}.hero__logo{width:72px;height:72px;object-fit:contain;margin-bottom:var(--space-md);filter:drop-shadow(0 2px 12px rgba(45,45,45,.1))}.hero__title{font-family:var(--font-heading);font-size:clamp(3.5rem,10vw,6.5rem);font-weight:600;letter-spacing:.22em;color:var(--color-text);margin-bottom:var(--space-md);line-height:1;text-shadow:0 2px 20px rgba(248,246,243,.6)}.hero__subtitle{font-family:var(--font-body);font-size:clamp(.92rem,1.8vw,1.1rem);font-weight:300;color:var(--color-text-light);line-height:1.9;margin-bottom:var(--space-lg);letter-spacing:.03em;text-shadow:0 1px 8px rgba(248,246,243,.8)}.hero__cta{display:inline-flex;align-items:center;justify-content:center;padding:.9rem 2.8rem;background:var(--color-rose);color:var(--color-white);font-family:var(--font-body);font-size:.82rem;font-weight:500;letter-spacing:.12em;text-transform:uppercase;border-radius:var(--border-radius-pill);transition:all var(--transition-base);box-shadow:0 6px 24px #d4899a4d}.hero__cta:hover{background:var(--color-teal);transform:translateY(-2px);box-shadow:0 8px 28px #7eaab459}@media(max-width:768px){.hero{min-height:85vh}.hero__bg{object-position:center 40%}.hero__overlay{background:radial-gradient(ellipse 90% 70% at 50% 45%,rgba(248,246,243,.65) 0%,rgba(248,246,243,.35) 50%,transparent 100%)}.hero__logo{width:56px;height:56px}.hero__bottom-fade{height:100px}}.products__grid{display:grid;grid-template-columns:repeat(4,1fr);gap:var(--space-lg)}.product-card{opacity:0;transform:translateY(40px);transition:all .8s cubic-bezier(.16,1,.3,1)}.products--visible .product-card{opacity:1;transform:translateY(0)}.products--visible .product-card--delay-1{transition-delay:.1s}.products--visible .product-card--delay-2{transition-delay:.2s}.products--visible .product-card--delay-3{transition-delay:.3s}.products--visible .product-card--delay-4{transition-delay:.4s}.product-card__image-wrapper{position:relative;border-radius:var(--border-radius);overflow:hidden;background:var(--color-white);box-shadow:var(--shadow-card);aspect-ratio:3 / 4}.product-card__image{width:100%;height:100%;object-fit:cover;transition:transform .6s cubic-bezier(.16,1,.3,1)}.product-card:hover .product-card__image{transform:scale(1.05)}.product-card__overlay{position:absolute;inset:0;background:#2d2d2d26;display:flex;align-items:center;justify-content:center;opacity:0;transition:opacity var(--transition-base)}.product-card:hover .product-card__overlay{opacity:1}.product-card__quick-view{padding:.6rem 1.6rem;background:var(--color-white);color:var(--color-text);font-family:var(--font-body);font-size:.75rem;font-weight:500;letter-spacing:.1em;text-transform:uppercase;border:none;border-radius:var(--border-radius-pill);cursor:pointer;transform:translateY(10px);transition:all var(--transition-base)}.product-card__quick-view:hover{background:var(--color-rose);color:var(--color-white)}.product-card:hover .product-card__quick-view{transform:translateY(0)}.product-card__info{padding:var(--space-sm) .25rem;text-align:center}.product-card__name{font-family:var(--font-heading);font-size:.9rem;font-weight:500;color:var(--color-text);margin-bottom:.3rem;letter-spacing:.02em}.product-card__price{font-family:var(--font-body);font-size:.85rem;font-weight:400;color:var(--color-text-light)}@media(max-width:1024px){.products__grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:480px){.products__grid{grid-template-columns:repeat(2,1fr);gap:var(--space-sm)}.product-card__name{font-size:.8rem}.product-card__price{font-size:.78rem}}.products__browse-all{display:flex;justify-content:center;margin-top:var(--space-xl)}.products__browse-btn{display:inline-flex;align-items:center;justify-content:center;padding:.85rem 2.8rem;font-family:var(--font-body);font-size:.82rem;font-weight:500;letter-spacing:.12em;text-transform:uppercase;color:var(--color-text-light);background:transparent;border:1px solid var(--color-border);border-radius:var(--border-radius-pill);transition:all var(--transition-base)}.products__browse-btn:hover{background:var(--color-rose);color:var(--color-white);border-color:var(--color-rose);transform:translateY(-2px);box-shadow:0 6px 20px #d4899a40}.modal-backdrop{position:fixed;inset:0;z-index:2000;background:#2d2d2d59;backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);display:flex;align-items:center;justify-content:center;padding:var(--space-md);opacity:0;pointer-events:none;transition:opacity .35s ease}.modal-backdrop--open{opacity:1;pointer-events:all}.modal{position:relative;width:100%;max-width:880px;max-height:90vh;background:var(--color-white);border-radius:var(--border-radius-lg);box-shadow:0 24px 64px #2d2d2d26;overflow:hidden;transform:translateY(30px) scale(.96);transition:transform .4s cubic-bezier(.16,1,.3,1)}.modal--open{transform:translateY(0) scale(1)}.modal__close{position:absolute;top:1rem;right:1rem;z-index:10;width:36px;height:36px;display:flex;align-items:center;justify-content:center;background:var(--color-bg);border-radius:50%;color:var(--color-text-light);transition:all var(--transition-fast)}.modal__close:hover{background:var(--color-rose-lighter);color:var(--color-rose)}.modal__body{display:grid;grid-template-columns:1fr 1fr;min-height:480px}.modal__image-side{background:var(--color-bg);display:flex;align-items:center;justify-content:center;overflow:hidden}.modal__image{width:100%;height:100%;object-fit:cover;transition:transform .6s cubic-bezier(.16,1,.3,1)}.modal__image-side:hover .modal__image{transform:scale(1.04)}.modal__details-side{display:flex;align-items:center;padding:var(--space-xl);overflow-y:auto}.modal__details-content{width:100%}.modal__category{display:inline-block;font-family:var(--font-body);font-size:.7rem;font-weight:500;letter-spacing:.12em;text-transform:uppercase;color:var(--color-teal);margin-bottom:.75rem}.modal__product-name{font-family:var(--font-heading);font-size:1.5rem;font-weight:500;color:var(--color-text);letter-spacing:.02em;line-height:1.3;margin-bottom:.5rem}.modal__product-price{display:inline-block;font-family:var(--font-heading);font-size:1.25rem;font-weight:500;color:var(--color-rose);letter-spacing:.02em}.modal__divider{width:40px;height:1px;background:var(--color-border);margin:1.25rem 0}.modal__product-description{font-family:var(--font-body);font-size:.9rem;font-weight:300;color:var(--color-text-light);line-height:1.8;margin-bottom:1.5rem}.modal__size-section{margin-bottom:1.75rem}.modal__size-label{display:block;font-family:var(--font-body);font-size:.75rem;font-weight:500;letter-spacing:.08em;text-transform:uppercase;color:var(--color-text);margin-bottom:.6rem}.modal__size-options{display:flex;gap:.5rem}.modal__size-btn{width:40px;height:40px;display:flex;align-items:center;justify-content:center;font-family:var(--font-body);font-size:.75rem;font-weight:400;letter-spacing:.04em;color:var(--color-text-light);background:var(--color-bg);border:1px solid var(--color-border-light);border-radius:var(--border-radius-sm);transition:all var(--transition-fast)}.modal__size-btn:hover{border-color:var(--color-rose);color:var(--color-rose);background:var(--color-rose-pale)}.modal__size-btn--active,.modal__size-btn--active:hover{border-color:var(--color-rose);color:var(--color-white);background:var(--color-rose);font-weight:500}.modal__size-btn:focus{outline:none}.modal__buy-btn{width:100%;padding:.95rem 2rem;background:var(--color-rose);color:var(--color-white);font-family:var(--font-body);font-size:.82rem;font-weight:500;letter-spacing:.12em;text-transform:uppercase;border-radius:var(--border-radius-pill);transition:all var(--transition-base);margin-bottom:.75rem}.modal__buy-btn:hover:not(:disabled){background:var(--color-teal);transform:translateY(-2px);box-shadow:0 8px 24px #7eaab440}.modal__buy-btn--added{background:var(--color-teal)!important;cursor:default;transform:none!important;box-shadow:none!important}.modal__shipping-note{font-family:var(--font-body);font-size:.72rem;font-weight:300;color:var(--color-text-lighter);text-align:center;letter-spacing:.02em}@media(max-width:700px){.modal{max-width:100%;max-height:95vh;border-radius:var(--border-radius)}.modal__body{grid-template-columns:1fr;min-height:auto}.modal__image-side{max-height:300px}.modal__details-side{padding:var(--space-md)}}.editorial__grid{display:grid;grid-template-columns:1.4fr 1fr;gap:var(--space-lg);align-items:start}.editorial__card{opacity:0;transform:translateY(50px);transition:all 1s cubic-bezier(.16,1,.3,1)}.editorial--visible .editorial__card{opacity:1;transform:translateY(0)}.editorial--visible .editorial__card--small{transition-delay:.2s}.editorial__image-wrapper{border-radius:var(--border-radius-lg);overflow:hidden;background:var(--color-white);box-shadow:var(--shadow-md)}.editorial__card--large .editorial__image-wrapper{aspect-ratio:4 / 5}.editorial__card--small .editorial__image-wrapper{aspect-ratio:1 / 1}.editorial__image{width:100%;height:100%;object-fit:cover;transition:transform .8s cubic-bezier(.16,1,.3,1)}.editorial__card:hover .editorial__image{transform:scale(1.04)}.editorial__caption{padding:var(--space-md) .25rem}.editorial__tag{display:inline-block;font-family:var(--font-body);font-size:.7rem;font-weight:500;letter-spacing:.12em;text-transform:uppercase;color:var(--color-rose);margin-bottom:.5rem}.editorial__card-title{font-family:var(--font-heading);font-size:1.15rem;font-weight:500;color:var(--color-text);margin-bottom:.4rem;letter-spacing:.02em}.editorial__card-text{font-family:var(--font-body);font-size:.88rem;font-weight:300;color:var(--color-text-light);line-height:1.7}@media(max-width:768px){.editorial__grid{grid-template-columns:1fr}.editorial__card--large .editorial__image-wrapper{aspect-ratio:3 / 4}.editorial__card--small .editorial__image-wrapper{aspect-ratio:4 / 3}}.banner__wrapper{position:relative;border-radius:var(--border-radius-lg);overflow:hidden;opacity:0;transform:scale(.97);transition:all 1s cubic-bezier(.16,1,.3,1)}.banner--visible .banner__wrapper{opacity:1;transform:scale(1)}.banner__image{width:100%;height:auto;aspect-ratio:21 / 9;object-fit:cover;display:block;transition:transform .8s cubic-bezier(.16,1,.3,1)}.banner__wrapper:hover .banner__image{transform:scale(1.03)}.banner__overlay{position:absolute;inset:0;background:linear-gradient(to top,rgba(45,45,45,.55) 0%,rgba(45,45,45,.15) 50%,transparent 100%);display:flex;align-items:flex-end;justify-content:center;padding:var(--space-xl)}.banner__content{text-align:center;color:var(--color-white)}.banner__tag{display:inline-block;font-family:var(--font-body);font-size:.7rem;font-weight:500;letter-spacing:.15em;text-transform:uppercase;opacity:.8;margin-bottom:.75rem}.banner__title{font-family:var(--font-heading);font-size:clamp(1.5rem,4vw,2.5rem);font-weight:500;letter-spacing:.06em;margin-bottom:.75rem;color:var(--color-white)}.banner__text{font-family:var(--font-body);font-size:clamp(.85rem,1.5vw,1rem);font-weight:300;opacity:.85;line-height:1.8}@media(max-width:768px){.banner__image{aspect-ratio:16 / 10}.banner__overlay{padding:var(--space-md)}}.newsletter__inner{background:var(--color-white);border-radius:var(--border-radius-lg);padding:var(--space-3xl) var(--space-xl);text-align:center;box-shadow:var(--shadow-sm);border:1px solid var(--color-border-light);opacity:0;transform:translateY(40px);transition:all .8s cubic-bezier(.16,1,.3,1)}.newsletter--visible .newsletter__inner{opacity:1;transform:translateY(0)}.newsletter__content{max-width:520px;margin:0 auto}.newsletter__title{font-family:var(--font-heading);font-size:clamp(1.5rem,3vw,2.25rem);font-weight:500;letter-spacing:.06em;text-transform:uppercase;color:var(--color-text);margin-bottom:var(--space-sm)}.newsletter__text{font-family:var(--font-body);font-size:.95rem;font-weight:300;color:var(--color-text-light);line-height:1.8;margin-bottom:var(--space-lg)}.newsletter__form{margin-bottom:var(--space-sm)}.newsletter__input-wrapper{display:flex;gap:.75rem;max-width:440px;margin:0 auto}.newsletter__input{flex:1;padding:.85rem 1.25rem;border:1px solid var(--color-border);border-radius:var(--border-radius-pill);background:var(--color-bg);font-size:.88rem;font-weight:300;color:var(--color-text);outline:none;transition:border-color var(--transition-fast)}.newsletter__input::placeholder{color:var(--color-text-lighter)}.newsletter__input:focus{border-color:var(--color-teal-light)}.newsletter__btn{padding:.85rem 1.8rem;background:var(--color-teal);color:var(--color-white);font-size:.8rem;font-weight:500;letter-spacing:.1em;text-transform:uppercase;border-radius:var(--border-radius-pill);white-space:nowrap;transition:all var(--transition-base)}.newsletter__btn:hover{background:var(--color-rose);transform:translateY(-2px);box-shadow:0 6px 20px #d4899a40}.newsletter__disclaimer{font-family:var(--font-body);font-size:.75rem;font-weight:300;color:var(--color-text-lighter);letter-spacing:.02em}@media(max-width:480px){.newsletter__inner{padding:var(--space-2xl) var(--space-md)}.newsletter__input-wrapper{flex-direction:column}.newsletter__btn{width:100%;text-align:center}}.bag-page{min-height:100vh;padding-top:calc(80px + var(--space-2xl));padding-bottom:var(--space-3xl)}.bag__header{display:flex;align-items:baseline;gap:var(--space-sm);margin-bottom:var(--space-xl)}.bag__title{font-family:var(--font-heading);font-size:clamp(1.75rem,4vw,2.5rem);font-weight:500;letter-spacing:.06em;text-transform:uppercase;color:var(--color-text)}.bag__count{font-family:var(--font-body);font-size:.88rem;font-weight:300;color:var(--color-text-lighter)}.bag__layout{display:grid;grid-template-columns:1fr 380px;gap:var(--space-xl);align-items:start}.bag__items{display:flex;flex-direction:column;gap:var(--space-md)}.bag-item{display:flex;gap:var(--space-md);background:var(--color-white);border-radius:var(--border-radius);padding:var(--space-md);box-shadow:var(--shadow-sm);border:1px solid var(--color-border-light);animation:fadeInUp .5s ease forwards}.bag-item__image-wrapper{width:140px;min-width:140px;aspect-ratio:3 / 4;border-radius:var(--border-radius-sm);overflow:hidden;background:var(--color-bg)}.bag-item__image{width:100%;height:100%;object-fit:cover}.bag-item__details{flex:1;display:flex;flex-direction:column;justify-content:space-between}.bag-item__top{display:flex;justify-content:space-between;align-items:flex-start}.bag-item__name{font-family:var(--font-heading);font-size:1.05rem;font-weight:500;color:var(--color-text);margin-bottom:.3rem;letter-spacing:.01em}.bag-item__size{font-family:var(--font-body);font-size:.8rem;font-weight:300;color:var(--color-text-lighter);letter-spacing:.02em}.bag-item__price{font-family:var(--font-heading);font-size:1.05rem;font-weight:500;color:var(--color-rose)}.bag-item__bottom{display:flex;align-items:center;justify-content:space-between;margin-top:var(--space-sm)}.bag-item__quantity{display:flex;align-items:center;gap:0;border:1px solid var(--color-border);border-radius:var(--border-radius-sm);overflow:hidden}.bag-item__qty-btn{width:36px;height:36px;display:flex;align-items:center;justify-content:center;background:var(--color-bg);border:none;font-size:1rem;color:var(--color-text-light);cursor:pointer;transition:all var(--transition-fast)}.bag-item__qty-btn:hover{background:var(--color-teal-lighter);color:var(--color-teal)}.bag-item__qty-value{width:40px;text-align:center;font-family:var(--font-body);font-size:.85rem;font-weight:500;color:var(--color-text)}.bag-item__remove{background:none;border:none;font-family:var(--font-body);font-size:.78rem;font-weight:400;color:var(--color-text-lighter);letter-spacing:.04em;cursor:pointer;transition:color var(--transition-fast);text-decoration:underline;text-underline-offset:3px}.bag-item__remove:hover{color:var(--color-rose)}.bag__summary{position:sticky;top:100px}.bag__summary-card{background:var(--color-white);border-radius:var(--border-radius);padding:var(--space-lg);box-shadow:var(--shadow-sm);border:1px solid var(--color-border-light)}.bag__summary-title{font-family:var(--font-heading);font-size:1.1rem;font-weight:500;letter-spacing:.04em;text-transform:uppercase;color:var(--color-text);margin-bottom:var(--space-md)}.bag__summary-rows{display:flex;flex-direction:column;gap:.75rem}.bag__summary-row{display:flex;justify-content:space-between;font-family:var(--font-body);font-size:.88rem;font-weight:300;color:var(--color-text-light)}.bag__summary-row--total{font-weight:500;font-size:1.05rem;color:var(--color-text);margin-top:.25rem}.bag__summary-divider{height:1px;background:var(--color-border);margin:var(--space-sm) 0}.bag__summary-free-shipping{font-family:var(--font-body);font-size:.75rem;font-weight:400;color:var(--color-teal);text-align:center;margin-top:var(--space-sm);padding:.5rem;background:var(--color-teal-pale);border-radius:var(--border-radius-sm)}.bag__checkout-btn{width:100%;padding:.95rem 2rem;margin-top:var(--space-md);background:var(--color-rose);color:var(--color-white);font-family:var(--font-body);font-size:.82rem;font-weight:500;letter-spacing:.12em;text-transform:uppercase;border:none;border-radius:var(--border-radius-pill);cursor:pointer;transition:all var(--transition-base)}.bag__checkout-btn:hover{background:var(--color-teal);transform:translateY(-2px);box-shadow:0 8px 24px #7eaab440}.bag__clear-btn{width:100%;padding:.7rem;margin-top:.5rem;background:none;border:none;font-family:var(--font-body);font-size:.78rem;font-weight:400;color:var(--color-text-lighter);cursor:pointer;transition:color var(--transition-fast);letter-spacing:.04em}.bag__clear-btn:hover{color:var(--color-rose)}.bag__continue-link{display:block;margin-top:var(--space-md);font-family:var(--font-body);font-size:.82rem;font-weight:400;color:var(--color-text-light);letter-spacing:.02em;transition:color var(--transition-fast)}.bag__continue-link:hover{color:var(--color-teal)}.bag__empty{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;min-height:50vh;animation:fadeInUp .6s ease forwards}.bag__empty-icon{color:var(--color-teal-light);margin-bottom:var(--space-md)}.bag__empty-title{font-family:var(--font-heading);font-size:clamp(1.5rem,3vw,2rem);font-weight:500;letter-spacing:.06em;text-transform:uppercase;color:var(--color-text);margin-bottom:var(--space-sm)}.bag__empty-text{font-family:var(--font-body);font-size:.95rem;font-weight:300;color:var(--color-text-light);line-height:1.8;margin-bottom:var(--space-lg)}.bag__empty-cta{display:inline-flex;align-items:center;padding:.9rem 2.8rem;background:var(--color-rose);color:var(--color-white);font-family:var(--font-body);font-size:.82rem;font-weight:500;letter-spacing:.12em;text-transform:uppercase;border-radius:var(--border-radius-pill);transition:all var(--transition-base)}.bag__empty-cta:hover{background:var(--color-teal);transform:translateY(-2px);box-shadow:0 8px 24px #7eaab440}@media(max-width:860px){.bag__layout{grid-template-columns:1fr}.bag__summary{position:static}}@media(max-width:540px){.bag-item{flex-direction:column}.bag-item__image-wrapper{width:100%;aspect-ratio:16 / 9}.bag-item__top{flex-direction:column;gap:.25rem}.bag-item__price{margin-top:.25rem}}.shop-page{min-height:100vh;padding-top:calc(80px + var(--space-2xl));padding-bottom:var(--space-3xl)}.shop__header{text-align:center;margin-bottom:var(--space-xl)}.shop__title{font-family:var(--font-heading);font-size:clamp(2rem,5vw,3rem);font-weight:500;letter-spacing:.08em;text-transform:uppercase;color:var(--color-text);margin-bottom:var(--space-xs)}.shop__subtitle{font-family:var(--font-body);font-size:.95rem;font-weight:300;color:var(--color-text-light);line-height:1.7}.shop__controls{display:flex;align-items:center;gap:var(--space-md);flex-wrap:wrap;margin-bottom:var(--space-md);padding:var(--space-md);background:var(--color-white);border-radius:var(--border-radius);box-shadow:var(--shadow-sm);border:1px solid var(--color-border-light)}.shop__search-wrapper{position:relative;flex:1;min-width:200px}.shop__search-icon{position:absolute;left:1rem;top:50%;transform:translateY(-50%);color:var(--color-text-lighter);pointer-events:none}.shop__search{width:100%;padding:.7rem 2.5rem .7rem 2.8rem;border:1px solid var(--color-border);border-radius:var(--border-radius-pill);background:var(--color-bg);font-family:var(--font-body);font-size:.85rem;font-weight:300;color:var(--color-text);outline:none;transition:border-color var(--transition-fast)}.shop__search::placeholder{color:var(--color-text-lighter)}.shop__search:focus{border-color:var(--color-teal-light)}.shop__search-clear{position:absolute;right:.75rem;top:50%;transform:translateY(-50%);width:22px;height:22px;display:flex;align-items:center;justify-content:center;background:var(--color-border);border:none;border-radius:50%;font-size:.85rem;color:var(--color-text-light);cursor:pointer;transition:all var(--transition-fast);line-height:1}.shop__search-clear:hover{background:var(--color-rose-lighter);color:var(--color-rose)}.shop__filters{display:flex;gap:.4rem}.shop__filter-btn{padding:.55rem 1.2rem;font-family:var(--font-body);font-size:.75rem;font-weight:400;letter-spacing:.06em;text-transform:uppercase;color:var(--color-text-light);background:var(--color-bg);border:1px solid var(--color-border-light);border-radius:var(--border-radius-pill);cursor:pointer;transition:all var(--transition-fast);white-space:nowrap}.shop__filter-btn:hover{border-color:var(--color-rose-light);color:var(--color-rose)}.shop__filter-btn--active,.shop__filter-btn--active:hover{background:var(--color-rose);color:var(--color-white);border-color:var(--color-rose)}.shop__sort-wrapper{display:flex;align-items:center;gap:.75rem}.shop__sort{padding:.55rem 1.2rem;font-family:var(--font-body);font-size:.78rem;font-weight:400;color:var(--color-text-light);background:var(--color-bg);border:1px solid var(--color-border);border-radius:var(--border-radius-pill);cursor:pointer;outline:none;appearance:auto;transition:border-color var(--transition-fast)}.shop__sort:focus{border-color:var(--color-teal-light)}.shop__clear-filters{padding:.5rem 1rem;font-family:var(--font-body);font-size:.72rem;font-weight:400;color:var(--color-text-lighter);background:none;border:none;cursor:pointer;text-decoration:underline;text-underline-offset:3px;transition:color var(--transition-fast);white-space:nowrap}.shop__clear-filters:hover{color:var(--color-rose)}.shop__results-bar{margin-bottom:var(--space-md)}.shop__results-count{font-family:var(--font-body);font-size:.8rem;font-weight:300;color:var(--color-text-lighter);letter-spacing:.02em}.shop__grid{display:grid;grid-template-columns:repeat(4,1fr);gap:var(--space-lg)}.shop__grid--animate .shop__card{animation:shopFadeIn .5s ease forwards}.shop__grid--animate .shop__card:nth-child(1){animation-delay:.03s}.shop__grid--animate .shop__card:nth-child(2){animation-delay:.06s}.shop__grid--animate .shop__card:nth-child(3){animation-delay:.09s}.shop__grid--animate .shop__card:nth-child(4){animation-delay:.12s}.shop__grid--animate .shop__card:nth-child(5){animation-delay:.15s}.shop__grid--animate .shop__card:nth-child(6){animation-delay:.18s}.shop__grid--animate .shop__card:nth-child(7){animation-delay:.21s}.shop__grid--animate .shop__card:nth-child(8){animation-delay:.24s}.shop__grid--animate .shop__card:nth-child(9){animation-delay:.27s}.shop__grid--animate .shop__card:nth-child(10){animation-delay:.3s}.shop__grid--animate .shop__card:nth-child(11){animation-delay:.33s}.shop__grid--animate .shop__card:nth-child(12){animation-delay:.36s}@keyframes shopFadeIn{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.shop__card{opacity:0}.shop__card-image-wrapper{position:relative;border-radius:var(--border-radius);overflow:hidden;background:var(--color-white);box-shadow:var(--shadow-card);aspect-ratio:3 / 4}.shop__card-image{width:100%;height:100%;object-fit:cover;transition:transform .6s cubic-bezier(.16,1,.3,1)}.shop__card:hover .shop__card-image{transform:scale(1.05)}.shop__card-overlay{position:absolute;inset:0;background:#2d2d2d26;display:flex;align-items:center;justify-content:center;opacity:0;transition:opacity var(--transition-base)}.shop__card:hover .shop__card-overlay{opacity:1}.shop__card-quick-view{padding:.6rem 1.6rem;background:var(--color-white);color:var(--color-text);font-family:var(--font-body);font-size:.75rem;font-weight:500;letter-spacing:.1em;text-transform:uppercase;border:none;border-radius:var(--border-radius-pill);cursor:pointer;transform:translateY(10px);transition:all var(--transition-base)}.shop__card:hover .shop__card-quick-view{transform:translateY(0)}.shop__card-quick-view:hover{background:var(--color-rose);color:var(--color-white)}.shop__card-badge{position:absolute;top:.75rem;left:.75rem;padding:.3rem .75rem;background:var(--color-teal);color:var(--color-white);font-family:var(--font-body);font-size:.65rem;font-weight:500;letter-spacing:.08em;text-transform:uppercase;border-radius:var(--border-radius-pill)}.shop__card-info{padding:var(--space-sm) .25rem;text-align:center}.shop__card-category{display:block;font-family:var(--font-body);font-size:.65rem;font-weight:400;letter-spacing:.1em;text-transform:uppercase;color:var(--color-teal);margin-bottom:.2rem}.shop__card-name{font-family:var(--font-heading);font-size:.9rem;font-weight:500;color:var(--color-text);margin-bottom:.3rem;letter-spacing:.02em}.shop__card-price{font-family:var(--font-body);font-size:.85rem;font-weight:400;color:var(--color-text-light)}.shop__empty{display:flex;flex-direction:column;align-items:center;text-align:center;padding:var(--space-3xl) 0;color:var(--color-text-lighter);animation:fadeInUp .5s ease forwards}.shop__empty-title{font-family:var(--font-heading);font-size:1.25rem;font-weight:500;color:var(--color-text);margin-top:var(--space-sm);margin-bottom:.4rem}.shop__empty-text{font-family:var(--font-body);font-size:.9rem;font-weight:300;color:var(--color-text-light);margin-bottom:var(--space-md)}.shop__empty-clear{padding:.7rem 2rem;background:var(--color-rose);color:var(--color-white);font-family:var(--font-body);font-size:.78rem;font-weight:500;letter-spacing:.1em;text-transform:uppercase;border:none;border-radius:var(--border-radius-pill);cursor:pointer;transition:all var(--transition-base)}.shop__empty-clear:hover{background:var(--color-teal)}@media(max-width:1024px){.shop__grid{grid-template-columns:repeat(3,1fr)}}@media(max-width:768px){.shop__controls{flex-direction:column;align-items:stretch;gap:var(--space-sm)}.shop__filters{justify-content:center;flex-wrap:wrap}.shop__sort-wrapper{justify-content:center}.shop__grid{grid-template-columns:repeat(2,1fr);gap:var(--space-sm)}}@media(max-width:480px){.shop__card-name{font-size:.8rem}.shop__card-price{font-size:.78rem}}
