/* EDEN photo-first storefront. Existing checkout and catalogue IDs are preserved. */
body { background: #090909; }
.site-header { padding: 12px clamp(16px, 4vw, 60px); background: rgba(12,12,12,.95); }
.brand { align-items: center; font-size: 27px; white-space: nowrap; }
.brand img { border-radius: 50%; margin-right: 9px; }
.site-header nav a { border: 0; font-size: 14px; }
.site-header nav .nav-menu { background: var(--red); color: white; font-weight: 800; padding: 0 22px; border-radius: 12px; }
.giveaway-announcement { margin: 0; padding: 11px clamp(16px, 4vw, 60px); border-radius: 0; background: #171414; }
.giveaway-announcement-copy strong { font-size: 14px; }
.giveaway-announcement-copy small { font-size: 10px; }
.giveaway-announcement-action { font-size: 12px; }
.menu-hero { position: relative; overflow: hidden; isolation: isolate; margin: 24px auto 0; width: calc(100% - clamp(32px,8vw,120px)); max-width: 1600px; min-height: 380px; border-radius: 26px; background: #171313; }
.menu-hero-photo { position: absolute; z-index: -2; width: 72%; height: 100%; right: 0; top: 0; object-fit: cover; object-position: center; }
.menu-hero::after { content: ''; position: absolute; inset: 0; z-index: -1; background: linear-gradient(90deg,#141212 2%,rgba(20,18,18,.96) 27%,rgba(20,18,18,.3) 65%,rgba(0,0,0,.06)); }
.menu-hero-copy { max-width: 670px; padding: clamp(28px,4vw,58px); }
.menu-hero-copy h1 { margin: 0; font-size: clamp(40px,5.4vw,76px); line-height: 1.02; letter-spacing: -.045em; font-weight: 900; }
.menu-hero-copy h1 span { color: #edba83; }
.menu-hero-copy > p:not(.eyebrow) { color: #c8c0b9; max-width: 380px; font-size: 15px; line-height: 1.6; margin: 18px 0 23px; }
.menu-hero-copy .primary-action { gap: 24px; padding: 15px 22px; border-radius: 12px; font-size: 14px; }
.hero-street-link { position: absolute; right: 24px; bottom: 24px; border: 1px solid #ffffff30; padding: 15px 19px; background: #131010d9; backdrop-filter: blur(14px); border-radius: 14px; }
.hero-street-link span { display: block; font-size: 11px; text-transform: uppercase; color: #eabb88; margin-bottom: 5px; }
.hero-street-link strong { font-size: 16px; }
.category-showcase,.menu-shell,.contact-strip { max-width: 1720px; margin-inline: auto; }
.category-showcase { padding: 42px clamp(16px,4vw,60px) 12px; scroll-margin-top: 95px; }
.showcase-heading { display: flex; align-items: end; justify-content: space-between; gap: 16px; margin-bottom: 22px; }
.showcase-heading .eyebrow { font-size: 11px; margin-bottom: 8px; }
.showcase-heading h2 { margin: 0; font-size: clamp(26px,3.2vw,42px); letter-spacing: -.03em; }
.showcase-heading > a { font-size: 14px; color: #d0c5bb; white-space: nowrap; padding: 9px 0; }
.category-tiles { display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); gap: 16px; }
.category-tile { position: relative; min-height: 190px; aspect-ratio: 1.6; border-radius: 18px; overflow: hidden; background: #27272a; border: 1px solid #ffffff0d; isolation: isolate; transition: border-color .2s,transform .2s; }
.category-tile img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; z-index: -2; transition: transform .3s; }
.category-tile::after { content:'';position: absolute; inset: 0; z-index: -1; background: linear-gradient(0deg,#070707ec,rgba(8,8,8,.1) 80%); }
.category-tile:hover,.category-tile:focus-visible { border-color: #d44; transform: translateY(-3px); }
.category-tile:hover img { transform: scale(1.05); }
.category-tile-copy { position: absolute; bottom: 18px; left: 20px; right: 20px; }
.category-tile-copy strong { display: block; font-size: clamp(17px,1.5vw,23px); line-height: 1.15; }
.category-tile-copy small { display: flex; justify-content: space-between; color: #d0c6c0; font-size: 12px; margin-top: 8px; }
.category-tile-copy small span { color: white; font-size: 19px; line-height: 12px; }
.new-tag { position: absolute; top: 14px; left: 14px; color: #fff; background: var(--red); font-weight: 800; font-size: 10px; padding: 6px 9px; border-radius: 5px; letter-spacing: .06em; }
.category-wordmark { position: absolute; right: 15px; top: 25px; font-weight: 900; font-size: 55px; color: #ffffff18; letter-spacing: -.08em; }
.category-tile--extra { display: none; }
.show-all .category-tile--extra { display: block; }
.more-categories { display: block; margin: 20px auto 0; background: transparent; border: 1px solid #ffffff26; padding: 12px 24px; color: #dfd4ca; border-radius: 10px; cursor: pointer; font: inherit; font-size: 13px; }
.menu-shell { padding-top: 44px; scroll-margin-top: 85px; }
.section-heading h2 { font-size: clamp(28px,3.6vw,44px); letter-spacing: -.025em; }
.menu-navigation { top: 80px; border-radius: 16px; background: #141313f5; }
.menu-grid { grid-template-columns: repeat(4,minmax(0,1fr)); gap: 18px; }
.category-title { display:flex; flex-wrap: wrap; gap: 12px; }
.category-description { flex-basis: 100%; color: var(--muted); font-size: 14px; line-height: 1.6; margin: 0; max-width: 700px; font-weight: 400; }
.menu-item { border-radius: 20px; background: #171616; border: 1px solid #ffffff0b; overflow: hidden; transition: border-color .2s; }
.menu-item:hover { border-color: #ffffff32; }
.product-image-button { display:block; position: relative; width:100%; padding:0; border:0; background: #28282a; cursor: zoom-in; overflow: hidden; }
.product-image-button .item-image { border-radius: 0; width: 100%; height: auto; aspect-ratio: 1.25; object-fit: cover; transition: transform .25s; }
.product-image-button:hover .item-image { transform: scale(1.035); }
.item-new-badge { position:absolute; z-index:2; top:12px; left:12px; display:inline-flex; align-items:center; padding:8px 12px; border:1px solid #ffd1b2; border-radius:999px; background:#c83238; color:#fff; box-shadow:0 5px 18px #0008; font-size:12px; font-weight:900; line-height:1; letter-spacing:.03em; text-transform:uppercase; pointer-events:none; }
.image-expand { position: absolute; bottom: 10px; right: 10px; background: #0007; color: white; border-radius: 50%; width: 28px; height: 28px; display:grid; place-items:center; font-size:17px; }
.item-body { padding: 20px; }
.item-top { display: flex; flex-direction: column; align-items: start; gap: 10px; }
.item-top h4 { font-size: 20px; line-height: 1.2; }
.product-name-button { padding:0; border:0; background:transparent; color:inherit; font:inherit; text-align:left; cursor:pointer; }
.item-top .price { font-size:22px; color: #f5e7dc; }
.item-desc { font-size:13px; line-height:1.6; }
.item-purchase { margin-top:auto; padding-top: 12px; }
.add-to-cart { border-radius: 11px; }
.product-enquiry { display:flex; align-items:center; justify-content:center; min-height:48px; background:#85232a; color:#fff; border-radius:11px; padding:10px 16px; font-size:13px; font-weight:700; }
.contact-strip { margin: 0 auto 40px; padding: 25px clamp(16px,4vw,60px); display:grid; grid-template-columns:repeat(3,1fr); gap:22px; border-block:1px solid #ffffff15; scroll-margin-top:100px; }
.contact-strip span,.contact-strip small { display:block; color:var(--muted); font-size:12px; line-height:1.6; }
.contact-strip strong,.contact-strip a { display:block; font-size:24px; font-weight:800; margin:7px 0; }
.floating-cart:not(.has-items) { display:none; }
.product-dialog { padding:0; width:min(960px,calc(100vw - 32px)); max-height:90dvh; border:1px solid #ffffff26; border-radius:24px; background:#181717; color:var(--text); }
.product-dialog::backdrop { background:#000c; backdrop-filter:blur(7px); }
.product-close { position:absolute; z-index:2; top:12px; right:12px; width:42px; height:42px; border-radius:50%; background:#0c0c0ceb; color:#fff; border:1px solid #ffffff30; font-size:28px; cursor:pointer; }
#productDetail { display:grid; grid-template-columns:1.1fr 1fr; }
.product-detail-photo { position:relative; min-height:400px; background:#27272a; display:grid; place-items:center; }
.product-detail-photo img { width:100%; height:100%; object-fit:contain; }
.product-detail-copy { padding:50px 30px 35px; }
.product-detail-copy h2 { font-size:30px; margin:0 0 20px; line-height:1.15; }
.product-detail-copy > p:not(.eyebrow) { color:var(--muted); line-height:1.7; font-size:15px; }
.product-detail-copy small { color:var(--muted); }
.product-detail-purchase { margin-top:24px; display:grid; gap:18px; }
.product-detail-purchase > strong { font-size:28px; }
.image-note { display:block; font-size:11px; line-height:1.5; margin-top:20px; }
:focus-visible { outline:3px solid var(--gold); outline-offset:4px; }
@media (max-width:1100px) {
  .site-header nav a:not(.nav-menu):not(.giveaway-nav) { display:none; }
  .category-tiles { grid-template-columns:repeat(3,minmax(0,1fr)); }
  .category-tile { min-height:160px; }
  .menu-grid { grid-template-columns:repeat(3,minmax(0,1fr)); }
  .hero-street-link { font-size:12px; }
}
@media (max-width:760px) {
  .site-header { position:sticky; display:flex; flex-direction:row; align-items:center; gap:10px; padding:9px 14px; flex-wrap:nowrap; }
  .brand { font-size:21px; }
  .brand img { width:36px; height:36px; margin-right:6px; }
  .site-header nav { display:none; }
  .cart-header-button { min-height:42px; padding:0 12px; font-size:12px; }
  .giveaway-announcement { padding:10px 15px; }
  .giveaway-announcement-action { display:none; }
  .giveaway-announcement-copy strong { font-size:12px; }
  .menu-hero { width:calc(100% - 24px); margin-top:12px; min-height:410px; border-radius:20px; }
  .menu-hero-photo { width:100%; height:100%; object-position:63% center; opacity:.7; }
  .menu-hero::after { background:linear-gradient(90deg,#0e0c0cee,#0e0c0c22),linear-gradient(0deg,#0e0c0c 0%,transparent 70%); }
  .menu-hero-copy { padding:28px 24px 90px; }
  .menu-hero-copy h1 { font-size:48px; }
  .menu-hero-copy > p:not(.eyebrow) { font-size:13px; max-width:260px; }
  .menu-hero-copy .primary-action { font-size:12px; padding:12px 15px; gap:12px; }
  .hero-street-link { left:24px; right:24px; bottom:18px; padding:12px 15px; }
  .hero-street-link strong { font-size:14px; }
  .hero-street-link span { font-size:9px; }
  .category-showcase { padding:30px 14px 0; scroll-margin-top:80px; }
  .showcase-heading { align-items:center; }
  .showcase-heading h2 { font-size:26px; }
  .showcase-heading > a { font-size:11px; }
  .category-tiles { grid-template-columns:repeat(2,minmax(0,1fr)); gap:10px; }
  .category-tile { min-height:155px; aspect-ratio:1.1; border-radius:14px; }
  .category-tile-copy { left:13px; right:13px; bottom:13px; }
  .category-tile-copy strong { font-size:16px; }
  .category-tile-copy small { font-size:10px; margin-top:6px; }
  .new-tag { top:10px; left:10px; font-size:8px; }
  .menu-shell { padding:34px 14px 36px; scroll-margin-top:75px; }
  .menu-navigation { top:66px; }
  .menu-grid { grid-template-columns:repeat(2,minmax(0,1fr)); gap:10px; }
  .item-body { padding:13px; }
  .item-top h4 { font-size:16px; }
  .item-top .price { font-size:18px; }
  .item-desc { font-size:11px; line-height:1.5; }
  .item-meta { font-size:10px; }
  .product-enquiry { font-size:11px; padding:8px; }
  .menu-item { border-radius:15px; }
  .contact-strip { grid-template-columns:1fr; gap:20px; }
  .contact-strip strong,.contact-strip a { font-size:23px; }
  #productDetail { grid-template-columns:1fr; }
  .product-detail-photo { min-height:0; aspect-ratio:1.15; }
  .product-detail-copy { padding:25px; }
  .product-detail-copy h2 { font-size:26px; }
}
@media (max-width:370px) { .brand img { display:none; } .menu-grid { grid-template-columns:1fr; } .category-tile-copy strong { font-size:14px; } }
@media (prefers-reduced-motion:reduce) { html { scroll-behavior:auto; } .category-tile,.category-tile img,.product-image-button .item-image { transition:none; } }

.account-header-button { min-height:44px; padding:0 15px; border:1px solid #a63b40; border-radius:12px; background:#211719; color:#fff; cursor:pointer; white-space:nowrap; }
.account-dialog { width:min(690px,calc(100vw - 24px)); max-width:none; max-height:min(90dvh,860px); margin:auto; padding:0; overflow:hidden; border:1px solid #ffffff20; border-radius:22px; background:#121010; color:var(--text); box-shadow:0 28px 100px #000c; }
.account-dialog::backdrop { background:#000c; backdrop-filter:blur(6px); }
.account-panel { max-height:min(90dvh,860px); overflow:auto; }
.account-header { position:sticky; top:0; z-index:2; display:flex; align-items:center; justify-content:space-between; gap:16px; padding:18px 22px; border-bottom:1px solid var(--line); background:#121010f5; }
.account-header p,.account-header h2 { margin:0; }
.account-header p { color:var(--gold); font-size:10px; font-weight:900; letter-spacing:.14em; text-transform:uppercase; }
.account-header h2 { margin-top:3px; font-size:29px; }
.account-body { padding:20px; }
.account-mode-switch,.customer-order-tabs { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:6px; padding:5px; border:1px solid var(--line); border-radius:12px; background:#ffffff08; }
.account-mode-switch button,.customer-order-tabs button { min-height:42px; border:0; border-radius:8px; background:transparent; color:var(--muted); cursor:pointer; font-weight:800; }
.account-mode-switch button.is-active,.customer-order-tabs button.is-active { background:#85232a; color:#fff; }
.account-hint { margin:13px 0 18px; color:var(--muted); font-size:13px; line-height:1.5; }
.account-form { display:grid; gap:13px; }
.account-form label > span { display:block; margin-bottom:7px; color:#ead49f; font-size:11px; font-weight:850; letter-spacing:.06em; text-transform:uppercase; }
.account-form input { width:100%; min-height:50px; padding:0 13px; border:1px solid #ffffff26; border-radius:11px; background:#ffffff0c; color:#fff; outline:none; }
.account-form input:focus { border-color:var(--gold); box-shadow:0 0 0 3px #d7b56d20; }
.account-status { min-height:18px; margin:0; color:var(--muted); font-size:12px; line-height:1.5; }
.account-status.is-error { color:#ff9ba0; }
.account-status.is-ok { color:#a8e7ad; }
.account-profile { display:flex; align-items:center; gap:12px; padding:14px; border:1px solid #ffffff1c; border-radius:14px; background:#ffffff08; }
.account-avatar { display:grid; width:42px; height:42px; flex:0 0 auto; place-items:center; border-radius:12px; background:#85232a; color:#fff; font-weight:900; }
.account-profile div { display:grid; min-width:0; gap:4px; }
.account-profile strong { overflow:hidden; text-overflow:ellipsis; }
.account-profile small { color:var(--muted); }
.account-logout { margin-left:auto; min-height:38px; padding:0 12px; border:1px solid #ffffff25; border-radius:9px; background:transparent; color:var(--muted); cursor:pointer; }
.customer-order-tabs { margin-top:18px; }
.customer-orders { display:grid; gap:10px; margin-top:12px; }
.customer-order-card { padding:14px; border:1px solid #ffffff20; border-radius:14px; background:#ffffff08; }
.customer-order-top { display:flex; align-items:flex-start; justify-content:space-between; gap:12px; }
.customer-order-title { font-weight:900; }
.customer-order-date { margin-top:4px; color:var(--muted); font-size:11px; }
.customer-order-status { display:inline-flex; max-width:60%; padding:6px 9px; border-radius:999px; background:#ffffff12; color:#f2dba7; font-size:10px; font-weight:850; line-height:1.35; text-align:center; }
.customer-order-status.is-ready,.customer-order-status.is-paid { background:#173820; color:#a8e7ad; }
.customer-order-status.is-error { background:#421d20; color:#ffb4b8; }
.customer-order-items { margin:12px 0 0; color:#e6ded6; font-size:12px; line-height:1.55; }
.customer-order-total { display:flex; justify-content:space-between; gap:12px; margin-top:12px; padding-top:10px; border-top:1px solid #ffffff16; font-size:12px; }
.customer-orders-empty { padding:30px 16px; border:1px dashed #ffffff2b; border-radius:14px; color:var(--muted); font-size:13px; line-height:1.5; text-align:center; }
.account-profile[hidden],#accountGuest[hidden],#accountSignedIn[hidden],.account-form label[hidden],.customer-orders[hidden] { display:none; }
@media (max-width:760px) { .account-header-button { min-height:42px; padding:0 10px; font-size:11px; } .account-dialog { width:calc(100vw - 16px); max-height:92dvh; border-radius:18px; } .account-panel { max-height:92dvh; } .account-header { padding:14px 16px; } .account-body { padding:14px; } .customer-order-top { gap:7px; } .customer-order-status { max-width:52%; } }

/* Keep the account entry visible beside the cart on narrow phone headers. */
@media (max-width: 760px) {
  .site-header {
    align-items: center;
    flex-direction: row;
    flex-wrap: wrap;
    gap: 8px;
    padding: 10px 12px;
  }

  .site-header > .brand {
    order: 1;
    flex: 1 1 auto;
    min-width: 0;
    align-items: center;
    gap: 2px;
    font-size: clamp(19px, 5.4vw, 25px);
  }

  .site-header > .brand img {
    width: 34px;
    height: 34px;
    flex: 0 0 34px;
  }

  .site-header > nav {
    order: 4;
    flex: 0 0 100%;
    width: 100%;
    flex-wrap: nowrap;
    justify-content: flex-start;
    overflow-x: auto;
    padding-bottom: 1px;
    scrollbar-width: none;
  }

  .site-header > nav::-webkit-scrollbar {
    display: none;
  }

  .site-header > .cart-header-button,
  .site-header > .account-header-button {
    flex: 0 0 auto;
  }

  .site-header > .cart-header-button {
    order: 2;
    gap: 4px;
    min-height: 40px;
    padding-inline: 7px;
    font-size: 11px;
  }

  .site-header > .cart-header-button .cart-count {
    min-width: 22px;
    height: 22px;
    font-size: 11px;
  }

  .site-header > .account-header-button {
    order: 3;
    width: fit-content;
    max-width: 76px;
    min-height: 40px;
    padding: 2px 5px;
    font-size: 10px;
    line-height: 1.1;
    white-space: normal;
    text-align: center;
    overflow-wrap: anywhere;
  }
}

@media (max-width: 360px) {
  .site-header {
    gap: 6px;
    padding-inline: 8px;
  }

  .site-header > .brand {
    font-size: 19px;
  }

  .site-header > .brand img {
    width: 30px;
    height: 30px;
    flex-basis: 30px;
  }

  .site-header > .cart-header-button {
    padding-inline: 5px;
    font-size: 10px;
  }

  .site-header > .cart-header-button .cart-count {
    min-width: 20px;
    height: 20px;
  }

  .site-header > .account-header-button {
    max-width: 70px;
    font-size: 9px;
  }
}

/* Homepage launchpad for new menu items. */
.new-arrivals { max-width:1720px; margin:30px auto 0; padding:24px clamp(16px,4vw,60px) 0; }
.new-arrivals[hidden] { display:none; }
.new-arrivals-heading { display:flex; align-items:end; justify-content:space-between; gap:20px; margin-bottom:18px; }
.new-arrivals-heading .eyebrow { margin:0 0 7px; color:#ef9a76; font-size:11px; letter-spacing:.14em; text-transform:uppercase; }
.new-arrivals-heading h2 { margin:0; font-size:clamp(27px,3.2vw,42px); line-height:1.08; letter-spacing:-.035em; }
.new-arrivals-subtitle { margin:9px 0 0; color:#beb5ae; font-size:14px; line-height:1.5; }
.new-arrivals-controls { display:flex; align-items:center; gap:8px; flex:0 0 auto; }
.new-arrivals-controls button { min-width:42px; height:42px; padding:0 12px; border:1px solid #ffffff26; border-radius:12px; background:#171616; color:#fff; font:inherit; font-weight:800; cursor:pointer; transition:background .18s,border-color .18s,transform .18s; }
.new-arrivals-controls button:hover { border-color:#cb4148; background:#302020; transform:translateY(-1px); }
.new-arrivals-controls button[data-new-arrivals-toggle] { min-width:108px; color:#e7d4c8; font-size:12px; }
.new-arrivals-controls button:disabled { opacity:.6; cursor:default; transform:none; }
.new-arrivals-viewport { overflow:hidden; border:1px solid #ffffff12; border-radius:24px; background:#151313; touch-action:pan-y; }
.new-arrivals-track { display:flex; transition:transform .55s cubic-bezier(.2,.75,.25,1); will-change:transform; }
.new-arrival-slide { flex:0 0 100%; min-width:0; min-height:350px; display:grid; grid-template-columns:minmax(0,1.05fr) minmax(0,1fr); overflow:hidden; background:radial-gradient(ellipse at 70% 0%,#442326 0%,#211819 42%,#151313 100%); }
.new-arrival-photo { position:relative; display:grid; place-items:center; min-width:0; min-height:350px; padding:0; overflow:hidden; border:0; background:#29282a; cursor:pointer; isolation:isolate; }
.new-arrival-photo::after { content:""; position:absolute; inset:0; z-index:0; background:linear-gradient(90deg,transparent 70%,#17141480),linear-gradient(0deg,#100d0dcc,transparent 45%); pointer-events:none; }
.new-arrival-photo img { position:absolute; inset:0; width:100%; height:100%; object-fit:cover; transition:transform .4s; }
.new-arrival-photo:hover img { transform:scale(1.035); }
.new-arrival-badge { position:absolute; z-index:1; top:20px; left:20px; padding:9px 13px; border:1px solid #ffd1b2; border-radius:999px; background:#c83238; color:#fff; font-size:11px; font-weight:900; letter-spacing:.08em; text-transform:uppercase; box-shadow:0 6px 20px #0007; }
.new-arrival-photo-hint { position:absolute; z-index:1; bottom:20px; left:22px; color:#fff; font-size:12px; font-weight:700; text-shadow:0 2px 12px #000; }
.new-arrival-placeholder { display:grid; place-items:center; width:100%; height:100%; min-height:260px; background:radial-gradient(circle at 50% 42%,#63282c,#242020 67%); color:#ffffff2e; font-size:clamp(44px,8vw,95px); font-weight:1000; letter-spacing:-.09em; }
.new-arrival-copy { align-self:center; padding:clamp(24px,4vw,58px); }
.new-arrival-copy .eyebrow { margin:0 0 12px; color:#edba83; font-size:11px; letter-spacing:.13em; text-transform:uppercase; }
.new-arrival-copy h3 { margin:0; font-size:clamp(25px,3vw,39px); line-height:1.12; letter-spacing:-.035em; }
.new-arrival-copy h3 button { padding:0; border:0; background:transparent; color:inherit; font:inherit; text-align:left; cursor:pointer; }
.new-arrival-meta { display:inline-block; margin-top:12px; color:#f1b28a; font-size:12px; font-weight:700; }
.new-arrival-description { display:-webkit-box; max-width:560px; margin:15px 0 0; overflow:hidden; color:#c7bfba; font-size:14px; line-height:1.7; -webkit-box-orient:vertical; -webkit-line-clamp:4; }
.new-arrival-purchase { display:flex; align-items:center; flex-wrap:wrap; gap:10px 14px; margin-top:26px; }
.new-arrival-purchase > strong { color:#fff1e6; font-size:27px; white-space:nowrap; }
.new-arrival-purchase > s { color:#aaa09a; font-size:14px; }
.new-arrival-purchase .add-to-cart { margin-left:auto; }
.new-arrivals-footer { display:flex; align-items:center; justify-content:space-between; gap:12px; padding:14px 4px 0; color:#958b85; font-size:11px; }
.new-arrivals-dots { display:flex; align-items:center; gap:8px; }
.new-arrivals-dots button { width:8px; height:8px; padding:0; border:0; border-radius:99px; background:#68605c; cursor:pointer; transition:width .2s,background .2s; }
.new-arrivals-dots button.is-active { width:24px; background:#e45b52; }
.new-arrivals-dots button:focus-visible { outline:2px solid #fff; outline-offset:3px; }
.new-arrivals-status { position:absolute; width:1px; height:1px; padding:0; margin:-1px; overflow:hidden; clip:rect(0,0,0,0); white-space:nowrap; border:0; }
@media (max-width:1100px) {
  .new-arrival-slide { min-height:320px; }
  .new-arrival-photo { min-height:320px; }
  .new-arrival-copy { padding:26px; }
}
@media (max-width:760px) {
  .new-arrivals { margin-top:18px; padding:18px 14px 0; }
  .new-arrivals-heading { align-items:center; gap:12px; margin-bottom:14px; }
  .new-arrivals-heading h2 { font-size:26px; }
  .new-arrivals-subtitle { max-width:330px; margin-top:6px; font-size:12px; }
  .new-arrivals-controls { gap:6px; }
  .new-arrivals-controls button { min-width:38px; height:38px; border-radius:10px; }
  .new-arrivals-controls button[data-new-arrivals-toggle] { min-width:0; padding:0 9px; font-size:10px; }
  .new-arrivals-viewport { border-radius:18px; }
  .new-arrival-slide { display:flex; flex-direction:column; min-height:0; }
  .new-arrival-photo { min-height:0; height:clamp(185px,56vw,290px); flex:0 0 auto; }
  .new-arrival-photo img { object-position:center 54%; }
  .new-arrival-photo::after { background:linear-gradient(0deg,#100d0dcc,transparent 52%); }
  .new-arrival-badge { top:13px; left:13px; padding:7px 10px; font-size:9px; }
  .new-arrival-photo-hint { bottom:13px; left:15px; font-size:11px; }
  .new-arrival-copy { padding:18px 17px 19px; }
  .new-arrival-copy .eyebrow { margin-bottom:8px; font-size:9px; }
  .new-arrival-copy h3 { font-size:24px; }
  .new-arrival-meta { margin-top:8px; font-size:11px; }
  .new-arrival-description { margin-top:9px; font-size:12px; line-height:1.55; -webkit-line-clamp:3; }
  .new-arrival-purchase { margin-top:17px; gap:9px; }
  .new-arrival-purchase > strong { font-size:23px; }
  .new-arrival-purchase .add-to-cart { margin-left:auto; min-height:43px; padding:8px 12px; }
  .new-arrival-purchase .quantity-control { margin-left:auto; }
  .new-arrivals-footer { padding-top:11px; }
}
@media (max-width:400px) {
  .new-arrivals-heading { align-items:flex-start; flex-direction:column; }
  .new-arrivals-controls { align-self:flex-end; margin-top:-4px; }
  .new-arrival-purchase .add-to-cart strong { font-size:11px; }
}
@media (prefers-reduced-motion:reduce) {
  .new-arrivals-track,.new-arrivals-controls button,.new-arrivals-dots button,.new-arrival-photo img { transition:none; }
}
