/*
Theme Name: Sushi Saiko Commande
Theme URI: https://example.local
Author: ChatGPT
Description: Thème WordPress/WooCommerce sombre et premium pour restaurant de sushi avec commande en ligne, click & collect et livraison.
Version: 1.0.0
Requires at least: 6.0
Tested up to: 6.8
Requires PHP: 8.1
Text Domain: sushi-saiko
Tags: restaurant, ecommerce, woocommerce, dark, custom-homepage
*/

:root {
  --sushi-black: #050505;
  --sushi-black-2: #0d0d0f;
  --sushi-card: rgba(255,255,255,.065);
  --sushi-card-2: rgba(255,255,255,.095);
  --sushi-border: rgba(255,255,255,.13);
  --sushi-white: #fff;
  --sushi-muted: rgba(255,255,255,.68);
  --sushi-muted-2: rgba(255,255,255,.48);
  --sushi-pink: #f4a6b9;
  --sushi-pink-2: #d97d93;
  --sushi-pink-3: #ffcad6;
  --sushi-red: #e24a63;
  --sushi-shadow: 0 24px 70px rgba(0,0,0,.45);
  --sushi-radius: 24px;
  --sushi-container: 1180px;
}

* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body {
  margin: 0;
  background: var(--sushi-black);
  color: var(--sushi-white);
  font-family: Inter, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Arial, sans-serif;
  line-height: 1.55;
  -webkit-font-smoothing: antialiased;
  overflow-x: hidden;
}
body::before {
  content: "";
  position: fixed;
  inset: 0;
  pointer-events: none;
  opacity: .22;
  background:
    radial-gradient(circle at 12% 8%, rgba(244,166,185,.25), transparent 20%),
    radial-gradient(circle at 88% 32%, rgba(244,166,185,.20), transparent 25%),
    radial-gradient(circle at 50% 100%, rgba(244,166,185,.10), transparent 26%);
  z-index: -3;
}
body::after {
  content: "";
  position: fixed;
  inset: 0;
  pointer-events: none;
  background-image:
    repeating-radial-gradient(ellipse at center, rgba(255,255,255,.05) 0 1px, transparent 1px 100%),
    linear-gradient(120deg, rgba(255,255,255,.03), transparent 28%, rgba(255,255,255,.02) 54%, transparent);
  background-size: 56px 28px, 100% 100%;
  opacity: .12;
  z-index: -2;
}

a { color: inherit; text-decoration: none; }
img { max-width: 100%; height: auto; display: block; }
button, input, textarea, select { font: inherit; }

.sushi-container {
  width: min(var(--sushi-container), calc(100% - 40px));
  margin-inline: auto;
}

/* Header */
.sushi-header {
  position: sticky;
  top: 0;
  z-index: 50;
  background: rgba(5,5,5,.88);
  backdrop-filter: blur(16px);
  border-bottom: 1px solid rgba(255,255,255,.08);
}
.sushi-header__inner {
  min-height: 82px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 28px;
}
.sushi-brand {
  display: inline-flex;
  align-items: baseline;
  gap: 9px;
  white-space: nowrap;
  letter-spacing: .01em;
}
.sushi-brand__script {
  font-family: "Segoe Script", "Brush Script MT", cursive;
  font-size: clamp(30px, 4vw, 45px);
  font-weight: 700;
  line-height: 1;
  color: var(--sushi-white);
}
.sushi-brand__name {
  font-size: clamp(18px, 2vw, 27px);
  font-weight: 800;
  letter-spacing: .12em;
  color: var(--sushi-pink);
}
.sushi-brand__sub {
  display: block;
  margin-top: -6px;
  margin-left: 4px;
  font-size: 10px;
  color: rgba(244,166,185,.72);
  letter-spacing: .3em;
}
.sushi-nav {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 34px;
  color: rgba(255,255,255,.82);
  font-weight: 700;
  font-size: 15px;
}
.sushi-nav a,
.sushi-menu-fallback a {
  position: relative;
  padding: 29px 0;
}
.sushi-nav a::after,
.sushi-menu-fallback a::after {
  content: "";
  position: absolute;
  left: 0;
  bottom: 19px;
  width: 100%;
  height: 3px;
  border-radius: 99px;
  transform: scaleX(0);
  transform-origin: left;
  background: var(--sushi-pink);
  transition: transform .22s ease;
}
.sushi-nav a:hover::after,
.sushi-menu-fallback a:hover::after { transform: scaleX(1); }
.sushi-menu-fallback { display: flex; gap: 28px; list-style: none; padding: 0; margin: 0; }
.sushi-header__actions { display: flex; align-items: center; gap: 14px; }
.sushi-cart-link {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 42px;
  height: 42px;
  border-radius: 14px;
  border: 1px solid rgba(255,255,255,.12);
  background: rgba(255,255,255,.06);
  color: var(--sushi-pink);
  font-weight: 900;
}
.sushi-mobile-toggle { display: none; }

