/* Shared type scale. Compact labels stay distinct from readable body copy. */
:root{--text-body:1rem;--text-copy:.9375rem;--text-label:.875rem;--text-small:.8125rem;--text-meta:.75rem}
.storefront{font-size:var(--text-body);line-height:1.65;-webkit-text-size-adjust:100%;text-size-adjust:100%}
.storefront .product-card p{font-size:var(--text-small);line-height:1.65}
.storefront .catalog-head p,.storefront .box-copy p,.storefront .boxes-heading>p{font-size:var(--text-label);line-height:1.65}
.storefront .review-card blockquote{border:0;background:none;border-radius:0;padding:0;margin:0 0 22px}
.storefront .review-card blockquote p{font-size:var(--text-copy);line-height:1.75}
.storefront .review-author strong,.storefront .review-product strong{font-size:var(--text-small)}
.storefront .review-author time,.storefront .review-demo,.storefront .review-verified,.storefront .review-more-flavor,.storefront .review-demo-note{font-size:var(--text-meta);line-height:1.5}
.storefront .review-product small{font-size:.625rem;letter-spacing:1px}
.storefront .reviews-average>span,.storefront .reviews-overview>p,.storefront .reviews-results-heading>span{font-size:var(--text-small);line-height:1.65}
.storefront .reviews-filter-fields label,.storefront .reviews-filter-bottom{font-size:var(--text-small)}
.storefront .reviews-filter-fields select,.storefront .reviews-filter-fields .button{font-size:var(--text-label)}
.storefront .review-all-link,.storefront .reviews-tabs a,.storefront .reviews-back{font-size:var(--text-label)}
.storefront .review-more-flavor{gap:12px;padding-top:12px}
.storefront .flavor-info p span,.storefront .flavor-bottom>span,.storefront .box-price-note,.storefront .box-summary-link{font-size:var(--text-meta);line-height:1.6}
.storefront .box-progress,.storefront .box-help,.storefront .box-price span{font-size:var(--text-label);line-height:1.6}

