/* Aitai☆Kuji pages v1 — product / FAQ / CMS pages / blog / account / footer (2026-10-03).
   Built from the 09-30 preview minus parts now owned by ak-bundle (search popup, minicart, header cart) and the dropped phone buy bar. */
/* ==========================================================================
   Aitai☆Kuji — unified page design (product / search autocomplete / blog / footer pages)
   2026-09-30  ·  scoped by body class so nothing leaks to other pages
   Tokens follow the homepage system: mint #57D5C2 (hover #3FBFAB), gold star #F6B84B,
   ink #22302E, tint #EEFAF7, line #DFF3EF, radius 12px, Montserrat 700 headings, Poppins 600 UI
   ========================================================================== */
:root {
  --ak-mint: #57d5c2; --ak-mint-hover: #3fbfab; --ak-mint-deep: #1f8f7e;
  --ak-tint: #eefaf7; --ak-line: #dff3ef; --ak-ink: #22302e; --ak-ink-2: #5b6b68; --ak-ink-3: #8a9896;
  --ak-star: #f6b84b; --ak-gold-tint: #fff4de; --ak-gold-ink: #9a6400;
  --ak-red: #e05a5a; --ak-red-tint: #fdecee; --ak-red-ink: #b3261e;
  --ak-radius: 12px; --ak-radius-lg: 16px;
  --ak-shadow: 0 6px 24px rgba(34, 48, 46, .08);
  --ak-font-head: Montserrat, "Helvetica Neue", Arial, sans-serif;
  --ak-font-ui: Poppins, "Helvetica Neue", Arial, sans-serif;
}

