/* LOTUSIA V24 — cleaner navigation, range-led home page, compact account access and clearer cart details. */

/* Desktop: keep buying actions visible, place everything else in one calm menu. */
.v24-desktop-quick { display: none; }

@media (min-width: 851px) {
  .site-header .nav-links,
  .site-header .menu-button,
  .site-header .mobile-header-cart { display: none !important; }
  .site-header .nav { min-height: 96px; position: relative; }
  .v24-desktop-quick { display: flex; align-items: center; gap: 26px; margin-left: auto; position: relative; }
  .v24-header-shop,
  .v24-header-cart,
  .v24-desktop-menu-button { color: var(--v8-ink); font: 900 .82rem "DM Sans", Arial, sans-serif; white-space: nowrap; }
  .v24-header-shop:hover,
  .v24-header-cart:hover { color: var(--v8-orange); }
  .v24-header-cart { align-items: center; display: inline-flex; gap: 8px; }
  .v24-header-cart span { align-items: center; background: var(--v8-orange); border-radius: 99px; color: #fffdf7; display: inline-flex; font-size: .62rem; height: 22px; justify-content: center; min-width: 22px; }
  .v24-desktop-menu-button { align-items: center; background: #fffdf7; border: 1px solid rgba(7, 48, 38, .25); border-radius: 99px; cursor: pointer; display: inline-flex; gap: 9px; padding: 12px 16px; }
  .v24-desktop-menu-button:hover,
  .v24-desktop-menu-button[aria-expanded="true"] { background: var(--v8-deep); border-color: var(--v8-deep); color: #fffdf7; }
  .v24-desktop-menu-button span { color: var(--v8-orange); font-size: 1.1rem; line-height: .8; }
  .v24-desktop-menu-panel { background: #fffdf7; border: 1px solid rgba(7, 48, 38, .2); box-shadow: 0 18px 42px rgba(7, 48, 38, .16); display: grid; gap: 0; min-width: 225px; opacity: 0; padding: 10px; pointer-events: none; position: absolute; right: 0; top: calc(100% + 14px); transform: translateY(-6px); transition: opacity .16s ease, transform .16s ease; visibility: hidden; z-index: 120; }
  .v24-desktop-menu-panel.is-open { opacity: 1; pointer-events: auto; transform: translateY(0); visibility: visible; }
  .v24-desktop-menu-panel a { border-radius: 4px; color: var(--v8-ink); font: 800 .75rem "DM Sans", Arial, sans-serif; padding: 12px 14px; }
  .v24-desktop-menu-panel a:hover,
  .v24-desktop-menu-panel a.active { background: #e9f0d9; color: var(--v8-deep); }
}

/* One visual composition in the hero shows every launch format, not a lone product. */
.v24-hero-range { min-height: 470px; overflow: hidden; position: relative; }
.v24-hero-range .v15-hero-backdrop { background: linear-gradient(135deg, #e6efd3 0%, #d3e7c2 48%, #efd269 49%, #f4dca0 100%); inset: 0; position: absolute; }
.v24-hero-pack { align-items: center; background: #fff6e5; box-shadow: 10px 14px 22px rgba(12, 64, 51, .18); display: flex; flex-direction: column; gap: 7px; padding: 11px 9px 9px; position: absolute; z-index: 2; }
.v24-hero-pack p, .v24-hero-pack span { color: #0c4033; font: 900 .48rem "DM Sans", Arial, sans-serif; letter-spacing: .08em; margin: 0; text-align: center; text-transform: uppercase; }
.v24-hero-pack span { color: #ad542a; font-size: .44rem; }
.v24-hero-pack img { display: block; height: 230px; max-width: 100%; object-fit: contain; }
.v24-hero-pack-plain { left: 3%; top: 121px; transform: rotate(-8deg); width: 31%; }
.v24-hero-pack-roasted { left: 34%; top: 63px; transform: rotate(2deg); width: 33%; }
.v24-hero-pack-powder { right: 3%; top: 142px; transform: rotate(9deg); width: 30%; }
.v24-hero-range .v15-hero-roundel { align-items: center; background: var(--v8-orange); border: 4px solid #fff8e6; border-radius: 50%; color: #fffdf7; display: grid; font: 900 .57rem/1.45 "DM Sans", Arial, sans-serif; height: 81px; left: 43%; letter-spacing: .07em; place-items: center; position: absolute; text-align: center; top: 20px; transform: rotate(-8deg); width: 81px; z-index: 4; }
.v24-hero-range .v15-hero-roundel b { font: inherit; }

/* Range cards link directly to the selected filtered shop and look like purchase paths. */
.v20-category-card .v21-category-cta { align-items: center; background: var(--v8-orange); border: 1px solid var(--v8-orange); color: #fffdf7; display: inline-flex; font-size: .66rem; font-weight: 800; gap: 15px; margin-top: 16px; padding: 12px 15px; text-shadow: 0 1px 0 rgba(0, 0, 0, .12); }
.v20-category-card .v21-category-cta strong { color: #fffdf7; }
.v20-category-card:hover .v21-category-cta { background: #df5a1e; border-color: #df5a1e; }
.v20-category-card .v21-category-cta strong { font-size: 1rem; transition: transform .18s ease; }
.v20-category-card:hover .v21-category-cta strong { transform: translateX(4px); }

/* A compact, familiar sign-in choice replaces the oversized account banner. */
.v24-account-page .v14-account-hero { min-height: 0; padding: 54px 0 48px; }
.v24-account-page .v14-account-hero h1 { font-size: clamp(2.8rem, 5.2vw, 5rem); max-width: 600px; }
.v24-account-page .v14-account-hero .v8-lead { max-width: 540px; }
.v24-account-page .v16-auth-shell { max-width: 760px; }
.v24-account-page .v16-auth-shell:before { display: none !important; }
.v24-account-page .v16-auth-switcher { border-radius: 12px 12px 0 0; overflow: hidden; }
.v24-account-page .v16-auth-switcher button { min-height: 54px; }
.v24-account-page .v16-auth-shell>.v14-auth-card { padding: 28px 32px; }
.v24-account-page .v14-auth-card h2 { font-size: clamp(2rem, 3vw, 2.8rem); }

/* Real price savings and PIN readiness are readable before checkout; availability is still confirmed later. */
.v24-cart-mrp-total { color: #667d71; }
.v24-cart-mrp-total b { color: #667d71; text-decoration: line-through; }
.v24-cart-saving { background: #eff5dc; border: 1px solid rgba(31, 103, 64, .18); color: #1f6740; padding: 9px 10px; }
.v24-cart-saving[hidden], .v24-cart-mrp-total[hidden] { display: none !important; }
.v24-cart-item-pricing { display: grid; gap: 3px; margin-top: 8px; }
.v24-cart-item-pricing span { color: #6c8176; font-size: .67rem; }
.v24-cart-item-pricing strong { color: var(--v8-ink); font-size: .72rem; }
.v24-cart-item-pricing b { color: #1f6740; font-size: .64rem; }
.v24-cart-line-total { display: grid; gap: 3px; text-align: right; }
.v24-cart-line-total small { color: #6c8176; font-size: .56rem; font-weight: 800; letter-spacing: .06em; text-transform: uppercase; }
.v24-cart-line-total em { color: #1f6740; font-size: .61rem; font-style: normal; font-weight: 900; }
.v24-cart-serviceability { border-top: 1px solid var(--v8-line); border-bottom: 1px solid var(--v8-line); margin: 19px 0; padding: 17px 0; }
.v24-cart-serviceability label { color: var(--v8-ink); display: block; font-size: .75rem; font-weight: 900; margin-bottom: 9px; }
.v24-cart-serviceability>div { display: grid; grid-template-columns: 1fr auto; gap: 7px; }
.v24-cart-serviceability input { background: #fffdf7; border: 1px solid var(--v8-line); color: var(--v8-ink); font: 700 .78rem "DM Sans", Arial, sans-serif; min-width: 0; padding: 11px 12px; }
.v24-cart-serviceability button { background: var(--v8-deep); border: 1px solid var(--v8-deep); color: #fffdf7; cursor: pointer; font: 900 .7rem "DM Sans", Arial, sans-serif; padding: 0 14px; }
.v24-cart-serviceability p { color: #587467; font-size: .66rem; line-height: 1.5; margin: 9px 0 7px; }
.v24-cart-serviceability p.is-ready { color: #1f6740; }
.v24-cart-serviceability p.is-error { color: #a64929; }
.v24-cart-serviceability a { color: var(--v8-ink); font-size: .65rem; font-weight: 900; text-decoration: underline; }
.lotusia-mini-cart-pricing { display: grid; gap: 2px; margin-top: 6px; }
.lotusia-mini-cart-pricing span { color: #6a8074 !important; font-size: .59rem !important; }
.lotusia-mini-cart-pricing b { color: var(--v8-ink); font-size: .62rem; }
.lotusia-mini-cart-pricing em { color: #1f6740; font-size: .56rem; font-style: normal; font-weight: 900; }
.lotusia-mini-cart-line-total { display: grid; gap: 3px; text-align: right; }
.lotusia-mini-cart-line-total small { color: #6a8074; font-size: .5rem; font-weight: 900; letter-spacing: .06em; text-transform: uppercase; }
.lotusia-mini-cart-line-total em { color: #1f6740; font-size: .55rem; font-style: normal; font-weight: 900; }
.lotusia-mini-cart-saving { background: #eff5dc; color: #1f6740 !important; display: grid; gap: 3px; font-size: .68rem !important; margin: 11px 0 !important; padding: 9px 10px; }
.lotusia-mini-cart-saving span { color: #667d71; }
.lotusia-mini-cart-saving b, .lotusia-mini-cart-saving em { color: #1f6740; font-style: normal; font-weight: 900; }

/* Checkout reaches the cart quickly; delivery timing is only shown after a valid PIN lookup. */
.v8-checkout-page .v8-checkout-hero { padding: 30px 0 34px; }
.v8-checkout-page .v8-checkout-hero h1 { font-size: clamp(2.2rem, 4vw, 3.6rem); line-height: .92; }
.v8-checkout-page .v8-checkout-hero .v8-lead { display: none; }
.v8-checkout-page .v8-checkout-content { padding: 34px 0 78px; }
.v16-cart-page .v16-cart-content { padding: 38px 0 96px; }
.v24-delivery-estimate[hidden] { display: none; }
.v24-delivery-estimate small { color: #587467; display: block; font-size: .78rem; line-height: 1.55; }
.v24-checkout-mrp { color: #587467; display: block; font-size: .72rem; margin: 5px 0 8px; }
.v24-checkout-mrp s { margin-right: 7px; }
.v24-checkout-mrp b { color: #1f6740; font-weight: 900; }
.v24-checkout-savings { background: #eff5dc; border: 1px solid rgba(31, 103, 64, .18); color: #1f6740; margin: 13px 0 0; padding: 11px 13px; }
.v24-checkout-savings span { font-size: .79rem; font-weight: 800; }
.v24-checkout-savings b { float: right; font-size: .81rem; }

/* The footer lockup must stay legible on its dark background. */
.v20-footer-brand .footer-logo-image { filter: brightness(0) invert(1) sepia(52%) saturate(646%) hue-rotate(7deg) brightness(104%) contrast(92%); }

@media (max-width: 850px) {
  .v24-hero-range { min-height: 410px; }
  .v24-hero-pack img { height: 190px; }
  .v24-hero-pack-plain { left: 1%; top: 125px; }
  .v24-hero-pack-roasted { left: 34%; top: 55px; }
  .v24-hero-pack-powder { right: 1%; top: 145px; }
  .v24-hero-range .v15-hero-roundel { left: 43%; height: 68px; top: 10px; width: 68px; }
}

@media (max-width: 560px) {
  .v8-checkout-page .v8-checkout-hero { padding: 22px 0 25px; }
  .v8-checkout-page .v8-checkout-hero h1 { font-size: 2.2rem; }
  .v8-checkout-page .v8-checkout-content { padding-top: 22px; }
  .v16-cart-page .v16-cart-content { padding: 24px 0 72px; }
  .v24-checkout-savings b { display: block; float: none; margin-top: 4px; }
  .v24-hero-range { min-height: 355px; margin-top: 20px; }
  .v24-hero-pack { gap: 4px; padding: 7px 5px; }
  .v24-hero-pack p { font-size: .34rem; }
  .v24-hero-pack span { font-size: .32rem; }
  .v24-hero-pack img { height: 160px; }
  .v24-hero-pack-plain { left: -1%; top: 111px; width: 34%; }
  .v24-hero-pack-roasted { left: 33%; top: 53px; width: 34%; }
  .v24-hero-pack-powder { right: -1%; top: 133px; width: 33%; }
  .v24-hero-range .v15-hero-roundel { font-size: .42rem; height: 58px; left: 42%; top: 7px; width: 58px; }
  .v20-category-card .v21-category-cta { font-size: .58rem; padding: 10px 12px; }
  .v24-account-page .v14-account-hero { padding: 36px 0 32px; }
  .v24-account-page .v14-account-hero h1 { font-size: 2.75rem; }
  .v24-account-page .v16-auth-switcher button { min-height: 50px; }
  .v24-account-page .v16-auth-shell>.v14-auth-card { padding: 23px 19px; }
  .v24-cart-serviceability>div { grid-template-columns: 1fr; }
  .v24-cart-serviceability button { min-height: 39px; }
}
