/* Shared storefront presentation. Existing checkout, service and admin styles remain. */
:root{--ink:#432b25;--muted:#715c53;--wine:#713c42}
body{line-height:1.6}.wrap{max-width:1336px;padding-inline:48px}.button{gap:22px;border-radius:8px;font-size:1rem;min-height:52px}.button:hover{transform:none}.text-link{font-size:.9rem}a:focus-visible,button:focus-visible,summary:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{outline:3px solid #864c39;outline-offset:4px}
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.site-header{height:96px}.site-header nav{gap:26px}.announcement{letter-spacing:0;font-size:.8rem}.eyebrow{font-size:.72rem;letter-spacing:.12em;margin-bottom:16px}.hug-home h2{font-size:clamp(2rem,3.8vw,3.4rem);letter-spacing:-.035em}
.hug-hero{display:grid;grid-template-columns:1fr 1fr;gap:60px;align-items:center;padding-block:24px 36px}.hug-hero-photo{grid-column:2;grid-row:1;border-radius:24px;background:#fff;overflow:hidden}.hug-hero-photo img{width:100%;aspect-ratio:1;object-fit:contain;max-height:600px}.hug-hero-copy{grid-column:1;grid-row:1}.hug-hero h1{font-size:clamp(3rem,4.8vw,4.6rem);letter-spacing:-.045em;line-height:1.07}.hug-lead{font-size:1.05rem;max-width:490px;margin-top:24px;line-height:1.7}.hug-price{font-size:1.65rem;font-weight:600;margin-block:24px 20px}.hug-price small{font-size:.8rem;display:block;font-weight:400;color:var(--muted);margin-top:2px}.hug-delivery{font-size:.83rem;margin-top:14px;color:var(--muted)}
.product-facts{display:grid;grid-template-columns:repeat(3,1fr);margin:0;gap:20px}.product-facts dt{font-size:.78rem;color:var(--muted)}.product-facts dd{font-size:1rem;font-weight:600;margin:2px 0 0;line-height:1.4}.hug-facts .product-facts{padding-block:24px;border-block:1px solid var(--line);text-align:center}.hug-facts .product-facts>div+div{border-left:1px solid var(--line)}
.hug-moments{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:80px;padding-block:72px}.hug-moment-photo img{aspect-ratio:1;object-fit:contain;border-radius:20px;width:100%}.hug-moments h2{margin-bottom:28px}.hug-moment+.hug-moment{margin-top:22px}.hug-moment h3{font-size:1.08rem;font-weight:600;margin-bottom:4px}.hug-moment p{max-width:420px;color:var(--muted)}.hug-moment .text-link{display:inline-block;margin-top:10px}
.hug-showcase{background:#efe6db}.hug-showcase-inner{display:grid;grid-template-columns:1.15fr 1fr;gap:60px;align-items:center;padding-block:48px}.hug-showcase-inner>div>img{border-radius:20px;width:100%;object-fit:contain}.hug-showcase h2 span{display:block;font-size:1.3rem;letter-spacing:0;margin-top:8px}.hug-showcase h2+p{margin-top:22px}.hug-showcase p+p:not(.hug-price){margin-top:10px}.hug-detail{display:flex;align-items:center;gap:18px;margin-top:28px}.hug-detail img{width:100px;height:100px;object-fit:contain;border-radius:12px}.hug-detail p{font-size:.85rem;color:var(--muted)}
.hug-faq{display:grid;grid-template-columns:1fr 1.5fr;gap:80px;padding-block:72px}.hug-faq h2{margin-bottom:22px}details{border-top:1px solid var(--line)}summary{cursor:pointer;font-weight:600;padding:19px 26px 19px 0;position:relative;list-style:none}summary::-webkit-details-marker{display:none}summary:after{content:'+';position:absolute;right:3px;font-size:1.4rem;font-weight:400;top:13px}details[open]>summary:after{content:'−'}details p{padding:0 0 18px;color:var(--muted)}details p a,.purchase-service a,.product-accordions a,.review-invitation a{ text-decoration:underline;text-underline-offset:3px}.hug-faq details:last-child,.product-accordions details:last-child{border-bottom:1px solid var(--line)}
.hug-closing{padding-block:48px;background:#ead8cc;text-align:center}.hug-closing p{margin:14px 0 22px}.hug-section{padding-block:54px}.hug-products{display:grid;grid-template-columns:repeat(3,1fr);gap:30px;margin-top:24px}.hug-product-card img{aspect-ratio:1;object-fit:contain;border-radius:16px}.hug-product-card h3{font:2rem var(--serif);margin-top:18px}.hug-product-card .button{margin-top:14px}.hug-product-card strong{display:block;margin-top:8px}
.hug-product .breadcrumb{padding-block:16px;font-size:.8rem;gap:10px}.hug-product .product-layout{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(0,1fr);gap:60px;padding-top:8px;padding-bottom:42px;align-items:start}.hug-product .product-gallery{position:sticky;top:24px}.hug-product .gallery-main{border-radius:20px;background:#fff;overflow:hidden;aspect-ratio:1;min-height:0}.hug-product [data-zoom]{display:block;width:100%;height:100%;padding:0;cursor:zoom-in}.hug-product #main-product-image{width:100%;height:100%;object-fit:contain}.hug-product .gallery-thumbs{display:flex;gap:10px;overflow-x:auto;margin-top:14px;padding:4px 4px 8px}.hug-product .gallery-thumbs button{flex:0 0 64px;width:64px;height:64px;padding:2px;border:1px solid var(--line);border-radius:8px;background:#fff}.hug-product .gallery-thumbs button[aria-pressed=true]{border:2px solid var(--wine)}.hug-product .gallery-thumbs img{width:100%;height:100%;object-fit:contain;border-radius:5px}
.hug-product .product-info{padding:0;max-width:none}.hug-product .product-info h1{font-size:3.6rem;letter-spacing:-.035em}.hug-product .product-info h1 span{font-size:1.4rem;letter-spacing:0;margin-top:8px}.hug-product .product-description{font-size:1rem;margin-top:18px;color:var(--muted);line-height:1.65}.hug-product .product-facts{grid-template-columns:1fr 1fr;gap:10px;margin:20px 0}.hug-product .product-facts>div:last-child{display:none}.hug-product .price-row{display:block;margin:20px 0 16px}.hug-product .price-row strong{display:block;font-size:1.85rem;line-height:1.2}.hug-product .price-row>span{font-size:.78rem;color:var(--muted)}.hug-product .buy-row{display:flex;gap:12px;flex-wrap:nowrap}.hug-product .buy-row>.button{flex:1;font-size:1rem;gap:10px;padding:14px 20px;min-width:0}.quantity-picker{border-radius:8px;min-height:52px}.hug-product .quantity-picker button{width:36px;height:50px;font-size:1.1rem}.hug-product .quantity-picker input{width:34px;font-size:1rem}.quantity-picker input::-webkit-inner-spin-button{-webkit-appearance:none}.quantity-picker input{appearance:textfield}
.purchase-service{margin-top:18px;font-size:.8rem;line-height:1.55;color:var(--muted)}.purchase-service p+p{margin-top:6px}.hug-product .product-marketplace{margin-top:18px;padding-top:12px}.hug-product .product-marketplace .text-link{margin-top:2px;display:inline-block;font-size:.8rem}.hug-product .product-marketplace>[data-bol-label]{font-size:.8rem;font-weight:400;color:var(--muted)}.product-safety{margin-block:24px;padding:16px 18px;background:#f0e8dd;border-left:3px solid #a47550;border-radius:0 8px 8px 0}.product-safety h2{font:600 .85rem/1.5 var(--sans);letter-spacing:0;margin:0 0 6px}.product-safety p{font-size:.8rem;line-height:1.6;color:var(--ink)}.product-accordions summary{font-size:.92rem}.product-accordions p{font-size:.9rem}.product-accordions #product-specs{padding:0}.review-invitation{padding-block:12px 42px;font-size:.85rem;color:var(--muted)}.customer-reviews{padding-block:35px}.customer-reviews h2{font-size:2.5rem}
.mobile-purchase{display:none}.cart-dialog{border-radius:16px}.cart-line img{background:#fff;object-fit:contain;border-radius:12px;padding:4px}.cart-header h2{font-size:2rem}.cart-confirmation{font-size:.9rem;margin:0 0 22px;background:#eee5d9;border-radius:8px;padding:12px 15px}.cart-error{color:#9b2937}.cart-dialog .fine-print{font-size:.78rem}.image-dialog{max-height:90dvh}.image-dialog img{max-height:80dvh;width:auto;object-fit:contain}.image-dialog .icon-button{background:var(--paper);border-radius:50%;z-index:2}.preview-label{font-size:.65rem;pointer-events:none}
.footer-top{grid-template-columns:1.3fr 1fr 1fr;gap:48px;padding-block:44px}.footer-signoff{display:none}.footer h3{font-size:.8rem}.footer a:not(.logo){font-size:.82rem}.footer p{font-size:.85rem}.footer-bottom{padding-block:16px;font-size:.73rem}.footer .logo{font-size:2.1rem}
@media(max-width:1000px){.wrap{padding-inline:30px}.site-header nav{gap:18px;font-size:.8rem}.hug-hero{gap:32px}.hug-moments,.hug-showcase-inner{gap:40px}.hug-faq{gap:35px}.hug-product .product-layout{gap:30px;grid-template-columns:1fr 1fr}.hug-product .product-info h1{font-size:3rem}.hug-product .product-info h1 span{font-size:1.2rem}.hug-product .buy-row{gap:8px}.hug-product .buy-row>.button{padding-inline:12px}.footer-top{gap:24px}}
@media(max-width:767px){.wrap{padding-inline:20px}.site-header{height:78px;gap:18px}.site-header .logo{font-size:2.1rem}.site-header nav{display:none}.menu-button{display:block}.announcement{font-size:.68rem;padding:8px 16px}.logo small{font-size:7px;margin-top:7px}.mobile-menu{padding:12px 20px 20px;font-size:.95rem}.mobile-menu a{display:block;padding:9px 0}.hug-hero{display:flex;flex-direction:column;gap:22px;padding-block:12px 30px}.hug-hero-photo{width:100%;border-radius:16px}.hug-hero-photo img{height:260px;max-height:none;aspect-ratio:auto}.hug-hero-copy{width:100%}.hug-hero h1{font-size:2.75rem}.hug-hero .eyebrow{margin-bottom:10px}.hug-lead{font-size:.95rem;margin-top:16px;line-height:1.6}.hug-price{font-size:1.5rem;margin-block:17px 15px}.hug-price small{font-size:.74rem}.hug-delivery{margin-top:10px}.hug-hero .button{width:100%}.hug-facts .product-facts{padding-block:18px;gap:10px}.product-facts dt{font-size:.68rem}.product-facts dd{font-size:.83rem}.hug-moments{grid-template-columns:1fr;padding-block:42px;gap:26px}.hug-moment-photo img{max-height:330px;width:100%;object-fit:cover}.hug-moments h2{margin-bottom:22px}.hug-moment p{font-size:.93rem}.hug-moment+.hug-moment{margin-top:20px}.hug-showcase-inner{grid-template-columns:1fr;gap:28px;padding-block:32px}.hug-showcase-inner>div>img{max-height:360px;object-fit:contain}.hug-showcase h2{font-size:2.5rem}.hug-showcase p{font-size:.93rem}.hug-detail{margin-top:22px}.hug-faq{grid-template-columns:1fr;gap:22px;padding-block:40px}.hug-faq h2{margin-bottom:14px}.hug-faq summary{font-size:.9rem}.hug-faq p{font-size:.9rem}.hug-closing{padding-block:36px}.hug-closing h2{font-size:2.2rem}.hug-products{grid-template-columns:1fr}.hug-section{padding-block:36px}
.hug-product .breadcrumb{font-size:.68rem;gap:8px;padding-block:10px;flex-wrap:wrap}.hug-product .product-layout{display:flex;flex-direction:column;gap:16px;padding-top:0;padding-bottom:24px}.hug-product .product-gallery{width:100%;position:static}.hug-product .gallery-main{height:235px;aspect-ratio:auto;border-radius:14px}.hug-product .gallery-thumbs{margin-top:8px;gap:8px;padding-bottom:6px}.hug-product .gallery-thumbs button{flex-basis:48px;width:48px;height:48px}.hug-product .product-info{width:100%}.hug-product .product-info .eyebrow{font-size:.64rem;margin-bottom:8px}.hug-product .product-info h1{font-size:2.7rem}.hug-product .product-info h1 span{font-size:1.07rem;margin-top:3px}.hug-product .product-description{font-size:.9rem;margin-top:12px;line-height:1.55}.hug-product .product-facts{margin:13px 0;gap:10px}.hug-product .product-facts dt{font-size:.7rem}.hug-product .product-facts dd{font-size:.88rem}.hug-product .price-row{margin:13px 0}.hug-product .price-row strong{font-size:1.65rem}.hug-product .price-row>span{font-size:.72rem}.hug-product .buy-row>.button{font-size:.96rem}.hug-product .quantity-picker button{width:32px}.purchase-service{font-size:.76rem;margin-top:14px}.product-safety{margin-top:20px}.mobile-purchase:not([hidden]){position:fixed;inset:auto 0 0;z-index:20;display:flex;align-items:center;justify-content:space-between;gap:14px;padding:10px 20px calc(10px + env(safe-area-inset-bottom));background:var(--paper);border-top:1px solid var(--line);box-shadow:0 -4px 20px #432b2510}.mobile-purchase>div{display:flex;flex-direction:column;font-size:.9rem;line-height:1.4}.mobile-purchase .button{min-height:46px;padding:12px 20px;font-size:.9rem}body.has-mobile-purchase{padding-bottom:calc(82px + env(safe-area-inset-bottom))}html{scroll-padding-bottom:96px}.footer-top{grid-template-columns:1fr 1fr;gap:26px;padding-block:32px}.footer-top>div:first-child{grid-column:1/-1}.footer .logo{font-size:2rem}.footer-top p{margin-top:12px}.footer-bottom{display:block}.footer-bottom>span{display:block}.cart-header h2{font-size:1.7rem}.cart-line{grid-template-columns:84px 1fr}.cart-line img{width:84px;height:100px;padding:4px}.cart-confirmation{margin-bottom:16px}.review-invitation{font-size:.8rem;padding-bottom:30px}.preview-label{bottom:auto;top:0;right:0;width:auto;max-width:100%;border-radius:0;padding:3px 10px;font-size:.6rem}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important;animation:none!important}}
[hidden]{display:none!important}
.preview-label{position:static;width:100%;max-width:none;text-align:center;background:#f1e8dc;border:0;box-shadow:none;border-radius:0;font-size:.65rem;padding:4px 10px}
@media(max-width:767px){.hug-product .breadcrumb{margin:0}.hug-product .gallery-main{height:215px}.hug-product .gallery-thumbs{scrollbar-width:none}.hug-product .gallery-thumbs::-webkit-scrollbar{display:none}}
@media(max-width:767px){.menu-button{display:flex;align-items:center;justify-content:center;flex-direction:column;gap:6px}.menu-button span{display:block;width:22px;height:2px;background:var(--ink)}.preview-label{position:static;width:100%;max-width:none;text-align:center;padding:5px 10px}.hug-product a,.hug-product button,.hug-product summary,.hug-product input{scroll-margin-block:96px}}
@media(max-width:380px){.hug-product .gallery-main{height:190px}}
.hug-product .product-gallery,.hug-product .product-info{min-width:0}
@media(min-width:768px) and (max-width:1000px){.hug-product .product-layout{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}}
@media(max-width:1000px){.site-header nav{display:none}.menu-button{display:flex;align-items:center;justify-content:center;flex-direction:column;gap:6px}.menu-button span{display:block;width:22px;height:2px;background:var(--ink)}.mobile-menu{padding:12px 20px 20px}.mobile-menu a{display:block;padding:9px 0}}

/* Restore the original Happy Hug introduction, with the current shop controls. */
.hug-hero{gap:44px;padding-block:28px 36px}
.hug-hero-photo{position:relative;isolation:isolate;aspect-ratio:1;background:var(--cream);border-radius:0;overflow:visible;min-width:0}
.hug-hero-photo .hero-oval{inset:24px 12px 16px 24px}
.hug-hero-photo .hero-jari{position:absolute;inset:0 -4%;width:108%;height:100%;max-width:none;max-height:none;aspect-ratio:auto;object-fit:contain;transform:none;mix-blend-mode:multiply}
.hug-hero-photo .hello-note{top:0;right:8px}
.hug-hero-photo .weight-stamp{left:-8px;top:18%;width:104px;height:104px}
.hug-hero-photo .character-tag{background:var(--cream);right:8px;bottom:12px}
.hug-hero h1{font-size:clamp(3.3rem,5.2vw,5.2rem);line-height:1.1;letter-spacing:-.055em}
.hug-hero h1 em{color:var(--wine);font-weight:400}
.hug-hero-actions{display:flex;align-items:center;gap:24px;flex-wrap:wrap;margin-top:30px}
.hug-hero-actions .hug-price{margin:0;font-size:1.35rem;min-width:0}
.hug-hero-actions .hug-price small{max-width:180px;font-size:.7rem}
.hug-hero-note{display:flex;align-items:center;gap:10px;font-size:.78rem;color:var(--muted);margin-top:24px}
.hug-hero-note>span{font-size:1.4rem;color:var(--wine)}
.hug-hero .hug-delivery{margin-top:8px}

/* White in the source photos blends into the page; the original files stay intact. */
.hug-product .gallery-main,.hug-product .gallery-thumbs button,.product-card-image,.image-dialog{background:var(--cream)}
.cart-line img{background:transparent}
.hug-product .gallery-thumbs img,.image-dialog img,.hug-product-card>img,.hug-showcase-inner>div>img,.hug-detail img{mix-blend-mode:multiply}
@media(min-width:768px) and (max-width:1000px){
 .hug-hero{gap:30px}.hug-hero h1{font-size:2.6rem}.hug-hero-photo .weight-stamp{width:76px;height:76px;left:-3px}.hug-hero-photo .weight-stamp strong{font-size:1.4rem}.hug-hero-photo .weight-stamp span{font-size:.53rem}.hug-hero-photo .hello-note{font-size:1rem}.hug-hero-photo .character-tag{min-width:180px;padding:10px 13px}.hug-hero-photo .character-tag strong{font-size:1.1rem}.hug-hero-actions{gap:16px}
}
@media(max-width:767px){
 .hug-hero{gap:22px;padding-block:8px 30px}.hug-hero-photo{width:100%;max-width:380px;aspect-ratio:1;border-radius:0}.hug-hero-photo .hero-oval{inset:22px 12px 14px}.hug-hero-photo .hello-note{font-size:.95rem;top:0;right:8px}.hug-hero-photo .weight-stamp{left:0;top:23%;width:72px;height:72px}.hug-hero-photo .weight-stamp strong{font-size:1.35rem}.hug-hero-photo .weight-stamp span{font-size:.5rem}.hug-hero-photo .character-tag{min-width:165px;padding:8px 12px;right:5px;bottom:3px}.hug-hero-photo .character-tag strong{font-size:1.1rem}.hug-hero-photo .character-tag small{font-size:.56rem}.hug-hero-photo .tag-heart{font-size:24px}.hug-hero h1{font-size:clamp(2.05rem,8.8vw,2.7rem)}.hug-hero-actions{margin-top:20px;gap:16px;flex-wrap:nowrap}.hug-hero-actions .button{width:auto;flex:0 0 auto;padding-inline:20px;gap:16px;font-size:.9rem}.hug-hero-actions .hug-price{font-size:1.25rem;flex:1}.hug-hero-actions .hug-price small{font-size:.66rem;line-height:1.4}.hug-hero-note{font-size:.7rem;margin-top:18px;gap:8px}
}
