/* Shared readable typography for every storefront page. */
body.store{font-size:17px;line-height:1.55}
.store p,.store li{line-height:1.7}
.store input,.store select,.store textarea,.store .button,.store .outline{font-size:16px}
.store label,.store .account-form label,.store .checkout-fields label{font-size:16px}
.store .primary-links,.store .primary-links>a,.store .primary-links>button,.store .nav-dropdown>button{font-size:16px}
.store .header-search input{font-size:16px}
.store #product-grid .product-info h3{font-size:20px;line-height:1.4;min-height:2.8em}
.store .product-info small,.store .stock-note,.store .price-line del,.store .price-line .discount{font-size:14px;line-height:1.5}
.store .price-line{flex-wrap:wrap;row-gap:6px}
.store .price-line .sale-price{font-size:27px}
.store .detail-price .sale-price{font-size:34px}
.store .product-detail-page p,.store .product-highlights li,.store .detail-grid td,.store .detail-grid th{font-size:17px;line-height:1.7}
.store .compact-deals .deal-card h3{font-size:17px;line-height:1.45;min-height:2.9em}
.store .compact-deals .deal-card small,.store .compact-deals .deal-shipping,.store .deal-terms,.store .deal-offer-summary>span{font-size:14px;line-height:1.6}
.store .compact-deals .deal-add,.store .filters button,.store .text-link{font-size:15px}
.store .footer-columns a,.store .footer-columns>div>button,.store .footer-columns p{font-size:16px;line-height:1.6}
.store .footer-newsletter small,.store .footer-payment p,.store .footer-security small,.store .footer-bottom div,.store .footer-bottom button{font-size:13px;line-height:1.6}
.store .commerce-footer h3{font-size:20px}
.store .journal-body p,.store .journal-body li{font-size:19px;line-height:1.85}
.store .journal-card p,.store .journal-intro p{font-size:17px}
.store .journal-date,.store .journal-result-count,.store .journal-inline-image figcaption{font-size:14px}
.store .journal-pagination a,.store .journal-pagination span,.store .search-tabs a{font-size:16px}
.store .search-product-card h3{font-size:19px;line-height:1.45}
.store .search-stock,.store .search-product-card small{font-size:14px}
.store .account-side-nav a,.store .account-side-nav button{font-size:17px}
.store .demo-note,.store .subtle{font-size:14px;line-height:1.6}
@media(max-width:760px){
 body.store{font-size:16px}
 .store #product-grid .product-info h3,.store .search-product-card h3{font-size:17px}
 .store .product-info small,.store .stock-note,.store .price-line del,.store .price-line .discount{font-size:13px}
 .store .price-line .sale-price{font-size:23px}
 .store .detail-price .sale-price{font-size:30px}
 .store .compact-deals .deal-card h3{font-size:16px;min-height:0}
 .store .compact-deals .deal-card small,.store .compact-deals .deal-shipping{font-size:13px}
 .store .journal-body p,.store .journal-body li{font-size:17px}
 .store .account-side-nav a,.store .account-side-nav button{font-size:16px}
 .store .product-detail-page p,.store .product-highlights li,.store .detail-grid td,.store .detail-grid th{font-size:16px}
}

