.product-page{--blush-light:#fae8e8;--blush:#f2c4c4;--rose:#c97b7b;--rose-dark:#a85f5f;--cream:#faf6f1;--offwhite:#f5f2ec;--sand:#e5e0d8;--sage-light:#d4e4c8;--sage-deep:#5e7851;--charcoal:#3d3d3a;--ink:#1c1c1a;--muted:#8e8c84;--white:#ffffff;--r-sm:8px;--r-md:12px;--r-lg:20px;--r-xl:28px;--shadow-md:0 8px 24px rgba(28,28,26,0.08);--shadow-lg:0 16px 48px rgba(28,28,26,0.12)}.product-page .pdp-breadcrumb{padding:18px 48px;font-size:13px;color:var(--muted);border-bottom:1px solid var(--sand);background:var(--cream)}.product-page .pdp-breadcrumb a{color:var(--muted)}.product-page .pdp-breadcrumb a:hover{color:var(--rose)}.product-page .pdp-breadcrumb .sep{margin:0 10px;color:var(--sand)}.product-page .pdp-breadcrumb .here{color:var(--ink);font-weight:500}.product-page .product-hero{padding:48px 48px 80px;max-width:1280px;margin:0 auto;display:grid;grid-template-columns:1fr 1.05fr;grid-gap:64px;gap:64px;align-items:start}.product-page .gallery{position:-webkit-sticky;position:sticky;top:88px;display:grid;grid-template-columns:minmax(0,1fr);grid-gap:16px;gap:16px}.product-page .gallery--with-thumbs{grid-template-columns:minmax(0,1fr);gap:16px}.product-page .gallery-main{background:linear-gradient(135deg,var(--blush-light),var(--blush));border-radius:var(--r-xl);aspect-ratio:1;overflow:hidden;position:relative;box-shadow:var(--shadow-md);width:min(800px,100%);height:auto;min-width:0}.product-page .gallery--with-thumbs .gallery-main{grid-column:1;grid-row:1}.product-page .gallery-main-media{position:absolute;inset:0}.product-page .gallery-img{object-fit:cover}.product-page .gallery-placeholder{width:100%;height:100%;background:linear-gradient(135deg,var(--blush-light),var(--blush))}.product-page .gallery-main .bg-blob{position:absolute;border-radius:50%;pointer-events:none}.product-page .gallery-main .bg-blob.b1{width:280px;height:280px;background:var(--blush-light);opacity:.6;top:-80px;right:-80px}.product-page .gallery-main .bg-blob.b2{width:220px;height:220px;background:var(--sage-light);opacity:.5;bottom:-60px;left:-60px}.product-page .gallery-badge{position:absolute;top:24px;left:24px;z-index:3;background:var(--ink);color:var(--cream);padding:8px 14px;border-radius:999px;font-size:11px;text-transform:uppercase;letter-spacing:1.5px}.product-page .gallery-thumbs-slider{grid-column:1;grid-row:2;display:flex;flex-direction:row;align-items:center;gap:10px;width:min(800px,100%);min-width:0}.product-page .gallery-thumbs-track{flex:1 1;height:80px;min-width:0;display:grid;grid-auto-flow:column;grid-auto-columns:calc((100% - 30px) / 4);grid-gap:10px;gap:10px;overflow-x:auto;overflow-y:hidden;scroll-snap-type:x mandatory;scroll-behavior:smooth;scrollbar-width:none;-ms-overflow-style:none}.product-page .gallery-thumbs-track::-webkit-scrollbar{display:none}.product-page .gallery-thumbs-nav{flex-shrink:0;width:36px;height:36px;border-radius:50%;border:1px solid var(--sand);background:var(--white);color:var(--ink);display:flex;align-items:center;justify-content:center;cursor:pointer;box-shadow:0 2px 8px rgba(28,28,26,.06);transition:border-color .2s ease,color .2s ease,opacity .2s ease,box-shadow .2s ease}.product-page .gallery-thumbs-nav:hover:not(:disabled){border-color:var(--rose);color:var(--rose);box-shadow:0 4px 12px rgba(28,28,26,.08)}.product-page .gallery-thumbs-nav:disabled{opacity:.35;cursor:default}.product-page .gallery-thumb{position:relative;width:100%;height:80px;min-width:0;border-radius:var(--r-md);overflow:hidden;border:2px solid transparent;cursor:pointer;background:var(--offwhite);scroll-snap-align:start}.product-page .gallery-thumb.active{border-color:var(--rose)}.product-page .product-eyebrow{display:inline-flex;align-items:center;gap:8px;font-size:11px;text-transform:uppercase;letter-spacing:2px;color:var(--rose);font-weight:500;margin-bottom:16px}.product-page .product-eyebrow:before{content:"";width:6px;height:6px;border-radius:50%;background:var(--rose)}.product-page .product-title{font-family:var(--font-display),"Playfair Display",Georgia,serif;font-size:46px;font-weight:500;color:var(--ink);line-height:1.1;margin-bottom:12px}.product-page .product-tagline{font-size:16px;color:var(--muted);line-height:1.65;margin-bottom:22px}.product-page .product-meta-row{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap;margin-bottom:26px}.product-page .product-stock{display:inline-flex;align-items:center;gap:8px;margin:0 0 0 auto;font-size:13px;font-weight:600;color:var(--sage-deep);letter-spacing:.02em}.product-page .product-stock:before{content:"";width:8px;height:8px;border-radius:50%;background:var(--sage-deep);box-shadow:0 0 0 3px color-mix(in srgb,var(--sage-deep) 18%,transparent);animation:product-stock-blink 2.2s ease-in-out infinite}@keyframes product-stock-blink{0%,to{opacity:1;box-shadow:0 0 0 3px color-mix(in srgb,var(--sage-deep) 22%,transparent)}50%{opacity:.35;box-shadow:0 0 0 7px color-mix(in srgb,var(--sage-deep) 6%,transparent)}}@media (prefers-reduced-motion:reduce){.product-page .product-stock:before{animation:none}}.product-page .product-rating{display:flex;align-items:center;gap:10px;margin:0}.product-page .stars{color:var(--rose);letter-spacing:2px}.product-page .rating-num{font-size:13px;font-weight:500}.product-page .price-block{background:var(--white);border:1px solid var(--sand);border-radius:var(--r-md);padding:20px 24px;margin-bottom:28px;display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap}.product-page .price-block:has(.price-main--shopping){flex-direction:column;align-items:stretch}.product-page .price-main{font-family:var(--font-display),Georgia,serif;font-size:32px;font-weight:500;color:var(--ink)}.product-page .price-main--shopping{display:flex;align-items:center;justify-content:space-between;gap:1rem;width:100%}.product-page .price-main-copy{min-width:0}.product-page .price-amount{display:inline}.product-page .add-to-cart-btn{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;flex-shrink:0;height:2.75rem;padding:0 1.25rem;border:none;border-radius:999px;background:var(--ink);color:var(--cream);font-size:.875rem;font-weight:600;cursor:pointer;transition:transform .2s ease,background .2s ease,box-shadow .2s ease;box-shadow:var(--shadow-md)}.product-page .add-to-cart-btn:hover{background:var(--rose-dark);transform:translateY(-1px)}.product-page .add-to-cart-btn:active{transform:translateY(0)}.product-page .price-block:has(.price-main--shopping) .price-note{max-width:none;text-align:left}.product-page .price-from{font-size:13px;color:var(--muted);text-transform:uppercase;letter-spacing:1.5px;font-family:var(--font-sans),"DM Sans",sans-serif;display:block;margin-bottom:2px}.product-page .price-unit{font-size:14px;color:var(--muted);font-family:var(--font-sans),sans-serif}.product-page .price-note{font-size:13px;color:var(--muted);line-height:1.5;max-width:220px;text-align:right}.product-page .price-note strong{color:var(--sage-deep)}.product-page .quote-form{background:var(--white);border-radius:28px;border:1px solid #e5e0d8;padding:28px 28px 24px;box-shadow:0 10px 40px rgba(28,25,23,.06)}.product-page .quote-form-title{font-family:var(--font-display),Georgia,serif;font-size:28px;margin-bottom:0;color:#1c1917}.product-page .quote-form-title em{font-style:italic;color:#1c1917}.product-page .quote-form-sub{font-size:12px;color:#9a958c;margin-bottom:0}.product-page .form-row{display:grid;grid-template-columns:1fr 1fr;grid-gap:14px;gap:14px}.product-page .form-field{margin-bottom:14px}.product-page .form-label{display:block;font-size:13px;font-weight:600;margin-bottom:8px;color:#1c1917}.product-page .form-label .req{color:#1c1917}.product-page .form-input,.product-page .form-textarea{width:100%;padding:12px 16px;border:1px solid #e5e0d8;border-radius:999px;background:#fff;font-size:14px}.product-page .form-textarea{min-height:88px;resize:vertical;border-radius:18px}.product-page .form-submit{width:100%;margin-top:8px;padding:14px 18px;background:#1c1917;color:#fff;border-radius:999px;font-weight:600;font-size:14px}.product-page .form-helper{font-size:11px;color:#9a958c;margin-top:12px;text-align:center}.product-page .form-success{display:none;margin-top:16px;padding:20px;background:var(--sage-light);border-radius:var(--r-md)}.product-page .form-success.visible{display:block}.product-page .section{padding:80px 48px;max-width:1280px;margin:0 auto}.product-page .section-header{text-align:center;margin-bottom:48px;max-width:700px;margin-left:auto;margin-right:auto}.product-page .section-eyebrow{font-size:11px;text-transform:uppercase;letter-spacing:2px;color:var(--rose);font-weight:500;margin-bottom:12px}.product-page .section-title{font-family:var(--font-display),Georgia,serif;font-size:40px;font-weight:500;color:var(--ink);line-height:1.15;margin-bottom:14px}.product-page .section-title em{font-style:italic;color:var(--rose)}.product-page .section-sub{font-size:16px;color:var(--muted);line-height:1.7}.product-page .features-grid{display:grid;grid-template-columns:repeat(3,1fr);grid-gap:24px;gap:24px}.product-page .feature-card{background:var(--white);border:1px solid var(--sand);border-radius:var(--r-lg);padding:28px 26px}.product-page .feature-icon{width:44px;height:44px;background:var(--blush-light);border-radius:var(--r-md);display:flex;align-items:center;justify-content:center;color:var(--rose);margin-bottom:18px}.product-page .feature-title{font-family:var(--font-display),Georgia,serif;font-size:19px;margin-bottom:6px}.product-page .feature-desc{font-size:13.5px;color:var(--muted);line-height:1.65}.product-page .split-section{padding:56px 48px;max-width:1280px;margin:0 auto}.product-page .split-grid{display:grid;grid-template-columns:1fr 1fr;grid-gap:72px;gap:72px;align-items:center}@media (min-width:981px){.product-page .split-grid.reverse .split-image{order:1}.product-page .split-grid.reverse .split-content{order:2}}.product-page .split-image{aspect-ratio:4/3;border-radius:var(--r-xl);overflow:hidden;position:relative;box-shadow:var(--shadow-md)}.product-page .split-image.style-cream{background:linear-gradient(135deg,var(--cream),var(--blush-light))}.product-page .split-image.style-bold{background:linear-gradient(135deg,var(--rose),var(--rose-dark))}.product-page .split-image.style-sage{background:linear-gradient(135deg,var(--sage-light),var(--cream))}.product-page .split-image-photo{object-fit:cover;z-index:2}.product-page .split-eyebrow{font-size:11px;text-transform:uppercase;letter-spacing:2.5px;color:var(--rose);margin-bottom:16px}.product-page .split-title{font-family:var(--font-display),Georgia,serif;font-size:38px;line-height:1.2;margin-bottom:18px}.product-page .split-title em{font-style:italic;color:var(--rose)}.product-page .split-text{font-size:16px;line-height:1.85;margin-bottom:22px}.product-page .split-cta{display:inline-flex;align-items:center;gap:6px;width:-moz-fit-content;width:fit-content;font-size:11px;font-weight:500;line-height:1;color:var(--rose);text-transform:uppercase;letter-spacing:1.5px;padding-bottom:3px;border-bottom:1px solid var(--rose);text-decoration:none;transition:gap .25s,color .25s,border-color .25s}.product-page .split-cta:hover{gap:10px;color:var(--rose-dark);border-bottom-color:var(--rose-dark)}.product-page .split-cta svg{width:12px;height:12px;flex-shrink:0}.product-page .specs-section{padding:56px 48px 64px;max-width:1280px;margin:0 auto}.product-page .specs-section .section-header{margin-bottom:28px}.product-page .specs-section .section-eyebrow{margin-bottom:8px;font-size:11px;letter-spacing:2px}.product-page .specs-section .section-title{font-size:clamp(32px,4vw,42px);margin-bottom:10px;line-height:1.15}.product-page .specs-section .section-sub{font-size:16px;line-height:1.6;max-width:640px}.product-page .specs-card{background:var(--white);border:1px solid var(--sand);border-radius:var(--r-lg,20px);overflow:hidden;box-shadow:var(--shadow-sm)}.product-page .specs-header{background:var(--ink);color:var(--cream);padding:18px 28px;display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:10px 20px}.product-page .specs-header-title{font-family:var(--font-display),Georgia,serif;font-size:20px;font-weight:500;line-height:1.25;letter-spacing:-.3px}.product-page .specs-header-title em{font-style:italic;color:var(--blush)}.product-page .specs-header-sub{font-size:12px;display:flex;align-items:center;gap:6px;opacity:.85;flex-shrink:0}.product-page .specs-header-sub svg{width:14px;height:14px;flex-shrink:0}.product-page .specs-row{display:grid;grid-template-columns:minmax(200px,240px) 1fr;grid-gap:20px 32px;gap:20px 32px;padding:18px 28px;border-bottom:1px solid var(--sand);align-items:center}.product-page .specs-row:last-child{border-bottom:none}.product-page .specs-label-cell{display:flex;align-items:center;gap:14px;min-width:0}.product-page .specs-row-icon{display:flex;align-items:center;justify-content:center;flex-shrink:0;color:var(--rose)}.product-page .specs-label{margin:0;font-size:12px;text-transform:uppercase;letter-spacing:1.4px;color:var(--charcoal);font-weight:600;line-height:1.35}.product-page .specs-value{font-size:15px;color:var(--ink);line-height:1.5;margin:0}.product-page .specs-value.has-pills{display:flex;flex-wrap:wrap;gap:8px}.product-page .spec-pill{padding:6px 14px;background:var(--cream);border:1px solid var(--sand);border-radius:999px;font-size:13px;line-height:1.35}.product-page .spec-pill.highlight{background:var(--sage-light);border-color:var(--sage-deep);color:var(--sage-deep)}.product-page .content-section{background:var(--offwhite);padding:80px 48px}.product-page .content-inner{max-width:920px;margin:0 auto}.product-page .content-card{background:var(--white);padding:56px 64px;border-radius:var(--r-xl);border:1px solid var(--sand)}.product-page .content-eyebrow{font-size:11px;text-transform:uppercase;letter-spacing:2px;color:var(--rose);margin-bottom:14px}.product-page .content-h2{font-family:var(--font-display),Georgia,serif;font-size:34px;margin-bottom:18px}.product-page .content-h2 em{font-style:italic;color:var(--rose)}.product-page .faq-list{max-width:820px;margin:0 auto}.product-page .faq-item{border-bottom:1px solid var(--sand);padding:22px 24px;cursor:pointer}.product-page .faq-item.open{background:var(--blush-light)}.product-page .faq-q{display:flex;justify-content:space-between;gap:24px;font-family:var(--font-display),Georgia,serif;font-size:18px}.product-page .faq-toggle{width:32px;height:32px;border-radius:50%;background:var(--white);color:var(--rose);border:1px solid var(--blush);display:flex;align-items:center;justify-content:center}.product-page .faq-item.open .faq-toggle{transform:rotate(45deg);background:var(--rose);color:var(--white)}.product-page .faq-a{max-height:0;overflow:hidden;font-size:14.5px;line-height:1.8;transition:max-height .4s ease,padding .4s ease}.product-page .faq-item.open .faq-a{max-height:400px;padding-top:14px}.pdp-related-slider{position:relative;padding-bottom:40px}.pdp-related-track{display:flex;gap:24px;overflow-x:auto;scroll-snap-type:x mandatory;scroll-behavior:smooth;-webkit-overflow-scrolling:touch;scrollbar-width:none;padding:2px 4px 6px}.pdp-related-track::-webkit-scrollbar{display:none}.pdp-related-card{display:block;flex-grow:0;flex-shrink:0;flex-basis:calc(25% - 18px);min-width:240px;scroll-snap-align:start;background:var(--white);border:1px solid var(--sand);border-radius:var(--r-lg);overflow:hidden;transition:transform .35s cubic-bezier(.16,1,.3,1),box-shadow .35s ease}.pdp-related-card:hover{transform:translateY(-4px);box-shadow:0 12px 32px rgba(28,28,26,.08)}.pdp-related-slider-btn{position:absolute;top:38%;z-index:2;width:40px;height:40px;display:flex;align-items:center;justify-content:center;border:1px solid var(--sand);border-radius:var(--r-sm);background:var(--white);color:var(--ink);cursor:pointer;box-shadow:0 4px 16px rgba(28,28,26,.1);transition:border-color .2s,opacity .2s}.pdp-related-slider-btn:hover:not(:disabled){border-color:var(--rose);color:var(--rose)}.pdp-related-slider-btn:disabled{opacity:.35;cursor:default}.pdp-related-slider-btn--prev{left:-8px;transform:translateY(-50%)}.pdp-related-slider-btn--next{right:-8px;transform:translateY(-50%)}.pdp-related-visual{aspect-ratio:1;position:relative;background:var(--blush-light)}.pdp-related-visual .gallery-img{object-fit:contain}.pdp-related-body{padding:16px 18px 18px;display:flex;flex-direction:column}.pdp-related-tag{font-size:10px;text-transform:uppercase;letter-spacing:1.5px;color:var(--rose)}.pdp-related-name{font-family:var(--font-display),Georgia,serif;font-size:18px;margin:6px 0}.pdp-related-desc,.pdp-related-name{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.pdp-related-desc{font-size:13px;color:var(--muted);line-height:1.5;margin:0}.pdp-related-price{font-size:13px;font-weight:500;margin-top:8px}.product-page .cta-banner-wrap{padding:0 48px 80px;max-width:1280px;margin:0 auto}.product-page .cta-banner{background:linear-gradient(135deg,var(--blush-light),var(--cream));padding:64px 48px;border-radius:var(--r-xl);text-align:center}.product-page .cta-title{font-family:var(--font-display),Georgia,serif;font-size:38px;margin-bottom:14px}.product-page .cta-title em{font-style:italic;color:var(--rose)}.product-page .btn-primary{background:var(--rose);color:var(--white);padding:14px 30px;border-radius:var(--r-sm);display:inline-block;font-weight:500}.product-page .fade-in{opacity:0;transform:translateY(28px);transition:opacity .8s ease,transform .8s ease}.product-page .fade-in.is-visible{opacity:1;transform:translateY(0)}@media (max-width:980px){.product-page .product-hero{grid-template-columns:1fr;gap:32px;padding:24px 20px 48px}.product-page .gallery{position:static;gap:12px}.product-page .gallery-thumbs-track{grid-auto-columns:calc((100% - 30px) / 4);height:64px}.product-page .gallery-thumb{height:64px}.product-page .product-title{font-size:32px}.product-page .features-grid{grid-template-columns:1fr}.pdp-related-card{flex-grow:0;flex-shrink:0;flex-basis:calc(50% - 12px);min-width:220px}.pdp-related-slider-btn--prev{left:0}.pdp-related-slider-btn--next{right:0}.product-page .split-grid{grid-template-columns:1fr;gap:28px}.product-page .specs-row{grid-template-columns:1fr;gap:10px;padding:14px 18px;align-items:start}.product-page .specs-label-cell{gap:12px}.product-page .specs-header{flex-direction:column;align-items:flex-start;justify-content:flex-start;gap:4px;padding:12px 16px}.product-page .specs-header-title{font-size:16px}.product-page .specs-header-sub{font-size:10px}.product-page .specs-section{padding:28px 20px 32px}.product-page .specs-section .section-title{font-size:24px}.product-page .section,.product-page .split-section{padding-left:20px;padding-right:20px}.product-page .pdp-breadcrumb{padding:18px 20px}.product-page .form-row{grid-template-columns:1fr 1fr}.product-page .form-row.single{grid-template-columns:1fr}}@media (max-width:520px){.product-page .quote-form{padding:18px 16px 16px}.product-page .quote-form-title{font-size:22px}.product-page .form-field{margin-bottom:14px}.product-page .form-row{grid-template-columns:1fr}.product-page .form-input,.product-page .form-textarea{padding:11px 14px;font-size:14px}}