/* Fotoherbst Commerce 3.52.0 — Checkout Design 2.0
   Public storefront overrides only. No external fonts, scripts or CDN assets. */
:root{--fh-surface:#fff;--fh-soft:#f6f6f3;--fh-line:rgba(24,24,22,.12);--fh-line-strong:rgba(24,24,22,.2);--fh-text:#1b1b19;--fh-muted:#666660;--fh-radius:18px;--fh-radius-lg:28px;--fh-shadow:0 16px 45px rgba(20,20,18,.07);--fh-shadow-soft:0 6px 24px rgba(20,20,18,.045)}
body{background:var(--fh-soft);color:var(--fh-text)}
body>.shell{max-width:1440px;margin:0 auto;padding-left:clamp(18px,3vw,48px);padding-right:clamp(18px,3vw,48px)}
body>.shell>header.top{position:relative;padding:22px 0 18px;margin-bottom:clamp(22px,4vw,52px);border-bottom:1px solid var(--fh-line);gap:24px}
body>.shell>header .brand{font-size:clamp(1.15rem,2vw,1.45rem);line-height:1.05;letter-spacing:-.025em}
.storefront-account-nav{align-items:center;justify-content:flex-end;gap:8px;flex-wrap:wrap}
.storefront-account-nav form{margin:0}.storefront-account-nav a,.storefront-account-nav button{display:inline-flex;align-items:center;justify-content:center;min-height:42px;margin:0;border-radius:999px;padding:.68rem 1rem;white-space:nowrap}
.storefront-hero{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:32px;padding:clamp(30px,5vw,66px);margin-bottom:clamp(28px,4vw,48px);background:var(--fh-surface);border:1px solid var(--fh-line);border-radius:clamp(22px,3vw,34px);box-shadow:var(--fh-shadow)}
.storefront-hero-copy{max-width:860px}.storefront-eyebrow{display:block;margin-bottom:12px;font-size:.78rem;font-weight:750;letter-spacing:.12em;text-transform:uppercase;color:var(--fh-muted)}
.storefront-hero h1{max-width:900px;margin:0 0 16px;font-size:clamp(2.2rem,5.5vw,5.4rem);line-height:.96;letter-spacing:-.055em;text-wrap:balance}
.storefront-hero p{max-width:760px;margin:0;font-size:clamp(1.05rem,1.7vw,1.3rem);line-height:1.55;color:var(--fh-muted)}
.storefront-hero .muted{margin-top:14px;font-size:.92rem}.storefront-cart-cta{display:inline-flex;align-items:center;justify-content:center;min-height:48px;white-space:nowrap;border-radius:999px;padding:.85rem 1.15rem}
.storefront-cart-count{display:inline-grid;place-items:center;min-width:25px;height:25px;margin-left:7px;padding:0 7px;border-radius:999px;background:rgba(255,255,255,.18);font-size:.82rem}
.catalog-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(18px,2.2vw,30px);align-items:stretch;margin-bottom:clamp(40px,6vw,80px)}
.catalog-card{display:flex;min-width:0;flex-direction:column;overflow:hidden;background:var(--fh-surface);border:1px solid var(--fh-line);border-radius:var(--fh-radius);box-shadow:var(--fh-shadow-soft);transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease}
.catalog-card:hover{transform:translateY(-3px);box-shadow:var(--fh-shadow);border-color:var(--fh-line-strong)}
.catalog-card>a{display:block;overflow:hidden;background:#ecece8;aspect-ratio:4/3}.catalog-image,.catalog-card .image-placeholder{display:block;width:100%;height:100%;object-fit:cover}.catalog-image{transition:transform .28s ease}.catalog-card:hover .catalog-image{transform:scale(1.018)}.catalog-card .image-placeholder{display:grid;place-items:center;color:var(--fh-muted)}
.catalog-body{display:flex;flex:1;flex-direction:column;padding:clamp(18px,2vw,26px)}.catalog-body .pill{align-self:flex-start;margin-bottom:12px}.catalog-body h2{margin:0 0 9px;font-size:clamp(1.15rem,1.6vw,1.45rem);line-height:1.18;letter-spacing:-.025em}.catalog-body h2 a{color:inherit;text-decoration:none}.catalog-body p{margin:0 0 22px;color:var(--fh-muted);line-height:1.55}.catalog-price{display:flex;align-items:baseline;justify-content:space-between;gap:12px;margin-top:auto;padding-top:15px;border-top:1px solid var(--fh-line)}.catalog-price strong{font-size:1.2rem;letter-spacing:-.02em}.catalog-link{font-size:.9rem;font-weight:700;color:var(--fh-muted);white-space:nowrap}.storefront-empty{grid-column:1/-1;padding:40px;text-align:center}
.product-detail{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(340px,.75fr);gap:clamp(24px,4vw,56px);align-items:start;margin-bottom:clamp(40px,6vw,80px)}
.detail-gallery{display:grid;gap:16px;overflow:hidden;border-radius:var(--fh-radius)}.detail-image,.detail-gallery>.image-placeholder{width:100%;border-radius:var(--fh-radius);background:#ecece8}.detail-image{display:block;height:auto}.detail-gallery>.image-placeholder{display:grid;min-height:420px;place-items:center;color:var(--fh-muted)}
.product-detail>.card{position:sticky;top:24px;padding:clamp(24px,3vw,38px);border-radius:var(--fh-radius);box-shadow:var(--fh-shadow)}.product-detail h1{margin:.6rem 0 .7rem;font-size:clamp(2rem,3.5vw,3.4rem);line-height:1;letter-spacing:-.045em}.product-detail .lead{font-size:1.08rem;line-height:1.55;color:var(--fh-muted)}.big-price{margin:24px 0 6px;font-size:clamp(1.6rem,2.4vw,2.15rem);font-weight:800;letter-spacing:-.035em}.description{margin:28px 0;line-height:1.7}.buy-box{display:grid;grid-template-columns:110px 1fr;gap:12px;align-items:end;padding-top:22px;border-top:1px solid var(--fh-line)}.buy-box button{min-height:50px;border-radius:12px}
.shop-top{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-bottom:24px}.shop-top a{text-decoration:none}.shop-top strong{font-size:.92rem;color:var(--fh-muted)}
.storefront-cart-card{padding:clamp(22px,3vw,36px);border-radius:var(--fh-radius-lg);box-shadow:var(--fh-shadow-soft)}.storefront-cart-card>h1{margin-top:0;font-size:clamp(2rem,3.2vw,3rem);letter-spacing:-.04em}
.cart-row{display:grid;grid-template-columns:84px minmax(0,1fr) 110px auto;gap:18px;align-items:center;padding:18px 0;border-bottom:1px solid var(--fh-line)}.cart-thumb{width:84px;height:68px;object-fit:cover;border-radius:12px;background:#ecece8}.cart-thumb.placeholder{display:grid;place-items:center}.cart-main{display:flex;min-width:0;flex-direction:column;gap:5px}.cart-main strong{line-height:1.25}.qty input{margin-top:5px}.cart-summary{display:flex;justify-content:space-between;gap:24px;padding:9px 0}.cart-summary:first-of-type{margin-top:22px}.cart-summary:last-of-type{margin-top:8px;padding-top:16px;border-top:1px solid var(--fh-line);font-size:1.18rem}.storefront-cart-actions{display:flex;justify-content:flex-end;align-items:center;gap:10px;flex-wrap:wrap;margin-top:22px}.storefront-cart-actions .btn,.storefront-cart-actions button{min-height:46px;border-radius:12px}
body>.shell>footer.card{margin-top:clamp(36px,6vw,76px);margin-bottom:30px;padding:26px clamp(20px,3vw,36px);border-radius:var(--fh-radius);background:var(--fh-surface);border:1px solid var(--fh-line)}body>.shell>footer .nav{gap:16px;flex-wrap:wrap}
@media(max-width:980px){.catalog-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.product-detail{grid-template-columns:1fr}.product-detail>.card{position:static}.storefront-hero{grid-template-columns:1fr;align-items:start}.storefront-cart-cta{justify-self:start}}
@media(max-width:680px){body>.shell{padding-left:14px;padding-right:14px}body>.shell>header.top{align-items:flex-start}.storefront-account-nav{width:100%;justify-content:flex-start}.storefront-account-nav a,.storefront-account-nav button{min-height:40px;padding:.6rem .82rem}.storefront-hero{padding:27px 22px}.storefront-hero h1{font-size:clamp(2.1rem,12vw,3.6rem)}.catalog-grid{grid-template-columns:1fr}.catalog-card>a{aspect-ratio:16/10}.catalog-price{align-items:center}.cart-row{grid-template-columns:64px minmax(0,1fr) auto;gap:12px}.cart-thumb{width:64px;height:58px}.cart-row>.qty{grid-column:2}.cart-row>strong:last-child{grid-column:3;grid-row:1/3}.buy-box{grid-template-columns:1fr}.shop-top{align-items:flex-start;flex-direction:column}.storefront-cart-actions{align-items:stretch;flex-direction:column}.storefront-cart-actions .btn,.storefront-cart-actions button{width:100%;justify-content:center}}
@media(prefers-reduced-motion:reduce){.catalog-card,.catalog-image{transition:none}.catalog-card:hover{transform:none}.catalog-card:hover .catalog-image{transform:none}}


/* 3.52.0 — Checkout Design 2.0
   Presentation-only refinements. Checkout, payment and order processing stay server-controlled. */
.checkout-card{max-width:1120px;margin:0 auto;padding:clamp(24px,4vw,48px);border-radius:var(--fh-radius-lg);box-shadow:var(--fh-shadow)}
.checkout-card>h1{margin:0 0 24px;font-size:clamp(2rem,3.4vw,3.35rem);line-height:1;letter-spacing:-.045em}
.checkout-card form>.grid{gap:18px 20px}.checkout-card label{font-weight:700;color:var(--fh-text)}
.checkout-card input:not(.check),.checkout-card textarea,.checkout-card select{width:100%;margin-top:7px;min-height:48px;padding:.78rem .9rem;border:1px solid var(--fh-line-strong);border-radius:12px;background:var(--fh-surface);font:inherit;color:var(--fh-text);box-sizing:border-box}
.checkout-card textarea{min-height:112px;resize:vertical}.checkout-card input:focus,.checkout-card textarea:focus,.checkout-card select:focus{outline:3px solid rgba(24,24,22,.12);outline-offset:1px;border-color:rgba(24,24,22,.42)}
.customer-status,.customer-choice{max-width:1120px;margin:0 auto 18px;padding:18px 20px;border:1px solid var(--fh-line);border-radius:16px;background:var(--fh-surface);box-shadow:var(--fh-shadow-soft)}
.customer-status{display:flex;align-items:center;gap:14px}.customer-status>div,.customer-choice>div:first-child{display:flex;min-width:0;flex:1;flex-direction:column;gap:3px}.customer-status-mark{display:grid;place-items:center;flex:0 0 34px;width:34px;height:34px;border-radius:999px;background:var(--fh-soft);font-weight:800}.customer-choice{display:flex;align-items:center;justify-content:space-between;gap:18px}.customer-choice-actions{display:flex;gap:8px;flex-wrap:wrap}
.checkout-card .wide>h2{margin:18px 0 4px;padding-top:22px;border-top:1px solid var(--fh-line);font-size:1.25rem;letter-spacing:-.02em}
.checkout-card .order-total{display:flex;align-items:baseline;justify-content:space-between;gap:24px;padding:10px 0}.checkout-card .order-total:first-of-type{margin-top:28px;padding-top:22px;border-top:1px solid var(--fh-line)}.checkout-card .order-total:last-of-type{margin-top:5px;padding-top:16px;border-top:1px solid var(--fh-line-strong);font-size:1.24rem}.checkout-card .order-total:last-of-type strong{font-size:1.35rem;letter-spacing:-.025em}
.payment-choice{margin:28px 0 22px;padding:22px;border:1px solid var(--fh-line);border-radius:16px;background:var(--fh-soft)}.payment-choice>strong{display:block;margin-bottom:12px;font-size:1.15rem}.payment-choice>label{display:flex;align-items:center;gap:10px;margin:8px 0;padding:13px 14px;border:1px solid var(--fh-line);border-radius:12px;background:var(--fh-surface);cursor:pointer}.payment-choice input.check{width:18px;height:18px;flex:0 0 18px;margin:0}.payment-choice .muted{margin:13px 0 0;font-size:.9rem}
.checkout-card .legal-confirm{margin:22px 0;padding:22px;border-radius:16px;box-shadow:none;background:var(--fh-surface);border:1px solid var(--fh-line)}.legal-confirm h2{margin:0 0 5px}.legal-row{display:flex;align-items:flex-start;gap:12px;padding:14px 0;border-top:1px solid var(--fh-line)}.legal-row:first-of-type{margin-top:14px}.legal-row input.check{width:19px;height:19px;flex:0 0 19px;margin-top:2px}.checkout-card form>button:last-child{width:100%;min-height:54px;margin-top:4px;border-radius:14px;font-size:1.04rem;font-weight:800}
.success-card{max-width:820px;margin:0 auto;padding:clamp(30px,5vw,58px);text-align:center;border-radius:var(--fh-radius-lg);box-shadow:var(--fh-shadow)}.success-card .success-mark{display:grid;place-items:center;width:58px;height:58px;margin:0 auto 18px;border-radius:999px;background:var(--fh-soft);font-size:1.6rem;font-weight:800}.success-card h1{margin:0 0 14px;font-size:clamp(2rem,4vw,3.4rem);letter-spacing:-.045em}.success-card .bank-box{text-align:left;margin:26px 0;padding:22px;border:1px solid var(--fh-line);border-radius:16px;background:var(--fh-soft)}
@media(max-width:680px){.checkout-card{padding:22px 18px}.checkout-card form>.grid{grid-template-columns:1fr}.checkout-card form>.grid>.wide{grid-column:auto}.customer-status,.customer-choice{align-items:flex-start;flex-direction:column}.customer-status .btn,.customer-choice-actions,.customer-choice-actions .btn{width:100%}.customer-choice-actions{display:grid;grid-template-columns:1fr 1fr}.payment-choice{padding:16px}.checkout-card .legal-confirm{padding:17px}.checkout-card .order-total{gap:12px}}
/* Storefront Builder 3.56.0 */
.storefront-brand{display:flex;width:100%}.storefront-brand.align-left{justify-content:flex-start}.storefront-brand.align-center{justify-content:center}.storefront-brand.align-right{justify-content:flex-end}.storefront-logo{height:auto;max-width:100%;object-fit:contain}.storefront-brand.size-small .storefront-logo{max-height:48px;max-width:140px}.storefront-brand.size-medium .storefront-logo{max-height:80px;max-width:240px}.storefront-brand.size-large .storefront-logo{max-height:120px;max-width:360px}.storefront-hero-image{max-width:min(520px,100%);max-height:360px;object-fit:cover;border-radius:16px}.storefront-hero.hero-align-center{text-align:center}.storefront-hero.hero-align-right{text-align:right}.storefront-content-block.align-center{text-align:center}.storefront-content-block.align-right{text-align:right}.storefront-content-block.spacing-small{padding:14px}.storefront-content-block.spacing-medium{padding:24px}.storefront-content-block.spacing-large{padding:40px}.storefront-content-spacer.spacing-small{height:20px}.storefront-content-spacer.spacing-medium{height:40px}.storefront-content-spacer.spacing-large{height:72px}.storefront-block-image.width-small{max-width:30%}.storefront-block-image.width-medium{max-width:50%}.storefront-block-image.width-large{max-width:75%}.storefront-block-image.width-full{max-width:100%}.storefront-content-split.image-left{grid-template-columns:minmax(0,1fr) minmax(220px,.8fr)}.storefront-content-split.image-left .storefront-block-image{order:-1}@media(max-width:700px){.storefront-content-split.image-left .storefront-block-image{order:0}.storefront-block-image.width-small,.storefront-block-image.width-medium,.storefront-block-image.width-large{max-width:100%}}
.storefront-logo-wrap{display:flex;width:100%}.storefront-logo-wrap.align-left{justify-content:flex-start}.storefront-logo-wrap.align-center{justify-content:center}.storefront-logo-wrap.align-right{justify-content:flex-end}.storefront-logo{display:block;max-width:100%;height:auto;object-fit:contain}.storefront-brand-block:has(.storefront-logo-wrap){min-width:min(100%,420px)}

/* 3.56.1: CSP-safe logo scaling; no inline style attributes required. */
.logo-w-80{width:80px!important;max-width:100%!important;height:auto!important}.logo-w-90{width:90px!important;max-width:100%!important;height:auto!important}.logo-w-100{width:100px!important;max-width:100%!important;height:auto!important}.logo-w-110{width:110px!important;max-width:100%!important;height:auto!important}.logo-w-120{width:120px!important;max-width:100%!important;height:auto!important}.logo-w-130{width:130px!important;max-width:100%!important;height:auto!important}.logo-w-140{width:140px!important;max-width:100%!important;height:auto!important}.logo-w-150{width:150px!important;max-width:100%!important;height:auto!important}.logo-w-160{width:160px!important;max-width:100%!important;height:auto!important}.logo-w-170{width:170px!important;max-width:100%!important;height:auto!important}.logo-w-180{width:180px!important;max-width:100%!important;height:auto!important}.logo-w-190{width:190px!important;max-width:100%!important;height:auto!important}.logo-w-200{width:200px!important;max-width:100%!important;height:auto!important}.logo-w-210{width:210px!important;max-width:100%!important;height:auto!important}.logo-w-220{width:220px!important;max-width:100%!important;height:auto!important}.logo-w-230{width:230px!important;max-width:100%!important;height:auto!important}.logo-w-240{width:240px!important;max-width:100%!important;height:auto!important}.logo-w-250{width:250px!important;max-width:100%!important;height:auto!important}.logo-w-260{width:260px!important;max-width:100%!important;height:auto!important}.logo-w-270{width:270px!important;max-width:100%!important;height:auto!important}.logo-w-280{width:280px!important;max-width:100%!important;height:auto!important}.logo-w-290{width:290px!important;max-width:100%!important;height:auto!important}.logo-w-300{width:300px!important;max-width:100%!important;height:auto!important}.logo-w-310{width:310px!important;max-width:100%!important;height:auto!important}.logo-w-320{width:320px!important;max-width:100%!important;height:auto!important}.logo-w-330{width:330px!important;max-width:100%!important;height:auto!important}.logo-w-340{width:340px!important;max-width:100%!important;height:auto!important}.logo-w-350{width:350px!important;max-width:100%!important;height:auto!important}.logo-w-360{width:360px!important;max-width:100%!important;height:auto!important}.logo-w-370{width:370px!important;max-width:100%!important;height:auto!important}.logo-w-380{width:380px!important;max-width:100%!important;height:auto!important}.logo-w-390{width:390px!important;max-width:100%!important;height:auto!important}.logo-w-400{width:400px!important;max-width:100%!important;height:auto!important}.logo-w-410{width:410px!important;max-width:100%!important;height:auto!important}.logo-w-420{width:420px!important;max-width:100%!important;height:auto!important}

.storefront-hero-media{overflow:hidden;border-radius:18px;margin-bottom:18px}.storefront-hero-media img{display:block;width:100%;height:100%;object-fit:cover}

.storefront-hero-media img{width:100%;height:100%;object-fit:cover}.storefront-hero-media.hero-pos-top img{object-position:center top}.storefront-hero-media.hero-pos-center img{object-position:center center}.storefront-hero-media.hero-pos-bottom img{object-position:center bottom}
.storefront-hero-media.hero-height-180{height:180px}
.storefront-hero-media.hero-height-190{height:190px}
.storefront-hero-media.hero-height-200{height:200px}
.storefront-hero-media.hero-height-210{height:210px}
.storefront-hero-media.hero-height-220{height:220px}
.storefront-hero-media.hero-height-230{height:230px}
.storefront-hero-media.hero-height-240{height:240px}
.storefront-hero-media.hero-height-250{height:250px}
.storefront-hero-media.hero-height-260{height:260px}
.storefront-hero-media.hero-height-270{height:270px}
.storefront-hero-media.hero-height-280{height:280px}
.storefront-hero-media.hero-height-290{height:290px}
.storefront-hero-media.hero-height-300{height:300px}
.storefront-hero-media.hero-height-310{height:310px}
.storefront-hero-media.hero-height-320{height:320px}
.storefront-hero-media.hero-height-330{height:330px}
.storefront-hero-media.hero-height-340{height:340px}
.storefront-hero-media.hero-height-350{height:350px}
.storefront-hero-media.hero-height-360{height:360px}
.storefront-hero-media.hero-height-370{height:370px}
.storefront-hero-media.hero-height-380{height:380px}
.storefront-hero-media.hero-height-390{height:390px}
.storefront-hero-media.hero-height-400{height:400px}
.storefront-hero-media.hero-height-410{height:410px}
.storefront-hero-media.hero-height-420{height:420px}
.storefront-hero-media.hero-height-430{height:430px}
.storefront-hero-media.hero-height-440{height:440px}
.storefront-hero-media.hero-height-450{height:450px}
.storefront-hero-media.hero-height-460{height:460px}
.storefront-hero-media.hero-height-470{height:470px}
.storefront-hero-media.hero-height-480{height:480px}
.storefront-hero-media.hero-height-490{height:490px}
.storefront-hero-media.hero-height-500{height:500px}
.storefront-hero-media.hero-height-510{height:510px}
.storefront-hero-media.hero-height-520{height:520px}

/* 3.57.10: Hero image spans the full available width inside the storefront container. */
.storefront-hero{overflow:hidden}
.storefront-hero-media{display:block;width:100%;max-width:none;margin-left:0;margin-right:0}
.storefront-hero-media img{display:block;width:100%;height:100%;object-fit:cover}

/* 3.58.0 — Flat Storefront Design
   Visual-only override layer: restrained typography, whitespace, flat surfaces,
   minimal radii, no decorative shadows/gradients/3D effects. */
:root{
  --fh-flat-radius:4px;
  --fh-flat-border:#e3e7ec;
  --fh-flat-text:#17233a;
  --fh-flat-muted:#667085;
}
body{
  background:#fff;
  color:var(--fh-flat-text);
  font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Helvetica,Arial,sans-serif;
  font-weight:400;
  letter-spacing:0;
}
.storefront-shell,.storefront-main,.storefront-section,.storefront-hero,
.storefront-card,.product-card,.storefront-content-block{
  box-shadow:none !important;
  filter:none !important;
  background-image:none !important;
}
.storefront-shell,.storefront-main{
  background:#fff;
}
.storefront-hero{
  border-radius:0 !important;
  border:0 !important;
  padding:0 !important;
  background:#fff !important;
}
.storefront-hero-media{
  border-radius:0 !important;
  margin:0 0 42px !important;
}
.storefront-hero-copy{
  padding:0 0 34px;
  max-width:900px;
}
.storefront-eyebrow{
  font-size:.78rem;
  font-weight:600;
  letter-spacing:.09em;
  text-transform:uppercase;
  color:var(--fh-flat-muted);
}
.storefront-hero h1,
.storefront-section h2,
.storefront-content-block h2,
.storefront-content-block h3{
  color:var(--fh-flat-text);
  font-weight:600;
  letter-spacing:-.025em;
  line-height:1.08;
  text-shadow:none !important;
}
.storefront-hero h1{
  font-size:clamp(2.15rem,4.5vw,4.8rem);
  margin:.35rem 0 1rem;
}
.storefront-hero p,
.storefront-content-block p{
  color:#3f4858;
  line-height:1.7;
}
.btn,.button,button,input[type=submit],a.btn{
  border-radius:var(--fh-flat-radius) !important;
  box-shadow:none !important;
  text-shadow:none !important;
  background-image:none !important;
  transform:none !important;
  transition:background-color .16s ease,border-color .16s ease,color .16s ease !important;
}
.btn:hover,.button:hover,button:hover,input[type=submit]:hover,a.btn:hover{
  transform:none !important;
  box-shadow:none !important;
}
.storefront-card,.product-card,.storefront-content-block{
  border-radius:0 !important;
  border:0 !important;
}
.product-card{
  border-top:1px solid var(--fh-flat-border) !important;
  padding-top:22px !important;
}
.product-card img{
  border-radius:0 !important;
}
.storefront-section{
  padding-top:42px;
  padding-bottom:42px;
}
.storefront-section + .storefront-section{
  border-top:1px solid var(--fh-flat-border);
}
.storefront-footer{
  box-shadow:none !important;
  background-image:none !important;
  border-top:1px solid var(--fh-flat-border);
}

/* 3.58.1 — Hero full-container-width correction.
   The hero may be a multi-column grid; media must span the complete grid. */
.storefront-hero-media{
  grid-column:1 / -1 !important;
  justify-self:stretch !important;
  align-self:stretch !important;
  width:100% !important;
  max-width:none !important;
  min-width:0 !important;
  box-sizing:border-box !important;
}
.storefront-hero-media img{
  display:block !important;
  width:100% !important;
  max-width:none !important;
  height:100% !important;
  object-fit:cover !important;
}

/* 3.58.6 — Flat Header & Navigation
   Visual-only: quiet, spacious header/navigation without card/3D effects. */
.storefront-header,
.storefront-topbar,
.storefront-branding,
.storefront-nav,
.storefront-navigation{
  box-shadow:none !important;
  filter:none !important;
  background-image:none !important;
  border-radius:0 !important;
}
.storefront-header{
  background:#fff !important;
  border:0 !important;
  border-bottom:1px solid #e7e9ee !important;
  padding-top:18px !important;
  padding-bottom:18px !important;
}
.storefront-header-inner,
.storefront-topbar,
.storefront-branding{
  align-items:center !important;
}
.storefront-nav,
.storefront-navigation{
  background:transparent !important;
  border:0 !important;
  padding:0 !important;
}
.storefront-nav a,
.storefront-navigation a,
.storefront-header nav a{
  background:transparent !important;
  background-image:none !important;
  border:0 !important;
  border-radius:0 !important;
  box-shadow:none !important;
  color:#17233a !important;
  font-weight:500 !important;
  text-decoration:none !important;
  text-shadow:none !important;
  padding:8px 10px !important;
  transform:none !important;
}
.storefront-nav a:hover,
.storefront-navigation a:hover,
.storefront-header nav a:hover{
  color:#000 !important;
  background:transparent !important;
  box-shadow:none !important;
  text-decoration:underline !important;
  text-underline-offset:5px !important;
}
.storefront-logo{
  box-shadow:none !important;
  filter:none !important;
}
.storefront-header .btn,
.storefront-header .button,
.storefront-header button{
  box-shadow:none !important;
  background-image:none !important;
  border-radius:4px !important;
  transform:none !important;
}
@media (max-width:760px){
  .storefront-header{padding-top:12px !important;padding-bottom:12px !important}
  .storefront-nav,.storefront-navigation,.storefront-header nav{gap:4px !important}
  .storefront-nav a,.storefront-navigation a,.storefront-header nav a{padding:7px 6px !important}
}

/* 3.58.7 — Flat Product & Catalog Design
   Visual-only catalog refinement: photographic, quiet, typography-led. */
.storefront-catalog,
.storefront-products,
.product-grid{
  gap:32px 24px !important;
}
.product-card,
.storefront-product{
  background:#fff !important;
  background-image:none !important;
  border:0 !important;
  border-top:1px solid #e3e7ec !important;
  border-radius:0 !important;
  box-shadow:none !important;
  filter:none !important;
  padding:20px 0 0 !important;
  overflow:visible !important;
}
.product-card:hover,
.storefront-product:hover{
  transform:none !important;
  box-shadow:none !important;
}
.product-card img,
.storefront-product img{
  display:block;
  width:100%;
  border-radius:0 !important;
  box-shadow:none !important;
  margin-bottom:18px;
}
.product-card h2,.product-card h3,
.storefront-product h2,.storefront-product h3{
  margin:0 0 8px !important;
  color:#17233a !important;
  font-weight:600 !important;
  letter-spacing:-.02em !important;
  line-height:1.15 !important;
  text-shadow:none !important;
}
.product-card p,.storefront-product p{
  color:#566070 !important;
  line-height:1.6 !important;
}
.product-card .price,
.storefront-product .price,
.product-price{
  color:#17233a !important;
  font-size:1.05rem !important;
  font-weight:600 !important;
}
.product-card .btn,
.storefront-product .btn,
.product-card button,
.storefront-product button{
  box-shadow:none !important;
  background-image:none !important;
  border-radius:3px !important;
  transform:none !important;
}
@media (max-width:760px){
  .storefront-catalog,.storefront-products,.product-grid{gap:26px !important}
}

/* 3.58.8 — Flat Controls & Buttons
   Visual-only refinement for controls; no checkout/business logic changes. */
.storefront-main input:not([type="checkbox"]):not([type="radio"]),
.storefront-main select,
.storefront-main textarea{
  background:#fff !important;
  background-image:none !important;
  border:1px solid #cfd5df !important;
  border-radius:3px !important;
  box-shadow:none !important;
  color:#17233a !important;
  font:inherit !important;
}
.storefront-main input:focus,
.storefront-main select:focus,
.storefront-main textarea:focus{
  outline:2px solid currentColor !important;
  outline-offset:2px !important;
  box-shadow:none !important;
}
.storefront-main .btn,
.storefront-main .button,
.storefront-main button,
.storefront-main input[type="submit"]{
  min-height:42px;
  border-radius:3px !important;
  box-shadow:none !important;
  background-image:none !important;
  text-shadow:none !important;
  font-weight:600 !important;
  letter-spacing:0 !important;
  transform:none !important;
}
.storefront-main .btn:hover,
.storefront-main .button:hover,
.storefront-main button:hover,
.storefront-main input[type="submit"]:hover{
  transform:none !important;
  box-shadow:none !important;
  filter:none !important;
}
.storefront-main .btn:focus-visible,
.storefront-main .button:focus-visible,
.storefront-main button:focus-visible,
.storefront-main a:focus-visible{
  outline:2px solid currentColor !important;
  outline-offset:3px !important;
}

/* 3.58.9 — Flat Footer, Typography & Spacing
   Visual-only finishing pass for storefront rhythm and footer. */
.storefront-main{
  line-height:1.6;
}
.storefront-main h1,.storefront-main h2,.storefront-main h3{
  text-wrap:balance;
}
.storefront-main h2{
  font-size:clamp(1.55rem,2.4vw,2.35rem);
  margin-bottom:18px;
}
.storefront-main h3{
  font-size:clamp(1.15rem,1.6vw,1.45rem);
}
.storefront-main p{
  max-width:72ch;
}
.storefront-section{
  padding-top:56px !important;
  padding-bottom:56px !important;
}
.storefront-footer{
  margin-top:64px !important;
  padding:38px 0 42px !important;
  background:#fff !important;
  background-image:none !important;
  border-top:1px solid #e3e7ec !important;
  border-radius:0 !important;
  box-shadow:none !important;
  color:#566070 !important;
}
.storefront-footer a{
  color:#17233a !important;
  text-decoration:none !important;
  text-underline-offset:4px;
}
.storefront-footer a:hover{
  text-decoration:underline !important;
}
.storefront-footer p,
.storefront-footer small{
  color:#667085 !important;
  line-height:1.6;
}
@media (max-width:760px){
  .storefront-section{padding-top:38px !important;padding-bottom:38px !important}
  .storefront-footer{margin-top:44px !important;padding:30px 0 34px !important}
}

/* 3.58.10 — Exact Storefront Markup Styling
   Targets the actual markup emitted by page(): footer.card, header.top, .catalog-grid/.catalog-card. */
body>.shell>footer.card{
  margin-top:64px !important;
  margin-bottom:24px !important;
  padding:34px 0 24px !important;
  background:#fff !important;
  background-image:none !important;
  border:0 !important;
  border-top:1px solid #e3e7ec !important;
  border-radius:0 !important;
  box-shadow:none !important;
}
body>.shell>footer.card p{
  margin:0 0 16px !important;
  max-width:72ch;
  color:#667085 !important;
  line-height:1.65 !important;
}
body>.shell>footer.card .nav{
  display:flex !important;
  gap:10px 22px !important;
  align-items:center !important;
  flex-wrap:wrap !important;
}
body>.shell>footer.card .nav a{
  padding:0 !important;
  border:0 !important;
  border-radius:0 !important;
  background:transparent !important;
  box-shadow:none !important;
  color:#17233a !important;
  font-weight:500 !important;
  text-decoration:none !important;
}
body>.shell>footer.card .nav a:hover{
  text-decoration:underline !important;
  text-underline-offset:5px !important;
}
.catalog-grid{
  gap:34px 26px !important;
  margin-bottom:64px !important;
}
.catalog-card{
  border:0 !important;
  border-top:1px solid #e3e7ec !important;
  border-radius:0 !important;
  box-shadow:none !important;
  background:#fff !important;
  padding-top:18px !important;
}
.catalog-card:hover{
  transform:none !important;
  box-shadow:none !important;
  border-color:#e3e7ec !important;
}
.catalog-card>a{
  border-radius:0 !important;
}
.catalog-card:hover .catalog-image{
  transform:none !important;
}
.catalog-body{
  padding-left:0 !important;
  padding-right:0 !important;
}
body>.shell>header.top{
  box-shadow:none !important;
  background:#fff !important;
  border-radius:0 !important;
}
@media(max-width:680px){
  body>.shell>footer.card{margin-top:44px !important;padding-top:28px !important}
  .catalog-grid{gap:28px !important;margin-bottom:44px !important}
}

/* 3.58.11 — Product Area Refinement
   Targets confirmed storefront markup: .catalog-grid, .catalog-card, .catalog-image, .catalog-body. */
.catalog-grid{
  grid-template-columns:repeat(auto-fit,minmax(250px,1fr)) !important;
  gap:44px 30px !important;
  align-items:start !important;
}
.catalog-card{
  display:flex !important;
  flex-direction:column !important;
  min-width:0 !important;
  padding:0 !important;
  border:0 !important;
  background:#fff !important;
  box-shadow:none !important;
}
.catalog-card>a{
  display:block !important;
  overflow:hidden !important;
  background:#f5f6f7 !important;
  aspect-ratio:4/3 !important;
}
.catalog-image{
  display:block !important;
  width:100% !important;
  height:100% !important;
  aspect-ratio:auto !important;
  object-fit:cover !important;
  border:0 !important;
  border-radius:0 !important;
  box-shadow:none !important;
}
.catalog-body{
  display:flex !important;
  flex-direction:column !important;
  gap:8px !important;
  padding:18px 0 0 !important;
}
.catalog-body h2,
.catalog-body h3{
  margin:0 !important;
  color:#17233a !important;
  font-size:clamp(1.15rem,1.5vw,1.4rem) !important;
  font-weight:600 !important;
  line-height:1.25 !important;
  letter-spacing:-.015em !important;
}
.catalog-body p{
  margin:0 !important;
  color:#667085 !important;
  line-height:1.55 !important;
}
.catalog-body .price,
.catalog-card .price{
  margin-top:4px !important;
  color:#17233a !important;
  font-size:1.08rem !important;
  font-weight:650 !important;
}
.catalog-card .btn,
.catalog-card .button,
.catalog-card button{
  align-self:flex-start !important;
  margin-top:8px !important;
  min-height:40px !important;
  padding:9px 15px !important;
  border-radius:3px !important;
  box-shadow:none !important;
  transform:none !important;
}
.catalog-card:hover,
.catalog-card:focus-within{
  box-shadow:none !important;
  transform:none !important;
}
.catalog-card:hover .catalog-image{
  transform:none !important;
  filter:none !important;
}
@media(max-width:680px){
  .catalog-grid{
    grid-template-columns:1fr !important;
    gap:36px !important;
  }
  .catalog-card>a{aspect-ratio:16/10 !important}
}

/* 3.58.12 — Flat Empty Product State
   Removes the remaining raised/card appearance from the empty catalog notice. */
.catalog-empty,
.empty-state,
.catalog-grid > .card:only-child,
.catalog-grid + .card,
main .card.catalog-empty{
  background:#fff !important;
  background-image:none !important;
  border:0 !important;
  border-radius:0 !important;
  box-shadow:none !important;
  filter:none !important;
  transform:none !important;
}
.catalog-empty:hover,
.empty-state:hover,
.catalog-grid > .card:only-child:hover,
.catalog-grid + .card:hover{
  box-shadow:none !important;
  transform:none !important;
}

.card{box-shadow:none !important;filter:none !important;background-image:none !important;transform:none !important;}

.storefront-empty{box-shadow:none !important;filter:none !important;background-image:none !important;transform:none !important;}

/* 3.58.15 — Version in footer, bottom-left. */
body>.shell>footer.card{
  position:relative !important;
  padding-bottom:52px !important;
}
body>.shell>footer.card .footer-version{
  position:absolute !important;
  left:0 !important;
  bottom:18px !important;
  margin:0 !important;
  color:#667085 !important;
  font-size:.82rem !important;
  font-weight:400 !important;
  line-height:1 !important;
}

/* 3.58.16 — Footer version on the same baseline as legal menu. */
body>.shell>footer.card{
  display:flex !important;
  flex-wrap:wrap !important;
  align-items:baseline !important;
  gap:14px 28px !important;
  padding-bottom:24px !important;
}
body>.shell>footer.card>p{
  flex:0 0 100% !important;
}
body>.shell>footer.card .footer-version{
  position:static !important;
  left:auto !important;
  bottom:auto !important;
  flex:0 0 auto !important;
  margin:0 !important;
  line-height:1.4 !important;
}
body>.shell>footer.card .nav{
  flex:1 1 auto !important;
  margin:0 !important;
  align-items:baseline !important;
}
@media(max-width:680px){
  body>.shell>footer.card{
    gap:10px 18px !important;
  }
}

/* 3.58.17 — Footer: version left, legal menu right. */
body>.shell>footer.card .footer-version{
  margin-right:auto !important;
}
body>.shell>footer.card .nav{
  flex:0 1 auto !important;
  margin-left:auto !important;
  justify-content:flex-end !important;
  text-align:right !important;
}
@media(max-width:680px){
  body>.shell>footer.card .nav{
    margin-left:0 !important;
    justify-content:flex-start !important;
    text-align:left !important;
  }
}

/* 3.58.19 — Header & Navigation Alignment
   Uses the real header markup: header.top, .brand-block and .nav. */
body>.shell>header.top{
  display:flex !important;
  align-items:center !important;
  gap:24px !important;
  padding-top:18px !important;
  padding-bottom:18px !important;
  border-bottom:1px solid #e3e7ec !important;
}
body>.shell>header.top .brand-block{
  flex:0 0 auto !important;
  margin:0 !important;
}
body>.shell>header.top>.nav{
  flex:1 1 auto !important;
  justify-content:flex-end !important;
  align-items:center !important;
  gap:8px 18px !important;
  margin:0 !important;
}
body>.shell>header.top>.nav a{
  padding:6px 0 !important;
  background:transparent !important;
  border:0 !important;
  border-radius:0 !important;
  box-shadow:none !important;
  font-weight:500 !important;
  text-decoration:none !important;
}
body>.shell>header.top>.nav a:hover{
  text-decoration:underline !important;
  text-underline-offset:5px !important;
}
body>.shell>header.top>.nav form{
  margin:0 !important;
}
@media(max-width:760px){
  body>.shell>header.top{
    align-items:flex-start !important;
    flex-wrap:wrap !important;
    gap:14px !important;
  }
  body>.shell>header.top>.nav{
    flex:0 0 100% !important;
    justify-content:flex-start !important;
    gap:6px 16px !important;
  }
}

/* 3.58.20 — Flat Public Shop Surfaces
   Removes the remaining generic raised-card look from public storefront content. */
body>.shell>main>.card:not(footer),
body>.shell>section.card,
body>.shell>.card:not(footer),
.storefront-main>.card{
  background:#fff !important;
  background-image:none !important;
  border:0 !important;
  border-radius:0 !important;
  box-shadow:none !important;
  filter:none !important;
  transform:none !important;
}
body>.shell>main>.card:hover,
body>.shell>section.card:hover,
.storefront-main>.card:hover{
  box-shadow:none !important;
  filter:none !important;
  transform:none !important;
}
body>.shell>main>.card + .card,
.storefront-main>.card + .card{
  margin-top:32px !important;
  padding-top:32px !important;
  border-top:1px solid #e3e7ec !important;
}

/* 3.59.9 — Storefront action consistency */
.storefront-account-nav .storefront-logout-form{display:inline-flex;margin:0}
.storefront-account-nav .storefront-logout-button{
  width:auto!important;
  min-height:0!important;
  padding:6px 0!important;
  border:0!important;
  border-radius:0!important;
  background:transparent!important;
  box-shadow:none!important;
  color:inherit!important;
  font:inherit!important;
  font-weight:500!important;
  line-height:inherit!important;
}
.storefront-account-nav .storefront-logout-button:hover{
  background:transparent!important;
  text-decoration:underline!important;
  text-underline-offset:5px!important;
}
/* Match prominent account actions to the flat Warenkorb/secondary-button design. */
.customer-import button.secondary,
.customer-order-list a.btn,
.customer-order-list button,
.customer-dashboard-hero a.btn.secondary,
.customer-dashboard-hero button.secondary{
  background:#fff!important;
  color:#1f2937!important;
  border:1px solid #d8dde3!important;
  border-radius:6px!important;
  box-shadow:none!important;
  font-weight:600!important;
}
.customer-import button.secondary:hover,
.customer-order-list a.btn:hover,
.customer-order-list button:hover,
.customer-dashboard-hero a.btn.secondary:hover,
.customer-dashboard-hero button.secondary:hover{
  background:#f6f7f8!important;
  border-color:#c7cdd5!important;
}

/* 3.59.10 — Customer actions match the flat Warenkorb navigation style */
body .customer-import button,
body .customer-import .btn,
body .customer-order-list a.btn,
body .customer-order-list button,
body .customer-dashboard-hero a.btn,
body .customer-dashboard-hero button,
body a[href="/"].btn,
body a[href="/"].secondary{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  width:auto!important;
  min-height:0!important;
  padding:6px 0!important;
  background:transparent!important;
  background-image:none!important;
  border:0!important;
  border-radius:0!important;
  box-shadow:none!important;
  color:#5b21b6!important;
  -webkit-text-fill-color:#5b21b6!important;
  font:inherit!important;
  font-weight:600!important;
  line-height:1.25!important;
  text-decoration:none!important;
}
body .customer-import button:hover,
body .customer-import .btn:hover,
body .customer-order-list a.btn:hover,
body .customer-order-list button:hover,
body .customer-dashboard-hero a.btn:hover,
body .customer-dashboard-hero button:hover,
body a[href="/"].btn:hover,
body a[href="/"].secondary:hover{
  background:transparent!important;
  color:#4c1d95!important;
  -webkit-text-fill-color:#4c1d95!important;
  text-decoration:underline!important;
  text-underline-offset:5px!important;
  box-shadow:none!important;
}


/* 3.61.0 — Storefront product catalog refinement */
.storefront-product-grid{
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(250px,1fr));
  gap:24px;
  align-items:stretch;
}
.storefront-product-card{
  display:flex;
  flex-direction:column;
  min-width:0;
  overflow:hidden;
  background:#fff;
  border:1px solid #e4e7ec;
  border-radius:0;
  box-shadow:none;
}
.storefront-product-card .storefront-product-image{
  display:block;
  width:100%;
  aspect-ratio:4/3;
  object-fit:cover;
  background:#f6f7f8;
}
.storefront-product-card .storefront-product-info{
  display:flex;
  flex:1;
  flex-direction:column;
  gap:10px;
  padding:18px;
}
.storefront-product-card h2,
.storefront-product-card h3{
  margin:0;
  color:#182230;
  font-size:1.12rem;
  line-height:1.35;
}
.storefront-product-card p{
  margin:0;
  color:#667085;
  line-height:1.55;
}
.storefront-product-card .price,
.storefront-product-card [class*="price"]{
  color:#101828;
  font-weight:700;
  font-size:1.08rem;
}
.storefront-product-card .btn,
.storefront-product-card button{
  align-self:flex-start;
  margin-top:auto;
}
.storefront-product-card img{
  max-width:100%;
}
@media(max-width:700px){
  .storefront-product-grid{grid-template-columns:1fr;gap:16px}
  .storefront-product-card .storefront-product-info{padding:16px}
}


/* 3.61.1 — Product detail refinement */
.storefront-product-detail{
  display:grid;
  grid-template-columns:minmax(0,1.2fr) minmax(300px,.8fr);
  gap:40px;
  align-items:start;
}
.storefront-detail-gallery,
[data-product-gallery]{
  min-width:0;
}
[data-product-gallery] [data-gallery-main]{
  display:block;
  width:100%;
  max-height:680px;
  object-fit:contain;
  background:#f7f8fa;
  border:1px solid #e4e7ec;
  border-radius:0;
}
[data-product-gallery] .product-gallery-thumbnails{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
  margin-top:12px;
}
[data-product-gallery] [data-gallery-image]{
  width:76px;
  height:76px;
  padding:3px!important;
  overflow:hidden;
}
[data-product-gallery] [data-gallery-image] img{
  display:block;
  width:100%;
  height:100%;
  object-fit:cover;
}
.storefront-detail-info{
  min-width:0;
}
.storefront-detail-info h1{
  margin-top:0;
  margin-bottom:12px;
  color:#182230;
  font-size:clamp(1.75rem,3vw,2.5rem);
  line-height:1.15;
}
.storefront-detail-info .price,
.storefront-detail-info [class*="price"]{
  margin:10px 0 18px;
  color:#101828;
  font-size:1.35rem;
  font-weight:700;
}
.storefront-detail-info p{
  color:#475467;
  line-height:1.65;
}
.storefront-buy-box{
  margin-top:24px;
  padding-top:20px;
  border-top:1px solid #e4e7ec;
}
.storefront-buy-box form{
  display:flex;
  flex-wrap:wrap;
  align-items:end;
  gap:12px;
}
.storefront-buy-box input[type="number"],
.storefront-buy-box select{
  min-height:42px;
}
@media(max-width:820px){
  .storefront-product-detail{grid-template-columns:1fr;gap:26px}
  [data-product-gallery] [data-gallery-main]{max-height:520px}
}


/* 3.61.2 — Cart refinement */
.storefront-cart-list,
.cart-list{
  display:grid;
  gap:14px;
  margin:20px 0;
}
.storefront-cart-item,
.cart-item{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  gap:18px;
  align-items:center;
  padding:16px 0;
  border-bottom:1px solid #e4e7ec;
}
.storefront-cart-item:last-child,
.cart-item:last-child{border-bottom:0}
.storefront-cart-item h2,
.storefront-cart-item h3,
.cart-item h2,
.cart-item h3{
  margin:0 0 6px;
  color:#182230;
}
.storefront-cart-item form,
.cart-item form{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
  align-items:end;
}
.storefront-cart-item input[type="number"],
.cart-item input[type="number"]{
  width:84px;
  min-height:42px;
}
.storefront-cart-summary,
.cart-summary{
  margin-top:24px;
  padding-top:20px;
  border-top:1px solid #d0d5dd;
}
.storefront-cart-summary > div,
.cart-summary > div{
  display:flex;
  justify-content:space-between;
  gap:20px;
  padding:7px 0;
}
.storefront-cart-total,
.cart-total{
  margin-top:8px;
  padding-top:14px!important;
  border-top:1px solid #d0d5dd;
  color:#101828;
  font-size:1.15rem;
  font-weight:700;
}
.cart-actions,
.storefront-cart-actions{
  display:flex;
  flex-wrap:wrap;
  gap:12px;
  align-items:center;
  margin-top:22px;
}
@media(max-width:700px){
  .storefront-cart-item,
  .cart-item{grid-template-columns:1fr;gap:12px}
  .storefront-cart-item form,
  .cart-item form{align-items:stretch}
}


/* 3.61.3 — Checkout refinement */
.storefront-checkout-grid,
.checkout-grid{
  display:grid;
  grid-template-columns:minmax(0,1.25fr) minmax(300px,.75fr);
  gap:32px;
  align-items:start;
}
.storefront-checkout-form,
.checkout-form{
  min-width:0;
}
.storefront-checkout-form fieldset,
.checkout-form fieldset{
  margin:0 0 24px;
  padding:0;
  border:0;
}
.storefront-checkout-form legend,
.checkout-form legend{
  margin-bottom:14px;
  color:#182230;
  font-size:1.08rem;
  font-weight:700;
}
.storefront-checkout-form label,
.checkout-form label{
  display:grid;
  gap:6px;
  margin-bottom:14px;
}
.storefront-checkout-form input,
.storefront-checkout-form select,
.storefront-checkout-form textarea,
.checkout-form input,
.checkout-form select,
.checkout-form textarea{
  width:100%;
  box-sizing:border-box;
}
.storefront-checkout-summary,
.checkout-summary{
  position:sticky;
  top:20px;
  padding:20px;
  border:1px solid #e4e7ec;
  background:#fff;
  box-shadow:none;
}
.storefront-checkout-summary h2,
.checkout-summary h2{
  margin-top:0;
}
.storefront-checkout-summary > div,
.checkout-summary > div{
  display:flex;
  justify-content:space-between;
  gap:18px;
  padding:7px 0;
}
.storefront-payment-methods,
.payment-methods{
  display:grid;
  gap:10px;
  margin:18px 0;
}
.storefront-payment-methods label,
.payment-methods label{
  display:flex;
  align-items:flex-start;
  gap:10px;
  padding:12px;
  border:1px solid #e4e7ec;
  background:#fff;
}
.storefront-payment-methods input[type="radio"],
.payment-methods input[type="radio"]{
  width:auto;
  margin-top:3px;
}
@media(max-width:820px){
  .storefront-checkout-grid,
  .checkout-grid{grid-template-columns:1fr;gap:22px}
  .storefront-checkout-summary,
  .checkout-summary{position:static}
}


/* 3.61.4 — Order completion / success pages */
.storefront-success-card,
.success-card{
  max-width:760px;
  margin:32px auto;
  padding:clamp(24px,4vw,42px);
  text-align:left;
  border:1px solid #e4e7ec;
  border-radius:0;
  box-shadow:none;
  background:#fff;
}
.storefront-success-mark,
.success-mark{
  display:flex;
  width:46px;
  height:46px;
  align-items:center;
  justify-content:center;
  margin:0 0 18px;
  border:1px solid #98a2b3;
  border-radius:50%;
  background:#fff;
  color:#344054;
  font-size:1.35rem;
  font-weight:700;
}
.storefront-success-card h1,
.success-card h1{
  margin:0 0 12px;
  color:#182230;
  font-size:clamp(1.7rem,3vw,2.25rem);
  line-height:1.2;
}
.storefront-success-card p,
.success-card p{
  color:#475467;
  line-height:1.65;
}
.storefront-success-card .btn,
.success-card .btn,
.storefront-success-card button,
.success-card button{
  margin-top:10px;
  margin-right:8px;
}
.storefront-success-card .order-total,
.success-card .order-total{
  display:flex;
  justify-content:space-between;
  gap:20px;
  padding:8px 0;
}
@media(max-width:700px){
  .storefront-success-card,
  .success-card{margin:20px 0;padding:22px}
  .storefront-success-card .btn,
  .success-card .btn{display:flex;margin-right:0}
}


/* 3.61.5 — Customer account visual consistency */
.customer-dashboard-hero,
.customer-import,
.storefront-account-import,
.customer-order-list .card,
.storefront-account-order-list .card{
  border:1px solid #e4e7ec;
  border-radius:0;
  box-shadow:none;
  background:#fff;
}
.customer-dashboard-hero{
  padding:22px;
}
.customer-dashboard-hero h1{
  margin-top:0;
  color:#182230;
}
.customer-dashboard-hero p,
.customer-import p,
.storefront-account-import p{
  color:#667085;
  line-height:1.55;
}
.customer-section-heading,
.storefront-account-section-heading{
  display:flex;
  justify-content:space-between;
  gap:18px;
  align-items:end;
  margin:28px 0 14px;
}
.customer-section-heading h2,
.storefront-account-section-heading h2{
  margin:2px 0 0;
  color:#182230;
}
.customer-order-list,
.storefront-account-order-list{
  display:grid;
  gap:14px;
}
.customer-order-list .card,
.storefront-account-order-list .card{
  padding:18px;
}
.customer-import,
.storefront-account-import{
  display:flex;
  justify-content:space-between;
  gap:20px;
  align-items:center;
  padding:18px;
}
.customer-nav-v2{
  box-shadow:none!important;
}
@media(max-width:760px){
  .customer-section-heading,
  .storefront-account-section-heading,
  .customer-import,
  .storefront-account-import{
    align-items:stretch;
    flex-direction:column;
  }
}


/* 3.61.6 — Login, registration, password and profile forms */
.storefront-account-form-card,
.checkout-card{
  max-width:820px;
  margin-left:auto;
  margin-right:auto;
  border:1px solid #e4e7ec;
  border-radius:0;
  box-shadow:none;
  background:#fff;
}
.storefront-account-form-card h1,
.checkout-card h1{
  margin-top:0;
  color:#182230;
  line-height:1.2;
}
.storefront-account-form-card form,
.checkout-card form{
  display:grid;
  gap:14px;
}
.storefront-account-form-card label,
.checkout-card label{
  display:grid;
  gap:6px;
  color:#344054;
  font-weight:600;
}
.storefront-account-form-card input:not([type="checkbox"]):not([type="radio"]),
.storefront-account-form-card select,
.storefront-account-form-card textarea,
.checkout-card input:not([type="checkbox"]):not([type="radio"]),
.checkout-card select,
.checkout-card textarea{
  width:100%;
  min-height:42px;
  box-sizing:border-box;
}
.storefront-account-form-card textarea,
.checkout-card textarea{
  min-height:110px;
  resize:vertical;
}
.storefront-account-form-card .grid,
.checkout-card .grid{
  gap:14px;
}
.storefront-account-form-card p,
.checkout-card p{
  line-height:1.6;
}
.storefront-account-form-card .actions,
.checkout-card .actions{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
  align-items:center;
}
@media(max-width:700px){
  .storefront-account-form-card,
  .checkout-card{
    padding:20px;
  }
  .storefront-account-form-card .grid,
  .checkout-card .grid{
    grid-template-columns:1fr;
  }
  .storefront-account-form-card .wide,
  .checkout-card .wide{
    grid-column:auto;
  }
}


/* 3.61.7 — Real storefront product-card refinement */
.storefront-product-grid .product-card,
.catalog-grid .product-card{
  display:flex;
  flex-direction:column;
  min-width:0;
  overflow:hidden;
  border:1px solid #e4e7ec;
  border-radius:0;
  background:#fff;
  box-shadow:none;
}
.storefront-product-grid .product-card:hover,
.catalog-grid .product-card:hover{
  border-color:#d0d5dd;
  box-shadow:none;
}
.storefront-product-grid .product-image,
.catalog-grid .product-image{
  display:block;
  width:100%;
  aspect-ratio:4/3;
  overflow:hidden;
  background:#f6f7f8;
}
.storefront-product-grid .product-image img,
.catalog-grid .product-image img{
  display:block;
  width:100%;
  height:100%;
  object-fit:cover;
}
.storefront-product-grid .product-body,
.catalog-grid .product-body{
  display:flex;
  flex:1;
  flex-direction:column;
  gap:10px;
  padding:18px;
}
.storefront-product-grid .product-body h2,
.storefront-product-grid .product-body h3,
.catalog-grid .product-body h2,
.catalog-grid .product-body h3{
  margin:0;
  color:#182230;
  font-size:1.12rem;
  line-height:1.35;
}
.storefront-product-grid .product-body p,
.catalog-grid .product-body p{
  margin:0;
  color:#667085;
  line-height:1.55;
}
.storefront-product-grid .product-body .price,
.storefront-product-grid .product-body .big-price,
.catalog-grid .product-body .price,
.catalog-grid .product-body .big-price{
  color:#101828;
  font-size:1.08rem;
  font-weight:700;
}
.storefront-product-grid .product-body .btn,
.catalog-grid .product-body .btn{
  align-self:flex-start;
  margin-top:auto;
}
@media(max-width:700px){
  .storefront-product-grid .product-body,
  .catalog-grid .product-body{padding:16px}
}

/* 3.61.8 — Configurable catalog presentation */
.storefront-product-grid.catalog-cols-1{grid-template-columns:1fr}
.storefront-product-grid.catalog-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}
.storefront-product-grid.catalog-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}
.storefront-product-grid.catalog-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}
.storefront-product-grid.catalog-gap-8{gap:8px}
.storefront-product-grid.catalog-gap-9{gap:9px}
.storefront-product-grid.catalog-gap-10{gap:10px}
.storefront-product-grid.catalog-gap-11{gap:11px}
.storefront-product-grid.catalog-gap-12{gap:12px}
.storefront-product-grid.catalog-gap-13{gap:13px}
.storefront-product-grid.catalog-gap-14{gap:14px}
.storefront-product-grid.catalog-gap-15{gap:15px}
.storefront-product-grid.catalog-gap-16{gap:16px}
.storefront-product-grid.catalog-gap-17{gap:17px}
.storefront-product-grid.catalog-gap-18{gap:18px}
.storefront-product-grid.catalog-gap-19{gap:19px}
.storefront-product-grid.catalog-gap-20{gap:20px}
.storefront-product-grid.catalog-gap-21{gap:21px}
.storefront-product-grid.catalog-gap-22{gap:22px}
.storefront-product-grid.catalog-gap-23{gap:23px}
.storefront-product-grid.catalog-gap-24{gap:24px}
.storefront-product-grid.catalog-gap-25{gap:25px}
.storefront-product-grid.catalog-gap-26{gap:26px}
.storefront-product-grid.catalog-gap-27{gap:27px}
.storefront-product-grid.catalog-gap-28{gap:28px}
.storefront-product-grid.catalog-gap-29{gap:29px}
.storefront-product-grid.catalog-gap-30{gap:30px}
.storefront-product-grid.catalog-gap-31{gap:31px}
.storefront-product-grid.catalog-gap-32{gap:32px}
.storefront-product-grid.catalog-gap-33{gap:33px}
.storefront-product-grid.catalog-gap-34{gap:34px}
.storefront-product-grid.catalog-gap-35{gap:35px}
.storefront-product-grid.catalog-gap-36{gap:36px}
.storefront-product-grid.catalog-gap-37{gap:37px}
.storefront-product-grid.catalog-gap-38{gap:38px}
.storefront-product-grid.catalog-gap-39{gap:39px}
.storefront-product-grid.catalog-gap-40{gap:40px}
.storefront-product-grid.catalog-gap-41{gap:41px}
.storefront-product-grid.catalog-gap-42{gap:42px}
.storefront-product-grid.catalog-gap-43{gap:43px}
.storefront-product-grid.catalog-gap-44{gap:44px}
.storefront-product-grid.catalog-gap-45{gap:45px}
.storefront-product-grid.catalog-gap-46{gap:46px}
.storefront-product-grid.catalog-gap-47{gap:47px}
.storefront-product-grid.catalog-gap-48{gap:48px}
.storefront-product-grid.catalog-ratio-1-1 .product-image{aspect-ratio:1/1}
.storefront-product-grid.catalog-ratio-4-3 .product-image{aspect-ratio:4/3}
.storefront-product-grid.catalog-ratio-3-2 .product-image{aspect-ratio:3/2}
.storefront-product-grid.catalog-ratio-16-9 .product-image{aspect-ratio:16/9}
@media(max-width:900px){.storefront-product-grid.catalog-cols-3,.storefront-product-grid.catalog-cols-4{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:620px){.storefront-product-grid.catalog-cols-2,.storefront-product-grid.catalog-cols-3,.storefront-product-grid.catalog-cols-4{grid-template-columns:1fr}}

/* 3.61.9 — Configurable product-card spacing and typography */
.storefront-product-grid.catalog-pad-12 .product-body{padding:12px}
.storefront-product-grid.catalog-pad-13 .product-body{padding:13px}
.storefront-product-grid.catalog-pad-14 .product-body{padding:14px}
.storefront-product-grid.catalog-pad-15 .product-body{padding:15px}
.storefront-product-grid.catalog-pad-16 .product-body{padding:16px}
.storefront-product-grid.catalog-pad-17 .product-body{padding:17px}
.storefront-product-grid.catalog-pad-18 .product-body{padding:18px}
.storefront-product-grid.catalog-pad-19 .product-body{padding:19px}
.storefront-product-grid.catalog-pad-20 .product-body{padding:20px}
.storefront-product-grid.catalog-pad-21 .product-body{padding:21px}
.storefront-product-grid.catalog-pad-22 .product-body{padding:22px}
.storefront-product-grid.catalog-pad-23 .product-body{padding:23px}
.storefront-product-grid.catalog-pad-24 .product-body{padding:24px}
.storefront-product-grid.catalog-pad-25 .product-body{padding:25px}
.storefront-product-grid.catalog-pad-26 .product-body{padding:26px}
.storefront-product-grid.catalog-pad-27 .product-body{padding:27px}
.storefront-product-grid.catalog-pad-28 .product-body{padding:28px}
.storefront-product-grid.catalog-pad-29 .product-body{padding:29px}
.storefront-product-grid.catalog-pad-30 .product-body{padding:30px}
.storefront-product-grid.catalog-pad-31 .product-body{padding:31px}
.storefront-product-grid.catalog-pad-32 .product-body{padding:32px}
.storefront-product-grid.catalog-title-14 .product-body h2,.storefront-product-grid.catalog-title-14 .product-body h3{font-size:14px}
.storefront-product-grid.catalog-title-15 .product-body h2,.storefront-product-grid.catalog-title-15 .product-body h3{font-size:15px}
.storefront-product-grid.catalog-title-16 .product-body h2,.storefront-product-grid.catalog-title-16 .product-body h3{font-size:16px}
.storefront-product-grid.catalog-title-17 .product-body h2,.storefront-product-grid.catalog-title-17 .product-body h3{font-size:17px}
.storefront-product-grid.catalog-title-18 .product-body h2,.storefront-product-grid.catalog-title-18 .product-body h3{font-size:18px}
.storefront-product-grid.catalog-title-19 .product-body h2,.storefront-product-grid.catalog-title-19 .product-body h3{font-size:19px}
.storefront-product-grid.catalog-title-20 .product-body h2,.storefront-product-grid.catalog-title-20 .product-body h3{font-size:20px}
.storefront-product-grid.catalog-title-21 .product-body h2,.storefront-product-grid.catalog-title-21 .product-body h3{font-size:21px}
.storefront-product-grid.catalog-title-22 .product-body h2,.storefront-product-grid.catalog-title-22 .product-body h3{font-size:22px}
.storefront-product-grid.catalog-title-23 .product-body h2,.storefront-product-grid.catalog-title-23 .product-body h3{font-size:23px}
.storefront-product-grid.catalog-title-24 .product-body h2,.storefront-product-grid.catalog-title-24 .product-body h3{font-size:24px}
.storefront-product-grid.catalog-title-25 .product-body h2,.storefront-product-grid.catalog-title-25 .product-body h3{font-size:25px}
.storefront-product-grid.catalog-title-26 .product-body h2,.storefront-product-grid.catalog-title-26 .product-body h3{font-size:26px}
.storefront-product-grid.catalog-title-27 .product-body h2,.storefront-product-grid.catalog-title-27 .product-body h3{font-size:27px}
.storefront-product-grid.catalog-title-28 .product-body h2,.storefront-product-grid.catalog-title-28 .product-body h3{font-size:28px}
.storefront-product-grid.catalog-price-14 .product-body .price,.storefront-product-grid.catalog-price-14 .product-body .big-price{font-size:14px}
.storefront-product-grid.catalog-price-15 .product-body .price,.storefront-product-grid.catalog-price-15 .product-body .big-price{font-size:15px}
.storefront-product-grid.catalog-price-16 .product-body .price,.storefront-product-grid.catalog-price-16 .product-body .big-price{font-size:16px}
.storefront-product-grid.catalog-price-17 .product-body .price,.storefront-product-grid.catalog-price-17 .product-body .big-price{font-size:17px}
.storefront-product-grid.catalog-price-18 .product-body .price,.storefront-product-grid.catalog-price-18 .product-body .big-price{font-size:18px}
.storefront-product-grid.catalog-price-19 .product-body .price,.storefront-product-grid.catalog-price-19 .product-body .big-price{font-size:19px}
.storefront-product-grid.catalog-price-20 .product-body .price,.storefront-product-grid.catalog-price-20 .product-body .big-price{font-size:20px}
.storefront-product-grid.catalog-price-21 .product-body .price,.storefront-product-grid.catalog-price-21 .product-body .big-price{font-size:21px}
.storefront-product-grid.catalog-price-22 .product-body .price,.storefront-product-grid.catalog-price-22 .product-body .big-price{font-size:22px}
.storefront-product-grid.catalog-price-23 .product-body .price,.storefront-product-grid.catalog-price-23 .product-body .big-price{font-size:23px}
.storefront-product-grid.catalog-price-24 .product-body .price,.storefront-product-grid.catalog-price-24 .product-body .big-price{font-size:24px}
.storefront-product-grid.catalog-price-25 .product-body .price,.storefront-product-grid.catalog-price-25 .product-body .big-price{font-size:25px}
.storefront-product-grid.catalog-price-26 .product-body .price,.storefront-product-grid.catalog-price-26 .product-body .big-price{font-size:26px}
.storefront-product-grid.catalog-price-27 .product-body .price,.storefront-product-grid.catalog-price-27 .product-body .big-price{font-size:27px}
.storefront-product-grid.catalog-price-28 .product-body .price,.storefront-product-grid.catalog-price-28 .product-body .big-price{font-size:28px}
.storefront-product-grid.catalog-price-29 .product-body .price,.storefront-product-grid.catalog-price-29 .product-body .big-price{font-size:29px}
.storefront-product-grid.catalog-price-30 .product-body .price,.storefront-product-grid.catalog-price-30 .product-body .big-price{font-size:30px}

/* 3.62.0 — Product-card content presentation */
.storefront-product-grid.catalog-fit-cover .product-image img{object-fit:cover}
.storefront-product-grid.catalog-fit-contain .product-image img{object-fit:contain}
.storefront-product-grid.catalog-desc-0 .product-body p{display:none}
.storefront-product-grid.catalog-desc-2 .product-body p,
.storefront-product-grid.catalog-desc-3 .product-body p,
.storefront-product-grid.catalog-desc-4 .product-body p,
.storefront-product-grid.catalog-desc-5 .product-body p,
.storefront-product-grid.catalog-desc-6 .product-body p{display:-webkit-box;overflow:hidden;-webkit-box-orient:vertical}
.storefront-product-grid.catalog-desc-2 .product-body p{-webkit-line-clamp:2}
.storefront-product-grid.catalog-desc-3 .product-body p{-webkit-line-clamp:3}
.storefront-product-grid.catalog-desc-4 .product-body p{-webkit-line-clamp:4}
.storefront-product-grid.catalog-desc-5 .product-body p{-webkit-line-clamp:5}
.storefront-product-grid.catalog-desc-6 .product-body p{-webkit-line-clamp:6}

/* 3.62.1 — Product-card surface controls */
.storefront-product-grid.catalog-border-line .product-card{border:1px solid #e4e7ec}
.storefront-product-grid.catalog-border-none .product-card{border:0}
.storefront-product-grid.catalog-border-none .product-card:hover{border:0}
.storefront-product-grid.catalog-imagebg-light .product-image{background:#f6f7f8}
.storefront-product-grid.catalog-imagebg-white .product-image{background:#fff}
.storefront-product-grid.catalog-imagebg-transparent .product-image{background:transparent}

/* 3.62.2 — Product-card alignment and action width */
.storefront-product-grid.catalog-align-left .product-body{text-align:left;align-items:flex-start}
.storefront-product-grid.catalog-align-center .product-body{text-align:center;align-items:center}
.storefront-product-grid.catalog-align-center .product-body .price,
.storefront-product-grid.catalog-align-center .product-body .big-price{width:100%;text-align:center}
.storefront-product-grid.catalog-action-auto .product-body .btn{align-self:auto}
.storefront-product-grid.catalog-align-left.catalog-action-auto .product-body .btn{align-self:flex-start}
.storefront-product-grid.catalog-align-center.catalog-action-auto .product-body .btn{align-self:center}
.storefront-product-grid.catalog-action-full .product-body .btn{align-self:stretch;width:100%;box-sizing:border-box;text-align:center}

/* 3.62.3 — Product image spacing and position */
.storefront-product-grid.catalog-imagepad-0 .product-image{padding:0px;box-sizing:border-box}
.storefront-product-grid.catalog-imagepad-1 .product-image{padding:1px;box-sizing:border-box}
.storefront-product-grid.catalog-imagepad-2 .product-image{padding:2px;box-sizing:border-box}
.storefront-product-grid.catalog-imagepad-3 .product-image{padding:3px;box-sizing:border-box}
.storefront-product-grid.catalog-imagepad-4 .product-image{padding:4px;box-sizing:border-box}
.storefront-product-grid.catalog-imagepad-5 .product-image{padding:5px;box-sizing:border-box}
.storefront-product-grid.catalog-imagepad-6 .product-image{padding:6px;box-sizing:border-box}
.storefront-product-grid.catalog-imagepad-7 .product-image{padding:7px;box-sizing:border-box}
.storefront-product-grid.catalog-imagepad-8 .product-image{padding:8px;box-sizing:border-box}
.storefront-product-grid.catalog-imagepad-9 .product-image{padding:9px;box-sizing:border-box}
.storefront-product-grid.catalog-imagepad-10 .product-image{padding:10px;box-sizing:border-box}
.storefront-product-grid.catalog-imagepad-11 .product-image{padding:11px;box-sizing:border-box}
.storefront-product-grid.catalog-imagepad-12 .product-image{padding:12px;box-sizing:border-box}
.storefront-product-grid.catalog-imagepad-13 .product-image{padding:13px;box-sizing:border-box}
.storefront-product-grid.catalog-imagepad-14 .product-image{padding:14px;box-sizing:border-box}
.storefront-product-grid.catalog-imagepad-15 .product-image{padding:15px;box-sizing:border-box}
.storefront-product-grid.catalog-imagepad-16 .product-image{padding:16px;box-sizing:border-box}
.storefront-product-grid.catalog-imagepad-17 .product-image{padding:17px;box-sizing:border-box}
.storefront-product-grid.catalog-imagepad-18 .product-image{padding:18px;box-sizing:border-box}
.storefront-product-grid.catalog-imagepad-19 .product-image{padding:19px;box-sizing:border-box}
.storefront-product-grid.catalog-imagepad-20 .product-image{padding:20px;box-sizing:border-box}
.storefront-product-grid.catalog-imagepad-21 .product-image{padding:21px;box-sizing:border-box}
.storefront-product-grid.catalog-imagepad-22 .product-image{padding:22px;box-sizing:border-box}
.storefront-product-grid.catalog-imagepad-23 .product-image{padding:23px;box-sizing:border-box}
.storefront-product-grid.catalog-imagepad-24 .product-image{padding:24px;box-sizing:border-box}
.storefront-product-grid.catalog-imagepad-25 .product-image{padding:25px;box-sizing:border-box}
.storefront-product-grid.catalog-imagepad-26 .product-image{padding:26px;box-sizing:border-box}
.storefront-product-grid.catalog-imagepad-27 .product-image{padding:27px;box-sizing:border-box}
.storefront-product-grid.catalog-imagepad-28 .product-image{padding:28px;box-sizing:border-box}
.storefront-product-grid.catalog-imagepad-29 .product-image{padding:29px;box-sizing:border-box}
.storefront-product-grid.catalog-imagepad-30 .product-image{padding:30px;box-sizing:border-box}
.storefront-product-grid.catalog-imagepad-31 .product-image{padding:31px;box-sizing:border-box}
.storefront-product-grid.catalog-imagepad-32 .product-image{padding:32px;box-sizing:border-box}

.storefront-product-grid.catalog-imagepos-top .product-image img{object-position:center top}
.storefront-product-grid.catalog-imagepos-center .product-image img{object-position:center center}
.storefront-product-grid.catalog-imagepos-bottom .product-image img{object-position:center bottom}

/* 3.62.4 — Product image/card corner controls */
.storefront-product-grid.catalog-imageradius-0 .product-image,.storefront-product-grid.catalog-imageradius-0 .product-image img{border-radius:0px}
.storefront-product-grid.catalog-cardradius-0 .product-card{border-radius:0px}
.storefront-product-grid.catalog-imageradius-1 .product-image,.storefront-product-grid.catalog-imageradius-1 .product-image img{border-radius:1px}
.storefront-product-grid.catalog-cardradius-1 .product-card{border-radius:1px}
.storefront-product-grid.catalog-imageradius-2 .product-image,.storefront-product-grid.catalog-imageradius-2 .product-image img{border-radius:2px}
.storefront-product-grid.catalog-cardradius-2 .product-card{border-radius:2px}
.storefront-product-grid.catalog-imageradius-3 .product-image,.storefront-product-grid.catalog-imageradius-3 .product-image img{border-radius:3px}
.storefront-product-grid.catalog-cardradius-3 .product-card{border-radius:3px}
.storefront-product-grid.catalog-imageradius-4 .product-image,.storefront-product-grid.catalog-imageradius-4 .product-image img{border-radius:4px}
.storefront-product-grid.catalog-cardradius-4 .product-card{border-radius:4px}
.storefront-product-grid.catalog-imageradius-5 .product-image,.storefront-product-grid.catalog-imageradius-5 .product-image img{border-radius:5px}
.storefront-product-grid.catalog-cardradius-5 .product-card{border-radius:5px}
.storefront-product-grid.catalog-imageradius-6 .product-image,.storefront-product-grid.catalog-imageradius-6 .product-image img{border-radius:6px}
.storefront-product-grid.catalog-cardradius-6 .product-card{border-radius:6px}
.storefront-product-grid.catalog-imageradius-7 .product-image,.storefront-product-grid.catalog-imageradius-7 .product-image img{border-radius:7px}
.storefront-product-grid.catalog-cardradius-7 .product-card{border-radius:7px}
.storefront-product-grid.catalog-imageradius-8 .product-image,.storefront-product-grid.catalog-imageradius-8 .product-image img{border-radius:8px}
.storefront-product-grid.catalog-cardradius-8 .product-card{border-radius:8px}
.storefront-product-grid.catalog-imageradius-9 .product-image,.storefront-product-grid.catalog-imageradius-9 .product-image img{border-radius:9px}
.storefront-product-grid.catalog-cardradius-9 .product-card{border-radius:9px}
.storefront-product-grid.catalog-imageradius-10 .product-image,.storefront-product-grid.catalog-imageradius-10 .product-image img{border-radius:10px}
.storefront-product-grid.catalog-cardradius-10 .product-card{border-radius:10px}
.storefront-product-grid.catalog-imageradius-11 .product-image,.storefront-product-grid.catalog-imageradius-11 .product-image img{border-radius:11px}
.storefront-product-grid.catalog-cardradius-11 .product-card{border-radius:11px}
.storefront-product-grid.catalog-imageradius-12 .product-image,.storefront-product-grid.catalog-imageradius-12 .product-image img{border-radius:12px}
.storefront-product-grid.catalog-cardradius-12 .product-card{border-radius:12px}
.storefront-product-grid.catalog-imageradius-13 .product-image,.storefront-product-grid.catalog-imageradius-13 .product-image img{border-radius:13px}
.storefront-product-grid.catalog-cardradius-13 .product-card{border-radius:13px}
.storefront-product-grid.catalog-imageradius-14 .product-image,.storefront-product-grid.catalog-imageradius-14 .product-image img{border-radius:14px}
.storefront-product-grid.catalog-cardradius-14 .product-card{border-radius:14px}
.storefront-product-grid.catalog-imageradius-15 .product-image,.storefront-product-grid.catalog-imageradius-15 .product-image img{border-radius:15px}
.storefront-product-grid.catalog-cardradius-15 .product-card{border-radius:15px}
.storefront-product-grid.catalog-imageradius-16 .product-image,.storefront-product-grid.catalog-imageradius-16 .product-image img{border-radius:16px}
.storefront-product-grid.catalog-cardradius-16 .product-card{border-radius:16px}
.storefront-product-grid.catalog-imageradius-17 .product-image,.storefront-product-grid.catalog-imageradius-17 .product-image img{border-radius:17px}
.storefront-product-grid.catalog-cardradius-17 .product-card{border-radius:17px}
.storefront-product-grid.catalog-imageradius-18 .product-image,.storefront-product-grid.catalog-imageradius-18 .product-image img{border-radius:18px}
.storefront-product-grid.catalog-cardradius-18 .product-card{border-radius:18px}
.storefront-product-grid.catalog-imageradius-19 .product-image,.storefront-product-grid.catalog-imageradius-19 .product-image img{border-radius:19px}
.storefront-product-grid.catalog-cardradius-19 .product-card{border-radius:19px}
.storefront-product-grid.catalog-imageradius-20 .product-image,.storefront-product-grid.catalog-imageradius-20 .product-image img{border-radius:20px}
.storefront-product-grid.catalog-cardradius-20 .product-card{border-radius:20px}
.storefront-product-grid.catalog-imageradius-21 .product-image,.storefront-product-grid.catalog-imageradius-21 .product-image img{border-radius:21px}
.storefront-product-grid.catalog-cardradius-21 .product-card{border-radius:21px}
.storefront-product-grid.catalog-imageradius-22 .product-image,.storefront-product-grid.catalog-imageradius-22 .product-image img{border-radius:22px}
.storefront-product-grid.catalog-cardradius-22 .product-card{border-radius:22px}
.storefront-product-grid.catalog-imageradius-23 .product-image,.storefront-product-grid.catalog-imageradius-23 .product-image img{border-radius:23px}
.storefront-product-grid.catalog-cardradius-23 .product-card{border-radius:23px}
.storefront-product-grid.catalog-imageradius-24 .product-image,.storefront-product-grid.catalog-imageradius-24 .product-image img{border-radius:24px}
.storefront-product-grid.catalog-cardradius-24 .product-card{border-radius:24px}


/* 3.62.5 — Exact product-detail gallery markup refinement */
.product-detail .product-gallery-main{
  width:100%;
  min-width:0;
}
.product-detail .product-gallery-main img{
  display:block;
  width:100%;
  height:auto;
  max-height:720px;
  object-fit:contain;
}
.product-detail .product-gallery-thumbs{
  display:grid;
  grid-template-columns:repeat(auto-fill,minmax(72px,1fr));
  gap:10px;
  margin-top:12px;
}
.product-detail .product-gallery-thumb{
  display:block;
  width:100%;
  aspect-ratio:1/1;
  padding:4px;
  border:1px solid #d9dde3;
  border-radius:0;
  background:#fff;
  cursor:pointer;
  overflow:hidden;
  box-sizing:border-box;
}
.product-detail .product-gallery-thumb img{
  display:block;
  width:100%;
  height:100%;
  object-fit:cover;
}
.product-detail .product-gallery-thumb[aria-pressed="true"],
.product-detail .product-gallery-thumb.is-active{
  border-width:2px;
}
.product-detail .product-gallery-thumb:focus-visible{
  outline:2px solid currentColor;
  outline-offset:2px;
}
@media (max-width:620px){
  .product-detail .product-gallery-thumbs{
    grid-template-columns:repeat(auto-fill,minmax(60px,1fr));
    gap:8px;
  }
}


/* 3.62.6 — Exact cart markup refinement */
.storefront-cart-card{
  border:1px solid #e4e7ec;
  border-radius:0;
  box-shadow:none;
  overflow:hidden;
}
.storefront-cart-card .cart-row{
  display:grid;
  grid-template-columns:96px minmax(0,1fr) auto;
  gap:18px;
  align-items:center;
  padding:18px 0;
  border-bottom:1px solid #e4e7ec;
}
.storefront-cart-card .cart-row:last-child{border-bottom:0}
.storefront-cart-card .cart-thumb{
  width:96px;
  height:96px;
  overflow:hidden;
  background:#f6f7f8;
}
.storefront-cart-card .cart-thumb img{
  display:block;
  width:100%;
  height:100%;
  object-fit:cover;
}
.storefront-cart-card .cart-main{min-width:0}
.storefront-cart-card .cart-main h2,
.storefront-cart-card .cart-main h3{margin-top:0}
.storefront-cart-card .qty{
  display:flex;
  align-items:center;
  gap:8px;
}
.storefront-cart-card .qty input{
  width:76px;
  text-align:center;
}
.storefront-cart-summary{
  display:flex;
  justify-content:space-between;
  gap:24px;
  align-items:center;
  padding-top:20px;
  margin-top:8px;
  border-top:1px solid #e4e7ec;
}
.storefront-cart-actions{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
  align-items:center;
}
@media (max-width:700px){
  .storefront-cart-card .cart-row{
    grid-template-columns:72px minmax(0,1fr);
    gap:14px;
  }
  .storefront-cart-card .cart-thumb{
    width:72px;
    height:72px;
  }
  .storefront-cart-card .qty{
    grid-column:1/-1;
  }
  .storefront-cart-summary{
    align-items:flex-start;
    flex-direction:column;
  }
}


/* 3.62.7 — Exact checkout markup refinement */
body:not(.admin) .checkout-card{
  width:min(100%,1040px);
  max-width:1040px;
  margin-left:auto;
  margin-right:auto;
  border:1px solid #e4e7ec;
  border-radius:0;
  box-shadow:none;
}
body:not(.admin) .checkout-card > .grid,
body:not(.admin) .checkout-card form > .grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:16px 20px;
}
body:not(.admin) .checkout-card .grid .wide{
  grid-column:1/-1;
}
body:not(.admin) .checkout-card label{
  min-width:0;
}
body:not(.admin) .checkout-card input,
body:not(.admin) .checkout-card select,
body:not(.admin) .checkout-card textarea{
  width:100%;
  box-sizing:border-box;
}
body:not(.admin) .checkout-card .order-total{
  display:flex;
  justify-content:space-between;
  align-items:baseline;
  gap:24px;
  margin:22px 0;
  padding:16px 0;
  border-top:1px solid #e4e7ec;
  border-bottom:1px solid #e4e7ec;
}
body:not(.admin) .checkout-card .payment-choice{
  padding:14px 0;
  border-bottom:1px solid #e4e7ec;
}
body:not(.admin) .checkout-card .payment-choice:last-of-type{
  border-bottom:0;
}
body:not(.admin) .checkout-card .legal-row{
  padding:10px 0;
}
body:not(.admin) .checkout-card .customer-status,
body:not(.admin) .checkout-card .customer-choice{
  border:1px solid #e4e7ec;
  border-radius:0;
  box-shadow:none;
  padding:16px;
  margin:14px 0;
}
body:not(.admin) .checkout-card .customer-choice-actions{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
  align-items:center;
}
@media (max-width:720px){
  body:not(.admin) .checkout-card > .grid,
  body:not(.admin) .checkout-card form > .grid{
    grid-template-columns:1fr;
  }
  body:not(.admin) .checkout-card .grid .wide{
    grid-column:auto;
  }
  body:not(.admin) .checkout-card .order-total{
    align-items:flex-start;
    flex-direction:column;
    gap:6px;
  }
}


/* 3.62.8 — Separate customer account forms from checkout */
body:not(.admin) .storefront-account-form-card{
  width:min(100%,820px);
  max-width:820px;
  margin-left:auto;
  margin-right:auto;
  border:1px solid #e4e7ec;
  border-radius:0;
  box-shadow:none;
}
body:not(.admin) .storefront-account-form-card > .grid,
body:not(.admin) .storefront-account-form-card form > .grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:16px 20px;
}
body:not(.admin) .storefront-account-form-card .grid .wide{
  grid-column:1/-1;
}
/* Checkout gets its own wider layout from 3.62.7. */
body:not(.admin) .checkout-card:not(.storefront-account-form-card){
  width:min(100%,1040px);
  max-width:1040px;
}
@media (max-width:720px){
  body:not(.admin) .storefront-account-form-card > .grid,
  body:not(.admin) .storefront-account-form-card form > .grid{
    grid-template-columns:1fr;
  }
  body:not(.admin) .storefront-account-form-card .grid .wide{
    grid-column:auto;
  }
}


/* 3.62.9 — Order completion exact markup refinement */
body:not(.admin) .storefront-success-card{
  width:min(100%,820px);
  max-width:820px;
  margin:28px auto;
  padding:32px;
  border:1px solid #e4e7ec;
  border-radius:0;
  box-shadow:none;
  text-align:left;
}
body:not(.admin) .storefront-success-mark{
  display:flex;
  align-items:center;
  justify-content:center;
  width:52px;
  height:52px;
  margin:0 0 20px;
  border:2px solid currentColor;
  border-radius:50%;
  font-size:28px;
  line-height:1;
  font-weight:700;
}
body:not(.admin) .storefront-success-card h1{
  margin-top:0;
  margin-bottom:12px;
}
body:not(.admin) .storefront-success-card p{
  max-width:68ch;
}
body:not(.admin) .storefront-success-card .btn{
  margin-top:12px;
}
@media (max-width:620px){
  body:not(.admin) .storefront-success-card{
    margin:18px auto;
    padding:22px;
  }
  body:not(.admin) .storefront-success-mark{
    width:46px;
    height:46px;
    font-size:24px;
  }
}


/* 3.63.0 — Customer account dashboard exact markup refinement */
body:not(.admin) .customer-nav-v2{
  display:flex;
  flex-wrap:wrap;
  gap:8px 14px;
  align-items:center;
  padding:12px 0 18px;
  border-bottom:1px solid #e4e7ec;
  box-shadow:none;
}
body:not(.admin) .customer-dashboard-hero{
  border:0;
  border-bottom:1px solid #e4e7ec;
  border-radius:0;
  box-shadow:none;
  padding:24px 0;
  margin-bottom:22px;
}
body:not(.admin) .customer-message-summary{
  border:1px solid #e4e7ec;
  border-radius:0;
  box-shadow:none;
  padding:16px 18px;
  margin:18px 0;
}
body:not(.admin) .storefront-account-import{
  border:1px solid #e4e7ec;
  border-radius:0;
  box-shadow:none;
  padding:20px;
  margin:22px 0;
}
body:not(.admin) .storefront-account-section-heading{
  display:flex;
  justify-content:space-between;
  gap:16px;
  align-items:end;
  margin:28px 0 12px;
  padding-bottom:10px;
  border-bottom:1px solid #e4e7ec;
}
body:not(.admin) .storefront-account-order-list{
  display:grid;
  gap:12px;
}
body:not(.admin) .storefront-account-order-list > *{
  border:1px solid #e4e7ec;
  border-radius:0;
  box-shadow:none;
}
@media (max-width:700px){
  body:not(.admin) .customer-nav-v2{
    align-items:flex-start;
  }
  body:not(.admin) .storefront-account-section-heading{
    align-items:flex-start;
    flex-direction:column;
    gap:6px;
  }
}


/* 3.63.1 — Unified customer account subpages */
body:not(.admin) .customer-nav-v2 + .card,
body:not(.admin) .customer-nav-v2 ~ .card{
  border-radius:0;
  box-shadow:none;
}
body:not(.admin) .customer-nav-v2 ~ .card{
  border:1px solid #e4e7ec;
}
body:not(.admin) .customer-nav-v2 ~ .card h1,
body:not(.admin) .customer-nav-v2 ~ .card h2{
  margin-top:0;
}
body:not(.admin) .customer-nav-v2 ~ .card form{
  max-width:820px;
}
body:not(.admin) .customer-nav-v2 ~ .card label{
  display:block;
  min-width:0;
}
body:not(.admin) .customer-nav-v2 ~ .card input,
body:not(.admin) .customer-nav-v2 ~ .card select,
body:not(.admin) .customer-nav-v2 ~ .card textarea{
  width:100%;
  max-width:100%;
  box-sizing:border-box;
}
body:not(.admin) .customer-nav-v2 ~ .card table{
  width:100%;
  border-collapse:collapse;
}
body:not(.admin) .customer-nav-v2 ~ .card th,
body:not(.admin) .customer-nav-v2 ~ .card td{
  padding:12px 10px;
  border-bottom:1px solid #e4e7ec;
  text-align:left;
  vertical-align:top;
}
body:not(.admin) .customer-nav-v2 ~ .card th{
  font-weight:700;
}
body:not(.admin) .customer-nav-v2 ~ .card .actions{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
  align-items:center;
}
@media (max-width:720px){
  body:not(.admin) .customer-nav-v2 ~ .card{
    overflow-x:auto;
  }
  body:not(.admin) .customer-nav-v2 ~ .card th,
  body:not(.admin) .customer-nav-v2 ~ .card td{
    padding:10px 8px;
  }
}

/* 3.64.0 — Public product search */
.storefront-product-search{margin:0 0 22px;padding:0 0 18px;border-bottom:1px solid #e4e7ec}
.storefront-product-search>label{display:block;margin-bottom:8px;font-weight:700}
.storefront-product-search-row{display:flex;gap:10px;align-items:center;flex-wrap:wrap}
.storefront-product-search-row input[type="search"]{flex:1 1 280px;min-width:0;max-width:620px;box-sizing:border-box}
@media(max-width:620px){.storefront-product-search-row{align-items:stretch;flex-direction:column}.storefront-product-search-row input[type="search"],.storefront-product-search-row .btn{width:100%;max-width:none}}

/* 3.64.1 — Public product category filter */
.storefront-category-filter{flex:0 1 260px;min-width:190px;max-width:320px;box-sizing:border-box}
@media(max-width:620px){.storefront-category-filter{width:100%;max-width:none;min-width:0}}

/* 3.64.2 — Availability and sorting controls */
.storefront-availability-filter,.storefront-sort-filter{flex:0 1 210px;min-width:170px;max-width:260px;box-sizing:border-box}
@media(max-width:620px){.storefront-availability-filter,.storefront-sort-filter{width:100%;max-width:none;min-width:0}}

/* 3.64.3 — Compact search/filter dialog */
.storefront-product-filter-launch{display:flex;justify-content:flex-end;margin:0 0 18px}
.storefront-filter-active{font-size:1.2em;line-height:0}
.storefront-filter-dialog{
  width:min(92vw,680px);max-width:680px;padding:0;border:1px solid #d9dde3;
  border-radius:0;box-shadow:0 18px 55px rgba(0,0,0,.18);background:#fff
}
.storefront-filter-dialog::backdrop{background:rgba(20,24,31,.42)}
.storefront-filter-dialog-head{
  display:flex;align-items:center;justify-content:space-between;gap:20px;
  padding:18px 20px;border-bottom:1px solid #e4e7ec
}
.storefront-filter-dialog-head h2{margin:0;font-size:1.2rem}
.storefront-filter-close{
  appearance:none;border:0;background:transparent;font:inherit;font-size:1.8rem;
  line-height:1;cursor:pointer;padding:2px 6px
}
.storefront-filter-dialog .storefront-product-search{margin:0;padding:20px;border:0}
.storefront-filter-dialog .storefront-product-search-row{align-items:stretch}
.storefront-filter-dialog .storefront-product-search-row input[type="search"],
.storefront-filter-dialog .storefront-category-filter,
.storefront-filter-dialog .storefront-availability-filter,
.storefront-filter-dialog .storefront-sort-filter{flex:1 1 100%;width:100%;max-width:none}
@media(max-width:620px){
 .storefront-filter-dialog{width:calc(100vw - 24px);max-height:calc(100vh - 24px)}
 .storefront-filter-dialog-head{padding:16px}
 .storefront-filter-dialog .storefront-product-search{padding:16px}
}

/* 3.64.4 — Customer order history refinement */
body:not(.admin) .storefront-order-history{
  display:grid;
  gap:12px;
}
body:not(.admin) .storefront-order-history > *{
  min-width:0;
  border:1px solid #e4e7ec;
  border-radius:0;
  box-shadow:none;
}
body:not(.admin) .storefront-order-history a{
  text-underline-offset:2px;
}
body:not(.admin) .storefront-order-history-card{
  padding:18px 20px;
}
body:not(.admin) .storefront-order-history-card .actions{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
  align-items:center;
}
@media(max-width:700px){
  body:not(.admin) .storefront-order-history-card{padding:16px}
}

/* 3.64.5 — Order detail readability */
body:not(.admin) .storefront-order-detail-card{
  display:grid;
  gap:14px;
}
body:not(.admin) .storefront-order-detail-card header,
body:not(.admin) .storefront-order-detail-card .order-head{
  display:flex;
  justify-content:space-between;
  align-items:flex-start;
  gap:16px;
  padding-bottom:12px;
  border-bottom:1px solid #e4e7ec;
}
body:not(.admin) .storefront-order-detail-card .order-items,
body:not(.admin) .storefront-order-detail-card .items{
  display:grid;
  gap:8px;
}
body:not(.admin) .storefront-order-detail-card .order-total,
body:not(.admin) .storefront-order-detail-card .total{
  padding-top:12px;
  border-top:1px solid #e4e7ec;
  font-weight:700;
}
body:not(.admin) .storefront-order-detail-card .muted{
  line-height:1.45;
}
@media(max-width:700px){
  body:not(.admin) .storefront-order-detail-card header,
  body:not(.admin) .storefront-order-detail-card .order-head{
    flex-direction:column;
    gap:8px;
  }
}

/* 3.64.6 — Existing order documents/tickets area refinement */
body:not(.admin) .customer-order-doc-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:16px;
  margin-top:18px;
}
body:not(.admin) .customer-order-doc-grid > .card{
  margin:0;
  padding:20px;
  border:1px solid #e4e7ec;
  border-radius:0;
  box-shadow:none;
}
body:not(.admin) .customer-order-doc-grid h2{margin-top:0}
body:not(.admin) .customer-order-doc-grid .actions{
  display:flex;flex-wrap:wrap;gap:10px;align-items:center
}
@media(max-width:760px){
 body:not(.admin) .customer-order-doc-grid{grid-template-columns:1fr}
 body:not(.admin) .customer-order-doc-grid .actions{align-items:stretch;flex-direction:column}
 body:not(.admin) .customer-order-doc-grid .btn{width:100%;box-sizing:border-box}
}

/* 3.64.7 — Existing secure ticket detail/QR presentation */
body:not(.admin) .storefront-ticket-detail,
body:not(.admin) .customer-ticket-card{
 width:min(100%,820px);max-width:820px;margin:20px auto;padding:24px;
 border:1px solid #e4e7ec;border-radius:0;box-shadow:none
}
body:not(.admin) .storefront-ticket-detail img[src*="/konto/ticket/qr"],
body:not(.admin) .customer-ticket-card img[src*="/konto/ticket/qr"]{
 display:block;width:min(100%,320px);height:auto;margin:20px auto;background:#fff;padding:14px;box-sizing:border-box
}
@media(max-width:620px){
 body:not(.admin) .storefront-ticket-detail,body:not(.admin) .customer-ticket-card{padding:18px}
}

/* 3.64.8 — Secure ticket validation/check-in refinement */
body:not(.admin) .ticket-card,
body:not(.admin) .customer-ticket-card{
 border:1px solid #e4e7ec;border-radius:0;box-shadow:none
}
body:not(.admin) img[alt="QR-Code zur Ticketprüfung"]{
 display:block;max-width:320px;width:100%;height:auto;margin:20px auto;background:#fff;padding:12px;box-sizing:border-box
}

/* 3.64.9 — Customer ticket security boundary.
   Customer ticket and QR routes are display-only.
   Activation/check-in remains restricted to server/admin workflows. */

/* 3.65.0 — Presence history foundation.
   Existing immutable audit events are the authoritative entry history.
   Customer ticket views remain read-only. */

/* 3.65.1 — Admin-only re-entry: check-in / check-out controls.
   Customer ticket routes remain read-only. */

/* 3.65.2 — Multi-day ticket foundation.
   Presence is evaluated per event calendar day; previous-day check-in does not block a new day. */

/* 3.65.3 — Ticket benefits (admin-only redemption). */
body:not(.admin) .ticket-benefit{padding:.75rem 0;border-top:1px solid var(--border,#ddd)}
body:not(.admin) .ticket-benefit form{display:inline-block;margin-left:.75rem}

/* 3.65.4 — Authenticated scanner action panel. */
.scanner-action-card{max-width:760px;margin-inline:auto}
.scanner-actions{display:flex;gap:.75rem;flex-wrap:wrap;margin:1rem 0 1.5rem}
.scanner-benefit{display:flex;align-items:center;gap:.75rem;flex-wrap:wrap;padding:.85rem 0;border-top:1px solid var(--border,#ddd)}
.scanner-benefit span{margin-right:auto}

/* 3.65.5 — Ticket workflow hardening/final verification.
   Scanner exposes authoritative daily presence while mutations remain server-side protected. */

/* 3.65.6 — Admin ticket configuration. */

/* 3.65.7 — Product-specific ticket benefits. */

/* 3.65.8 — Product-specific multi-day validity. */

/* 3.65.9 — Scanner feedback. */
.scanner-feedback{margin:0 0 1rem}

/* 3.66.0 — Event scanner dashboard. */
.scanner-dashboard-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:1rem;margin:1rem 0 1.5rem}
.scanner-dashboard-grid .card{display:flex;flex-direction:column;gap:.45rem}
.scanner-dashboard-grid .card span{font-size:1.8rem;font-weight:700}

/* 3.66.1 — Ticket settings live with the product editor. */
.ticket-product-settings{border:1px solid var(--border,#ddd);padding:1rem;margin:0}
.ticket-product-settings legend{font-weight:700;padding:0 .35rem}
.ticket-product-settings label{display:block;margin:.75rem 0}


/* 3.73.1 — Square storefront product front images
   The original product image remains unchanged; only the public catalog presentation is square. */
.storefront-product-grid .catalog-card > a{
  width:100% !important;
  aspect-ratio:1 / 1 !important;
  overflow:hidden !important;
}
.storefront-product-grid .catalog-card > a > .catalog-image{
  display:block !important;
  width:100% !important;
  height:100% !important;
  aspect-ratio:1 / 1 !important;
  object-fit:cover !important;
  object-position:center center !important;
}
.storefront-product-grid .catalog-card > a > .image-placeholder{
  width:100% !important;
  height:100% !important;
  aspect-ratio:1 / 1 !important;
}

/* 3.73.22 — Startseite verbindlich zweispaltig auf allen Viewport-Breiten */
body .storefront-product-grid.catalog-cols-2 {
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
}