@media(max-width:767px){
  .storefront{font-size:16px;line-height:1.65}
  .storefront h1,.storefront h2,.storefront h3{overflow-wrap:break-word}
  .storefront .hero h1{font-size:clamp(2.25rem,10vw,2.75rem);line-height:1.08;letter-spacing:-.045em;margin:18px 0}
  .storefront .hero-copy{padding:32px 8%}
  .storefront .hero p{font-size:16px;line-height:1.65;margin-bottom:22px}
  .storefront .hero-box-link{font-size:14px;line-height:1.6}
  .storefront .eyebrow{font-size:11px;letter-spacing:1.5px;line-height:1.6}
  .storefront .section-heading h2,.storefront .story h2,.storefront .moment h2,.storefront .review-home-heading h2{font-size:clamp(1.75rem,7.5vw,2.125rem);line-height:1.16;letter-spacing:-.04em}
  .storefront .section-heading p,.storefront .story p,.storefront .moment p,.storefront .review-home-heading>p{font-size:16px;line-height:1.7}
  .storefront .page-head h1,.storefront .catalog-head h1,.storefront .section>h1,.storefront .prose h1{font-size:clamp(2rem,8.5vw,2.5rem);line-height:1.13;letter-spacing:-.04em}
  .storefront .page-head p,.storefront .catalog-head p{font-size:15px;line-height:1.7}
  .storefront .builder-heading h1{font-size:clamp(2rem,8.5vw,2.5rem);line-height:1.13;letter-spacing:-.04em}
  .storefront .builder-heading>p{font-size:15px;line-height:1.65}
  .storefront .product-description h1{font-size:clamp(1.875rem,8vw,2.25rem);line-height:1.14;letter-spacing:-.04em}
  .storefront .product-description>p,.storefront .product-story,.storefront .product-description .lead,.storefront .prose p{font-size:16px;line-height:1.75}
  .storefront .product-description .price{font-size:26px;line-height:1.3}
  .storefront .product-card h3,.storefront .catalog-shop .product-card h3{font-size:16px;line-height:1.35;letter-spacing:-.025em}
  .storefront .product-card p{font-size:14px;line-height:1.6;min-height:0}
  .storefront .catalog-shop .product-card p{min-height:3.2em;-webkit-line-clamp:2}
  .storefront .product-meta,.storefront .product-badge,.storefront .product-badge-caption{font-size:11px;line-height:1.45;letter-spacing:.35px}
  .storefront .product-bottom{font-size:16px;line-height:1.5;flex-wrap:wrap;gap:8px}
  .storefront .product-bottom button:disabled{font-size:13px}
  .storefront .box-copy h3{font-size:22px;line-height:1.2;letter-spacing:-.03em}
  .storefront .boxes-heading h2{font-size:28px;line-height:1.16}
  .storefront .box-copy p,.storefront .boxes-heading>p{font-size:14px;line-height:1.65}
  .storefront .box-link,.storefront .box-back,.storefront .box-size-picker a{font-size:14px;line-height:1.5}
  .storefront .box-size,.storefront .box-destination{font-size:12px;line-height:1.55}
  .storefront .text-link,.storefront .button{font-size:14px;line-height:1.5}
  .storefront .button{min-height:48px;padding:13px 20px;gap:12px}
  .storefront input:not([type=checkbox]):not([type=hidden]),.storefront select,.storefront textarea,
  .storefront .catalog-search input,.storefront .catalog-sort select,.storefront .reviews-filter-fields select{font-size:16px;line-height:1.5}
  .storefront label,.storefront .catalog-sort label,.storefront .catalog-refine-panel label{font-size:14px;line-height:1.6}
  .storefront .password-toggle{font-size:12px;padding:10px 6px}
  .storefront .form-card h1{font-size:32px;line-height:1.13;letter-spacing:-.04em}
  .storefront .form-card>p{font-size:15px;line-height:1.7}
  .storefront .form-card{padding:28px 22px}
  .storefront .form-card .validation-summary-errors,.storefront .field-validation-error{font-size:14px;line-height:1.6}
  .storefront .category-tabs a,.storefront .catalog-refine>summary{font-size:14px;line-height:1.5}
  .storefront .catalog-status,.storefront .catalog-shop .catalog-status{font-size:13px;line-height:1.6;gap:12px;flex-wrap:wrap}
  .storefront .catalog-sort{max-width:100%;flex-wrap:wrap;gap:5px 10px}
  .storefront .catalog-sort select{max-width:220px;min-width:0;padding-right:28px}
  .storefront .usp-strip{gap:14px}
  .storefront .usp-item{font-size:12px;line-height:1.5;gap:7px}
  .storefront .usp-item>.ui-icon{width:19px;height:19px;flex-shrink:0}
  .storefront .flavor-info h2{font-size:17px;line-height:1.35;letter-spacing:-.025em}
  .storefront .flavor-info p{font-size:15px;line-height:1.5}
  .storefront .flavor-info p span,.storefront .flavor-bottom>span{font-size:12px}
  .storefront .box-builder .flavor-quantity input[type=number]{font-size:16px;line-height:36px}
  .storefront .builder-summary h2{font-size:27px;line-height:1.2}
  .storefront .box-submit,.storefront .box-summary-link{font-size:14px}
  .storefront .box-price-note{font-size:13px;line-height:1.65}
  .storefront .flavor-detail-layout p{font-size:15px;line-height:1.7}
  .storefront .flavor-detail-layout h2{font-size:27px;line-height:1.2}
  .storefront .flavor-detail-layout h3,.storefront .flavor-detail-layout summary{font-size:16px;line-height:1.5}
  .storefront details summary{font-size:15px;line-height:1.5}
  .storefront details p{font-size:15px;line-height:1.7}
  .storefront .breadcrumbs{font-size:13px;line-height:1.6}
  .storefront .checkout-steps{font-size:13px;line-height:1.6;gap:12px 18px}
  .storefront .checkout-layout form>p,.storefront .summary>p{font-size:14px;line-height:1.65}
  .storefront .summary h3{font-size:23px;line-height:1.3}
  .storefront .summary>div{font-size:15px;line-height:1.6}
  .storefront .summary .total{font-size:23px;line-height:1.3}
  .storefront .cart-line h3{font-size:17px;line-height:1.35}
  .storefront .cart-line span,.storefront .cart-box-content,.storefront .box-remove{font-size:13px;line-height:1.6}
  .storefront .cart-box-heading,.storefront .box-edit{font-size:14px;line-height:1.5}
  .storefront .cart-box-heading small{font-size:12px}
  .storefront .drawer-intro h2{font-size:29px;line-height:1.15;letter-spacing:-.04em}
  .storefront .drawer-intro p,.storefront .drawer-shipping,.storefront .drawer-line p{font-size:13px;line-height:1.6}
  .storefront .drawer-product-name{font-size:15px;line-height:1.4}
  .storefront .drawer-line>strong,.storefront .drawer-totals>div,.storefront .drawer-quantity span{font-size:15px}
  .storefront .drawer-totals .drawer-total{font-size:22px}
  .storefront .drawer-totals p,.storefront .drawer-full-cart,.storefront .drawer-continue{font-size:13px;line-height:1.6}
  .storefront .drawer-empty p,.storefront #cart-drawer-error{font-size:15px;line-height:1.65}
  .storefront .reviews-intro h1{font-size:clamp(2.125rem,9vw,2.625rem);line-height:1.12;letter-spacing:-.04em}
  .storefront .reviews-intro>p,.storefront .review-home-heading>p{font-size:15px;line-height:1.7}
  .storefront .reviews-intro .eyebrow{font-size:11px;line-height:1.6}
  .storefront .reviews-average>span,.storefront .reviews-overview>p{font-size:14px;line-height:1.65}
  .storefront .reviews-overview{gap:20px}
  .storefront .reviews-back,.storefront .reviews-tabs a,.storefront .review-all-link{font-size:14px;line-height:1.55}
  .storefront .reviews-filter-fields{grid-template-columns:1fr}
  .storefront .reviews-filter-fields label,.storefront .reviews-filter-bottom{font-size:14px;line-height:1.6}
  .storefront .reviews-filter-fields .button{font-size:14px}
  .storefront .reviews-results-heading h2{font-size:22px;line-height:1.3}
  .storefront .reviews-results-heading>span{font-size:13px}
  .storefront .review-card blockquote p{font-size:15px;line-height:1.75;min-height:0}
  .storefront .review-author strong,.storefront .review-product strong{font-size:14px;line-height:1.5}
  .storefront .review-author time,.storefront .review-demo,.storefront .review-verified,.storefront .review-more-flavor,.storefront .review-demo-note{font-size:12px;line-height:1.6}
  .storefront .review-product small{font-size:11px;letter-spacing:.7px}
  .storefront .review-stars{font-size:18px}
  .storefront .review-avatar{width:36px;height:36px;font-size:14px}
  .storefront .target-reviews-heading h2,.storefront .reviews h2,.storefront .review-write h2{font-size:27px;line-height:1.2}
  .storefront .target-reviews-heading p,.storefront .target-reviews-heading>a,.storefront .review-write p{font-size:14px;line-height:1.65}
  .storefront .reviews-end>p{font-size:21px;line-height:1.4}
  .storefront .reviews-end>a{font-size:14px;line-height:1.6}
  .storefront .reviews-empty h3{font-size:26px;line-height:1.2}
  .storefront .reviews-empty p{font-size:15px;line-height:1.7}
  .storefront .site-footer{font-size:14px;line-height:1.65;gap:28px 20px}
  .storefront .site-footer h3{font-size:15px;line-height:1.4}
  .storefront .site-footer p{font-size:15px;line-height:1.65}
  .storefront .consent{font-size:12px;line-height:1.65}
  .storefront .footer-bottom{font-size:12px;line-height:1.65}
  .storefront .cookie-banner{font-size:14px;line-height:1.65}
  .storefront .cookie-banner h3{font-size:19px;line-height:1.3}
  .storefront .cookie-banner button{font-size:14px;line-height:1.5;min-height:44px}
  .storefront .account-nav{gap:12px;flex-wrap:wrap}
  .storefront .account-nav>a,.storefront .account-nav button{font-size:14px;line-height:1.5}
  .storefront .data-table th,.storefront .data-table td{font-size:14px;line-height:1.6}
  .storefront .data-table th{font-size:12px}
  .admin-body{font-size:15px;line-height:1.65;-webkit-text-size-adjust:100%}
  .admin-body .admin-main h1{font-size:30px;line-height:1.15;letter-spacing:-.04em}
  .admin-body .admin-main h2{font-size:22px;line-height:1.3}
  .admin-body .panel>p,.admin-body label,.admin-body .stack label,.admin-body .planning-hint{font-size:14px;line-height:1.65}
  .admin-body input:not([type=checkbox]):not([type=hidden]),.admin-body select,.admin-body textarea{font-size:16px;line-height:1.5}
  .admin-body .button{font-size:14px;line-height:1.5;min-height:46px}
  .admin-body .data-table td{font-size:14px;line-height:1.6}
  .admin-body .data-table th{font-size:12px;line-height:1.5}
  .admin-body .order-planning-fields label,.admin-body .planning-time-window legend{font-size:14px;line-height:1.5}
  .admin-body .planning-time-inputs label,.admin-body .order-email-entry>summary,.admin-body .order-email-preview dl{font-size:13px;line-height:1.6}
  .admin-body .order-planning-fields .planning-time-inputs input{font-size:16px}
  .admin-body .saved-email-body{font-size:15px;line-height:1.75}
}
@media(max-width:380px){
  .storefront .site-header{padding-left:12px;padding-right:12px;gap:8px}
  .storefront .nav-actions{gap:6px}
  .storefront .site-header>.wordmark{font-size:26px}
  .storefront .site-header .bag{padding-left:8px;padding-right:8px}
  .storefront .catalog-sort{width:100%;justify-content:space-between}
  .storefront .catalog-sort select{max-width:190px}
  .storefront .catalog-refine-panel{grid-template-columns:1fr}
  .storefront .catalog-refine-panel>label{grid-column:1/-1}
  .storefront .product-card h3,.storefront .catalog-shop .product-card h3{font-size:15px}
  .storefront .usp-strip{gap:10px;flex-wrap:wrap;justify-content:center}
  .storefront .usp-item{font-size:12px}
  .storefront .builder-summary{padding:20px}
  .storefront .button{padding-left:16px;padding-right:16px}
}