.sushi-btn,
.woocommerce a.button,
.woocommerce button.button,
.woocommerce input.button,
.woocommerce #respond input#submit,
button.single_add_to_cart_button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 10px;
  min-height: 48px;
  border: 0;
  border-radius: 14px;
  padding: 13px 24px;
  cursor: pointer;
  font-weight: 850;
  color: #100b0d !important;
  background: linear-gradient(135deg, var(--sushi-pink), #ffb9ca) !important;
  box-shadow: 0 18px 40px rgba(244,166,185,.22);
  transition: transform .22s ease, box-shadow .22s ease, background .22s ease;
}
.sushi-btn:hover,
.woocommerce a.button:hover,
.woocommerce button.button:hover,
.woocommerce input.button:hover,
.woocommerce #respond input#submit:hover,
button.single_add_to_cart_button:hover {
  transform: translateY(-2px);
  box-shadow: 0 22px 55px rgba(244,166,185,.32);
  background: #fff !important;
}
.sushi-btn--ghost {
  color: #fff !important;
  background: rgba(255,255,255,.045) !important;
  border: 1px solid rgba(255,255,255,.18);
  box-shadow: none;
}
.sushi-btn--ghost:hover { color: var(--sushi-black) !important; background: #fff !important; }

/* Hero */
.sushi-hero {
  position: relative;
  min-height: 725px;
  overflow: hidden;
  border-bottom: 1px solid rgba(255,255,255,.08);
}
.sushi-hero::before {
  content: "";
  position: absolute;
  inset: 0;
  background:
    radial-gradient(circle at 67% 20%, rgba(244,166,185,.18), transparent 27%),
    linear-gradient(90deg, rgba(0,0,0,.2), rgba(0,0,0,.10) 45%, rgba(0,0,0,.45)),
    radial-gradient(circle at 50% 50%, rgba(255,255,255,.08), transparent 25%);
  z-index: 0;
}
.sushi-hero::after,
.sushi-blossom-corner::before,
.sushi-blossom-corner::after {
  content: "";
  position: absolute;
  pointer-events: none;
  background-repeat: no-repeat;
  background-size: contain;
  filter: drop-shadow(0 16px 24px rgba(0,0,0,.55));
  opacity: .95;
}
.sushi-hero::after {
  right: -45px;
  top: 30px;
  width: 355px;
  height: 355px;
  background-image: url("data:image/svg+xml,%3Csvg width='420' height='420' viewBox='0 0 420 420' xmlns='http://www.w3.org/2000/svg'%3E%3Cg fill='none' stroke='%237a3d4b' stroke-width='5' stroke-linecap='round'%3E%3Cpath d='M270 40c-62 84-108 160-170 300'/%3E%3Cpath d='M320 75c-92 58-145 122-245 203'/%3E%3Cpath d='M340 155c-70 28-127 67-198 122'/%3E%3C/g%3E%3Cg fill='%23f4a6b9' opacity='.86'%3E%3Cellipse cx='318' cy='70' rx='28' ry='14' transform='rotate(-28 318 70)'/%3E%3Cellipse cx='290' cy='96' rx='25' ry='13' transform='rotate(38 290 96)'/%3E%3Cellipse cx='343' cy='105' rx='24' ry='13' transform='rotate(19 343 105)'/%3E%3Cellipse cx='312' cy='126' rx='22' ry='12' transform='rotate(-51 312 126)'/%3E%3Ccircle cx='318' cy='103' r='8' fill='%23d97d93'/%3E%3Cellipse cx='260' cy='154' rx='28' ry='14' transform='rotate(-28 260 154)'/%3E%3Cellipse cx='232' cy='180' rx='25' ry='13' transform='rotate(38 232 180)'/%3E%3Cellipse cx='285' cy='189' rx='24' ry='13' transform='rotate(19 285 189)'/%3E%3Cellipse cx='254' cy='210' rx='22' ry='12' transform='rotate(-51 254 210)'/%3E%3Ccircle cx='260' cy='187' r='8' fill='%23d97d93'/%3E%3Cellipse cx='185' cy='245' rx='26' ry='13' transform='rotate(-28 185 245)'/%3E%3Cellipse cx='160' cy='269' rx='22' ry='12' transform='rotate(38 160 269)'/%3E%3Cellipse cx='208' cy='278' rx='23' ry='12' transform='rotate(19 208 278)'/%3E%3Cellipse cx='181' cy='298' rx='20' ry='11' transform='rotate(-51 181 298)'/%3E%3Ccircle cx='185' cy='276' r='7' fill='%23d97d93'/%3E%3C/g%3E%3C/svg%3E");
}
.sushi-blossom-corner::before {
  left: -85px;
  bottom: 40px;
  width: 330px;
  height: 330px;
  transform: rotate(18deg);
  background-image: url("data:image/svg+xml,%3Csvg width='360' height='360' viewBox='0 0 360 360' xmlns='http://www.w3.org/2000/svg'%3E%3Cg fill='none' stroke='%237a3d4b' stroke-width='5' stroke-linecap='round'%3E%3Cpath d='M70 300C115 205 156 121 260 50'/%3E%3Cpath d='M82 250c80-30 135-76 190-135'/%3E%3C/g%3E%3Cg fill='%23f4a6b9' opacity='.72'%3E%3Cellipse cx='114' cy='232' rx='27' ry='14' transform='rotate(-28 114 232)'/%3E%3Cellipse cx='89' cy='258' rx='24' ry='13' transform='rotate(38 89 258)'/%3E%3Cellipse cx='139' cy='264' rx='22' ry='12' transform='rotate(19 139 264)'/%3E%3Cellipse cx='110' cy='286' rx='20' ry='11' transform='rotate(-51 110 286)'/%3E%3Ccircle cx='114' cy='263' r='8' fill='%23d97d93'/%3E%3Cellipse cx='206' cy='128' rx='27' ry='14' transform='rotate(-28 206 128)'/%3E%3Cellipse cx='181' cy='154' rx='24' ry='13' transform='rotate(38 181 154)'/%3E%3Cellipse cx='231' cy='160' rx='22' ry='12' transform='rotate(19 231 160)'/%3E%3Cellipse cx='202' cy='182' rx='20' ry='11' transform='rotate(-51 202 182)'/%3E%3Ccircle cx='206' cy='159' r='8' fill='%23d97d93'/%3E%3C/g%3E%3C/svg%3E");
}
.sushi-hero__grid {
  position: relative;
  z-index: 2;
  display: grid;
  grid-template-columns: 1fr .95fr;
  gap: 40px;
  align-items: center;
  min-height: 640px;
  padding: 82px 0 48px;
}
.sushi-kicker {
  margin: 0 0 18px;
  font-size: 13px;
  font-weight: 900;
  letter-spacing: .24em;
  color: var(--sushi-pink);
  text-transform: uppercase;
}
.sushi-hero h1 {
  margin: 0;
  max-width: 670px;
  font-family: Georgia, "Times New Roman", serif;
  font-size: clamp(54px, 7vw, 92px);
  line-height: .96;
  letter-spacing: -.055em;
  font-weight: 500;
}
.sushi-hero h1 em {
  display: block;
  color: var(--sushi-pink);
  font-style: italic;
}
.sushi-hero__text {
  max-width: 565px;
  margin: 24px 0 0;
  color: rgba(255,255,255,.76);
  font-size: 18px;
}
.sushi-hero__actions {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 16px;
  margin-top: 34px;
}
.sushi-hero__visual {
  min-height: 435px;
  position: relative;
}
.sushi-plate {
  position: absolute;
  right: 0;
  top: 30px;
  width: min(520px, 100%);
  aspect-ratio: 1.18;
  border-radius: 50%;
  background:
    radial-gradient(circle at 50% 42%, rgba(255,255,255,.12), transparent 36%),
    radial-gradient(circle at 50% 50%, #171719 0 50%, #0b0b0d 51% 70%, rgba(0,0,0,0) 71%);
  box-shadow: inset 0 0 0 1px rgba(255,255,255,.08), 0 38px 120px rgba(0,0,0,.65);
}
.sushi-piece {
  position: absolute;
  border-radius: 22px;
  box-shadow: 0 18px 30px rgba(0,0,0,.35);
}
.sushi-piece--nigiri1,
.sushi-piece--nigiri2,
.sushi-piece--nigiri3 {
  width: 118px;
  height: 76px;
  background:
    repeating-linear-gradient(130deg, rgba(255,255,255,.33) 0 4px, rgba(255,255,255,0) 4px 14px),
    linear-gradient(135deg, #ff8a44, #f26335 55%, #c7342b);
  border-radius: 34px 34px 28px 28px;
}
.sushi-piece--nigiri1 { left: 114px; top: 140px; transform: rotate(-13deg); }
.sushi-piece--nigiri2 { left: 215px; top: 122px; transform: rotate(7deg); }
.sushi-piece--nigiri3 { left: 320px; top: 165px; transform: rotate(18deg); background: linear-gradient(135deg, #b92630, #7e141d); }
.sushi-piece--maki {
  width: 76px;
  height: 76px;
  border-radius: 50%;
  background:
    radial-gradient(circle at 50% 50%, #fa8851 0 15%, #e8f3d0 16% 28%, #f5f1e8 29% 52%, #111 53% 70%, #050505 71%);
  border: 3px solid #0a0a0a;
}
.sushi-piece--m1 { left: 164px; top: 242px; }
.sushi-piece--m2 { left: 250px; top: 244px; }
.sushi-piece--m3 { left: 335px; top: 253px; }
.sushi-bowl {
  position: absolute;
  left: 332px;
  top: 38px;
  width: 132px;
  height: 92px;
  border-radius: 50%;
  background: radial-gradient(ellipse at center, #090403 0 42%, #2a2726 43% 54%, #050505 55% 70%, transparent 71%);
  border: 1px solid rgba(255,255,255,.14);
}
.sushi-ginger,
.sushi-wasabi {
  position: absolute;
  border-radius: 50%;
  filter: blur(.1px);
}
.sushi-ginger { width: 78px; height: 54px; right: 68px; top: 109px; background: radial-gradient(circle, #ffc0cd, #d78095 68%, transparent 70%); }
.sushi-wasabi { width: 48px; height: 40px; right: 78px; top: 190px; background: radial-gradient(circle, #9ccf59, #537c24 70%, transparent 71%); }
.sushi-chopsticks {
  position: absolute;
  left: 160px;
  bottom: 88px;
  width: 330px;
  height: 10px;
  transform: rotate(14deg);
}
.sushi-chopsticks::before,
.sushi-chopsticks::after {
  content: "";
  position: absolute;
  width: 100%;
  height: 4px;
  border-radius: 99px;
  background: linear-gradient(90deg, #2a100b, #925a40, #1a0907);
}
.sushi-chopsticks::after { top: 13px; left: 4px; }
.sushi-info-strip {
  position: relative;
  z-index: 2;
  margin: -52px auto 0;
  padding: 0;
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  border: 1px solid var(--sushi-border);
  border-radius: var(--sushi-radius);
  background: rgba(18,18,20,.88);
  box-shadow: var(--sushi-shadow);
  overflow: hidden;
}
.sushi-info-item {
  display: grid;
  grid-template-columns: 44px 1fr;
  align-items: center;
  gap: 16px;
  padding: 24px 26px;
  border-right: 1px solid rgba(255,255,255,.11);
}
.sushi-info-item:last-child { border-right: 0; }
.sushi-icon {
  width: 40px;
  height: 40px;
  display: inline-grid;
  place-items: center;
  border-radius: 14px;
  color: var(--sushi-pink);
  background: rgba(244,166,185,.09);
  font-size: 22px;
}
.sushi-info-item strong { display:block; font-size: 16px; }
.sushi-info-item span { color: var(--sushi-muted); font-size: 14px; }

/* Sections */
.sushi-section { padding: 78px 0; position: relative; }
.sushi-section--tight { padding-top: 58px; }
.sushi-section-head {
  display: flex;
  align-items: end;
  justify-content: space-between;
  gap: 20px;
  margin-bottom: 28px;
}
.sushi-section-head h2,
.sushi-page-title,
.woocommerce-products-header__title.page-title,
.woocommerce div.product .product_title {
  margin: 0;
  font-family: Georgia, "Times New Roman", serif;
  font-weight: 500;
  letter-spacing: -.035em;
  font-size: clamp(34px, 4vw, 54px);
  line-height: 1.06;
}
.sushi-section-head h2::after,
.sushi-page-title::after {
  content: "";
  display: block;
  width: 78px;
  height: 3px;
  margin-top: 14px;
  border-radius: 99px;
  background: var(--sushi-pink);
}
.sushi-section-head p { margin: 0; color: var(--sushi-muted); max-width: 520px; }
.sushi-link { color: var(--sushi-pink); font-weight: 850; }

.sushi-category-grid {
  display: grid;
  grid-template-columns: repeat(6, 1fr);
  gap: 16px;
}
.sushi-category-card {
  min-height: 116px;
  display: grid;
  place-items: center;
  text-align: center;
  gap: 9px;
  padding: 20px 12px;
  border: 1px solid var(--sushi-border);
  border-radius: 18px;
  background: linear-gradient(180deg, rgba(255,255,255,.08), rgba(255,255,255,.035));
  transition: transform .22s ease, border-color .22s ease, background .22s ease;
}
.sushi-category-card:hover { transform: translateY(-4px); border-color: rgba(244,166,185,.5); background: rgba(244,166,185,.08); }
.sushi-category-card__icon { font-size: 34px; color: var(--sushi-pink); }
.sushi-category-card__label { font-weight: 850; }

.sushi-product-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 18px;
}
.sushi-product-card {
  display: grid;
  grid-template-columns: 162px 1fr;
  gap: 18px;
  padding: 16px;
  min-height: 165px;
  border: 1px solid var(--sushi-border);
  border-radius: 20px;
  background: rgba(255,255,255,.055);
  overflow: hidden;
  transition: transform .22s ease, border-color .22s ease;
}
.sushi-product-card:hover { transform: translateY(-3px); border-color: rgba(244,166,185,.45); }
.sushi-product-card__image {
  min-height: 132px;
  border-radius: 16px;
  background:
    radial-gradient(circle at 40% 55%, #ff8451 0 12%, #fff3e9 13% 28%, #111 29% 42%, transparent 43%),
    radial-gradient(circle at 68% 45%, #ff8451 0 12%, #fff3e9 13% 28%, #111 29% 42%, transparent 43%),
    linear-gradient(135deg, #171719, #070707);
  overflow: hidden;
}
.sushi-product-card__image img { width:100%; height:100%; object-fit:cover; min-height: 132px; }
.sushi-product-card__content { display: flex; flex-direction: column; min-width: 0; }
.sushi-product-card h3 { margin: 5px 0 8px; font-size: 18px; line-height: 1.22; }
.sushi-product-card p { margin: 0; color: var(--sushi-muted); font-size: 14px; }
.sushi-price-row { margin-top: auto; display: flex; justify-content: space-between; align-items: center; gap: 12px; }
.sushi-price { color: var(--sushi-pink); font-size: 20px; font-weight: 950; }
.sushi-add {
  width: 38px;
  height: 38px;
  display: inline-grid;
  place-items: center;
  border-radius: 50%;
  background: var(--sushi-pink);
  color: #110b0d;
  font-weight: 950;
}
.sushi-empty-note {
  grid-column: 1/-1;
  padding: 26px;
  border: 1px dashed rgba(244,166,185,.38);
  border-radius: 20px;
  color: var(--sushi-muted);
  background: rgba(244,166,185,.055);
}

.sushi-benefits {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  border: 1px solid var(--sushi-border);
  border-radius: var(--sushi-radius);
  background: linear-gradient(180deg, rgba(255,255,255,.075), rgba(255,255,255,.035));
  box-shadow: var(--sushi-shadow);
  overflow: hidden;
}
.sushi-benefit {
  display: grid;
  grid-template-columns: 52px 1fr;
  gap: 18px;
  padding: 28px;
  border-right: 1px solid rgba(255,255,255,.10);
}
.sushi-benefit:last-child { border-right: 0; }
.sushi-benefit strong { display: block; font-size: 18px; margin-bottom: 3px; }
.sushi-benefit span { color: var(--sushi-muted); }

.sushi-cta-band {
  position: relative;
  overflow: hidden;
  border: 1px solid rgba(244,166,185,.22);
  border-radius: 30px;
  padding: clamp(32px, 5vw, 58px);
  background:
    radial-gradient(circle at 85% 30%, rgba(244,166,185,.24), transparent 28%),
    linear-gradient(135deg, rgba(255,255,255,.095), rgba(255,255,255,.035));
  box-shadow: var(--sushi-shadow);
}
.sushi-cta-band h2 { margin: 0 0 12px; font-family: Georgia, serif; font-size: clamp(34px, 4.5vw, 60px); font-weight: 500; letter-spacing: -.04em; }
.sushi-cta-band p { max-width: 600px; margin: 0 0 24px; color: var(--sushi-muted); font-size: 18px; }

/* Footer */
.sushi-footer {
  margin-top: 60px;
  border-top: 1px solid rgba(255,255,255,.10);
  background: rgba(0,0,0,.35);
}
.sushi-footer__grid {
  display: grid;
  grid-template-columns: 1.4fr 1fr 1fr 1fr;
  gap: 34px;
  padding: 46px 0;
}
.sushi-footer h3,
.sushi-footer h4 { margin: 0 0 12px; color: var(--sushi-pink); }
.sushi-footer p { margin: 0; color: var(--sushi-muted); }
.sushi-footer small { display: block; padding: 18px 0 28px; color: var(--sushi-muted-2); }

/* Pages */
.sushi-page-main { padding: 60px 0; min-height: 58vh; }
.sushi-page-card {
  padding: clamp(24px, 4vw, 48px);
  border: 1px solid var(--sushi-border);
  border-radius: var(--sushi-radius);
  background: rgba(255,255,255,.055);
}
.sushi-page-card :where(p, li) { color: rgba(255,255,255,.78); }
.sushi-page-card h1, .sushi-page-card h2, .sushi-page-card h3 { color: #fff; }

/* WooCommerce */
.woocommerce-page .site-main,
.woocommerce .site-main { width: min(var(--sushi-container), calc(100% - 40px)); margin: 0 auto; padding: 56px 0; }
.woocommerce .woocommerce-breadcrumb { color: var(--sushi-muted-2); margin-bottom: 22px; }
.woocommerce .woocommerce-breadcrumb a { color: var(--sushi-pink); }
.woocommerce ul.products { display: grid; grid-template-columns: repeat(3,1fr); gap: 22px; }
.woocommerce ul.products::before,
.woocommerce ul.products::after { display:none; }
.woocommerce ul.products li.product,
.woocommerce-page ul.products li.product {
  float: none;
  width: auto !important;
  margin: 0 !important;
  padding: 18px;
  border: 1px solid var(--sushi-border);
  border-radius: 22px;
  background: rgba(255,255,255,.055);
  overflow: hidden;
  transition: transform .22s ease, border-color .22s ease;
}
.woocommerce ul.products li.product:hover { transform: translateY(-4px); border-color: rgba(244,166,185,.45); }
.woocommerce ul.products li.product a img {
  border-radius: 18px;
  aspect-ratio: 1.25;
  object-fit: cover;
  background: #111;
}
.woocommerce ul.products li.product .woocommerce-loop-product__title { color: #fff; font-size: 18px; font-weight: 850; }
.woocommerce ul.products li.product .price,
.woocommerce div.product p.price,
.woocommerce div.product span.price { color: var(--sushi-pink); font-weight: 950; font-size: 20px; }
.woocommerce .quantity .qty { min-height: 42px; border-radius: 12px; border: 1px solid rgba(255,255,255,.14); background: rgba(255,255,255,.08); color:#fff; }
.woocommerce div.product div.images img { border-radius: 24px; background:#111; }
.woocommerce div.product .woocommerce-tabs ul.tabs li { background: rgba(255,255,255,.06); border-color: rgba(255,255,255,.12); }
.woocommerce div.product .woocommerce-tabs ul.tabs li a { color: #fff; }
.woocommerce table.shop_table,
.woocommerce form.checkout_coupon,
.woocommerce form.login,
.woocommerce form.register,
.woocommerce-checkout #payment { border-radius: 22px; border-color: rgba(255,255,255,.12); background: rgba(255,255,255,.055); color: #fff; }
.woocommerce table.shop_table th,
.woocommerce table.shop_table td { border-color: rgba(255,255,255,.10); }
.woocommerce-message,
.woocommerce-info,
.woocommerce-error { border-top-color: var(--sushi-pink); background: rgba(255,255,255,.08); color: #fff; }
.woocommerce-message::before,
.woocommerce-info::before { color: var(--sushi-pink); }
.woocommerce form .form-row input.input-text,
.woocommerce form .form-row textarea,
.select2-container--default .select2-selection--single {
  min-height: 46px;
  border-radius: 12px;
  border: 1px solid rgba(255,255,255,.14);
  background: rgba(255,255,255,.08);
  color: #fff;
  padding: 10px 12px;
}
.select2-dropdown { background: #101012; color: #fff; border-color: rgba(255,255,255,.18); }
.select2-container--default .select2-results__option--highlighted[aria-selected] { background: var(--sushi-pink); color:#111; }
.woocommerce label { color: rgba(255,255,255,.82); }
.woocommerce-checkout #payment div.payment_box { background: rgba(255,255,255,.07); color: rgba(255,255,255,.78); }
.woocommerce-checkout #payment div.payment_box::before { border-bottom-color: rgba(255,255,255,.07); }

/* Responsive */
@media (max-width: 1050px) {
  .sushi-nav { display: none; }
  .sushi-mobile-toggle {
    display: inline-flex;
    width: 44px;
    height: 44px;
    place-items: center;
    justify-content: center;
    border: 1px solid rgba(255,255,255,.14);
    border-radius: 14px;
    background: rgba(255,255,255,.06);
    color: #fff;
  }
  .sushi-nav.is-open {
    display: grid;
    position: absolute;
    left: 20px;
    right: 20px;
    top: 82px;
    gap: 0;
    padding: 10px 18px;
    border: 1px solid rgba(255,255,255,.12);
    border-radius: 18px;
    background: rgba(9,9,10,.98);
    box-shadow: var(--sushi-shadow);
  }
  .sushi-nav.is-open a { padding: 14px 0; }
  .sushi-hero__grid { grid-template-columns: 1fr; padding-top: 70px; }
  .sushi-hero__visual { min-height: 360px; order: -1; }
  .sushi-plate { left: 50%; right: auto; transform: translateX(-50%); width: min(480px, 100%); }
  .sushi-info-strip { grid-template-columns: repeat(2, 1fr); margin-top: 0; }
  .sushi-info-item:nth-child(2) { border-right: 0; }
  .sushi-category-grid { grid-template-columns: repeat(3,1fr); }
  .sushi-product-grid,
  .woocommerce ul.products { grid-template-columns: 1fr 1fr; }
  .sushi-benefits { grid-template-columns: 1fr; }
  .sushi-benefit { border-right: 0; border-bottom: 1px solid rgba(255,255,255,.10); }
  .sushi-benefit:last-child { border-bottom: 0; }
  .sushi-footer__grid { grid-template-columns: 1fr 1fr; }
}
@media (max-width: 720px) {
  .sushi-container { width: min(100% - 28px, var(--sushi-container)); }
  .sushi-header__inner { min-height: 72px; }
  .sushi-header__actions .sushi-btn { display:none; }
  .sushi-brand__script { font-size: 32px; }
  .sushi-brand__name { font-size: 18px; }
  .sushi-hero { min-height: auto; }
  .sushi-hero__grid { min-height: auto; padding: 44px 0 34px; }
  .sushi-hero h1 { font-size: clamp(48px, 14vw, 64px); }
  .sushi-hero__visual { min-height: 250px; }
  .sushi-plate { width: 360px; max-width: 100%; top: 0; }
  .sushi-bowl { display:none; }
  .sushi-piece--nigiri1 { left: 80px; top: 110px; transform: rotate(-13deg) scale(.75); }
  .sushi-piece--nigiri2 { left: 150px; top: 97px; transform: rotate(7deg) scale(.75); }
  .sushi-piece--nigiri3 { left: 228px; top: 128px; transform: rotate(18deg) scale(.75); }
  .sushi-piece--m1 { left: 118px; top: 184px; transform: scale(.75); }
  .sushi-piece--m2 { left: 179px; top: 184px; transform: scale(.75); }
  .sushi-piece--m3 { left: 240px; top: 191px; transform: scale(.75); }
  .sushi-ginger { right: 48px; top: 80px; transform: scale(.72); }
  .sushi-wasabi { right: 54px; top: 145px; transform: scale(.72); }
  .sushi-chopsticks { width: 230px; left: 112px; bottom: 72px; }
  .sushi-info-strip,
  .sushi-category-grid,
  .sushi-product-grid,
  .woocommerce ul.products,
  .sushi-footer__grid { grid-template-columns: 1fr; }
  .sushi-info-item { border-right: 0; border-bottom: 1px solid rgba(255,255,255,.10); }
  .sushi-info-item:last-child { border-bottom: 0; }
  .sushi-product-card { grid-template-columns: 1fr; }
  .sushi-product-card__image { min-height: 190px; }
  .sushi-section-head { display:block; }
  .sushi-section-head p { margin-top: 14px; }
  .sushi-section { padding: 54px 0; }
}
