/* Storefront refinements: collection cards, editorial pages and service layouts. */
.cart-link { padding-right: 18px; }
.cart-link.has-items::after { display: none; }
.cart-count { position: absolute; top: 0; right: 0; min-width: 20px; height: 20px; padding: 0 5px; display: grid; place-items: center; border-radius: 50%; background: var(--brown); color: white; font-size: 10px; line-height: 1; border: 2px solid var(--bg); }
.product-card { display: flex; flex-direction: column; align-self: start; background: white; border: 1px solid var(--line); border-radius: 10px; overflow: hidden; }
.product-card:hover { box-shadow: 0 12px 28px #432a1710; transform: translateY(-4px); }
.product-image { display: block; position: relative; border-radius: 0; aspect-ratio: 1; width: 100%; overflow: hidden; flex-shrink: 0; }
.product-image img { display: block; width: 100%; height: 100%; aspect-ratio: auto; object-fit: cover; }
.view-details { position: absolute; bottom: 18px; left: 50%; transform: translate(-50%, 8px); opacity: 0; display: flex; align-items: center; justify-content: space-between; gap: 25px; width: calc(100% - 36px); max-width: 220px; min-height: 44px; padding: 10px 18px; background: #ffffffed; color: var(--brown); border-radius: 4px; box-shadow: 0 4px 16px #291b1814; font-size: 12px; transition: opacity .2s, transform .2s; }
.product-image:hover .view-details, .product-image:focus-visible .view-details { opacity: 1; transform: translate(-50%, 0); }
.product-card-body { padding: 20px; display: flex; flex-direction: column; flex: 1; }
.product-category { color: var(--muted); font-size: 9px; text-transform: uppercase; letter-spacing: 1.2px; display: block; }
.product-card h3 { margin: 10px 0; font-size: 14px; line-height: 1.55; }
.product-card p { font-size: 12px; margin-bottom: 10px; min-height: 0; }
.product-card-bottom { margin-top: 0; border-top: 1px solid var(--line); padding-top: 12px; display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 12px; }
.product-card .price { margin: 0; font-size: 15px; font-weight: 500; }
.product-card .btn { width: auto; min-height: 42px; padding: 8px 14px; font-size: 11px; }
.about-story { margin: 75px 0; display: grid; grid-template-columns: 1fr 1fr; gap: 9%; align-items: center; }
.about-story-photo { position: relative; }
.about-story-photo img { aspect-ratio: .95; object-fit: cover; border-radius: 8px; }
.photo-caption { position: absolute; bottom: 22px; left: 22px; padding: 11px 20px; background: #faf8f4ef; color: var(--brown); font-family: var(--serif); font-size: 22px; }
.about-story-copy h2 { font-size: clamp(33px, 3.6vw, 49px); }
.about-story-copy h2 em { color: var(--brown); }
.about-story-copy p { font-size: 14px; margin-top: 23px; }
.about-story-copy .btn { margin-top: 28px; }
.about-values { display: grid; grid-template-columns: .8fr 1.2fr; gap: 9%; padding: 55px; background: #694a37; color: white; border-radius: 10px; }
.about-values .eyebrow { color: #e8c29b; }
.about-values p { color: #e5d8ce; font-size: 13px; }
.about-values-heading h2 { font-size: 37px; }
.about-values-heading p { margin-top: 20px; }
.about-value-list article { display: flex; gap: 25px; padding: 26px 0; border-bottom: 1px solid #ffffff26; }
.about-value-list article:first-child { padding-top: 0; }
.about-value-list article:last-child { border: 0; padding-bottom: 0; }
.about-value-list .eyebrow { font-size: 9px; margin-bottom: 10px; }
.about-value-list h3 { font-size: 27px; margin-bottom: 12px; }
.value-number { font-family: var(--serif); font-size: 30px; color: #d9b48e; }
.about-closing { padding: 70px 0 30px; text-align: center; }
.about-closing h2 { margin-bottom: 25px; font-size: 37px; }
.redesigned-contact { grid-template-columns: 1fr 1.05fr; gap: 5%; align-items: start; padding-top: 15px; padding-bottom: 50px; }
.contact-photo { position: relative; height: 250px; border-radius: 9px; overflow: hidden; }
.contact-photo img { width: 100%; height: 100%; object-fit: cover; }
.contact-photo::after { content: ''; position: absolute; inset: 0; background: linear-gradient(transparent, #29180dd9); }
.contact-photo>div { position: absolute; left: 28px; right: 20px; bottom: 25px; z-index: 1; color: white; }
.contact-photo .eyebrow { color: #f4d8b5; margin-bottom: 9px; }
.contact-photo h2 { font-size: 33px; }
.contact-methods { background: white; margin-top: 18px; padding: 5px 28px; border: 1px solid var(--line); border-radius: 9px; }
.contact-method { display: flex; gap: 19px; padding: 22px 0; border-bottom: 1px solid var(--line); align-items: flex-start; }
.contact-method:last-child { border-bottom: 0; }
.contact-method>span { width: 36px; height: 36px; flex-shrink: 0; display: grid; place-items: center; background: #f4eee6; color: var(--brown); border-radius: 50%; font-size: 19px; }
.contact-method h3 { font: 500 12px Inter, sans-serif; margin: 2px 0 8px; }
.contact-method p,.contact-method a { font-size: 13px; overflow-wrap: anywhere; }
.contact-method a { color: var(--brown); text-decoration: underline; text-underline-offset: 4px; }
.contact-order-note { border-left: 2px solid var(--tan); margin-top: 24px; padding: 3px 0 3px 17px; font-size: 12px; }
.contact-order-note p { margin-top: 6px; }
.contact-form-card { border-radius: 10px; padding: 36px; box-shadow: 0 10px 30px #432a1705; }
.contact-form-card h2 { font-size: 35px; margin-bottom: 10px; }
.form-intro { font-size: 13px; margin-bottom: 28px; }
.contact-form-card textarea { min-height: 175px; }
.email-explainer { display: flex; gap: 12px; padding: 17px 0; margin: 3px 0 9px; }
.email-explainer>span { color: var(--brown); }
.email-explainer p { font-size: 12px; }
.contact-form-card .btn { width: 100%; }
#contact-feedback { font-size: 13px; margin-top: 15px; }
.cart-intro { padding: 52px 0 38px; }
.cart-intro h1 { font-size: 49px; }
.cart-intro>p { margin-top: 18px; font-size: 14px; }
.redesigned-cart { gap: 35px; grid-template-columns: 1.6fr 1fr; }
.cart-selection { min-width: 0; }
.cart-list-heading { display: flex; align-items: center; justify-content: space-between; gap: 15px; padding: 0 0 20px; }
.cart-list-heading h2 { font-size: 25px; }
.cart-list-heading .text-link { font-size: 11px; }
.redesigned-cart .cart-item { grid-template-columns: 120px 1fr auto; background: white; border: 1px solid var(--line); border-radius: 9px; padding: 18px; margin-bottom: 15px; gap: 20px; }
.cart-item-photo { border-radius: 5px; overflow: hidden; }
.redesigned-cart .cart-item img { width: 120px; height: 140px; }
.redesigned-cart .cart-item h3 { font-size: 14px; line-height: 1.5; margin: 8px 0; }
.redesigned-cart .cart-item p { font-size: 11px; }
.cart-variants { display: flex; gap: 6px; flex-wrap: wrap; margin: 9px 0; }
.cart-variants span { background: #f5f1eb; border: 1px solid #ede5d9; padding: 2px 8px; font-size: 10px; border-radius: 3px; color: var(--brown); }
.redesigned-cart .remove { padding: 4px 0; margin-top: 7px; min-height: 30px; font-size: 11px; }
.redesigned-cart .cart-item>strong { align-self: start; padding-top: 6px; font-size: 14px; color: var(--brown); }
.cart-footnote { font-size: 12px; padding: 8px 0; }
.cart-summary { background: #eee8de; border: 0; padding: 32px; border-radius: 10px; }
.cart-summary h2 { font-size: 35px; }
.summary-line { display: flex; justify-content: space-between; gap: 15px; font-size: 12px; padding: 10px 0; color: #6a5c50; }
.cart-summary .total { font-size: 14px; border-color: #d6cbbc; }
.cart-summary .btn { min-height: 51px; }
.cart-cod { display: flex; gap: 14px; margin-top: 24px; border-top: 1px solid #d6cbbc; padding-top: 22px; }
.cart-cod>span { font-size: 26px; color: var(--brown); }
.cart-cod strong { font-size: 12px; font-weight: 500; }
.cart-cod p { font-size: 11px; margin: 4px 0 0; }
.cart-summary p.cart-summary-note { font-size: 11px; margin-bottom: 0; }
.cart-empty { max-width: 780px; margin: 0 auto 65px; text-align: center; padding: 45px 30px; background: white; border: 1px solid var(--line); border-radius: 12px; }
.cart-empty-art { width: 115px; height: 115px; margin: 0 auto 25px; border-radius: 50%; background: #f4eee4; color: var(--brown); padding: 17px; }
.cart-empty-art svg { width: 100%; height: 100%; }
.cart-empty h2 { font-size: 40px; }
.cart-empty p { max-width: 430px; margin: 20px auto 28px; font-size: 14px; }
.policy-hero { padding: 45px 0 34px; border-bottom: 1px solid var(--line); margin-bottom: 38px; }
.policy-hero h1 { font-size: 54px; }
.policy-hero>p { max-width: 690px; margin-top: 20px; font-size: 15px; }
.policy-meta { display: flex; flex-wrap: wrap; gap: 12px; align-items: center; margin-top: 24px; font-size: 11px; color: var(--muted); }
.policy-status { padding: 4px 10px; background: #efe4d4; color: var(--brown); border-radius: 20px; }
.policy-layout { display: grid; grid-template-columns: 225px minmax(0, 1fr); gap: 65px; padding-bottom: 65px; align-items: start; }
.policy-contents { position: sticky; top: 125px; padding: 22px; background: #f0ebe3; border-radius: 7px; }
.policy-contents h2 { font: 500 12px Inter,sans-serif; margin-bottom: 16px; }
.policy-contents a { font-size: 11px; line-height: 1.5; display: block; padding: 9px 0; color: #6b5d50; border-bottom: 1px solid #dfd6cb; }
.policy-contents a:last-child { border: 0; }
.policy-contents a:hover { color: var(--brown); text-decoration: underline; }
.policy-body { min-width: 0; max-width: 770px; }
.policy-body>.callout { margin: 0 0 28px; }
.policy-body section { scroll-margin-top: 120px; padding: 26px 0; border-bottom: 1px solid var(--line); }
.policy-body section:first-of-type { padding-top: 0; }
.policy-body section h2 { font-size: 28px; letter-spacing: -.5px; margin-bottom: 20px; }
.policy-section-number { color: #ac8969; font: 11px Inter,sans-serif; display: block; letter-spacing: 2px; margin-bottom: 11px; }
.policy-body p { font-size: 14px; line-height: 1.95; }
.policy-body p+p { margin-top: 16px; }
.policy-help { margin-top: 32px; padding: 25px; background: #eee8de; border-radius: 7px; }
.policy-help h2 { font-size: 26px; margin-bottom: 12px; }
.policy-help a { color: var(--brown); text-decoration: underline; overflow-wrap: anywhere; }
@media (hover: none) { .view-details { opacity: 1; transform: translate(-50%, 0); } }
@media (max-width: 1000px) {
  .product-card-body { padding: 15px; }
  .product-card-bottom { align-items: flex-start; }
  .product-card .btn { width: 100%; }
  .about-values { gap: 6%; padding: 35px; grid-template-columns: .8fr 1.2fr; }
  .contact-form-card { padding: 25px; }
  .redesigned-cart { gap: 22px; grid-template-columns: 1.35fr 1fr; }
  .redesigned-cart .cart-item { grid-template-columns: 90px 1fr; gap: 15px; }
  .redesigned-cart .cart-item img { width: 90px; height: 120px; }
  .redesigned-cart .cart-item>strong { grid-column: 2; padding: 0; }
  .cart-summary { padding: 24px; }
  .policy-layout { grid-template-columns: 190px minmax(0,1fr); gap: 30px; }
}
@media (max-width: 700px) {
  .cart-count { right: 0; }
  .product-card { border-radius: 7px; }
  .product-card-body { padding: 13px; }
  .product-category { font-size: 8px; letter-spacing: .6px; }
  .product-card h3 { font-size: 12px; margin-top: 8px; }
  .product-card p { font-size: 11px; margin-bottom: 10px; }
  .product-card .price { font-size: 14px; }
  .product-card .btn { font-size: 11px; padding-inline: 8px; min-height: 44px; }
  .view-details { width: calc(100% - 20px); bottom: 10px; padding: 9px 12px; font-size: 11px; gap: 8px; }
  .about-story { grid-template-columns: 1fr; gap: 30px; margin: 40px 0; }
  .about-story-photo img { aspect-ratio: 1.1; }
  .about-story-copy h2 { font-size: 36px; }
  .about-values { grid-template-columns: 1fr; padding: 28px 23px; gap: 30px; }
  .about-values-heading h2 { font-size: 33px; }
  .about-value-list article { gap: 18px; }
  .about-value-list h3 { font-size: 25px; }
  .about-closing { padding: 45px 0 15px; }
  .about-closing h2 { font-size: 32px; }
  .redesigned-contact { grid-template-columns: 1fr; gap: 30px; padding-top: 0; }
  .contact-photo { height: 230px; }
  .contact-photo>div { left: 22px; }
  .contact-photo h2 { font-size: 30px; }
  .contact-methods { padding-inline: 20px; }
  .contact-form-card { padding: 25px 20px; }
  .contact-form-card h2 { font-size: 32px; }
  .cart-intro { padding-top: 35px; }
  .cart-intro h1 { font-size: 38px; }
  .redesigned-cart { grid-template-columns: 1fr; gap: 25px; }
  .cart-list-heading { flex-wrap: wrap; }
  .cart-list-heading h2 { font-size: 24px; }
  .redesigned-cart .cart-item { grid-template-columns: 95px minmax(0,1fr); gap: 16px; padding: 14px; }
  .redesigned-cart .cart-item img { width: 95px; height: 135px; }
  .redesigned-cart .cart-item h3 { font-size: 13px; }
  .redesigned-cart .cart-item>strong { grid-column: 2; margin-top: -6px; }
  .cart-summary { padding: 28px; }
  .cart-empty { padding: 35px 22px; }
  .cart-empty h2 { font-size: 33px; }
  .policy-hero { padding-top: 35px; margin-bottom: 25px; }
  .policy-hero h1 { font-size: 40px; overflow-wrap: anywhere; }
  .policy-hero>p { font-size: 14px; }
  .policy-layout { grid-template-columns: 1fr; gap: 30px; }
  .policy-contents { position: static; }
  .policy-contents a { font-size: 12px; padding-block: 10px; }
  .policy-body section h2 { font-size: 26px; }
}

/* Compact card rhythm and single-border form focus. */
.product-card-body { flex: 0 0 auto; }
.field input:focus, .field input:focus-visible,
.field textarea:focus, .field textarea:focus-visible {
 outline: none; outline-offset: 0; box-shadow: none; border-color: #74736f;
}
.field input[aria-invalid="true"], .field textarea[aria-invalid="true"] { border-color: #a43d2a; }

/* Simple, persistent message feedback. */
.contact-feedback[hidden] { display: none; }
#contact-feedback { display: block; padding: 21px; margin-top: 20px; border-radius: 10px; outline: none; }
.feedback-ready { background: #f2f8f4; border: 1px solid #d5e5db; color: #365f59; }
.feedback-error { background: #fbf0eb; border: 1px solid #e9cfc3; color: #944a33; }
.feedback-title { display: block; font: 600 13px/1.5 Inter,Arial,sans-serif; margin-bottom: 10px; }
.contact-feedback p { font-size: 13px; line-height: 1.75; color: inherit; }
.contact-feedback a { display: inline-block; color: #008c72; font-size: 13px; font-weight: 600; padding: 3px 0; }
.contact-feedback a:hover { text-decoration: underline; }

/* Compact mobile layout: vertical navigation and a single product column. */
@media(max-width:800px){
 .header-inner{height:60px}
 .brand img{width:50px;height:50px}
 .header-tools{gap:8px}
 .menu-toggle{display:grid;place-items:center;min-width:34px;min-height:34px;padding:4px;border:0;border-radius:0;font-size:20px}
 .menu-toggle:focus-visible{outline:1px solid #aaa;outline-offset:2px;background:transparent}
 .navigation{display:none;position:absolute;top:100%;left:0;right:0;transform:none;flex-direction:column;flex-wrap:nowrap;gap:2px;align-items:flex-start;padding:9px 6% 12px;background:var(--bg);border-bottom:1px solid var(--line);box-shadow:0 8px 14px #00000008;max-height:calc(100dvh - 60px);overflow-y:auto}
 .navigation.open{display:flex}
 .navigation a{display:inline-block;position:relative;width:fit-content;min-height:32px;font-size:12px;padding:6px 0;line-height:1.5;border:0;background:transparent}
 .navigation a:last-child{border-bottom:0}
 .navigation a:after{display:block;position:absolute;left:0;bottom:2px;width:100%;height:1px;content:"";background:var(--brown);transform:scaleX(0);transform-origin:left;transition:transform .25s}
 .navigation a[aria-current]{background:transparent;color:var(--brown);border-radius:0}
 .navigation a:hover:after,.navigation a:focus-visible:after,.navigation a[aria-current]:after{transform:scaleX(1)}
 .cart-link{padding:7px 15px 7px 7px}
 .cart-link svg{width:20px;height:20px}
 .cart-count{min-width:16px;height:16px;font-size:8px;padding:0 3px}
 .products{grid-template-columns:repeat(2,minmax(0,1fr));gap:15px;justify-items:stretch}
 .product-card{width:100%;max-width:none}
 .product-card-body{padding:12px}
 .product-card h3{font-size:13px;line-height:1.4;margin:6px 0}
 .product-card p{font-size:11px;line-height:1.45;margin-bottom:7px;min-height:0}
 .product-card-bottom{gap:8px;padding-top:8px;align-items:center;flex-wrap:nowrap}
 .product-card .btn{width:auto;min-height:34px;font-size:11px;padding:7px 12px}
 .product-card .price{font-size:13px}
 .product-category{font-size:9px;line-height:1.4}
 .product-image{aspect-ratio:1.2}
 .view-details{min-height:28px;font-size:10px;padding:5px 10px;bottom:10px}
}
@media(max-width:700px){
 body{font-size:12px;line-height:1.5}
 .wrap{padding-inline:4%}
 h1,h2,h3{line-height:1.16;letter-spacing:-.6px}
 .page-heading{padding:20px 0 18px}
 .page-heading h1,.cart-intro h1,.policy-hero h1{font-size:26px}
 .page-heading p,.cart-intro>p{font-size:12px;line-height:1.5;margin-top:9px}
 .eyebrow{font-size:9px;letter-spacing:2px;margin-bottom:9px;line-height:1.5}
 .btn{min-height:34px;padding:7px 12px;font-size:11px;line-height:1.4;gap:12px}
 .hero-copy{padding:23px 5%}
 .hero h1{font-size:32px;line-height:1.13;letter-spacing:-1px}
 .hero-copy p{font-size:12px;line-height:1.5;margin:12px 0 15px}
 .hero-note{margin-top:15px;font-size:8px;letter-spacing:1px}
 .hero-image{height:230px}
 .values{padding:12px 5%;gap:12px;line-height:1.5}
 .section{padding-block:24px}
 .section-head{gap:12px;margin-bottom:12px}
 .section-head h2{font-size:26px}
 .section-head p{font-size:12px;line-height:1.6;margin-top:10px}
 .section-head .text-link{margin-top:4px}
 .categories{gap:18px}
 .category h3{font-size:22px;margin:12px 0 7px}
 .category p,.craft-copy p,.decor-banner p{font-size:12px;line-height:1.5}
 .craft{gap:17px}
 .craft h2,.decor-banner h2{font-size:26px}
 .craft-copy p{margin:12px 0 15px}
 .craft-list{padding-top:16px;font-size:10px;gap:20px}
 .decor-banner>div{padding:21px 6%}
 .decor-banner p{margin:14px 0 20px}
 .decor-banner img{height:190px}
 .filters{gap:7px;margin-bottom:24px}
 .filter{min-height:32px;font-size:10px;padding:7px 10px;line-height:1.4}
 .shop-grid{padding-bottom:24px}
 .breadcrumb{margin:15px 0;font-size:9px}
 .detail{gap:16px;padding-top:0;padding-bottom:24px}
 .detail h1{font-size:22px;margin-bottom:9px}
 .detail-price{font-size:21px;margin-bottom:12px}
 .detail p{font-size:11px;line-height:1.5;margin-bottom:10px}
 .variant-title,.material{font-size:11px}
 .variant-title{margin-bottom:8px}
 .swatches{gap:8px;margin-bottom:8px}
 .swatch{width:28px;height:28px;border-width:2px}
 .swatch[aria-pressed=true]{outline-width:1px}
 .variant-note{font-size:11px!important;line-height:1.45!important;margin-bottom:12px!important}
 .material{padding:10px 0;margin:12px 0}
 .size-option{font-size:10px;line-height:1.4;min-height:32px;padding:8px;margin-bottom:6px}
 .detail-actions{gap:8px}
 .detail-actions .btn{padding-inline:12px}
 .about-story{margin:23px 0;gap:18px}
 .about-story-copy h2{font-size:26px}
 .about-story-copy p{font-size:12px;line-height:1.5;margin-top:16px}
 .about-story-copy .btn{margin-top:15px}
 .about-values{padding:20px 16px;gap:18px}
 .about-values-heading h2{font-size:26px}
 .about-values p{font-size:12px;line-height:1.5}
 .about-value-list h3{font-size:22px}
 .about-value-list article{padding:16px 0;gap:12px}
 .about-closing{padding:19px 0 8px}
 .about-closing h2{font-size:26px;margin-bottom:18px}
 .redesigned-contact{gap:18px;padding-bottom:30px}
 .contact-photo{height:175px}
 .contact-photo h2{font-size:22px}
 .contact-photo>div{left:20px;bottom:20px}
 .contact-methods{padding-inline:18px}
 .contact-method{padding:14px 0;gap:11px}
 .contact-method h3{font-size:12px;margin-bottom:6px}
 .contact-method p,.contact-method a{font-size:12px;line-height:1.5}
 .contact-order-note{font-size:11px;margin-top:19px;line-height:1.5}
 .form-card,.contact-form-card{padding:18px 15px}
 .form-card h2,.contact-form-card h2{font-size:26px;margin-bottom:9px}
 .form-intro{font-size:12px;margin-bottom:12px}
 .fields{gap:7px}
 .field label{font-size:12px;margin-bottom:6px}
 .field input,.field textarea{font-size:16px;line-height:1.4;padding:8px 10px;min-height:40px}
 .contact-form-card textarea{min-height:110px}
 .error{font-size:11px;line-height:1.5;min-height:12px}
 .email-explainer{padding:12px 0;margin:3px 0 8px;gap:9px}
 .email-explainer p{font-size:11px;line-height:1.6}
 #contact-feedback{padding:14px;margin-top:14px}
 .contact-feedback p,.contact-feedback a{font-size:12px;line-height:1.55}
 .feedback-title{font-size:12px;margin-bottom:9px}
 .cart-intro{padding:20px 0 18px}
 .redesigned-cart{gap:16px;padding-bottom:24px}
 .cart-list-heading{padding-bottom:16px}
 .cart-list-heading h2{font-size:22px}
 .redesigned-cart .cart-item{gap:12px;padding:12px}
 .redesigned-cart .cart-item h3{font-size:12px;line-height:1.45}
 .cart-summary{padding:19px}
 .cart-summary .btn{min-height:34px;margin-top:16px}
 .summary-box .btn{min-height:34px}
 .cart-summary h2{font-size:22px}
 .cart-summary .total{font-size:13px;gap:10px}
 .cart-empty{padding:18px 16px;margin-bottom:24px}
 .cart-empty h2{font-size:22px}
 .cart-empty p{font-size:12px;line-height:1.5;margin:16px auto 22px}
 .checkout-layout{padding-bottom:24px;gap:18px}
 .summary-box{padding:18px}
 .summary-box h2{font-size:22px;margin-bottom:19px}
 .summary-box p,.callout{font-size:12px;line-height:1.5}
 .callout{padding:12px 13px;margin:14px 0}
 .checkout-item h3{font-size:13px;line-height:1.45}
 .checkout-item p{font-size:11px;line-height:1.55}
 .confirmation{margin-top:28px}
 .confirmation h1{font-size:26px}
 .confirmation h2{font-size:22px}
 .confirmation-details{padding:20px 16px}
 .confirmation-actions{gap:10px}
 .policy-hero{padding:20px 0 18px;margin-bottom:24px}
 .policy-hero>p{font-size:12px;line-height:1.5;margin-top:14px}
 .policy-meta{margin-top:18px;gap:8px;font-size:10px}
 .policy-layout{gap:25px;padding-bottom:24px}
 .policy-contents{padding:19px}
 .policy-contents a{font-size:11px;padding-block:9px}
 .policy-body section{padding:18px 0}
 .policy-body section h2{font-size:22px;margin-bottom:12px}
 .policy-body p{font-size:12px;line-height:1.6}
 .policy-body p+p{margin-top:9px}
 .policy-help{padding:20px;margin-top:25px}
 .policy-help h2{font-size:22px}
 .footer{margin-top:24px}
 .footer-grid{padding-block:22px;gap:20px 16px}
 .footer p,.footer a{font-size:11px;line-height:1.6}
 .footer h3{font-size:12px;margin-bottom:9px}
 .footer a{padding-block:4px;margin-block:5px}
 .footer-bottom{padding-block:14px;font-size:9px;line-height:1.6}
}
@media(max-width:350px){.hero h1{font-size:33px}.page-heading h1,.cart-intro h1,.policy-hero h1{font-size:22px}.detail-actions{flex-direction:column}.detail-actions .btn{width:100%}}

/* Responsive collection: three, two, then one card as space decreases. */
@media(max-width:1000px){
 .products{grid-template-columns:repeat(3,minmax(0,1fr))}
 .view-details{width:max-content;min-width:110px;max-width:calc(100% - 20px);min-height:28px;padding:5px 10px;font-size:10px;gap:18px;line-height:1.5}
}
@media(max-width:800px){.products{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:480px){.products{grid-template-columns:minmax(0,1fr)}}