/* Larger reading scale and a spacious product gallery. */
body.store{font-size:19px}
.store input,.store select,.store textarea,.store .button,.store .outline,.store label{font-size:18px}
.store .primary-links>a,.store .primary-links>button,.store .nav-dropdown>button{font-size:18px}
.store #product-grid .product-info h3{font-size:23px}
.store .product-info small,.store .stock-note,.store .price-line del,.store .price-line .discount,.store .demo-note{font-size:16px}
.store .product-detail-page p,.store .product-detail-page li,.store .product-detail-page td,.store .product-detail-page th{font-size:19px;line-height:1.7}
.store .product-detail-page .product-page-title{font-size:clamp(32px,2.8vw,50px);line-height:1.2}
.store .product-detail-page h3{font-size:23px}
.store .detail-price .sale-price{font-size:38px}
.store .footer-columns a,.store .footer-columns>div>button,.store .footer-columns p,.store .journal-card p{font-size:18px}
.store .journal-body p,.store .journal-body li{font-size:21px}
.store .compact-deals .deal-card h3{font-size:19px}
.store section.product-detail-page{width:96%;max-width:1920px}
.store .product-detail-page .detail-grid{grid-template-columns:minmax(0,1.35fr) minmax(0,1fr);gap:32px}
.store .product-detail-page .gallery-stage{position:relative;overflow:hidden;background:#fff;border:1px solid #eee;border-radius:12px;isolation:isolate}
.store .product-detail-page .gallery-main{display:block;width:100%;height:clamp(560px,52vw,900px);aspect-ratio:auto;object-fit:contain;background:#fff;border-radius:0;transition:transform .15s ease-out}
.store .gallery-help{font-size:15px!important;margin:10px 0;color:#666}
.store .gallery-stage.is-zoomed .gallery-main{transform:scale(2);cursor:zoom-out}
.store .product-detail-page .thumbnails img{width:84px;height:84px}
@media(hover:hover) and (pointer:fine){.store .gallery-stage{cursor:zoom-in}}
@media(max-width:1000px){.store .product-detail-page .detail-grid{grid-template-columns:minmax(0,1fr)}.store .product-detail-page .gallery-main{height:auto;aspect-ratio:1}.store .product-detail-page .detail-grid>div:first-child{position:static}}
@media(max-width:760px){body.store{font-size:18px}.store #product-grid .product-info h3{font-size:19px}.store .product-detail-page p,.store .product-detail-page li,.store .product-detail-page td,.store .product-detail-page th{font-size:18px}.store .product-detail-page .product-page-title{font-size:30px}.store .journal-body p,.store .journal-body li{font-size:19px}.store .product-detail-page .thumbnails img{width:64px;height:64px}.store .gallery-help{display:none}.store .product-detail-page .gallery-main{transform:none!important}.store section.product-detail-page{width:94%}}

/* Balanced storefront typography: readable supporting copy, restrained product titles. */
body.store{font-size:18px;line-height:1.6}
.store .primary-nav a,.store .primary-nav summary,.store .primary-nav .nav-menu-toggle,.store .nav-dropdown-menu button{font-size:17px;line-height:1.4}
.store .market-header .buyer-button small,.store .delivery-button small{font-size:14px}
.store .market-header .buyer-button b,.store .delivery-button b,.store .market-locale{font-size:16px}
.store .header-search input,.store #shop #search,.store #shop #sort{font-size:17px}
.store .hero-module .service-strip{font-size:17px;line-height:1.5}
.store #hero-subtitle{font-size:18px;line-height:1.6}
.store #hero-eyebrow,.store .eyebrow{font-size:14px;line-height:1.5}
.store .hero-overlay-copy .hero-shop-button{font-size:17px}
.store #shop .category-nav button{font-size:16px;line-height:1.4;padding:11px 14px}
.store #product-grid .product-info h3,.store .search-product-card h3{font-size:18px;line-height:1.45;letter-spacing:0;min-height:2.9em}
.store .compact-deals .deal-card h3,.store .deal-card h3{font-size:16px;line-height:1.45;letter-spacing:0;min-height:2.9em;max-height:2.9em}
.store .product-detail-page .product-page-title{font-size:clamp(26px,2.1vw,36px);line-height:1.3;letter-spacing:-.5px}
.store .product-info small,.store .stock-note,.store .price-line del,.store .price-line .discount{font-size:16px;line-height:1.5}
.store .promo-panel>p,.store .deal-terms,.store .compact-deals .deal-card small,.store .compact-deals .deal-shipping,.store .deal-offer-summary>span{font-size:16px;line-height:1.6}
.store .promo-title>button,.store .deal-add,.store .compact-deals .deal-add,.store .text-link{font-size:16px;line-height:1.4}
.store .collection p,.store .business-banner p,.store .factory-details p,.store .partner-copy>p{font-size:18px;line-height:1.7}
.store .factory-contact,.store .partner-options b{font-size:18px}
.store .partner-options p,.store .partner-copy>small,.store .partner-form-intro,.store .partner-section form>p{font-size:16px;line-height:1.6}
.store label,.store .partner-fields label,.store .account-form label,.store .checkout-fields label{font-size:17px;line-height:1.5}
.store input,.store select,.store textarea,.store .partner-fields input,.store .partner-fields select,.store .partner-fields textarea,.store .button,.store .outline{font-size:17px}
.store .footer-columns a,.store .footer-columns>div>button,.store .footer-columns p{font-size:18px;line-height:1.65}
.store .footer-newsletter small,.store .footer-payment p,.store .footer-security small,.store .footer-bottom div,.store .footer-bottom button,.store .footer-bottom small,.store .newsletter-consent{font-size:15px;line-height:1.6}
.store .footer-security button{font-size:16px;line-height:1.5}
@media(max-width:760px){
 .store .primary-nav a,.store .primary-nav summary,.store .primary-nav .nav-menu-toggle{font-size:16px}
 .store #shop .category-nav button{font-size:15px;padding:11px 10px}
 .store #product-grid .product-info h3,.store .search-product-card h3{font-size:16px}
 .store .compact-deals .deal-card h3,.store .deal-card h3{font-size:15px}
 .store .product-detail-page .product-page-title{font-size:26px}
 .store #hero-subtitle,.store .hero-module .service-strip{font-size:16px}
 .store .market-header .buyer-button small{font-size:12px}
 .store .market-header .buyer-button b{font-size:14px}
 .store .product-info small,.store .stock-note,.store .price-line del,.store .price-line .discount{font-size:14px}
 .store .collection p,.store .business-banner p,.store .factory-details p,.store .partner-copy>p{font-size:17px}
 .store .footer-columns a,.store .footer-columns>div>button,.store .footer-columns p{font-size:16px}
}

/* A gentler reading scale after size review. */
body.store{font-size:16px;line-height:1.6}
.store .primary-nav a,.store .primary-nav summary,.store .primary-nav .nav-menu-toggle,.store .nav-dropdown-menu button{font-size:15px}
.store .market-header .buyer-button small,.store .delivery-button small{font-size:12px}
.store .market-header .buyer-button b,.store .delivery-button b,.store .market-locale{font-size:14px}
.store .header-search input,.store #shop #search,.store #shop #sort{font-size:15px}
.store .hero-module .service-strip,.store .hero-overlay-copy .hero-shop-button{font-size:15px}
.store #hero-subtitle{font-size:16px;line-height:1.6}
.store #hero-eyebrow,.store .eyebrow{font-size:12px}
.store #shop .category-nav button{font-size:14px;padding:10px 12px}
.store #product-grid .product-info h3,.store .search-product-card h3{font-size:17px;line-height:1.45}
.store .compact-deals .deal-card h3,.store .deal-card h3{font-size:15px}
.store .product-detail-page .product-page-title{font-size:clamp(24px,1.9vw,32px);line-height:1.3}
.store .product-info small,.store .stock-note,.store .price-line del,.store .price-line .discount{font-size:14px}
.store .promo-panel>p,.store .deal-terms,.store .compact-deals .deal-card small,.store .compact-deals .deal-shipping,.store .deal-offer-summary>span{font-size:14px}
.store .promo-title>button,.store .deal-add,.store .compact-deals .deal-add,.store .text-link{font-size:14px}
.store .collection p,.store .business-banner p,.store .factory-details p,.store .partner-copy>p{font-size:16px;line-height:1.7}
.store .factory-contact,.store .partner-options b{font-size:16px}
.store .partner-options p,.store .partner-copy>small,.store .partner-form-intro,.store .partner-section form>p{font-size:14px}
.store label,.store .partner-fields label,.store .account-form label,.store .checkout-fields label{font-size:15px}
.store input,.store select,.store textarea,.store .partner-fields input,.store .partner-fields select,.store .partner-fields textarea,.store .button,.store .outline{font-size:15px}
.store .product-detail-page p,.store .product-detail-page li,.store .product-detail-page td,.store .product-detail-page th{font-size:17px;line-height:1.7}
.store .product-detail-page h3{font-size:21px}
.store .detail-price .sale-price{font-size:32px}
.store .footer-columns a,.store .footer-columns>div>button,.store .footer-columns p{font-size:16px}
.store .footer-newsletter small,.store .footer-payment p,.store .footer-security small,.store .footer-bottom div,.store .footer-bottom button,.store .footer-bottom small,.store .newsletter-consent{font-size:13px}
.store .footer-security button{font-size:14px}
.store .commerce-footer h3{font-size:18px}
.store .journal-card p,.store .journal-intro p{font-size:16px}
.store .journal-body p,.store .journal-body li{font-size:18px}
.store .account-side-nav a,.store .account-side-nav button{font-size:15px}
@media(max-width:760px){
 .store #product-grid .product-info h3,.store .search-product-card h3{font-size:16px}
 .store .compact-deals .deal-card h3,.store .deal-card h3{font-size:14px}
 .store .product-detail-page .product-page-title{font-size:24px}
 .store #hero-subtitle,.store .hero-module .service-strip{font-size:15px}
 .store .market-header .buyer-button small{font-size:11px}
 .store .market-header .buyer-button b{font-size:13px}
 .store .product-detail-page p,.store .product-detail-page li,.store .product-detail-page td,.store .product-detail-page th{font-size:16px}
 .store .journal-body p,.store .journal-body li{font-size:17px}
}

/* Ordinary catalog and detail reviews only; promotional cards do not use these components. */
.product-review-summary{display:flex;align-items:center;flex-wrap:wrap;gap:7px;width:fit-content;text-decoration:none;color:#666;font-size:14px;line-height:1.4;margin:6px 0 10px}
.review-stars{display:inline-block;position:relative;white-space:nowrap;color:#d7d7d7;font-size:20px;line-height:1;letter-spacing:1px;vertical-align:middle}
.review-stars-fill{position:absolute;inset:0 auto 0 0;overflow:hidden;white-space:nowrap;color:#ff5024}
.review-score{font-variant-numeric:tabular-nums}.review-sample-label{font-size:12px;color:#777;background:#f3f3f3;border-radius:3px;padding:2px 5px}
.store #product-grid .product-info h3{min-height:0;margin-bottom:6px}.store #product-grid .product-info .price-line{margin-top:8px}
.store .product-reviews{padding:32px 0;margin-top:40px;border-top:1px solid #e5e3e0;scroll-margin-top:30px}
.review-section-header{display:flex;align-items:center;justify-content:space-between;gap:24px;padding-bottom:24px;border-bottom:1px solid #e5e3e0}
.store .product-reviews h2{font-size:26px;letter-spacing:-.4px;margin-bottom:10px}
.store .product-reviews .review-disclosure{font-size:14px;line-height:1.6;margin:0;max-width:650px;color:#777}
.review-overall{display:flex;align-items:center;gap:14px;flex-shrink:0}.review-overall>strong{font-size:40px;line-height:1}.review-overall>div>span:last-child{display:block;font-size:13px;color:#777;margin-top:8px}
.review-list{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;padding-top:24px}.review-entry{min-width:0;background:#fafafa;border:1px solid #eee;border-radius:8px;padding:22px}
.review-entry-meta{display:flex;justify-content:space-between;align-items:center;gap:8px;font-size:14px;color:#777;margin-bottom:16px}
.store .product-reviews .review-entry h3{font-size:17px;line-height:1.4;letter-spacing:0;margin:12px 0 10px}.store .product-reviews .review-entry p{font-size:15px;line-height:1.7;margin:0;color:#555}
@media(max-width:850px){.review-list{grid-template-columns:1fr}.review-section-header{align-items:flex-start;flex-direction:column}.review-entry{padding:20px}.review-overall>strong{font-size:34px}}
@media(prefers-reduced-motion:no-preference){html{scroll-behavior:smooth}}

/* Shared product navigation, ratings dashboard, A+ and questions. */
.store .product-section-nav{display:flex;gap:42px;overflow-x:auto;border-bottom:1px solid #eee;padding:22px 0 0;margin-top:42px;background:#fff;position:sticky;top:0;z-index:5;white-space:nowrap}
.product-section-nav a{display:block;padding:0 6px 16px;font-size:20px;border-bottom:4px solid transparent;color:#222}.product-section-nav a.active{font-weight:700;border-bottom-color:#ff5024}
.store .product-reviews{margin-top:0;padding-top:34px;border-top:0;scroll-margin-top:85px}.store .product-reviews h2{font-size:28px;margin-bottom:30px}
.review-dashboard{display:grid;grid-template-columns:1fr 1.6fr 1.1fr;gap:44px;border-bottom:1px solid #ddd;padding-bottom:38px;align-items:start}.review-total>strong{display:block;font-size:36px;line-height:1.2;letter-spacing:-1px;margin-bottom:12px}.review-total>div{display:flex;align-items:center;gap:10px;font-size:15px}.review-total .review-stars{font-size:27px}.review-total details{margin-top:20px;font-size:14px;color:#555}.review-total summary{cursor:pointer}.store .review-total details p{font-size:14px;line-height:1.6;margin-top:10px}
.rating-distribution{display:grid;gap:12px}.rating-distribution button{display:grid;grid-template-columns:58px 1fr 42px;align-items:center;gap:12px;width:100%;border:0;background:none;color:#555;font-size:15px;text-align:left;padding:0}.rating-distribution button>span:last-child{text-align:right}.rating-bar{height:11px;background:#e8e9eb;border-radius:12px;overflow:hidden}.rating-bar i{display:block;height:100%;background:#ff5024;border-radius:12px}
.store .product-reviews .review-write h3{font-size:19px;margin:0 0 5px}.store .product-reviews .review-write p{font-size:15px;color:#444;line-height:1.5;margin-bottom:20px}.review-outline{border:1.5px solid #222;background:white;color:#222;font-size:16px;font-weight:700;border-radius:28px;padding:13px 24px;width:100%}
.review-media{padding:28px 0}.store .product-reviews h3{font-size:21px;letter-spacing:-.3px}.store .review-media>p{font-size:15px;color:#777}.review-media-rail{display:flex;gap:14px;overflow:auto}.review-media-rail img{width:170px;height:170px;object-fit:cover;border-radius:9px}
.review-filters{display:flex;align-items:center;flex-wrap:wrap;gap:12px}.review-filters select,.review-current,.review-media-toggle{padding:10px 17px;border:1px solid #aaa;border-radius:25px;background:#fff;color:#444;font-size:15px}.review-media-toggle{display:flex;align-items:center;gap:9px;font-weight:400}.review-media-toggle input{width:auto;margin:0}.review-filters label{margin:0}.review-filters select{margin:0;width:auto}.store [data-review-count]{font-size:14px;color:#777;margin:18px 0 0}
.review-list{display:block;padding-top:0}.review-entry{background:#fff;border:0;border-bottom:1px solid #e6e6e6;border-radius:0;padding:26px 0}.review-entry-meta{justify-content:flex-start;margin-bottom:14px}.review-avatar{display:flex;align-items:center;justify-content:center;width:32px;height:32px;border-radius:50%;background:#eee;color:#666}.review-entry-title{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.store .product-reviews .review-entry h3{margin:0;font-size:17px}.store .product-reviews .review-entry p{font-size:16px;margin:12px 0 0;max-width:1000px}.review-entry>small{display:block;color:#777;margin-top:8px;font-size:13px}.review-upload{display:block;width:150px;height:150px;object-fit:cover;margin-top:16px;border-radius:6px}
.store .product-aplus,.store .product-questions{padding:40px 0;border-top:1px solid #ddd;scroll-margin-top:85px}.store .product-aplus h2,.store .product-questions h2{font-size:28px;letter-spacing:-.5px}.store .product-aplus>h3{font-size:22px}.store .product-aplus p,.store .product-questions p{font-size:16px;line-height:1.7}.aplus-images{display:grid;gap:18px;max-width:1200px;margin:28px auto}.aplus-images img{display:block;width:100%;height:auto;max-height:none;object-fit:contain;border-radius:8px}.aplus-features{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.aplus-features p{padding:18px;background:#f7f7f7;border-radius:7px;margin:0}.product-questions details{padding:18px 0;border-bottom:1px solid #eee}.product-questions summary{font-size:17px;font-weight:600;cursor:pointer}.product-questions p{margin:14px 0 0}.product-extras{scroll-margin-top:85px}
.write-review-dialog{width:min(620px,94vw);padding:28px}.write-review-form{display:grid;gap:16px}.review-form-heading{display:flex;align-items:start;justify-content:space-between;gap:16px}.store .review-form-heading h2{margin:0;font-size:25px}.review-form-heading button{border:0;background:none;font-size:28px;line-height:1}.write-review-form>p{font-size:15px;margin:0}.write-review-form input,.write-review-form textarea,.write-review-form select{font-size:16px}.review-save-status{color:#b13b24}
@media(max-width:1050px){.review-dashboard{grid-template-columns:1fr 1.5fr;gap:28px}.review-write{grid-column:1/-1;max-width:400px}.product-section-nav{gap:24px}}
@media(max-width:650px){.store .product-section-nav{gap:16px;padding-top:15px}.product-section-nav a{font-size:16px;padding-bottom:13px}.review-dashboard{grid-template-columns:1fr;gap:26px}.review-write{grid-column:auto;max-width:none}.review-total>strong{font-size:30px}.aplus-features{grid-template-columns:1fr}.review-filters{gap:8px}.review-filters select,.review-current,.review-media-toggle{font-size:14px;padding:9px 12px}}
