/* Storefront visual layer. Checkout and designer event contracts remain in script.js. */
.storefront-product-page .design-print-area { inset: 0; width: 100%; height: 100%; aspect-ratio: auto; transform: none; border: 0; border-radius: 0; overflow: hidden; }
.storefront-product-page .design-print-area .design-overlay-image { width: 42%; }
.designer-workspace-heading { display: flex; align-items: center; justify-content: space-between; gap: 16px; padding: 0 0 16px; border-bottom: 1px solid #e7e7df; }
.designer-workspace-heading > div { display: grid; gap: 7px; }
.designer-workspace-heading > div > span { color: #95958a; font-size: 9px; font-weight: 600; letter-spacing: .14em; }
.designer-workspace-heading strong { color: #24251f; font-size: clamp(19px,2vw,25px); font-weight: 500; line-height: 1.2; letter-spacing: -.035em; }
.designer-workspace-note { flex-shrink: 0; padding: 6px 9px; border: 1px solid #e6e4d9; border-radius: 999px; background: #faf9f2; color: #888272; font-size: 9px; }
body.storefront-theme .storefront-product-page .product-gallery-custom { gap: 16px; }
body.storefront-theme .storefront-product-page .product-gallery-custom .design-workspace { grid-template-columns: 164px minmax(0,1fr); gap: 14px; }
body.storefront-theme .storefront-product-page .product-gallery-custom .mockup-side-toggle { gap: 4px; width: fit-content; margin: 0; padding: 4px; border: 1px solid #e5e5de; border-radius: 9px; background: #f5f5f0; }
body.storefront-theme .storefront-product-page .mockup-side-btn { display: inline-flex; align-items: center; justify-content: center; min-height: 34px; padding: 0 19px; border-radius: 6px; font-size: 11px; font-weight: 500; text-transform: none; }
body.storefront-theme .storefront-product-page .mockup-side-btn.active { color: #fff; background: #24251f; box-shadow: 0 2px 5px #0001; }
body.storefront-theme .storefront-product-page .product-gallery-custom .product-main-image-wrap { border: 1px solid #e4e4dc; border-radius: 11px; box-shadow: 0 4px 16px #17171704; }
body.storefront-theme .storefront-product-page .product-gallery-custom .design-toolbar { gap: 14px; padding: 15px 14px; border: 1px solid #e4e4dc; border-radius: 11px; background: #fafaf7; }
body.storefront-theme .storefront-product-page .design-tool-primary { border-radius: 8px; background: #26271f; color: #fff; }
body.storefront-theme .storefront-product-page .design-secondary-actions button { border: 1px solid #e6e6df; border-radius: 6px; background: #fff; color: #74766b; }
body.storefront-theme .storefront-product-page .design-secondary-actions button:hover { color: #222; border-color: #aaa; }
body.storefront-theme .storefront-product-page .design-toolbar :is(.design-scale-control,.design-rotate-control) { color: #74766b; }
body.storefront-theme .storefront-product-page .design-toolbar input[type=range] { accent-color: #6a7060; }
.designer-workspace-tip { margin: 0; padding: 11px 14px; border: 1px solid #eeede5; border-radius: 8px; background: #faf9f4; color: #8b8879; font-size: 10px; line-height: 1.7; }
@media(max-width:760px) {
  .designer-workspace-heading { gap: 10px; padding-bottom: 12px; }
  .designer-workspace-heading strong { font-size: 20px; }
  .designer-workspace-note { font-size: 8px; }
  body.storefront-theme .storefront-product-page .product-gallery-custom .design-toolbar { gap: 12px; padding: 12px; }
  body.storefront-theme .storefront-product-page .product-gallery-custom .design-workspace { grid-template-columns: minmax(0,1fr); gap: 12px; }
}
/* Product rich text follows the formatting saved by the admin editor. */
.storefront-product-page .product-description-panel { min-width: 0; max-width: 100%; overflow-x: auto; scrollbar-width: thin; }
.storefront-product-page .product-description-content { min-width: 0; max-width: 100%; color: #66695f; font-size: 14px; line-height: 1.85; overflow-wrap: anywhere; }
.storefront-product-page .product-description-content :is(p,ul,ol,blockquote,pre) { margin: 0 0 14px; }
.storefront-product-page .product-description-content :is(h1,h2,h3,h4,h5,h6) { margin: 24px 0 12px; color: #24271f; font-weight: 600; line-height: 1.35; letter-spacing: -.02em; }
.storefront-product-page .product-description-content h1 { font-size: 25px; }
.storefront-product-page .product-description-content h2 { font-size: 22px; }
.storefront-product-page .product-description-content h3 { font-size: 19px; }
.storefront-product-page .product-description-content :is(h4,h5,h6) { font-size: 16px; }
.storefront-product-page .product-description-content :is(ul,ol) { padding-inline-start: 24px; }
.storefront-product-page .product-description-content li { margin-bottom: 5px; }
.storefront-product-page .product-description-content img { display: inline-block; max-width: 100%; height: auto; vertical-align: middle; border-radius: 6px; }
.storefront-product-page .product-description-content table { width: 100%; border-collapse: collapse; font-size: 12px; }
.storefront-product-page .product-description-content :is(td,th) { padding: 10px 12px; border: 1px solid #e5e6de; text-align: start; overflow-wrap: anywhere; }
.storefront-product-page .product-description-content th { background: #f5f5ef; font-weight: 600; }
.storefront-product-page .product-description-content blockquote { padding: 10px 16px; border-inline-start: 3px solid #ddd6b4; background: #faf9f4; }
.storefront-product-page .product-description-content pre { max-width: 100%; padding: 12px; overflow-x: auto; background: #f4f4ef; border-radius: 6px; white-space: pre-wrap; }
.storefront-product-page .product-description-content a { color: #333; text-decoration: underline; text-underline-offset: 3px; }
.storefront-product-page .product-description-content .ql-align-center { text-align: center; }
.storefront-product-page .product-description-content .ql-align-right { text-align: right; }
.storefront-product-page .product-description-content .ql-align-justify { text-align: justify; }
.storefront-product-page .product-description-content .ql-size-small { font-size: .8em; }
.storefront-product-page .product-description-content .ql-size-large { font-size: 1.25em; }
.storefront-product-page .product-description-content .ql-size-huge { font-size: 1.6em; }
.storefront-product-page .product-description-content .ql-direction-rtl { direction: rtl; }
.storefront-product-page .product-description-content .ql-font-serif { font-family: Georgia,serif; }
.storefront-product-page .product-description-content .ql-font-monospace { font-family: monospace; }
.storefront-product-page .product-description-content > :first-child { margin-top: 0; }
.storefront-product-page .product-description-content > :last-child { margin-bottom: 0; }
.storefront-product-page .product-description-content .ql-indent-1 { padding-inline-start: 1.5em; }
.storefront-product-page .product-description-content .ql-indent-2 { padding-inline-start: 3em; }
.storefront-product-page .product-description-content .ql-indent-3 { padding-inline-start: 4.5em; }
.storefront-product-page .product-description-content .ql-indent-4 { padding-inline-start: 6em; }
.storefront-product-page .product-description-content .ql-indent-5 { padding-inline-start: 7.5em; }
.storefront-product-page .product-description-content .ql-indent-6 { padding-inline-start: 9em; }
.storefront-product-page .product-description-content .ql-indent-7 { padding-inline-start: 10.5em; }
.storefront-product-page .product-description-content .ql-indent-8 { padding-inline-start: 12em; }
.storefront-product-page .product-size-chart-trigger { display: inline-flex; justify-self: end; align-items: center; gap: 6px; margin-left: auto; padding: 6px 9px; border: 1px solid #e4e4dc; border-radius: 6px; background: #fafaf7; color: #626359; font-size: 10px; font-weight: 500; white-space: nowrap; }
.product-size-chart-trigger svg { width: 15px; height: 15px; }
.product-size-chart-trigger:hover { border-color: #aaa; color: #171717; }
.product-size-chart-modal[hidden] { display: none !important; }
.product-size-chart-modal { position: fixed; inset: 0; z-index: 1450; display: grid; place-items: center; padding: 18px; }
.product-size-chart-backdrop { position: absolute; inset: 0; width: 100%; height: 100%; border: 0; background: #15151599; backdrop-filter: blur(4px); }
.product-size-chart-dialog { position: relative; display: flex; flex-direction: column; width: min(900px,100%); max-height: calc(100dvh - 36px); overflow: hidden; border-radius: 13px; background: #fff; box-shadow: 0 25px 70px #0003; }
.product-size-chart-dialog header { display: flex; flex: 0 0 auto; align-items: center; justify-content: space-between; gap: 16px; padding: 17px 20px; border-bottom: 1px solid #eee; }
.storefront-theme .product-size-chart-dialog header h2 { margin: 0; font-size: 18px; }
.product-size-chart-dialog header button { position: static; display: grid; place-items: center; flex: 0 0 34px; width: 34px; height: 34px; min-height: 0; margin: 0; padding: 0; border: 1px solid #ddd; border-radius: 50%; background: #fff; color: #333; line-height: 1; transform: none; }
.product-size-chart-dialog header button svg { display: block; width: 16px; height: 16px; }
.product-size-chart-dialog header button:hover { background: #f3f3ef; border-color: #aaa; }
.product-size-chart-body { min-height: 0; overflow: auto; padding: 16px; scrollbar-width: thin; overscroll-behavior: contain; }
.product-size-chart-body img { display: block; width: 100%; height: auto; }
body.size-chart-open { overflow: hidden; }
body.storefront-theme .storefront-product-page { padding-top: 30px; }
body.storefront-theme .storefront-product-page .product-layout { align-items: start; gap: clamp(26px,4vw,62px); }
body.storefront-theme .storefront-product-page .product-info { gap: 20px; min-width: 0; }
body.storefront-theme .storefront-product-page .product-info h1 { margin: 0; font-size: clamp(27px,2.5vw,38px); font-weight: 600; line-height: 1.15; letter-spacing: -.04em; text-wrap: balance; }
body.storefront-theme .storefront-product-page .product-breadcrumb { margin: 0; font-size: 11px; line-height: 1.5; color: #92928a; }
.product-detail-kicker { display: inline-flex; align-items: center; gap: 7px; justify-self: start; padding: 6px 10px; border-radius: 4px; background: #f6f3e6; color: #827547; font-size: 10px; font-weight: 500; }
.product-detail-kicker::before { content: ''; width: 5px; height: 5px; border-radius: 50%; background: #c3ac4c; }
body.storefront-theme .storefront-product-page .rating-display { gap: 8px; margin: 0; font-size: 11px; }
body.storefront-theme .storefront-product-page .rating-display .stars { font-size: 13px; letter-spacing: 1px; color: #a78b38; }
body.storefront-theme .storefront-product-page .product-price-wrap { display: flex; align-items: center; padding: 18px 20px; border: 1px solid #e8e7df; border-radius: 10px; background: #f7f7f3; }
body.storefront-theme .storefront-product-page .product-price-wrap .price-stack { display: flex; flex-wrap: wrap; align-items: baseline; gap: 11px; }
body.storefront-theme .storefront-product-page .product-price-wrap .price-current { order: 0; font-size: 28px; font-weight: 600; letter-spacing: -.04em; }
body.storefront-theme .storefront-product-page .product-price-wrap .price-old { order: 1; font-size: 14px; color: #99998f; }
body.storefront-theme .storefront-product-page .option-label { font-size: 12px; font-weight: 500; }
body.storefront-theme .storefront-product-page .option-group { gap: 12px; margin: 0; padding-bottom: 16px; border-bottom: 1px solid #eeeee8; }
body.storefront-theme .storefront-product-page .size-btn { min-height: 45px; border-radius: 7px; font-size: 12px; font-weight: 500; }
body.storefront-theme .storefront-product-page .size-btn.active { background: #f4f4ee; border-color: #333; box-shadow: inset 0 0 0 1px #333; }
body.storefront-theme .storefront-product-page [data-product-add] { min-height: 54px; margin-top: 0; border-radius: 9px; background: #191919; border-color: #191919; color: #fff; font-size: 14px; font-weight: 600; transition: background .2s,box-shadow .2s; }
body.storefront-theme .storefront-product-page [data-product-add]:hover { background: #333; box-shadow: 0 7px 18px #17171715; }
body.storefront-theme .storefront-product-page .product-gallery-standard .product-main-image-wrap { border: 1px solid #eaeae4; border-radius: 12px; background: #f3f2ee; }
body.storefront-theme .storefront-product-page .product-gallery-standard .product-main-image { width: 100%; aspect-ratio: 4 / 5; max-height: 760px; object-fit: contain; background: #f3f2ee; }
body.storefront-theme .storefront-product-page .product-thumbnail { border-radius: 7px; background: #f3f2ee; }
body.storefront-theme .storefront-product-page .th-trust { padding: 15px 0; border-top: 1px solid #eeeee8; border-bottom: 1px solid #eeeee8; border-radius: 0; background: transparent; }
body.storefront-theme .storefront-product-page .th-accordion { border-color: #e8e8e1; border-radius: 8px; }
body.storefront-theme .storefront-product-page .product-detail-tabs { margin-top: 42px; }
@media(max-width:760px) {
  body.storefront-theme .storefront-product-page { padding-top: 16px; }
  body.storefront-theme .storefront-product-page .product-layout { gap: 24px; }
  body.storefront-theme .storefront-product-page .product-info { gap: 16px; }
  body.storefront-theme .storefront-product-page .product-info h1 { font-size: 27px; }
  body.storefront-theme .storefront-product-page .product-price-wrap { padding: 14px 16px; }
  body.storefront-theme .storefront-product-page .product-price-wrap .price-current { font-size: 24px; }
  body.storefront-theme .storefront-product-page .product-gallery-standard .product-main-image { max-height: 520px; }
}
.storefront-theme .product-card-refined { display: grid; gap: 0; min-width: 0; align-content: start; background: #fff; border: 1px solid #ecece7; border-radius: 10px; overflow: hidden; transition: border-color .22s ease,box-shadow .22s ease; }
.storefront-theme .product-card-refined .product-media { position: relative; aspect-ratio: 4 / 5; margin: 0; border-radius: 0; border: 0; background: #f1f0ec; box-shadow: none; overflow: hidden; }
.storefront-theme .product-card-refined .product-media > a { display: block; width: 100%; height: 100%; }
.storefront-theme .product-card-refined .product-media img { width: 100%; height: 100%; object-fit: cover; transition: transform .5s cubic-bezier(.22,1,.36,1),opacity .3s ease; }
.storefront-theme .product-card-refined .product-card-hover-image { position: absolute; inset: 0; opacity: 0; pointer-events: none; }
.product-card-refined .product-card-label { position: absolute; z-index: 2; top: 12px; left: 12px; padding: 6px 9px; border-radius: 4px; background: #fffef8ed; backdrop-filter: blur(5px); color: #333; font-size: 9px; font-weight: 600; line-height: 1.2; letter-spacing: .02em; }
.storefront-theme .product-card-refined .product-meta { display: grid; gap: 9px; padding: 16px 16px 12px; text-align: left; justify-items: stretch; }
.product-card-category { overflow: hidden; color: #99998f; font-size: 9px; font-weight: 500; line-height: 1.4; letter-spacing: .075em; text-transform: uppercase; text-overflow: ellipsis; white-space: nowrap; }
.storefront-theme .product-card-refined .product-name-row { display: grid; justify-items: start; gap: 9px; }
.storefront-theme .product-card-refined .product-title { display: -webkit-box; min-height: 2.8em; margin: 0; overflow: hidden; -webkit-box-orient: vertical; -webkit-line-clamp: 2; font-size: 14px; font-weight: 500; line-height: 1.4; letter-spacing: -.02em; }
.storefront-theme .product-card-refined .price-stack { display: flex; flex-wrap: wrap; gap: 7px; align-items: baseline; }
.storefront-theme .product-card-refined .price-current { order: 0; color: #20221f; font-size: 15px; font-weight: 650; }
.storefront-theme .product-card-refined .price-old { display: inline; order: 1; color: #a1a198; font-size: 11px; font-weight: 400; }
.product-card-bottom { display: flex; align-items: center; justify-content: space-between; gap: 8px; min-height: 38px; padding-top: 9px; margin-top: 2px; border-top: 1px solid #efefe9; }
.storefront-theme .product-card-refined .swatches { display: flex; flex-wrap: wrap; align-items: center; gap: 5px; margin: 0; }
.storefront-theme .product-card-refined .swatch-btn { display: grid; place-items: center; width: 21px; height: 21px; padding: 3px; border: 1px solid transparent; border-radius: 50%; background: transparent; }
.storefront-theme .product-card-refined .swatch-btn.active { border-color: #999; box-shadow: none; }
.storefront-theme .product-card-refined .swatch { display: block; width: 13px; height: 13px; border-radius: 50%; border: 1px solid #0002; }
.product-card-more-colors { color: #888; font-size: 10px; }
.product-card-explore { display: grid; place-items: center; width: 30px; height: 30px; flex: 0 0 30px; border: 1px solid #e5e5df; border-radius: 50%; background: #fff; color: #333; transition: background .2s,color .2s,border-color .2s; }
.product-card-explore svg { width: 15px; height: 15px; }
@media(hover:hover) {
  .storefront-theme .product-card-refined:hover { border-color: #cccfc3; box-shadow: 0 7px 22px #17171708; }
  .storefront-theme .product-card-refined .product-media:hover .product-card-primary-image { transform: scale(1.035); }
  .storefront-theme .product-card-refined .product-media:hover .product-card-hover-image { opacity: 1; transform: scale(1.035); }
  .product-card-explore:hover { background: #171717; border-color: #171717; color: #fff; }
}
@media(max-width:760px) {
  .storefront-theme .product-card-refined { border-radius: 7px; }
  .storefront-theme .product-card-refined .product-meta { padding: 11px 10px 9px; gap: 7px; }
  .storefront-theme .product-card-refined .product-title { font-size: 12px; }
  .storefront-theme .product-card-refined .price:not(.price-old) { font-size: 16px; font-weight: 700; line-height: 1.3; }
  .storefront-theme .product-card-refined .price-old { font-size: 12px; }
  .product-card-refined .product-card-label { top: 8px; left: 8px; padding: 5px 7px; font-size: 8px; }
  .storefront-theme .product-card-refined .swatch-btn { width: 18px; height: 18px; padding: 2px; }
  .storefront-theme .product-card-refined .swatches { gap: 2px; }
  .product-card-explore { width: 27px; height: 27px; flex-basis: 27px; }
}
.footer-entry-strip { background: #191919; color: #f7f7f2; }
.footer-entry-inner { display: flex; align-items: center; justify-content: space-between; gap: 20px; width: min(1348px,91%); min-height: 46px; margin-inline: auto; padding-block: 10px; }
.footer-entry-brand { display: inline-flex; align-items: center; gap: 10px; min-width: 0; font-size: 10px; font-weight: 600; letter-spacing: .035em; }
.footer-entry-brand i { width: 6px; height: 6px; flex: 0 0 6px; border-radius: 50%; background: var(--brand-yellow,#ffda16); }
.footer-entry-inner > a { display: inline-flex; align-items: center; gap: 10px; flex-shrink: 0; color: #efefea; font-size: 10px; text-decoration: none; }
.footer-entry-inner > a:hover { color: var(--brand-yellow,#ffda16); }
.footer-entry-inner > a svg { width: 16px; height: 16px; }
@media(max-width:600px) {
  .footer-entry-inner { width: 90%; min-height: 42px; gap: 14px; }
  .footer-entry-brand { font-size: 9px; letter-spacing: 0; }
  .footer-entry-inner > a { font-size: 9px; gap: 5px; }
}
.storefront-footer-refined .footer-apps { display: grid; gap: 12px; width: 100%; margin-top: 25px; padding-top: 20px; border-top: 1px solid #ddddd5; }
.storefront-footer-refined .footer-apps > span { color: #818179; font-size: 10px; font-weight: 600; }
.storefront-footer-refined .footer-app-badges { display: flex; flex-wrap: wrap; gap: 9px; }
.storefront-theme .storefront-footer-refined .footer-col .footer-app-badges a { display: inline-flex; justify-content: flex-start; align-items: center; gap: 7px; width: 120px; height: 42px; padding: 6px 8px; border: 1px solid #444; border-radius: 7px; background: #171717; color: #fff; text-decoration: none; }
.storefront-theme .storefront-footer-refined .footer-col .footer-app-badges a:hover { background: #303030; color: #fff; text-decoration: none; transform: none; }
.storefront-footer-refined .footer-app-badges svg { width: 24px; height: 28px; flex: 0 0 24px; }
.storefront-footer-refined .footer-app-badges a > span { display: grid; gap: 3px; }
.storefront-footer-refined .footer-app-badges small { font-size: 7px; line-height: 1.2; color: #ddd; white-space: nowrap; }
.storefront-theme .storefront-footer-refined .footer-app-badges strong { font-size: 12px; line-height: 1.2; font-weight: 500; letter-spacing: -.02em; white-space: nowrap; text-transform: none; }
.storefront-theme .storefront-footer-refined { position: relative; padding-top: 0; border-top: 1px solid #deddd7; background: #f5f4f0; color: #20221f; }
.storefront-theme .storefront-footer-refined .footer-inner { display: grid; grid-template-columns: minmax(0,1fr) minmax(0,1.9fr); align-items: start; gap: clamp(28px,4vw,60px); width: min(1480px,100%); padding: 32px 4.5% 26px; }
.storefront-footer-refined .footer-brand { display: grid; grid-template-columns: minmax(0,1fr) auto; align-items: center; gap: 11px; min-width: 0; }
.storefront-footer-refined .footer-brand-content { display: contents; }
.storefront-footer-refined .footer-home-brand { grid-column: 1; grid-row: 1; }
.storefront-footer-refined .footer-brand-content > strong { grid-column: 1 / -1; grid-row: 2; }
.storefront-footer-refined .footer-brand-content > p { grid-column: 1 / -1; grid-row: 2; }
.storefront-theme .storefront-footer-refined .footer-brand > .footer-social { grid-column: 2; grid-row: 1; justify-self: end; }
.storefront-footer-refined .footer-brand > .footer-contact { grid-column: 1 / -1; grid-row: 3; }
.storefront-footer-refined .footer-brand > .payment-methods { grid-column: 1 / -1; grid-row: 4; justify-self: start; }
.footer-home-brand { display: inline-flex; align-items: center; width: fit-content; max-width: 100%; text-decoration: none; }
.footer-home-brand img { width: 175px; height: 44px; object-fit: contain; object-position: left center; }
.footer-home-brand > span { font-size: 23px; font-weight: 800; letter-spacing: -.045em; }
.storefront-theme .storefront-footer-refined .footer-brand-content > strong { max-width: 340px; font-size: clamp(19px,1.6vw,25px); font-weight: 600; line-height: 1.3; letter-spacing: -.035em; }
.storefront-theme .storefront-footer-refined .footer-brand-content > p { max-width: 340px; margin: 0; font-size: 12px; line-height: 1.85; color: #818179; }
.storefront-footer-refined .footer-link-grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 28px; padding-top: 5px; }
.storefront-theme .storefront-footer-refined .footer-col h3 { position: relative; margin: 0 0 22px; padding-bottom: 15px; border-bottom: 1px solid #ddddd5; font-size: 11px; font-weight: 700; letter-spacing: .09em; text-transform: uppercase; }
.storefront-footer-refined .footer-col ul { display: grid; gap: 12px; margin: 0; padding: 0; list-style: none; }
.storefront-theme .storefront-footer-refined .footer-col a { display: inline-block; color: #74756d; font-size: 12px; line-height: 1.6; text-decoration: none; overflow-wrap: anywhere; transition: color .15s ease; }
.storefront-theme .storefront-footer-refined .footer-col a:hover { color: #171717; text-decoration: underline; text-underline-offset: 4px; }
.storefront-theme .storefront-footer-refined .footer-social { display: flex; gap: 8px; margin: 0; }
.storefront-theme .storefront-footer-refined .footer-social a { width: 34px; height: 34px; border: 1px solid #ddddd5; border-radius: 9px; background: #fff9; color: #4a4b45; }
.storefront-theme .storefront-footer-refined .footer-social a:hover { background: #171717; border-color: #171717; color: #fff; }
.storefront-footer-refined .footer-social a svg { width: 15px; height: 15px; }
.storefront-footer-refined .footer-contact { display: grid; gap: 8px; margin: 0; width: 100%; padding-top: 12px; border-top: 1px solid #ddddd5; }
.storefront-footer-refined .footer-contact-item { gap: 10px; color: #74756d; font-size: 12px; text-decoration: none; }
.storefront-footer-refined .footer-contact-item span { min-width: 0; overflow-wrap: anywhere; }
.storefront-footer-refined .footer-contact-item svg { width: 15px; height: 15px; flex: 0 0 15px; color: #94958c; }
.storefront-theme .storefront-footer-refined .footer-bottom { display: grid; grid-template-columns: minmax(0,1fr) auto auto; width: min(1348px,91%); gap: 12px 24px; padding: 14px 0; border-top: 1px solid #ddddd5; color: #92938a; font-size: 10px; }
.storefront-footer-refined .footer-bottom > span { min-width: 0; line-height: 1.7; }
.storefront-footer-refined .footer-bottom-links { grid-column: 2; grid-row: 1; gap: 7px 14px; }
.storefront-footer-refined .footer-bottom-links a { color: #92938a; font-size: 10px; }
.storefront-footer-refined .payment-methods { grid-column: 2; grid-row: 1; justify-self: end; gap: 6px; opacity: .8; }
.storefront-footer-refined .payment-methods svg { width: 34px; height: 22px; }
.storefront-theme .storefront-footer-refined .site-credit { grid-column: 3; grid-row: 1; width: 220px; padding-top: 0; }
@media(max-width:980px) {
  .storefront-theme .storefront-footer-refined .footer-inner { grid-template-columns: 1fr; gap: 24px; padding: 28px 5% 24px; }
  .storefront-footer-refined .footer-brand { max-width: 520px; }
  .storefront-theme .storefront-footer-refined .footer-bottom { grid-template-columns: minmax(0,1fr) auto; }
  .storefront-footer-refined .footer-bottom-links { grid-column: 1; grid-row: 2; }
  .storefront-theme .storefront-footer-refined .site-credit { grid-column: 2; grid-row: 1 / span 2; }
}
@media(max-width:600px) {
  .storefront-footer-refined .footer-brand { gap: 14px 10px; }
  .storefront-footer-refined .footer-home-brand img { width: 145px; height: 38px; }
  .storefront-theme .storefront-footer-refined .footer-social a { width: 30px; height: 30px; }
  .storefront-footer-refined .footer-link-grid { grid-template-columns: repeat(2,minmax(0,1fr)); gap: 30px 20px; }
  .storefront-footer-refined .footer-col:last-child { grid-column: 1 / -1; }
  .storefront-footer-refined .footer-col:last-child ul { grid-template-columns: repeat(2,minmax(0,1fr)); gap: 10px 20px; }
  .storefront-theme .storefront-footer-refined .footer-bottom { grid-template-columns: minmax(0,1fr); width: 90%; gap: 12px; padding-block: 14px 18px; }
  .storefront-footer-refined .footer-bottom-links { grid-column: 1; grid-row: auto; }
  .storefront-footer-refined .payment-methods { grid-column: 1; grid-row: auto; justify-self: start; }
  .storefront-theme .storefront-footer-refined .site-credit { grid-column: 1; grid-row: auto; justify-self: center; width: min(270px,100%); margin-top: 5px; }
}
.site-footer .site-credit { grid-column: 1 / -1; grid-row: 2; justify-self: end; display: flex; justify-content: center; width: min(310px,100%); min-width: 0; padding-top: 10px; font-family: inherit; }
.site-footer .site-credit-link { display: grid; align-items: center; justify-items: center; width: 100%; min-height: 40px; border-radius: 4px; text-align: center; text-decoration: none; outline-offset: 5px; -webkit-tap-highlight-color: transparent; }
.site-footer .site-credit-link > span { grid-area: 1 / 1; max-width: 100%; transition: opacity .32s ease,transform .42s cubic-bezier(.22,.75,.3,1); }
.site-footer .site-credit-brand { display: grid; justify-items: center; opacity: 1; transform: translateY(0); }
.site-footer .site-credit-brand > strong { display: flex; align-items: baseline; color: #294b67; font-size: 21px; font-weight: 700; letter-spacing: -.8px; line-height: 1.1; }
.site-footer .site-credit-brand > strong > span { color: #338368; }
.site-footer .site-credit-brand i { width: 4px; height: 4px; margin-left: 2px; background: #338368; border-radius: 50%; }
.site-footer .site-credit-brand small { margin-top: 4px; color: #94a6ae; font-size: 7px; font-weight: 600; line-height: 1; letter-spacing: .19em; }
.site-footer .site-credit-message { display: flex; align-items: center; justify-content: center; gap: 8px; color: #84939c; font-size: 12px; line-height: 1.5; opacity: 0; transform: translateY(7px); pointer-events: none; }
.site-footer .site-credit-message strong { color: #31576b; font-weight: 600; }
.site-footer .site-credit-message > svg { flex-shrink: 0; width: 13px; height: 13px; color: #43856e; }
.site-footer .site-credit-link:focus-visible { outline: 2px solid #388b68; }
.site-footer .site-credit.is-open .site-credit-brand,.site-footer .site-credit:not(.is-dismissed) .site-credit-link:focus-visible .site-credit-brand { opacity: 0; transform: translateY(-7px); }
.site-footer .site-credit.is-open .site-credit-message,.site-footer .site-credit:not(.is-dismissed) .site-credit-link:focus-visible .site-credit-message { opacity: 1; transform: translateY(0); }
@media(hover:hover) {
  .site-footer .site-credit:not(.is-dismissed) .site-credit-link:hover .site-credit-brand { opacity: 0; transform: translateY(-7px); }
  .site-footer .site-credit:not(.is-dismissed) .site-credit-link:hover .site-credit-message { opacity: 1; transform: translateY(0); }
}
@media(max-width:760px) {
  .site-footer .site-credit,
  .storefront-theme .storefront-footer-refined .site-credit { grid-column: 1 / -1; grid-row: auto; justify-self: center; width: min(270px,100%); }
  .site-footer .site-credit-message { font-size: 11px; gap: 5px; }
}
@media(prefers-reduced-motion:reduce) { .site-footer .site-credit-link > span { transition: none; transform: none !important; } }
.storefront-theme .checkout-result-section { padding: clamp(32px,5vw,76px) 16px; background: radial-gradient(ellipse at 50% 0%,#f0eee6,transparent 65%),#f8f8f6; }
.storefront-theme .payment-result-card { position: relative; width: min(800px,100%); gap: 18px; padding: 0 clamp(22px,5vw,60px) 25px; overflow: hidden; border: 1px solid #e6e5df; border-radius: 20px; background: #fff; box-shadow: 0 18px 65px #2222220b; }
.payment-result-topline { display: flex; align-items: center; justify-content: space-between; gap: 18px; width: calc(100% + clamp(44px,10vw,120px)); margin-bottom: 20px; padding: 19px clamp(22px,5vw,60px); border-bottom: 1px solid #eee; background: #fbfbf9; }
.payment-result-topline a { max-width: 55%; color: #333; font-size: 12px; font-weight: 700; text-align: left; text-decoration: none; overflow-wrap: anywhere; }
.payment-result-topline span { color: #999; font-size: 9px; font-weight: 700; letter-spacing: .09em; text-align: right; }
.storefront-theme .payment-result-card :is(.checkout-success-icon,.checkout-fail-icon) { width: 74px; height: 74px; margin-bottom: 4px; border-radius: 24px; box-shadow: 0 0 0 9px #f6faf7; background: #e7f5eb; color: #27804c; }
.storefront-theme .payment-result-failed .checkout-fail-icon { background: #fff0e8; color: #b86e41; box-shadow: 0 0 0 9px #fffaf7; }
.storefront-theme .payment-result-pending .checkout-success-icon { background: #f8f0d7; color: #9a791f; box-shadow: 0 0 0 9px #fdfaf1; }
.storefront-theme .payment-result-card .eyebrow { margin-top: 8px; color: #777; font-size: 10px; letter-spacing: .13em; text-transform: uppercase; }
.storefront-theme .payment-result-card h1 { max-width: 590px; margin: 0; color: #20221f; font-size: clamp(29px,3.6vw,46px); font-weight: 600; line-height: 1.12; letter-spacing: -.045em; text-wrap: balance; }
.storefront-theme .payment-result-card :is(.checkout-success-text,.checkout-fail-text) { max-width: 530px; font-size: 14px; line-height: 1.8; color: #7a7b75; }
.storefront-theme .payment-result-card :is(.checkout-success-meta,.checkout-fail-meta) { gap: 0; margin-top: 8px; overflow: hidden; border: 1px solid #e8e8e2; border-radius: 12px; background: #fafaf7; }
.storefront-theme .payment-result-card :is(.checkout-success-meta,.checkout-fail-meta) > div { min-width: 0; padding: 20px 12px; border: 0; border-right: 1px solid #e8e8e2; border-radius: 0; background: transparent; }
.storefront-theme .payment-result-card :is(.checkout-success-meta,.checkout-fail-meta) > div:last-child { border-right: 0; }
.storefront-theme .payment-result-card :is(.checkout-success-meta,.checkout-fail-meta) span { color: #999; font-size: 10px; }
.storefront-theme .payment-result-card :is(.checkout-success-meta,.checkout-fail-meta) strong { font-size: 13px; overflow-wrap: anywhere; }
.payment-result-help { width: 100%; padding: 17px 20px; border: 1px solid #eee8de; border-radius: 11px; background: #fdfbf7; text-align: left; }
.payment-result-help strong { font-size: 12px; color: #776346; }
.payment-result-help p { margin: 6px 0 0; color: #8b8172; font-size: 12px; line-height: 1.8; }
.storefront-theme .payment-result-card .button-row { display: flex; justify-content: center; flex-wrap: wrap; width: 100%; gap: 10px; margin-top: 8px; }
.storefront-theme .payment-result-card .button-row .btn { min-width: 185px; padding-inline: 22px; border-radius: 8px; font-size: 13px; }
.storefront-theme .payment-result-card .checkout-result-note { max-width: 530px; margin: 0; padding: 0; background: transparent; border: 0; color: #888; font-size: 11px; line-height: 1.8; }
.payment-result-bottom { display: flex; justify-content: center; align-items: center; gap: 8px; width: 100%; margin-top: 8px; padding-top: 19px; border-top: 1px solid #eee; color: #999; font-size: 10px; }
.payment-result-bottom svg { width: 17px; height: 17px; flex-shrink: 0; }
@media(max-width:600px) {
  .storefront-theme .payment-result-card { border-radius: 14px; gap: 15px; }
  .storefront-theme .payment-result-card :is(.checkout-success-meta,.checkout-fail-meta) { grid-template-columns: 1fr; }
  .storefront-theme .payment-result-card :is(.checkout-success-meta,.checkout-fail-meta) > div { display: flex; align-items: center; justify-content: space-between; gap: 12px; padding: 14px 16px; border-right: 0; border-bottom: 1px solid #e8e8e2; text-align: right; }
  .storefront-theme .payment-result-card :is(.checkout-success-meta,.checkout-fail-meta) > div:last-child { border-bottom: 0; }
  .storefront-theme .payment-result-card .button-row .btn { width: 100%; }
}
.checkout-card-dialog[hidden] { display: none !important; }
.checkout-card-dialog { position: fixed; inset: 0; z-index: 1400; display: grid; place-items: center; padding: 22px; }
.checkout-card-shade { position: absolute; inset: 0; width: 100%; height: 100%; border: 0; background: rgb(12 17 23 / 65%); backdrop-filter: blur(5px); }
.checkout-card-window { position: relative; display: flex; flex-direction: column; width: min(520px,100%); max-height: calc(100dvh - 44px); overflow: hidden; border-radius: 18px; background: #fff; box-shadow: 0 28px 90px #0004; }
.checkout-card-head { position: relative; display: flex; justify-content: space-between; align-items: flex-start; gap: 16px; padding: 26px; overflow: hidden; border-bottom: 1px solid #e6e5df; background-color: #f6f5f0; background-image: radial-gradient(circle at 100% 0,rgb(255 218 22 / 17%),transparent 58%),radial-gradient(circle,rgb(23 23 23 / 5%) .8px,transparent 1px); background-size: auto,12px 12px; }
.checkout-card-heading { min-width: 0; }
.checkout-card-heading-top { display: flex; align-items: center; gap: 10px; margin-bottom: 16px; }
.checkout-card-lock { display: grid; place-items: center; width: 36px; height: 36px; border: 1px solid #171717; border-radius: 11px; background: #171717; color: #ffda16; box-shadow: 0 4px 10px #0001; }
.checkout-card-lock svg { width: 21px; height: 21px; }
.checkout-card-eyebrow { color: #64645e; font-size: 9px; font-weight: 800; letter-spacing: .14em; }
.storefront-theme .checkout-card-head h2 { margin: 0; max-width: 330px; color: #171717; font-size: clamp(24px,3vw,30px); font-weight: 700; line-height: 1.12; letter-spacing: -.045em; }
.checkout-card-title-dot { color: #b58b00; }
.checkout-card-heading p { margin: 9px 0 0; color: #77766e; font-size: 12px; line-height: 1.5; }
.checkout-card-networks { display: flex; flex-wrap: wrap; gap: 7px; margin-top: 16px; }
.checkout-card-networks span { padding: 4px 8px; border: 1px solid #dfdfd8; border-radius: 5px; background: #ffffffa8; color: #52524b; font-size: 9px; font-weight: 800; letter-spacing: .025em; }
.checkout-card-close { width: 34px; height: 34px; border: 1px solid #ddd; border-radius: 50%; background: #fff; font-size: 24px; line-height: 1; }
.checkout-card-body { min-height: 0; overflow-y: auto; padding: 22px 26px; scrollbar-width: thin; scrollbar-color: #bbb transparent; overscroll-behavior: contain; }
.checkout-card-total { display: flex; align-items: center; justify-content: space-between; gap: 12px; padding: 16px; margin-bottom: 22px; border-radius: 9px; background: #f3f4f4; font-size: 13px; }
.checkout-card-total strong { font-size: 22px; }
.checkout-card-body .checkout-grid { gap: 16px; }
.checkout-card-body .checkout-field { min-width: 0; }
.checkout-card-body [data-paytr-card="cc_owner"],.checkout-card-body [data-paytr-card="card_number"] { letter-spacing: .03em; }
.checkout-card-body .checkout-field:has([data-paytr-card="cc_owner"]),.checkout-card-body .checkout-field:has([data-paytr-card="card_number"]) { grid-column: 1 / -1; }
.checkout-card-assurance { display: flex; align-items: flex-start; gap: 11px; margin: 20px 0 0; padding: 13px 14px; border: 1px solid #e4eae6; border-radius: 9px; background: #f5f8f6; color: #637168; }
.checkout-card-assurance > svg { flex: 0 0 20px; width: 20px; height: 20px; margin-top: 1px; color: #367752; }
.checkout-card-assurance > div { min-width: 0; }
.checkout-card-assurance strong { display: block; margin-bottom: 3px; color: #344d3f; font-size: 11px; font-weight: 600; line-height: 1.5; }
.checkout-card-assurance p { margin: 0; font-size: 11px; line-height: 1.6; text-wrap: pretty; }
.checkout-card-networks svg { width: 48px; height: 30px; }
.checkout-card-networks img { width: 70px; height: 30px; object-fit: contain; }
.checkout-card-networks-footer { justify-content: center; align-items: center; margin: 0; gap: 13px; }
.checkout-card-foot { display: grid; gap: 12px; padding: 18px 26px; border-top: 1px solid #eee; }
.checkout-card-foot .btn { background: #171717; color: #fff; }
.checkout-card-foot span { text-align: center; color: #888; font-size: 10px; letter-spacing: .08em; }
body.checkout-card-dialog-open { overflow: hidden; }
@media(max-width: 760px) {
  .checkout-card-dialog { padding: 12px; }
  .checkout-card-window { max-height: calc(100dvh - 24px); border-radius: 14px; }
  .checkout-card-head,.checkout-card-body,.checkout-card-foot { padding: 18px; }
  .checkout-card-body .checkout-grid.two { grid-template-columns: repeat(2,minmax(0,1fr)); }
}
.storefront-theme {
  --ink: #171717;
  --paper: #fff;
  --soft: #f3f3f3;
  --line: #e5e5e5;
  --accent: #171717;
  --brand-yellow: #ffda16;
  --header-height: 78px;
  --font-sans: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Arial, Helvetica, sans-serif;
  --font-display: "Sora", "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Arial, Helvetica, sans-serif;
  font-family: var(--font-sans);
  font-size: 15px;
  font-weight: 400;
  line-height: 1.6;
  letter-spacing: -0.01em;
  font-optical-sizing: auto;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  text-rendering: optimizeLegibility;
}
.storefront-theme button, .storefront-theme input, .storefront-theme textarea, .storefront-theme select { font-family: inherit; font-weight: 400; }
.storefront-theme h1, .storefront-theme h2, .storefront-theme h3 { font-family: var(--font-display, 'Sora', 'Inter', sans-serif); font-weight: 600; line-height: 1.14; letter-spacing: -0.025em; text-transform: none; text-wrap: balance; }
.storefront-theme .announcement { background: #1a1a1a; min-height: 40px; color: #fff; font-size: 12px; font-weight: 700; text-transform: none; letter-spacing: 0; }
.storefront-theme .announcement-track { display: grid; grid-template-columns: 28px minmax(0,auto) 28px; width: fit-content; max-width: 100%; min-height: 40px; margin: 0 auto; padding: 0 10px; align-items: center; animation: none; gap: 7px; }
.storefront-theme .announcement-list { position: relative; display: flex; align-items: center; justify-content: center; min-width: 0; width: auto; max-width: calc(100vw - 100px); min-height: 40px; overflow: hidden; }
.storefront-theme .announcement-item { display: none; max-width: 100%; margin: 0; overflow: hidden; color: inherit; font-size: 12px; font-weight: 700; line-height: 1.2; text-align: center; text-overflow: ellipsis; white-space: nowrap; }
.storefront-theme .announcement-item.is-active { display: block; animation: announcement-item-in .22s ease both; }
@keyframes announcement-item-in { from { opacity: 0; transform: translateY(5px); } to { opacity: 1; transform: translateY(0); } }
.storefront-theme .announcement-control { display: grid; place-items: center; width: 28px; height: 40px; padding: 0; border: 0; background: transparent; color: #fff; cursor: pointer; opacity: .72; transition: opacity .15s ease; }
.storefront-theme .announcement-control:hover { opacity: 1; }
.storefront-theme .announcement-control:disabled { visibility: hidden; }
.storefront-theme .announcement-control svg { width: 7px; height: 10px; fill: none; stroke: currentColor; stroke-width: 2; }
.storefront-theme .site-header,.storefront-home .site-header { background: var(--site-header-background,#fff); border: 0; border-bottom: 1px solid var(--site-header-border,#e7e7e7); color: var(--site-header-text,#171717); backdrop-filter: none; }
.storefront-theme .site-header :is(.brand,.nav-link,.icon-btn,.header-search,.language-menu summary) { color: var(--site-header-text,#171717); }
.storefront-theme .site-header :is(.nav-link,.icon-btn,.header-search,.language-menu summary):hover { color: var(--site-header-hover,#e31b2f); }
.storefront-theme .site-header .nav-link:hover { color: var(--site-header-hover,#e31b2f); }
.storefront-theme .site-header :is(.header-search,.language-menu summary) { border-color: var(--site-header-border,#e7e7e7); background: transparent; }
.storefront-theme .site-header .brand span { color: var(--site-header-hover,#e31b2f); }
.storefront-theme .site-header .cart-count { background: var(--site-header-hover,#e31b2f); color: #fff; }
.storefront-theme .header-inner { max-width: 1800px; min-height: 78px; gap: 20px; padding: 0 3.2%; }
.storefront-theme .brand { font-size: 31px; font-style: italic; letter-spacing: -.06em; font-weight: 800; }
.storefront-theme .brand span { font-style: normal; color: inherit; font-size: 9px; letter-spacing: .22em; }
.storefront-theme .brand-logo { width: 160px; }
.storefront-theme .desktop-nav { gap: 0; justify-content: flex-start; }
.storefront-theme .nav-link { font-size: 15px; font-weight: 600; letter-spacing: 0; text-transform: none; padding: 0 13px; min-height: 78px; }
.storefront-theme .nav-link:hover { text-decoration: underline; text-underline-offset: 6px; }
.storefront-theme .header-actions { gap: 10px; }
.storefront-theme .header-actions .account-link { display: inline-flex; align-items: center; gap: 8px; width: auto; min-width: 36px; padding: 5px 8px; text-decoration: none; }
.storefront-theme .header-actions :is(.account-link,.header-account-trigger) { border-radius: 9px; border: 1px solid transparent; box-shadow: none; }
.storefront-theme .header-actions :is(.account-link,.header-account-trigger):hover { border-color: #e9e7df; background: #f7f6f2; }
.storefront-theme .header-actions :is(.account-link,.header-account-trigger):focus-visible { outline: 2px solid var(--site-header-hover,#b29961); outline-offset: 3px; }
.storefront-theme .header-actions .account-link > svg { flex: 0 0 auto; }
.header-member-copy { display: grid; gap: 2px; max-width: 105px; text-align: left; line-height: 1.2; }
.header-member-copy small { font-size: 9px; font-weight: 400; opacity: .65; }
.header-member-copy strong { overflow: hidden; font-size: 12px; font-weight: 700; text-overflow: ellipsis; white-space: nowrap; }
@media (max-width: 760px) {
  .storefront-theme .header-actions .account-link { display: inline-flex; gap: 4px; padding-inline: 3px; }
  .header-member-copy { max-width: 64px; }
  .header-member-copy small { display: none; }
  .header-member-copy strong { font-size: 10px; }
  .storefront-theme .header-actions .account-link svg { width: 18px; height: 18px; }
}
.storefront-theme .header-bulk-link { display: none; }
.storefront-theme .header-special-order { display: inline-flex; align-items: center; gap: 8px; flex-shrink: 0; margin-left: 12px; padding: 9px 13px; border: 1px solid #e6bc57; border-radius: 9px; background: #fff4d6; color: #513b0b; text-decoration: none; transition: background .2s, border-color .2s; }
.storefront-theme .header-special-order svg { width: 21px; height: 21px; flex-shrink: 0; animation: header-special-star-spin 10s linear infinite; transform-origin: center; }
@keyframes header-special-star-spin { to { transform: rotate(360deg); } }
@media (prefers-reduced-motion: reduce) {
  .storefront-theme .header-special-order svg { animation: none; }
}
.storefront-theme .header-special-order span { display: grid; gap: 3px; line-height: 1.15; }
.storefront-theme .header-special-order strong { font-size: 13px; font-weight: 750; white-space: nowrap; }
.storefront-theme .header-special-order small { font-size: 9px; font-weight: 500; white-space: nowrap; }
.storefront-theme .header-special-order:is(:hover,[aria-current="page"]) { background: #ffe8a5; border-color: #c69421; }
.storefront-theme .header-special-order:focus-visible { outline: 2px solid #9c6e10; outline-offset: 3px; }
.storefront-theme .mobile-menu-list .mobile-special-order { margin-bottom: 10px; padding: 15px; border: 1px solid #e6bc57; border-radius: 10px; background: #fff4d6; color: #513b0b; }
.storefront-theme .mobile-special-order-copy { display: grid; gap: 5px; }
.storefront-theme .mobile-special-order-copy strong { font-size: 16px; }
.storefront-theme .mobile-special-order-copy small { font-size: 11px; font-weight: 500; }
@media (min-width: 981px) and (max-width: 1250px) {
  .storefront-theme .header-special-order { margin-left: 5px; padding: 8px; gap: 5px; }
  .storefront-theme .header-special-order strong { font-size: 11px; }
  .storefront-theme .header-inner { gap: 12px; }
  .storefront-theme .header-search { width: 130px; }
}
.storefront-theme .header-search { order: -1; width: 174px; justify-content: flex-start; gap: 8px; padding: 0 10px; border: 1px solid #0002; border-radius: 5px; height: 34px; }
.storefront-theme .header-search svg { width: 16px; }
.storefront-theme .header-search span { font-size: 12px; }
.storefront-theme .language-menu summary { border: 0; background: transparent; padding: 0 4px; }
.storefront-theme .mega-panel { top: 78px; border: 0; border-radius: 0 0 8px 8px; }
.storefront-theme .btn { border-radius: 5px; text-transform: none; font-size: 15px; letter-spacing: 0; min-height: 46px; font-weight: 600; box-shadow: none; }
.storefront-theme .btn.light { background: #fff; color: #171717; border-color: #fff; }
.storefront-theme .btn.ghost { background: transparent; color: var(--ink); border-color: #d3d3d3; }
.storefront-theme .section { padding: 42px 3.2% 58px; }
.storefront-theme .container { width: 100%; max-width: 1700px; margin-inline: auto; }
.storefront-theme .section.alt { background: #fff; }
.storefront-theme .section-head { margin-bottom: 26px; }
.storefront-theme .section-head h2 { font-size: clamp(28px, 2.9vw, 44px); font-weight: 500; letter-spacing: -.01em; }
.storefront-theme .eyebrow { letter-spacing: .02em; text-transform: none; }
.storefront-promo { background: var(--promo-background, var(--brand-yellow)); color: var(--promo-text, #171717); min-height: 178px; padding: 18px 3.2%; display: grid; grid-template-columns: 160px minmax(0, 1fr) auto; align-items: center; gap: 28px; overflow: hidden; }
.storefront-promo-copy { max-width: 940px; position: relative; z-index: 2; }
.storefront-promo-art { position: relative; display: grid; place-items: center; min-width: 0; height: 142px; }
.storefront-promo-art img,.storefront-promo-art video { display: block; width: 100%; height: 100%; max-width: 145px; max-height: 132px; object-fit: contain; object-position: center; }
.storefront-promo .eyebrow { display: inline-block; margin: 0 0 12px; background: var(--ink); color: var(--brand-yellow); padding: 5px 12px; font-size: 15px; font-weight: 700; transform: rotate(-3deg); }
.storefront-theme .storefront-promo h1 { max-width: 100%; min-width: 0; font-family: 'Caveat', 'Segoe Print', cursive; font-size: clamp(36px,4.3vw,64px); font-weight: 600; line-height: 1.08; margin: 0; text-transform: none; letter-spacing: -.02em; text-wrap: balance; word-break: normal; overflow-wrap: normal; }
.storefront-promo .btn { flex-shrink: 0; padding-inline: 30px; font-size: 18px; min-height: 54px; }
.storefront-theme .hero-slider { --hero-image-ratio: 3.4; width: 100%; max-width: none; margin: 0; border-radius: 0; height: auto; min-height: 0; max-height: none; aspect-ratio: var(--hero-image-ratio); }
.storefront-theme .hero-slide { inset: 0; width: 100%; height: 100%; background-position: center center; background-size: contain; }
.storefront-theme .hero-banner-image { display: none; }
.storefront-theme .hero-content { display: flex; flex-direction: column; width: 100%; max-width: none; align-items: flex-end; justify-content: flex-end; text-align: right; padding: 55px 3.2%; height: 100%; gap: 18px; }
.storefront-theme .hero-copy-panel { display: grid; justify-items: end; gap: 15px; width: min(470px, 44vw); margin-right: 2.8%; padding: 25px 27px 27px; border: 1px solid rgba(255,255,255,.22); border-radius: 8px; background: rgba(10,10,10,.58); box-shadow: 0 16px 45px rgba(0,0,0,.2); backdrop-filter: blur(5px); -webkit-backdrop-filter: blur(5px); }
.storefront-theme .hero h1, .storefront-theme .hero h2 { max-width: 750px; font-size: clamp(40px, 4.8vw, 76px); font-weight: 500; line-height: 1.02; margin: 0; letter-spacing: -.045em; text-transform: none; }
.storefront-theme .hero p { max-width: 560px; font-weight: 600; font-size: 15px; margin: 0; }
.storefront-theme .hero .button-row { justify-content: flex-end; }
.storefront-theme .hero-copy-panel h1 { max-width: 100%; font-size: clamp(34px,3.35vw,54px); line-height: .98; overflow-wrap: anywhere; }
.storefront-theme .hero-copy-panel p { max-width: 390px; color: rgba(255,255,255,.9); font-size: clamp(13px,1.05vw,16px); line-height: 1.55; }
.storefront-theme .hero-copy-panel .button-row { width: 100%; margin-top: 3px; }
.storefront-theme .hero-copy-panel .btn { min-width: 142px; padding-inline: 24px; }
.storefront-theme .slider-dots { bottom: 18px; }
.storefront-theme .slider-arrow { width: 34px; height: 34px; }
.storefront-home .hero::after { background: linear-gradient(90deg,transparent 35%,rgba(0,0,0,.08) 60%,rgba(0,0,0,.62)); }
.storefront-home .hero-content { padding-bottom: 64px; }
.storefront-home .hero-content p { order: -1; font-size: 15px; font-weight: 500; }
.storefront-home .hero-content h1 { max-width: 680px; }
.storefront-theme .product-grid { gap: 28px 12px; grid-template-columns: repeat(4, minmax(0, 1fr)); }
.storefront-theme .product-card { gap: 12px; align-content: start; }
.storefront-theme .product-media, .storefront-theme .product-carousel .product-media { border-radius: 4px; box-shadow: none; background: #f1f0f0; }
.storefront-theme .product-name-row { display: grid; justify-content: start; gap: 6px; }
.storefront-theme .product-title { font-size: 15px; line-height: 1.4; font-weight: 500; letter-spacing: 0; }
.storefront-theme .price-stack { display: inline-flex; flex-wrap: wrap; align-items: baseline; gap: 8px; }
.storefront-theme .price { font-size: 14px; font-weight: 500; }
.storefront-theme .price-old { font-size: 12px; color: #777; }
.storefront-theme .product-meta { gap: 6px; }
.storefront-theme .badge { padding: 3px 6px; border-radius: 2px; font-size: 10px; background: #fff; color: #171717; text-transform: uppercase; letter-spacing: .025em; }
.storefront-theme .product-carousel-btn { box-shadow: none; border: 1px solid #ddd; }
.storefront-theme .swatch-btn { border-radius: 50%; }
.storefront-theme .campaign-hint { color: #555; font-size: 10px; }
.storefront-text-link { color: #171717; font-size: 13px; font-weight: 700; text-decoration: underline; text-underline-offset: 4px; }
.storefront-product-run { border-bottom: 1px solid #e7e7e7; }
.storefront-home-products .section-head { align-items: end; }
.storefront-home-products .section-head h2 { margin-top: 4px; font-size: clamp(28px,2.7vw,42px); font-weight: 500; }
.storefront-home-products .section-head .eyebrow { color: #5f5f5f; font-size: 13px; }
.storefront-home-products .product-carousel .product-card,
.storefront-product-run .product-carousel .product-card { flex: 0 0 calc((100% - 36px)/4); width: calc((100% - 36px)/4); }
.storefront-home-products .product-card,
.storefront-product-run .product-card { gap: 10px; }
.storefront-home-products .product-carousel-track,
.storefront-product-run .product-carousel-track { gap: 12px; }
.storefront-home-products .product-media,
.storefront-product-run .product-media { aspect-ratio: 4/5; border-radius: 0; background: #f0eeee; }
.storefront-home-products .product-media img,
.storefront-product-run .product-media img { object-fit: cover; transform: scale(1); transition: transform .45s cubic-bezier(.22,1,.36,1), opacity .3s ease; }
.storefront-home-products .product-media:hover .product-card-primary-image,
.storefront-product-run .product-media:hover .product-card-primary-image { transform: scale(1.035); }
.storefront-home-products .product-card-hover-image,
.storefront-product-run .product-card-hover-image { position: absolute; inset: 0; opacity: 0; transition: opacity .28s ease; }
.storefront-home-products .product-media:hover .product-card-hover-image,
.storefront-product-run .product-media:hover .product-card-hover-image { opacity: 1; transform: scale(1.035); }
.storefront-home-products .badge,
.storefront-product-run .badge { display: none; }
.storefront-home-products .product-meta,
.storefront-product-run .product-meta { gap: 3px; padding: 10px 0 0; justify-items: start; text-align: left; }
.storefront-home-products .product-name-row,
.storefront-product-run .product-name-row { display: grid; gap: 3px; justify-items: start; text-align: left; }
.storefront-home-products .product-title,
.storefront-product-run .product-title { font-size: 14px; font-weight: 700; line-height: 1.2; }
.storefront-home-products .price-stack,
.storefront-product-run .price-stack { display: flex; justify-content: flex-start; align-items: baseline; gap: 7px; }
.storefront-home-products .price,
.storefront-product-run .price { font-size: 14px; font-weight: 400; }
.storefront-home-products .price-old,
.storefront-product-run .price-old { display: none; }
.storefront-home-products .price-current,
.storefront-product-run .price-current { order: 1; color: #171717; font-size: 14px; font-weight: 400; }
.storefront-home-products .swatches,
.storefront-product-run .swatches,
.storefront-home-products .campaign-hint,
.storefront-product-run .campaign-hint { display: none; }
.storefront-section-cta { display: flex; justify-content: center; padding-top: 22px; }
.storefront-section-cta .btn { min-width: 190px; }
.storefront-theme .storefront-products-flush { padding: 28px 3.2% 42px; }
.storefront-products-flush > .container { max-width: none; }
.storefront-products-flush .product-carousel { padding-top: 0; }
.storefront-products-flush .product-carousel-dots { display: none; }
.storefront-video-editorial { position: relative; display: grid; align-items: end; min-height: 590px; margin-bottom: 32px; overflow: hidden; background: #171717; color: #fff; }
.storefront-video-editorial video { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; }
.storefront-video-editorial::after { content: ''; position: absolute; inset: 0; background: linear-gradient(90deg,rgba(0,0,0,.72),rgba(0,0,0,.12) 65%,transparent); pointer-events: none; }
.storefront-video-editorial-copy { position: relative; z-index: 1; width: min(620px,90%); padding: 54px 3.2%; }
.storefront-video-editorial-copy p { margin: 0 0 8px; font-size: 15px; font-weight: 600; }
.storefront-video-editorial-copy h2 { margin: 0 0 14px; font-size: clamp(48px,5.8vw,88px); font-weight: 500; line-height: .96; letter-spacing: -.055em; }
.storefront-video-editorial-copy span { display: block; margin-bottom: 24px; font-size: 15px; }
.storefront-theme .collection-hero { min-height: 220px; height: 260px; }
.storefront-theme .collection-title h1 { font-size: clamp(34px, 4vw, 58px); line-height: 1.1; }
.storefront-theme .collection-toolbar { padding-block: 18px; border-bottom: 1px solid var(--line); margin-bottom: 25px; gap: 14px; }
.storefront-theme .filter-btn { border-radius: 4px; text-transform: none; }
.storefront-theme .sort-select { border-radius: 4px; font-size: 13px; }
.storefront-theme .category-strip { gap: 16px; }
.storefront-theme .category-pill { border-radius: 4px; }
.storefront-wide-banner { min-height: 530px; position: relative; display: flex; align-items: flex-end; justify-content: flex-end; overflow: hidden; background: #ecebea; }
.storefront-wide-banner > img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; }
.storefront-wide-banner > picture { position: absolute; inset: 0; width: 100%; height: 100%; }
.storefront-wide-banner > picture > img { width: 100%; height: 100%; object-fit: cover; }
.storefront-wide-banner::after { content: ''; position: absolute; inset: 0; background: linear-gradient(90deg, transparent, #0006); }
.storefront-wide-copy { position: relative; z-index: 1; padding: 50px 3.2%; text-align: right; color: #fff; max-width: 720px; }
.storefront-wide-copy h2 { font-size: clamp(38px, 4.8vw, 72px); font-weight: 500; line-height: 1.05; margin: 12px 0 24px; }
.storefront-wide-copy p { font-size: 16px; }
.storefront-wide-actions { display: flex; justify-content: flex-end; gap: 10px; }
.storefront-wide-actions .btn { min-width: 138px; }
.storefront-custom { position: relative; min-height: 590px; background: #252525; color: #fff; display: grid; align-items: end; overflow: hidden; }
.storefront-custom-media { position: absolute; inset: 0; }
.storefront-custom img { width: 100%; height: 100%; object-fit: cover; object-position: center; filter: brightness(.62); transform: scale(1.01); }
.storefront-custom::after { content: ''; position: absolute; inset: 0; background: linear-gradient(90deg,rgba(0,0,0,.78),rgba(0,0,0,.2) 58%,transparent); pointer-events: none; }
.storefront-custom-copy { position: relative; z-index: 2; padding: 58px 6%; max-width: 660px; }
.storefront-custom h2 { font-size: clamp(40px, 4.6vw, 70px); font-weight: 500; line-height: 1.02; margin: 12px 0 20px; }
.storefront-custom p { max-width: 450px; color: #fff; font-size: 16px; }
.storefront-custom .eyebrow { color: #fff; }
.storefront-categories { padding-top: 64px; padding-bottom: 70px; }
.storefront-categories .category-pill { min-height: 390px; }
.storefront-categories .category-pill img { transition: transform .5s ease; }
.storefront-categories .category-pill:hover img { transform: scale(1.035); }
.storefront-featured-story { padding: 0; }
.storefront-featured-story .home-collection-band { max-width: none; min-height: 560px; gap: 0; }
.storefront-featured-story .home-collection-media img { height: 560px; border-radius: 0; object-fit: cover; }
.storefront-featured-story .home-collection-panel { display: flex; flex-direction: column; justify-content: center; padding: 56px 8%; border-radius: 0; background: #ececea; }
.storefront-featured-story .home-collection-panel h2 { font-size: clamp(38px,4vw,64px); font-weight: 500; line-height: 1; }
.storefront-collection-editorial { position: relative; display: block; min-height: 0; padding: clamp(44px,5vw,78px) 3.2%; overflow: hidden; background: linear-gradient(180deg,#f7f5f1 0,#eeece6 100%); color: #171717; }
.storefront-collection-card { position: relative; display: grid; grid-template-columns: minmax(0,1.05fr) minmax(320px,.95fr); align-items: stretch; overflow: hidden; border: 1px solid #e7e4dd; border-radius: 8px; background: #fff; box-shadow: 0 28px 60px rgb(0 0 0 / 8%),0 2px 6px rgb(0 0 0 / 4%); }
.storefront-collection-showcase { position: relative; display: grid; place-items: center; width: 100%; height: clamp(380px,38vw,560px); padding: clamp(24px,4vw,58px); overflow: hidden; background: radial-gradient(110% 85% at 50% 8%,#f8f5ef 0,#efebE2 58%,#e5e0d6 100%); }
.storefront-collection-showcase::before { position: absolute; inset: 9% 12%; content: ''; border: 1px solid rgb(23 23 23 / 10%); border-radius: 50%; }
.storefront-collection-showcase::after { position: absolute; top: -20%; right: -12%; width: 50%; aspect-ratio: 1; content: ''; border-radius: 50%; background: radial-gradient(circle,rgb(255 218 22 / 34%) 0,rgb(255 218 22 / 11%) 42%,transparent 68%); pointer-events: none; }
.storefront-collection-product-stage { position: relative; width: 100%; height: 100%; min-width: 0; min-height: 0; }
.storefront-collection-product-stage img { position: absolute; inset: 0; display: block; width: 100%; height: 100%; object-fit: contain; object-position: center; mix-blend-mode: multiply; filter: saturate(1.05) contrast(1.02); transition: opacity .3s ease; }
.storefront-collection-showcase-label,.storefront-collection-showcase-count { position: absolute; z-index: 2; top: 18px; display: inline-flex; align-items: center; gap: 8px; padding: 8px 13px; border-radius: 999px; font-size: 10px; font-weight: 800; letter-spacing: .09em; text-transform: uppercase; }
.storefront-collection-showcase-label { left: 18px; background: #171717; color: #fff; box-shadow: 0 8px 20px rgb(0 0 0 / 18%); }
.storefront-collection-showcase-label::before { width: 6px; height: 6px; border-radius: 50%; background: var(--brand-yellow,#ffda16); content: ''; }
.storefront-collection-showcase-count { right: 18px; border: 1px solid rgb(23 23 23 / 12%); background: rgb(255 255 255 / 84%); color: #2a2a2a; backdrop-filter: blur(6px); }
.storefront-collection-editorial::after { display: none; }
.storefront-collection-editorial-copy { position: relative; z-index: 1; display: flex; flex-direction: column; align-items: flex-start; justify-content: center; padding: clamp(26px,3.2vw,44px) clamp(28px,4vw,58px); border-left: 1px solid #e9e6df; background: #fff; color: #171717; }
.storefront-collection-editorial-copy > * { position: relative; z-index: 1; }
.storefront-collection-editorial-copy::before { content: none; }
.storefront-collection-editorial-copy p { order: 2; margin: 0 0 26px; max-width: 44ch; color: #6e6e6e; font-size: 15px; font-weight: 400; line-height: 1.7; }
.storefront-collection-editorial-copy h2 { order: 1; margin: 0 0 26px; font-size: clamp(38px,4.2vw,62px); font-weight: 700; line-height: 1; letter-spacing: -.045em; color: #141414; }
.storefront-collection-facts { order: 3; display: flex; flex-wrap: wrap; align-items: stretch; gap: 0; width: 100%; margin: 0 0 28px; border-top: 1px solid #ebe9e3; border-bottom: 1px solid #ebe9e3; }
.storefront-collection-facts span { display: inline-flex; align-items: center; gap: 8px; min-height: 50px; padding: 0 20px; border: 0; color: #7a7a7a; font-size: 11px; font-weight: 600; letter-spacing: .08em; text-transform: uppercase; }
.storefront-collection-facts span:first-child { padding-left: 0; }
.storefront-collection-facts span + span { border-left: 1px solid #ebe9e3; }
.storefront-collection-facts strong { color: #141414; font-size: 18px; font-weight: 800; letter-spacing: -.02em; }
.storefront-collection-facts i { width: 7px; height: 7px; border-radius: 50%; background: #35d07f; box-shadow: 0 0 0 3px rgb(53 208 127 / 18%); }
.storefront-collection-gallery { order: 4; display: flex; flex-direction: column; gap: 13px; width: 100%; margin: 0 0 30px; }
.storefront-collection-gallery-label { display: flex; align-items: center; gap: 12px; color: #9c9c9c; font-size: 10px; font-weight: 800; letter-spacing: .2em; text-transform: uppercase; }
.storefront-collection-gallery-label::after { flex: 1; height: 1px; background: #eceae4; content: ''; }
.storefront-collection-thumbs { display: flex; flex-wrap: wrap; gap: 10px; }
.storefront-collection-thumb { position: relative; width: 66px; aspect-ratio: 1; padding: 0; overflow: hidden; border: 1px solid #e6e3dc; border-radius: 5px; background: #f5f3ef; cursor: pointer; transition: border-color .2s ease, transform .2s ease, box-shadow .2s ease; }
.storefront-collection-thumb img { display: block; width: 100%; height: 100%; object-fit: cover; object-position: center; }
.storefront-collection-thumb:hover { transform: translateY(-3px); border-color: #c8c4ba; box-shadow: 0 10px 20px rgb(0 0 0 / 12%); }
.storefront-collection-thumb.is-active { border-color: #171717; box-shadow: 0 0 0 2px var(--brand-yellow,#ffda16); }
.storefront-collection-actions { order: 5; display: flex; align-items: center; flex-wrap: wrap; gap: 22px; }
.storefront-collection-editorial-copy .storefront-collection-actions .btn { min-width: 200px; border-color: #171717; background: #171717; color: #fff; }
.storefront-collection-editorial-copy .storefront-collection-actions .btn:hover { border-color: #333; background: #333; color: #fff; }
.storefront-collection-all-link { display: inline-flex; align-items: center; gap: 8px; color: #171717; font-size: 12px; font-weight: 800; letter-spacing: .06em; text-decoration: underline; text-underline-offset: 5px; transition: color .2s ease; }
.storefront-collection-all-link:hover { color: #8a7300; }
.storefront-market-strip { background: var(--brand-yellow); color: #171717; }
.storefront-market-copy { display: grid; grid-template-columns: minmax(0,.9fr) minmax(0,1.4fr) auto; align-items: center; gap: 28px; min-height: 190px; padding: 32px 3.2%; }
.storefront-market-copy p { margin: 0; font-size: 12px; font-weight: 800; letter-spacing: .08em; text-transform: uppercase; }
.storefront-market-copy h2 { margin: 0; max-width: 640px; font-size: clamp(26px,3vw,44px); font-weight: 800; line-height: 1.04; letter-spacing: -.02em; text-transform: none; text-wrap: balance; }
.storefront-market-copy .btn { white-space: nowrap; }
.storefront-market-ticker { display: flex; justify-content: space-around; gap: 28px; overflow: hidden; padding: 12px 3.2%; border-top: 2px solid #171717; background: #171717; color: #fff; font-size: 12px; font-weight: 800; white-space: nowrap; }
.storefront-final-products { padding-top: 60px; }
.storefront-theme .product-layout { grid-template-columns: minmax(0, 1.2fr) minmax(0, 1fr); gap: 48px; }
.storefront-theme .product-info { gap: 22px; }
.storefront-theme .product-info h1 { font-size: clamp(26px, 2.4vw, 38px); font-weight: 500; line-height: 1.18; text-transform: none; }
.storefront-theme .product-breadcrumb { font-size: 12px; color: #777; }
.storefront-theme .product-price-wrap .price-current { font-size: 23px; font-weight: 600; }
.storefront-theme .option-label { text-transform: none; font-size: 14px; font-weight: 500; }
.storefront-theme .size-btn, .storefront-theme .color-btn { border-radius: 6px; background: white; min-height: 46px; }
.storefront-theme .size-btn.active, .storefront-theme .color-btn.active { color: #111; background: #f7f7f7; border-color: #111; box-shadow: inset 0 0 0 1px #111; }
.storefront-theme .product-info [data-product-add] { min-height: 54px; }
.storefront-theme .product-gallery-standard { display: grid; grid-template-columns: 62px minmax(0, 1fr); gap: 22px; align-items: start; }
.product-thumbnails { display: grid; gap: 12px; }
.product-thumbnail { padding: 0; background: #f2f2f2; border: 0; border-bottom: 2px solid transparent; cursor: pointer; }
.product-thumbnail img { width: 100%; aspect-ratio: 3 / 4; object-fit: cover; }
.product-thumbnail.active { border-bottom-color: #171717; }
.storefront-theme .product-gallery-standard .product-main-image { width: 100%; max-height: none; }
.storefront-theme .product-gallery-standard .product-main-image-wrap { width: 100%; }
.storefront-theme .design-toolbar { background: #fafafa; border-color: #e5e5e5; }
.storefront-theme .cart-summary, .storefront-theme .checkout-summary { border: 1px solid #e5e5e5; background: #fafafa; border-radius: 6px; box-shadow: none; }
.storefront-theme .cart-item { border-bottom: 1px solid #e5e5e5; }
.storefront-theme .checkout-field input, .storefront-theme .checkout-field select, .storefront-theme .checkout-field textarea { border-radius: 5px; }
.storefront-theme .site-footer { background: #f5f5f5; border-top: 0; }
.storefront-theme .site-footer::before { display: none; }
.storefront-theme .footer-inner { padding: 60px 3.2%; max-width: 1800px; grid-template-columns: minmax(0, .8fr) minmax(0, 1.2fr); gap: 80px; }
.storefront-theme .footer-brand strong { font-size: 26px; line-height: 1.15; text-transform: none; }
.storefront-theme .footer-col h3 { font-size: 14px; text-transform: none; font-weight: 700; letter-spacing: 0; }
.storefront-theme .footer-col a, .storefront-theme .footer-brand p { color: #666; font-size: 13px; }
.storefront-theme .footer-bottom { border-color: #ddd; font-size: 11px; }
.storefront-theme .footer-social a { border-color: #ddd; }
.storefront-theme :focus-visible { outline: 2px solid #3568aa; outline-offset: 3px; }

/* Search dialog */
.storefront-theme .drawer-backdrop { background: rgba(0,0,0,.62); backdrop-filter: none; }
.storefront-theme .search-drawer { inset: 70px auto auto 50%; width: min(1000px, calc(100vw - 48px)); padding: 0; border: 0; border-radius: 10px; overflow: hidden; background: #fff; box-shadow: 0 28px 80px #0004; transform: translate(-50%, -30px); opacity: 0; pointer-events: none; transition: transform .2s ease, opacity .2s ease; }
.storefront-theme.search-open .search-drawer,
body.search-open.storefront-theme .search-drawer { transform: translate(-50%, 0); opacity: 1; pointer-events: auto; }
.storefront-theme .search-modal-inner { display: grid; }
.storefront-theme .search-row { max-width: none; width: 100%; min-height: 68px; grid-template-columns: 20px minmax(0,1fr) 42px; align-items: center; gap: 12px; padding: 0 20px; border-bottom: 1px solid #e8e8e8; }
.storefront-theme .search-leading-icon { display: grid; place-items: center; color: #777; }
.storefront-theme .search-leading-icon svg { width: 18px; height: 18px; fill: none; stroke: currentColor; }
.storefront-theme .search-input { min-height: 66px; border: 0; font-size: 16px; font-weight: 400; }
.storefront-theme .search-input:focus,
.storefront-theme .search-input:focus-visible { outline: none; box-shadow: none; border: 0; }
.storefront-theme .search-discovery { display: grid; grid-template-columns: minmax(0,3fr) minmax(190px,1fr); gap: 34px; padding: 24px; }
.storefront-theme .search-section-label { margin: 0 0 12px; color: #333; font-size: 12px; letter-spacing: .08em; }
.storefront-theme .search-results { display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); gap: 14px; max-width: none; margin: 0; }
.storefront-theme .search-results .mini-card { display: grid; grid-template-columns: 1fr; gap: 8px; color: #171717; }
.storefront-theme .search-results .mini-card img { width: 100%; aspect-ratio: 4/5.25; object-fit: cover; border-radius: 7px; background: #f2f2f2; }
.storefront-theme .search-results .mini-card h3 { margin: 0; font-size: 13px; font-weight: 600; line-height: 1.25; }
.storefront-theme .search-results .mini-card p { display: none; }
.storefront-theme .search-trending { display: flex; flex-direction: column; align-items: flex-start; gap: 14px; }
.storefront-theme .search-trending[hidden] { display: none; }
.storefront-theme .search-discovery:has(.search-trending[hidden]) { grid-template-columns: minmax(0,1fr); }
.storefront-theme .search-term { padding: 0; border: 0; background: transparent; color: #292929; font: inherit; font-size: 14px; text-align: left; cursor: pointer; overflow-wrap: anywhere; }
.storefront-theme .search-term:hover { text-decoration: underline; text-underline-offset: 4px; }
.storefront-theme .search-term:focus-visible { outline: 2px solid #9b8245; outline-offset: 4px; }
.storefront-theme .search-trending a { color: #292929; font-size: 14px; }
.storefront-theme .search-trending a:hover { text-decoration: underline; }

/* Cart drawer */
.storefront-theme .cart-drawer { width: min(650px, 94vw); box-shadow: -30px 0 90px #0003; }
.storefront-theme .cart-drawer-header { min-height: 82px; padding: 20px 34px; }
.storefront-theme .cart-drawer-header h2 { font-size: 25px; text-transform: none; font-weight: 500; letter-spacing: -.03em; }
.storefront-theme .drawer-cart-list { gap: 0; padding: 4px 34px 20px; }
.storefront-theme .drawer-cart-item { grid-template-columns: 130px minmax(0,1fr); gap: 20px; padding: 24px 0; }
.storefront-theme .drawer-cart-item img { width: 130px; border-radius: 3px; background: #f1f1f1; }
.storefront-theme .drawer-cart-top h3 { font-size: 16px; font-weight: 500; }
.storefront-theme .drawer-cart-top strong { font-size: 15px; font-weight: 500; }
.storefront-theme .drawer-cart-main p { margin-top: 8px; font-size: 13px; }
.storefront-theme .drawer-cart-actions { margin-top: 16px; justify-content: flex-start; gap: 18px; }
.storefront-theme .cart-drawer-footer { gap: 11px; padding: 20px 34px 28px; background: #fff; }
.storefront-theme .cart-drawer-footer .summary-row { font-size: 13px; }
.storefront-theme .cart-drawer-footer .summary-row.total { margin-top: 6px; padding-top: 16px; border-top: 1px solid #ddd; font-size: 18px; }
.storefront-theme .cart-drawer-empty { justify-items: center; text-align: center; }
.storefront-theme .cart-drawer-empty::before { content: '🛒'; font-size: 48px; filter: grayscale(1); }
.storefront-theme .cart-drawer-empty h3 { font-size: 24px; font-weight: 500; text-transform: none; }

/* Cart drawer: scroll only the products; keep the checkout area visible. */
body.cart-open .storefront-floating-actions { visibility: hidden; pointer-events: none; }
.storefront-theme .cart-drawer { visibility: hidden; transition: transform 220ms ease, visibility 220ms; }
.storefront-theme.cart-open .cart-drawer { visibility: visible; }
.storefront-theme .cart-drawer { width: min(500px, 100vw); height: 100vh; height: 100dvh; overflow: hidden; grid-template-rows: auto minmax(0, 1fr); }
.storefront-theme .cart-drawer-header { min-height: 92px; padding: 22px 26px; background: #fff; }
.storefront-theme .cart-drawer-heading { display: flex; align-items: center; gap: 13px; }
.storefront-theme .cart-drawer-bag { display: grid; place-items: center; width: 43px; height: 43px; background: #f4f3ef; border: 1px solid #eae8e1; border-radius: 13px; }
.storefront-theme .cart-drawer-bag svg { width: 23px; height: 23px; }
.storefront-theme .cart-drawer-heading .eyebrow { margin: 0 0 6px; font-size: 9px; font-weight: 650; letter-spacing: .12em; color: #797870; }
.storefront-theme .cart-drawer-header h2 { display: flex; align-items: center; gap: 9px; margin: 0; font-size: 23px; font-weight: 700; letter-spacing: -.04em; }
.storefront-theme [data-drawer-item-count] { display: inline-grid; place-items: center; min-width: 24px; height: 24px; padding: 0 6px; border-radius: 8px; background: #171717; color: white; font-size: 11px; letter-spacing: 0; }
.storefront-theme .cart-drawer-header > .icon-btn { width: 34px; height: 34px; min-height: 34px; background: #f5f5f3; border: 1px solid #e9e9e5; border-radius: 50%; }
.storefront-theme .cart-drawer-content { overflow: hidden; grid-template-rows: auto minmax(0, 1fr) auto; }
.storefront-theme .cart-drawer-perk { display: flex; align-items: center; justify-content: center; gap: 8px; padding: 11px 20px; background: #f5f5ef; color: #575a45; font-size: 11px; font-weight: 550; border-bottom: 1px solid #eaeae3; }
.storefront-theme .cart-drawer-perk svg { width: 18px; height: 18px; flex-shrink: 0; }
.storefront-theme .cart-drawer .drawer-cart-list { padding: 5px 26px 12px; overscroll-behavior: contain; scrollbar-width: thin; scrollbar-color: #d6d5ce transparent; }
.storefront-theme .cart-drawer .drawer-cart-item { grid-template-columns: 95px minmax(0, 1fr); gap: 16px; padding: 21px 0; border-color: #efefea; align-items: start; }
.storefront-theme .cart-drawer .drawer-cart-item img { width: 95px; aspect-ratio: 4 / 5; border-radius: 10px; border: 1px solid #eeede8; }
.storefront-theme .cart-drawer .drawer-cart-top { display: grid; gap: 7px; }
.storefront-theme .cart-drawer .drawer-cart-top h3 { font-size: 13px; line-height: 1.45; font-weight: 600; overflow-wrap: anywhere; }
.storefront-theme .drawer-cart-top h3 a { color: inherit; text-decoration: none; }
.storefront-theme .drawer-cart-top h3 a:hover { text-decoration: underline; text-underline-offset: 3px; }
.storefront-theme .cart-drawer .drawer-cart-top strong { font-size: 14px; font-weight: 700; }
.storefront-theme .cart-drawer .drawer-cart-main p { margin-top: 6px; font-size: 11px; line-height: 1.6; color: #7a7a72; overflow-wrap: anywhere; }
.storefront-theme .cart-drawer .drawer-cart-actions { margin-top: 12px; justify-content: space-between; align-items: center; gap: 8px; }
.storefront-theme .cart-drawer .qty { display: inline-flex; align-items: center; min-height: 34px; border: 1px solid #e5e4df; border-radius: 8px; background: #fafaf8; overflow: hidden; }
.storefront-theme .cart-drawer .qty button { width: 32px; min-height: 34px; height: 34px; padding: 0; background: transparent; border: 0; font-size: 17px; }
.storefront-theme .cart-drawer .qty span { min-width: 28px; font-size: 12px; text-align: center; }
.storefront-theme .cart-drawer .remove-link { font-size: 10px; font-weight: 500; color: #77776f; text-underline-offset: 3px; }
.storefront-theme .cart-drawer .cart-drawer-footer { gap: 7px; padding: 17px 26px max(20px, env(safe-area-inset-bottom)); border-top: 1px solid #e9e8e1; background: #fcfcfa; box-shadow: 0 -9px 25px #17171705; }
.storefront-theme .cart-drawer-footer .summary-row { margin: 0; font-size: 11px; color: #77776f; }
.storefront-theme .cart-drawer-footer .summary-row strong { color: #34342e; font-weight: 600; }
.storefront-theme .cart-drawer .cart-drawer-footer .summary-row.total { margin-top: 4px; padding-top: 11px; border-color: #e9e8e1; color: #171717; font-size: 14px; }
.storefront-theme .cart-drawer-footer .summary-row.total strong { font-size: 23px; font-weight: 750; letter-spacing: -.04em; color: #171717; }
.storefront-theme .cart-drawer-cta { display: grid; grid-template-columns: minmax(0, 1fr) auto; align-items: center; gap: 16px; margin-top: 7px; }
.storefront-theme .cart-drawer-cta .btn { display: flex; justify-content: space-between; gap: 12px; padding: 0 17px; min-height: 47px; border-radius: 9px; background: #171717; border-color: #171717; color: #fff; font-size: 13px; }
.storefront-theme .cart-drawer-cta .btn:hover { background: #333; }
.storefront-theme .cart-drawer-cta svg { width: 18px; height: 18px; }
.storefront-theme .cart-view-link { font-size: 11px; font-weight: 600; color: #4f4f46; text-decoration: underline; text-underline-offset: 4px; }
.storefront-theme .cart-drawer-secure { display: flex; justify-content: center; align-items: center; gap: 6px; margin: 5px 0 0; color: #86867b; font-size: 9px; }
.storefront-theme .cart-drawer-secure svg { width: 12px; height: 12px; }
.storefront-theme .cart-drawer-empty { grid-row: 1 / -1; min-height: 0; gap: 15px; padding: 35px; }
.storefront-theme .cart-drawer-empty::before { content: none; }
.storefront-theme .cart-empty-icon { display: grid; place-items: center; width: 85px; height: 85px; border-radius: 26px; background: #f4f3ed; color: #777569; margin-bottom: 5px; }
.storefront-theme .cart-empty-icon svg { width: 38px; height: 38px; }
.storefront-theme .cart-drawer-empty p { max-width: 290px; font-size: 13px; line-height: 1.75; }
.storefront-theme .cart-drawer-empty .btn { width: auto; margin-top: 8px; padding-inline: 25px; border-radius: 9px; font-size: 13px; }
@media (max-width: 600px) {
  .storefront-theme .cart-drawer .cart-drawer-header { min-height: 80px; padding: 16px 20px; }
  .storefront-theme .cart-drawer .drawer-cart-list { padding-inline: 20px; }
  .storefront-theme .cart-drawer .cart-drawer-footer { padding-inline: 20px; }
  .storefront-theme .cart-drawer-cta { gap: 12px; }
}
@media (max-height: 600px) {
  .storefront-theme .cart-drawer .cart-drawer-header { min-height: 60px; padding-block: 10px; }
  .storefront-theme .cart-drawer-perk { padding-block: 6px; }
  .storefront-theme .cart-drawer .cart-drawer-footer { gap: 4px; padding-block: 10px; }
}

/* Product detail */
.storefront-product-page { padding: 64px 3.2% 54px; }
.storefront-product-page,
.storefront-product-page button,
.storefront-product-page input,
.storefront-product-page select,
.storefront-product-page textarea { font-family: inherit; }
.storefront-product-page > .container { max-width: 1440px; }
.storefront-product-page .product-layout { grid-template-columns: minmax(0,1.12fr) minmax(360px,.88fr); gap: clamp(24px,3vw,46px); }
.storefront-product-page .product-gallery-standard { grid-template-columns: 64px minmax(0,1fr); gap: 26px; }
.storefront-product-page .product-main-image-wrap { background: #f0eeee; border-radius: 8px; overflow: hidden; }
.storefront-product-page .product-main-image { display: block; width: 100%; height: auto; min-height: 0; max-height: none; object-fit: contain; }
.storefront-product-page .product-thumbnail { border-radius: 4px; overflow: hidden; opacity: .85; }
.storefront-product-page .product-thumbnail.active { border: 2px solid #171717; opacity: 1; }
.storefront-product-page .product-info { top: calc(var(--header-height) + 18px); gap: 18px; padding: 0; }
.storefront-product-page .product-breadcrumb { order: -2; }
.storefront-product-page .product-info h1 { font-size: clamp(32px,2.35vw,36px); font-weight: 400; line-height: 1.12; letter-spacing: -.01em; }
.storefront-product-page .product-breadcrumb { color: #666; font-size: 15px; font-weight: 400; letter-spacing: 0; text-transform: none; }
.storefront-product-page .rating-display { order: 0; font-size: 14px; font-weight: 400; }
.storefront-product-page .rating-display .stars { color: #f59e0b; -webkit-text-stroke-width: 0; letter-spacing: 2px; font-size: 17px; }
.storefront-product-page .rating-display .stars .star.off { color: #dcdcdc; }
.storefront-product-page .rating-display .rating-score { font-weight: 700; }
.review-stars .star.off { color: #dddddd; }
.storefront-product-page .product-price-wrap { padding-bottom: 18px; border-bottom: 1px solid #ddd; }
.storefront-product-page .product-price-wrap .price-current { font-size: 20px; font-weight: 500; }
.storefront-product-page .product-price-wrap .price-old { font-size: 14px; font-weight: 400; }
.storefront-product-page .option-group { gap: 12px; }
.storefront-product-page .option-label { justify-content: flex-start; gap: 6px; color: #171717; text-transform: none; font-size: 15px; font-weight: 400; }
.storefront-product-page .option-label > span + span::before { content: ':'; margin-right: 6px; }
.storefront-product-page .size-grid { grid-template-columns: repeat(6,minmax(56px,1fr)); }
.storefront-product-page .size-btn { min-height: 54px; border-color: #e2e2e2; border-radius: 7px; font-size: 15px; font-weight: 400; }
.storefront-product-page .size-btn.active { border-color: #171717; background: #fff; color: #171717; box-shadow: inset 0 0 0 1px #171717; }
.storefront-product-page .color-grid { gap: 14px; }
.storefront-product-page .color-btn { display: grid; place-items: center; width: 36px; min-width: 36px; height: 36px; min-height: 36px; padding: 0; border: 2px solid transparent; border-radius: 50%; background: transparent; color: transparent; font-size: 0; }
.storefront-product-page .color-btn .color-dot { width: 27px; height: 27px; border: 0; }
.storefront-product-page .color-btn.active { border-color: #171717; background: #fff; color: transparent; box-shadow: none; }
.storefront-product-page [data-product-add] { margin-top: 4px; min-height: 58px; border-radius: 4px; font-size: 16px; }
.storefront-product-page .product-detail-tabs { margin-top: 70px; }
.storefront-product-page .product-detail-tab { font-size: 14px; font-weight: 500; letter-spacing: 0; text-transform: none; }
.storefront-product-page .product-description-content,
.storefront-product-page .product-description-empty { font-size: 15px; line-height: 1.6; }
.storefront-product-page .design-toolbar,
.storefront-product-page .design-toolbar button,
.storefront-product-page .design-toolbar input { font-family: inherit; }
.storefront-product-page .design-tool-primary small,
.storefront-product-page .design-secondary-actions small { font-size: 10px; font-weight: 500; }
.storefront-product-page .variant-input-label,
.storefront-product-page .form-hint { font-family: inherit; font-weight: 400; }

/* Cart page */
.storefront-cart-page { padding-top: 66px; min-height: 65vh; }
.storefront-cart-page > .container { max-width: 1320px; }
.storefront-theme .cart-page { grid-template-columns: minmax(0,1fr) 390px; gap: 70px; }
.storefront-theme .cart-page-head { display: grid; grid-template-columns: 1fr auto; align-items: end; margin-bottom: 30px; }
.storefront-theme .cart-page-head p { grid-column: 1/-1; margin: 0 0 5px; color: #777; font-size: 12px; text-transform: uppercase; letter-spacing: .07em; }
.storefront-theme .cart-page-head h1 { margin: 0; font-size: clamp(38px,4vw,56px); font-weight: 500; letter-spacing: -.045em; }
.storefront-theme .cart-page-head span { color: #666; font-size: 13px; }
.storefront-theme .cart-list { gap: 0; border-top: 1px solid #ddd; }
.storefront-theme .cart-item { grid-template-columns: 150px minmax(0,1fr) auto; gap: 24px; padding: 24px 0; }
.storefront-theme .cart-item img { width: 150px; border-radius: 3px; background: #f2f2f2; }
.storefront-theme .cart-item h3 { font-size: 18px; font-weight: 500; }
.storefront-theme .cart-item .remove-link { margin-left: 16px; }
.storefront-theme .cart-summary { gap: 15px; padding: 28px; border: 0; border-radius: 0; background: #f3f3f3; }
.storefront-theme .cart-summary::before { content: 'Sipariş özeti'; display: block; margin-bottom: 8px; font-size: 23px; font-weight: 500; }
.storefront-theme .cart-summary .summary-row.total { margin-top: 8px; padding-top: 18px; border-top: 1px solid #d2d2d2; font-size: 18px; }

/* Checkout */
.storefront-checkout-page { padding-top: 58px; background: linear-gradient(90deg,#fff 0 64%,#f4f4f4 64%); }
.storefront-checkout-page > .container { max-width: 1300px; }
.storefront-theme .checkout-page { grid-template-columns: minmax(0,1fr) 420px; gap: 78px; }
.storefront-theme .checkout-form { gap: 28px; }
.storefront-theme .checkout-block { gap: 18px; padding: 0 0 28px; border: 0; border-bottom: 1px solid #dedede; border-radius: 0; background: transparent; }
.storefront-theme .checkout-block h2, .storefront-theme .checkout-summary h2 { font-size: 24px; font-weight: 500; }
.storefront-theme .checkout-grid { gap: 14px; }
.storefront-theme .checkout-field span { color: #333; font-size: 12px; font-weight: 500; text-transform: none; }
.storefront-theme .checkout-field input, .storefront-theme .checkout-field select, .storefront-theme .checkout-field textarea { min-height: 52px; border-color: #cfcfcf; border-radius: 4px; }
.storefront-theme .checkout-option { padding: 16px; border-radius: 4px; }
.storefront-theme .checkout-summary { top: calc(var(--header-height) + 20px); gap: 18px; padding: 0; border: 0; border-radius: 0; background: transparent; }
.storefront-theme .checkout-line-item { grid-template-columns: 82px minmax(0,1fr) auto; padding-bottom: 16px; }
.storefront-theme .checkout-line-item img { width: 82px; border-radius: 4px; }
.storefront-theme .checkout-coupon { display: grid; grid-template-columns: minmax(0,1fr) auto; gap: 8px; }
.storefront-theme .checkout-coupon input { min-height: 50px; border: 1px solid #ccc; border-radius: 4px; padding: 0 12px; }
.storefront-theme .checkout-totals { padding-top: 12px; border-top: 1px solid #d5d5d5; }
.storefront-theme .checkout-totals .summary-row.total { margin-top: 12px; padding-top: 16px; border-top: 1px solid #d5d5d5; font-size: 20px; }
.storefront-theme .checkout-action-row .btn { min-height: 54px; }

/* Checkout — premium polish */
.storefront-theme .checkout-steps { grid-column: 1 / -1; display: flex; align-items: center; gap: 10px; margin-bottom: 8px; }
.storefront-theme .checkout-step { display: inline-flex; align-items: center; gap: 9px; color: #9b9b9b; }
.storefront-theme .checkout-step i { display: grid; place-items: center; width: 26px; height: 26px; border: 1px solid #d8d8d8; border-radius: 50%; font-style: normal; font-size: 10px; font-weight: 700; }
.storefront-theme .checkout-step b { font-size: 11px; font-weight: 500; letter-spacing: .05em; text-transform: uppercase; }
.storefront-theme .checkout-step.is-active { color: #171717; }
.storefront-theme .checkout-step.is-active i { border-color: #171717; background: #171717; color: #fff; }
.storefront-theme .checkout-step:not(:last-child)::after { content: ""; width: 34px; height: 1px; background: #dcdcdc; }

.storefront-theme .checkout-block-title { display: flex; align-items: baseline; gap: 12px; min-width: 0; }
.storefront-theme .checkout-block-index { flex: none; font-family: var(--font-display); font-size: 12px; font-weight: 600; letter-spacing: .08em; color: #a8a8a8; }
.storefront-theme .checkout-block-head h2 { margin: 0; }

.storefront-theme .checkout-payment-brands { display: inline-flex; flex: none; gap: 5px; }
.storefront-theme .checkout-payment-brands i { display: grid; place-items: center; min-width: 40px; height: 24px; padding: 0 6px; border: 1px solid #e0e0e0; border-radius: 3px; background: #fff; font-style: normal; font-size: 9px; font-weight: 800; letter-spacing: .04em; color: #4a4a4a; }

.storefront-theme .checkout-secure-strip { display: flex; align-items: flex-start; gap: 12px; padding: 14px 16px; border: 1px dashed #d6d6d6; border-radius: 4px; background: #fafafa; }
.storefront-theme .checkout-secure-strip svg { flex: none; width: 20px; height: 20px; margin-top: 1px; color: #171717; }
.storefront-theme .checkout-secure-strip p { margin: 0; color: #555; font-size: 13px; line-height: 1.55; }
.storefront-theme .checkout-secure-strip strong { color: #171717; font-weight: 600; }

.storefront-theme .checkout-submit-wrap { display: grid; gap: 10px; justify-items: end; }
.storefront-theme .checkout-submit { min-height: 56px; padding-inline: 34px; font-weight: 600; }
.storefront-theme .checkout-submit-note { display: inline-flex; align-items: center; gap: 6px; margin: 0; color: #7d7d7d; font-size: 12px; }
.storefront-theme .checkout-submit-note svg { width: 14px; height: 14px; }

.storefront-theme .checkout-summary-head { display: flex; align-items: baseline; justify-content: space-between; gap: 12px; }
.storefront-theme .checkout-summary-count { color: #6d6d6d; font-size: 13px; }
.storefront-theme .checkout-summary-edit { align-self: flex-start; color: #4a4a4a; font-size: 12px; text-decoration: underline; text-underline-offset: 3px; }
.storefront-theme .checkout-summary-edit:hover { color: #171717; }

/* PayTR yönlendirme katmanı */
.storefront-theme .checkout-redirect { position: fixed; inset: 0; z-index: 1200; display: grid; place-items: center; }
.storefront-theme .checkout-redirect[hidden] { display: none; }
.storefront-theme .checkout-redirect-backdrop { position: absolute; inset: 0; background: rgba(17, 17, 17, .55); backdrop-filter: blur(3px); }
.storefront-theme .checkout-redirect-card { position: relative; display: grid; justify-items: center; gap: 12px; width: min(440px, calc(100vw - 40px)); padding: 34px 30px 30px; border-radius: 8px; background: #fff; box-shadow: 0 24px 70px rgba(0, 0, 0, .28); text-align: center; }
.storefront-theme .checkout-redirect-mark { display: grid; place-items: center; width: 52px; height: 52px; border-radius: 50%; background: #171717; color: #fff; }
.storefront-theme .checkout-redirect-mark svg { width: 24px; height: 24px; }
.storefront-theme .checkout-redirect-card h3 { margin: 4px 0 0; font-size: 18px; font-weight: 600; }
.storefront-theme .checkout-redirect-card p { margin: 0; color: #666; font-size: 13px; line-height: 1.6; }
.storefront-theme .checkout-redirect-bar { width: 100%; height: 3px; margin-top: 6px; border-radius: 999px; background: #ececec; overflow: hidden; }
.storefront-theme .checkout-redirect-bar span { display: block; width: 40%; height: 100%; border-radius: 999px; background: #171717; animation: checkout-redirect-run 1.1s ease-in-out infinite; }
.storefront-theme .checkout-redirect-card small { color: #8a8a8a; font-size: 11px; letter-spacing: .04em; text-transform: uppercase; }
@keyframes checkout-redirect-run { 0% { transform: translateX(-110%); } 100% { transform: translateX(320%); } }
body.checkout-redirect-open { overflow: hidden; }
@media (max-width: 1250px) {
  .storefront-theme .header-search { width: 36px; border: 0; padding: 0; }
  .storefront-theme .header-search span { display: none; }
  .storefront-theme .nav-link { padding-inline: 8px; }
  .storefront-product-page .product-layout { grid-template-columns: minmax(0,1fr) minmax(340px,.82fr); gap: 24px; }
  .storefront-product-page .product-gallery-standard { grid-template-columns: 54px minmax(0,1fr); gap: 14px; }
  .storefront-product-page .product-info h1 { font-size: 32px; }
  .storefront-product-page .size-grid { grid-template-columns: repeat(5,minmax(48px,1fr)); }
}
@media (max-width: 1080px) {
  .storefront-theme .header-inner { gap: 12px; }
  .storefront-theme .product-layout { grid-template-columns: minmax(0,1fr); gap: 34px; }
  .storefront-theme .product-info { position: static; }
  .storefront-theme .footer-inner { grid-template-columns: 1fr; gap: 36px; }
  .storefront-promo { grid-template-columns: 135px minmax(0, 1fr); }
  .storefront-promo > .btn { grid-column: 2; justify-self: start; margin-top: -20px; }
  .storefront-promo-art { grid-row: 1 / span 2; }
  .storefront-product-page .product-layout { grid-template-columns: minmax(0,1fr); gap: 34px; }
  .storefront-product-page .product-gallery-standard { grid-template-columns: 64px minmax(0,1fr); gap: 18px; }
  .storefront-checkout-page { background: #fff; }
  .storefront-theme .checkout-page { grid-template-columns: minmax(0,1fr) 360px; gap: 34px; }
  .storefront-categories .category-pill { min-height: 320px; }
  .storefront-market-copy { grid-template-columns: 1fr; align-items: start; }
  .storefront-market-copy .btn { justify-self: start; }
}
@media (max-width: 760px) {
  .storefront-theme { --header-height: 64px; }
  .storefront-theme .announcement { min-height: 38px; font-size: 11px; }
  .storefront-theme .announcement-track { grid-template-columns: 26px minmax(0,auto) 26px; min-height: 38px; padding: 0 4px; gap: 3px; }
  .storefront-theme .announcement-list { width: auto; max-width: calc(100vw - 66px); min-height: 38px; }
  .storefront-theme .announcement-item { font-size: 11px; }
  .storefront-theme .announcement-control { width: 26px; height: 38px; }
  .storefront-theme .header-inner { min-height: 64px; padding-inline: 14px; grid-template-columns: 30px minmax(0, 1fr) auto; gap: 8px; }
  .storefront-theme .brand-logo { width: 115px; max-height: 34px; }
  .storefront-theme .brand { font-size: 26px; justify-self: start; }
  .storefront-theme .header-actions { gap: 2px; }
  .storefront-theme .header-actions .language-menu { display: none; }
  .storefront-theme .header-actions .header-account-trigger { display: inline-flex; align-items: center; justify-content: center; flex: 0 0 36px; width: 36px; height: 40px; padding: 0; }
  .storefront-theme .header-search { width: 32px; }
  .storefront-theme .section { padding: 30px 16px; }
  .storefront-promo { min-height: 168px; padding: 16px; gap: 8px 14px; grid-template-columns: 82px minmax(0, 1fr); align-items: center; }
  .storefront-promo-art { grid-row: 1 / span 2; width: 82px; height: 104px; margin-left: 0; }
  .storefront-promo-art img,.storefront-promo-art video { width: 100%; height: 100%; max-width: 82px; max-height: 104px; }
  .storefront-theme .storefront-promo h1 { font-size: clamp(30px,8.2vw,38px); line-height: 1.08; letter-spacing: -.02em; }
  .storefront-promo .eyebrow { font-size: 11px; margin-bottom: 8px; padding: 3px 7px; }
  .storefront-promo .btn { font-size: 14px; min-height: 44px; }
  .storefront-promo > .btn { grid-column: 2; margin-top: 0; padding-inline: 15px; }
  .storefront-theme .hero-slider { height: clamp(400px,118vw,520px); min-height: 0; max-height: 520px; }
  .storefront-theme .hero-content { padding: 22px 16px 48px; align-items: stretch; justify-content: flex-end; text-align: left; }
  .storefront-theme .hero-copy-panel { justify-items: start; width: 100%; margin: 0; padding: 20px 20px 21px; gap: 11px; border-radius: 6px; background: rgba(10,10,10,.62); }
  .storefront-theme .hero-copy-panel h1 { font-size: clamp(31px,10vw,42px); line-height: 1; }
  .storefront-theme .hero-copy-panel p { order: 0; max-width: 100%; font-size: 13px; line-height: 1.45; }
  .storefront-theme .hero-copy-panel .button-row { justify-content: flex-start; }
  .storefront-theme .hero-copy-panel .btn { min-height: 42px; min-width: 128px; padding: 9px 17px; font-size: 13px; }
  .storefront-theme .product-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 24px 10px; }
  .storefront-home-products .product-carousel .product-card,
  .storefront-product-run .product-carousel .product-card { flex: 0 0 calc((100% - 8px)/2); width: calc((100% - 8px)/2); }
  .storefront-home-products .product-carousel-track,
  .storefront-product-run .product-carousel-track { gap: 8px; }
  .storefront-theme .storefront-products-flush { padding: 20px 14px 34px; }
  .storefront-home-products .product-meta,
  .storefront-product-run .product-meta { padding: 10px 0 0; }
  .storefront-theme .product-title { font-size: 12px; }
  .storefront-theme .product-name-row { min-width: 0; }
  .storefront-theme .section-head { flex-direction: row; align-items: center; gap: 12px; }
  .storefront-theme .section-head h2 { font-size: 24px; }
  .storefront-theme .section-head .btn { font-size: 11px; padding: 8px 10px; min-height: 36px; }
  .storefront-wide-banner { min-height: 440px; }
  .storefront-wide-copy { padding: 28px 20px; text-align: center; width: 100%; }
  .storefront-wide-copy h2 { font-size: 44px; }
  .storefront-wide-actions { justify-content: center; flex-wrap: wrap; }
  .storefront-custom { min-height: 500px; }
  .storefront-custom::after { background: linear-gradient(0deg,rgba(0,0,0,.82),transparent 82%); }
  .storefront-custom-copy { padding: 32px 20px 38px; text-align: left; }
  .storefront-custom h2 { font-size: 44px; }
  .storefront-categories .category-pill { min-height: 270px; }
  .storefront-featured-story .home-collection-band { min-height: 0; }
  .storefront-featured-story .home-collection-media img { height: 390px; }
  .storefront-featured-story .home-collection-panel { padding: 34px 20px; }
  .storefront-collection-editorial { min-height: 0; padding: 30px 16px; }
  .storefront-collection-card { grid-template-columns: 1fr; }
  .storefront-collection-showcase { height: auto; min-height: 310px; aspect-ratio: 4 / 3; max-height: 380px; padding: 32px; }
  .storefront-collection-showcase-label,.storefront-collection-showcase-count { top: 12px; }
  .storefront-collection-showcase-label { left: 12px; }
  .storefront-collection-showcase-count { right: 12px; }
  .storefront-collection-editorial-copy { align-items: flex-start; padding: 28px 22px 30px; text-align: left; border-left: 0; border-top: 1px solid #e9e6df; }
  .storefront-collection-editorial-copy::before { margin-bottom: 14px; font-size: 10px; }
  .storefront-collection-editorial-copy h2 { margin-bottom: 20px; font-size: clamp(34px,11vw,46px); }
  .storefront-collection-editorial-copy p { margin-bottom: 22px; font-size: 14px; }
  .storefront-collection-facts { margin-bottom: 22px; }
  .storefront-collection-actions { width: 100%; align-items: stretch; flex-direction: column; gap: 14px; }
  .storefront-collection-editorial-copy .storefront-collection-actions .btn { width: 100%; }
  .storefront-collection-all-link { align-self: center; }
  .storefront-market-copy { min-height: 280px; padding: 30px 20px; text-align: center; justify-items: center; }
  .storefront-market-copy .btn { justify-self: center; }
  .storefront-market-ticker { justify-content: flex-start; }
  .storefront-video-editorial { min-height: clamp(430px, 118vw, 520px); margin-bottom: 22px; }
  .storefront-video-editorial::after { background: linear-gradient(0deg, rgba(0,0,0,.88) 0, rgba(0,0,0,.55) 45%, transparent 92%); }
  .storefront-video-editorial-copy { width: 100%; padding: 26px 20px 30px; text-align: center; text-shadow: 0 2px 14px rgb(0 0 0 / 45%); }
  .storefront-video-editorial-copy p { margin-bottom: 6px; font-size: 13px; font-weight: 700; }
  .storefront-video-editorial-copy h2 { margin-bottom: 11px; font-size: clamp(32px, 9vw, 44px); line-height: 1.02; letter-spacing: -.04em; }
  .storefront-video-editorial-copy span { margin-bottom: 18px; font-size: 14px; line-height: 1.55; text-shadow: 0 1px 10px rgb(0 0 0 / 55%); }
  .storefront-video-editorial-copy .btn { min-height: 44px; padding: 11px 22px; font-size: 14px; text-shadow: none; }
  .storefront-theme .collection-hero { height: 210px; min-height: 0; }
  .storefront-theme .collection-toolbar { flex-wrap: wrap; }
  .storefront-theme .filterbar { max-width: 100%; }
  .storefront-theme .product-layout { grid-template-columns: minmax(0, 1fr); gap: 28px; }
  .storefront-theme .product-gallery-standard { grid-template-columns: 1fr; gap: 12px; }
  .product-thumbnails { order: 2; display: flex; overflow-x: auto; gap: 8px; }
  .product-thumbnail { flex: 0 0 52px; }
  .storefront-theme .product-info h1 { font-size: 28px; }
  .storefront-theme .footer-inner { padding: 36px 16px; }
  .storefront-theme .footer-link-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .storefront-theme .footer-bottom { width: calc(100% - 32px); }
  .storefront-theme input:not([type=range]):not([type=checkbox]):not([type=radio]), .storefront-theme select, .storefront-theme textarea { font-size: 16px; }
  .storefront-theme .search-drawer { top: 16px; width: calc(100vw - 24px); max-height: calc(100svh - 32px); overflow-y: auto; }
  .storefront-theme .search-row { min-height: 60px; padding-inline: 14px; }
  .storefront-theme .search-input { min-height: 58px; }
  .storefront-theme .search-discovery { grid-template-columns: 1fr; gap: 24px; padding: 18px 14px 22px; }
  .storefront-theme .search-results { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .storefront-theme .search-trending { padding-top: 18px; border-top: 1px solid #ddd; }
  .storefront-theme .cart-drawer { width: 100vw; }
  .storefront-theme .cart-drawer-header { min-height: 68px; padding: 14px 18px; }
  .storefront-theme .drawer-cart-list { padding-inline: 18px; }
  .storefront-theme .drawer-cart-item { grid-template-columns: 100px minmax(0,1fr); gap: 14px; }
  .storefront-theme .drawer-cart-item img { width: 100px; }
  .storefront-theme .cart-drawer-footer { padding: 16px 18px 22px; }
  .storefront-product-page { padding-top: 20px; }
  .storefront-product-page .product-layout { grid-template-columns: 1fr; }
  .storefront-product-page .product-main-image { min-height: 0; }
  .storefront-product-page .product-info { padding: 0; }
  .storefront-product-page .size-grid { grid-template-columns: repeat(4,minmax(0,1fr)); }
  .storefront-cart-page { padding-top: 30px; }
  .storefront-theme .cart-page { grid-template-columns: 1fr; gap: 34px; }
  .storefront-theme .cart-item { grid-template-columns: 104px minmax(0,1fr); gap: 14px; align-items: start; }
  .storefront-theme .cart-item img { width: 104px; }
  .storefront-theme .cart-item .cart-price { grid-column: 2; }
  .storefront-theme .cart-summary { position: static; }
  .storefront-checkout-page { padding-top: 28px; background: #fff; }
  .storefront-theme .checkout-page { grid-template-columns: 1fr; gap: 42px; }
  .storefront-theme .checkout-summary { position: static; order: -1; padding: 20px; background: #f4f4f4; }
  .storefront-theme .checkout-grid.two { grid-template-columns: 1fr; }
  .storefront-theme .checkout-action-row { align-items: stretch; flex-direction: column-reverse; }
  .storefront-theme .checkout-step b { display: none; }
  .storefront-theme .checkout-step:not(:last-child)::after { width: 18px; }
  .storefront-theme .checkout-submit-wrap { justify-items: stretch; }
  .storefront-theme .checkout-submit-note { justify-content: center; }
  .storefront-theme .checkout-payment-brands { display: none; }
}

/* Editorial category discovery block. */
.catalog-category-section { padding-block: clamp(40px,5vw,66px); background: #f7f6f1 !important; border-top: 1px solid #eceadf; border-bottom: 1px solid #eceadf; }
.catalog-category-heading {
  display: grid;
  grid-template-columns: minmax(0,1fr) auto;
  align-items: end;
  gap: 40px;
  margin-bottom: 34px;
}
.catalog-category-heading .eyebrow { display: flex; align-items: center; gap: 9px; margin: 0 0 12px; color: #9a8b65; font-size: 9px; font-weight: 700; letter-spacing: .13em; text-transform: uppercase; }
.catalog-category-heading .eyebrow::before { content: ''; width: 22px; height: 2px; background: #c7b582; }
.catalog-category-heading h2 { margin: 0; font-size: clamp(28px,3vw,42px); font-weight: 750; line-height: 1.1; letter-spacing: -.045em; }
.catalog-category-intro { max-width: 330px; justify-self: end; }
.catalog-category-heading .catalog-category-description { margin: 13px 0 0; max-width: 620px; color: #858174; font-size: 12px; line-height: 1.7; font-weight: 400; }
.catalog-category-heading .catalog-category-intro { padding-bottom: 3px; }
.catalog-category-intro p { margin: 0 0 13px; color: #858174; font-size: 12px; line-height: 1.8; }
.catalog-category-intro a { display: inline-flex; align-items: center; gap: 16px; font-size: 11px; font-weight: 600; color: #535144; text-decoration: none; }
.catalog-category-intro a:hover { text-decoration: underline; text-underline-offset: 5px; }
.catalog-category-heading > p { max-width: 430px; justify-self: end; color: #676767; font-size: 14px; line-height: 1.7; }
.catalog-category-section .category-strip {
  grid-auto-columns: minmax(250px,1fr);
  gap: 20px;
  padding: 0 0 10px;
  scroll-snap-type: x proximity;
}
.catalog-category-section .category-pill {
  min-height: 0;
  display: flex;
  flex-direction: column;
  align-items: stretch;
  border: 1px solid #e8e6db;
  border-radius: 13px;
  background: #fff;
  text-decoration: none;
  transition: border-color .25s, box-shadow .25s;
  scroll-snap-align: start;
  isolation: isolate;
}
.catalog-category-section .category-pill:nth-child(n) { background: #fff; }
.catalog-category-section .category-pill-media { position: relative; width: 100%; aspect-ratio: 1.5; overflow: hidden; background: #ecebe4; }
.catalog-category-section .category-pill:nth-child(3n+2) .category-pill-media { background: #e9ece5; }
.catalog-category-section .category-pill:nth-child(3n+3) .category-pill-media { background: #ede7e2; }
.catalog-category-section .category-pill-media > svg { position: absolute; width: 100px; height: 100px; top: 50%; left: 50%; transform: translate(-50%,-50%) rotate(-10deg); color: #aaa58d; opacity: .6; }
.catalog-category-section .category-pill img { z-index: 1; object-fit: cover; transition: transform .65s cubic-bezier(.22,.61,.36,1), filter .3s ease; }
.catalog-category-section .category-pill::after, .catalog-category-section .category-pill::before { content: none; }
.catalog-category-section .category-pill:hover { border-color: #c7bd9d; box-shadow: 0 9px 24px #302a1410; }
.catalog-category-section .category-pill:focus-visible { outline: 2px solid #9b8245; outline-offset: 4px; }
.catalog-category-section .category-pill:hover img { transform: scale(1.045); filter: saturate(1.05); }
.catalog-category-section .category-pill.image-missing img { display: none; }
.catalog-category-section .category-pill-copy {
  width: 100%;
  position: relative;
  z-index: 2;
  display: grid;
  grid-template-columns: minmax(0,1fr) auto;
  align-items: center;
  gap: 7px 16px;
  padding: 20px 22px;
  text-transform: none;
}
.catalog-category-section .category-pill-copy small { display: flex; align-items: center; gap: 9px; grid-column: 1; color: #9a9481; font-size: 8px; font-style: normal; font-weight: 500; letter-spacing: .12em; text-transform: uppercase; }
.catalog-category-section .category-pill-copy small b { color: #b7a674; font-weight: 650; }
.catalog-category-section .category-pill-copy small span { padding: 0; color: inherit; font: inherit; text-transform: inherit; }
.catalog-category-section .category-pill-copy strong { grid-column: 1; min-width: 0; color: #292a23; font-size: clamp(19px,1.8vw,25px); font-weight: 700; line-height: 1.15; letter-spacing: -.035em; overflow-wrap: anywhere; }
.catalog-category-section .category-pill-copy i { grid-column: 2; grid-row: 1 / 3; display: grid; place-items: center; width: 37px; height: 37px; border: 1px solid #e8e5d9; border-radius: 11px; color: #78705b; background: #f8f7f2; font-style: normal; transition: color .2s,background .2s,transform .2s; }
.catalog-category-section .category-pill-copy svg { width: 17px; height: 17px; stroke-width: 1.6; }
.catalog-category-section .category-pill:hover .category-pill-copy i { color: #fff; background: #2c2d24; border-color: #2c2d24; transform: translateX(2px); }
@media (max-width: 760px) {
  .catalog-category-section { padding-block: 36px; }
  .catalog-category-heading { grid-template-columns: 1fr; gap: 14px; margin-bottom: 26px; }
  .catalog-category-heading h2 { font-size: 30px; }
  .catalog-category-intro { justify-self: start; max-width: 330px; }
  .catalog-category-heading > p { justify-self: start; font-size: 13px; }
  .catalog-category-section .category-strip { grid-auto-columns: minmax(74vw,1fr); margin-right: 0; padding-right: 0; gap: 14px; scrollbar-width: thin; scrollbar-color: #d3cbb6 transparent; }
  .catalog-category-section .category-pill { min-height: 0; }
  .catalog-category-section .category-pill-copy { padding: 17px; }
}
@media (prefers-reduced-motion: reduce) {
  .catalog-category-section .category-pill, .catalog-category-section .category-pill img, .catalog-category-section .category-pill-copy i { transition: none; }
}
/* Threadheads-style product page layer (visual only, event contracts untouched) */
.storefront-product-page .product-gallery-standard { position: sticky; top: calc(var(--header-height) + 18px); align-self: start; }
.storefront-product-page .product-main-image-wrap { border: 1px solid #e8e8e8; border-radius: 12px; }
.storefront-product-page .product-main-image { aspect-ratio: auto; min-height: 0; object-fit: contain; background: #f0eeee; }
.storefront-product-page .product-main-image-wrap:hover .product-main-image { transform: scale(1.04); }
.storefront-product-page .product-thumbnails { gap: 10px; }
.storefront-product-page .product-thumbnail { border: 1.5px solid transparent; }
.storefront-product-page .product-thumbnail:hover { opacity: 1; }
.storefront-product-page .product-breadcrumb { display: flex; flex-wrap: wrap; gap: 6px; align-items: center; }
.storefront-product-page .product-breadcrumb a { color: #666; text-decoration: none; }
.storefront-product-page .product-breadcrumb a:hover { color: #171717; text-decoration: underline; text-underline-offset: 3px; }
.storefront-product-page .product-info h1 { font-weight: 800; letter-spacing: -.02em; text-wrap: balance; }
.storefront-product-page .option-label strong { color: #171717; font-weight: 700; }
.storefront-product-page .th-color-group .color-grid { display: flex; flex-wrap: wrap; gap: 10px; align-items: center; }
.storefront-product-page .th-color-group .color-btn { display: inline-flex; align-items: center; justify-content: center; flex-shrink: 0; width: 38px; min-width: 38px; height: 38px; min-height: 38px; padding: 0; border: 1px solid #d5d5d5; border-radius: 50%; background: #fff; color: transparent; font-size: 0; line-height: 0; cursor: pointer; transition: border-color .15s ease, box-shadow .15s ease; }
.storefront-product-page .th-color-group .color-btn:hover { border-color: #171717; }
.storefront-product-page .th-color-group .color-btn .color-dot { width: 26px; height: 26px; margin: 0; padding: 0; border-radius: 50%; border: 1px solid #00000022; box-shadow: inset 0 0 0 1px #ffffff88; }
.storefront-product-page .th-color-group .color-btn.active { border-color: #171717; background: #fff; color: transparent; box-shadow: 0 0 0 2px #fff, 0 0 0 4px #171717; }
/* Varyant renk grupları hap buton olarak kalsın (yazılar gizlenmesin) */
.storefront-product-page [data-variant-group] .color-grid { display: flex; flex-wrap: wrap; gap: 8px; }
.storefront-product-page [data-variant-group] .color-btn { display: inline-flex; align-items: center; gap: 8px; width: auto; min-width: 0; height: auto; min-height: 46px; padding: 0 14px; border: 1px solid #e2e2e2; border-radius: 7px; background: #fff; color: #171717; font-size: 14px; font-weight: 600; line-height: 1.2; }
.storefront-product-page [data-variant-group] .color-btn .color-dot { width: 14px; height: 14px; margin: 0; flex-shrink: 0; }
.storefront-product-page [data-variant-group] .color-btn.active { border-color: #171717; background: #fff; color: #171717; box-shadow: inset 0 0 0 1px #171717; }
.storefront-product-page .option-label { align-items: center; gap: 10px; }
.storefront-product-page .size-grid { gap: 10px; }
.storefront-product-page .size-btn { font-weight: 600; transition: border-color .15s ease, background .15s ease; }
.storefront-product-page .size-btn:hover { border-color: #171717; }
.storefront-product-page [data-product-add] { background: #111; border-color: #111; font-weight: 700; letter-spacing: .02em; display: inline-flex; align-items: center; justify-content: center; gap: 10px; }
.storefront-product-page [data-product-add] svg { width: 20px; height: 20px; }
.storefront-product-page [data-product-add]:hover { background: #2b2b2b; }
.storefront-product-page .th-label { display: inline-flex; align-items: center; gap: 8px; min-width: 0; }
.storefront-product-page .th-label svg { width: 17px; height: 17px; flex-shrink: 0; color: #171717; }
.storefront-product-page .product-info svg { display: block; flex-shrink: 0; }

.th-trust { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 0; padding: 16px 0; border-top: 1px solid #e7e7e7; border-bottom: 1px solid #e7e7e7; background: transparent; }
.th-trust-item { display: flex; align-items: center; justify-content: center; gap: 9px; min-width: 0; padding: 2px 14px; font-size: 13px; color: #333; }
.th-trust-item + .th-trust-item { border-left: 1px solid #e7e7e7; }
.th-trust-icon { display: inline-flex; align-items: center; justify-content: center; width: 30px; height: 30px; flex-shrink: 0; color: #171717; }
.th-trust-icon svg { width: 20px; height: 20px; }
.th-trust-text { display: grid; gap: 3px; min-width: 0; line-height: 1.25; }
.th-trust-text strong { font-size: 12px; font-weight: 700; color: #171717; white-space: nowrap; }
.th-trust-text small { font-size: 11px; color: #777; white-space: nowrap; }
.th-highlights { margin: 0; padding: 0; list-style: none; display: grid; grid-template-columns: repeat(2, minmax(0,1fr)); gap: 10px; }
.th-highlights li { display: flex; align-items: center; gap: 10px; padding: 11px 12px; border: 1px solid #eee; border-radius: 12px; background: linear-gradient(180deg,#fff,#fafafa); font-size: 13px; color: #333; }
.th-highlights li svg { width: 26px; height: 26px; flex-shrink: 0; padding: 5px; border-radius: 8px; background: #171717; color: #ffda16; }
.th-highlights li span { display: grid; gap: 1px; line-height: 1.25; }
.th-highlights li strong { font-size: 13px; font-weight: 750; color: #171717; }
.th-highlights li small { font-size: 11.5px; color: #777; }
/* Threadheads tarzı: akordeon kart görünümlü sekmeler (sadece görsel, JS aynı) */
.storefront-product-page .product-detail-tabs { margin-top: 56px; border-top: 0; display: grid; gap: 14px; }
.storefront-product-page .product-detail-tab-list { display: flex; flex-wrap: wrap; gap: 10px; border-bottom: 0; overflow: visible; }
.storefront-product-page .product-detail-tab { flex: 1 1 170px; }
.storefront-product-page .product-detail-tab-panel .th-accordions { margin-top: 0; }
.storefront-product-page [data-variant-group] .size-btn { display: inline-flex; align-items: center; justify-content: center; gap: 8px; }
.storefront-product-page [data-variant-group] .size-btn svg { width: 16px; height: 16px; flex-shrink: 0; }
.storefront-product-page .product-detail-tab { position: relative; display: flex; align-items: center; justify-content: flex-start; gap: 10px; min-height: 58px; margin: 0; padding: 14px 16px; border: 1.5px solid #e5e5e5; border-radius: 12px; background: #fff; color: #171717; font-size: 14px; font-weight: 700; letter-spacing: 0; text-transform: none; white-space: normal; text-align: left; }
.storefront-product-page .product-detail-tab + .product-detail-tab { margin-left: 0; }
.storefront-product-page .product-detail-tab::after { content: '+'; position: static; display: grid; place-items: center; width: 26px; height: 26px; flex-shrink: 0; margin-left: auto; border-radius: 50%; background: #f1f1f1; color: #171717; font-size: 16px; font-weight: 800; line-height: 1; }
.storefront-product-page .product-detail-tab.active { border-color: #171717; background: #171717; color: #fff; }
.storefront-product-page .product-detail-tab.active::after { content: '–'; background: #ffda16; color: #171717; }
.storefront-product-page .product-detail-tab span { background: #ffda16; color: #171717; font-weight: 800; flex-shrink: 0; margin-left: 0; }
.storefront-product-page .product-detail-tab.active span { background: #fff; color: #171717; }
.storefront-product-page .product-detail-tab-panels { padding: 0; }
.storefront-product-page .product-detail-tab-panel { border: 1px solid #e8e8e8; border-radius: 14px; background: #fff; padding: 22px; box-shadow: 0 8px 22px #0000000a; }
.storefront-product-page .product-description-panel { max-width: none; }
@media (max-width: 1080px) {
  .storefront-product-page .product-gallery-standard { position: static; }
}
@media (max-width: 760px) {
  .storefront-product-page .product-gallery-standard { grid-template-columns: 1fr; }
  .storefront-product-page .product-thumbnails { display: flex; overflow-x: auto; order: 2; padding-bottom: 4px; }
  .storefront-product-page .product-thumbnail { flex: 0 0 64px; }
  .storefront-product-page .product-main-image { aspect-ratio: 1 / 1; }
  .storefront-product-page [data-product-add] { position: sticky; bottom: 12px; z-index: 5; box-shadow: 0 10px 24px #0003; }
  .th-trust { grid-template-columns: 1fr; gap: 0; padding: 6px 0; }
  .th-trust-item { justify-content: flex-start; padding: 11px 4px; }
  .th-trust-item + .th-trust-item { border-left: 0; border-top: 1px solid #ededed; }
  .th-highlights { grid-template-columns: 1fr 1fr; }
  .storefront-product-page .product-detail-tab-list { flex-direction: column; flex-wrap: nowrap; }
  .storefront-product-page .product-detail-tab { flex: none; }
  .storefront-product-page .product-detail-tab-panel { padding: 18px 16px; }
}
/* Threadheads birebir: Style hapları */
.th-style-pills { display: flex; flex-wrap: wrap; gap: 8px; }
.th-style-pill { display: inline-flex; align-items: center; gap: 8px; min-height: 46px; padding: 0 18px; border: 1.5px solid #e2e2e2; border-radius: 999px; background: #fff; color: #171717; font-size: 14px; font-weight: 600; text-decoration: none; transition: border-color .15s ease; }
.th-style-pill svg { width: 17px; height: 17px; flex-shrink: 0; }
.storefront-product-page .reviews-head { justify-content: flex-start; }
a.th-style-pill:hover { border-color: #171717; }
.th-style-pill.active { border-color: #171717; background: #171717; color: #fff; }
/* Threadheads birebir: madde listesi */
.th-spec-list { margin: 0; padding: 0; list-style: none; display: grid; gap: 6px; font-size: 14px; color: #333; }
.th-spec-list li { position: relative; padding-left: 18px; }
.th-spec-list li::before { content: ''; position: absolute; left: 0; top: 9px; width: 7px; height: 7px; border-radius: 50%; background: #171717; }
.th-spec-list a { color: #171717; font-weight: 600; }
/* Threadheads birebir: akordeonlar */
.th-accordions { display: grid; gap: 12px; margin-top: 26px; }
.th-accordion { border: 1.5px solid #e5e5e5; border-radius: 14px; background: #fff; overflow: hidden; }
.th-accordion[open] { border-color: #171717; }
.th-accordion summary { display: flex; align-items: center; justify-content: space-between; gap: 12px; padding: 16px 18px; cursor: pointer; list-style: none; font-size: 15px; font-weight: 800; color: #171717; }
.th-accordion summary::-webkit-details-marker { display: none; }
.th-accordion-title { display: inline-flex; align-items: center; gap: 10px; }
.th-accordion-title svg { width: 20px; height: 20px; }
.th-accordion-icon { display: grid; place-items: center; width: 28px; height: 28px; flex-shrink: 0; border-radius: 50%; background: #f1f1f1; font-weight: 800; }
.th-accordion-icon::before { content: '+'; font-size: 17px; line-height: 1; }
.th-accordion[open] .th-accordion-icon { background: #ffda16; }
.th-accordion[open] .th-accordion-icon::before { content: '–'; }
.th-accordion-body { padding: 0 18px 18px; font-size: 14px; line-height: 1.65; color: #444; display: grid; gap: 10px; }
.th-accordion-body p { margin: 0; }
.th-accordion-body strong { color: #171717; }
.th-ship-table { display: grid; gap: 8px; }
.th-ship-table > div { display: flex; justify-content: space-between; gap: 12px; padding: 10px 14px; border: 1px solid #eee; border-radius: 10px; background: #fafafa; }
/* Threadheads birebir: etiket hapları */
.th-tags { display: flex; flex-wrap: wrap; align-items: center; gap: 8px; margin-top: 20px; font-size: 13px; }
.th-tags-label { font-weight: 800; color: #171717; }
.th-tags a { display: inline-flex; align-items: center; min-height: 34px; padding: 0 14px; border: 1px solid #e2e2e2; border-radius: 999px; background: #fff; color: #333; font-weight: 600; text-decoration: none; }
.th-tags a:hover { border-color: #171717; color: #171717; }

/* Product layout stability overrides */
.storefront-product-page .product-info h1 { font-weight: 400; letter-spacing: -.01em; }
.storefront-product-page .option-label { justify-content: flex-start; }
@media (max-width: 1250px) {
  .storefront-product-page .product-layout { grid-template-columns: minmax(0,1fr) minmax(340px,.82fr); gap: 24px; }
}
@media (max-width: 1080px) {
  .storefront-product-page .product-layout { grid-template-columns: minmax(0,1fr); gap: 34px; }
  .storefront-product-page .product-gallery-standard { position: static; width: min(100%,760px); margin-inline: auto; }
  .storefront-product-page .product-info { width: min(100%,760px); margin-inline: auto; }
}
@media (max-width: 760px) {
  .storefront-product-page { padding: 20px 14px 36px; }
  .storefront-product-page .product-gallery-standard { width: 100%; grid-template-columns: 1fr; }
  .storefront-product-page .product-info { width: 100%; }
  .storefront-product-page .product-info h1 { font-size: 28px; }
  .storefront-product-page .size-grid { grid-template-columns: repeat(4,minmax(0,1fr)); }
}
/* Varyant kutuları (yazı / dosya / tarih) şık kart stili */
.storefront-product-page .variant-inputs-list { gap: 10px; }
.storefront-product-page .variant-input-item { gap: 9px; padding: 14px; border: 1.5px solid #e9e9e9; border-radius: 14px; background: linear-gradient(180deg,#fff,#fafafa); transition: border-color .15s ease, box-shadow .15s ease; }
.storefront-product-page .variant-input-item:focus-within { border-color: #171717; box-shadow: 0 0 0 3px #ffda1655; }
.storefront-product-page .variant-input-item.has-file { border-color: #1c7a3d; }
.storefront-product-page .variant-input-label { display: flex; align-items: center; gap: 7px; font-size: 13px; font-weight: 700; color: #171717; }
.storefront-product-page .required-asterisk { display: inline-grid; place-items: center; min-width: 18px; height: 18px; padding: 0 5px; margin-left: 2px; border-radius: 999px; background: #e74c3c; color: #fff; font-size: 12px; font-weight: 800; line-height: 1; }
.storefront-product-page .variant-text-input,
.storefront-product-page .variant-date-input { min-height: 50px; padding: 0 14px; border: 1.5px solid #e2e2e2; border-radius: 10px; font-size: 14px; background: #fff; color: #171717; }
.storefront-product-page .variant-text-input::placeholder { color: #a0a0a0; }
.storefront-product-page .variant-text-input:focus,
.storefront-product-page .variant-date-input:focus,
.storefront-product-page .variant-file-input:focus { outline: none; border-color: #171717; }
.storefront-product-page .variant-date-input { cursor: pointer; }
.storefront-product-page .variant-text-input.variant-input-error,
.storefront-product-page .variant-file-input.variant-input-error,
.storefront-product-page .variant-date-input.variant-input-error { border-color: #e74c3c; border-style: solid; background: #fef3f2; }
.storefront-product-page .variant-file-input { padding: 12px; border: 1.5px dashed #c9c9c9; border-radius: 10px; background: #fff; font-size: 13px; color: #777; cursor: pointer; }
.storefront-product-page .variant-file-input:hover { border-color: #171717; }
.storefront-product-page .variant-file-input::file-selector-button { min-height: 40px; margin-right: 12px; padding: 0 18px; border: 0; border-radius: 9px; background: #171717; color: #fff; font: inherit; font-size: 13px; font-weight: 700; cursor: pointer; }
.storefront-product-page .variant-file-input::file-selector-button:hover { background: #2b2b2b; }

/* Optional product personalization lives in a right-side drawer. */
.th-customize-trigger { display: grid; grid-template-columns: 42px minmax(0,1fr) 22px; align-items: center; gap: 12px; width: 100%; min-height: 72px; padding: 12px 16px; border: 1px solid #dadada; border-radius: 9px; background: #fff; color: #171717; text-align: left; cursor: pointer; transition: border-color .18s ease, box-shadow .18s ease, transform .18s ease; }
.th-customize-trigger:hover { border-color: #171717; box-shadow: 0 8px 22px #0000000d; transform: translateY(-1px); }
.th-customize-trigger-icon { display: grid; place-items: center; width: 42px; height: 42px; border-radius: 50%; background: #ffda16; }
.th-customize-trigger-icon svg { width: 20px; height: 20px; }
.th-customize-trigger > span:nth-child(2) { display: grid; gap: 3px; }
.th-customize-trigger strong { font-size: 14px; font-weight: 700; }
.th-customize-trigger small { color: #777; font-size: 12px; line-height: 1.35; }
.th-customize-trigger-arrow { width: 19px; height: 19px; }
.th-customization-shell { position: fixed; inset: 0; z-index: 1200; visibility: hidden; pointer-events: none; }
.th-customization-shell.is-open { visibility: visible; pointer-events: auto; }
.th-customization-backdrop { position: absolute; inset: 0; width: 100%; height: 100%; padding: 0; border: 0; background: #0006; opacity: 0; cursor: default; transition: opacity .24s ease; }
.th-customization-shell.is-open .th-customization-backdrop { opacity: 1; }
.th-customization-drawer { position: absolute; inset: 0 0 0 auto; display: grid; grid-template-rows: auto minmax(0,1fr) auto; width: min(900px,100vw); background: #fff; box-shadow: -28px 0 70px #0003; transform: translateX(100%); transition: transform .28s cubic-bezier(.22,.8,.3,1); }
.th-customization-shell.is-open .th-customization-drawer { transform: translateX(0); }
.th-customization-head { display: flex; align-items: center; justify-content: space-between; gap: 20px; padding: 24px 26px 20px; border-bottom: 1px solid #e9e9e9; }
.th-customization-head > div { display: grid; gap: 5px; }
.th-customization-kicker { font-size: 10px; font-weight: 800; letter-spacing: .16em; }
.th-customization-head h2 { margin: 0; font-size: 25px; font-weight: 500; letter-spacing: -.03em; }
.th-customization-close { display: grid; place-items: center; width: 42px; height: 42px; padding: 0; border: 1px solid #ddd; border-radius: 50%; background: #fff; color: #171717; cursor: pointer; }
.th-customization-close:hover { border-color: #171717; }
.th-customization-close svg { width: 20px; height: 20px; }
.th-customization-content { display: grid; grid-template-columns: minmax(300px,2fr) minmax(360px,3fr); min-height: 0; overflow: hidden; }
.th-customization-product { display: grid; align-content: start; gap: 18px; min-width: 0; padding: 26px; border-right: 1px solid #e9e9e9; background: #f5f5f5; }
.th-customization-product-image { display: grid; place-items: center; overflow: hidden; width: 100%; aspect-ratio: 1; border-radius: 14px; background: #fff; }
.th-customization-product img { width: 100%; height: 100%; padding: 18px; object-fit: contain; }
.th-customization-product span { display: grid; gap: 6px; min-width: 0; padding: 2px 4px; }
.th-customization-product small { color: #777; font-size: 10px; font-style: normal; font-weight: 800; letter-spacing: .12em; }
.th-customization-product strong { font-size: 17px; font-weight: 700; line-height: 1.3; }
.th-customization-product em { color: #777; font-size: 12px; font-style: normal; line-height: 1.45; }
.th-customization-body { display: grid; align-content: start; gap: 18px; min-width: 0; overflow-y: auto; padding: 26px; }
.th-customization-body .option-group { display: grid; gap: 10px; margin: 0; }
.th-customization-body .variant-input-item { padding: 16px; border-radius: 10px; background: #fafafa; }
.th-customization-footer { padding: 18px 26px 24px; border-top: 1px solid #e9e9e9; background: #fff; }
.th-customization-footer .btn { min-height: 54px; }
body.customization-open { overflow: hidden; }
@media (max-width: 600px) {
  .th-customization-head { padding: 18px; }
  .th-customization-content { display: block; overflow-y: auto; }
  .th-customization-product { grid-template-columns: 78px minmax(0,1fr); align-items: center; gap: 14px; padding: 16px 18px; border-right: 0; border-bottom: 1px solid #e9e9e9; }
  .th-customization-product-image { width: 78px; aspect-ratio: 1; border-radius: 9px; }
  .th-customization-product img { padding: 6px; }
  .th-customization-product strong { font-size: 14px; }
  .th-customization-product em { display: none; }
  .th-customization-body { padding: 18px; }
  .th-customization-footer { padding: 14px 18px 18px; }
}

/* Product selectors: Threadheads proportions and a single, clean selection ring. */
.storefront-product-page .product-info > .option-group {
  gap: 10px;
  margin: 0;
}
.storefront-product-page .product-info > .option-group + .option-group {
  margin-top: 2px;
}
.storefront-product-page .option-label,
.storefront-product-page .option-label .th-label {
  min-height: 22px;
  font-size: 15px;
  font-weight: 400;
  line-height: 1.35;
}
.storefront-product-page .option-label strong {
  font-weight: 500;
}
.storefront-product-page .th-color-group .color-grid,
.storefront-product-page .th-variant-color-group .color-grid {
  gap: 12px;
  min-height: 42px;
  padding: 2px;
}
.storefront-product-page .th-color-group .color-btn,
.storefront-product-page .th-variant-color-group .color-btn {
  box-sizing: border-box;
  width: 36px;
  min-width: 36px;
  height: 36px;
  min-height: 36px;
  padding: 4px;
  gap: 0;
  border: 1px solid transparent;
  border-radius: 50%;
  background: transparent;
  color: transparent;
  font-size: 0;
  line-height: 0;
  box-shadow: none;
}
.storefront-product-page .th-color-group .color-btn .color-dot,
.storefront-product-page .th-variant-color-group .color-btn .color-dot {
  box-sizing: border-box;
  width: 26px;
  height: 26px;
  border: 1px solid #0002;
  border-radius: 50%;
  background: var(--swatch);
  box-shadow: none;
}
.storefront-product-page .th-color-group .color-btn:hover,
.storefront-product-page .th-variant-color-group .color-btn:hover {
  border-color: #8b8b8b;
}
.storefront-product-page .th-color-group .color-btn.active,
.storefront-product-page .th-variant-color-group .color-btn.active {
  border-color: #171717;
  background: transparent;
  color: transparent;
  box-shadow: none;
}
.storefront-product-page .th-size-group .size-grid {
  display: grid;
  grid-template-columns: repeat(5, minmax(0, 70px));
  gap: 8px;
}
.storefront-product-page .th-size-group .size-btn {
  box-sizing: border-box;
  width: 70px;
  min-width: 0;
  min-height: 50px;
  padding: 0 8px;
  border: 1px solid #e1e1e1;
  border-radius: 7px;
  background: #fff;
  font-size: 14px;
  font-weight: 400;
}
.storefront-product-page .th-size-group .size-btn.active {
  border-color: #171717;
  box-shadow: inset 0 0 0 1px #171717;
}
.storefront-product-page .th-fit-group .color-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 160px));
  gap: 8px;
}
.storefront-product-page .th-fit-group .size-btn {
  box-sizing: border-box;
  width: 100%;
  min-width: 0;
  min-height: 54px;
  padding: 0 16px;
  border: 1px solid #e1e1e1;
  border-radius: 7px;
  background: #fff;
  font-size: 14px;
  font-weight: 400;
}
.storefront-product-page .th-fit-group .size-btn .th-fit-icon {
  width: 32px;
  height: 32px;
  flex: 0 0 32px;
  stroke-linecap: round;
  stroke-linejoin: round;
}
.storefront-product-page .th-fit-group .size-btn.active {
  border-color: #171717;
  box-shadow: inset 0 0 0 1px #171717;
}
@media (max-width: 480px) {
  .storefront-product-page .th-size-group .size-grid {
    grid-template-columns: repeat(5, minmax(0, 1fr));
    gap: 6px;
  }
  .storefront-product-page .th-size-group .size-btn {
    width: 100%;
    padding: 0 4px;
  }
  .storefront-product-page .th-fit-group .color-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

/* Kendin Tasarla: eski siteyle aynı sol ölçüler (baz tema, contain + doğal yükseklik). Sağ panele dokunulmaz. */
.storefront-product-page > .container:has(.product-gallery-custom),
.storefront-product-page.has-custom > .container,
.storefront-product-page > .container.has-custom {
  max-width: 1480px;
}
.storefront-product-page .product-layout:has(.product-gallery-custom),
.storefront-product-page .product-layout.has-custom {
  grid-template-columns: minmax(0,0.92fr) minmax(360px,0.58fr);
  gap: 40px;
  align-items: start;
}
.storefront-product-page .product-gallery-custom {
  width: 100%;
  min-width: 0;
  display: grid;
  gap: 12px;
  align-content: start;
}
.storefront-product-page .product-gallery-custom .design-workspace {
  grid-template-columns: 132px minmax(0,1fr);
  gap: 10px;
  width: 100%;
  align-items: stretch;
}
.storefront-product-page .product-gallery-custom .product-main-image-wrap {
  display: block;
  width: 100%;
  min-width: 0;
  min-height: 540px;
  max-height: 660px;
  aspect-ratio: 4 / 5;
  overflow: hidden;
  border-radius: 6px;
  background: var(--soft);
}
.storefront-product-page .product-gallery-custom .product-main-image {
  width: 100%;
  height: 100%;
  min-height: 540px;
  max-width: none;
  max-height: 660px;
  aspect-ratio: auto;
  object-fit: cover;
  object-position: center top;
  display: block;
  margin: 0;
}
.storefront-product-page .product-gallery-custom .design-toolbar {
  padding: 14px;
}
.storefront-product-page .product-gallery-custom .mockup-side-toggle {
  margin-bottom: 4px;
}
@media (max-width: 1280px) {
  .storefront-product-page .product-layout:has(.product-gallery-custom),
  .storefront-product-page .product-layout.has-custom {
    grid-template-columns: minmax(580px,1.25fr) minmax(340px,.75fr);
    gap: 28px;
  }
  .storefront-product-page .product-gallery-custom .design-workspace {
    grid-template-columns: 140px minmax(0,1fr);
    gap: 12px;
  }
}
@media (max-width: 1080px) {
  .storefront-product-page .product-layout:has(.product-gallery-custom),
  .storefront-product-page .product-layout.has-custom {
    grid-template-columns: minmax(0,1fr);
    gap: 34px;
  }
  .storefront-product-page .product-gallery-custom,
  .storefront-product-page .product-layout:has(.product-gallery-custom) .product-info,
  .storefront-product-page .product-layout.has-custom .product-info {
    width: min(100%,820px);
    margin-inline: auto;
  }
}
@media (max-width: 760px) {
  .storefront-product-page .product-gallery-custom,
  .storefront-product-page .product-layout:has(.product-gallery-custom) .product-info,
  .storefront-product-page .product-layout.has-custom .product-info {
    width: 100%;
  }
  .storefront-product-page .product-gallery-custom .design-workspace {
    grid-template-columns: 1fr;
  }
}

/* Keep product media generous without pushing the rest of the page too far down. */
/* Not: custom (Kendin Tasarla) bilerek hariç — eski sitedeki contain + doğal ölçü korunur. */
@media (min-width: 761px) {
  .storefront-product-page .product-gallery-standard .product-main-image {
    width: 100%;
    height: auto;
    min-height: 0;
    max-height: 600px;
    aspect-ratio: auto;
    object-fit: contain;
    object-position: center top;
    background: #f0eeee;
  }
}
@media (max-width: 760px) {
  .storefront-product-page .product-gallery-standard .product-main-image {
    width: 100%;
    height: auto;
    aspect-ratio: auto;
    max-height: 70svh;
    object-fit: contain;
    background: #f0eeee;
  }
}
.storefront-product-page .th-file-name { display: flex; align-items: center; gap: 8px; font-size: 12.5px; font-weight: 700; color: #1c7a3d; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.storefront-product-page .th-file-name::before { content: '✓'; display: grid; place-items: center; width: 20px; height: 20px; flex-shrink: 0; border-radius: 50%; background: #1c7a3d; color: #fff; font-size: 12px; font-weight: 800; }
.storefront-product-page .form-hint { display: flex; align-items: center; gap: 6px; font-size: 12px; color: #888; }
.storefront-product-page .form-hint::before { content: 'ⓘ'; font-size: 13px; color: #aaa; }
/* Çerçeve birliği: tüm hap/sekme çerçeveleri 1px */
.th-style-pill { border-width: 1px; }
.storefront-product-page .product-detail-tab { border-width: 1px; }
.storefront-product-page .th-accordion { border-width: 1px; }
@media (prefers-reduced-motion: reduce) {
  .storefront-theme *, .storefront-theme *::before, .storefront-theme *::after { scroll-behavior: auto; animation: none; transition-duration: 0s; }
}

/* Consistent, unobtrusive scrolling for storefront dialogs and drawers. */
.storefront-theme :is(.terms-modal,.login-modal,.account-address-modal,.order-detail-modal-content,.account-review-modal,.catalog-filter-modal,.th-customization-body,.th-customization-content,.search-drawer,.drawer-cart-list) {
  scrollbar-width: thin;
  scrollbar-color: #aaa transparent;
  scrollbar-gutter: stable;
  overscroll-behavior: contain;
}
.storefront-theme :is(.terms-modal,.login-modal,.account-address-modal,.order-detail-modal-content,.account-review-modal,.catalog-filter-modal,.th-customization-body,.th-customization-content,.search-drawer,.drawer-cart-list)::-webkit-scrollbar { width: 7px; height: 7px; }
.storefront-theme :is(.terms-modal,.login-modal,.account-address-modal,.order-detail-modal-content,.account-review-modal,.catalog-filter-modal,.th-customization-body,.th-customization-content,.search-drawer,.drawer-cart-list)::-webkit-scrollbar-track { margin-block: 8px; background: transparent; }
.storefront-theme :is(.terms-modal,.login-modal,.account-address-modal,.order-detail-modal-content,.account-review-modal,.catalog-filter-modal,.th-customization-body,.th-customization-content,.search-drawer,.drawer-cart-list)::-webkit-scrollbar-thumb { border: 2px solid transparent; border-radius: 999px; background: #aaa; background-clip: padding-box; }
.storefront-theme :is(.terms-modal,.login-modal,.account-address-modal,.order-detail-modal-content,.account-review-modal,.catalog-filter-modal,.th-customization-body,.th-customization-content,.search-drawer,.drawer-cart-list)::-webkit-scrollbar-thumb:hover { background: #707070; background-clip: padding-box; }
@media (max-width: 760px) {
  .storefront-theme :is(.terms-modal,.login-modal,.account-address-modal,.order-detail-modal-content,.account-review-modal,.catalog-filter-modal,.th-customization-body,.th-customization-content,.search-drawer,.drawer-cart-list) { scrollbar-gutter: auto; }
  .storefront-theme :is(.terms-modal,.login-modal,.account-address-modal,.order-detail-modal-content,.account-review-modal,.catalog-filter-modal,.th-customization-body,.th-customization-content,.search-drawer,.drawer-cart-list)::-webkit-scrollbar { width: 4px; }
}

/* Storefront floating contact and navigation actions. */
.storefront-floating-actions {
  position: fixed;
  right: max(20px, env(safe-area-inset-right));
  bottom: max(20px, env(safe-area-inset-bottom));
  z-index: 850;
  display: flex;
  flex-direction: column;
  gap: 10px;
}
.storefront-floating-button {
  display: grid;
  place-items: center;
  width: 52px;
  height: 52px;
  padding: 0;
  border: 1px solid rgb(255 255 255 / 45%);
  border-radius: 50%;
  box-shadow: 0 8px 24px rgb(20 28 43 / 18%);
  color: #fff;
  text-decoration: none;
  transition: transform .18s ease, box-shadow .18s ease, background-color .18s ease;
}
.storefront-floating-button:hover {
  transform: translateY(-2px);
  box-shadow: 0 11px 28px rgb(20 28 43 / 24%);
}
.storefront-floating-button svg { width: 23px; height: 23px; }
.storefront-floating-whatsapp { position: relative; background: #25d366; }
.storefront-floating-whatsapp:hover { background: #1fbd5b; }
.storefront-floating-whatsapp svg { fill: currentColor; }
.storefront-live-support-label {
  position: absolute;
  right: calc(100% + 12px);
  top: 50%;
  display: inline-flex;
  align-items: center;
  gap: 7px;
  width: max-content;
  padding: 9px 12px;
  border: 1px solid #e8ecea;
  border-radius: 9px;
  background: #fff;
  box-shadow: 0 8px 24px rgb(20 28 43 / 13%);
  color: #243129;
  font-size: 12px;
  font-weight: 700;
  line-height: 1;
  pointer-events: none;
  opacity: 0;
  transform: translate(8px,-50%);
  animation: storefront-live-support 8s ease-in-out 1.2s infinite;
}
.storefront-live-support-label::after {
  content: "";
  position: absolute;
  right: -5px;
  top: 50%;
  width: 9px;
  height: 9px;
  border-top: 1px solid #e8ecea;
  border-right: 1px solid #e8ecea;
  background: #fff;
  transform: translateY(-50%) rotate(45deg);
}
.storefront-live-support-label > span {
  width: 7px;
  height: 7px;
  border-radius: 50%;
  background: #25d366;
  box-shadow: 0 0 0 3px rgb(37 211 102 / 14%);
}
.storefront-floating-whatsapp:hover .storefront-live-support-label,
.storefront-floating-whatsapp:focus-visible .storefront-live-support-label {
  opacity: 1;
  transform: translate(0,-50%);
}
@keyframes storefront-live-support {
  0%, 12%, 60%, 100% { opacity: 0; transform: translate(8px,-50%); }
  18%, 52% { opacity: 1; transform: translate(0,-50%); }
}
.storefront-back-to-top {
  display: none;
  border-color: rgb(255 255 255 / 18%);
  background: #171717;
}
.storefront-back-to-top.is-visible { display: grid; }
.storefront-back-to-top:hover { background: #303030; }
@media (max-width: 760px) {
  .storefront-floating-actions {
    right: max(14px, env(safe-area-inset-right));
    bottom: calc(104px + env(safe-area-inset-bottom));
    gap: 8px;
  }
  .storefront-floating-button { width: 48px; height: 48px; }
  .storefront-floating-button svg { width: 21px; height: 21px; }
  .storefront-live-support-label { display: none; }
}
@media (prefers-reduced-motion: reduce) {
  .storefront-live-support-label { animation: none; }
}

/* Refined shop and category catalog controls. */
.storefront-theme .collection-hero {
  isolation: isolate;
}
.storefront-theme .collection-hero::after {
  background: linear-gradient(90deg, rgb(0 0 0 / 66%), rgb(0 0 0 / 20%) 64%, rgb(0 0 0 / 8%));
}
.storefront-theme .collection-title { padding-inline: clamp(22px, 3.2vw, 52px); }
.storefront-theme .collection-title p { max-width: 600px; margin-top: 12px; color: rgb(255 255 255 / 82%); font-size: 15px; line-height: 1.65; }
.catalog-heading {
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  gap: 24px;
  margin-bottom: 8px;
}
.catalog-heading .eyebrow { margin-bottom: 7px; color: #777; font-size: 11px; font-weight: 700; letter-spacing: .08em; text-transform: uppercase; }
.catalog-heading h2 { font-size: clamp(25px, 2.7vw, 38px); font-weight: 600; letter-spacing: -.035em; }
.catalog-result-count { flex: 0 0 auto; color: #777; font-size: 13px; }
.storefront-theme .catalog-toolbar {
  align-items: center;
  margin-bottom: 0;
  padding-block: 18px;
  border-top: 1px solid var(--line);
  border-bottom: 1px solid var(--line);
}
.catalog-toolbar-actions { display: flex; align-items: center; gap: 10px; flex: 0 0 auto; }
.catalog-filter-toggle {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  min-height: 42px;
  padding: 0 14px;
  border: 1px solid #d9d9d9;
  border-radius: 4px;
  background: #fff;
  color: #202020;
  font-size: 12px;
  font-weight: 700;
}
.catalog-filter-toggle:hover,.catalog-filter-toggle[aria-expanded="true"] { border-color: #171717; background: #f7f7f7; }
.catalog-filter-toggle svg { width: 18px; height: 18px; stroke-width: 1.7; }
.catalog-filter-toggle > span { display: grid; place-items: center; min-width: 19px; height: 19px; padding: 0 5px; border-radius: 10px; background: #171717; color: #fff; font-size: 10px; }
.catalog-filter-toggle > span[hidden] { display: none !important; }
.catalog-sort-field { display: flex; align-items: center; gap: 9px; min-height: 42px; padding-left: 13px; border: 1px solid #d9d9d9; border-radius: 4px; background: #fff; color: #858585; font-size: 11px; font-weight: 600; }
.storefront-theme .catalog-sort-field .sort-select { min-height: 40px; max-width: 218px; border: 0; padding-left: 0; color: #202020; text-transform: none; outline: none; }
.catalog-filter-panel {
  display: grid;
  grid-template-columns: minmax(150px,.8fr) minmax(150px,.7fr) minmax(260px,1.35fr) auto;
  align-items: start;
  gap: 28px;
  padding: 22px 24px;
  margin-bottom: 28px;
  border: 1px solid #e1e1e1;
  border-top: 0;
  background: #fafafa;
}
.catalog-filter-panel[hidden] { display: none !important; }
.catalog-filter-modal {
  position: fixed;
  z-index: 1201;
  top: 50%;
  left: 50%;
  display: grid;
  grid-template-columns: repeat(2,minmax(0,1fr));
  width: min(680px,calc(100vw - 36px));
  max-height: min(680px,calc(100dvh - 48px));
  margin: 0;
  padding: 0;
  overflow-y: auto;
  border: 0;
  border-radius: 14px;
  background: #fff;
  box-shadow: 0 28px 90px rgb(0 0 0 / 28%);
  transform: translate(-50%,-50%);
  scrollbar-width: thin;
}
.catalog-filter-backdrop { position: fixed; inset: 0; z-index: 1200; width: 100%; height: 100%; padding: 0; border: 0; background: rgb(15 15 15 / 58%); backdrop-filter: blur(4px); cursor: default; }
.catalog-filter-backdrop[hidden] { display: none !important; }
body.catalog-filter-modal-open { overflow: hidden; }
.catalog-filter-modal-head { grid-column: 1 / -1; display: flex; align-items: center; justify-content: space-between; gap: 20px; padding: 22px 24px 18px; border-bottom: 1px solid #ececec; }
.catalog-filter-modal-head div { display: grid; gap: 2px; }
.catalog-filter-modal-head span { color: #888; font-size: 10px; font-weight: 700; letter-spacing: .08em; text-transform: uppercase; }
.catalog-filter-modal-head strong { color: #171717; font-size: 24px; letter-spacing: -.035em; }
.catalog-filter-modal-head button { display: grid; place-items: center; width: 38px; height: 38px; padding: 0; border: 1px solid #dedede; border-radius: 50%; background: #fff; color: #222; }
.catalog-filter-modal-head button:hover { background: #f4f4f4; }
.catalog-filter-modal-head svg { width: 17px; height: 17px; stroke-width: 1.8; }
.catalog-filter-modal > .catalog-filter-group { padding: 22px 24px; border-bottom: 1px solid #eee; }
.catalog-filter-modal > .catalog-filter-group:nth-of-type(even) { border-left: 1px solid #eee; }
.catalog-filter-modal .catalog-filter-reset { align-self: center; justify-self: start; margin: 18px 24px; }
.catalog-filter-modal-foot { grid-column: 1 / -1; display: flex; align-items: center; justify-content: space-between; gap: 18px; padding: 16px 24px; border-top: 1px solid #ececec; background: #fafafa; }
.catalog-filter-modal-foot > span { color: #666; font-size: 12px; font-weight: 700; }
.catalog-filter-modal-foot .btn { min-width: 160px; background: #171717; color: #fff; }
.storefront-theme .catalog-toolbar ~ .product-grid { margin-top: 32px; }
.catalog-filter-group { display: grid; gap: 10px; }
.catalog-filter-group strong { margin-bottom: 2px; color: #202020; font-size: 12px; }
.catalog-filter-group label { display: flex; align-items: center; gap: 8px; color: #666; font-size: 12px; cursor: pointer; }
.catalog-filter-group input[type="checkbox"] { width: 16px; height: 16px; accent-color: #171717; }
.catalog-price-filter > div { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 8px; }
.catalog-price-filter label { display: grid; gap: 5px; }
.catalog-price-filter label span { color: #858585; font-size: 10px; }
.catalog-price-filter input { width: 100%; min-width: 0; height: 38px; padding: 0 10px; border: 1px solid #d9d9d9; border-radius: 4px; background: #fff; color: #222; }
.catalog-price-presets { display: flex !important; grid-template-columns: none !important; flex-wrap: wrap; gap: 7px !important; margin-top: 3px; }
.catalog-price-presets button { min-height: 30px; padding: 0 10px; border: 1px solid #dedede; border-radius: 999px; background: #fff; color: #666; font-size: 10px; font-weight: 700; }
.catalog-price-presets button:hover,.catalog-price-presets button.active { border-color: #171717; background: #171717; color: #fff; }
.catalog-filter-reset { align-self: end; min-height: 38px; padding: 0 14px; border: 0; border-bottom: 1px solid #777; background: transparent; color: #555; font-size: 11px; font-weight: 700; }
.catalog-filter-reset:hover { color: #111; border-color: #111; }
.catalog-empty-state {
  grid-column: 1 / -1;
  display: grid;
  justify-items: center;
  padding: 70px 20px;
  border: 1px dashed #d9d9d9;
  background: #fbfbfb;
  text-align: center;
}
.catalog-empty-state svg { width: 30px; height: 30px; margin-bottom: 15px; color: #999; stroke-width: 1.4; }
.catalog-empty-state h3 { margin-bottom: 6px; font-size: 17px; font-weight: 600; }
.catalog-empty-state p { color: #777; font-size: 12px; }
@media (max-width: 980px) {
  .catalog-filter-panel:not(.catalog-filter-modal) { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .catalog-filter-reset { justify-self: start; }
}
@media (max-width: 760px) {
  .storefront-theme .collection-hero { height: 220px; min-height: 220px; }
  .catalog-heading { align-items: flex-start; margin-bottom: 18px; }
  .catalog-heading h2 { font-size: 25px; }
  .storefront-theme .catalog-toolbar { display: grid; gap: 14px; padding-top: 0; border-top: 0; }
  .storefront-theme .catalog-toolbar .filterbar { width: 100%; order: 2; }
  .catalog-toolbar-actions { display: grid; grid-template-columns: minmax(0,.8fr) minmax(0,1.2fr); width: 100%; order: 1; }
  .catalog-filter-toggle,.catalog-sort-field { width: 100%; min-width: 0; }
  .catalog-sort-field > span { display: none; }
  .storefront-theme .catalog-sort-field .sort-select { width: 100%; max-width: none; padding-left: 10px; }
  .catalog-filter-panel:not(.catalog-filter-modal) { grid-template-columns: 1fr; gap: 20px; margin-bottom: 22px; padding: 20px; }
  .catalog-filter-modal { grid-template-columns: 1fr; width: min(100% - 24px,520px); max-height: calc(100dvh - 24px); border-radius: 12px; }
  .catalog-filter-modal-head { position: sticky; top: 0; z-index: 2; padding: 17px 18px 14px; background: #fff; }
  .catalog-filter-modal-head strong { font-size: 21px; }
  .catalog-filter-modal > .catalog-filter-group { padding: 18px; }
  .catalog-filter-modal > .catalog-filter-group:nth-of-type(even) { border-left: 0; }
  .catalog-filter-modal .catalog-filter-reset { margin: 15px 18px; }
  .catalog-filter-modal-foot { position: sticky; bottom: 0; z-index: 2; padding: 13px 18px; }
  .catalog-filter-modal-foot { align-items: stretch; flex-direction: column; gap: 10px; }
  .catalog-filter-modal-foot > span { text-align: center; }
  .catalog-filter-modal-foot .btn { width: 100%; }
  .storefront-theme .catalog-toolbar ~ .product-grid { margin-top: 24px; }
}
.drop-hero-placeholder {
  width: 100%;
  height: 100%;
  min-height: 420px;
  background: linear-gradient(135deg, #171717 0%, #292929 55%, #111 100%);
}
.drop-hero-media { position: relative; overflow: hidden; }
.drop-hero-image-stage { width: 100%; height: 100%; }
.drop-hero-media.is-product-showcase { display: grid; place-items: center; padding: clamp(18px,3vw,42px); background: radial-gradient(circle at 50% 45%,#faf9f6 0,#e9e7e2 72%,#d9d6d0 100%); }
.drop-hero-media.is-product-showcase::before { position: absolute; inset: 8% 12%; content: ""; border: 1px solid rgba(20,20,20,.08); border-radius: 999px; }
.drop-hero-media.is-product-showcase .drop-hero-image-stage { position: relative; z-index: 1; width: 100%; height: 330px; max-width: 390px; }
.drop-hero-media.is-product-showcase img { position: absolute; inset: 0; display: block; width: 100%; height: 100%; object-fit: contain; object-position: center; filter: drop-shadow(0 18px 22px rgba(0,0,0,.14)); }
.drop-hero-media.is-collection-cover img { object-fit: cover; }
.drop-hero-media-label { position: absolute; z-index: 2; left: 22px; bottom: 18px; padding: 7px 10px; border-radius: 999px; background: rgba(255,255,255,.88); color: #262626; font-size: 10px; font-weight: 700; letter-spacing: .03em; backdrop-filter: blur(6px); }
@media (max-width: 720px) {
  .drop-hero-media.is-product-showcase { padding: 18px 22px 28px; }
  .drop-hero-media.is-product-showcase .drop-hero-image-stage { height: 180px; }
  .drop-hero-media-label { left: 14px; bottom: 10px; }
}

/* ============================================================
   Cart page refresh (modern layout)
   Overrides the earlier cart rules in this file and styles.css.
   ============================================================ */
.storefront-theme .cart-page {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 400px;
  gap: 56px;
  align-items: start;
}

.storefront-theme .cart-main { min-width: 0; }

/* Head */
.storefront-theme .cart-page-head {
  display: grid;
  grid-template-columns: 1fr auto;
  align-items: end;
  gap: 4px 16px;
  margin-bottom: 28px;
}
.storefront-theme .cart-page-head p {
  grid-column: 1 / -1;
  margin: 0;
  color: #8a8a8a;
  font-size: 11px;
  font-weight: 700;
  letter-spacing: .18em;
  text-transform: uppercase;
}
.storefront-theme .cart-page-head h1 {
  margin: 0;
  font-size: clamp(32px, 3.4vw, 46px);
  font-weight: 600;
  letter-spacing: -.035em;
}
.storefront-theme .cart-page-head span {
  align-self: center;
  padding: 6px 13px;
  border-radius: 999px;
  background: #f3f3f3;
  color: #555;
  font-size: 12px;
  font-weight: 600;
  white-space: nowrap;
}

/* List */
.storefront-theme .cart-list {
  display: grid;
  gap: 0;
  border-top: 1px solid #eaeaea;
}
.storefront-theme .cart-item {
  display: grid;
  grid-template-columns: 140px minmax(0, 1fr);
  gap: 22px;
  align-items: start;
  padding: 22px 0;
  border-bottom: 1px solid #eaeaea;
}
.storefront-theme .cart-item-media {
  display: block;
  overflow: hidden;
  border-radius: 8px;
  background: #f4f4f4;
}
.storefront-theme .cart-item-media img {
  display: block;
  width: 100%;
  aspect-ratio: 4 / 5;
  object-fit: cover;
  border-radius: 8px;
  transition: transform .5s cubic-bezier(.22, 1, .36, 1);
}
.storefront-theme .cart-item:hover .cart-item-media img { transform: scale(1.04); }

.storefront-theme .cart-item-body {
  display: grid;
  align-content: start;
  gap: 10px;
  min-width: 0;
}
.storefront-theme .cart-item-head {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: start;
  gap: 16px;
}
.storefront-theme .cart-item-head h3 {
  margin: 0;
  font-size: 16px;
  font-weight: 600;
  line-height: 1.35;
}
.storefront-theme .cart-item-head h3 a { color: inherit; text-decoration: none; }
.storefront-theme .cart-item-head h3 a:hover { text-decoration: underline; text-underline-offset: 4px; }

.storefront-theme .cart-price { font-size: 16px; font-weight: 600; white-space: nowrap; }
.storefront-theme .cart-price small { color: #9a9a9a; font-size: 12px; }
.storefront-theme .cart-price strong { font-size: 16px; font-weight: 600; }

.storefront-theme .cart-item-meta {
  margin: 0;
  color: #777;
  font-size: 13px;
  line-height: 1.5;
}
.storefront-theme .cart-item-actions {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  margin-top: 2px;
}

.storefront-theme .qty {
  display: inline-grid;
  grid-template-columns: 36px 40px 36px;
  align-items: center;
  min-height: 38px;
  margin-top: 0;
  border: 1px solid #e2e2e2;
  border-radius: 999px;
  background: #fff;
  overflow: hidden;
}
.storefront-theme .qty button {
  height: 38px;
  border: 0;
  background: transparent;
  color: #171717;
  font-size: 16px;
  line-height: 1;
  cursor: pointer;
  transition: background .18s ease;
}
.storefront-theme .qty button:hover { background: #f3f3f3; }
.storefront-theme .qty span { text-align: center; font-size: 14px; font-weight: 600; }

.storefront-theme .cart-item .remove-link {
  min-height: auto;
  margin: 0;
  padding: 0;
  color: #9a9a9a;
  font-size: 12px;
  font-weight: 600;
  letter-spacing: .01em;
  text-decoration: none;
  border-bottom: 1px solid transparent;
  transition: color .18s ease, border-color .18s ease;
}
.storefront-theme .cart-item .remove-link:hover { color: #171717; border-color: #171717; }

/* Summary */
.storefront-theme .cart-summary {
  position: sticky;
  top: calc(var(--header-height) + 24px);
  display: grid;
  gap: 15px;
  padding: 26px;
  border: 1px solid #ececec;
  border-radius: 14px;
  background: #fafafa;
  box-shadow: 0 20px 55px -34px rgba(0, 0, 0, .38);
}
.storefront-theme .cart-summary::before { content: none; }
.storefront-theme .cart-summary-title {
  margin: 0;
  padding-bottom: 16px;
  border-bottom: 1px solid #e6e6e6;
  font-size: 20px;
  font-weight: 600;
  letter-spacing: -.02em;
}
.storefront-theme .cart-summary .summary-row { font-size: 14px; color: #4a4a4a; }
.storefront-theme .cart-summary .summary-row strong { color: #171717; font-weight: 600; }
.storefront-theme .cart-summary .summary-row.total {
  margin-top: 2px;
  padding-top: 16px;
  border-top: 1px solid #e6e6e6;
  font-size: 19px;
  color: #171717;
}
.storefront-theme .cart-summary .btn { margin-top: 2px; }
.storefront-theme .cart-summary .btn.ghost { border-color: #d9d9d9; }

/* Empty state */
.storefront-theme .cart-page--empty { grid-template-columns: 1fr; }
.storefront-theme .cart-empty {
  display: grid;
  justify-items: center;
  gap: 14px;
  max-width: 480px;
  margin: 36px auto;
  padding: 56px 32px;
  text-align: center;
  border: 1px solid #ececec;
  border-radius: 16px;
  background: #fafafa;
}
.storefront-theme .cart-empty-art {
  display: grid;
  place-items: center;
  width: 66px;
  height: 66px;
  margin-bottom: 2px;
  border-radius: 50%;
  background: #171717;
  color: #fff;
}
.storefront-theme .cart-empty-art svg {
  width: 28px;
  height: 28px;
  fill: none;
  stroke: currentColor;
  stroke-width: 1.6;
  stroke-linecap: round;
  stroke-linejoin: round;
}
.storefront-theme .cart-empty h1 { margin: 0; font-size: 26px; font-weight: 600; letter-spacing: -.02em; }
.storefront-theme .cart-empty p { margin: 0; color: #777; font-size: 14px; line-height: 1.6; }
.storefront-theme .cart-empty .btn { margin-top: 8px; }

/* Focus states */
.storefront-theme .cart-item .remove-link:focus-visible,
.storefront-theme .qty button:focus-visible,
.storefront-theme .cart-empty .btn:focus-visible {
  outline: 2px solid #171717;
  outline-offset: 3px;
}

/* Responsive */
@media (max-width: 1024px) {
  .storefront-theme .cart-page { grid-template-columns: 1fr; gap: 34px; }
  .storefront-theme .cart-summary { position: static; }
}
@media (max-width: 760px) {
  .storefront-theme .cart-page-head { margin-bottom: 22px; }
  .storefront-theme .cart-item { grid-template-columns: 110px minmax(0, 1fr); gap: 16px; }
  .storefront-theme .cart-item .cart-price { grid-column: auto; }
}
@media (max-width: 560px) {
  .storefront-theme .cart-item { grid-template-columns: 92px minmax(0, 1fr); }
  .storefront-theme .cart-item-head { grid-template-columns: 1fr; gap: 6px; }
  .storefront-theme .cart-price { justify-self: start; }
  .storefront-theme .cart-item-actions { flex-direction: column; align-items: flex-start; gap: 10px; }
  .storefront-theme .cart-summary { padding: 20px; border-radius: 12px; }
  .storefront-theme .cart-empty { padding: 42px 22px; }
}

/* =========================================================
   Zengin bölüm başlıkları
   ========================================================= */
.storefront-theme .section-head--rich { display: flex; align-items: flex-end; justify-content: space-between; gap: 26px; margin-bottom: 30px; }
.storefront-theme .section-head-copy { display: grid; gap: 13px; min-width: 0; }

.storefront-theme .section-kicker {
  display: inline-flex; align-items: center; gap: 10px;
  font-size: 11px; font-weight: 800; letter-spacing: .2em;
  text-transform: uppercase; color: #808080;
}
.storefront-theme .section-kicker i {
  width: 30px; height: 3px; border-radius: 3px;
  background: var(--brand-yellow);
  box-shadow: 0 0 0 1px rgba(23,23,23,.06);
}

.storefront-theme .section-head--rich h2 {
  position: relative; margin: 0;
  font-size: clamp(25px, 3.2vw, 44px);
  font-weight: 800; line-height: 1.08; letter-spacing: -.03em;
}
.storefront-theme .section-title-mark {
  display: inline; padding: 0 .08em;
  background-image: linear-gradient(var(--brand-yellow), var(--brand-yellow));
  background-repeat: no-repeat;
  background-position: 0 90%;
  background-size: 100% .3em;
  box-decoration-break: clone; -webkit-box-decoration-break: clone;
}

.storefront-theme .section-head--rich .section-head-copy p {
  margin: 0; max-width: 54ch;
  color: #6e6e6e; font-size: 14.5px; line-height: 1.55;
}

.storefront-theme .storefront-text-link--pill {
  display: inline-flex; align-items: center; gap: 9px; flex: none;
  padding: 13px 22px; border: 1px solid #171717; border-radius: 999px;
  background: #171717; color: #fff;
  font-size: 12px; font-weight: 800; letter-spacing: .1em; text-transform: uppercase;
  text-decoration: none; white-space: nowrap;
  transition: background .25s ease, color .25s ease, box-shadow .25s ease, transform .25s ease;
}
.storefront-theme .storefront-text-link--pill span { transition: transform .25s ease; }
.storefront-theme .storefront-text-link--pill:hover {
  background: #fff; color: #171717; transform: translateY(-2px);
  box-shadow: 0 10px 22px rgba(23,23,23,.14);
}
.storefront-theme .storefront-text-link--pill:hover span { transform: translateX(4px); }

/* =========================================================
   Sarı kampanya bandı — vitrin görünümü
   ========================================================= */
.storefront-market-strip { position: relative; overflow: hidden; background: var(--brand-yellow); color: #171717; }

.storefront-market-strip::before {
  position: absolute; inset: 0; content: ''; pointer-events: none;
  background-image: repeating-linear-gradient(122deg, rgba(23,23,23,.06) 0 2px, transparent 2px 11px);
}
.storefront-market-strip::after {
  position: absolute; right: -70px; top: -120px; content: '';
  width: 420px; height: 420px; border-radius: 50%;
  background: radial-gradient(circle, rgba(255,255,255,.7) 0, rgba(255,255,255,0) 68%);
  pointer-events: none;
}

.storefront-market-copy {
  position: relative; z-index: 1;
  display: grid; grid-template-columns: auto minmax(0,1fr) auto;
  align-items: center; gap: clamp(18px,3vw,44px);
  min-height: 208px; padding: 40px 3.2%;
}

.storefront-market-copy p {
  margin: 0; display: inline-flex; align-items: center; gap: 9px;
  padding: 9px 15px; border-radius: 999px;
  background: #171717; color: #fff;
  font-size: 10.5px; font-weight: 800; letter-spacing: .14em;
  text-transform: uppercase; white-space: nowrap;
}
.storefront-market-copy p::before {
  content: ''; width: 7px; height: 7px; border-radius: 50%;
  background: var(--brand-yellow);
  animation: marketPulse 1.9s ease-in-out infinite;
}
@keyframes marketPulse {
  0%, 100% { opacity: 1; transform: scale(1); }
  50% { opacity: .35; transform: scale(.72); }
}

.storefront-market-copy h2 {
  position: relative; margin: 0; max-width: 900px;
  font-size: clamp(30px, 4.8vw, 66px);
  font-weight: 800; line-height: .96; letter-spacing: -.035em;
  text-transform: none; text-wrap: balance;
}

.storefront-market-copy .btn,
.storefront-market-copy .btn.light {
  justify-self: end; white-space: nowrap;
  display: inline-flex; align-items: center; gap: 9px;
  min-height: 52px; padding: 0 26px;
  border: 1px solid #171717; border-radius: 999px;
  background: #fff; color: #171717;
  font-size: 12.5px; font-weight: 800; letter-spacing: .1em; text-transform: uppercase;
  text-decoration: none;
  transition: background .25s ease, color .25s ease, box-shadow .25s ease, transform .25s ease;
}
.storefront-market-copy .btn:hover,
.storefront-market-copy .btn.light:hover {
  background: #171717; color: #fff; border-color: #171717; transform: translateY(-2px);
  box-shadow: 0 12px 26px rgba(23,23,23,.24);
}

.storefront-market-ticker {
  position: relative; z-index: 1;
  display: flex; justify-content: space-around; gap: 28px;
  overflow: hidden; padding: 15px 3.2%;
  border-top: 2px solid #171717; background: #171717; color: #fff;
  font-size: 12px; font-weight: 800; white-space: nowrap;
}
.storefront-market-ticker span { display: inline-flex; align-items: center; gap: 8px; }
.storefront-market-ticker span::before {
  content: ''; width: 5px; height: 5px; border-radius: 50%;
  background: var(--brand-yellow); opacity: .85;
}

@media (max-width: 1080px) {
  .storefront-market-copy { grid-template-columns: minmax(0,1fr); justify-items: start; gap: 18px; min-height: 0; padding: 40px 22px; }
  .storefront-market-copy .btn { justify-self: start; }
  .storefront-market-strip::after { width: 300px; height: 300px; right: -110px; top: -100px; }
}

@media (max-width: 760px) {
  .storefront-theme .section-head--rich { flex-direction: column; align-items: flex-start; gap: 18px; margin-bottom: 24px; }
  .storefront-theme .storefront-text-link--pill { padding: 11px 18px; font-size: 11px; }
  .storefront-market-copy { padding: 34px 18px; text-align: left; }
  .storefront-market-copy h2 { font-size: clamp(28px, 9vw, 40px); }
  .storefront-market-ticker { justify-content: flex-start; gap: 20px; font-size: 11px; }
  .storefront-market-ticker span:nth-child(n+3) { display: none; }
}

@media (prefers-reduced-motion: reduce) {
  .storefront-market-copy p::before { animation: none; }
  .storefront-theme .storefront-text-link--pill,
  .storefront-theme .storefront-text-link--pill span,
  .storefront-market-copy .btn { transition: none; }
}

/* Featured collection: refined right-hand editorial panel. */
.storefront-collection-card .storefront-collection-editorial-copy { overflow: hidden; padding: clamp(28px, 3.4vw, 52px); background: linear-gradient(145deg, #fff 15%, #faf9f5 100%); }
.storefront-collection-card .storefront-collection-editorial-copy::after { content: ''; position: absolute; z-index: 0; top: -125px; right: -150px; width: 430px; height: 430px; pointer-events: none; border: 1px solid #d8cba83b; border-radius: 50%; box-shadow: 0 0 0 36px #e6dfca15, 0 0 0 37px #d8cba824, 0 0 0 73px #e6dfca0c, 0 0 0 74px #d8cba819; }
.collection-editorial-kicker { order: 0; display: flex; align-items: center; gap: 10px; width: 100%; margin-bottom: 25px; color: #a18e5b; font-size: 9px; font-weight: 650; letter-spacing: .13em; text-transform: uppercase; }
.collection-editorial-kicker > span:first-child { width: 23px; height: 1px; background: #bba76f; }
.collection-editorial-kicker > svg { width: 24px; height: 24px; margin-left: auto; color: #b6a77f; }
.storefront-collection-card .storefront-collection-editorial-copy h2 { margin-bottom: 18px; font-size: clamp(34px, 3.7vw, 55px); font-weight: 750; line-height: 1.06; letter-spacing: -.05em; overflow-wrap: anywhere; }
.storefront-collection-editorial-copy h2 .section-title-mark { padding: 0; background: none; }
.storefront-collection-card .storefront-collection-editorial-copy > p { max-width: 42ch; margin-bottom: 22px; color: #8a8475; font-size: 13px; line-height: 1.85; }
.storefront-collection-card .storefront-collection-facts { width: auto; gap: 9px; margin: 2px 0 23px; border: 0; }
.storefront-collection-card .storefront-collection-facts > span { min-height: 34px; padding: 0 12px; border: 1px solid #e8e4d8; border-radius: 7px; background: #fff9; color: #8b8372; font-size: 9px; font-weight: 500; letter-spacing: .025em; text-transform: none; }
.storefront-collection-card .storefront-collection-facts strong { font-size: 14px; font-weight: 700; }
.storefront-collection-card .storefront-collection-facts i { width: 5px; height: 5px; background: #89976c; box-shadow: 0 0 0 3px #89976c15; }
.storefront-collection-card .storefront-collection-gallery { margin-bottom: 26px; gap: 12px; }
.storefront-collection-card .storefront-collection-gallery-label { color: #a39c89; font-size: 8px; font-weight: 550; letter-spacing: .1em; }
.storefront-collection-card .storefront-collection-gallery-label::after { background: #e8e4d9; }
.storefront-collection-card .storefront-collection-thumbs { display: grid; grid-template-columns: repeat(6, minmax(0, 1fr)); gap: 8px; width: 100%; max-width: 420px; }
.storefront-collection-card .storefront-collection-thumb { width: 100%; border-radius: 8px; border-color: #e9e5da; background: #f4f2eb; }
.storefront-collection-card .storefront-collection-thumb img { object-fit: contain; }
.storefront-collection-card .storefront-collection-thumb:hover { transform: translateY(-2px); box-shadow: 0 5px 12px #54462712; }
.storefront-collection-card .storefront-collection-thumb.is-active { border-color: #b6a172; box-shadow: 0 0 0 2px #daceab55; }
.storefront-collection-card .storefront-collection-actions { display: flex; flex-direction: column; align-items: stretch; width: 100%; gap: 16px; }
.storefront-collection-card .storefront-collection-actions .btn { display: flex; align-items: center; justify-content: space-between; gap: 18px; min-height: 50px; width: 100%; padding: 0 19px; border-radius: 9px; background: #292b22; border-color: #292b22; font-size: 13px; font-weight: 600; }
.storefront-collection-card .storefront-collection-actions .btn:hover { background: #414335; border-color: #414335; }
.storefront-collection-actions .btn svg { width: 19px; height: 19px; }
.storefront-collection-card .storefront-collection-all-link { align-self: flex-start; color: #8b8371; font-size: 10px; font-weight: 500; letter-spacing: 0; text-decoration: none; }
.storefront-collection-card .storefront-collection-all-link:hover { color: #292b22; text-decoration: underline; text-underline-offset: 4px; }
@media (max-width: 760px) {
  .storefront-collection-card .storefront-collection-editorial-copy { padding: 28px 22px; }
  .collection-editorial-kicker { margin-bottom: 21px; font-size: 8px; }
  .storefront-collection-card .storefront-collection-editorial-copy h2 { font-size: 36px; }
  .storefront-collection-card .storefront-collection-thumbs { gap: 7px; }
}

/* Slider copy and navigation stay inside the banner on every screen. */
.storefront-theme .hero-slider > .hero-content { position: absolute; inset: 0; padding-block: 24px 42px; }
.storefront-theme .hero-slider .hero-copy-panel { max-height: 100%; overflow-y: auto; }
@media (max-width: 1024px) {
  .storefront-theme .hero-slider { display: block; height: clamp(360px, 58vw, 480px); min-height: 0; max-height: none; aspect-ratio: auto; background: #e9e6dd; }
  .storefront-theme .hero-slider::before { display: none; }
  .storefront-theme .hero-slider::after { display: block; background: linear-gradient(180deg, transparent 25%, #00000026 48%, #000000b8 100%); }
  .storefront-theme .hero-slider .hero-slide { inset: 0; height: 100%; aspect-ratio: auto; background-image: none; overflow: hidden; }
  .storefront-theme .hero-slider .hero-slide::before { content: none; }
  .storefront-theme .hero-slider .hero-banner-image { position: absolute; inset: 0; z-index: 1; display: block; width: 100%; height: 100%; object-fit: cover; object-position: center; }
  .storefront-theme .hero-slider > .hero-content { position: absolute; inset: 0; height: 100%; width: 100%; padding: 24px 24px 46px; align-items: stretch; justify-content: flex-end; text-align: left; }
  .storefront-theme .hero-slider .hero-copy-panel { width: 100%; max-height: 100%; margin: 0; padding: 0; justify-items: start; gap: 10px; border: 0; border-radius: 0; background: transparent; box-shadow: none; backdrop-filter: none; -webkit-backdrop-filter: none; color: #fff; overflow-y: auto; text-shadow: 0 2px 12px #0006; }
  .storefront-theme .hero-slider .hero-copy-panel h1 { color: #fff; font-size: clamp(22px,4.5vw,32px); line-height: 1.12; }
  .storefront-theme .hero-slider .hero-copy-panel p { max-width: 620px; color: #ffffffb8; font-size: 11px; line-height: 1.45; }
  .storefront-theme .hero-slider .button-row { justify-content: flex-start; margin-top: 0; }
  .storefront-theme .hero-slider .hero-copy-panel .btn { min-height: 38px; min-width: 0; padding: 8px 16px; background: #fff; border-color: #fff; color: #25271f; font-size: 12px; }
  .storefront-theme .hero-slider .slider-arrow { display: inline-flex; top: 40%; width: 32px; height: 32px; }
  .storefront-theme .hero-slider .slider-prev { left: 10px; }
  .storefront-theme .hero-slider .slider-next { right: 10px; }
  .storefront-theme .hero-slider .slider-dots { top: auto; bottom: 17px; height: 6px; align-items: center; }
  .storefront-theme .hero-slider .slider-dot { background: #ffffff60; }
  .storefront-theme .hero-slider .slider-dot.active { background: #fff; }
}
@media (max-width: 760px) {
  .storefront-theme .hero-slider { height: clamp(275px, 72vw, 360px); min-height: var(--hero-min-content-height, 0px); }
  .storefront-theme .hero-slider.has-mobile-image { height: auto; aspect-ratio: var(--hero-mobile-image-ratio, .8); }
  .storefront-theme .hero-slider .hero-copy-panel { max-height: none; overflow: visible; min-width: 0; }
  .storefront-theme .hero-slider .hero-copy-panel h1 { display: block; width: 100%; max-width: 100%; min-width: 0; padding: 3px 0 5px; margin: 0; font-size: clamp(24px, 5.8vw, 30px); line-height: 1.2; letter-spacing: -.025em; white-space: normal; overflow: visible; overflow-wrap: anywhere; text-overflow: clip; -webkit-line-clamp: unset; text-wrap: balance; }
  .storefront-theme .hero-slider > .hero-content { padding-inline: 22px; padding-block: 20px 42px; }
  .storefront-theme .hero-slider .slider-arrow { top: 44%; width: 30px; height: 30px; }
}

/* Custom / bulk order studio */
.storefront-theme .bulk-studio-intro { padding: 48px 3.2% 42px; background: #f6f5ef; border-bottom: 1px solid #e8e6dc; }
.bulk-studio-intro-grid { display: grid; grid-template-columns: minmax(0, 1.5fr) minmax(260px, .8fr); align-items: center; gap: 60px; }
.bulk-studio-kicker { display: flex; align-items: center; gap: 9px; margin: 0 0 22px; font-size: 10px; letter-spacing: .14em; font-weight: 700; color: #6e6651; }
.bulk-studio-kicker > span { width: 7px; height: 7px; border-radius: 50%; background: #bc9138; }
.bulk-studio-copy h1 { margin: 0; font-size: clamp(34px, 4.4vw, 62px); font-weight: 750; line-height: 1.08; letter-spacing: -.055em; color: #20211c; }
.bulk-studio-copy h1 em { font-style: normal; color: #8a7950; }
.bulk-studio-copy > p:not(.bulk-studio-kicker) { max-width: 490px; margin: 22px 0; color: #6d6c63; font-size: 14px; line-height: 1.8; }
.bulk-studio-actions { display: flex; align-items: center; gap: 26px; flex-wrap: wrap; }
.storefront-theme .bulk-studio-actions .btn { display: inline-flex; align-items: center; gap: 30px; background: #22231e; border-color: #22231e; color: #fff; border-radius: 9px; min-height: 48px; padding: 0 21px; font-size: 13px; }
.bulk-studio-text-link { color: #555449; font-size: 12px; text-underline-offset: 5px; }
.bulk-studio-text-link span { margin-left: 8px; }
.bulk-studio-note { position: relative; display: grid; gap: 17px; padding: 35px; overflow: hidden; border-radius: 18px; border: 1px solid #3f4035; background: #272920; color: #f6efd9; }
.bulk-studio-note::after { position: absolute; content: ''; width: 230px; height: 230px; border: 1px solid #eee4b91a; border-radius: 50%; right: -70px; top: -70px; pointer-events: none; }
.bulk-studio-note > svg { position: absolute; right: 19px; bottom: 42px; width: 110px; height: 110px; color: #e7d6a4; opacity: .25; transform: rotate(-12deg); }
.bulk-studio-note > span { font-size: 8px; letter-spacing: .17em; color: #c6bc9c; }
.bulk-studio-note strong { font-size: clamp(28px, 2.7vw, 38px); line-height: 1.15; letter-spacing: -.035em; }
.bulk-studio-note p { position: relative; max-width: 230px; margin: 8px 0 0; font-size: 11px; color: #c3bea9; line-height: 1.8; }
.storefront-theme .bulk-studio { background: #fff; padding-block: 45px 55px; scroll-margin-top: 100px; }
.bulk-studio .bulk-order-layout { grid-template-columns: minmax(0, 1.6fr) minmax(300px, 1fr); gap: 35px; }
.bulk-studio .bulk-video-column { align-self: stretch; }
.bulk-studio .bulk-products-column { gap: 24px; }
.bulk-studio .gallery-showcase-head { display: flex; align-items: end; justify-content: space-between; gap: 15px; margin: 0; }
.bulk-studio .gallery-showcase-head .eyebrow { margin: 0 0 9px; font-size: 9px; font-weight: 650; letter-spacing: .12em; color: #929080; }
.bulk-studio .gallery-showcase-head h2 { margin: 0; font-size: 25px; letter-spacing: -.035em; line-height: 1.15; font-weight: 700; }
.bulk-studio .gallery-showcase-head > p { max-width: 150px; margin: 0; font-size: 10px; line-height: 1.7; color: #858477; }
.bulk-studio .gallery-showcase-masonry { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 18px; }
.bulk-studio .gallery-showcase-item { display: block; width: 100%; padding: 0; text-align: left; font: inherit; color: inherit; background: #f8f8f5; border: 1px solid #eaeae4; border-radius: 12px; }
.bulk-studio .gallery-showcase-media { aspect-ratio: 1; }
.bulk-studio .gallery-showcase-media img { object-fit: contain; }
.bulk-studio .gallery-showcase-caption { display: block; padding: 12px 14px; margin: 0; font-size: 11px; line-height: 1.5; background: #fff; }
.bulk-studio .gallery-showcase-item:focus-visible { outline: 2px solid #957735; outline-offset: 4px; }
.bulk-studio .bulk-video-card { gap: 16px; padding: 24px; border-radius: 16px; background: #fafaf7; border: 1px solid #e8e7de; box-shadow: none; }
.bulk-studio-video-label { display: flex; align-items: center; gap: 7px; font-size: 8px; font-weight: 700; letter-spacing: .1em; color: #92907e; }
.bulk-studio-video-label > span { width: 6px; height: 6px; border-radius: 50%; background: #aa904e; }
.bulk-studio .bulk-video-card h2 { font-size: 23px; text-transform: none; font-weight: 700; letter-spacing: -.035em; line-height: 1.2; }
.bulk-studio .bulk-video-card p { font-size: 12px; line-height: 1.8; color: #7a796d; }
.bulk-studio .bulk-video-frame { border-radius: 10px; }
.bulk-studio .bulk-video-frame::before { content: none; }
.bulk-studio .bulk-video-badge { top: 10px; bottom: auto; font-size: 8px; padding: 5px 8px; pointer-events: none; }
.bulk-studio .bulk-video-points { margin: 0; gap: 12px; }
.bulk-studio .bulk-video-points li { font-size: 11px; color: #65655b; line-height: 1.7; }
.bulk-studio .bulk-video-card .btn { display: flex; align-items: center; justify-content: space-between; border-radius: 8px; padding-inline: 16px; min-height: 46px; font-size: 12px; color: #fff; background: #272920; border-color: #272920; }
.bulk-studio-process { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 32px; margin-top: 44px; padding-top: 32px; border-top: 1px solid #eae9e2; }
.bulk-studio-process > div { padding-left: 18px; border-left: 2px solid #dacead; }
.bulk-studio-process span { color: #9b8a62; font-size: 9px; font-weight: 650; letter-spacing: .1em; }
.bulk-studio-process h3 { margin: 12px 0 8px; font-size: 19px; letter-spacing: -.03em; }
.bulk-studio-process p { max-width: 260px; margin: 0; font-size: 12px; color: #7c7b70; line-height: 1.8; }
.bulk-studio-products { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 18px; }
.bulk-studio-products a { color: inherit; text-decoration: none; overflow: hidden; border: 1px solid #eaeae4; border-radius: 12px; }
.bulk-studio-products img { width: 100%; aspect-ratio: 1; object-fit: contain; background: #f8f8f5; }
.bulk-studio-products span { display: block; padding: 13px; font-size: 12px; line-height: 1.5; }

.storefront-product-page .custom-print-pricing { display: grid; gap: 8px; margin: 12px 0 18px; padding: 14px 16px; border: 1px solid #e9e6da; border-radius: 10px; background: #faf9f4; }
.storefront-product-page .custom-print-pricing > div { display: flex; align-items: center; justify-content: space-between; gap: 12px; font-size: 11px; color: #939080; }
.storefront-product-page .custom-print-pricing strong { font-size: 12px; font-weight: 600; }
.storefront-product-page .custom-print-pricing > div.is-selected { color: #4d623a; }
.storefront-product-page .custom-print-pricing small { padding-top: 6px; border-top: 1px solid #ebe7da; color: #999381; font-size: 10px; line-height: 1.6; }

.storefront-theme .account-item-quantity { display: inline-flex; align-items: center; justify-content: center; gap: 5px; padding: 5px 9px; border: 1px solid #e1decf; border-radius: 7px; background: #f6f5ed; color: #6b644e; font-size: 11px; white-space: nowrap; }
.storefront-theme .account-item-quantity b { font-size: 15px; font-weight: 700; }

.storefront-theme .checkout-legal-links { display: flex; align-items: flex-start; flex-wrap: wrap; gap: 10px 18px; }
.storefront-theme .checkout-legal-links .checkout-check { flex: 1 1 260px; margin: 0; }
.storefront-theme .checkout-legal-links a { color: inherit; text-decoration: underline; text-underline-offset: 3px; line-height: 1.65; }
.storefront-theme .checkout-privacy-link { font-size: 12px; color: #676b61; }
.storefront-theme .checkout-legal-links a:focus-visible { outline: 2px solid #a69364; outline-offset: 3px; }

/* Full cart page, aligned with the drawer. */
.storefront-theme .cart-page-refined { gap: 38px; grid-template-columns: minmax(0, 1fr) 355px; align-items: start; }
.storefront-theme .cart-page-refined .cart-page-head { position: relative; display: block; margin-bottom: 24px; }
.storefront-theme .cart-page-refined .cart-page-head > p { margin: 0 0 12px; font-size: 9px; letter-spacing: .14em; font-weight: 650; color: #8e8978; }
.storefront-theme .cart-page-refined .cart-page-head h1 { display: flex; align-items: center; gap: 13px; margin: 0; font-size: 36px; letter-spacing: -.045em; font-weight: 750; }
.storefront-theme .cart-page-refined .cart-page-count { display: inline-grid; place-items: center; min-width: 28px; height: 28px; padding-inline: 7px; border-radius: 8px; background: #24251f; color: #fff; font-size: 12px; letter-spacing: 0; }
.cart-continue-link { position: absolute; right: 0; bottom: 7px; color: #757468; font-size: 11px; text-underline-offset: 5px; }
.cart-continue-link > span { margin-left: 7px; }
.cart-page-shipping { display: flex; align-items: center; gap: 9px; margin-bottom: 15px; padding: 13px 16px; border: 1px solid #e8e7db; border-radius: 9px; background: #f6f6ef; color: #6b6e50; font-size: 11px; }
.cart-page-shipping svg { width: 19px; height: 19px; flex-shrink: 0; }
.storefront-theme .cart-page-refined .cart-list { display: grid; gap: 12px; }
.storefront-theme .cart-page-refined .cart-item { grid-template-columns: 112px minmax(0, 1fr); gap: 22px; padding: 18px; border: 1px solid #eae9e2; border-radius: 12px; background: #fff; }
.storefront-theme .cart-page-refined .cart-item-media { border-radius: 8px; background: #f7f7f3; border: 1px solid #efeee8; }
.storefront-theme .cart-page-refined .cart-item-media img { width: 112px; aspect-ratio: 4 / 5; object-fit: contain; }
.storefront-theme .cart-page-refined .cart-item-head h3 { font-size: 14px; font-weight: 600; line-height: 1.5; overflow-wrap: anywhere; }
.storefront-theme .cart-page-refined .cart-item-meta { font-size: 11px; color: #929085; overflow-wrap: anywhere; }
.storefront-theme .cart-page-refined .cart-item-actions { margin-top: auto; flex-direction: row; align-items: center; }
.storefront-theme .cart-page-refined .qty { border-radius: 8px; grid-template-columns: 32px 32px 32px; min-height: 34px; background: #fafaf7; }
.storefront-theme .cart-page-refined .qty button { height: 34px; }
.storefront-theme .cart-page-refined .qty span { font-size: 12px; }
.storefront-theme .cart-page-refined .cart-item .remove-link { font-size: 11px; font-weight: 500; min-height: 34px; }
.storefront-theme .cart-page-refined .cart-summary { margin-top: 0; padding: 25px; gap: 15px; border-radius: 14px; border-color: #e8e7dd; background: #fafaf6; box-shadow: none; }
.cart-summary-heading > span { font-size: 8px; font-weight: 650; letter-spacing: .13em; color: #a19a84; }
.storefront-theme .cart-page-refined .cart-summary-title { margin-top: 9px; padding-bottom: 21px; font-size: 22px; font-weight: 700; }
.storefront-theme .cart-page-refined .cart-summary .summary-row { font-size: 12px; color: #858276; }
.storefront-theme .cart-page-refined .cart-summary .summary-row.total { margin-top: 4px; padding-top: 19px; color: #22231e; font-size: 14px; }
.storefront-theme .cart-page-refined .cart-summary .summary-row.total strong { font-size: 25px; font-weight: 750; letter-spacing: -.035em; }
.storefront-theme .cart-page-refined .cart-page-checkout { display: flex; align-items: center; justify-content: space-between; padding-inline: 18px; margin-top: 5px; border-radius: 9px; min-height: 49px; background: #22231e; border-color: #22231e; color: #fff; font-size: 13px; }
.cart-page-safe { display: flex; align-items: center; justify-content: center; gap: 7px; margin: 0; color: #8b897d; font-size: 10px; }
.cart-page-safe svg { width: 14px; height: 14px; }
@media (max-width: 1024px) {
  .bulk-studio-products { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .bulk-studio-intro-grid { gap: 30px; }
  .bulk-studio .bulk-order-layout { grid-template-columns: minmax(0, 1fr) 310px; gap: 22px; }
  .bulk-studio .gallery-showcase-head { align-items: start; flex-direction: column; }
  .bulk-studio .gallery-showcase-head > p { max-width: none; }
  .storefront-theme .cart-page-refined { grid-template-columns: minmax(0, 1fr) 310px; gap: 24px; }
  .cart-continue-link { position: static; display: inline-block; margin-top: 16px; }
}
@media (max-width: 760px) {
  .storefront-theme .bulk-studio-intro { padding: 32px 16px; }
  .bulk-studio-intro-grid { grid-template-columns: 1fr; gap: 26px; }
  .bulk-studio-copy h1 { font-size: clamp(34px, 8vw, 48px); }
  .bulk-studio-copy > p:not(.bulk-studio-kicker) { font-size: 13px; margin-block: 18px; }
  .bulk-studio-actions { gap: 18px; }
  .bulk-studio-note { padding: 24px; gap: 12px; }
  .bulk-studio-note strong { font-size: 29px; }
  .bulk-studio-note > svg { width: 100px; height: 100px; right: 28px; bottom: 20px; }
  .storefront-theme .bulk-studio { padding-block: 30px 40px; }
  .bulk-studio .bulk-order-layout { grid-template-columns: minmax(0, 1fr); gap: 28px; }
  .bulk-studio .gallery-showcase-head h2 { font-size: 24px; }
  .bulk-studio .gallery-showcase-masonry { gap: 12px; }
  .bulk-studio .bulk-video-card { padding: 21px; position: static; }
  .bulk-studio-process { grid-template-columns: 1fr; gap: 25px; margin-top: 30px; padding-top: 26px; }
  .bulk-studio-process p { max-width: none; }
  .storefront-theme .cart-page-refined { grid-template-columns: minmax(0, 1fr); gap: 25px; }
  .storefront-theme .cart-page-refined .cart-item { grid-template-columns: 86px minmax(0, 1fr); gap: 15px; padding: 13px; }
  .storefront-theme .cart-page-refined .cart-item-media img { width: 86px; }
  .storefront-theme .cart-page-refined .cart-item-head { grid-template-columns: 1fr; gap: 7px; }
  .storefront-theme .cart-page-refined .cart-item-head h3 { font-size: 12px; }
  .storefront-theme .cart-page-refined .cart-item-body { gap: 9px; }
  .storefront-theme .cart-page-refined .cart-price strong, .storefront-theme .cart-page-refined strong.cart-price { font-size: 14px; }
  .storefront-theme .cart-page-refined .cart-summary { padding: 23px; }
}