/* ---------- shared primitives (only used by the selectors below) ---------- */
.ak-scope .ak-h, .ak-page-head h1 { display: inline-flex; align-items: center; gap: 8px; margin: 0 !important; font: 700 26px/1.2 var(--ak-font-head) !important; letter-spacing: -.01em; color: var(--ak-mint) !important; text-transform: none !important; }
.ak-page-head h1::before, .ak-scope .ak-h::before { content: ""; flex: 0 0 22px; width: 22px; height: 22px; background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='%23F6B84B' d='M12 2.6l2.9 6 6.6.9-4.8 4.6 1.2 6.5L12 17.5l-5.9 3.1 1.2-6.5L2.5 9.5l6.6-.9z'/%3E%3C/svg%3E") center / contain no-repeat; }
@media (max-width: 767px) { .ak-scope .ak-h, .ak-page-head h1 { font-size: 22px !important; } .ak-page-head h1::before, .ak-scope .ak-h::before { flex-basis: 19px; width: 19px; height: 19px; } }

/* primary pill button (form submits, CTAs on the pages in scope) */
.ak-btn-primary { display: inline-flex !important; align-items: center; justify-content: center; gap: 8px; min-height: 48px; padding: 0 26px !important; border: 0 !important; border-radius: 999px !important; background: var(--ak-mint) !important; color: #fff !important; font: 600 15px/1 var(--ak-font-ui) !important; letter-spacing: .01em; text-transform: none !important; text-decoration: none !important; box-shadow: 0 4px 14px rgba(87, 213, 194, .35); cursor: pointer; transition: background .2s ease, transform .15s ease, box-shadow .2s ease; }
@media (hover: hover) { .ak-btn-primary:hover { background: var(--ak-mint-hover) !important; color: #fff !important; box-shadow: 0 6px 18px rgba(87, 213, 194, .45); transform: translateY(-1px); } }
.ak-btn-primary:active { transform: translateY(0); }
.ak-btn-secondary { display: inline-flex !important; align-items: center; justify-content: center; gap: 8px; min-height: 46px; padding: 0 22px !important; border: 2px solid var(--ak-mint) !important; border-radius: 999px !important; background: #fff !important; color: var(--ak-mint-deep) !important; font: 600 14px/1 var(--ak-font-ui) !important; text-transform: none !important; text-decoration: none !important; cursor: pointer; transition: background .2s ease, color .2s ease; }
@media (hover: hover) { .ak-btn-secondary:hover { background: var(--ak-tint) !important; color: var(--ak-mint-deep) !important; } }

/* inputs shared by forms in scope */
.ak-form .input-text, .ak-form select, .ak-form textarea,
.ak-form input[type=text], .ak-form input[type=email], .ak-form input[type=password], .ak-form input[type=number] {
  height: 48px; padding: 0 16px !important; border: 1.5px solid #d9e6e3 !important; border-radius: 12px !important; background: #fff !important;
  font: 400 15px/1.4 var(--ak-font-ui) !important; color: var(--ak-ink) !important; box-shadow: none !important; transition: border-color .15s ease, box-shadow .15s ease; box-sizing: border-box; }
.ak-form textarea { height: auto; min-height: 140px; padding: 12px 16px !important; resize: vertical; }
.ak-form .input-text:focus, .ak-form select:focus, .ak-form textarea:focus { border-color: var(--ak-mint) !important; box-shadow: 0 0 0 4px rgba(87, 213, 194, .18) !important; outline: none; }
.ak-form .input-text::placeholder, .ak-form textarea::placeholder { color: #9aa8a5; }
.ak-form select { appearance: none; -webkit-appearance: none; padding-right: 42px !important; background: #fff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='none' stroke='%2322302e' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round' d='M6 9l6 6 6-6'/%3E%3C/svg%3E") right 14px center / 16px no-repeat !important; }
.ak-form .field { margin: 0 0 14px !important; }
.ak-form .field .label, .ak-form label.label { display: block; margin: 0 0 6px; font: 600 13px/1.3 var(--ak-font-ui); color: var(--ak-ink-2); text-transform: none; letter-spacing: 0; }
.ak-form .field.required > .label::after, .ak-form .field._required > .label::after { content: " *"; color: var(--ak-red); margin: 0; }
.ak-form .field.choice { display: flex; align-items: center; gap: 10px; }
.ak-form .field.choice .label { margin: 0; }
.ak-form input[type=checkbox] { width: 18px; height: 18px; margin: 0; accent-color: var(--ak-mint); }
.ak-form div.mage-error, .ak-form .field-error { margin: 6px 0 0 !important; font: 500 12px/1.4 var(--ak-font-ui) !important; color: var(--ak-red-ink) !important; }
.ak-form .input-text.mage-error, .ak-form select.mage-error, .ak-form textarea.mage-error { border-color: var(--ak-red) !important; box-shadow: 0 0 0 4px rgba(224, 90, 90, .14) !important; }
.ak-form .fieldset::after, .ak-form .fieldset > .legend + br { display: none !important; }

/* content prose used on blog posts / cms text pages */
.ak-prose { font: 400 16px/1.75 var(--ak-font-head); color: var(--ak-ink); }
.ak-prose p { margin: 0 0 1.1em; }
.ak-prose h1, .ak-prose h2 { margin: 1.6em 0 .6em; font: 700 22px/1.3 var(--ak-font-head); color: var(--ak-ink); text-transform: none; letter-spacing: -.01em; }
.ak-prose h3, .ak-prose h4 { margin: 1.4em 0 .5em; font: 700 18px/1.35 var(--ak-font-head); color: var(--ak-ink); text-transform: none; }
.ak-prose h1:first-child, .ak-prose h2:first-child, .ak-prose h3:first-child { margin-top: 0; }
.ak-prose a { color: var(--ak-mint-deep); font-weight: 600; text-decoration: underline; text-decoration-color: rgba(87, 213, 194, .6); text-underline-offset: 3px; }
.ak-prose a:hover { color: var(--ak-mint-hover); }
.ak-prose img { max-width: 100%; height: auto; border-radius: var(--ak-radius); }
.ak-prose ul, .ak-prose ol { padding-left: 1.4em; margin: 0 0 1.1em; }
.ak-prose li { margin: .3em 0; }
.ak-prose blockquote { margin: 1.2em 0; padding: 14px 18px; border-left: 4px solid var(--ak-mint); background: var(--ak-tint); border-radius: 0 var(--ak-radius) var(--ak-radius) 0; }
.ak-prose hr { border: 0; border-top: 1px solid var(--ak-line); margin: 2em 0; }
@media (max-width: 767px) { .ak-prose { font-size: 15px; line-height: 1.7; } .ak-prose h1, .ak-prose h2 { font-size: 20px; } }

/* note / callout box (auto-applied to "**PLEASE NOTE" paragraphs and the shipping notice) */
.ak-callout { position: relative; margin: 18px 0 0; padding: 14px 16px 14px 46px; border-radius: var(--ak-radius); background: var(--ak-gold-tint); color: var(--ak-gold-ink); font: 500 13px/1.6 var(--ak-font-ui); }
.ak-callout::before { content: ""; position: absolute; left: 16px; top: 15px; width: 20px; height: 20px; background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Ccircle cx='12' cy='12' r='10' fill='%23F6B84B'/%3E%3Crect x='10.7' y='6.5' width='2.6' height='7.5' rx='1.3' fill='%23fff'/%3E%3Ccircle cx='12' cy='17' r='1.5' fill='%23fff'/%3E%3C/svg%3E") center / contain no-repeat; }
.ak-callout p { margin: 0; }
.ak-callout strong { font-weight: 700; }

/* ==========================================================================
   1. PRODUCT PAGE  (body.catalog-product-view)
   ========================================================================== */
.catalog-product-view .product-main-content { border: 0 !important; box-shadow: none !important; padding: 0 !important; margin: 0 0 40px !important; }
.catalog-product-view .breadcrumbs { margin: 0 0 4px; }
.catalog-product-view .breadcrumbs .items { font: 500 11px/1.4 var(--ak-font-ui); letter-spacing: .04em; }
.catalog-product-view .breadcrumbs a { color: var(--ak-ink-3); }
.catalog-product-view .breadcrumbs strong { color: var(--ak-ink-2); font-weight: 600; }

/* --- gallery --- */
.catalog-product-view .product.media { position: relative; }
.catalog-product-view .product.media .fotorama__stage { border-radius: var(--ak-radius-lg); overflow: hidden; background: #fff; }
.catalog-product-view .product.media .fotorama__nav-wrap--vertical .fotorama__thumb, .catalog-product-view .product.media .fotorama__nav__frame--thumb .fotorama__thumb { border-radius: 10px; overflow: hidden; }
.catalog-product-view .fotorama__thumb-border { border-color: var(--ak-mint) !important; border-width: 2px !important; border-radius: 10px; background-image: none !important; }
.catalog-product-view .fotorama__arr { background: rgba(255,255,255,.9) !important; border-radius: 50%; width: 42px !important; height: 42px !important; top: 50%; margin-top: -21px; box-shadow: 0 4px 12px rgba(34,48,46,.12); opacity: 1 !important; }
.catalog-product-view .fotorama__arr .fotorama__arr__arr { background: none !important; width: 42px; height: 42px; }
.catalog-product-view .fotorama__arr .fotorama__arr__arr::before { content: ""; position: absolute; inset: 0; background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='none' stroke='%2322302e' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round' d='M14.5 6l-6 6 6 6'/%3E%3C/svg%3E") center / 20px no-repeat; }
.catalog-product-view .fotorama__arr--next .fotorama__arr__arr::before { transform: scaleX(-1); }
.catalog-product-view .fotorama__arr--prev { left: 10px !important; } .catalog-product-view .fotorama__arr--next { right: 10px !important; }
.catalog-product-view .fotorama__thumb__arr { background: rgba(255,255,255,.95) !important; border-radius: 8px; }
/* the theme's own corner ribbon (PRE ORDER / AS ORDER BASIS / SOLD OUT …) is kept as-is; only make sure it sits above the rounded stage */
.catalog-product-view .product.media .triangle { z-index: 5; }

/* --- info column --- */
.catalog-product-view .product-info-main { padding: 0 !important; }
.catalog-product-view .product-info-main .page-title-wrapper.product { margin: 0 0 10px; }
.catalog-product-view .product-info-main .page-title { margin: 0 !important; font: 700 24px/1.3 var(--ak-font-head) !important; letter-spacing: -.01em; color: var(--ak-ink) !important; text-transform: none !important; }
.catalog-product-view .product-info-stock-sku { display: flex; align-items: center; gap: 10px; margin: 0 0 14px !important; }
.catalog-product-view .product-info-stock-sku .stock { margin: 0 !important; }
.catalog-product-view .product-info-stock-sku .stock span { display: inline-block; padding: 5px 11px; border-radius: 999px; background: var(--ak-tint); color: var(--ak-mint-deep) !important; font: 700 11px/1 var(--ak-font-ui); letter-spacing: .08em; text-transform: uppercase; }
.catalog-product-view .product-info-stock-sku .stock.available span:not(.ak-preorder) { background: var(--ak-tint); color: var(--ak-mint-deep) !important; }
.catalog-product-view .product-info-stock-sku .stock span.ak-preorder { background: var(--ak-gold-tint); color: var(--ak-gold-ink) !important; }
.catalog-product-view .product-info-stock-sku .stock.unavailable span { background: #ecf0ef; color: var(--ak-ink-2) !important; }
.catalog-product-view .product-info-price { margin: 0 0 4px !important; }
.catalog-product-view .product-info-price .price-box { margin: 0 !important; display: flex; flex-wrap: wrap; align-items: baseline; gap: 6px 10px; }
.catalog-product-view .product-info-price .price-box .price-container { display: contents; }
.catalog-product-view .product-info-price .price-wrapper .price { font: 800 30px/1.1 var(--ak-font-head) !important; color: var(--ak-ink) !important; letter-spacing: -.02em; }
.catalog-product-view .product-info-price .usd-price { font: 500 13px/1.2 var(--ak-font-ui) !important; color: var(--ak-ink-3) !important; }
.catalog-product-view .product-info-price .old-price .price { font: 500 16px/1 var(--ak-font-head) !important; color: var(--ak-ink-3) !important; text-decoration: line-through; }
.catalog-product-view .product-info-release { display: inline-flex; align-items: center; gap: 6px; margin: 4px 0 18px !important; padding: 6px 12px 6px 10px; border-radius: 999px; background: #f4f7f6; color: var(--ak-ink-2); font: 500 12px/1.2 var(--ak-font-ui) !important; }
.catalog-product-view .product-info-release::before { content: ""; width: 14px; height: 14px; background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Crect x='3' y='5' width='18' height='16' rx='3' fill='none' stroke='%235b6b68' stroke-width='2'/%3E%3Cpath d='M3 10h18M8 3v4M16 3v4' stroke='%235b6b68' stroke-width='2' stroke-linecap='round'/%3E%3C/svg%3E") center / contain no-repeat; }
.catalog-product-view .product-info-release > div { display: inline; }

/* form: options → qty + wishlist → CTA → shipping estimate (order fixed by preview.js) */
.catalog-product-view .product-add-form { margin: 0 !important; padding: 0 !important; }
.catalog-product-view .product-add-form form { display: flex; flex-direction: column; gap: 0; }
.catalog-product-view .product-options-wrapper .fieldset { margin: 0 !important; padding: 0 !important; }
.catalog-product-view .product-options-wrapper .field.configurable { margin: 0 0 16px !important; }
.catalog-product-view .product-options-wrapper .field.configurable .label { display: block; margin: 0 0 6px; font: 600 13px/1.3 var(--ak-font-ui); color: var(--ak-ink-2); text-transform: none; }
.catalog-product-view .product-options-wrapper .field.configurable .label::after { content: " *"; color: var(--ak-red); }
.catalog-product-view .product-options-wrapper .super-attribute-select { height: 48px; padding: 0 42px 0 16px !important; border: 1.5px solid #d9e6e3 !important; border-radius: 12px !important; font: 500 15px/1.2 var(--ak-font-ui) !important; color: var(--ak-ink) !important; appearance: none; -webkit-appearance: none; background: #fff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='none' stroke='%2322302e' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round' d='M6 9l6 6 6-6'/%3E%3C/svg%3E") right 14px center / 16px no-repeat !important; box-shadow: none !important; }
.catalog-product-view .product-options-wrapper .super-attribute-select:focus { border-color: var(--ak-mint) !important; box-shadow: 0 0 0 4px rgba(87,213,194,.18) !important; outline: none; }
.catalog-product-view .product-options-wrapper div.mage-error { margin: 6px 0 0 !important; font: 500 12px/1.4 var(--ak-font-ui) !important; color: var(--ak-red-ink) !important; }
.catalog-product-view .product-options-wrapper .super-attribute-select.mage-error { border-color: var(--ak-red) !important; }
.catalog-product-view .product-options-bottom { margin: 0 !important; padding: 0 !important; }

.catalog-product-view .box-tocart { margin: 0 !important; padding: 0 !important; width: 100%; }
.catalog-product-view .box-tocart .fieldset { display: flex; flex-wrap: wrap; align-items: center; gap: 12px; margin: 0 !important; padding: 0 !important; }
.catalog-product-view .box-tocart .field.qty { margin: 0 !important; width: auto !important; flex: 0 0 auto; }
.catalog-product-view .box-tocart .field.qty .label { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); }
.catalog-product-view .box-tocart .field.qty .control { display: flex; align-items: center; height: 48px; border: 1.5px solid #d9e6e3; border-radius: 999px; overflow: hidden; background: #fff; }
.catalog-product-view .box-tocart .qty-minus, .catalog-product-view .box-tocart .qty-plus, .catalog-product-view .box-tocart .qty-input { float: none !important; margin: 0 !important; }
.catalog-product-view .box-tocart .btn-qty { display: flex !important; align-items: center; justify-content: center; width: 44px; height: 46px; border: 0 !important; background: transparent !important; color: var(--ak-ink) !important; font: 500 22px/1 var(--ak-font-ui) !important; text-decoration: none !important; transition: background .15s ease; }
@media (hover: hover) { .catalog-product-view .box-tocart .btn-qty:hover { background: var(--ak-tint) !important; color: var(--ak-mint-deep) !important; } }
.catalog-product-view .box-tocart .input-text.qty { width: 48px !important; height: 46px !important; border: 0 !important; background: transparent !important; text-align: center; font: 600 16px/1 var(--ak-font-ui) !important; color: var(--ak-ink) !important; box-shadow: none !important; padding: 0 !important; -moz-appearance: textfield; }
.catalog-product-view .box-tocart .input-text.qty::-webkit-outer-spin-button, .catalog-product-view .box-tocart .input-text.qty::-webkit-inner-spin-button { -webkit-appearance: none; margin: 0; }
/* wishlist link moved next to qty by preview.js */
.catalog-product-view .product-addto-links { margin: 0 !important; flex: 1 1 auto; display: flex; }
.catalog-product-view .product-addto-links .action.towishlist { display: inline-flex !important; align-items: center; justify-content: center; gap: 8px; height: 48px; padding: 0 18px !important; margin: 0 !important; border: 1.5px solid #d9e6e3 !important; border-radius: 999px !important; background: #fff !important; color: var(--ak-ink) !important; font: 600 13px/1 var(--ak-font-ui) !important; text-transform: none !important; text-decoration: none !important; white-space: nowrap; transition: border-color .15s ease, background .15s ease; }
.catalog-product-view .product-addto-links .action.towishlist::before { content: ""; width: 18px; height: 18px; background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='none' stroke='%23e05a5a' stroke-width='2' stroke-linejoin='round' d='M12 20.5l-1.4-1.3C5.4 14.5 2 11.4 2 7.6 2 4.6 4.4 2.3 7.3 2.3c1.8 0 3.5.9 4.7 2.3 1.2-1.4 2.9-2.3 4.7-2.3 2.9 0 5.3 2.3 5.3 5.3 0 3.8-3.4 6.9-8.6 11.6L12 20.5z'/%3E%3C/svg%3E") center / contain no-repeat; }
.catalog-product-view .product-addto-links .action.towishlist span { font: inherit; }
@media (hover: hover) { .catalog-product-view .product-addto-links .action.towishlist:hover { border-color: #e05a5a !important; background: #fff5f5 !important; } }
.catalog-product-view .box-tocart .actions { flex: 1 1 100%; margin: 14px 0 0 !important; padding: 0 !important; display: block; width: 100%; }
.catalog-product-view .box-tocart .action.primary.tocart { width: 100%; min-height: 56px; margin: 0 !important; border: 0 !important; border-radius: 999px !important; background: var(--ak-mint) !important; color: #fff !important; font: 700 17px/1 var(--ak-font-ui) !important; letter-spacing: .02em; text-transform: none !important; box-shadow: 0 6px 18px rgba(87,213,194,.38); transition: background .2s ease, transform .15s ease, box-shadow .2s ease; cursor: pointer; }
.catalog-product-view .box-tocart .action.primary.tocart span { position: relative; display: inline-flex; align-items: center; gap: 10px; }
.catalog-product-view .box-tocart .action.primary.tocart span::before { content: ""; width: 20px; height: 20px; background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='none' stroke='%23fff' stroke-width='2' stroke-linecap='round' stroke-linejoin='round' d='M3 4h2l2.4 11.2a2 2 0 0 0 2 1.6h8.6a2 2 0 0 0 2-1.5L21.5 8H6.5'/%3E%3Ccircle cx='10' cy='20.5' r='1.5' fill='%23fff'/%3E%3Ccircle cx='17.5' cy='20.5' r='1.5' fill='%23fff'/%3E%3C/svg%3E") center / contain no-repeat; }
@media (hover: hover) { .catalog-product-view .box-tocart .action.primary.tocart:hover { background: var(--ak-mint-hover) !important; box-shadow: 0 8px 22px rgba(87,213,194,.48); transform: translateY(-1px); } }
.catalog-product-view .box-tocart .action.primary.tocart:active { transform: translateY(0); }
.catalog-product-view .box-tocart .action.primary.tocart.disabled, .catalog-product-view .box-tocart .action.primary.tocart[disabled] { opacity: .7; }
.catalog-product-view #instant-purchase { margin-top: 10px; }
/* out of stock: notify button gets the same shape as the CTA, wishlist stays below it */
.catalog-product-view .product.alert.stock { margin: 0 0 12px !important; }
.catalog-product-view .product.alert.stock .action.alert { display: inline-flex !important; align-items: center; justify-content: center; gap: 10px; width: 100%; min-height: 56px; margin: 0 !important; padding: 0 20px !important; border: 0 !important; border-radius: 999px !important; background: var(--ak-ink) !important; color: #fff !important; font: 700 16px/1 var(--ak-font-ui) !important; text-transform: none !important; text-decoration: none !important; box-shadow: 0 6px 18px rgba(34,48,46,.18); transition: background .2s ease; }
.catalog-product-view .product.alert.stock .action.alert::before { content: ""; width: 20px; height: 20px; background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='none' stroke='%23fff' stroke-width='2' stroke-linecap='round' stroke-linejoin='round' d='M6 16V11a6 6 0 0 1 12 0v5l1.5 2h-15zM10 20a2 2 0 0 0 4 0'/%3E%3C/svg%3E") center / contain no-repeat; }
@media (hover: hover) { .catalog-product-view .product.alert.stock .action.alert:hover { background: #34433f !important; } }
.catalog-product-view .product-info-main > .product-addto-links { margin: 0 0 16px !important; }
.catalog-product-view .product-info-main > .product-addto-links .action.towishlist { width: 100%; }

/* shipping estimate → quiet card below the CTA */
.catalog-product-view .block-shipping-estimation { margin: 18px 0 0 !important; padding: 0 !important; border: 1.5px solid var(--ak-line) !important; border-radius: var(--ak-radius) !important; background: #fff !important; overflow: hidden; }
.catalog-product-view .block-shipping-estimation .block-title.block-heading { display: flex; align-items: center; justify-content: space-between; gap: 10px; margin: 0 !important; padding: 12px 16px !important; background: var(--ak-tint); border: 0 !important; }
.catalog-product-view .block-shipping-estimation .block-title strong { display: inline-flex; align-items: center; gap: 8px; font: 700 13px/1.2 var(--ak-font-ui) !important; color: var(--ak-ink) !important; }
.catalog-product-view .block-shipping-estimation .block-title strong::before { content: ""; width: 18px; height: 18px; background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Ccircle cx='12' cy='12' r='9' fill='none' stroke='%231f8f7e' stroke-width='2'/%3E%3Cpath d='M3 12h18M12 3c2.8 3 2.8 15 0 18M12 3c-2.8 3-2.8 15 0 18' fill='none' stroke='%231f8f7e' stroke-width='2'/%3E%3C/svg%3E") center / contain no-repeat; }
.catalog-product-view .block-shipping-estimation .content-toggle { padding: 6px 12px !important; border-radius: 999px; background: #fff !important; color: var(--ak-mint-deep) !important; font: 600 12px/1 var(--ak-font-ui) !important; text-decoration: none !important; border: 1.5px solid var(--ak-line); }
.catalog-product-view .block-shipping-estimation .block-content { padding: 14px 16px 16px !important; }
.catalog-product-view .block-shipping-estimation .fieldset { margin: 0 !important; padding: 0 !important; }
.catalog-product-view .block-shipping-estimation .field.country { margin: 0 0 10px !important; }
.catalog-product-view .block-shipping-estimation select { width: 100%; height: 44px; padding: 0 42px 0 14px !important; border: 1.5px solid #d9e6e3 !important; border-radius: 10px !important; font: 500 14px/1.2 var(--ak-font-ui) !important; color: var(--ak-ink) !important; appearance: none; -webkit-appearance: none; background: #fff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='none' stroke='%2322302e' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round' d='M6 9l6 6 6-6'/%3E%3C/svg%3E") right 12px center / 16px no-repeat !important; box-shadow: none !important; }
.catalog-product-view .block-shipping-estimation .bottom-section { display: flex; flex-direction: column; gap: 10px; }
.catalog-product-view .block-shipping-estimation .actions { display: flex; flex-direction: column; gap: 8px; margin: 0 !important; }
.catalog-product-view .block-shipping-estimation .action.btn-submit { align-self: flex-start; min-height: 40px; padding: 0 20px !important; border: 0 !important; border-radius: 999px !important; background: var(--ak-mint) !important; color: #fff !important; font: 600 13px/1 var(--ak-font-ui) !important; text-transform: none !important; cursor: pointer; }
@media (hover: hover) { .catalog-product-view .block-shipping-estimation .action.btn-submit:hover { background: var(--ak-mint-hover) !important; } }
.catalog-product-view .block-shipping-estimation .actions p { margin: 0 !important; color: var(--ak-ink-3) !important; font: 400 12px/1.5 var(--ak-font-ui) !important; }
.catalog-product-view .block-shipping-estimation .shipping-cost-result .rs-inner { padding: 10px 12px; border-radius: 10px; background: #f6f9f8; font: 400 13px/1.5 var(--ak-font-ui); }
.catalog-product-view .block-shipping-estimation .rs-title { margin: 0 0 6px; font-weight: 700; color: var(--ak-ink); }

/* overview + description */
.catalog-product-view .product.attibute.overview { margin: 22px 0 0 !important; padding: 0 !important; border: 0 !important; }
.catalog-product-view .product.attibute.overview .title { display: block; margin: 0 0 6px !important; padding: 0 !important; border: 0 !important; cursor: default; }
.catalog-product-view .product.attibute.overview .title::after { display: none !important; }
.catalog-product-view .product.attibute.overview .title .type { display: inline-block; font: 700 11px/1 var(--ak-font-ui) !important; letter-spacing: .1em; text-transform: uppercase; color: var(--ak-ink-3) !important; }
.catalog-product-view .product.attibute.overview .value { font: 400 14px/1.7 var(--ak-font-head) !important; color: var(--ak-ink-2) !important; }
.catalog-product-view .product.attibute.overview .value p { margin: 0 0 .6em; }

.catalog-product-view .product.info.detailed { margin: 0 !important; padding: 0 !important; border: 0 !important; box-shadow: none !important; }
.catalog-product-view .product.data.items { border: 0 !important; margin: 0 !important; }
.catalog-product-view .product.data.items > .item.title { margin: 0 0 14px !important; padding: 0 !important; border: 0 !important; float: none !important; width: auto !important; }
.catalog-product-view .product.data.items > .item.title > .switch { display: inline-flex !important; align-items: center; gap: 8px; height: auto !important; margin: 0 !important; padding: 0 !important; border: 0 !important; background: none !important; font: 700 22px/1.2 var(--ak-font-head) !important; color: var(--ak-mint) !important; text-transform: none !important; letter-spacing: -.01em; pointer-events: none; }
.catalog-product-view .product.data.items > .item.title > .switch::before { content: ""; position: static !important; flex: 0 0 20px; width: 20px; height: 20px; background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='%23F6B84B' d='M12 2.6l2.9 6 6.6.9-4.8 4.6 1.2 6.5L12 17.5l-5.9 3.1 1.2-6.5L2.5 9.5l6.6-.9z'/%3E%3C/svg%3E") center / contain no-repeat; }
.catalog-product-view .product.data.items > .item.title > .switch::after { display: none !important; }
.catalog-product-view .product.data.items > .item.content { display: block !important; margin: 0 !important; padding: 0 !important; border: 0 !important; float: none !important; width: auto !important; }
.catalog-product-view .product.data.items > .item.content::before, .catalog-product-view .product.data.items > .item.content::after { display: none !important; }
.catalog-product-view .product.attribute.description .value { max-width: 860px; font: 400 15px/1.75 var(--ak-font-head) !important; color: var(--ak-ink) !important; }
.catalog-product-view .product.attribute.description .value p { margin: 0 0 1em !important; }
.catalog-product-view .product.attribute.description .value > br { display: none; }
.catalog-product-view .product.attribute.description .value p.ak-callout { margin: 18px 0 0 !important; }
.catalog-product-view .product.attribute.description .value img { max-width: 100%; height: auto; border-radius: var(--ak-radius); }

/* desktop grid: gallery 55% / info 45% */
@media (min-width: 769px) {
  .catalog-product-view .product-main-content { display: grid; grid-template-columns: minmax(0, 7fr) minmax(0, 5fr); gap: 40px; align-items: start; }
  .catalog-product-view .product.media, .catalog-product-view .product-info-main { float: none !important; width: auto !important; max-width: none !important; margin: 0 !important; }
  .catalog-product-view .product-info-main { position: sticky; top: 92px; }
  .catalog-product-view .product.data.items > .item.title { display: block !important; }
}
@media (max-width: 1023px) and (min-width: 769px) { .catalog-product-view .product-main-content { gap: 24px; } .catalog-product-view .product-info-main { top: 128px; } }
@media (max-width: 768px) {
  .catalog-product-view .product-main-content { margin-bottom: 32px !important; }
  .catalog-product-view .product-info-main { margin-top: 12px !important; }
  .catalog-product-view .product-info-main .page-title { font-size: 20px !important; }
  .catalog-product-view .product-info-price .price-wrapper .price { font-size: 26px !important; }
  .catalog-product-view .box-tocart .actions { margin-top: 12px !important; }
  .catalog-product-view .product.data.items > .item.title { display: block !important; }
  .catalog-product-view .product.data.items > .item.title > .switch { font-size: 20px !important; }
  .catalog-product-view .product.media .fotorama__stage { border-radius: var(--ak-radius); }
}


/* ==========================================================================
   3. BLOG  (body.blog-page)
   ========================================================================== */
.blog-page .page-title-wrapper { margin: 8px 0 22px; }
.blog-page .page-title-wrapper .page-title { display: inline-flex; align-items: center; gap: 8px; margin: 0 !important; font: 700 26px/1.2 var(--ak-font-head) !important; letter-spacing: -.01em; color: var(--ak-mint) !important; text-transform: none !important; }
.blog-page .page-title-wrapper .page-title::before { content: ""; flex: 0 0 22px; width: 22px; height: 22px; background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='%23F6B84B' d='M3 17.3V21h3.7L17.6 10.1l-3.7-3.7L3 17.3zm17.7-10.2a1 1 0 0 0 0-1.4l-2.4-2.4a1 1 0 0 0-1.4 0l-1.8 1.8 3.7 3.7 1.9-1.7z'/%3E%3C/svg%3E") center / contain no-repeat; }
.blog-page .breadcrumbs .items { font: 500 11px/1.4 var(--ak-font-ui); letter-spacing: .04em; }
.blog-page .breadcrumbs a { color: var(--ak-ink-3); }
.blog-page .breadcrumbs strong { color: var(--ak-ink-2); font-weight: 600; }
@media (min-width: 769px) { .blog-page.page-layout-2columns-right .column.main { width: calc(100% - 320px) !important; padding-right: 0 !important; } .blog-page.page-layout-2columns-right .sidebar { width: 288px !important; padding-left: 0 !important; margin-left: 32px; } }
@media (min-width: 769px) and (max-width: 1023px) { .blog-page.page-layout-2columns-right .column.main { width: calc(100% - 260px) !important; } .blog-page.page-layout-2columns-right .sidebar { width: 236px !important; margin-left: 24px; } }

/* --- list: card grid --- */
.blog-page-list .post-list, .blog-page .post-list { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 28px 24px; margin: 0 0 32px !important; padding: 0 !important; list-style: none; }
.blog-page .post-list .post-item { margin: 0 !important; padding: 0 !important; border: 0 !important; background: none !important; }
.blog-page .post-list .post-container { display: flex; flex-direction: column; height: 100%; border-radius: var(--ak-radius-lg); background: #fff; border: 1.5px solid var(--ak-line); overflow: hidden; transition: transform .25s ease, box-shadow .25s ease, border-color .25s ease; }
@media (hover: hover) { .blog-page .post-list .post-container:hover { transform: translateY(-3px); box-shadow: var(--ak-shadow); border-color: transparent; } }
.blog-page .post-list .post-image { float: none !important; width: 100% !important; margin: 0 !important; padding: 0 !important; }
.blog-page .post-list .image-container { position: relative; }
.blog-page .post-list .image-wrap { display: block; }
.blog-page .post-list .bg-img { width: 100%; aspect-ratio: 16 / 9; height: auto !important; min-height: 0 !important; background-size: cover; background-position: center; transition: transform .4s ease; }
@media (hover: hover) { .blog-page .post-list .post-container:hover .bg-img { transform: scale(1.03); } }
.blog-page .post-list .post-category { position: absolute; left: 12px; bottom: 12px; display: flex; flex-wrap: wrap; gap: 6px; margin: 0 !important; }
.blog-page .post-list .post-category .category-name, .blog-post-view .post-header .category-name { display: inline-block; padding: 5px 10px; border-radius: 999px; background: rgba(255,255,255,.92); color: var(--ak-mint-deep) !important; font: 700 10px/1 var(--ak-font-ui) !important; letter-spacing: .06em; text-transform: uppercase; text-decoration: none !important; backdrop-filter: blur(4px); }
.blog-page .post-list .post-info { display: flex; flex: 1 1 auto; flex-direction: column; float: none !important; width: auto !important; margin: 0 !important; padding: 16px 18px 18px !important; }
.blog-page .post-list .post-title-wrap { margin: 0 0 6px !important; }
.blog-page .post-list .post-title { margin: 0 !important; font: 700 17px/1.35 var(--ak-font-head) !important; letter-spacing: -.01em; }
.blog-page .post-list .post-title a { color: var(--ak-ink) !important; text-decoration: none !important; display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; }
.blog-page .post-list .post-title a:hover { color: var(--ak-mint-deep) !important; }
.blog-page .post-list .post-data-wrap { margin: 0 0 10px !important; font: 500 12px/1.3 var(--ak-font-ui) !important; color: var(--ak-ink-3) !important; }
.blog-page .post-list .post-date > span:first-child { display: none; } /* the "-" prefix */
.blog-page .post-list .post-description { flex: 1 1 auto; margin: 0 0 14px !important; font: 400 14px/1.6 var(--ak-font-head) !important; color: var(--ak-ink-2) !important; display: -webkit-box; -webkit-line-clamp: 3; -webkit-box-orient: vertical; overflow: hidden; }
.blog-page .post-list .post-description h1, .blog-page .post-list .post-description h2, .blog-page .post-list .post-description h3 { display: none !important; } /* the body's own headline repeats the title */
.blog-page .post-list .post-description p { margin: 0 0 .5em !important; }
.blog-page .post-list .post-description img, .blog-page .post-list .post-description br { display: none !important; }
.blog-page .post-list .post-read-more { margin: 0 !important; padding: 0 !important; }
.blog-page .post-list .post-read-more .action.primary { display: inline-flex !important; align-items: center; gap: 6px; min-height: 0; padding: 0 !important; margin: 0 !important; border: 0 !important; border-radius: 0 !important; background: none !important; color: var(--ak-mint-deep) !important; font: 600 13px/1 var(--ak-font-ui) !important; text-transform: none !important; text-decoration: none !important; box-shadow: none !important; }
.blog-page .post-list .post-read-more .action.primary::after { content: "→"; transition: transform .2s ease; }
.blog-page .post-list .post-read-more .action.primary:hover::after { transform: translateX(3px); }
@media (max-width: 1023px) and (min-width: 769px) { .blog-page .post-list { gap: 20px 16px; } }
@media (max-width: 640px) { .blog-page .post-list { grid-template-columns: 1fr; gap: 20px; } .blog-page .post-list .post-info { padding: 14px 16px 16px !important; } }

/* pager → mint pills (same as listing pages) */
.blog-page .toolbar-blog-posts { margin: 0 0 40px !important; padding: 0 !important; border: 0 !important; display: flex; justify-content: center; }
.blog-page .toolbar-blog-posts .pages { float: none !important; margin: 0 !important; }
.blog-page .toolbar-blog-posts .pages .pages-label { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); }
.blog-page .toolbar-blog-posts .pages .items { display: flex; gap: 6px; align-items: center; }
.blog-page .toolbar-blog-posts .pages .item { margin: 0 !important; }
.blog-page .toolbar-blog-posts .pages .page, .blog-page .toolbar-blog-posts .pages .action { display: inline-flex !important; align-items: center; justify-content: center; min-width: 38px; height: 38px; padding: 0 12px !important; border: 1.5px solid var(--ak-line) !important; border-radius: 999px !important; background: #fff !important; color: var(--ak-ink) !important; font: 600 13px/1 var(--ak-font-ui) !important; text-decoration: none !important; box-shadow: none !important; }
.blog-page .toolbar-blog-posts .pages .item.current .page { background: var(--ak-mint) !important; border-color: var(--ak-mint) !important; color: #fff !important; }
.blog-page .toolbar-blog-posts .pages a.page:hover, .blog-page .toolbar-blog-posts .pages .action:hover { border-color: var(--ak-mint) !important; color: var(--ak-mint-deep) !important; }
.blog-page .toolbar-blog-posts .pages .action::before { color: inherit !important; }

/* --- sidebar --- */
.blog-page .sidebar .widget.block { margin: 0 0 22px !important; padding: 0 !important; border: 0 !important; }
.blog-page .sidebar .block-title { margin: 0 0 12px !important; padding: 0 !important; border: 0 !important; }
.blog-page .sidebar .block-title strong { font: 700 12px/1 var(--ak-font-ui) !important; letter-spacing: .1em; text-transform: uppercase; color: var(--ak-ink-3) !important; }
.blog-page .sidebar .blog-search .form { position: relative; }
.blog-page .sidebar .blog-search .field.search { margin: 0 !important; }
.blog-page .sidebar .blog-search .label { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); }
.blog-page .sidebar .blog-search .input-text { width: 100%; height: 46px; padding: 0 48px 0 16px !important; border: 1.5px solid #d9e6e3 !important; border-radius: 999px !important; font: 400 14px/1 var(--ak-font-ui) !important; color: var(--ak-ink) !important; box-shadow: none !important; box-sizing: border-box; }
.blog-page .sidebar .blog-search .input-text:focus { border-color: var(--ak-mint) !important; box-shadow: 0 0 0 4px rgba(87,213,194,.18) !important; outline: none; }
.blog-page .sidebar .blog-search .actions { position: absolute; right: 5px; top: 5px; margin: 0 !important; }
.blog-page .sidebar .blog-search .action.search { width: 36px; height: 36px; padding: 0 !important; border: 0 !important; border-radius: 50% !important; background: var(--ak-mint) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Ccircle cx='10.5' cy='10.5' r='6' fill='none' stroke='%23fff' stroke-width='2.2'/%3E%3Cpath d='M15 15l5 5' stroke='%23fff' stroke-width='2.2' stroke-linecap='round'/%3E%3C/svg%3E") center / 18px no-repeat !important; box-shadow: none !important; }
.blog-page .sidebar .blog-search .action.search span, .blog-page .sidebar .blog-search .action.search::before { display: none !important; }
.blog-page .sidebar .block-categories .accordion, .blog-page .sidebar .block-archive .accordion, .blog-page .sidebar .block-categories ul, .blog-page .sidebar .block-archive ul { display: flex; flex-wrap: wrap; gap: 8px; margin: 0 !important; padding: 0 !important; list-style: none; }
.blog-page .sidebar .block-categories li, .blog-page .sidebar .block-archive li { margin: 0 !important; padding: 0 !important; border: 0 !important; background: none !important; }
.blog-page .sidebar .block-categories li a, .blog-page .sidebar .block-archive li a { display: inline-flex; align-items: center; padding: 8px 12px !important; border-radius: 999px; border: 1.5px solid var(--ak-line); background: #fff; color: var(--ak-ink) !important; font: 500 12px/1.2 var(--ak-font-ui) !important; text-decoration: none !important; text-transform: none !important; transition: background .15s ease, border-color .15s ease; }
.blog-page .sidebar .block-categories li a:hover, .blog-page .sidebar .block-archive li a:hover { background: var(--ak-tint); border-color: var(--ak-mint); color: var(--ak-mint-deep) !important; }
.blog-page .sidebar .block-categories li.current a, .blog-page .sidebar .block-categories li a.current { background: var(--ak-mint); border-color: var(--ak-mint); color: #fff !important; }
.blog-page .sidebar .block-archive li.ak-more-hidden { display: none; }
.blog-page .sidebar .ak-archive-more { display: inline-flex; align-items: center; gap: 6px; margin: 10px 0 0; padding: 0; border: 0; background: none; color: var(--ak-mint-deep); font: 600 12px/1 var(--ak-font-ui); cursor: pointer; }
.blog-page .sidebar .ak-archive-more::after { content: "▾"; }
.blog-page .sidebar .ak-archive-more.is-open::after { content: "▴"; }
@media (max-width: 768px) { .blog-page .sidebar { margin-top: 12px; padding-top: 24px; border-top: 1px solid var(--ak-line); } }

/* --- single post --- */
.blog-post-view .page-title-wrapper .page-title { font-size: 30px !important; line-height: 1.25 !important; color: var(--ak-ink) !important; letter-spacing: -.02em; display: block; }
.blog-post-view .page-title-wrapper .page-title::before { display: none; }
.blog-post-view .page-title-wrapper { margin: 8px 0 14px; max-width: 800px; }
.blog-post-view .post-view .post-header { display: flex; flex-wrap: wrap; align-items: center; gap: 10px; margin: 0 0 18px; }
.blog-post-view .post-view .post-header .post-category { display: flex; flex-wrap: wrap; gap: 6px; margin: 0 !important; }
.blog-post-view .post-header .category-name { background: var(--ak-tint); }
.blog-post-view .post-header .post-data-wrap { margin: 0 !important; font: 500 12px/1.3 var(--ak-font-ui) !important; color: var(--ak-ink-3) !important; }
.blog-post-view .post-header .post-date > span:first-child { display: none; }
.blog-post-view .post-featured-image { margin: 0 0 26px !important; }
.blog-post-view .post-featured-image img { width: 100%; height: auto; border-radius: var(--ak-radius-lg); display: block; }
.blog-post-view .post-content .post-description { max-width: 800px; font: 400 16px/1.75 var(--ak-font-head); color: var(--ak-ink); }
.blog-post-view .post-content .post-description p { margin: 0 0 1.1em; }
.blog-post-view .post-content .post-description h1, .blog-post-view .post-content .post-description h2 { margin: 1.6em 0 .6em; font: 700 22px/1.3 var(--ak-font-head); color: var(--ak-ink); text-transform: none; letter-spacing: -.01em; }
.blog-post-view .post-content .post-description > h1:first-child { margin-top: 0; }
.blog-post-view .post-content .post-description h3, .blog-post-view .post-content .post-description h4 { margin: 1.4em 0 .5em; font: 700 18px/1.35 var(--ak-font-head); color: var(--ak-ink); text-transform: none; }
.blog-post-view .post-content .post-description a { color: var(--ak-mint-deep); font-weight: 600; text-decoration: underline; text-decoration-color: rgba(87,213,194,.6); text-underline-offset: 3px; }
.blog-post-view .post-content .post-description img { max-width: 100%; height: auto; border-radius: var(--ak-radius); }
.blog-post-view .post-content .post-description ul, .blog-post-view .post-content .post-description ol { padding-left: 1.4em; }
.blog-post-view .post-content .post-description blockquote { margin: 1.2em 0; padding: 14px 18px; border-left: 4px solid var(--ak-mint); background: var(--ak-tint); border-radius: 0 var(--ak-radius) var(--ak-radius) 0; }
@media (max-width: 767px) { .blog-post-view .page-title-wrapper .page-title { font-size: 24px !important; } .blog-post-view .post-content .post-description { font-size: 15px; line-height: 1.7; } .blog-post-view .post-content .post-description h1, .blog-post-view .post-content .post-description h2 { font-size: 20px; } }
/* bottom: sharing + prev/next */
.blog-post-view .post-bottom { margin-top: 32px; padding-top: 22px; border-top: 1px solid var(--ak-line); }
.blog-post-view .post-sharing { margin: 0 0 20px !important; padding: 0 !important; border: 0 !important; }
.blog-post-view .post-sharing .share-elements { display: flex; align-items: center; flex-wrap: wrap; gap: 10px; justify-content: flex-start !important; }
.blog-post-view .post-sharing .share-elements::before { content: "Share"; margin-right: 4px; font: 700 11px/1 var(--ak-font-ui); letter-spacing: .1em; text-transform: uppercase; color: var(--ak-ink-3); }
.blog-post-view .post-sharing .icon-wrapper { display: inline-flex !important; align-items: center; gap: 8px; margin: 0 !important; padding: 0 14px 0 8px !important; height: 40px; border-radius: 999px !important; background: #fff !important; border: 1.5px solid var(--ak-line); color: var(--ak-ink) !important; cursor: pointer; transition: border-color .15s ease, background .15s ease; }
.blog-post-view .post-sharing .icon-wrapper:hover { border-color: var(--ak-mint); background: var(--ak-tint) !important; }
.blog-post-view .post-sharing .icon-wrapper .icon { width: 26px; height: 26px; margin: 0 !important; padding: 0 !important; display: flex; align-items: center; justify-content: center; border-radius: 50%; background: var(--ak-ink); }
.blog-post-view .post-sharing .icon-wrapper .icon img { width: 14px; height: 14px; filter: brightness(0) invert(1); }
.blog-post-view .post-sharing .icon-wrapper .label { font: 600 12px/1 var(--ak-font-ui) !important; color: inherit !important; }
.blog-post-view .post-nextprev-hld { display: flex; justify-content: space-between; gap: 12px; margin: 0 !important; padding: 0 !important; border: 0 !important; }
.blog-post-view .post-nextprev-hld .nextprev-link { display: inline-flex; align-items: center; gap: 8px; min-height: 44px; padding: 0 18px !important; border: 1.5px solid var(--ak-line) !important; border-radius: 999px !important; background: #fff !important; color: var(--ak-ink) !important; font: 600 13px/1 var(--ak-font-ui) !important; text-decoration: none !important; float: none !important; }
.blog-post-view .post-nextprev-hld .nextprev-link:hover { border-color: var(--ak-mint) !important; color: var(--ak-mint-deep) !important; }
.blog-post-view .post-nextprev-hld .next-link { margin-left: auto; }

/* ==========================================================================
   4. FOOTER PAGES  (cms-page-view / contact / faq / login / create / account)
   ========================================================================== */
.ak-page-head { margin: 8px 0 24px; }
.cms-page-view .page-title-wrapper, .contact-index-index .page-title-wrapper, .faq-index-index .page-title-wrapper, .customer-account-login .page-title-wrapper, .customer-account-create .page-title-wrapper, .customer-account-forgotpassword .page-title-wrapper { margin: 8px 0 24px !important; }
.cms-page-view .page-title-wrapper .page-title, .contact-index-index .page-title-wrapper .page-title, .faq-index-index .page-title-wrapper .page-title, .customer-account-login .page-title-wrapper .page-title, .customer-account-create .page-title-wrapper .page-title, .customer-account-forgotpassword .page-title-wrapper .page-title, .account .page-title-wrapper .page-title { display: inline-flex; align-items: center; gap: 8px; margin: 0 !important; font: 700 26px/1.2 var(--ak-font-head) !important; letter-spacing: -.01em; color: var(--ak-mint) !important; text-transform: none !important; }
.cms-page-view .page-title-wrapper .page-title::before, .contact-index-index .page-title-wrapper .page-title::before, .faq-index-index .page-title-wrapper .page-title::before, .customer-account-login .page-title-wrapper .page-title::before, .customer-account-create .page-title-wrapper .page-title::before, .customer-account-forgotpassword .page-title-wrapper .page-title::before, .account .page-title-wrapper .page-title::before { content: ""; flex: 0 0 22px; width: 22px; height: 22px; background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='%23F6B84B' d='M12 2.6l2.9 6 6.6.9-4.8 4.6 1.2 6.5L12 17.5l-5.9 3.1 1.2-6.5L2.5 9.5l6.6-.9z'/%3E%3C/svg%3E") center / contain no-repeat; }
@media (max-width: 767px) { .cms-page-view .page-title-wrapper .page-title, .contact-index-index .page-title-wrapper .page-title, .faq-index-index .page-title-wrapper .page-title, .customer-account-login .page-title-wrapper .page-title, .customer-account-create .page-title-wrapper .page-title, .account .page-title-wrapper .page-title { font-size: 22px !important; } }
.cms-page-view .breadcrumbs .items, .faq-index-index .breadcrumbs .items, .contact-index-index .breadcrumbs .items { font: 500 11px/1.4 var(--ak-font-ui); letter-spacing: .04em; }
.cms-page-view .breadcrumbs a, .faq-index-index .breadcrumbs a { color: var(--ak-ink-3); }
.cms-page-view .breadcrumbs strong, .faq-index-index .breadcrumbs strong { color: var(--ak-ink-2); font-weight: 600; }

/* text pages: comfortable reading column */
.cms-about-us .column.main, .cms-message-from-founder .column.main, .cms-privacy-policy .column.main, .cms-shipping .column.main { font: 400 16px/1.75 var(--ak-font-head); color: var(--ak-ink); }
.cms-about-us .column.main p, .cms-message-from-founder .column.main p, .cms-shipping .column.main p { margin: 0 0 1.1em; }
.cms-about-us .column.main a, .cms-message-from-founder .column.main a, .cms-shipping .column.main a, .cms-privacy-policy .column.main a { color: var(--ak-mint-deep); font-weight: 600; text-decoration: underline; text-decoration-color: rgba(87,213,194,.6); text-underline-offset: 3px; }
@media (max-width: 767px) { .cms-about-us .column.main, .cms-message-from-founder .column.main, .cms-shipping .column.main { font-size: 15px; line-height: 1.7; } }

/* About Us: the two inline-styled tables → clean definition cards */
.cms-about-us .column.main > div[style] { display: block !important; overflow: visible !important; margin: 0 0 28px !important; }
.cms-about-us .column.main > div[style] > p { margin: 0 0 12px !important; }
.cms-about-us .column.main > div[style] > p > strong { display: inline-flex; align-items: center; gap: 8px; font: 700 18px/1.3 var(--ak-font-head); color: var(--ak-ink); }
.cms-about-us .column.main table { width: 100% !important; max-width: 860px; height: auto !important; float: none !important; margin: 0 0 8px !important; border: 0 !important; border-collapse: separate !important; border-spacing: 0; border-radius: var(--ak-radius-lg); overflow: hidden; background: #fff; box-shadow: 0 0 0 1.5px var(--ak-line); }
.cms-about-us .column.main table td { width: auto !important; padding: 12px 16px !important; border: 0 !important; border-bottom: 1px solid var(--ak-line) !important; font: 400 14px/1.55 var(--ak-font-head) !important; color: var(--ak-ink) !important; vertical-align: top; text-align: left !important; }
.cms-about-us .column.main table tr:last-child td { border-bottom: 0 !important; }
.cms-about-us .column.main table td:first-child { width: 34% !important; background: var(--ak-tint); color: var(--ak-ink-2) !important; }
.cms-about-us .column.main table td:first-child strong { font: 600 13px/1.4 var(--ak-font-ui); color: var(--ak-ink-2); }
@media (max-width: 640px) { .cms-about-us .column.main table td:first-child { width: 40% !important; } .cms-about-us .column.main table td { padding: 10px 12px !important; font-size: 13px !important; } }

/* Shipping Info: notice → callout, tables → cards, bare h4 → section headings */
.cms-shipping .rg-container { max-width: 960px; }
.cms-shipping .column.main > .rg-container > h4:first-child { margin: 0 0 22px; padding: 14px 16px 14px 46px; border-radius: var(--ak-radius); background: var(--ak-gold-tint); position: relative; font: 500 14px/1.6 var(--ak-font-ui) !important; text-transform: none !important; letter-spacing: 0; }
.cms-shipping .column.main > .rg-container > h4:first-child::before { content: ""; position: absolute; left: 16px; top: 15px; width: 20px; height: 20px; background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Ccircle cx='12' cy='12' r='10' fill='%23F6B84B'/%3E%3Crect x='10.7' y='6.5' width='2.6' height='7.5' rx='1.3' fill='%23fff'/%3E%3Ccircle cx='12' cy='17' r='1.5' fill='%23fff'/%3E%3C/svg%3E") center / contain no-repeat; }
.cms-shipping .column.main > .rg-container > h4:first-child span, .cms-shipping .column.main > .rg-container > h4:first-child strong { color: var(--ak-gold-ink) !important; font-weight: 500 !important; }
.cms-shipping .column.main > .rg-container > h4:first-child a { color: var(--ak-gold-ink) !important; font-weight: 700 !important; }
.cms-shipping .rg-container > img { margin: 0 auto 8px !important; max-width: 100%; height: auto; }
.cms-shipping .rg-container hr { border: 0; border-top: 1px solid var(--ak-line); margin: 20px 0; }
.cms-shipping h4:not(:first-child) { margin: 34px 0 14px; font: 700 20px/1.3 var(--ak-font-head) !important; color: var(--ak-ink) !important; text-transform: none !important; letter-spacing: -.01em; }
.cms-shipping .rg-table { width: 100%; margin: 0 0 18px; border-collapse: separate !important; border-spacing: 0; border-radius: var(--ak-radius-lg); overflow: hidden; box-shadow: 0 0 0 1.5px var(--ak-line); background: #fff; font: 400 14px/1.5 var(--ak-font-head); }
.cms-shipping .rg-table th { padding: 12px 12px !important; background: var(--ak-tint) !important; color: var(--ak-mint-deep) !important; font: 700 11px/1.3 var(--ak-font-ui) !important; letter-spacing: .08em; text-transform: uppercase; border: 0 !important; }
.cms-shipping .rg-table td { padding: 11px 12px !important; border: 0 !important; border-top: 1px solid var(--ak-line) !important; color: var(--ak-ink) !important; vertical-align: middle; }
.cms-shipping .rg-table.zebra tbody tr:nth-child(even) td { background: #fafcfb; }
.cms-shipping .rg-table td:first-child { font-weight: 600; }
.cms-shipping .rg-table td span[style*="ff0000"], .cms-shipping .rg-table td span[style*="FF0000"] { color: var(--ak-red-ink) !important; font-weight: 600; }
.cms-shipping .column.main p { font-size: 14px; color: var(--ak-ink-2); }
@media (max-width: 640px) {
  .cms-shipping .rg-table thead { display: none; }
  .cms-shipping .rg-table, .cms-shipping .rg-table tbody, .cms-shipping .rg-table tr, .cms-shipping .rg-table td { display: block; width: 100%; box-sizing: border-box; }
  .cms-shipping .rg-table { box-shadow: none; background: none; overflow: visible; }
  .cms-shipping .rg-table tr { margin: 0 0 12px; border-radius: var(--ak-radius); box-shadow: 0 0 0 1.5px var(--ak-line); overflow: hidden; background: #fff; }
  .cms-shipping .rg-table.zebra tbody tr:nth-child(even) td { background: #fff; }
  .cms-shipping .rg-table td { display: flex; justify-content: space-between; gap: 12px; padding: 9px 12px !important; text-align: right !important; border-top: 1px solid var(--ak-line) !important; }
  .cms-shipping .rg-table td:first-child { border-top: 0 !important; background: var(--ak-tint); }
  .cms-shipping .rg-table td::before { content: attr(data-title); flex: 0 0 auto; text-align: left; font: 600 11px/1.5 var(--ak-font-ui); letter-spacing: .04em; text-transform: uppercase; color: var(--ak-ink-3); }
}

/* Message from the Founder */
.cms-message-from-founder .column.main { max-width: 800px; }
.cms-message-from-founder .column.main img { display: block; width: 100%; max-width: 420px; height: auto !important; margin: 0 0 22px; border-radius: var(--ak-radius-lg); box-shadow: var(--ak-shadow); }
.cms-message-from-founder .column.main p:first-child > strong { display: block; margin: 0 0 14px; font: 700 20px/1.35 var(--ak-font-head); color: var(--ak-ink); }
.cms-message-from-founder .column.main p:first-child > strong br { display: none; }
.cms-message-from-founder .column.main p:first-child > strong + br { display: none; }

/* Privacy Policy: one-liner → card with a clear action */
.cms-privacy-policy .column.main > p { max-width: 640px; margin: 8px 0 0; padding: 26px 26px 28px; border-radius: var(--ak-radius-lg); border: 1.5px solid var(--ak-line); background: #fff; font: 400 15px/1.7 var(--ak-font-head); color: var(--ak-ink-2); }
.cms-privacy-policy .column.main > p a { display: inline-flex; align-items: center; gap: 8px; margin-top: 14px; min-height: 44px; padding: 0 22px; border-radius: 999px; background: var(--ak-mint); color: #fff !important; font: 600 14px/1 var(--ak-font-ui) !important; text-decoration: none !important; }
.cms-privacy-policy .column.main > p a::after { content: "↗"; }
.cms-privacy-policy .column.main > p a:hover { background: var(--ak-mint-hover); }

/* Contact Us */
.contact-index-index .column.main > .row { display: flex; justify-content: center; }
.contact-index-index .form.contact { width: 100%; max-width: 600px; margin: 0 auto; padding: 28px 28px 30px; border-radius: var(--ak-radius-lg); border: 1.5px solid var(--ak-line); background: #fff; box-shadow: var(--ak-shadow); box-sizing: border-box; }
.contact-index-index .form.contact .fieldset { margin: 0 !important; padding: 0 !important; }
.contact-index-index .form.contact .contact-logo { display: block; width: 180px; height: auto; margin: 0 auto 6px; }
.contact-index-index .form.contact .contact-logo + br { display: none; }
.contact-index-index .form.contact .field.note { margin: 0 0 22px !important; text-align: center; font: 400 14px/1.6 var(--ak-font-head) !important; color: var(--ak-ink-2) !important; }
.contact-index-index .form.contact .field-recaptcha { margin: 6px 0 18px; }
.contact-index-index .form.contact .actions-toolbar { margin: 0 !important; padding: 0 !important; }
.contact-index-index .form.contact .actions-toolbar .primary { float: none !important; width: 100%; }
.contact-index-index .form.contact .action.submit { width: 100%; }
@media (max-width: 640px) { .contact-index-index .form.contact { padding: 22px 18px 24px; border-radius: var(--ak-radius); } }

/* FAQ */
.faq-index-index .faq-groups { display: flex; flex-wrap: wrap; justify-content: center; gap: 12px; margin: 0 0 26px !important; }
.faq-index-index .faq-group { flex: 1 1 150px; max-width: 190px; margin: 0 !important; padding: 16px 12px 14px !important; border-radius: var(--ak-radius-lg); border: 1.5px solid var(--ak-line); background: #fff; text-align: center; transition: transform .2s ease, box-shadow .2s ease, border-color .2s ease; }
@media (hover: hover) { .faq-index-index .faq-group:hover { transform: translateY(-2px); box-shadow: var(--ak-shadow); border-color: transparent; } }
.faq-index-index .faq-group-image img { width: 72px; height: 72px; object-fit: contain; }
.faq-index-index .faq-groupname a { display: block; margin-top: 8px; font: 700 12px/1.2 var(--ak-font-ui) !important; letter-spacing: .06em; text-transform: uppercase; color: var(--ak-ink) !important; text-decoration: none !important; }
.faq-index-index .collspan-expand-block { display: flex; justify-content: flex-end; gap: 8px; margin: 0 0 8px !important; font: 600 12px/1 var(--ak-font-ui); color: var(--ak-ink-3); }
.faq-index-index .collspan-expand-block a { padding: 7px 12px; border-radius: 999px; border: 1.5px solid var(--ak-line); background: #fff; color: var(--ak-ink-2) !important; text-decoration: none !important; }
.faq-index-index .collspan-expand-block a:hover { border-color: var(--ak-mint); color: var(--ak-mint-deep) !important; }
.faq-index-index .group-title { display: inline-flex; align-items: center; gap: 8px; margin: 28px 0 14px !important; padding: 0 !important; border: 0 !important; font: 700 22px/1.2 var(--ak-font-head) !important; color: var(--ak-mint) !important; text-transform: none !important; letter-spacing: -.01em; }
.faq-index-index .group-title::before { content: ""; flex: 0 0 20px; width: 20px; height: 20px; background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='%23F6B84B' d='M12 2.6l2.9 6 6.6.9-4.8 4.6 1.2 6.5L12 17.5l-5.9 3.1 1.2-6.5L2.5 9.5l6.6-.9z'/%3E%3C/svg%3E") center / contain no-repeat; }
.faq-index-index .faq-accordion { border: 0 !important; background: none !important; }
.faq-index-index .faq-accordion .ui-accordion-header { position: relative; margin: 0 0 10px !important; padding: 15px 52px 15px 18px !important; border: 1.5px solid var(--ak-line) !important; border-radius: var(--ak-radius) !important; background: #fff !important; color: var(--ak-ink) !important; font: 600 15px/1.4 var(--ak-font-head) !important; cursor: pointer; transition: border-color .15s ease, background .15s ease; outline: none; }
.faq-index-index .faq-accordion .ui-accordion-header:hover { border-color: var(--ak-mint) !important; }
.faq-index-index .faq-accordion .ui-accordion-header.ui-state-active { border-color: var(--ak-mint) !important; background: var(--ak-tint) !important; border-bottom-left-radius: 0 !important; border-bottom-right-radius: 0 !important; margin-bottom: 0 !important; }
.faq-index-index .faq-accordion .ui-accordion-header .ui-icon { position: absolute; right: 16px; top: 50%; left: auto; width: 24px; height: 24px; margin: -12px 0 0; background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='none' stroke='%231f8f7e' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round' d='M6 9l6 6 6-6'/%3E%3C/svg%3E") center / 20px no-repeat !important; text-indent: 0; transition: transform .2s ease; }
.faq-index-index .faq-accordion .ui-accordion-header.ui-state-active .ui-icon { transform: rotate(180deg); }
.faq-index-index .faq-accordion .ui-accordion-content { margin: 0 0 10px !important; padding: 16px 18px 18px !important; border: 1.5px solid var(--ak-mint) !important; border-top: 0 !important; border-radius: 0 0 var(--ak-radius) var(--ak-radius) !important; background: #fff !important; font: 400 15px/1.7 var(--ak-font-head) !important; color: var(--ak-ink) !important; }
.faq-index-index .faq-accordion .ui-accordion-content p { margin: 0 0 .8em; }
.faq-index-index .faq-accordion .ui-accordion-content p:last-child { margin-bottom: 0; }
.faq-index-index .faq-accordion .ui-accordion-content a { color: var(--ak-mint-deep); font-weight: 600; }
@media (max-width: 640px) { .faq-index-index .faq-groups { gap: 8px; } .faq-index-index .faq-group { flex-basis: calc(33.333% - 6px); max-width: none; padding: 12px 6px 10px !important; } .faq-index-index .faq-group-image img { width: 52px; height: 52px; } .faq-index-index .faq-groupname a { font-size: 10px !important; } .faq-index-index .faq-accordion .ui-accordion-header { font-size: 14px !important; padding: 13px 46px 13px 14px !important; } .faq-index-index .faq-accordion .ui-accordion-content { padding: 14px 14px 16px !important; font-size: 14px !important; } }

/* Login */
.customer-account-login .login-container { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 24px; max-width: 900px; margin: 0 auto; }
.customer-account-login .login-container .block { float: none !important; width: auto !important; margin: 0 !important; padding: 30px 30px 32px !important; border: 1.5px solid var(--ak-line) !important; border-radius: var(--ak-radius-lg); background: #fff; box-shadow: var(--ak-shadow); box-sizing: border-box; }
.customer-account-login .login-container .block-title { margin: 0 0 18px !important; padding: 0 !important; border: 0 !important; text-align: left; }
.customer-account-login .login-container .block-title strong { display: block; font: 700 20px/1.3 var(--ak-font-head) !important; color: var(--ak-ink) !important; text-transform: none !important; letter-spacing: -.01em; }
.customer-account-login .login-container .block-title .field.note { margin: 6px 0 0 !important; font: 400 13px/1.5 var(--ak-font-head) !important; color: var(--ak-ink-2) !important; }
.customer-account-login .form-login .fieldset { margin: 0 !important; padding: 0 !important; }
.customer-account-login .form-login .actions-toolbar { display: flex; flex-direction: column; align-items: stretch; gap: 12px; margin: 6px 0 0 !important; padding: 0 !important; }
.customer-account-login .form-login .actions-toolbar .primary, .customer-account-login .form-login .actions-toolbar .secondary { float: none !important; width: 100%; text-align: center; }
.customer-account-login .form-login .action.login { width: 100%; }
.customer-account-login .form-login .action.remind { font: 600 13px/1 var(--ak-font-ui) !important; color: var(--ak-mint-deep) !important; text-decoration: underline !important; text-underline-offset: 3px; }
.customer-account-login .block-new-customer .block-content p { margin: 0 0 18px; font: 400 14px/1.65 var(--ak-font-head); color: var(--ak-ink-2); text-align: left; }
.customer-account-login .block-new-customer .action.create { width: 100%; }
.customer-account-login .block-new-customer .block-content ul { margin: 0 0 18px; padding: 0; list-style: none; }
@media (max-width: 767px) { .customer-account-login .login-container { grid-template-columns: 1fr; gap: 16px; } .customer-account-login .login-container .block { padding: 22px 18px 24px !important; border-radius: var(--ak-radius); } }

/* Create account */
.customer-account-create .form-create-account { max-width: 560px; margin: 0 auto; padding: 30px 30px 32px; border: 1.5px solid var(--ak-line); border-radius: var(--ak-radius-lg); background: #fff; box-shadow: var(--ak-shadow); box-sizing: border-box; width: auto !important; min-width: 0 !important; }
.customer-account-create .form-create-account .fieldset { margin: 0 0 22px !important; padding: 0 !important; }
.customer-account-create .form-create-account .fieldset > .legend { float: none !important; width: auto !important; margin: 0 0 14px !important; padding: 0 0 8px !important; border-bottom: 1px solid var(--ak-line) !important; font: 700 12px/1 var(--ak-font-ui) !important; letter-spacing: .1em; text-transform: uppercase; color: var(--ak-ink-3) !important; }
.customer-account-create .form-create-account .fieldset > .legend span { font: inherit; color: inherit; }
.customer-account-create .form-create-account .fieldset > .legend + br { display: none !important; }
.customer-account-create .form-create-account .customer-dob { position: relative; display: flex; gap: 8px; align-items: center; }
.customer-account-create .form-create-account .customer-dob input { flex: 1 1 auto; }
.customer-account-create .form-create-account .customer-dob .ui-datepicker-trigger, .customer-account-create .form-create-account .customer-dob button { flex: 0 0 auto; height: 48px; margin: 0 !important; padding: 0 16px !important; border: 1.5px solid var(--ak-line) !important; border-radius: 12px !important; background: var(--ak-tint) !important; color: var(--ak-mint-deep) !important; font: 600 12px/1 var(--ak-font-ui) !important; text-transform: none !important; box-shadow: none !important; }
.customer-account-create .password-strength-meter { margin: 8px 0 0; height: auto; padding: 0; background: none !important; font: 500 12px/1.4 var(--ak-font-ui); color: var(--ak-ink-3); }
.customer-account-create .password-strength-meter::before { content: ""; display: block; height: 6px; margin: 0 0 6px; border-radius: 999px; background: #e6eeec; width: 100%; }
.customer-account-create .password-weak .password-strength-meter::before { background: linear-gradient(90deg, #e05a5a 0 25%, #e6eeec 25%); }
.customer-account-create .password-medium .password-strength-meter::before { background: linear-gradient(90deg, #f6b84b 0 50%, #e6eeec 50%); }
.customer-account-create .password-strong .password-strength-meter::before { background: linear-gradient(90deg, #57d5c2 0 75%, #e6eeec 75%); }
.customer-account-create .password-very-strong .password-strength-meter::before { background: #3fbfab; }
.customer-account-create .form-create-account .actions-toolbar { display: flex; flex-direction: column; gap: 12px; margin: 0 !important; padding: 0 !important; }
.customer-account-create .form-create-account .actions-toolbar .primary, .customer-account-create .form-create-account .actions-toolbar .secondary { float: none !important; width: 100%; text-align: center; }
.customer-account-create .form-create-account .action.submit { width: 100%; }
.customer-account-create .form-create-account .action.back { font: 600 13px/1 var(--ak-font-ui) !important; color: var(--ak-mint-deep) !important; }
@media (max-width: 640px) { .customer-account-create .form-create-account { padding: 22px 18px 24px; border-radius: var(--ak-radius); } }
/* forgot password shares the same shell */
.customer-account-forgotpassword .form.password.forget { max-width: 480px; margin: 0 auto; padding: 30px; border: 1.5px solid var(--ak-line); border-radius: var(--ak-radius-lg); background: #fff; box-shadow: var(--ak-shadow); box-sizing: border-box; width: auto !important; min-width: 0 !important; }
.customer-account-forgotpassword .form.password.forget .actions-toolbar { display: flex; flex-direction: column; gap: 12px; margin: 0 !important; }
.customer-account-forgotpassword .form.password.forget .actions-toolbar .primary, .customer-account-forgotpassword .form.password.forget .actions-toolbar .secondary { float: none !important; width: 100%; text-align: center; }
.customer-account-forgotpassword .form.password.forget .action.submit { width: 100%; }

/* Account area (Order Status etc., after login) — sidebar nav + tables in the same language */
.account .columns { gap: 0; }
.account .sidebar-main .block-collapsible-nav { margin: 0 0 24px; }
.account .block-collapsible-nav .content { padding: 8px !important; border: 1.5px solid var(--ak-line); border-radius: var(--ak-radius-lg); background: #fff !important; }
.account .block-collapsible-nav .item { margin: 0 !important; }
.account .block-collapsible-nav .item a, .account .block-collapsible-nav .item strong { display: block; padding: 10px 14px !important; border: 0 !important; border-radius: 10px; font: 500 14px/1.3 var(--ak-font-ui) !important; color: var(--ak-ink) !important; text-decoration: none !important; }
.account .block-collapsible-nav .item a:hover { background: var(--ak-tint); color: var(--ak-mint-deep) !important; }
.account .block-collapsible-nav .item.current a, .account .block-collapsible-nav .item.current strong { background: var(--ak-mint) !important; color: #fff !important; font-weight: 600 !important; }
.account .column.main .block:not(.widget) .block-title, .account .column.main .legend { margin: 0 0 14px !important; padding: 0 0 8px !important; border-bottom: 1px solid var(--ak-line) !important; }
.account .column.main .block:not(.widget) .block-title strong, .account .column.main .legend span { font: 700 18px/1.3 var(--ak-font-head) !important; color: var(--ak-ink) !important; text-transform: none !important; }
.account .column.main .block:not(.widget) .block-title .action, .account .column.main .box .box-actions .action { font: 600 13px/1 var(--ak-font-ui) !important; color: var(--ak-mint-deep) !important; }
.account .table-wrapper { border-radius: var(--ak-radius-lg); box-shadow: 0 0 0 1.5px var(--ak-line); overflow: hidden; background: #fff; }
.account .table-wrapper .table > thead > tr > th { padding: 12px 14px !important; background: var(--ak-tint) !important; border: 0 !important; font: 700 11px/1.3 var(--ak-font-ui) !important; letter-spacing: .08em; text-transform: uppercase; color: var(--ak-mint-deep) !important; }
.account .table-wrapper .table > tbody > tr > td { padding: 12px 14px !important; border: 0 !important; border-top: 1px solid var(--ak-line) !important; font: 400 14px/1.5 var(--ak-font-head) !important; color: var(--ak-ink) !important; vertical-align: middle; }
.account .table-wrapper .table .col.actions a, .account .table-wrapper .table .action { font: 600 13px/1 var(--ak-font-ui) !important; color: var(--ak-mint-deep) !important; text-decoration: none !important; }
.account .table-wrapper .table .col.actions a + a::before { content: "·"; margin: 0 8px; color: var(--ak-ink-3); }
.account .column.main .message.info.empty, .account .column.main .message.empty { border-radius: var(--ak-radius) !important; }
.account .column.main .action.primary, .account .column.main button.action.save, .account .column.main .action.submit { min-height: 46px; padding: 0 24px !important; border: 0 !important; border-radius: 999px !important; background: var(--ak-mint) !important; color: #fff !important; font: 600 14px/1 var(--ak-font-ui) !important; text-transform: none !important; box-shadow: 0 4px 14px rgba(87,213,194,.35); }
.account .column.main .action.primary:hover { background: var(--ak-mint-hover) !important; }
.account .column.main .action.back, .account .column.main .actions-toolbar .secondary .action { font: 600 13px/1 var(--ak-font-ui) !important; color: var(--ak-mint-deep) !important; }
.account .column.main .box { padding: 18px; border: 1.5px solid var(--ak-line); border-radius: var(--ak-radius); background: #fff; }
.account .column.main .box .box-title { margin: 0 0 8px; }
.account .column.main .box .box-title span { font: 700 14px/1.3 var(--ak-font-ui) !important; color: var(--ak-ink) !important; }
.account .column.main .box .box-content { font: 400 14px/1.6 var(--ak-font-head) !important; color: var(--ak-ink-2) !important; }
.account .column.main .order-status { display: inline-block; padding: 5px 11px; border: 0 !important; border-radius: 999px; background: var(--ak-tint); color: var(--ak-mint-deep) !important; font: 700 11px/1 var(--ak-font-ui) !important; letter-spacing: .06em; text-transform: uppercase; }
.account .column.main .order-date { font: 500 13px/1.4 var(--ak-font-ui) !important; color: var(--ak-ink-3) !important; }
.account .column.main .order-links { border: 0 !important; margin: 0 0 16px !important; display: flex; gap: 8px; flex-wrap: wrap; }
.account .column.main .order-links .item { margin: 0 !important; }
.account .column.main .order-links .item a, .account .column.main .order-links .item strong { display: inline-block; padding: 8px 14px !important; border: 1.5px solid var(--ak-line) !important; border-radius: 999px; background: #fff !important; font: 600 13px/1 var(--ak-font-ui) !important; color: var(--ak-ink) !important; text-decoration: none !important; }
.account .column.main .order-links .item.current strong { background: var(--ak-mint) !important; border-color: var(--ak-mint) !important; color: #fff !important; }
.account .column.main .order-actions-toolbar .action { font: 600 13px/1 var(--ak-font-ui) !important; color: var(--ak-mint-deep) !important; }
.account .form-edit-account .fieldset, .account .form-address-edit .fieldset, .account .form-newsletter-manage .fieldset { margin: 0 0 22px !important; padding: 0 !important; }
@media (max-width: 768px) {
  .account .table-wrapper { box-shadow: none; overflow: visible; background: none; }
  .account .table-wrapper .table > tbody > tr { display: block; margin: 0 0 12px; border-radius: var(--ak-radius); box-shadow: 0 0 0 1.5px var(--ak-line); overflow: hidden; background: #fff; }
  .account .table-wrapper .table > tbody > tr > td { display: flex; justify-content: space-between; gap: 12px; padding: 9px 12px !important; }
  .account .table-wrapper .table > tbody > tr > td::before { content: attr(data-th); flex: 0 0 auto; padding: 0; font: 600 11px/1.5 var(--ak-font-ui); letter-spacing: .04em; text-transform: uppercase; color: var(--ak-ink-3); }
  .account .table-wrapper .table > tbody > tr > td:first-child { border-top: 0 !important; }
  .account .block-collapsible-nav .content { border: 0; padding: 0 !important; }
}

/* ==========================================================================
   5. NOTIFICATIONS that normally stay hidden (all pages)
   ========================================================================== */
/* checkout/authentication modal (opens from "Proceed to checkout" as a guest) */
.modal-popup.popup-authentication .modal-inner-wrap { border-radius: var(--ak-radius-lg); overflow: hidden; }
.modal-popup.popup-authentication .modal-header { padding: 22px 26px 0 !important; }
.modal-popup.popup-authentication .modal-title { border: 0 !important; padding: 0 0 12px !important; font: 700 20px/1.3 var(--ak-font-head) !important; color: var(--ak-ink) !important; text-transform: none !important; }
.modal-popup.popup-authentication .modal-content { padding: 0 26px 26px !important; }
.modal-popup.popup-authentication .block-title strong { font: 700 16px/1.3 var(--ak-font-head) !important; color: var(--ak-ink) !important; text-transform: none !important; }
.modal-popup.popup-authentication .block-title { border: 0 !important; padding: 0 0 8px !important; }
.modal-popup.popup-authentication .block-content p, .modal-popup.popup-authentication .block-content li { font: 400 14px/1.6 var(--ak-font-head) !important; color: var(--ak-ink-2) !important; }
.modal-popup.popup-authentication .block-content .actions-toolbar .primary { float: none !important; width: 100%; }
.modal-popup.popup-authentication .action.primary, .modal-popup.popup-authentication .action.action-register { width: 100%; min-height: 48px; border: 0 !important; border-radius: 999px !important; background: var(--ak-mint) !important; color: #fff !important; font: 600 15px/1 var(--ak-font-ui) !important; text-transform: none !important; box-shadow: 0 4px 14px rgba(87,213,194,.35); }
.modal-popup.popup-authentication .action.primary:hover { background: var(--ak-mint-hover) !important; }
.modal-popup.popup-authentication .form-login .input-text { height: 48px; padding: 0 16px !important; border: 1.5px solid #d9e6e3 !important; border-radius: 12px !important; font: 400 15px/1.4 var(--ak-font-ui) !important; box-shadow: none !important; box-sizing: border-box; }
.modal-popup.popup-authentication .form-login .input-text:focus { border-color: var(--ak-mint) !important; box-shadow: 0 0 0 4px rgba(87,213,194,.18) !important; outline: none; }
.modal-popup.popup-authentication .form-login .label { font: 600 13px/1.3 var(--ak-font-ui) !important; color: var(--ak-ink-2) !important; text-transform: none !important; }
.modal-popup.popup-authentication .action-close { top: 14px !important; right: 14px !important; }
.modal-popup.popup-authentication .action.remind { font: 600 13px/1 var(--ak-font-ui) !important; color: var(--ak-mint-deep) !important; }
@media (min-width: 769px) { .modal-popup.popup-authentication .block-authentication { display: grid; grid-template-columns: 1fr 1fr; gap: 26px; } .modal-popup.popup-authentication .block-authentication .block { float: none !important; width: auto !important; padding: 0 !important; border: 0 !important; margin: 0 !important; } .modal-popup.popup-authentication .block-authentication .block-customer-login { padding-left: 26px !important; border-left: 1px solid var(--ak-line) !important; } }
/* generic modals used by the theme (product alert confirm etc.) */
.modal-popup:not(.popup-authentication) .modal-inner-wrap { border-radius: var(--ak-radius-lg); }
.modal-popup:not(.popup-authentication) .modal-title { font: 700 18px/1.3 var(--ak-font-head) !important; color: var(--ak-ink) !important; border: 0 !important; text-transform: none !important; }
.modal-popup:not(.popup-authentication) .modal-footer .action.primary, .modal-popup:not(.popup-authentication) .modal-footer .action-primary { min-height: 44px; padding: 0 22px !important; border: 0 !important; border-radius: 999px !important; background: var(--ak-mint) !important; color: #fff !important; font: 600 14px/1 var(--ak-font-ui) !important; text-transform: none !important; }
.modal-popup:not(.popup-authentication) .modal-footer .action-secondary, .modal-popup:not(.popup-authentication) .modal-footer .action.secondary { min-height: 44px; padding: 0 22px !important; border: 1.5px solid var(--ak-line) !important; border-radius: 999px !important; background: #fff !important; color: var(--ak-ink) !important; font: 600 14px/1 var(--ak-font-ui) !important; text-transform: none !important; }
/* cookie-disabled banner (only appears when cookies are blocked) */
#cookie-status.cookie-status-message { position: fixed; left: 16px; right: 16px; bottom: 16px; z-index: 950; padding: 14px 18px; border-radius: var(--ak-radius); background: var(--ak-red-tint); color: var(--ak-red-ink); font: 500 14px/1.5 var(--ak-font-ui); box-shadow: var(--ak-shadow); }
/* newsletter subscribe / form validation inline errors anywhere in scope */
.section-footer .offer-email div.mage-error { margin: 6px 0 0; font: 500 12px/1.4 var(--ak-font-ui); color: #ffe5e5; }
.section-footer .offer-email .input-group-field.mage-error { border-color: #ffb3b3 !important; }

/* ---- fixes after the first mobile pass (2026-09-30) ---- */
.catalog-product-view .product-addto-links { width: auto !important; max-width: none !important; float: none !important; }
.catalog-product-view .product-addto-links .action.towishlist span { border: 0 !important; padding: 0 !important; margin: 0 !important; background: none !important; box-shadow: none !important; line-height: 1 !important; }
.catalog-product-view .product-info-main > .product-addto-links .action.towishlist { width: 100% !important; }
.catalog-product-view .block-shipping-estimation .block-title strong { white-space: nowrap; }
.catalog-product-view .block-shipping-estimation .content-toggle { white-space: nowrap; font-size: 11px !important; padding: 6px 10px !important; }
@media (max-width: 380px) { .catalog-product-view .block-shipping-estimation .block-title { padding: 10px 12px !important; } .catalog-product-view .block-shipping-estimation .block-title strong { font-size: 12px !important; } }

/* ---- blog fixes after the first mobile pass ---- */
.blog-page .post-list .image-wrap { position: relative; display: block; height: auto !important; padding: 0 !important; overflow: hidden; }
.blog-page .post-list .bg-img { position: relative !important; top: auto !important; left: auto !important; right: auto !important; bottom: auto !important; width: 100%; aspect-ratio: 16 / 9; height: auto !important; min-height: 0 !important; }
.blog-page .post-list .image-container { position: relative; padding: 0 !important; }
.blog-page .sidebar .block-categories li a, .blog-page .sidebar .block-archive .item a { margin: 0 !important; }
.blog-page .sidebar .block-archive .block-content { display: flex; flex-wrap: wrap; gap: 8px; }
.blog-page .sidebar .block-archive .item { margin: 0 !important; padding: 0 !important; border: 0 !important; background: none !important; }
.blog-page .sidebar .block-archive .item a { display: inline-flex; align-items: center; padding: 8px 12px !important; border-radius: 999px; border: 1.5px solid var(--ak-line); background: #fff; color: var(--ak-ink) !important; font: 500 12px/1.2 var(--ak-font-ui) !important; text-decoration: none !important; text-transform: none !important; transition: background .15s ease, border-color .15s ease; }
.blog-page .sidebar .block-archive .item a:hover { background: var(--ak-tint); border-color: var(--ak-mint); color: var(--ak-mint-deep) !important; }
.blog-page .sidebar .block-archive .item.ak-more-hidden { display: none; }
.blog-page .sidebar .ak-archive-more { flex: 1 1 100%; }
.blog-page .sidebar .block-title strong::after, .blog-page .sidebar .block-title::after { display: none !important; }
.blog-page .sidebar .block-title { border: 0 !important; }
.blog-post-view .post-sharing .icon-wrapper { position: relative; overflow: visible; }
.blog-post-view .post-sharing .icon-wrapper .label { position: static !important; transform: none !important; opacity: 1 !important; visibility: visible !important; background: none !important; padding: 0 !important; margin: 0 !important; white-space: nowrap; }
.blog-page .post-list .post-image { height: auto !important; min-height: 0 !important; max-height: none !important; }
.blog-page .post-list .post-read-more { display: block !important; }
.blog-page .post-list .image-container, .blog-page .post-list .image-wrap, .blog-page .post-list .bg-img { margin: 0 !important; }
.blog-post-view .post-sharing .icon-wrapper .label { height: auto !important; line-height: 1 !important; }
.blog-page .post-list .post-image { flex: 0 0 auto !important; order: 0; }
.blog-page .post-list .post-info { flex: 1 1 auto !important; }
.blog-page .post-list .bg-img { background-size: cover !important; background-position: center !important; }
.customer-account-login .login-container .block-content, .customer-account-login .form-login, .customer-account-login .form-login .fieldset, .customer-account-create .form-create-account .block-content-register { border: 0 !important; box-shadow: none !important; padding: 0 !important; margin: 0 !important; background: none !important; }
.customer-account-create .password-strength-meter { padding: 0 !important; }
/* Create account: the theme hides .page-title-wrapper and prints its own heading inside .block-title */
.customer-account-create .column.main > .block-title, .customer-account-create .block-content-register > .block-title, .customer-account-create .block-title:has(> #block-customer-login-heading) { margin: 8px 0 22px !important; padding: 0 !important; border: 0 !important; text-align: left !important; }
.customer-account-create .block-title > #block-customer-login-heading { display: inline-flex; align-items: center; gap: 8px; margin: 0 !important; font: 700 26px/1.2 var(--ak-font-head) !important; letter-spacing: -.01em; color: var(--ak-mint) !important; text-transform: none !important; }
.customer-account-create .block-title > #block-customer-login-heading::before { content: ""; flex: 0 0 22px; width: 22px; height: 22px; background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='%23F6B84B' d='M12 2.6l2.9 6 6.6.9-4.8 4.6 1.2 6.5L12 17.5l-5.9 3.1 1.2-6.5L2.5 9.5l6.6-.9z'/%3E%3C/svg%3E") center / contain no-repeat; }
.customer-account-create .block-title > .field.note, .customer-account-create .block-title > p, .customer-account-create .block-title > div { margin: 6px 0 0 !important; font: 400 14px/1.6 var(--ak-font-head) !important; color: var(--ak-ink-2) !important; text-align: left !important; text-transform: none !important; }
@media (max-width: 767px) { .customer-account-create .block-title > #block-customer-login-heading { font-size: 22px !important; } }
/* Login: force the two-card grid over the theme's flex/float layout */
.customer-account-login .login-container { display: grid !important; grid-template-columns: repeat(2, minmax(0, 1fr)) !important; gap: 24px !important; max-width: 900px !important; margin: 0 auto !important; }
.customer-account-login .login-container > .block { width: 100% !important; max-width: none !important; min-width: 0 !important; flex: none !important; text-align: left !important; }
.customer-account-login .login-container .block-title, .customer-account-login .login-container .block-content { text-align: left !important; }
.customer-account-login .login-container .block-title strong { text-align: left !important; }
@media (max-width: 767px) { .customer-account-login .login-container { grid-template-columns: 1fr !important; gap: 16px !important; } }
.customer-account-login .login-container { width: 100% !important; box-sizing: border-box; }
.customer-account-login .login-container > .block-customer-login { grid-column: 1; grid-row: 1; }
.customer-account-login .login-container > .block-new-customer { grid-column: 2; grid-row: 1; }
@media (max-width: 767px) { .customer-account-login .login-container > .block-customer-login { grid-column: 1; grid-row: 1; } .customer-account-login .login-container > .block-new-customer { grid-column: 1; grid-row: 2; } }
.cms-privacy-policy .column.main > p a { display: flex !important; width: max-content; }
@media (max-width: 1023px) { .blog-page .post-list .post-title a { -webkit-line-clamp: 3; } }
/* checkout authentication modal: theme's square SIGN IN → same pill as the rest */
.modal-popup.popup-authentication .action.action-login, .modal-popup.popup-authentication .block-customer-login .action.primary { min-height: 48px; padding: 0 26px !important; border: 0 !important; border-radius: 999px !important; background: var(--ak-mint) !important; color: #fff !important; font: 600 15px/1 var(--ak-font-ui) !important; text-transform: none !important; box-shadow: 0 4px 14px rgba(87,213,194,.35); }
.modal-popup.popup-authentication .block-authentication .block-title strong { font: 700 17px/1.3 var(--ak-font-head) !important; color: var(--ak-ink) !important; text-transform: none !important; }
.modal-popup.popup-authentication .block-authentication .block-title { border: 0 !important; margin: 0 0 12px !important; padding: 0 !important; }
.modal-popup.popup-authentication .block-new-customer .actions-toolbar { margin-top: 14px !important; }
.modal-popup.popup-authentication .block-new-customer .action.action-register { width: 100%; }

/* ---- account area, after checking with the logged-in test customer (2026-09-30) ---- */
.account .sidebar-main .block-collapsible-nav .title { margin: 0 0 8px !important; padding: 0 0 0 6px !important; border: 0 !important; }
.account .sidebar-main .block-collapsible-nav .title strong { font: 700 11px/1 var(--ak-font-ui) !important; letter-spacing: .1em; text-transform: uppercase; color: var(--ak-ink-3) !important; }
.account .sidebar-main .block-collapsible-nav + .block-collapsible-nav { display: none !important; } /* theme prints an empty second "My Account" block */
/* wishlist: show the item controls as a card instead of only on hover */
.wishlist-index-index .products-grid.wishlist { display: block; margin: 0 0 20px !important; }
.wishlist-index-index .products-grid.wishlist .product-items { display: grid !important; grid-template-columns: repeat(auto-fill, minmax(220px, 1fr)); gap: 20px; margin: 0 !important; padding: 0 !important; width: auto !important; }
.wishlist-index-index .products-grid.wishlist .product-items::before, .wishlist-index-index .products-grid.wishlist .product-items::after { display: none !important; }
.wishlist-index-index .products-grid.wishlist .product-item { width: auto !important; margin: 0 !important; padding: 0 !important; float: none !important; display: block !important; }
.wishlist-index-index .products-grid.wishlist .product-item-info { position: static !important; width: auto !important; margin: 0 !important; padding: 14px !important; border: 1.5px solid var(--ak-line) !important; border-radius: var(--ak-radius-lg); background: #fff; box-shadow: none !important; }
.wishlist-index-index .products-grid.wishlist .product-item-photo { display: block; margin: 0 0 10px; }
.wishlist-index-index .products-grid.wishlist .product-image-container { width: 100% !important; display: block; border-radius: var(--ak-radius); overflow: hidden; background: #f4f7f6; }
.wishlist-index-index .products-grid.wishlist .product-item-name { display: block; margin: 0 0 6px; }
.wishlist-index-index .products-grid.wishlist .product-item-link { display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; font: 600 13px/1.4 var(--ak-font-ui) !important; color: var(--ak-ink) !important; white-space: normal !important; text-overflow: clip !important; }
.wishlist-index-index .products-grid.wishlist .price-container .price { font: 700 15px/1.2 var(--ak-font-head) !important; color: var(--ak-ink) !important; }
.wishlist-index-index .products-grid.wishlist .usd-price { font: 400 11px/1.2 var(--ak-font-ui) !important; color: var(--ak-ink-3) !important; }
.wishlist-index-index .products-grid.wishlist .product-item-inner { display: block !important; position: static !important; margin: 12px 0 0 !important; padding: 0 !important; border: 0 !important; box-shadow: none !important; background: none !important; }
/* 松本さん指示 (10-03): wishlist comments and Share Wish List are not used */
.wishlist-index-index .products-grid.wishlist .comment-box, .wishlist-index-index .form-wishlist-items .actions-toolbar .action.share, .wishlist-index-index .form-wishlist-items button[name="save_and_share"] { display: none !important; }
.wishlist-index-index .products-grid.wishlist .box-tocart { margin: 0 !important; }
.wishlist-index-index .products-grid.wishlist .box-tocart .fieldset { display: flex; align-items: center; gap: 8px; margin: 0 !important; padding: 0 !important; }
.wishlist-index-index .products-grid.wishlist .field.qty { margin: 0 !important; flex: 0 0 auto; display: flex; align-items: center; gap: 6px; }
.wishlist-index-index .products-grid.wishlist .field.qty .label { margin: 0; font: 600 12px/1 var(--ak-font-ui); color: var(--ak-ink-2); }
.wishlist-index-index .products-grid.wishlist .input-text.qty { width: 56px !important; height: 40px !important; text-align: center; padding: 0 !important; border: 1.5px solid #d9e6e3 !important; border-radius: 10px !important; font: 600 14px/1 var(--ak-font-ui) !important; }
.wishlist-index-index .products-grid.wishlist .product-item-actions { margin: 0 !important; }
.wishlist-index-index .products-grid.wishlist .box-tocart .product-item-actions { flex: 1 1 auto; }
.wishlist-index-index .products-grid.wishlist .action.tocart.primary { width: 100%; min-height: 40px; padding: 0 12px !important; border: 0 !important; border-radius: 999px !important; background: var(--ak-mint) !important; color: #fff !important; font: 600 13px/1 var(--ak-font-ui) !important; text-transform: none !important; }
.wishlist-index-index .products-grid.wishlist .product-item-inner > .product-item-actions { display: flex; gap: 14px; margin: 10px 0 0 !important; }
.wishlist-index-index .products-grid.wishlist .product-item-inner > .product-item-actions a { font: 600 12px/1 var(--ak-font-ui) !important; color: var(--ak-ink-2) !important; text-decoration: none !important; }
.wishlist-index-index .products-grid.wishlist .product-item-inner > .product-item-actions a:hover { color: var(--ak-mint-deep) !important; }
.wishlist-index-index .products-grid.wishlist .product-item-inner > .product-item-actions a.delete { color: var(--ak-red-ink) !important; }
.wishlist-index-index .form-wishlist-items .actions-toolbar { display: flex; flex-wrap: wrap; gap: 10px; margin: 0 !important; padding: 0 !important; }
.wishlist-index-index .form-wishlist-items .actions-toolbar .primary, .wishlist-index-index .form-wishlist-items .actions-toolbar .secondary { float: none !important; display: contents; }
.wishlist-index-index .form-wishlist-items .actions-toolbar .action { min-height: 44px; margin: 0 !important; padding: 0 20px !important; border: 1.5px solid var(--ak-line) !important; border-radius: 999px !important; background: #fff !important; color: var(--ak-ink) !important; font: 600 13px/1 var(--ak-font-ui) !important; text-transform: none !important; box-shadow: none !important; display: inline-flex; align-items: center; }
.wishlist-index-index .form-wishlist-items .actions-toolbar .action.tocart { border-color: var(--ak-mint) !important; background: var(--ak-mint) !important; color: #fff !important; }
.wishlist-index-index .form-wishlist-items .actions-toolbar .action.back { border: 0 !important; padding: 0 6px !important; color: var(--ak-mint-deep) !important; }
.wishlist-index-index .toolbar.wishlist-toolbar { margin: 0 0 12px !important; font: 500 12px/1.4 var(--ak-font-ui); color: var(--ak-ink-3); }
.wishlist-index-index .toolbar.wishlist-toolbar .toolbar-amount { padding: 0; }
.wishlist-index-index .products-grid.wishlist .product-item-photo { float: none !important; width: 100% !important; max-width: none !important; margin: 0 0 10px !important; padding: 0 !important; }
.wishlist-index-index .products-grid.wishlist .product-image-container { width: 100% !important; max-width: none !important; }
.wishlist-index-index .products-grid.wishlist .product-item-inner { display: flow-root !important; }
.wishlist-index-index .products-grid.wishlist .box-tocart { float: none !important; width: 100% !important; }
.wishlist-index-index .products-grid.wishlist .product-item-inner > .product-item-actions { clear: both; float: none !important; width: auto !important; }
.wishlist-index-index .products-grid.wishlist .product-item-name, .wishlist-index-index .products-grid.wishlist .price-container { float: none !important; width: auto !important; margin-left: 0 !important; }
.account .table-wrapper .table .col.actions a + a::before { content: none; margin: 0; }
/* ---- order history / order view, checked with a real customer account (85 orders) ---- */
.account .toolbar.order-products-toolbar, .account .products.wrapper ~ .toolbar, .account .toolbar.bottom { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 12px; margin: 18px 0 0 !important; padding: 0 !important; border: 0 !important; }
.account .toolbar .toolbar-amount { position: static !important; margin: 0 !important; padding: 0 !important; font: 500 12px/1.4 var(--ak-font-ui) !important; color: var(--ak-ink-3) !important; }
.account .toolbar .pages { float: none !important; margin: 0 !important; position: static !important; }
.account .toolbar .pages .pages-label { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); }
.account .toolbar .pages .items { display: flex; gap: 6px; align-items: center; }
.account .toolbar .pages .item { margin: 0 !important; }
.account .toolbar .pages .page, .account .toolbar .pages .action { display: inline-flex !important; align-items: center; justify-content: center; min-width: 36px; height: 36px; padding: 0 10px !important; border: 1.5px solid var(--ak-line) !important; border-radius: 999px !important; background: #fff !important; color: var(--ak-ink) !important; font: 600 13px/1 var(--ak-font-ui) !important; text-decoration: none !important; box-shadow: none !important; }
.account .toolbar .pages .item.current .page { background: var(--ak-mint) !important; border-color: var(--ak-mint) !important; color: #fff !important; }
.account .toolbar .pages a.page:hover, .account .toolbar .pages .action:hover { border-color: var(--ak-mint) !important; color: var(--ak-mint-deep) !important; }
.account .toolbar .pages .action::before { color: inherit !important; margin: 0 !important; }
.account .toolbar .limiter { display: inline-flex !important; align-items: center; gap: 6px; font: 500 12px/1 var(--ak-font-ui); color: var(--ak-ink-2); }
.account .toolbar .limiter select { height: 36px; padding: 0 28px 0 10px !important; border-radius: 999px !important; border: 1.5px solid var(--ak-line) !important; }
.account #my-orders-table .col.status { font-weight: 600; }
.account #my-orders-table td.col.status { color: var(--ak-ink-2) !important; }
/* order view header: number, status pill and date on clean rows */
.sales-order-view .page-title-wrapper { display: flex; flex-wrap: wrap; align-items: center; gap: 8px 12px; margin: 8px 0 18px !important; }
.sales-order-view .page-title-wrapper .page-title { margin: 0 !important; }
.sales-order-view .page-title-wrapper .order-status { margin: 0 !important; }
.sales-order-view .page-title-wrapper .order-date { flex: 1 1 100%; margin: 0 !important; }
.sales-order-view .page-title-wrapper .order-actions-toolbar { flex: 1 1 100%; margin: 0 !important; }
.sales-order-view .page-title-wrapper .order-actions-toolbar .actions { float: none !important; display: flex; gap: 14px; }
.sales-order-view .order-details-items { border: 0 !important; padding: 0 !important; margin: 0 0 26px !important; }
.sales-order-view .order-details-items .order-title { display: none; }
.sales-order-view .table-order-items caption, .sales-order-view .order-items .table-caption { display: none !important; }
.sales-order-view .table-order-items tfoot th, .sales-order-view .table-order-items tfoot td { padding: 10px 14px !important; border: 0 !important; border-top: 1px solid var(--ak-line) !important; background: #fafcfb; font: 600 13px/1.3 var(--ak-font-ui) !important; color: var(--ak-ink-2) !important; text-transform: none !important; }
.sales-order-view .table-order-items tfoot tr.grand_total th, .sales-order-view .table-order-items tfoot tr.grand_total td { font: 800 15px/1.3 var(--ak-font-head) !important; color: var(--ak-ink) !important; }
.sales-order-view .table-order-items tfoot td .price { font: inherit !important; color: inherit !important; }
.account .block-order-details-view .block-content { display: grid; grid-template-columns: repeat(auto-fit, minmax(200px, 1fr)); gap: 14px; }
.account .block-order-details-view .box { width: auto !important; margin: 0 !important; float: none !important; }
.account .block-order-details-view .box address, .account .block-order-details-view .box .box-content { font: 400 14px/1.6 var(--ak-font-head) !important; color: var(--ak-ink-2) !important; }
.account .block-order-details-view .box-content th, .account .block-order-details-view .box-content td { padding: 4px 0 !important; border: 0 !important; font: 400 13px/1.5 var(--ak-font-head) !important; color: var(--ak-ink-2) !important; text-transform: none !important; }
@media (max-width: 768px) { .sales-order-view .table-order-items tfoot tr { display: flex; justify-content: space-between; padding: 6px 0; } .sales-order-view .table-order-items tfoot th, .sales-order-view .table-order-items tfoot td { border: 0 !important; background: none; } .account .toolbar.order-products-toolbar { justify-content: center; } }

/* ---- account sub-pages, second pass (orders with kuji/prize/configurable, USD orders, refunds/shipments/invoices) ---- */
/* the same header treatment for every order sub-page */
.sales-order-invoice .page-title-wrapper, .sales-order-shipment .page-title-wrapper, .sales-order-creditmemo .page-title-wrapper, .sales-order-printinvoice .page-title-wrapper, .sales-order-printshipment .page-title-wrapper, .sales-order-printcreditmemo .page-title-wrapper { display: flex; flex-wrap: wrap; align-items: center; gap: 8px 12px; margin: 8px 0 18px !important; }
.sales-order-invoice .page-title-wrapper .page-title, .sales-order-shipment .page-title-wrapper .page-title, .sales-order-creditmemo .page-title-wrapper .page-title { margin: 0 !important; }
.sales-order-invoice .page-title-wrapper .order-status, .sales-order-shipment .page-title-wrapper .order-status, .sales-order-creditmemo .page-title-wrapper .order-status { margin: 0 !important; }
.sales-order-invoice .page-title-wrapper .order-date, .sales-order-shipment .page-title-wrapper .order-date, .sales-order-creditmemo .page-title-wrapper .order-date, .sales-order-invoice .page-title-wrapper .order-actions-toolbar, .sales-order-shipment .page-title-wrapper .order-actions-toolbar, .sales-order-creditmemo .page-title-wrapper .order-actions-toolbar { flex: 1 1 100%; margin: 0 !important; }
.account .page-title-wrapper .order-actions-toolbar .actions { float: none !important; display: flex; gap: 14px; }
.account .order-details-items { border: 0 !important; padding: 0 !important; margin: 0 0 26px !important; }
.account .order-details-items > .actions-toolbar { margin: 0 0 14px !important; padding: 0 !important; }
.account .order-details-items > .actions-toolbar .action, .account .order-details-items .order-title .action { font: 600 13px/1 var(--ak-font-ui) !important; color: var(--ak-mint-deep) !important; text-decoration: none !important; }
.account .order-details-items .order-title { display: flex; align-items: center; justify-content: space-between; gap: 12px; margin: 22px 0 10px !important; padding: 0 !important; border: 0 !important; }
.account .order-details-items .order-title > strong { font: 700 18px/1.3 var(--ak-font-head) !important; color: var(--ak-ink) !important; }
.account .order-details-items .order-title:first-of-type { margin-top: 0 !important; }
.account .order-details-items .table-wrapper { margin: 0 0 18px; }
.account .order-details-items .table-caption { display: none !important; }
.account .order-details-items .table-wrapper .table > tfoot > tr > th, .account .order-details-items .table-wrapper .table > tfoot > tr > td { padding: 10px 14px !important; border: 0 !important; border-top: 1px solid var(--ak-line) !important; background: #fafcfb; font: 600 13px/1.3 var(--ak-font-ui) !important; color: var(--ak-ink-2) !important; text-transform: none !important; }
.account .order-details-items .table-wrapper .table > tfoot > tr.grand_total > th, .account .order-details-items .table-wrapper .table > tfoot > tr.grand_total > td { font: 800 15px/1.3 var(--ak-font-head) !important; color: var(--ak-ink) !important; }
.account .order-details-items .table-wrapper .table tfoot td .price { font: inherit !important; color: inherit !important; }
/* item options inside order rows (configurable choices) */
.account .table-order-items .item-options { margin: 6px 0 0; font: 400 12px/1.5 var(--ak-font-ui); color: var(--ak-ink-2); }
.account .table-order-items .item-options dt { font-weight: 600; color: var(--ak-ink-2); margin: 4px 0 0; }
.account .table-order-items .item-options dd { margin: 0; }
.account .table-order-items .product-item-name { font: 600 14px/1.4 var(--ak-font-ui) !important; color: var(--ak-ink) !important; }
.account .table-order-items .col.qty .content { display: block; }
.account .table-order-items .col.qty .title { font-weight: 500; color: var(--ak-ink-3); }
/* newsletter: the theme floats the checkbox row out of the form */
.newsletter-manage-index .form-newsletter-manage .field.choice { position: static !important; float: none !important; width: auto !important; margin: 0 0 14px !important; }
.newsletter-manage-index .form-newsletter-manage .fieldset { display: block !important; }
/* reward points: balance as a badge */
.points-history-index .column.main > p > strong { display: inline-flex; align-items: center; gap: 8px; margin: 0 0 14px; padding: 8px 14px; border-radius: 999px; background: var(--ak-gold-tint); color: var(--ak-gold-ink); font: 700 13px/1 var(--ak-font-ui); }
.points-history-index .column.main > p > strong::before { content: ""; width: 16px; height: 16px; background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='%23F6B84B' d='M12 2.6l2.9 6 6.6.9-4.8 4.6 1.2 6.5L12 17.5l-5.9 3.1 1.2-6.5L2.5 9.5l6.6-.9z'/%3E%3C/svg%3E") center / contain no-repeat; }
.points-history-index #my-orders-table td:first-child { font-weight: 700; }
/* password strength meter on the account edit form (same as create) */
.account .password-strength-meter { margin: 8px 0 0; height: auto; padding: 0 !important; background: none !important; font: 500 12px/1.4 var(--ak-font-ui); color: var(--ak-ink-3); }
.account .password-strength-meter::before { content: ""; display: block; height: 6px; margin: 0 0 6px; border-radius: 999px; background: #e6eeec; width: 100%; }
.account .password-weak .password-strength-meter::before { background: linear-gradient(90deg, #e05a5a 0 25%, #e6eeec 25%); }
.account .password-medium .password-strength-meter::before { background: linear-gradient(90deg, #f6b84b 0 50%, #e6eeec 50%); }
.account .password-strong .password-strength-meter::before { background: linear-gradient(90deg, #57d5c2 0 75%, #e6eeec 75%); }
.account .password-very-strong .password-strength-meter::before { background: #3fbfab; }
/* no downloadable products are sold: hide the nav entry */
.account .block-collapsible-nav .item a[href*="/downloadable/"] { display: none !important; }
/* guest order page has no page title: preview.js inserts one */
.customer-guesttocustomer-lookupform .form-edit-account .field.field-email input[disabled] { background: #f4f7f6 !important; color: var(--ak-ink-3) !important; }
/* newsletter manage: the theme pushes the single checkbox row to the far right of the fieldset */
.newsletter-manage-index .form-newsletter-manage .fieldset { display: block !important; text-align: left !important; }
.newsletter-manage-index .form-newsletter-manage .field.choice { display: flex !important; align-items: center; gap: 10px; width: 100% !important; margin: 0 0 16px !important; padding: 12px 14px; border: 1.5px solid var(--ak-line); border-radius: var(--ak-radius); background: #fff; box-sizing: border-box; }
.newsletter-manage-index .form-newsletter-manage .field.choice input { position: static !important; margin: 0 !important; }
.newsletter-manage-index .form-newsletter-manage .field.choice .label { margin: 0 !important; font: 500 14px/1.3 var(--ak-font-ui) !important; color: var(--ak-ink) !important; }
/* 404 page */
.cms-noroute-index .page-title-wrapper { margin: 8px 0 20px !important; }
.cms-noroute-index .page-title-wrapper .page-title { display: inline-flex; align-items: center; gap: 8px; margin: 0 !important; font: 700 26px/1.2 var(--ak-font-head) !important; letter-spacing: -.01em; color: var(--ak-mint) !important; text-transform: none !important; }
.cms-noroute-index .page-title-wrapper .page-title::before { content: ""; flex: 0 0 22px; width: 22px; height: 22px; background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='%23F6B84B' d='M12 2.6l2.9 6 6.6.9-4.8 4.6 1.2 6.5L12 17.5l-5.9 3.1 1.2-6.5L2.5 9.5l6.6-.9z'/%3E%3C/svg%3E") center / contain no-repeat; }
.cms-noroute-index .column.main { max-width: 640px; margin: 0 auto; text-align: center; font: 400 15px/1.7 var(--ak-font-head); color: var(--ak-ink-2); }
.cms-noroute-index .column.main p { margin: 0 0 6px; text-align: center !important; }
.cms-noroute-index .column.main p img { width: 220px; height: auto; margin: 0 auto 14px; }
.cms-noroute-index .column.main a { color: var(--ak-mint-deep) !important; font-weight: 600; text-decoration: underline; text-underline-offset: 3px; }
.cms-noroute-index .column.main .c-message__edited_label { display: none; }
/* print page: keep the invoice legible with the same tokens, nothing fancy */
.page-print .page-title-wrapper .page-title { font: 700 24px/1.2 var(--ak-font-head) !important; color: var(--ak-ink) !important; text-transform: none !important; }
.page-print .order-status { display: inline-block; padding: 4px 10px; border: 0 !important; border-radius: 999px; background: var(--ak-tint); color: var(--ak-mint-deep) !important; font: 700 11px/1 var(--ak-font-ui) !important; letter-spacing: .06em; text-transform: uppercase; }
.page-print .table-wrapper .table > thead > tr > th { padding: 10px 12px !important; background: var(--ak-tint) !important; border: 0 !important; font: 700 11px/1.3 var(--ak-font-ui) !important; letter-spacing: .08em; text-transform: uppercase; color: var(--ak-mint-deep) !important; }
.page-print .table-wrapper .table > tbody > tr > td { padding: 10px 12px !important; border: 0 !important; border-top: 1px solid var(--ak-line) !important; font: 400 13px/1.5 var(--ak-font-head) !important; color: var(--ak-ink) !important; }
.page-print .block-order-details-view .block-title strong { font: 700 16px/1.3 var(--ak-font-head) !important; color: var(--ak-ink) !important; }
.page-print .block-order-details-view .box-title span { font: 700 13px/1.3 var(--ak-font-ui) !important; }

/* ==========================================================================
   Third pass (松本さんフィードバック 09-30): product page details, orders, account alignment
   ========================================================================== */
/* stock label: first line as a pill, the rest ("*Estimated shipping within 2-4 weeks") as a quiet note */
.catalog-product-view .product-info-stock-sku .stock span.ak-stock-wrap { display: inline-flex; flex-direction: column; align-items: flex-start; gap: 6px; padding: 0 !important; background: none !important; border-radius: 0; letter-spacing: 0; text-transform: none; }
.catalog-product-view .product-info-stock-sku .stock .ak-stock-main { display: inline-block; padding: 5px 11px; border-radius: 999px; background: var(--ak-tint); color: var(--ak-mint-deep) !important; font: 700 11px/1 var(--ak-font-ui); letter-spacing: .08em; text-transform: uppercase; }
.catalog-product-view .product-info-stock-sku .stock .ak-stock-main.is-preorder, .catalog-product-view .product-info-stock-sku .stock .ak-stock-main.is-asorder { background: var(--ak-gold-tint); color: var(--ak-gold-ink) !important; }
.catalog-product-view .product-info-stock-sku .stock.unavailable .ak-stock-main { background: #ecf0ef; color: var(--ak-ink-2) !important; }
.catalog-product-view .product-info-stock-sku .stock .ak-stock-note { font: 500 12px/1.4 var(--ak-font-ui); color: var(--ak-ink-2) !important; text-transform: none; letter-spacing: 0; }
.catalog-product-view .product-info-stock-sku .stock span br { display: none; }
/* qty stepper and wishlist button on one baseline */
.catalog-product-view .box-tocart .fieldset { align-items: stretch !important; }
.catalog-product-view .box-tocart .field.qty .control { height: 48px; box-sizing: border-box; }
.catalog-product-view .product-addto-links { padding: 0 !important; margin: 0 !important; align-self: stretch; }
.catalog-product-view .product-addto-links .action.towishlist { height: 48px !important; box-sizing: border-box; align-self: stretch; }
/* shipping estimate: closed by default, whole header is the toggle */
.catalog-product-view .block-shipping-estimation .block-title.block-heading { cursor: pointer; user-select: none; }
.catalog-product-view .block-shipping-estimation .content-toggle { display: inline-flex; align-items: center; gap: 6px; }
.catalog-product-view .block-shipping-estimation .content-toggle::after { content: ""; width: 12px; height: 12px; background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='none' stroke='%231f8f7e' stroke-width='3' stroke-linecap='round' stroke-linejoin='round' d='M6 9l6 6 6-6'/%3E%3C/svg%3E") center / contain no-repeat; transition: transform .2s ease; }
.catalog-product-view .block-shipping-estimation.opened .content-toggle::after { transform: rotate(180deg); }
/* orders: no Print buttons (松本さん指示), thumbnails in the item rows */
.account .order-actions-toolbar, .account .order-details-items > .actions-toolbar a[href*="/print"], .account .order-details-items .order-title a[href*="/print"] { display: none !important; }
.account .order-details-items > .actions-toolbar:not(:has(a:not([href*="/print"]))) { display: none !important; }
.account .table-order-items .col.name { min-width: 260px; }
.account .table-order-items .ak-order-item { display: flex; align-items: flex-start; gap: 12px; }
.account .table-order-items .ak-order-thumb { flex: 0 0 56px; width: 56px; height: 56px; border-radius: 10px; object-fit: cover; background: #f4f7f6; border: 1px solid var(--ak-line); }
.account .table-order-items .ak-order-thumb.is-empty { display: flex; align-items: center; justify-content: center; }
.account .table-order-items .ak-order-item > div { min-width: 0; }
@media (max-width: 768px) { .account .table-order-items .ak-order-item { align-items: center; } .account .table-order-items .ak-order-thumb { flex-basis: 48px; width: 48px; height: 48px; } }
/* date picker button everywhere it appears */
.ak-form .customer-dob .ui-datepicker-trigger, .account .customer-dob .ui-datepicker-trigger, .account .customer-dob button { height: 48px !important; margin: 0 !important; padding: 0 16px !important; border: 1.5px solid var(--ak-line) !important; border-radius: 12px !important; background: var(--ak-tint) !important; color: var(--ak-mint-deep) !important; font: 600 12px/1 var(--ak-font-ui) !important; text-transform: none !important; box-shadow: none !important; }
.ak-form .customer-dob, .account .customer-dob { display: flex; gap: 8px; align-items: center; }
.ak-form .customer-dob input, .account .customer-dob input { flex: 1 1 auto; }
/* toolbars that only say "1 Item" (address book, wishlist) add nothing: hide them; pagers keep showing */
.customer-address-index .toolbar:not(:has(.pages)) { display: none !important; }
.account .toolbar .toolbar-amount { text-align: left; }
/* reward points badge breathing room */
.points-history-index .column.main > p { margin: 6px 0 18px !important; }
/* sidebar nav: no dashed separators, no wrapping */
.account .block-collapsible-nav .item { border: 0 !important; background: none !important; }
.account .block-collapsible-nav .item a, .account .block-collapsible-nav .item strong { border: 0 !important; white-space: nowrap; }
.account .block-collapsible-nav .item.current { border: 0 !important; }
@media (max-width: 1023px) {
  .account .columns .sidebar-main { width: 100% !important; float: none !important; padding: 0 !important; margin: 0 0 18px !important; order: -1; }
  .account .columns .column.main { width: 100% !important; float: none !important; }
  .account .block-collapsible-nav .content { padding: 0 !important; border: 0 !important; background: none !important; }
  .account .block-collapsible-nav .content .items { display: flex; flex-wrap: wrap; gap: 8px; margin: 0; padding: 0; }
  .account .block-collapsible-nav .item a, .account .block-collapsible-nav .item strong { display: inline-flex; align-items: center; padding: 9px 14px !important; border: 1.5px solid var(--ak-line) !important; border-radius: 999px; background: #fff; font-size: 13px !important; }
  .account .block-collapsible-nav .item.current strong, .account .block-collapsible-nav .item.current a { border-color: var(--ak-mint) !important; }
  .account .sidebar-main .block-collapsible-nav .title { display: none; }
}
@media (max-width: 768px) { .account .sidebar-main .block-collapsible-nav .title { display: block; } }
/* address form: street lines with one consistent gap */
.ak-form .field.street .control input + input, .ak-form .field.street .field.additional { margin-top: 8px !important; }
.ak-form .field.street .field.additional { margin-bottom: 0 !important; }
.ak-form .field.street .field.additional .label { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); }
.account .table-order-items .ak-order-thumb.is-empty { background: #f4f7f6 url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Crect x='3' y='5' width='18' height='14' rx='3' fill='none' stroke='%23b9c9c5' stroke-width='1.6'/%3E%3Ccircle cx='9' cy='10' r='1.6' fill='%23b9c9c5'/%3E%3Cpath d='M5 17l4.5-4 3 2.5 3-3.5L20 17' fill='none' stroke='%23b9c9c5' stroke-width='1.6' stroke-linejoin='round'/%3E%3C/svg%3E") center / 24px no-repeat; }
@media (max-width: 1023px) { .account .page-main .columns { display: flex !important; flex-direction: column; } .account .columns .sidebar-main { order: -1; } .account .columns .column.main { order: 0; } }
.account .toolbar.order-products-toolbar { gap: 12px 20px; }
.account .toolbar .toolbar-amount { margin-right: auto !important; }
/* phone: the price row hung 5px past the viewport (theme negative margin) */
.catalog-product-view .product-info-price, .catalog-product-view .product-info-price .price-box { margin-left: 0 !important; margin-right: 0 !important; width: auto !important; max-width: 100%; box-sizing: border-box; }
/* audit fixes: tap targets and legibility on phones */
.blog-page .post-list .post-category .category-name, .blog-post-view .post-header .category-name { font-size: 11px !important; }
.blog-page .post-list .post-read-more .action.primary { min-height: 40px !important; padding: 6px 0 !important; }
.blog-page .sidebar .ak-archive-more { min-height: 40px; padding: 8px 0; }
.blog-page .sidebar .blog-search .input-text { height: 48px; }
.blog-page .sidebar .blog-search .actions { top: 4px; right: 4px; }
.blog-page .sidebar .blog-search .action.search { width: 40px; height: 40px; }
.account .box-actions .action, .account .block-title .action, .account .block-dashboard-orders .action, .account #my-orders-table .action, .account .table-wrapper .col.actions a, .account .order-details-items > .actions-toolbar .action { display: inline-flex !important; align-items: center; min-height: 40px; }
.account .box-actions .action + .action::before { margin-right: 10px; }
@media (max-width: 640px) { .faq-index-index .faq-groupname a { font-size: 11px !important; } }
.wishlist-index-index .products-grid.wishlist .product-item-inner > .product-item-actions a { display: inline-flex !important; align-items: center; min-height: 40px; padding: 0 4px; }

/* ==========================================================================
   Fourth pass (松本さんFB 09-30): product description heading, rounded gallery, no phone buy bar,
   founder page, FAQ rebuilt, order qty, account nav on phones
   ========================================================================== */
/* --- product page --- */
.catalog-product-view .product.data.items > .item.title > .switch { font: 700 11px/1 var(--ak-font-ui) !important; letter-spacing: .1em; text-transform: uppercase; color: var(--ak-ink-3) !important; }
.catalog-product-view .product.data.items > .item.title > .switch::before { display: none !important; }
.catalog-product-view .product.info.detailed { padding-top: 26px !important; border-top: 1px solid var(--ak-line) !important; }
.catalog-product-view .product.data.items > .item.title { margin-bottom: 10px !important; }
.catalog-product-view .product.media .fotorama__stage, .catalog-product-view .product.media .fotorama__stage__frame { border-radius: 16px !important; overflow: hidden; }
.catalog-product-view .product.media .fotorama__stage__frame .fotorama__img { border-radius: 16px; }
.catalog-product-view .product.media .fotorama__nav__frame--thumb .fotorama__thumb, .catalog-product-view .product.media .fotorama__thumb img { border-radius: 10px; }
.catalog-product-view .product.media .fotorama__thumb-border { border-radius: 10px !important; }
@media (max-width: 768px) { .catalog-product-view .product.media .fotorama__stage, .catalog-product-view .product.media .fotorama__stage__frame, .catalog-product-view .product.media .fotorama__stage__frame .fotorama__img { border-radius: 12px !important; } }

/* --- Message from the Founder --- */
.cms-message-from-founder .column.main { max-width: none; }
.cms-message-from-founder .ak-founder { display: grid; grid-template-columns: minmax(0, 380px) minmax(0, 1fr); gap: 44px; align-items: start; max-width: 1040px; }
.cms-message-from-founder .ak-founder-photo { position: sticky; top: 96px; margin: 0; }
.cms-message-from-founder .ak-founder-photo::before { content: ""; position: absolute; inset: 18px -14px -14px 18px; border-radius: 24px; background: var(--ak-tint); z-index: 0; }
.cms-message-from-founder .ak-founder-photo img { position: relative; z-index: 1; display: block; width: 100%; height: auto !important; margin: 0 !important; border-radius: 20px; box-shadow: 0 14px 40px rgba(34,48,46,.14); }
.cms-message-from-founder .ak-founder-photo figcaption { position: relative; z-index: 1; margin: 22px 0 0; padding: 14px 16px; border-radius: 14px; background: #fff; border: 1.5px solid var(--ak-line); font: 600 13px/1.4 var(--ak-font-ui); color: var(--ak-ink); }
.cms-message-from-founder .ak-founder-photo figcaption small { display: block; margin-top: 2px; font: 500 11px/1.4 var(--ak-font-ui); color: var(--ak-ink-3); letter-spacing: .06em; text-transform: uppercase; }
.cms-message-from-founder .ak-founder-eyebrow { display: inline-flex; align-items: center; gap: 8px; margin: 0 0 12px; padding: 6px 12px; border-radius: 999px; background: var(--ak-gold-tint); color: var(--ak-gold-ink); font: 700 11px/1 var(--ak-font-ui); letter-spacing: .1em; text-transform: uppercase; }
.cms-message-from-founder .ak-founder-title { margin: 0 0 18px; font: 800 28px/1.25 var(--ak-font-head); color: var(--ak-ink); letter-spacing: -.02em; }
.cms-message-from-founder .ak-founder-text { font: 400 16px/1.8 var(--ak-font-head); color: var(--ak-ink); }
.cms-message-from-founder .ak-founder-text p { margin: 0 0 1.15em; }
.cms-message-from-founder .ak-founder-text p.ak-pullquote { position: relative; margin: 26px 0; padding: 22px 26px 22px 58px; border-radius: var(--ak-radius-lg); background: var(--ak-tint); font: 700 20px/1.45 var(--ak-font-head); color: var(--ak-mint-deep); letter-spacing: -.01em; }
.cms-message-from-founder .ak-founder-text p.ak-pullquote::before { content: "\201C"; position: absolute; left: 20px; top: 8px; font: 800 56px/1 Georgia, serif; color: var(--ak-mint); opacity: .8; }
.cms-message-from-founder .ak-founder-text p.ak-pullquote span { color: inherit !important; font: inherit !important; }
.cms-message-from-founder .ak-founder-sign { margin: 28px 0 0; padding-top: 18px; border-top: 1px solid var(--ak-line); font: 700 15px/1.4 var(--ak-font-head); color: var(--ak-ink); }
.cms-message-from-founder .ak-founder-sign small { display: block; font: 500 12px/1.4 var(--ak-font-ui); color: var(--ak-ink-3); }
.cms-message-from-founder .ak-founder-cta { display: flex; flex-wrap: wrap; gap: 10px; margin: 22px 0 0; }
@media (max-width: 900px) { .cms-message-from-founder .ak-founder { grid-template-columns: minmax(0, 300px) minmax(0, 1fr); gap: 28px; } }
@media (max-width: 768px) {
  .cms-message-from-founder .ak-founder { grid-template-columns: 1fr; gap: 26px; }
  .cms-message-from-founder .ak-founder-photo { position: static; max-width: 320px; margin: 0 auto; }
  .cms-message-from-founder .ak-founder-title { font-size: 24px; }
  .cms-message-from-founder .ak-founder-text { font-size: 15px; line-height: 1.75; }
  .cms-message-from-founder .ak-founder-text p.ak-pullquote { font-size: 17px; padding: 18px 18px 18px 50px; }
}

/* --- FAQ (rebuilt) --- */
.faq-index-index .page-title-wrapper { margin: 8px 0 8px !important; }
.faq-index-index .ak-faq-lead { max-width: 640px; margin: 0 0 18px; font: 400 15px/1.6 var(--ak-font-head); color: var(--ak-ink-2); }
.faq-index-index .ak-faq-tools { display: flex; flex-wrap: wrap; align-items: center; gap: 10px 14px; margin: 0 0 20px; }
.faq-index-index .ak-faq-search { position: relative; flex: 1 1 320px; max-width: 520px; }
.faq-index-index .ak-faq-search input { width: 100%; height: 50px; padding: 0 48px 0 46px; border: 1.5px solid #d9e6e3; border-radius: 999px; background: #fff; font: 400 15px/1 var(--ak-font-ui); color: var(--ak-ink); box-sizing: border-box; box-shadow: none; }
.faq-index-index .ak-faq-search input:focus { border-color: var(--ak-mint); box-shadow: 0 0 0 4px rgba(87,213,194,.18); outline: none; }
.faq-index-index .ak-faq-search::before { content: ""; position: absolute; left: 18px; top: 50%; width: 18px; height: 18px; margin-top: -9px; background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Ccircle cx='10.5' cy='10.5' r='6' fill='none' stroke='%238a9896' stroke-width='2.2'/%3E%3Cpath d='M15 15l5 5' stroke='%238a9896' stroke-width='2.2' stroke-linecap='round'/%3E%3C/svg%3E") center / contain no-repeat; }
.faq-index-index .ak-faq-search .ak-faq-clear { position: absolute; right: 8px; top: 7px; width: 36px; height: 36px; border: 0; border-radius: 50%; background: transparent; color: var(--ak-ink-3); font: 600 18px/1 var(--ak-font-ui); cursor: pointer; display: none; }
.faq-index-index .ak-faq-search.has-value .ak-faq-clear { display: block; }
.faq-index-index .collspan-expand-block { margin: 0 !important; margin-left: auto !important; }
.faq-index-index .faq-groups { position: sticky; top: 0; z-index: 20; display: flex; flex-wrap: nowrap; justify-content: flex-start; gap: 8px; margin: 0 -16px 24px !important; padding: 10px 16px; overflow-x: auto; -webkit-overflow-scrolling: touch; scrollbar-width: none; background: rgba(255,255,255,.96); backdrop-filter: blur(8px); border-bottom: 1px solid var(--ak-line); }
.faq-index-index .faq-groups::-webkit-scrollbar { display: none; }
.faq-index-index .faq-group { flex: 0 0 auto; display: inline-flex; align-items: center; gap: 8px; max-width: none; margin: 0 !important; padding: 0 !important; border: 0; background: none; box-shadow: none !important; transform: none !important; }
.faq-index-index .faq-group .faq-group-image, .faq-index-index .faq-group .faq-groupname { display: contents; }
.faq-index-index .faq-group .group-link { display: inline-flex !important; align-items: center; gap: 8px; height: 40px; padding: 0 14px 0 10px !important; border: 1.5px solid var(--ak-line); border-radius: 999px; background: #fff; color: var(--ak-ink) !important; font: 600 12px/1 var(--ak-font-ui) !important; letter-spacing: .02em; text-transform: none !important; text-decoration: none !important; white-space: nowrap; transition: background .15s ease, border-color .15s ease; }
.faq-index-index .faq-group .faq-group-image .group-link { padding: 0 !important; border: 0; height: auto; background: none; margin-right: -4px; }
.faq-index-index .faq-group .faq-group-image .group-link img { width: 26px; height: 26px; object-fit: contain; }
.faq-index-index .faq-group .faq-groupname .group-link::after { content: attr(data-count); display: inline-flex; align-items: center; justify-content: center; min-width: 20px; height: 20px; padding: 0 6px; border-radius: 999px; background: var(--ak-tint); color: var(--ak-mint-deep); font: 700 11px/1 var(--ak-font-ui); }
.faq-index-index .faq-group .faq-groupname .group-link[data-count="0"]::after { content: none; }
.faq-index-index .faq-group.is-active .faq-groupname .group-link, .faq-index-index .faq-group .faq-groupname .group-link:hover { background: var(--ak-tint); border-color: var(--ak-mint); color: var(--ak-mint-deep) !important; }
.faq-index-index .faq-group.is-hidden { display: none !important; }
.faq-index-index #faq-content > div { scroll-margin-top: 76px; margin: 0 0 30px; }
.faq-index-index #faq-content > div.is-hidden { display: none; }
.faq-index-index .group-title { margin: 0 0 12px !important; font-size: 20px !important; }
.faq-index-index .faq-accordion .ui-accordion-header { margin: 0 0 8px !important; padding: 15px 52px 15px 18px !important; font: 600 15px/1.45 var(--ak-font-head) !important; }
.faq-index-index .faq-accordion .ui-accordion-header::after, .faq-index-index .faq-accordion .ui-accordion-header::before { display: none !important; content: none !important; }
.faq-index-index .faq-accordion .ui-accordion-header .ui-icon { right: 14px; width: 28px; height: 28px; margin: -14px 0 0; border-radius: 50%; background-color: var(--ak-tint) !important; background-size: 18px !important; }
.faq-index-index .faq-accordion .ui-accordion-header.is-hidden, .faq-index-index .faq-accordion .ui-accordion-content.is-hidden { display: none !important; }
.faq-index-index .faq-accordion .ui-accordion-content { margin: -8px 0 10px !important; padding: 4px 18px 18px !important; }
.faq-index-index .faq-accordion .ui-accordion-content p:empty { display: none; }
.faq-index-index .faq-accordion .ui-accordion-content img { max-width: 100%; height: auto; border-radius: 10px; }
.faq-index-index .faq-accordion .ui-accordion-content ul, .faq-index-index .faq-accordion .ui-accordion-content ol { padding-left: 1.3em; margin: 0 0 .8em; }
.faq-index-index .faq-accordion .ui-accordion-content table { width: 100%; border-collapse: collapse; font-size: 13px; }
.faq-index-index .faq-accordion .ui-accordion-content td, .faq-index-index .faq-accordion .ui-accordion-content th { padding: 6px 8px; border-bottom: 1px solid var(--ak-line); }
.faq-index-index .ak-faq-empty { display: none; margin: 10px 0 30px; padding: 26px; border-radius: var(--ak-radius-lg); border: 1.5px dashed var(--ak-line); text-align: center; font: 500 14px/1.6 var(--ak-font-ui); color: var(--ak-ink-2); }
.faq-index-index .ak-faq-empty.is-on { display: block; }
.faq-index-index .ak-faq-cta { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 14px; margin: 10px 0 0; padding: 22px 26px; border-radius: var(--ak-radius-lg); background: var(--ak-tint); }
.faq-index-index .ak-faq-cta strong { display: block; font: 700 18px/1.3 var(--ak-font-head); color: var(--ak-ink); }
.faq-index-index .ak-faq-cta span { display: block; margin-top: 4px; font: 400 13px/1.5 var(--ak-font-head); color: var(--ak-ink-2); }
@media (max-width: 640px) { .faq-index-index .faq-groups { margin: 0 -16px 18px !important; } .faq-index-index .ak-faq-tools { gap: 10px; } .faq-index-index .collspan-expand-block { margin-left: 0 !important; } .faq-index-index .ak-faq-cta { padding: 18px; } .faq-index-index .ak-faq-cta .ak-btn-primary { width: 100%; } }

/* --- order items: qty as one line with labels (Ordered 10 · Refunded 10) --- */
.account .table-order-items .col.qty .items-qty { display: flex; flex-wrap: wrap; gap: 4px 12px; margin: 0; padding: 0; list-style: none; }
.account .table-order-items .col.qty .items-qty .item { display: inline-flex; align-items: baseline; gap: 5px; margin: 0; white-space: nowrap; }
.account .table-order-items .col.qty .items-qty .title { display: inline !important; font: 500 12px/1.4 var(--ak-font-ui); color: var(--ak-ink-3); }
.account .table-order-items .col.qty .items-qty .title::after { content: ":"; }
.account .table-order-items .col.qty .items-qty .content { font: 600 14px/1.4 var(--ak-font-ui); color: var(--ak-ink); }
@media (min-width: 769px) { .account .table-order-items .col.qty .items-qty { flex-direction: column; gap: 2px; } }

/* --- account nav on phones: an obvious menu button --- */
@media (max-width: 768px) {
  .account .sidebar-main .block-collapsible-nav { margin: 0 0 16px !important; }
  .account .sidebar-main .block-collapsible-nav .title { display: flex !important; align-items: center; gap: 10px; margin: 0 !important; padding: 12px 14px !important; border: 1.5px solid var(--ak-line) !important; border-radius: 14px; background: #fff; cursor: pointer; }
  .account .sidebar-main .block-collapsible-nav .title::before { content: ""; width: 20px; height: 20px; background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M4 7h16M4 12h16M4 17h16' stroke='%231f8f7e' stroke-width='2.4' stroke-linecap='round'/%3E%3C/svg%3E") center / contain no-repeat; }
  .account .sidebar-main .block-collapsible-nav .title strong { flex: 1 1 auto; font: 600 14px/1.3 var(--ak-font-ui) !important; letter-spacing: 0; text-transform: none; color: var(--ak-ink) !important; }
  .account .sidebar-main .block-collapsible-nav .title strong::before { content: "Account menu"; display: block; font: 700 10px/1.2 var(--ak-font-ui); letter-spacing: .1em; text-transform: uppercase; color: var(--ak-ink-3); margin-bottom: 2px; }
  .account .sidebar-main .block-collapsible-nav .title::after { content: "" !important; position: static !important; width: 28px; height: 28px; margin: 0 !important; border-radius: 50%; background: var(--ak-tint) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='none' stroke='%231f8f7e' stroke-width='2.6' stroke-linecap='round' stroke-linejoin='round' d='M6 9l6 6 6-6'/%3E%3C/svg%3E") center / 16px no-repeat; font-size: 0 !important; transition: transform .2s ease; }
  .account .sidebar-main .block-collapsible-nav .title.active::after { transform: rotate(180deg); }
  .account .block-collapsible-nav .content { margin-top: 8px; }
}
.account .block-collapsible-nav .item:has(> a[href*="/downloadable/"]), .account .block-collapsible-nav .item.ak-hidden { display: none !important; }

@media (max-width: 768px) { .account .sidebar-main .block-collapsible-nav .title strong { border: 0 !important; padding: 0 !important; } .account .sidebar-main .block-collapsible-nav .title strong::after { display: none !important; } }
@media (max-width: 768px) { .cms-message-from-founder .ak-founder-photo { position: relative; } }
.faq-index-index .collspan-expand-block { font-size: 0 !important; gap: 8px; }
.faq-index-index .collspan-expand-block a { font-size: 12px !important; }
@media (max-width: 768px) { .cms-message-from-founder .ak-founder-photo { top: auto; } }

/* 松本さん指示 (09-30): ☆アイコンはホームページ以外では使わない → 見出しの装飾アイコンを全て外す */
.ak-page-head h1::before, .ak-scope .ak-h::before,
.cms-page-view .page-title-wrapper .page-title::before, .contact-index-index .page-title-wrapper .page-title::before, .faq-index-index .page-title-wrapper .page-title::before, .customer-account-login .page-title-wrapper .page-title::before, .customer-account-create .page-title-wrapper .page-title::before, .customer-account-forgotpassword .page-title-wrapper .page-title::before, .account .page-title-wrapper .page-title::before,
.customer-account-create .block-title > #block-customer-login-heading::before, .cms-noroute-index .page-title-wrapper .page-title::before,
.faq-index-index .group-title::before, .blog-page .page-title-wrapper .page-title::before,
.points-history-index .column.main > p > strong::before, .catalog-product-view .product.data.items > .item.title > .switch::before { display: none !important; content: none !important; }
.ak-page-head h1, .cms-page-view .page-title-wrapper .page-title, .contact-index-index .page-title-wrapper .page-title, .faq-index-index .page-title-wrapper .page-title, .customer-account-login .page-title-wrapper .page-title, .customer-account-create .page-title-wrapper .page-title, .customer-account-forgotpassword .page-title-wrapper .page-title, .account .page-title-wrapper .page-title, .customer-account-create .block-title > #block-customer-login-heading, .cms-noroute-index .page-title-wrapper .page-title, .faq-index-index .group-title, .blog-page .page-title-wrapper .page-title { gap: 0; }

/* ---- vertical rhythm (松本さん指示 09-30): same breathing room on every page in scope ---- */
.catalog-product-view .page-main, .blog-page .page-main, .cms-page-view .page-main, .contact-index-index .page-main, .faq-index-index .page-main, .customer-account-login .page-main, .customer-account-create .page-main, .customer-account-forgotpassword .page-main, .account .page-main, .cms-noroute-index .page-main { padding-bottom: 56px !important; }
@media (max-width: 768px) { .catalog-product-view .page-main, .blog-page .page-main, .cms-page-view .page-main, .contact-index-index .page-main, .faq-index-index .page-main, .customer-account-login .page-main, .customer-account-create .page-main, .customer-account-forgotpassword .page-main, .account .page-main, .cms-noroute-index .page-main { padding-bottom: 40px !important; } }
/* account: title → content, block → block, block title → table */
.account .page-title-wrapper { margin: 8px 0 22px !important; }
.account .column.main > .block { margin: 0 0 34px !important; }
.account .column.main > .block:last-child { margin-bottom: 0 !important; }
.account .column.main .block:not(.widget) .block-title { margin: 0 0 14px !important; }
.account .block-dashboard-orders .block-title { display: flex; align-items: center; justify-content: space-between; gap: 12px; }
.account .block-dashboard-orders .block-title .action { margin: 0 !important; }
.account .block-dashboard-orders .block-content, .account .block-dashboard-info .block-content, .account .block-dashboard-addresses .block-content { margin: 0 !important; }
.account .block-dashboard-info .block-content, .account .block-dashboard-addresses .block-content { display: grid; grid-template-columns: repeat(auto-fit, minmax(240px, 1fr)); gap: 14px; }
.account .block-dashboard-info .box, .account .block-dashboard-addresses .box { width: auto !important; margin: 0 !important; float: none !important; }
.account .column.main > .actions-toolbar { margin: 18px 0 0 !important; }
@media (max-width: 768px) { .account .column.main > .block { margin: 0 0 28px !important; } .account .page-title-wrapper { margin: 4px 0 16px !important; } }
/* product info column rhythm */
.catalog-product-view .product-info-release { margin: 6px 0 18px !important; }
.catalog-product-view .product-info-main .page-title-wrapper.product { margin: 0 0 10px !important; }
/* one bottom margin only (the theme adds its own on .columns / .column.main) */
.catalog-product-view .columns, .blog-page .columns, .cms-page-view .columns, .contact-index-index .columns, .faq-index-index .columns, .customer-account-login .columns, .customer-account-create .columns, .customer-account-forgotpassword .columns, .account .columns, .cms-noroute-index .columns,
.catalog-product-view .column.main, .blog-page .column.main, .cms-page-view .column.main, .contact-index-index .column.main, .faq-index-index .column.main, .customer-account-login .column.main, .customer-account-create .column.main, .customer-account-forgotpassword .column.main, .account .column.main, .cms-noroute-index .column.main { margin-bottom: 0 !important; padding-bottom: 0 !important; }
.blog-page .sidebar, .account .sidebar-main { margin-bottom: 0 !important; padding-bottom: 0 !important; }
/* consistent gap under the page title (24px) and between title and breadcrumb */
.blog-page .page-title-wrapper, .faq-index-index .page-title-wrapper { margin: 8px 0 20px !important; }
.faq-index-index .page-title-wrapper { margin-bottom: 8px !important; }
.blog-post-view .page-title-wrapper { margin-bottom: 14px !important; }
.catalog-product-view .page-main, .blog-page .page-main, .cms-page-view .page-main, .contact-index-index .page-main, .faq-index-index .page-main, .customer-account-login .page-main, .customer-account-create .page-main, .customer-account-forgotpassword .page-main, .account .page-main, .cms-noroute-index .page-main { padding-bottom: 24px !important; }
@media (max-width: 768px) { .account .table-wrapper { margin: 0 !important; } .account .block-dashboard-orders .block-content { margin-top: 0 !important; padding-top: 0 !important; } .account .sidebar-main .block-collapsible-nav .content { margin-bottom: 18px; } }
/* shipping toggle: fixed geometry regardless of theme floats (松本さん指摘: 右端の余白) */
.catalog-product-view .block-shipping-estimation .block-title.block-heading { padding: 12px 16px !important; gap: 12px !important; }
.catalog-product-view .block-shipping-estimation .content-toggle { float: none !important; margin: 0 !important; padding: 7px 12px 7px 14px !important; gap: 8px !important; line-height: 1 !important; height: 30px; box-sizing: border-box; flex: 0 0 auto; }
.catalog-product-view .block-shipping-estimation .content-toggle::after { flex: 0 0 12px; }
.catalog-product-view .block-shipping-estimation .block-title strong { line-height: 1.2 !important; }

/* ==========================================================================
   FOOTER (all pages) — 松本さん指示 09-30: design + wording
   ========================================================================== */
.section-footer .site-footer { padding: 0 !important; }
.section-footer .site-footer .wrapper { max-width: 1200px; margin: 0 auto; padding: 44px 24px 0 !important; box-sizing: border-box; }
.section-footer .site-footer .grid { display: grid !important; grid-template-columns: 1fr 1fr 1.25fr 1.25fr 1.7fr; gap: 28px 32px; align-items: start; }
.section-footer .site-footer .grid > .col { width: auto !important; max-width: none !important; float: none !important; margin: 0 !important; padding: 0 !important; left: auto !important; display: block !important; }
.section-footer .site-footer .grid h4 { height: auto !important; min-height: 0 !important; margin: 0 0 14px !important; padding: 0 !important; font: 700 12px/1.3 var(--ak-font-ui) !important; letter-spacing: .12em; text-transform: uppercase; color: rgba(255,255,255,.92) !important; }
.section-footer .site-footer .grid ul { margin: 0; padding: 0; list-style: none; }
.section-footer .site-footer .grid li { margin: 0 0 9px !important; line-height: 1.4 !important; }
.section-footer .site-footer .grid li a { display: inline-block; font: 500 14px/1.4 var(--ak-font-ui) !important; color: #fff !important; text-decoration: none !important; border-bottom: 1px solid transparent; transition: border-color .15s ease, opacity .15s ease; }
.section-footer .site-footer .grid li a:hover { border-bottom-color: rgba(255,255,255,.7); }
.section-footer .site-footer .grid li.ak-hidden { display: none !important; }
.section-footer .site-footer .grid .box-5 p { margin: 0 0 8px !important; font: 500 14px/1.5 var(--ak-font-ui) !important; color: #fff !important; }
.section-footer .site-footer .grid .box-5 p small { display: block; margin-top: 10px; font: 400 12px/1.5 var(--ak-font-ui); color: rgba(255,255,255,.8); }
/* newsletter card */
.section-footer .site-footer .newsletter .offer-message h4 { margin-bottom: 14px !important; }
.section-footer .site-footer .newsletter .offer-email { padding: 18px 18px 16px; border-radius: 16px; background: #fff; box-shadow: 0 10px 30px rgba(0,0,0,.08); }
.section-footer .site-footer .newsletter .ak-news-pitch { margin: 0 0 12px !important; font: 400 13px/1.5 var(--ak-font-ui) !important; color: var(--ak-ink-2) !important; }
.section-footer .offer-email .input-row { display: flex !important; flex-wrap: wrap; gap: 8px; width: 100%; }
.section-footer .offer-email .input-wrapper, .section-footer .offer-email .button-wrapper { flex: 1 1 100%; width: 100% !important; margin: 0 !important; padding: 0 !important; }
.section-footer .offer-email #email-footer { width: 100% !important; height: 46px !important; box-sizing: border-box; padding: 0 16px !important; border: 1.5px solid #d9e6e3 !important; border-radius: 12px !important; background: #fff !important; font: 400 14px/1 var(--ak-font-ui) !important; color: var(--ak-ink) !important; box-shadow: none !important; }
.section-footer .offer-email #email-footer:focus { border-color: var(--ak-mint) !important; box-shadow: 0 0 0 4px rgba(87,213,194,.18) !important; outline: none; }
.section-footer .offer-email #email-footer::placeholder { color: #9aa8a5; }
.section-footer .offer-email #subscribe { width: 100% !important; height: 46px !important; margin: 0 !important; border: 0 !important; border-radius: 999px !important; background: var(--ak-mint) !important; color: #fff !important; font: 700 14px/1 var(--ak-font-ui) !important; letter-spacing: .02em; text-transform: none !important; box-shadow: 0 4px 14px rgba(87,213,194,.35); cursor: pointer; }
.section-footer .offer-email #subscribe:hover { background: var(--ak-mint-hover) !important; }
.section-footer .offer-email div.mage-error { margin: 6px 0 0; font: 500 12px/1.4 var(--ak-font-ui); color: var(--ak-red-ink); }
/* social icons (the theme's icon font never rendered these) */
.section-footer .site-footer .social-icons { display: flex !important; justify-content: center; gap: 10px; margin: 36px 0 22px !important; padding: 0 !important; list-style: none; }
.section-footer .site-footer .social-icons li { margin: 0 !important; padding: 0 !important; }
.section-footer .site-footer .social-icons a { display: inline-flex !important; align-items: center; justify-content: center; width: 42px; height: 42px; border-radius: 50%; border: 1.5px solid rgba(255,255,255,.7); background: rgba(255,255,255,.08); transition: background .15s ease, transform .15s ease; }
.section-footer .site-footer .social-icons a:hover { background: #fff; transform: translateY(-2px); }
.section-footer .site-footer .social-icons a::before { content: ""; width: 18px; height: 18px; background: #fff; -webkit-mask: var(--ak-icon) center / contain no-repeat; mask: var(--ak-icon) center / contain no-repeat; }
.section-footer .site-footer .social-icons a:hover::before { background: var(--ak-mint-deep); }
.section-footer .site-footer .social-icons a[href*="twitter.com"], .section-footer .site-footer .social-icons a[href*="x.com"] { --ak-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M17.5 3h3.2l-7 8 8.3 10h-6.5l-5.1-6.6L4.6 21H1.4l7.5-8.6L1 3h6.6l4.6 6.1L17.5 3zm-1.1 16h1.8L6.7 4.9H4.8L16.4 19z'/%3E%3C/svg%3E"); }
.section-footer .site-footer .social-icons a[href*="facebook.com"] { --ak-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M13.5 21v-7.5h2.6l.4-3h-3V8.6c0-.9.3-1.5 1.5-1.5h1.6V4.4c-.3 0-1.2-.1-2.3-.1-2.3 0-3.9 1.4-3.9 4v2.2H7.8v3h2.6V21h3.1z'/%3E%3C/svg%3E"); }
.section-footer .site-footer .social-icons a[href*="instagram.com"] { --ak-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M12 7.3a4.7 4.7 0 1 0 0 9.4 4.7 4.7 0 0 0 0-9.4zm0 7.7a3 3 0 1 1 0-6 3 3 0 0 1 0 6zm5-8.9a1.1 1.1 0 1 1-2.2 0 1.1 1.1 0 0 1 2.2 0zM12 3c-2.4 0-2.7 0-3.7.1-3.3.1-5.1 1.9-5.2 5.2C3 9.3 3 9.6 3 12s0 2.7.1 3.7c.1 3.3 1.9 5.1 5.2 5.2 1 .1 1.3.1 3.7.1s2.7 0 3.7-.1c3.3-.1 5.1-1.9 5.2-5.2.1-1 .1-1.3.1-3.7s0-2.7-.1-3.7c-.1-3.3-1.9-5.1-5.2-5.2C14.7 3 14.4 3 12 3zm0 1.7c2.4 0 2.6 0 3.6.1 2.4.1 3.6 1.3 3.7 3.7 0 1 .1 1.2.1 3.6s0 2.6-.1 3.6c-.1 2.4-1.3 3.6-3.7 3.7-1 0-1.2.1-3.6.1s-2.6 0-3.6-.1c-2.4-.1-3.6-1.3-3.7-3.7 0-1-.1-1.2-.1-3.6s0-2.6.1-3.6C4.8 6.1 6 4.9 8.4 4.8c1 0 1.2-.1 3.6-.1z'/%3E%3C/svg%3E"); }
.section-footer .site-footer .social-icons a[href*="tumblr.com"] { --ak-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M14.5 21c-3 0-4.6-1.6-4.6-4.3v-5.6H7.7V8.4c2.2-.6 3.3-2.4 3.5-4.4h2.7v4.1h3.2v3H13.9v5c0 1.4.7 1.9 1.8 1.9.7 0 1.4-.2 1.9-.5l.7 2.6c-.8.5-2.2.9-3.8.9z'/%3E%3C/svg%3E"); }
.section-footer .site-footer .social-icons a[href*="tiktok.com"] { --ak-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M16.5 3c.3 2.1 1.6 3.6 3.7 3.8v3.1c-1.4 0-2.7-.4-3.8-1.2v6.2c0 3.2-2.6 5.7-5.8 5.7S4.8 18.1 4.8 14.9c0-3.4 3-6.1 6.5-5.6v3.2c-.3-.1-.6-.1-.9-.1-1.4 0-2.5 1.1-2.5 2.5S9 17.4 10.4 17.4s2.6-1.1 2.6-2.5V3h3.5z'/%3E%3C/svg%3E"); }
.section-footer .site-footer .social-icons .icon-fallback-text { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); }
/* copyright bar */
.section-footer .site-footer .copyright { margin: 0 -24px !important; padding: 14px 24px !important; background: rgba(0,0,0,.08) !important; font: 500 12px/1.5 var(--ak-font-ui) !important; color: rgba(255,255,255,.9) !important; text-align: center; }
@media (max-width: 1023px) and (min-width: 769px) {
  .section-footer .site-footer .grid { grid-template-columns: 1fr 1fr 1fr 1.2fr; }
  .section-footer .site-footer .grid > .box-4 { grid-column: 1 / -1; max-width: 520px; }
}
@media (max-width: 768px) {
  .section-footer .site-footer .wrapper { padding: 32px 16px 0 !important; }
  .section-footer .site-footer .grid { grid-template-columns: 1fr 1fr !important; gap: 26px 18px !important; }
  .section-footer .site-footer .grid > .box-4 { grid-column: 1 / -1; }
  .section-footer .site-footer .grid h4 { margin-bottom: 10px !important; }
  .section-footer .site-footer .social-icons { margin: 28px 0 18px !important; }
  .section-footer .site-footer .copyright { margin: 0 -16px !important; padding: 12px 16px !important; }
}
.section-footer .site-footer .copyright { margin: 0 calc(50% - 50vw) !important; padding: 14px calc(50vw - 50%) !important; width: auto !important; }
@media (max-width: 768px) { .section-footer .site-footer .copyright { margin: 0 -16px !important; padding: 12px 16px !important; } }
.section-footer .site-footer .wrapper { max-width: none !important; padding: 44px max(24px, calc(50% - 600px)) 0 !important; }
.section-footer .site-footer .copyright { margin: 0 calc(-1 * max(24px, 50% - 600px)) !important; padding: 14px 24px !important; float: none !important; display: block !important; position: static !important; width: auto !important; }
@media (max-width: 768px) { .section-footer .site-footer .wrapper { padding: 32px 16px 0 !important; } .section-footer .site-footer .copyright { margin: 0 -16px !important; padding: 12px 16px !important; } }

/* ---- feedback round 6 (09-30) ---- */
/* footer: group titles clearly different from links */
.section-footer .site-footer .grid h4 { position: relative; padding-bottom: 10px !important; margin-bottom: 12px !important; font-size: 11px !important; letter-spacing: .16em; color: rgba(255,255,255,.72) !important; }
.section-footer .site-footer .grid h4::after { content: ""; position: absolute; left: 0; bottom: 0; width: 22px; height: 2px; border-radius: 2px; background: rgba(255,255,255,.55); }
.section-footer .site-footer .grid li a { font-weight: 400 !important; font-size: 15px !important; }
.section-footer .site-footer .grid .box-5 p { font-weight: 400 !important; font-size: 15px !important; }
/* account: no double card — the theme's block padding/border goes, the inner boxes stay as cards */
.account .column.main > .block { padding: 0 !important; border: 0 !important; box-shadow: none !important; background: none !important; }
.account .column.main > .block .block-content { padding: 0 !important; }
/* account menu button on phones: just "Account menu" + chevron */
@media (max-width: 768px) {
  .account .sidebar-main .block-collapsible-nav .title { padding: 0 14px 0 16px !important; height: 48px; border-radius: 999px; border: 1.5px solid var(--ak-mint) !important; background: #fff; }
  .account .sidebar-main .block-collapsible-nav .title::before { display: none; }
  .account .sidebar-main .block-collapsible-nav .title strong { font-size: 0 !important; line-height: 0 !important; }
  .account .sidebar-main .block-collapsible-nav .title strong::before { content: "Account menu"; font: 700 14px/1 var(--ak-font-ui); letter-spacing: 0; text-transform: none; color: var(--ak-mint-deep); margin: 0; }
  .account .sidebar-main .block-collapsible-nav .title::after { width: 26px; height: 26px; }
  .account .block-collapsible-nav .content { margin-top: 10px; }
}
/* wishlist on phones: two per row, smaller pictures, more items on screen */
@media (max-width: 768px) {
  .wishlist-index-index .products-grid.wishlist .product-items { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; }
  .wishlist-index-index .products-grid.wishlist .product-item-info { padding: 10px !important; border-radius: 12px; }
  .wishlist-index-index .products-grid.wishlist .product-item-photo { margin: 0 0 8px !important; }
  .wishlist-index-index .products-grid.wishlist .product-item-link { font-size: 12px !important; -webkit-line-clamp: 2; }
  .wishlist-index-index .products-grid.wishlist .price-container .price { font-size: 14px !important; }
  .wishlist-index-index .products-grid.wishlist .usd-price { display: block; font-size: 11px !important; }
  .wishlist-index-index .products-grid.wishlist .box-tocart .fieldset { flex-wrap: wrap; gap: 6px; }
  .wishlist-index-index .products-grid.wishlist .input-text.qty { width: 46px !important; height: 36px !important; }
  .wishlist-index-index .products-grid.wishlist .box-tocart .product-item-actions { flex: 1 1 100%; }
  .wishlist-index-index .products-grid.wishlist .action.tocart.primary { min-height: 36px; font-size: 12px !important; }
  .wishlist-index-index .products-grid.wishlist .product-item-inner > .product-item-actions { gap: 10px; margin: 6px 0 0 !important; }
  .wishlist-index-index .products-grid.wishlist .product-item-inner > .product-item-actions a { min-height: 32px; font-size: 11px !important; }
  .wishlist-index-index .form-wishlist-items .actions-toolbar .action { flex: 1 1 calc(50% - 5px); justify-content: center; min-height: 42px; padding: 0 12px !important; font-size: 12px !important; }
}
/* footer title accent as a static block (the CMS block's own !important padding:0 on h4 beat the positioned version) */
.section-footer .site-footer .grid h4::after { position: static !important; display: block; margin-top: 8px; }
.section-footer .site-footer .grid h4 { padding-bottom: 0 !important; }
.account .block-dashboard-orders .block-title { padding: 0 !important; justify-content: space-between !important; text-align: left !important; }
.account .block-dashboard-orders .block-title strong { text-align: left !important; flex: 1 1 auto; }

@media (max-width: 768px) { .account .sidebar-main .block-collapsible-nav .title strong::before { content: "Account Menu"; } }

/* account chips (tablet/phone): the theme pads every li after the first by 10px, which lifted "My Orders" */
@media (max-width: 1023px) {
  .account .block-collapsible-nav .content .items { gap: 10px; align-items: stretch; }
  .account .block-collapsible-nav .item, .account .block-collapsible-nav .item + .item { margin: 0 !important; padding: 0 !important; display: flex; }
  .account .block-collapsible-nav .item a, .account .block-collapsible-nav .item strong { height: 40px; box-sizing: border-box; line-height: 1 !important; }
}
/* dashboard cards: the theme's clearfix pseudo-element took the first grid cell and pushed both cards right */
.account .block-dashboard-info .block-content::before, .account .block-dashboard-info .block-content::after, .account .block-dashboard-addresses .block-content::before, .account .block-dashboard-addresses .block-content::after { display: none !important; content: none !important; }
/* phone: the theme floats the account menu over the page (position:absolute, sidebar height 0) → the open list covered the content and left a 65px hole above the heading. Keep it in the flow. */
@media (max-width: 768px) {
  .account .columns .sidebar-main { height: auto !important; min-height: 0 !important; margin: 0 0 16px !important; }
  .account .sidebar-main .block-collapsible-nav { position: static !important; top: auto !important; left: auto !important; width: auto !important; margin: 0 !important; z-index: auto !important; }
  .account .sidebar-main .block-collapsible-nav .content { position: static !important; margin: 10px 0 0 !important; }
  .account .column.main > .page-title-wrapper, .account .column.main > .block:first-child { margin-top: 0 !important; }
}
/* wishlist: "Out of stock" takes the same slot and shape as the Add to Cart button; disabled qty looks disabled */
.wishlist-index-index .products-grid.wishlist .unavailable.stock { flex: 1 1 auto; display: inline-flex !important; align-items: center; justify-content: center; min-height: 40px; margin: 0 !important; padding: 0 12px; border-radius: 999px; background: #ecf0ef; color: var(--ak-ink-2) !important; font: 600 13px/1 var(--ak-font-ui) !important; }
.wishlist-index-index .products-grid.wishlist .unavailable.stock span { font: inherit; color: inherit; }
.wishlist-index-index .products-grid.wishlist .input-text.qty:disabled { opacity: .5; background: #f4f7f6 !important; }
@media (max-width: 768px) {
  .wishlist-index-index .products-grid.wishlist .unavailable.stock { flex: 1 1 100%; min-height: 36px; font-size: 12px !important; }
}
/* phone: account pages start 20px under the header like every other page (theme: 41px + an empty 40px messages slot = 101px hole) */
@media (max-width: 768px) {
  .account .page-main { padding-top: 20px !important; }
  .account .page-main > .page.messages { margin: 0 !important; }
  .account .page-main > .page.messages:has(.message) { margin: 0 0 16px !important; }
  .account .sidebar-main .block-collapsible-nav { padding: 0 !important; box-shadow: none !important; background: none !important; border: 0 !important; }
}

/* ==========================================================================
   Review pass 2026-10-03 (logged-in pages on top of the 10-02 production)
   ========================================================================== */
/* sidebar heading: the server prints "Account Dashboard" on every page — always show "Account Menu" (CSS, no race with JS) */
.account .sidebar-main .block-collapsible-nav .title strong { font-size: 0 !important; line-height: 0 !important; }
.account .sidebar-main .block-collapsible-nav .title strong::before { content: "Account Menu"; display: block; font: 700 11px/1.2 var(--ak-font-ui); letter-spacing: .1em; text-transform: uppercase; color: var(--ak-ink-3); }
@media (max-width: 768px) { .account .sidebar-main .block-collapsible-nav .title strong::before { font: 700 14px/1 var(--ak-font-ui); letter-spacing: 0; text-transform: none; color: var(--ak-mint-deep); } }
/* sidebar items: never clip a label */
.account .sidebar-main .block-collapsible-nav .nav.item a, .account .sidebar-main .block-collapsible-nav .nav.item.current strong { white-space: normal !important; overflow-wrap: anywhere; }
/* forms on account pages: one card style (the theme only gave them a faint one-sided shadow) */
.account .column.main form.ak-form, .account .column.main .form-newsletter-manage { border: 1.5px solid var(--ak-line) !important; border-radius: var(--ak-radius-lg) !important; box-shadow: none !important; background: #fff !important; padding: 22px !important; }
@media (max-width: 768px) { .account .column.main form.ak-form, .account .column.main .form-newsletter-manage { padding: 18px !important; } }
/* reward points: the table sat between two full-bleed theme rules */
.points-history-index .column.main .table-wrapper.orders-history { border: 0 !important; margin: 16px 0 0 !important; padding: 0 !important; box-shadow: none !important; }
/* phone numbers in address cards: readable ink, not light mint */
.account .box-address-billing a[href^="tel:"], .account .box-address-shipping a[href^="tel:"], .account .box a[href^="tel:"], .account address a[href^="tel:"] { color: var(--ak-ink) !important; text-decoration: none; }
/* wishlist: full product names (never truncated), left-aligned like everywhere else */
.wishlist-index-index .products-grid.wishlist .product-item-name, .wishlist-index-index .products-grid.wishlist .product-item-name a { display: block !important; -webkit-line-clamp: unset !important; overflow: visible !important; text-overflow: clip !important; white-space: normal !important; text-align: left !important; }
.wishlist-index-index .products-grid.wishlist .price-box { text-align: left !important; }
/* wishlist toolbar: count and pager with room to breathe */
.wishlist-index-index .wishlist-toolbar .pager { display: flex !important; flex-wrap: wrap; align-items: center; gap: 10px 16px; }
.wishlist-index-index .wishlist-toolbar .toolbar-amount { margin: 0 !important; padding: 0 !important; position: static !important; }
.wishlist-index-index .wishlist-toolbar .pages { margin: 0 !important; position: static !important; }
/* date of birth button: one line */
.account .ak-date-btn, .customer-account-create .ak-date-btn { white-space: nowrap !important; }
/* empty order history: a way forward */
.ak-empty-cta { display: flex; flex-wrap: wrap; gap: 10px; margin: 16px 0 0; }
/* footer on phones: same 16px gutter as the page content (theme pads the grid by another 34px) */
@media (max-width: 767px) { .section-footer .site-footer .grid { padding-left: 0 !important; padding-right: 0 !important; } }
/* wishlist: the item grid is the content, not a form card */
.account .column.main form.ak-form.form-wishlist-items { border: 0 !important; padding: 0 !important; background: transparent !important; }
/* wishlist cards: actions sit on the same line in every card whatever the name length */
.wishlist-index-index .products-grid.wishlist .product-item { display: flex !important; }
.wishlist-index-index .products-grid.wishlist .product-item-info { display: flex !important; flex-direction: column; width: 100% !important; height: 100%; }
.wishlist-index-index .products-grid.wishlist .product-item-inner { margin-top: auto !important; }
.wishlist-index-index .products-grid.wishlist .price-box, .wishlist-index-index .products-grid.wishlist .price-container { text-align: left !important; justify-content: flex-start !important; }

/* ==========================================================================
   Review pass 2026-10-03 (guest pages, audit at 390 / 820 / 1280)
   ========================================================================== */
/* stronger secondary text and deep mint (WCAG AA on white and on the mint tint) */
:root { --ak-ink-3: #66736f; --ak-mint-deep: #17786a; }
.section-footer .site-footer .grid h4, .section-footer .site-footer .offer-message h4 { color: #fff !important; }
/* blog list: the theme's 70% text column left a narrow strip inside every card */
.blog-page .post-list .post-info { max-width: none !important; width: auto !important; }
/* FAQ categories: wrap onto lines, no sideways swiping; icons dropped (they collapsed to dots / floated outside the pill) */
.faq-index-index .faq-groups { flex-wrap: wrap !important; overflow: visible !important; position: static !important; margin: 0 0 24px !important; padding: 10px 0 !important; }
/* FAQ category icons stay (as in production), inside the pill */
.faq-index-index .faq-group .faq-group-image { display: contents !important; }
.faq-index-index .faq-group .faq-group-image .group-link { flex: 0 0 auto !important; display: inline-flex !important; align-items: center; min-height: 0 !important; padding: 0 !important; margin: 0 !important; border: 0 !important; background: none !important; }
.faq-index-index .faq-group .faq-group-image .group-link img { width: 22px !important; height: 22px !important; object-fit: contain; display: block; }
/* the pill is the whole group (icon + name + count), so the icon sits inside it */
.faq-index-index .faq-group, .mageprince-faq-collection .faq-group { width: auto !important; flex: 0 0 auto !important; max-width: none !important; display: inline-flex !important; align-items: center; gap: 8px; min-height: 44px; padding: 0 14px 0 12px !important; border: 1.5px solid var(--ak-line) !important; border-radius: 999px !important; background: #fff !important; cursor: pointer; }
.faq-index-index .faq-group .faq-groupname .group-link { flex: 0 0 auto !important; white-space: nowrap; height: auto !important; min-height: 44px; padding: 0 !important; border: 0 !important; background: none !important; }
.faq-index-index .faq-group.is-active, .faq-index-index .faq-group:hover { background: var(--ak-tint) !important; border-color: var(--ak-mint) !important; }
.faq-index-index .faq-group.is-active .faq-groupname .group-link, .faq-index-index .faq-group:hover .faq-groupname .group-link { background: none !important; color: var(--ak-mint-deep) !important; }
/* forms: field names stay visible while typing */
.ak-form .field > .label, .ak-form .field > label.label { display: block !important; position: static !important; width: auto !important; height: auto !important; clip: auto !important; margin: 0 0 6px !important; font: 600 13px/1.3 var(--ak-font-ui) !important; color: var(--ak-ink-2) !important; text-transform: none !important; letter-spacing: 0 !important; }
.ak-form .field.required > .label::after, .ak-form .field._required > .label::after { content: " *"; color: var(--ak-red, #c2413b); }
.customer-account-create .password-strength-meter, .customer-account-create #password-strength-meter-label, .account .password-strength-meter, .account #password-strength-meter-label { color: var(--ak-ink-2) !important; }
/* product page: qty row → buy button without the theme's leftover 30px */
.catalog-product-view .box-tocart .field.qty .control { margin-bottom: 0 !important; }
.catalog-product-view .product-options-wrapper .control { width: 100% !important; }
@media (min-width: 1024px) { .catalog-product-view .breadcrumbs { max-width: 1200px; margin: 0 auto 4px !important; padding: 0 10px !important; box-sizing: border-box; } }
/* CMS / FAQ / contact: body text starts on the same left edge as the heading */
.cms-page-view .column.main, .faq-index-index .column.main, .contact-index-index .column.main { padding-left: 0 !important; padding-right: 0 !important; margin-left: 0 !important; }
/* shipping tables on phones: label left, value right after it, plain white cells */
@media (max-width: 767px) {
  .cms-shipping .rg-table td { display: block !important; overflow: hidden; background: #fff !important; }
  .cms-shipping .rg-table td:first-child { background: var(--ak-tint) !important; }
  .cms-shipping .rg-table td::before { float: left; margin-right: 12px; color: var(--ak-ink-2) !important; }
}
/* tablet: a real side gutter, shipping toggle inside its box */
@media (min-width: 768px) and (max-width: 1023px) { :is(.catalog-product-view, .blog-page, .cms-page-view, .contact-index-index, .faq-index-index, .customer-account-login, .customer-account-create, .customer-account-forgotpassword, .account, .cms-noroute-index) :is(.page-main, .breadcrumbs) { padding-left: 24px !important; padding-right: 24px !important; } }
.catalog-product-view .block-shipping-estimation .block-title { padding-right: 12px !important; box-sizing: border-box; }
.catalog-product-view .block-shipping-estimation .content-toggle { min-height: 36px; height: auto !important; }
/* tap targets */
.section-footer .site-footer .grid li a { display: inline-block; padding: 7px 0; }
.section-footer .site-footer .grid li { margin-bottom: 0 !important; }
.faq-index-index .collspan-expand-block a, .blog-page .sidebar .item a, .blog-post-view .post-category .category-name { min-height: 36px; display: inline-flex !important; align-items: center; }
.ak-form .action.remind { display: inline-block; padding: 10px 0; }
/* visible keyboard focus everywhere in scope */
.page-main a:focus-visible, .page-main button:focus-visible, .page-main input:focus-visible, .page-main select:focus-visible, .page-main textarea:focus-visible, .page-footer a:focus-visible, .section-footer a:focus-visible, .section-footer input:focus-visible, .section-footer button:focus-visible { outline: 2px solid #17786a !important; outline-offset: 2px !important; }
/* headings: sentence case and left-aligned like every other page */
.customer-account-create .page-title, .customer-account-forgotpassword .page-title, .customer-account-create .block-title strong, .customer-account-forgotpassword .block-title strong { text-transform: none !important; text-align: left !important; }
/* blog thumbnails: keep the uploaded 350×134 proportion so they are not blown up and cropped */
.blog-page .post-list .post-image .bg-img, .blog-page .post-list .post-ftimg-hld .bg-img { aspect-ratio: 350 / 134 !important; }
/* copyright bar: full width at desktop too */
.section-footer .copyright { margin-left: 0 !important; margin-right: 0 !important; }
/* founder page: no empty paragraph before the signature */
.cms-message-from-founder .ak-founder-text p:empty, .cms-message-from-founder .ak-founder-text p:has(> br:only-child) { display: none !important; }

/* ==========================================================================
   UX additions 2026-10-03 (松本さん承認: 注意書き折りたたみ・送料自動計算・ギャラリー枚数表示・Sign In・404導線・タブレットのニュースレター幅)
   ========================================================================== */
/* long PLEASE NOTE boxes: three lines, then "Read the full note" */
/* shipping estimate: results appear by themselves, so the Calculate button goes */
.catalog-product-view .block-shipping-estimation.ak-autocalc [data-role="submit"] { display: none !important; }
.catalog-product-view .ak-ship-hint { margin: 0 0 8px; font: 500 13px/1.5 var(--ak-font-ui); color: var(--ak-ink-2); }
/* gallery on phones: a "3 / 20" counter replaces the row of tiny dots */
.catalog-product-view .product.media .fotorama.ak-has-count { position: relative; }
.ak-gal-count { position: absolute; right: 12px; bottom: 12px; z-index: 5; padding: 6px 11px; border-radius: 999px; background: rgba(34,48,46,.72); color: #fff; font: 600 12px/1 var(--ak-font-ui); font-variant-numeric: tabular-nums; pointer-events: none; }
@media (min-width: 1024px) { .ak-gal-count { display: none; } }
@media (max-width: 768px) { .catalog-product-view .product.media .fotorama.ak-has-count .fotorama__nav--dots { display: none !important; } }
/* 404: centred like its text, with two ways forward */
.cms-noroute-index .page-title-wrapper, .cms-noroute-index .page-title { text-align: center !important; }
.ak-404-cta { display: flex; flex-wrap: wrap; justify-content: center; gap: 12px; margin: 24px 0 8px; }
/* tablet: the newsletter card does not need the full row */
@media (min-width: 768px) and (max-width: 1023px) { .section-footer .site-footer .grid > .box-4 { max-width: 480px; } }

.ak-404-cta .ak-btn-primary, .ak-404-cta .ak-btn-primary:visited, .ak-404-cta .ak-btn-primary:hover { color: #fff !important; text-decoration: none !important; }
.ak-404-cta .ak-btn-secondary { text-decoration: none !important; }
/* blog list: only the first paragraph of the excerpt (the second one peeked out under the clamp) */
.blog-page .post-list .post-description .post-text-hld > *:not(:first-child), .blog-page .post-list .post-description > p:not(:first-of-type) { display: none !important; }
/* links inside blog posts / CMS text: deep mint, readable */
.blog-post-view .post-description a, .blog-page .post-list .post-description a, .cms-page-view .column.main p a { color: var(--ak-mint-deep) !important; }
/* product gallery: keyboard focus on the stage and thumbnails */
.catalog-product-view .fotorama__stage__shaft:focus-visible, .catalog-product-view .fotorama__nav__frame:focus-visible { outline: 2px solid #17786a !important; outline-offset: 2px !important; }
/* blog cards: the excerpt keeps its three lines (it used to stretch with the card and show the start of line 4); Read more sits at the bottom */
.blog-page .post-list .post-description { flex: 0 0 auto !important; max-height: calc(3 * 1.6em) !important; }
.blog-page .post-list .post-read-more { margin-top: auto !important; }
/* tablet product page: picture full width, details underneath (the 2-column split squeezed the gallery stage under the info column) */
@media (min-width: 768px) and (max-width: 1023px) {
  .catalog-product-view .product-main-content { grid-template-columns: minmax(0, 1fr) !important; gap: 20px !important; }
  .catalog-product-view .product-info-main { position: static !important; }
  .section-footer .site-footer .grid > .box-4 { max-width: 480px !important; }
}
/* tablet gallery: pages-v1.js switches the hidden vertical thumbnail column off (the theme shifted the stage right for it and cut the picture) */
@media (min-width: 769px) and (max-width: 1023px) { .catalog-product-view .product.media:has(.ak-has-count) > .triangle { left: 0 !important; } }

/* phone header: the search button carried a 5px bottom margin, so its icon sat 2.5px above the cart icon (松本さん指摘 10-03) */
@media (max-width: 768px) { .page-header .header_custom_icon .ak-s-mbtn { margin-bottom: 0 !important; } }

/* ==========================================================================
   Account & orders pass 2026-10-03 (松本さん: 注文のあるアカウントで確認)
   ========================================================================== */
/* no deep green text: links and labels in ink, mint only as accent (underline / fills) */
:root { --ak-mint-deep: #22302e; }
.account .column.main a:not(.action.primary):not(.ak-btn-primary):not(.ak-btn-secondary):not(.ak-order-thumb-link):not(.ak-order-link):not(.ak-track-chip):not(.action.track):not(.page):not(.next):not(.previous):not([href^="tel:"]):not(.order-links a),
.account .box-actions .action, .account .block-title .action, .account #my-orders-table .action, .account .table-wrapper .col.actions a {
  color: var(--ak-ink) !important; text-decoration: underline !important; text-decoration-color: rgba(87,213,194,.9) !important; text-decoration-thickness: 2px !important; text-underline-offset: 4px; }
.account .column.main a:hover { text-decoration-color: var(--ak-ink) !important; }
.account .items.order-links a, .account .items.order-links strong { text-decoration: none !important; }
.account .column.main a[href^="tel:"] { color: var(--ak-ink) !important; text-decoration: none !important; }
.account .block-title .action::after, .account .block-title .action span::after { color: var(--ak-ink-3) !important; }

/* account menu on phones: a quiet card like every other block (no mint frame, no green text) */
@media (max-width: 768px) {
  .account .sidebar-main .block-collapsible-nav .title { border: 1px solid var(--ak-line) !important; border-radius: 14px !important; background: #fff !important; box-shadow: 0 1px 2px rgba(34,48,46,.04); height: 52px; padding: 0 12px 0 16px !important; }
  .account .sidebar-main .block-collapsible-nav .title strong::before { color: var(--ak-ink) !important; font: 600 15px/1 var(--ak-font-ui) !important; }
  .account .sidebar-main .block-collapsible-nav .title::after { background-color: #f2f5f4 !important; }
  .account .sidebar-main .block-collapsible-nav .title.active { border-color: var(--ak-ink-3) !important; }
}

/* Recent Orders: the theme's clearfix pseudo-element was the first flex item → title pushed 12px right */
.account .block-dashboard-orders .block-title::before, .account .block-dashboard-orders .block-title::after { content: none !important; display: none !important; }

/* order information boxes: same clearfix problem took the first grid cell on the Items Ordered tab */
.account .block-order-details-view .block-content::before, .account .block-order-details-view .block-content::after { content: none !important; display: none !important; }
/* payment box: label above value, e-mail addresses wrap only where they must */
.account .box-order-billing-method .data.table th, .account .box-order-billing-method .data.table td { display: block !important; padding: 0 !important; text-align: left !important; }
.account .box-order-billing-method .data.table th { margin: 8px 0 2px !important; font: 600 11px/1.3 var(--ak-font-ui) !important; letter-spacing: .04em; text-transform: uppercase; color: var(--ak-ink-3) !important; }
.account .box-order-billing-method .data.table td { font: 400 13px/1.5 var(--ak-font-ui) !important; color: var(--ak-ink) !important; overflow-wrap: anywhere; word-break: normal !important; text-transform: none !important; }

/* order item thumbnails (span wrapper with the image inside, optionally inside a link) */
.account .table-order-items .ak-order-thumb { display: block; overflow: hidden; }
.account .table-order-items .ak-order-thumb img { display: block; width: 100%; height: 100%; object-fit: cover; }
.account .table-order-items .ak-order-thumb-link { display: block; flex: 0 0 auto; border-radius: 10px; }
.account .table-order-items .ak-order-link { color: var(--ak-ink) !important; text-decoration: none !important; }
.account .table-order-items .ak-order-link:hover { text-decoration: underline !important; text-decoration-color: var(--ak-mint) !important; text-underline-offset: 3px; }
.account .table-order-items .ak-order-body { min-width: 0; }

/* pager: count on the left, page buttons with room between them, page size on the right; phones stack it */
.account .toolbar.order-products-toolbar .pager, .account .order-products-toolbar .pager { display: grid !important; grid-template-columns: 1fr auto 1fr; align-items: center; gap: 12px 20px; width: 100%; }
.account .order-products-toolbar .toolbar-amount { grid-column: 1; justify-self: start; margin: 0 !important; padding: 0 !important; font: 500 13px/1.4 var(--ak-font-ui) !important; color: var(--ak-ink-2) !important; white-space: nowrap; }
.account .order-products-toolbar .pages { grid-column: 2; margin: 0 !important; }
.account .order-products-toolbar .pages-items { gap: 8px !important; }
.account .order-products-toolbar .pages .item { margin: 0 !important; }
.account .order-products-toolbar .pages .item .page, .account .order-products-toolbar .pages .item .action { min-width: 40px; height: 40px; display: inline-flex !important; align-items: center; justify-content: center; }
.account .order-products-toolbar .limiter { grid-column: 3; justify-self: end; }
@media (max-width: 768px) {
  .account .toolbar.order-products-toolbar .pager, .account .order-products-toolbar .pager { grid-template-columns: 1fr auto; }
  .account .order-products-toolbar .pages { grid-column: 1 / -1; grid-row: 1; justify-self: center; }
  .account .order-products-toolbar .toolbar-amount { grid-column: 1; grid-row: 2; }
  .account .order-products-toolbar .limiter { grid-column: 2; grid-row: 2; }
  .account .order-products-toolbar .pages-items { gap: 6px !important; }
}

/* phones: order lists as compact cards — order no. + status, date + total, then the actions */
@media (max-width: 768px) {
  .sales-order-history .table-order-items.history > tbody > tr, .account .block-dashboard-orders .table-order-items > tbody > tr {
    display: grid !important; grid-template-columns: minmax(0, 1fr) auto; gap: 4px 12px; align-items: center; padding: 14px 16px !important; margin: 0 0 10px !important; border: 1px solid var(--ak-line) !important; border-radius: 14px !important; background: #fff !important; }
  .sales-order-history .table-order-items.history > tbody > tr > td, .account .block-dashboard-orders .table-order-items > tbody > tr > td { display: block !important; padding: 0 !important; border: 0 !important; min-height: 0 !important; }
  .sales-order-history .table-order-items.history > tbody > tr > td::before, .account .block-dashboard-orders .table-order-items > tbody > tr > td::before { content: none !important; display: none !important; }
  .account .table-order-items > tbody > tr > td.col.id { grid-column: 1; grid-row: 1; font: 700 15px/1.3 var(--ak-font-ui) !important; color: var(--ak-ink) !important; }
  .account .table-order-items > tbody > tr > td.col.id::after { content: ""; }
  .account .table-order-items > tbody > tr > td.col.status { grid-column: 2; grid-row: 1; justify-self: end; padding: 3px 10px !important; border-radius: 999px; background: #f2f5f4; font: 600 11px/1.4 var(--ak-font-ui) !important; color: var(--ak-ink-2) !important; text-transform: uppercase; letter-spacing: .04em; }
  .account .table-order-items > tbody > tr > td.col.date { grid-column: 1; grid-row: 2; font: 400 13px/1.4 var(--ak-font-ui) !important; color: var(--ak-ink-2) !important; }
  .account .table-order-items > tbody > tr > td.col.total { grid-column: 2; grid-row: 2; justify-self: end; font: 700 15px/1.3 var(--ak-font-ui) !important; color: var(--ak-ink) !important; }
  .account .table-order-items > tbody > tr > td.col.shipping { grid-column: 1 / -1; grid-row: 3; font: 400 12px/1.4 var(--ak-font-ui) !important; color: var(--ak-ink-3) !important; }
  .account .table-order-items > tbody > tr > td.col.shipping::before { content: "Ship to " !important; display: inline !important; font: inherit !important; color: inherit !important; text-transform: none !important; letter-spacing: 0 !important; }
  .account .table-order-items > tbody > tr > td.col.actions { grid-column: 1 / -1; grid-row: 4; display: flex !important; justify-content: flex-end; gap: 16px; margin-top: 6px !important; padding-top: 10px !important; border-top: 1px solid var(--ak-line) !important; }
  .account .table-order-items > tbody > tr > td.col.actions a { font: 600 14px/1 var(--ak-font-ui) !important; }
}

/* order lists: cards / table flush with the page title (the theme indents the wrapper) */
.account .column.main .table-wrapper.orders-history, .account .block-dashboard-orders .table-wrapper { margin-left: 0 !important; margin-right: 0 !important; padding-left: 0 !important; padding-right: 0 !important; border: 0 !important; }
@media (max-width: 768px) {
  .account .table-order-items > tbody > tr > td.col.actions { grid-row: auto !important; margin-top: 4px !important; padding-top: 8px !important; }
  /* order items on phones: one white card per item, no zebra, no "Product Name:" label */
  .account .table-order-items:not(.history) > tbody > tr, .account .order-details-items .table-order-items > tbody > tr { background: #fff !important; }
  .account .order-details-items .table-order-items > tbody > tr > td.col.name::before { content: none !important; display: none !important; }
  .account .order-details-items .table-order-items > tbody > tr > td.col.name { padding-bottom: 10px !important; }
}
/* order items: no zebra rows anywhere (the theme paints every other row and its cells grey) */
.account .order-details-items .table-order-items > tbody > tr, .account .order-details-items .table-order-items > tbody > tr > td, .account .order-details-items .table-order-items > tbody:nth-child(even) > tr, .account .order-details-items .table-order-items > tbody:nth-child(even) > tr > td, .account .order-details-items .table-order-items > tbody > tr:nth-child(even) > td { background: #fff !important; }
@media (max-width: 768px) { .account .order-details-items .table-order-items > tbody > tr > td { text-align: left !important; justify-content: flex-start !important; } }
.account .order-details-items .table-order-items .col.sku { min-width: 130px; overflow-wrap: anywhere; }

/* ==========================================================================
   松本さん指示 2026-10-03 (orders / product / cart / FAQ)
   ========================================================================== */
/* order status pills: green = done, blue = in progress, red = closed/refunded, amber = needs attention, grey = cancelled */
.ak-status { display: inline-flex !important; align-items: center; gap: 6px; width: auto !important; padding: 4px 10px !important; border-radius: 999px !important; font: 700 11px/1.3 var(--ak-font-ui) !important; letter-spacing: .04em; text-transform: uppercase; white-space: nowrap; border: 0 !important; }
.ak-status::before { content: ""; width: 7px; height: 7px; border-radius: 50%; background: currentColor; flex: 0 0 auto; }
body .ak-status.ak-status--ok { --ak-dot: #1d7a45; background: #e3f6ea !important; color: #1d7a45 !important; }
body .ak-status.ak-status--info { --ak-dot: #1f5fbf; background: #e5f0fd !important; color: #1f5fbf !important; }
body .ak-status.ak-status--bad { --ak-dot: #b42828; background: #fde8e8 !important; color: #b42828 !important; }
body .ak-status.ak-status--warn { --ak-dot: #9a5b00; background: #fff1d9 !important; color: #9a5b00 !important; }
body .ak-status.ak-status--off { --ak-dot: #5b6b68; background: #eef1f0 !important; color: #5b6b68 !important; }
/* order numbers / dates read as data */
.account .table-order-items td.col.id, .account .table-order-items td.col.date, .account .order-date { font-variant-numeric: tabular-nums; }

/* order item pictures: the whole picture inside the square (no centre crop) */
.account .table-order-items .ak-order-thumb { background: #fff !important; }
.account .table-order-items .ak-order-thumb img { object-fit: contain !important; padding: 3px; box-sizing: border-box; }

/* invoices / shipments / refunds: SKU not needed */
.sales-order-invoice .table-order-items .col.sku, .sales-order-creditmemo .table-order-items .col.sku, .sales-order-shipment .table-order-items .col.sku { display: none !important; }

/* shipping estimate: the "includes" line as a readable note */
.catalog-product-view .block-shipping-estimation .ak-ship-includes { display: grid; gap: 2px; margin: 12px 0 0 !important; padding: 10px 12px 10px 38px !important; border-radius: 10px; background: #f3f8f7 url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%235b6b68' stroke-width='2' stroke-linecap='round'%3E%3Ccircle cx='12' cy='12' r='9'/%3E%3Cpath d='M12 11v6M12 7.5v.5'/%3E%3C/svg%3E") no-repeat 12px 12px / 18px 18px; color: var(--ak-ink) !important; }
.catalog-product-view .ak-ship-includes__label { font: 700 12px/1.4 var(--ak-font-ui); letter-spacing: .02em; color: var(--ak-ink-2); }
.catalog-product-view .ak-ship-includes__value { font: 500 14px/1.5 var(--ak-font-ui); color: var(--ak-ink); }
/* product gallery: rounded like the listing cards — a hairline frame so the 14px corners show on white product shots */
.catalog-product-view .product.media .fotorama__stage { border-radius: 14px !important; background: #fff !important; box-shadow: inset 0 0 0 1px #e3ecea; }
.catalog-product-view .product.media .fotorama__stage::after { content: ""; position: absolute; inset: 0; border: 1px solid #e3ecea; border-radius: inherit; pointer-events: none; z-index: 3; }
.catalog-product-view .product.media .fotorama__nav__frame--thumb .fotorama__thumb { border-radius: 10px !important; overflow: hidden; background: #fff !important; box-shadow: inset 0 0 0 1px #e3ecea; }
@media (max-width: 768px) { .catalog-product-view .product.media .fotorama__stage { border-radius: 12px !important; } }
/* the PRE ORDER / SOLD OUT ribbon on the gallery must stay under the header dropdowns (it covered "Your Cart") */
.catalog-product-view .product.media .triangle { z-index: 2 !important; }
.minicart-wrapper .block-minicart, .minicart-wrapper .ui-dialog { z-index: 1000 !important; }
/* FAQ pills: icon, name and count on one centre line (the name sat 3.5px low) */
.faq-index-index .faq-group .faq-groupname .group-link { min-height: 0 !important; height: auto !important; line-height: 1.2 !important; align-self: center; margin: 0 !important; }
.faq-index-index .faq-group .faq-group-image .group-link { align-self: center; }
.faq-index-index .faq-group { min-height: 44px !important; padding-top: 0 !important; padding-bottom: 0 !important; }
/* the cell / title badge only holds the pill now */
.account .table-order-items td.col.status.ak-status-cell, .account .page-title-wrapper .order-status.ak-status-cell { background: none !important; border: 0 !important; padding: 0 !important; text-transform: none !important; letter-spacing: 0 !important; }
.account .page-title-wrapper .order-status.ak-status-cell { display: inline-flex !important; margin: 0 0 0 10px !important; vertical-align: middle; }
@media (max-width: 768px) { .account .table-order-items > tbody > tr > td.col.status.ak-status-cell { background: none !important; padding: 0 !important; } }
/* theme pop-ups (checkout "New Address", alerts …): round close button instead of the black square; width left as the theme sets it (checkout is not touched further) */
.modal-popup .action-close, .modal-slide .action-close { width: 40px !important; height: 40px !important; top: 10px !important; right: 10px !important; padding: 0 !important; border-radius: 50% !important; background: #f2f5f4 !important; display: inline-flex !important; align-items: center; justify-content: center; }
.modal-popup .action-close::before, .modal-slide .action-close::before { color: var(--ak-ink) !important; font-size: 18px !important; line-height: 1 !important; margin: 0 !important; }
.modal-popup .action-close:hover, .modal-slide .action-close:hover { background: #e6eeec !important; }

/* ==========================================================================
   Account cross-check fixes 2026-10-03 (19 pages × 1280/820/390)
   ========================================================================== */
/* status pills: text in ink, colour in the dot and the tint (no deep-green text) */
body .ak-status { color: var(--ak-ink) !important; }
body .ak-status::before { background: var(--ak-dot, currentColor) !important; }
/* order pages: title, date and tabs share the left edge (theme clearfix pseudo-elements were flex items) */
.account .page-title-wrapper::before, .account .page-title-wrapper::after, .account .items.order-links::before, .account .items.order-links::after { content: none !important; display: none !important; }
/* order tabs: 36px tall, one line on phones */
.account .items.order-links .item a, .account .items.order-links .item strong { min-height: 36px; display: inline-flex !important; align-items: center; }
/* order information: 4 equal boxes on desktop, 2×2 on tablets, same look on every tab */
.account .block-order-details-view .block-content { display: grid !important; gap: 14px !important; align-items: stretch; }
.account .block-order-details-view .box { height: auto; }
@media (min-width: 1101px) { .account .block-order-details-view .block-content { grid-template-columns: repeat(4, minmax(0, 1fr)) !important; } }
@media (min-width: 769px) and (max-width: 1100px) { .account .block-order-details-view .block-content { grid-template-columns: repeat(2, minmax(0, 1fr)) !important; } }
@media (max-width: 768px) { .account .block-order-details-view .block-content { grid-template-columns: minmax(0, 1fr) !important; } }
.account .box-order-billing-method a[href^="mailto:"], .account .box-order-billing-method td { text-transform: lowercase; }
/* pager on phones: never wider than the screen */
@media (max-width: 480px) {
  .account .order-products-toolbar .pages-items, .account .toolbar .pages .items { flex-wrap: wrap !important; justify-content: center; row-gap: 8px; }
  .account .order-products-toolbar .pages .item .page, .account .order-products-toolbar .pages .item .action { min-width: 36px; height: 36px; }
}
/* reward points: a clean two-column list on phones, minus amounts muted */
@media (max-width: 768px) {
  .points-history-index .table-order-items > tbody > tr > td { display: flex !important; justify-content: space-between; gap: 12px; }
  .points-history-index .table-order-items > tbody > tr > td::before { content: attr(data-th) !important; display: inline !important; font: 600 11px/1.5 var(--ak-font-ui) !important; letter-spacing: .04em; text-transform: uppercase; color: var(--ak-ink-3) !important; }
}
.points-history-index td.col.points { font-weight: 700; font-variant-numeric: tabular-nums; }
.points-history-index td.col.points.ak-minus { color: var(--ak-ink-3) !important; font-weight: 500; }
/* address book table: keep names / cities in one piece; Delete reads as destructive */
.customer-address-index .additional-addresses td.col:not(.streetaddress):not(.actions) { word-break: keep-all; }
#maincontent .additional-addresses a.action.delete, .customer-address-index .additional-addresses .action.delete { color: #b42828 !important; text-decoration-color: rgba(180,40,40,.45) !important; }
/* wishlist: toolbar flush with the title, Qty label on the input's centre line, bigger Edit / Remove on phones */
.wishlist-index-index .wishlist-toolbar, .wishlist-index-index .wishlist-toolbar .pager { padding-left: 0 !important; margin-left: 0 !important; }
.wishlist-index-index .products-grid.wishlist .field.qty { display: flex !important; align-items: center; gap: 8px; }
.wishlist-index-index .products-grid.wishlist .field.qty .label { margin: 0 !important; padding: 0 !important; line-height: 1 !important; }
@media (max-width: 768px) { .wishlist-index-index .products-grid.wishlist .product-item-actions .action { min-height: 36px; min-width: 44px; display: inline-flex !important; align-items: center; justify-content: center; } }

/* ==========================================================================
   Guest cross-check fixes 2026-10-03 (22 pages × 1280/820/390)
   ========================================================================== */
/* desktop gallery: the stage sits right of the 90px thumbnail column, so it must be 90px narrower — otherwise the "next" arrow and the right edge fall outside the frame */
@media (min-width: 1024px) { .catalog-product-view .product.media .fotorama:has(.fotorama__nav--thumbs) .fotorama__stage { max-width: calc(100% - 90px) !important; } }
.catalog-product-view .fotorama__arr:focus-visible { outline: 2px solid #17786a !important; outline-offset: 2px !important; }
/* footer group titles: readable size (were 11px, smaller than the links) */
.section-footer .site-footer .grid h4, .section-footer .site-footer .offer-message h4 { font-size: 13px !important; letter-spacing: .08em !important; }
/* CMS / FAQ / Contact: body text on the title's left edge (the theme pads .columns by 20px) */
:is(.cms-page-view, .faq-index-index, .contact-index-index) .columns { padding-left: 0 !important; padding-right: 0 !important; }
/* copyright bar edge to edge on desktop too */
.section-footer .site-footer .copyright { box-shadow: 0 0 0 100vmax rgba(0,0,0,.08); clip-path: inset(0 -100vmax); }
/* mint buttons always carry white text */
.ak-404-cta .ak-btn-primary, .cms-privacy-policy .column.main p a.ak-btn-primary, .cms-privacy-policy .column.main p a { color: #fff !important; }
/* FAQ: a category jump lands below the sticky header */
.faq-index-index #faq-content > div, .faq-index-index .ui-accordion-header { scroll-margin-top: 72px; }
/* shipping estimate results: no star icons outside the homepage (松本さんルール) → small mint dot */
.catalog-product-view .block-shipping-estimation [data-role="result"] .fa-star, .catalog-product-view .block-shipping-estimation [data-role="result"] i[class*="star"] { font-size: 0 !important; width: 8px; height: 8px; border-radius: 50%; background: var(--ak-mint); display: inline-block; vertical-align: middle; }
.catalog-product-view .block-shipping-estimation [data-role="result"] .fa-star::before, .catalog-product-view .block-shipping-estimation [data-role="result"] i[class*="star"]::before { content: none !important; }
/* contact form: visible field names like the other forms */
.contact-index-index .form.contact .ak-field-label { display: block; margin: 0 0 6px; font: 600 13px/1.3 var(--ak-font-ui); color: var(--ak-ink-2); }
.contact-index-index .form.contact .ak-field-label em { font-style: normal; color: #c2413b; margin-left: 2px; }
/* shipment tab: tracking numbers on one tidy row of chips (label first); linked numbers open the carrier tracking pop-up */
.account .order-tracking { display: flex !important; flex-wrap: wrap; align-items: center; gap: 8px 12px; margin: 4px 0 14px !important; padding: 12px 14px !important; border: 1px solid var(--ak-line); border-radius: 12px; background: #f7faf9; }
.account .order-tracking .tracking-title { float: none !important; width: auto !important; margin: 0 !important; padding: 0 !important; font: 600 12px/1.3 var(--ak-font-ui) !important; letter-spacing: .02em; color: var(--ak-ink-2) !important; text-transform: none !important; }
.account .order-tracking .tracking-content { float: none !important; display: flex !important; flex-wrap: wrap; gap: 8px; margin: 0 !important; padding: 0 !important; }
.account .order-tracking .ak-track-chip { display: inline-flex !important; align-items: center; gap: 6px; min-height: 32px; padding: 0 12px !important; border: 1px solid var(--ak-line); border-radius: 999px; background: #fff; font: 600 13px/1 var(--ak-font-ui) !important; letter-spacing: .02em; font-variant-numeric: tabular-nums; color: var(--ak-ink) !important; text-decoration: none !important; }
.account .order-tracking .ak-track-chip.is-link::after { content: ""; width: 12px; height: 12px; background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%2322302e' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M7 17 17 7M9 7h8v8'/%3E%3C/svg%3E") no-repeat center / contain; }
.account .order-tracking .ak-track-chip.is-link:hover { border-color: var(--ak-mint); background: var(--ak-tint); }
.account .order-tracking .ak-track-chip span { font: inherit !important; }
/* "Track All Shipments" sits above the shipments as a small button */
.account .order-details-items > .actions-toolbar .action.track { display: inline-flex !important; align-items: center; min-height: 36px; padding: 0 14px !important; border: 1px solid var(--ak-line); border-radius: 999px; background: #fff; font: 600 13px/1 var(--ak-font-ui) !important; color: var(--ak-ink) !important; text-decoration: none !important; }
/* tracking pop-up window (opens from the links above): same type and cards as the account pages */
.shipping-tracking-popup .page-title-wrapper .page-title { font: 700 22px/1.3 var(--ak-font-head) !important; text-transform: none !important; color: var(--ak-ink) !important; letter-spacing: 0 !important; }
.shipping-tracking-popup .table-wrapper, .shipping-tracking-popup .tracking { margin: 0 0 14px !important; padding: 12px 14px; border: 1px solid var(--ak-line); border-radius: 12px; background: #fff; }
.shipping-tracking-popup .table-caption, .shipping-tracking-popup caption { font: 700 14px/1.3 var(--ak-font-ui) !important; color: var(--ak-ink) !important; text-align: left; }
.shipping-tracking-popup th, .shipping-tracking-popup th * { font: 600 12px/1.4 var(--ak-font-ui) !important; text-transform: none !important; letter-spacing: 0 !important; color: var(--ak-ink-2) !important; }
.shipping-tracking-popup td { font: 500 14px/1.4 var(--ak-font-ui) !important; color: var(--ak-ink) !important; }
.account .order-tracking .ak-track-chip, .account .order-tracking .ak-track-chip span { text-decoration: none !important; }
.shipping-tracking-popup .tracking .table-wrapper, .shipping-tracking-popup .table-wrapper .table-wrapper { border: 0 !important; padding: 0 !important; margin: 0 !important; background: none !important; }
/* pages reached from the footer / account mails that still had the old look: resend confirmation, guest order lookup ("Order Status" for guests), advanced search */
:is(.customer-account-confirmation, .sales-guest-form, .sales-guest-view, .catalogsearch-advanced-index) .page-title-wrapper { margin: 8px 0 24px !important; }
:is(.customer-account-confirmation, .sales-guest-form, .sales-guest-view, .catalogsearch-advanced-index) .page-title-wrapper .page-title { display: inline-flex; align-items: center; gap: 8px; margin: 0 !important; font: 700 26px/1.2 var(--ak-font-head) !important; letter-spacing: -.01em; color: var(--ak-mint) !important; text-transform: none !important; }
:is(.customer-account-confirmation, .sales-guest-form, .catalogsearch-advanced-index) .column.main form.form { max-width: 520px; margin: 0 auto 0 0; padding: 26px; border: 1.5px solid var(--ak-line); border-radius: var(--ak-radius-lg); background: #fff; box-shadow: var(--ak-shadow); box-sizing: border-box; width: auto !important; }
:is(.customer-account-confirmation, .sales-guest-form, .catalogsearch-advanced-index) .column.main form.form .legend, :is(.customer-account-confirmation, .sales-guest-form, .catalogsearch-advanced-index) .column.main form.form .legend span { margin: 0 0 14px !important; padding: 0 !important; border: 0 !important; font: 700 16px/1.3 var(--ak-font-head) !important; color: var(--ak-ink) !important; text-transform: none !important; letter-spacing: 0 !important; }
:is(.customer-account-confirmation, .sales-guest-form, .catalogsearch-advanced-index) .column.main form.form .actions-toolbar { margin: 18px 0 0 !important; padding: 0 !important; }
:is(.customer-account-confirmation, .sales-guest-form, .catalogsearch-advanced-index) .column.main form.form .actions-toolbar .primary { float: none !important; width: 100%; }
:is(.customer-account-confirmation, .sales-guest-form, .catalogsearch-advanced-index) .column.main form.form .actions-toolbar .action.primary { width: 100%; }
@media (max-width: 768px) { :is(.customer-account-confirmation, .sales-guest-form, .catalogsearch-advanced-index) .column.main form.form { padding: 18px; } }
/* date-of-birth calendar button (added by jQuery UI after load, so style it directly) */
:is(.account, .customer-account-create) .ui-datepicker-trigger { white-space: nowrap !important; flex: 0 0 auto; padding: 0 14px !important; }
/* print pages (reachable by URL / from e-mails): title, status pill and date on clean lines; SKU hidden like on the tabs */
.page-print .page-title-wrapper { display: flex !important; flex-wrap: wrap; align-items: center; gap: 6px 10px; position: static !important; }
.page-print .page-title-wrapper .page-title { margin: 0 !important; position: static !important; }
.page-print .page-title-wrapper .order-date { flex: 0 0 100%; margin: 0 !important; position: static !important; float: none !important; }
:is(.sales-order-printinvoice, .sales-order-printcreditmemo, .sales-order-printshipment) .table-order-items .col.sku { display: none !important; }
/* guest order lookup: the theme styles this one button on its own (square, uppercase) */
body.sales-guest-form .column.main form.form .actions-toolbar button.action.primary, body.sales-guest-form .column.main form.form .actions-toolbar button.action.primary span { border-radius: 999px !important; text-transform: none !important; letter-spacing: .01em !important; font: 600 15px/1 var(--ak-font-ui) !important; }
body.sales-guest-form .column.main form.form .actions-toolbar button.action.primary { min-height: 48px !important; height: auto !important; background: var(--ak-mint) !important; border: 0 !important; color: #fff !important; }
/* advanced search: the multi-select needs its full height */
.catalogsearch-advanced-index .column.main form.form select[multiple] { height: auto !important; min-height: 132px !important; padding: 8px 10px !important; background-image: none !important; }
:is(.customer-account-confirmation, .sales-guest-form, .catalogsearch-advanced-index) .column.main form.form :is(input.input-text, select:not([multiple]), textarea) { min-height: 46px; border: 1.5px solid var(--ak-line) !important; border-radius: 12px !important; padding: 0 14px !important; box-sizing: border-box; }
:is(.customer-account-confirmation, .sales-guest-form, .catalogsearch-advanced-index) .column.main form.form select[multiple] { border: 1.5px solid var(--ak-line) !important; border-radius: 12px !important; }

/* ==========================================================================
   Design pass 2026-10-03 late (松本さんFB: blog / shipping / about / FAQ / gallery / footer / stock labels)
   ========================================================================== */
/* --- product gallery: the outer frame (with the corner ribbon) is rounded; the picture itself stays square so nothing is clipped --- */
.catalog-product-view .product.media .fotorama__stage__frame .fotorama__img, .catalog-product-view .product.media .fotorama__stage img { border-radius: 0 !important; }
.catalog-product-view .product.media .triangle { border-top-left-radius: 14px; overflow: hidden; }
@media (max-width: 768px) { .catalog-product-view .product.media .triangle { border-top-left-radius: 12px; } }
/* --- stock label = ribbon colour (PRE ORDER mint, AS ORDER BASIS blue, OUT OF STOCK pink, in stock green) --- */
.catalog-product-view .product-info-stock-sku .stock .ak-stock-main { display: inline-flex !important; align-items: center; gap: 6px; color: var(--ak-ink) !important; }
.catalog-product-view .product-info-stock-sku .stock .ak-stock-main::before { content: ""; width: 7px; height: 7px; border-radius: 50%; background: currentColor; }
.catalog-product-view .product-info-stock-sku .stock .ak-stock-main.is-preorder { background: #e3f8f4 !important; } .catalog-product-view .product-info-stock-sku .stock .ak-stock-main.is-preorder::before { background: #57d5c2; }
.catalog-product-view .product-info-stock-sku .stock .ak-stock-main.is-asorder { background: #e4f4fe !important; } .catalog-product-view .product-info-stock-sku .stock .ak-stock-main.is-asorder::before { background: #41b7f9; }
.catalog-product-view .product-info-stock-sku .stock .ak-stock-main.is-oos, .catalog-product-view .product-info-stock-sku .stock.unavailable .ak-stock-main { background: #fcecec !important; } .catalog-product-view .product-info-stock-sku .stock .ak-stock-main.is-oos::before, .catalog-product-view .product-info-stock-sku .stock.unavailable .ak-stock-main::before { background: #e69090; }
.catalog-product-view .product-info-stock-sku .stock .ak-stock-main.is-instock { background: #e3f6ea !important; } .catalog-product-view .product-info-stock-sku .stock .ak-stock-main.is-instock::before { background: #2fa866; }

/* --- blog: single post meta row (categories · date), breathing room above the picture --- */
.blog-post-view .post-header .post-category { display: flex !important; flex-wrap: wrap; align-items: center; gap: 8px 10px; margin: 0 0 20px !important; }
.blog-post-view .post-header .ak-post-date { display: inline-flex; align-items: center; gap: 8px; font: 500 13px/1 var(--ak-font-ui); color: var(--ak-ink-2); font-variant-numeric: tabular-nums; }
.blog-post-view .post-header .ak-post-date::before { content: ""; width: 4px; height: 4px; border-radius: 50%; background: var(--ak-ink-3); }
.blog-post-view .post-header .post-data-wrap:has(.post-date.ak-moved) { display: none !important; }
.blog-post-view .post-featured-image, .blog-post-view .post-ftimg-hld { margin: 0 0 28px !important; }
.blog-post-view .post-featured-image img { border-radius: 16px; display: block; width: 100%; height: auto; }
/* --- blog sidebar: categories as a list with count badges --- */
.blog-page .sidebar .block-categories ul { display: flex !important; flex-direction: column; gap: 2px !important; padding: 0 !important; margin: 0 !important; }
.blog-page .sidebar .block-categories li { margin: 0 !important; padding: 0 !important; border: 0 !important; background: none !important; }
.blog-page .sidebar .block-categories li > a { display: flex !important; align-items: center; justify-content: space-between; gap: 12px; min-height: 40px; padding: 8px 10px !important; border: 0 !important; border-radius: 10px !important; background: none !important; font: 500 14px/1.35 var(--ak-font-ui) !important; color: var(--ak-ink) !important; text-decoration: none !important; }
.blog-page .sidebar .block-categories li > a:hover { background: var(--ak-tint) !important; }
.blog-page .sidebar .block-categories .ak-cat-count { flex: 0 0 auto; min-width: 26px; height: 22px; padding: 0 8px; border-radius: 999px; background: #eef3f2; display: inline-flex; align-items: center; justify-content: center; font: 600 12px/1 var(--ak-font-ui); color: var(--ak-ink-2); font-variant-numeric: tabular-nums; }
.blog-page .sidebar .block-categories li > a:hover .ak-cat-count { background: #fff; }
/* --- blog sidebar: archive by year --- */
.blog-page .sidebar .block-archive .ak-archive { display: flex; flex-direction: column; gap: 12px; }
.blog-page .sidebar .block-archive .ak-archive-year { display: grid; grid-template-columns: 46px minmax(0, 1fr); gap: 8px; align-items: start; }
.blog-page .sidebar .block-archive .ak-archive-year.is-older { display: none; }
.blog-page .sidebar .block-archive .ak-archive.is-open .ak-archive-year.is-older { display: grid; }
.blog-page .sidebar .block-archive .ak-archive-y { padding-top: 7px; font: 700 13px/1 var(--ak-font-head); color: var(--ak-ink); font-variant-numeric: tabular-nums; }
.blog-page .sidebar .block-archive .ak-archive-months { display: flex; flex-wrap: wrap; gap: 6px; }
.blog-page .sidebar .block-archive .ak-archive-months a { display: inline-flex; align-items: center; justify-content: center; min-width: 44px; height: 30px; padding: 0 10px; border: 1px solid var(--ak-line); border-radius: 999px; background: #fff; font: 600 12px/1 var(--ak-font-ui) !important; color: var(--ak-ink) !important; text-decoration: none !important; }
.blog-page .sidebar .block-archive .ak-archive-months a:hover, .blog-page .sidebar .block-archive .ak-archive-months a.is-current { border-color: var(--ak-mint); background: var(--ak-tint); }
.blog-page .sidebar .block-archive .ak-archive-more { margin: 12px 0 0; padding: 0; min-height: 36px; border: 0; background: none; font: 600 13px/1 var(--ak-font-ui); color: var(--ak-ink); text-decoration: underline; text-decoration-color: var(--ak-mint); text-underline-offset: 4px; cursor: pointer; }
.blog-page .sidebar .block-archive .ak-archive-more + .ak-archive-more, .blog-page .sidebar .block-archive > .ak-archive-more { display: none; }
@media (max-width: 768px) { .blog-page .sidebar .block-archive .ak-archive-months a { height: 36px; min-width: 48px; } }

/* --- About Us: no 72px hole under the title; each table is a titled card; phones read label above value --- */
.cms-about-us .columns { padding-top: 0 !important; }
.cms-about-us .page-title-wrapper { margin-bottom: 20px !important; }
.cms-about-us .column.main > div:empty { display: none !important; }
.cms-about-us .column.main > div[style] { max-width: 860px; margin: 0 0 24px !important; padding: 20px 22px !important; border: 1px solid var(--ak-line); border-radius: 16px; background: #fff; }
.cms-about-us .column.main > div[style] > p:first-child { margin: 0 0 12px !important; padding: 0 0 12px !important; border-bottom: 1px solid var(--ak-line); }
.cms-about-us .column.main > div[style] > p > strong { font: 700 18px/1.3 var(--ak-font-head) !important; }
.cms-about-us .column.main table, .cms-about-us .column.main table tbody { box-shadow: none !important; background: none !important; border: 0 !important; }
.cms-about-us .column.main table td { background: none !important; vertical-align: top; }
.cms-about-us .column.main table td:first-child { width: 34% !important; color: var(--ak-ink-2) !important; }
.cms-about-us .column.main table td:first-child strong { font-weight: 600 !important; }
.cms-about-us .column.main table tr { height: auto !important; }
@media (max-width: 640px) {
  .cms-about-us .column.main > div[style] { padding: 16px !important; }
  .cms-about-us .column.main table, .cms-about-us .column.main table tbody, .cms-about-us .column.main table tr, .cms-about-us .column.main table td { display: block !important; width: 100% !important; }
  .cms-about-us .column.main table tr { padding: 10px 0 !important; border-bottom: 1px solid var(--ak-line); }
  .cms-about-us .column.main table tr:last-child { border-bottom: 0; }
  .cms-about-us .column.main table td { padding: 0 !important; border: 0 !important; }
  .cms-about-us .column.main table td:first-child { margin: 0 0 2px; font-size: 12px !important; letter-spacing: .02em; }
}

/* --- Shipping Information: calm tables, clear section titles, footnotes as notes --- */
.cms-shipping .columns { padding-top: 0 !important; }
.cms-shipping .ak-ship-h { margin: 32px 0 12px !important; padding: 0 !important; border: 0 !important; font: 700 20px/1.3 var(--ak-font-head) !important; color: var(--ak-ink) !important; text-transform: none !important; letter-spacing: -.01em !important; }
.cms-shipping .ak-ship-h1 { margin-top: 8px !important; }
.cms-shipping .column.main hr { display: none !important; }
.cms-shipping .rg-table th, .cms-shipping .rg-table thead td { text-align: left !important; font: 600 12px/1.35 var(--ak-font-ui) !important; letter-spacing: .02em !important; text-transform: none !important; color: var(--ak-ink-2) !important; padding: 12px 14px !important; }
.cms-shipping .rg-table td { text-align: left !important; padding: 14px !important; font: 400 14px/1.5 var(--ak-font-ui) !important; color: var(--ak-ink) !important; }
.cms-shipping .rg-table td:first-child { font-weight: 600 !important; }
.cms-shipping .rg-table td span[style*="ff0000"], .cms-shipping .rg-table td span[style*="FF0000"] { display: inline-block; margin-left: 4px; padding: 2px 8px; border-radius: 999px; background: #fdecec; color: #b42828 !important; font: 600 11px/1.4 var(--ak-font-ui) !important; }
.cms-shipping .ak-footnote { position: relative; max-width: 860px; margin: 0 0 8px !important; padding: 10px 14px !important; border-radius: 10px; background: #f6f9f8; font: 400 13px/1.6 var(--ak-font-ui) !important; color: var(--ak-ink-2) !important; }
.cms-shipping .ak-footnote:first-of-type { margin-top: 16px !important; }
@media (max-width: 640px) {
  .cms-shipping .rg-table tr { padding: 0 !important; overflow: hidden; border-radius: 14px; }
  .cms-shipping .rg-table td:first-child { padding: 12px 14px !important; background: var(--ak-tint) !important; font: 700 15px/1.35 var(--ak-font-ui) !important; text-align: left !important; }
  .cms-shipping .rg-table td:first-child::before { display: none !important; }
  .cms-shipping .rg-table td:not(:first-child) { display: flex !important; justify-content: space-between; gap: 12px; padding: 8px 14px !important; border-top: 1px solid var(--ak-line) !important; text-align: right !important; font-size: 13px !important; }
  .cms-shipping .rg-table td:not(:first-child)::before { float: none !important; margin: 0 !important; text-align: left; font: 600 12px/1.5 var(--ak-font-ui) !important; letter-spacing: 0 !important; text-transform: none !important; color: var(--ak-ink-3) !important; }
}

/* --- FAQ: less distance to the first question, tighter sections, no "active" topic before scrolling --- */
.faq-index-index .ak-faq-lead { margin: 0 0 14px !important; }
.faq-index-index .faq-groups { margin: 0 0 8px !important; padding: 6px 0 !important; gap: 8px !important; }
.faq-index-index .faq-group, .mageprince-faq-collection .faq-group { min-height: 40px !important; padding: 0 12px 0 10px !important; }
.faq-index-index .faq-group .faq-group-image .group-link img { width: 20px !important; height: 20px !important; }
.faq-index-index #faq-content > div { margin: 0 0 28px !important; padding: 0 !important; }
.faq-index-index #faq-content > div > :first-child, .faq-index-index #faq-content .faq-category-title, .faq-index-index #faq-content h2, .faq-index-index #faq-content h3 { margin-top: 0 !important; }
@media (max-width: 768px) { .faq-index-index .ak-faq-tools { gap: 8px !important; margin-bottom: 10px !important; } }

/* --- footer on phones: same information, ~production height --- */
@media (max-width: 767px) {
  .section-footer .site-footer .wrapper { padding-top: 24px !important; }
  .section-footer .site-footer .grid { gap: 18px 18px !important; }
  .section-footer .site-footer .grid h4 { margin: 0 0 8px !important; }
  .section-footer .site-footer .grid li a { padding: 6px 0 !important; line-height: 1.3 !important; }
  .section-footer .site-footer .grid p { margin: 0 0 6px !important; line-height: 1.45 !important; }
  .section-footer .social-icons { margin: 16px 0 12px !important; }
  .section-footer .social-icons li a { width: 38px !important; height: 38px !important; }
}
/* follow-ups */
.cms-about-us .column.main > div[style]:not(:has(table)) { display: none !important; }
@media (max-width: 640px) { .cms-about-us .column.main table td:first-child { width: 100% !important; } }
.cms-shipping .ak-ship-h1 { margin-top: 26px !important; }
@media (max-width: 640px) {
  .cms-shipping .rg-table td:not(:first-child) { display: block !important; text-align: right !important; overflow: hidden; }
  .cms-shipping .rg-table td:not(:first-child)::before { float: left !important; margin-right: 12px !important; }
}
@media (max-width: 768px) { .faq-index-index .ak-faq-lead { display: none !important; } }
@media (max-width: 767px) { .section-footer .social-icons { margin: 10px 0 6px !important; } .section-footer .social-icons li a { width: 34px !important; height: 34px !important; } }
/* guest order pages: SKU hidden like on the account tabs; guest lookup form intro and member hint */
:is(.sales-guest-invoice, .sales-guest-creditmemo, .sales-guest-shipment) .table-order-items .col.sku { display: none !important; }
.sales-guest-form .ak-guest-lead { max-width: 520px; margin: -8px 0 16px !important; font: 400 14px/1.6 var(--ak-font-ui); color: var(--ak-ink-2); }
.sales-guest-form .ak-guest-note { margin: 14px 0 0 !important; text-align: center; font: 400 13px/1.5 var(--ak-font-ui); color: var(--ak-ink-2); }
.sales-guest-form .ak-guest-note a { color: var(--ak-ink) !important; font-weight: 600; text-decoration: underline; text-decoration-color: var(--ak-mint); text-underline-offset: 3px; }
/* guest order pages are one-column (no account menu): keep the content at a comfortable width */
.ak-guest-order .column.main { max-width: 1040px; }
/* one-column pages (guest lookup, guest orders, confirmation, advanced search): content on the title's left edge */
:is(.sales-guest-form, .sales-guest-view, .sales-guest-invoice, .sales-guest-shipment, .sales-guest-creditmemo, .customer-account-confirmation, .catalogsearch-advanced-index) .columns { padding-left: 0 !important; padding-right: 0 !important; }
/* guest order header: title, status pill and date on clean lines (the theme positions the date over the title here) */
.ak-guest-order .page-title-wrapper { display: flex !important; flex-wrap: wrap; align-items: center; gap: 6px 10px; position: static !important; margin: 8px 0 20px !important; }
.ak-guest-order .page-title-wrapper .page-title, .ak-guest-order .page-title-wrapper .order-status, .ak-guest-order .page-title-wrapper .order-date { position: static !important; float: none !important; margin: 0 !important; }
.ak-guest-order .page-title-wrapper .order-date { flex: 0 0 100%; }
@media (max-width: 768px) { .account .order-details-items .table-order-items > tbody > tr > td.col:is(.total, .subtotal, .discount, .price, .qty) { display: block !important; text-align: left !important; } }

/* ==========================================================================
   Wishlist pass 2026-10-03 night (松本さんFB)
   ========================================================================== */
/* Qty label on the input's centre line */
.wishlist-index-index .products-grid.wishlist .box-tocart .fieldset, .wishlist-index-index .products-grid.wishlist .box-tocart .field.qty { display: flex !important; align-items: center !important; }
.wishlist-index-index .products-grid.wishlist .field.qty { gap: 10px !important; margin: 0 !important; }
.wishlist-index-index .products-grid.wishlist .field.qty .label { display: inline-flex !important; align-items: center; height: auto !important; margin: 0 !important; padding: 0 !important; position: static !important; line-height: 1 !important; }
.wishlist-index-index .products-grid.wishlist .field.qty .control, .wishlist-index-index .products-grid.wishlist .field.qty .input-text.qty { margin: 0 !important; }
/* chosen options always visible inside the card (the "See Details" pop-up spilled out of the card) */
.wishlist-index-index .products-grid.wishlist .product-item-tooltip { position: static !important; display: block !important; margin: 4px 0 6px !important; }
.wishlist-index-index .products-grid.wishlist .product-item-tooltip .tooltip.toggle { display: none !important; }
.wishlist-index-index .products-grid.wishlist .product-item-tooltip .tooltip.content { display: block !important; position: static !important; visibility: visible !important; opacity: 1 !important; width: auto !important; min-width: 0 !important; margin: 0 !important; padding: 0 !important; border: 0 !important; box-shadow: none !important; background: none !important; z-index: auto !important; }
.wishlist-index-index .products-grid.wishlist .product-item-tooltip .tooltip.content::before, .wishlist-index-index .products-grid.wishlist .product-item-tooltip .tooltip.content::after { display: none !important; }
.wishlist-index-index .products-grid.wishlist .product-item-tooltip .tooltip.content .subtitle { display: none !important; }
.wishlist-index-index .products-grid.wishlist .product-item-tooltip dl { display: flex; flex-wrap: wrap; gap: 2px 6px; margin: 0 !important; font: 400 12px/1.4 var(--ak-font-ui) !important; }
.wishlist-index-index .products-grid.wishlist .product-item-tooltip dt { margin: 0 !important; font-weight: 500 !important; color: var(--ak-ink-3) !important; }
.wishlist-index-index .products-grid.wishlist .product-item-tooltip dt::after { content: ":"; }
.wishlist-index-index .products-grid.wishlist .product-item-tooltip dd { margin: 0 !important; color: var(--ak-ink-2) !important; }
.wishlist-index-index .products-grid.wishlist .product-item-tooltip dd + dt { flex-basis: 100%; }
/* no Edit (松本さん), no USD estimate, no underline on product names */
#maincontent .products-grid.wishlist .action.edit, .wishlist-index-index .products-grid.wishlist .action.edit { display: none !important; }
.wishlist-index-index .products-grid.wishlist .usd-price { display: none !important; }
#maincontent .products-grid.wishlist a.product-item-link, #maincontent .products-grid.wishlist .product-item-name a { text-decoration: none !important; }
#maincontent .products-grid.wishlist a.product-item-link:hover { text-decoration: underline !important; text-decoration-color: var(--ak-mint) !important; text-underline-offset: 3px; }
/* Remove stays, on its own */
.wishlist-index-index .products-grid.wishlist .product-item-actions:has(.action.delete) { justify-content: flex-end; }
/* the second (bottom) toolbar keeps only the page numbers */
.wishlist-index-index .wishlist-toolbar.ak-toolbar-bottom .toolbar-amount, .wishlist-index-index .wishlist-toolbar.ak-toolbar-bottom .limiter { display: none !important; }
.wishlist-index-index .wishlist-toolbar.ak-toolbar-bottom:not(:has(.pages .item)) { display: none !important; }
/* form controls: a soft mint focus ring instead of the deep-green outline (mouse clicks on selects show it too) */
.page-main :is(input:not([type=checkbox]):not([type=radio]), select, textarea):focus, .page-main :is(input:not([type=checkbox]):not([type=radio]), select, textarea):focus-visible { outline: none !important; border-color: var(--ak-mint) !important; box-shadow: 0 0 0 3px rgba(87,213,194,.28) !important; }
.page-main a:focus-visible, .page-main button:focus-visible, .page-footer a:focus-visible, .section-footer a:focus-visible, .section-footer button:focus-visible { outline-color: var(--ak-ink) !important; }
.wishlist-index-index .products-grid.wishlist .product-item { border-bottom: 0 !important; }
.wishlist-index-index .products-grid.wishlist .product-items > li::after, .wishlist-index-index .products-grid.wishlist .product-item::after { display: none !important; }

/* ---- 10-03 night: footer height, sign-up/forgot top gap, checkbox row, 404 buttons ---- */
/* footer: social icons now sit under Store Hours (block 36), no separate row; compact newsletter card */
.section-footer .site-footer .grid { margin-bottom: 28px !important; }
@media (min-width: 1024px) { .section-footer .site-footer .grid { grid-template-columns: 1fr 1fr 1.2fr 1.2fr 2fr !important; } .section-footer .site-footer .wrapper { padding-top: 36px !important; } }
@media (max-width: 767px) { .section-footer .site-footer .grid { margin-bottom: 22px !important; } }
.section-footer .site-footer .grid .box-5 .social-icons { display: flex !important; flex-wrap: wrap; justify-content: flex-start; gap: 8px; margin: 14px 0 0 !important; padding: 0 !important; }
.section-footer .site-footer .grid .box-5 .social-icons li { margin: 0 !important; }
.section-footer .site-footer .grid .box-5 .social-icons li a { display: inline-flex !important; width: 36px !important; height: 36px !important; padding: 0 !important; border: 1.5px solid rgba(255,255,255,.7) !important; }
.section-footer .site-footer .newsletter .offer-email { padding: 14px !important; container-type: inline-size; }
.section-footer .site-footer .newsletter .offer-message h4 { margin-bottom: 14px !important; }
.section-footer .site-footer .newsletter .ak-news-pitch { margin: 0 0 10px !important; }
.section-footer .site-footer .newsletter .offer-email #email-footer, .section-footer .site-footer .newsletter .offer-email #subscribe { height: 42px !important; }
@container (min-width: 290px) {
  .section-footer .site-footer .newsletter .offer-email .input-row { flex-wrap: nowrap !important; }
  .section-footer .site-footer .newsletter .offer-email .input-wrapper { flex: 1 1 auto !important; width: auto !important; }
  .section-footer .site-footer .newsletter .offer-email .button-wrapper { flex: 0 0 auto !important; width: auto !important; }
  .section-footer .site-footer .newsletter .offer-email #subscribe { width: auto !important; padding: 0 20px !important; }
}
/* sign-up and forgot-password: the theme's extra 40px above the title (same 28px gap as the other pages) */
.customer-account-create #register-form-now { margin-top: 0 !important; }
.customer-account-forgotpassword .page-main { margin-top: 0 !important; }
/* checkbox rows: box and label on one centre line */
.page-main .field.choice { display: flex !important; align-items: center !important; gap: 10px; }
.page-main .field.choice > input[type=checkbox], .page-main .field.choice > input[type=radio] { flex: 0 0 auto; margin: 0 !important; position: static !important; top: auto !important; }
.page-main .field.choice > label { margin: 0 !important; padding: 0 !important; line-height: 1.3 !important; }
/* 404: same buttons as the rest of the site — mint with white text, white with ink text, same size */
.ak-404-cta { flex-direction: column; align-items: center; }
#maincontent .ak-404-cta a.ak-btn-primary, #maincontent .ak-404-cta a.ak-btn-secondary { width: min(280px, 100%); min-height: 48px !important; box-sizing: border-box; text-decoration: none !important; }
#maincontent .ak-404-cta a.ak-btn-primary, #maincontent .ak-404-cta a.ak-btn-primary:visited { color: #fff !important; }
#maincontent .ak-404-cta a.ak-btn-secondary, #maincontent .ak-404-cta a.ak-btn-secondary:visited { color: var(--ak-ink) !important; }
.ak-btn-secondary { min-height: 48px; }
/* after sign-out: centred card in the site style (title moved into the card) */
.customer-account-logoutsuccess .column.main { text-align: center; }
.ak-logout-card { max-width: 480px; margin: 8px auto 0; padding: 32px 24px 24px; border: 1.5px solid var(--ak-line); border-radius: var(--ak-radius-lg); background: #fff; box-shadow: 0 10px 30px rgba(34,48,46,.06); text-align: center; }
.ak-logout-icon { display: block; width: 56px; height: 56px; margin: 0 auto 14px; border-radius: 50%; background: var(--ak-tint) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%2357d5c2' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 12.5l4.5 4.5L19 7.5'/%3E%3C/svg%3E") center / 28px no-repeat; }
.ak-logout-card .ak-logout-title { margin: 0 0 8px !important; font: 700 24px/1.25 var(--ak-font-head) !important; letter-spacing: -.01em; color: var(--ak-mint) !important; text-transform: none !important; }
.ak-logout-card .ak-logout-text { margin: 0 !important; font: 400 15px/1.6 var(--ak-font-head); color: var(--ak-ink-2); }
.ak-logout-card .ak-logout-text strong { color: var(--ak-ink); font-variant-numeric: tabular-nums; }
.ak-logout-card .ak-404-cta { margin: 22px 0 0; }
@media (max-width: 767px) { .ak-logout-card { padding: 26px 18px 20px; } }
/* forgot password: title in the same style as Create an Account / Sign In, no theme gaps inside the card */
.customer-account-forgotpassword .forgot-title { max-width: 480px; margin: 8px auto 18px !important; padding: 0 !important; text-align: center; }
.customer-account-forgotpassword .forgot-title strong { display: block; margin: 0 0 6px !important; font: 700 26px/1.2 var(--ak-font-head) !important; letter-spacing: -.01em; color: var(--ak-mint) !important; text-transform: none !important; }
.customer-account-forgotpassword .forgot-title .field.note { margin: 0 !important; font: 400 14px/1.6 var(--ak-font-head) !important; color: var(--ak-ink-2) !important; }
.customer-account-forgotpassword .form.password.forget .fieldset { margin-bottom: 20px !important; }
.customer-account-forgotpassword .form.password.forget .fieldset > .field { margin-bottom: 0 !important; }
.customer-account-forgotpassword .form.password.forget .actions-toolbar .primary { margin-bottom: 0 !important; }
.customer-account-forgotpassword .form.password.forget .actions-toolbar .action.submit { width: 100% !important; margin: 0 !important; }
.customer-account-forgotpassword .form.password.forget .actions-toolbar .secondary:not(:has(a:not([style*="none"]):not(.back))) { display: none !important; }
/* footer icons: one row — wider Store Hours column on PC/tablet, centred under the newsletter card on phones */
@media (min-width: 1024px) { .section-footer .site-footer .grid { grid-template-columns: 1fr 1fr 1.2fr 1.35fr 1.8fr !important; } }
@media (min-width: 769px) and (max-width: 1023px) { .section-footer .site-footer .grid { grid-template-columns: 1fr 1fr 1fr 1.35fr !important; } }
.section-footer .site-footer .grid .social-icons { flex-wrap: nowrap !important; gap: 6px !important; }
.section-footer .site-footer .grid .box-4 .social-icons { display: flex !important; justify-content: center; gap: 10px !important; margin: 16px 0 0 !important; padding: 0 !important; }
.section-footer .site-footer .grid .box-4 .social-icons li { margin: 0 !important; }
.section-footer .site-footer .grid .box-4 .social-icons li a { display: inline-flex !important; width: 40px !important; height: 40px !important; padding: 0 !important; border: 1.5px solid rgba(255,255,255,.7) !important; }
@container (min-width: 262px) {
  .section-footer .site-footer .newsletter .offer-email .input-row { flex-wrap: nowrap !important; }
  .section-footer .site-footer .newsletter .offer-email .input-wrapper { flex: 1 1 auto !important; width: auto !important; }
  .section-footer .site-footer .newsletter .offer-email .button-wrapper { flex: 0 0 auto !important; width: auto !important; }
  .section-footer .site-footer .newsletter .offer-email #subscribe { width: auto !important; padding: 0 16px !important; }
}
@container (min-width: 262px) { .section-footer .site-footer .newsletter .offer-email #email-footer { padding: 0 12px !important; font-size: 13px !important; } }
/* header account dropdown (signed out): card, visible labels, same inputs/buttons as the Sign In page */
.page-header .mage-dropdown-dialog:has(.ak-hlogin) { margin-top: 10px !important; border: 1px solid var(--ak-line) !important; border-radius: 16px !important; background: #fff !important; box-shadow: 0 16px 40px rgba(34,48,46,.16) !important; overflow: hidden; }
.page-header .ak-hlogin { width: 320px !important; padding: 20px 20px 18px !important; box-sizing: border-box; background: #fff !important; border: 0 !important; text-align: left !important; }
.page-header .ak-hlogin .block-customer-login { margin: 0 !important; padding: 0 !important; border: 0 !important; box-shadow: none !important; }
.page-header .ak-hlogin-head { margin: 0 0 14px; }
.page-header .ak-hlogin-head strong { display: block; font: 700 18px/1.3 var(--ak-font-head); color: var(--ak-ink); }
.page-header .ak-hlogin-head span { display: block; margin-top: 2px; font: 400 13px/1.5 var(--ak-font-head); color: var(--ak-ink-2); }
.page-header .ak-hlogin .fieldset { margin: 0 !important; padding: 0 !important; }
.page-header .ak-hlogin .fieldset > .field { margin: 0 0 12px !important; padding: 0 !important; }
.page-header .ak-hlogin-label { display: block; margin: 0 0 5px; font: 600 13px/1.3 var(--ak-font-ui); color: var(--ak-ink); text-align: left; }
.page-header .ak-hlogin .input-text { width: 100% !important; height: 44px !important; box-sizing: border-box; padding: 0 14px !important; border: 1.5px solid #d9e6e3 !important; border-radius: 12px !important; background: #fff !important; font: 400 14px/1 var(--ak-font-ui) !important; color: var(--ak-ink) !important; box-shadow: none !important; }
.page-header .ak-hlogin .input-text::placeholder { color: #9aa8a5; }
.page-header .ak-hlogin .input-text:focus { outline: none !important; border-color: var(--ak-mint) !important; box-shadow: 0 0 0 3px rgba(87,213,194,.28) !important; }
.page-header .ak-hlogin .ak-hlogin-forgot { display: inline-block; margin: 8px 0 0; padding: 2px 0; font: 500 13px/1.4 var(--ak-font-ui) !important; color: var(--ak-ink-2) !important; text-decoration: underline !important; text-underline-offset: 3px; text-transform: none !important; }
.page-header .ak-hlogin .ak-hlogin-forgot:hover { color: var(--ak-ink) !important; }
.page-header .ak-hlogin .actions-toolbar { margin: 4px 0 0 !important; padding: 0 !important; }
.page-header .ak-hlogin .actions-toolbar > div { float: none !important; margin: 0 !important; width: 100% !important; text-align: left !important; }
.page-header .ak-hlogin .actions-toolbar .secondary { display: none !important; }
.page-header .ak-hlogin button.action.login.ak-btn-primary { display: flex !important; width: 100% !important; min-height: 46px !important; height: auto !important; margin: 0 !important; line-height: 1 !important; }
.page-header .ak-hlogin-foot { display: flex; flex-direction: column; gap: 8px; margin: 16px -20px -18px; padding: 14px 20px 18px; border-top: 1px solid var(--ak-line); background: #f7fbfa; text-align: center; }
.page-header .ak-hlogin-foot span { font: 500 13px/1.4 var(--ak-font-ui); color: var(--ak-ink-2); }
.page-header .ak-hlogin-foot a.ak-btn-secondary { width: 100%; min-height: 44px !important; box-sizing: border-box; color: var(--ak-ink) !important; text-decoration: none !important; }
.page-header .mage-dropdown-dialog:has(.ak-hlogin) { margin-top: 30px !important; height: auto !important; }
.page-header .ak-hlogin { position: relative !important; top: 0 !important; margin: 0 !important; height: auto !important; }
.page-header .ak-hlogin-head strong { text-transform: none !important; letter-spacing: 0 !important; }
.page-header .mage-dropdown-dialog:has(.ak-hlogin) { z-index: 1000 !important; }
.page-header .ak-hlogin .input-text.mage-error { border-color: var(--ak-red-ink, #c0392b) !important; } .page-header .ak-hlogin div.mage-error { margin: 5px 0 0 !important; font: 500 12px/1.4 var(--ak-font-ui) !important; }
/* tracking row: label and numbers share one text baseline (centre alignment looked off: the label has lowercase/brackets, the numbers are caps only) */
.account .order-tracking { align-items: baseline !important; }
.account .order-tracking .tracking-content { align-items: baseline !important; }
.account .order-tracking .tracking-title { font-size: 13px !important; line-height: 1 !important; }
/* "Track All Shipments" removed (松本さん指示 10-04): each number already links to AfterShip */
.account .order-details-items > .actions-toolbar .action.track, .account .order-details-items.shipments > .actions-toolbar:not(:has(a:not(.track):not(.print))) { display: none !important; }
/* newsletter pitch on one line whenever the card is wide enough (phones 375px and up); shrinks at most to ~12px */
@container (min-width: 300px) { .section-footer .site-footer .newsletter .ak-news-pitch { white-space: nowrap !important; font-size: min(13px, calc(100cqi / 25.6)) !important; } }
/* product options: sold-out choices greyed (desktop browsers; the label " — Out of Stock" is added by pages JS for every device) */
.catalog-product-view select.super-attribute-select option:disabled, .catalog-product-view select.super-attribute-select option.ak-oos-opt { color: #9aa8a5 !important; }
/* confirm dialogs (e.g. "remove this item?" from the mini cart) above the mini cart panel (z-index 1000); Magento gives them 902 inline */
.modals-wrapper .modal-popup.confirm._show { z-index: 1102 !important; }
body:has(.modal-popup.confirm._show) .modals-overlay { z-index: 1101 !important; }
/* mini cart quantity: the theme's 5px bottom margin on the −/+ buttons pushed them 2.5px above the number box */
.minicart-items .details-qty .ak-c-step, .minicart-items .details-qty input.item-qty { margin: 0 !important; vertical-align: middle !important; }
