/* ============================================================================
   SoftCrafter v2.5 — Store / Category / Order / Cart pages
   Loaded only when $inShoppingCart is true (see includes/head.tpl), and scoped
   to body.page-order so the client area & admin are never affected.
   Visual layer only — no markup/logic changes to the cart/order flow.
   ============================================================================ */

/* ------------------------------------------------------------------ FONTS -- */
@font-face{font-family:'Chakra Petch';font-style:normal;font-weight:300;font-display:swap;src:url('../fonts/chakrapetch-300-latin-ext.woff2') format('woff2');unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF;}
@font-face{font-family:'Chakra Petch';font-style:normal;font-weight:300;font-display:swap;src:url('../fonts/chakrapetch-300-latin.woff2') format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD;}
@font-face{font-family:'Chakra Petch';font-style:normal;font-weight:400;font-display:swap;src:url('../fonts/chakrapetch-400-latin-ext.woff2') format('woff2');unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF;}
@font-face{font-family:'Chakra Petch';font-style:normal;font-weight:400;font-display:swap;src:url('../fonts/chakrapetch-400-latin.woff2') format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD;}
@font-face{font-family:'Chakra Petch';font-style:normal;font-weight:500;font-display:swap;src:url('../fonts/chakrapetch-500-latin-ext.woff2') format('woff2');unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF;}
@font-face{font-family:'Chakra Petch';font-style:normal;font-weight:500;font-display:swap;src:url('../fonts/chakrapetch-500-latin.woff2') format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD;}
@font-face{font-family:'Chakra Petch';font-style:normal;font-weight:600;font-display:swap;src:url('../fonts/chakrapetch-600-latin-ext.woff2') format('woff2');unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF;}
@font-face{font-family:'Chakra Petch';font-style:normal;font-weight:600;font-display:swap;src:url('../fonts/chakrapetch-600-latin.woff2') format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD;}
@font-face{font-family:'Chakra Petch';font-style:normal;font-weight:700;font-display:swap;src:url('../fonts/chakrapetch-700-latin-ext.woff2') format('woff2');unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF;}
@font-face{font-family:'Chakra Petch';font-style:normal;font-weight:700;font-display:swap;src:url('../fonts/chakrapetch-700-latin.woff2') format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD;}
@font-face{font-family:'Onest';font-style:normal;font-weight:400;font-display:swap;src:url('../fonts/onest-400-latin-ext.woff2') format('woff2');unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF;}
@font-face{font-family:'Onest';font-style:normal;font-weight:400;font-display:swap;src:url('../fonts/onest-400-latin.woff2') format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD;}
@font-face{font-family:'Onest';font-style:normal;font-weight:500;font-display:swap;src:url('../fonts/onest-500-latin-ext.woff2') format('woff2');unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF;}
@font-face{font-family:'Onest';font-style:normal;font-weight:500;font-display:swap;src:url('../fonts/onest-500-latin.woff2') format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD;}
@font-face{font-family:'Onest';font-style:normal;font-weight:600;font-display:swap;src:url('../fonts/onest-600-latin-ext.woff2') format('woff2');unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF;}
@font-face{font-family:'Onest';font-style:normal;font-weight:600;font-display:swap;src:url('../fonts/onest-600-latin.woff2') format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD;}
@font-face{font-family:'Onest';font-style:normal;font-weight:700;font-display:swap;src:url('../fonts/onest-700-latin-ext.woff2') format('woff2');unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF;}
@font-face{font-family:'Onest';font-style:normal;font-weight:700;font-display:swap;src:url('../fonts/onest-700-latin.woff2') format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD;}
@font-face{font-family:'Onest';font-style:normal;font-weight:800;font-display:swap;src:url('../fonts/onest-800-latin-ext.woff2') format('woff2');unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF;}
@font-face{font-family:'Onest';font-style:normal;font-weight:800;font-display:swap;src:url('../fonts/onest-800-latin.woff2') format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD;}

/* --------------------------------------------------------------- TOKENS -- */
body.page-order{
  --sc-brand:#0533ff;--sc-brand-600:#0429d6;--sc-brand-700:#0322ad;--sc-brand-on-dark:#7a97ff;
  --sc-accent:#fe6e00;--sc-ink:#1a1d2e;--sc-ink-2:#0f1117;--sc-bg:#f0f1fa;--sc-bg-tint:#e8edff;
  --sc-surface:#fff;--sc-muted:#565d7a;--sc-muted-2:#8b90a6;--sc-line:rgba(20,23,46,.10);
  --sc-line-dark:rgba(255,255,255,.10);
  --sc-radius:10px;--sc-radius-lg:16px;--sc-radius-sm:8px;--sc-shadow:0 4px 16px rgba(20,23,46,.08);
  --sc-shadow-lg:0 18px 40px rgba(5,51,255,.14);
  --sc-display:'Chakra Petch',ui-sans-serif,system-ui,"Segoe UI",Roboto,sans-serif;
  --sc-body:'Onest','Inter',ui-sans-serif,system-ui,"Segoe UI",Roboto,sans-serif;
}

/* --------------------------------------------------------------- BASE ----- */
body.page-order{background:var(--sc-bg);font-family:var(--sc-body);color:var(--sc-ink);-webkit-font-smoothing:antialiased;}
body.page-order h1,body.page-order h2,body.page-order h3,body.page-order h4,
body.page-order .section-title,body.page-order .panel-title,body.page-order .package-title{
  font-family:var(--sc-display);color:var(--sc-ink);letter-spacing:-.01em;
}

/* ------------------------------------------------------- PAGE HEADER ------ */
body.page-order .main-header{background:transparent;border-bottom:1px solid var(--sc-line);}
body.page-order .main-header h1,
body.page-order .page-header h1,
body.page-order .pageheader-title{font-weight:700;font-size:clamp(1.9rem,3.2vw,2.8rem);line-height:1.05;}
body.page-order .main-header .tagline,
body.page-order .pageheader-desc{color:var(--sc-muted);font-family:var(--sc-body);}

/* ------------------------------------------------------- SIDEBAR ---------- */
body.page-order .panel-sidebar{
  background:#fff;border:1px solid var(--sc-line);border-radius:var(--sc-radius-lg);
  box-shadow:var(--sc-shadow);overflow:hidden;margin-bottom:1.25rem;
}
body.page-order .panel-sidebar .panel-heading{background:transparent;border-bottom:1px solid var(--sc-line);padding:1rem 1.25rem;}
body.page-order .panel-sidebar .panel-title{font-family:var(--sc-display);font-weight:600;font-size:.8rem;letter-spacing:.16em;text-transform:uppercase;color:var(--sc-muted-2);margin:0;}
body.page-order .panel-sidebar .list-group{padding:.5rem;}
/* theme skins sidebar states with very high specificity — match it + !important */
body.page-order .panel-sidebar .list-group > a.list-group-item{
  border:0!important;border-radius:var(--sc-radius-sm)!important;padding:.7rem .85rem!important;
  color:var(--sc-ink)!important;font-family:var(--sc-body);font-weight:500;
  background:transparent!important;transition:background .2s,color .2s;
}
body.page-order .panel-sidebar .list-group > a.list-group-item:hover{background:var(--sc-bg-tint)!important;color:var(--sc-brand)!important;}
body.page-order .panel-sidebar .list-group > a.list-group-item.active,
body.page-order .panel-sidebar .list-group > a.list-group-item.active:hover,
body.page-order .panel-sidebar .list-group > a.list-group-item.active:focus{background:var(--sc-brand)!important;color:#fff!important;}
/* the item's <i class="ls ls-box"> keeps the theme's own icon colour
   (--panel-sidebar-link-active-icon-color -> #0533ff), which is invisible on our
   solid brand-blue active pill. Theme selector is (0,6,2) so !important is needed. */
body.page-order .panel-sidebar .list-group > a.list-group-item > i{color:var(--sc-brand)!important;transition:color .2s;}
body.page-order .panel-sidebar .list-group > a.list-group-item.active > i,
body.page-order .panel-sidebar .list-group > a.list-group-item.active:hover > i,
body.page-order .panel-sidebar .list-group > a.list-group-item.active:focus > i{color:#fff!important;}
body.page-order .panel-sidebar .panel-body{padding:1rem 1.25rem;}
body.page-order .panel-sidebar .form-control,
body.page-order .panel-sidebar select{border-radius:var(--sc-radius-sm);border:1px solid var(--sc-line);font-family:var(--sc-body);}

/* ------------------------------------------------------- BUTTONS ---------- */
body.page-order .btn{font-family:var(--sc-display);font-weight:600;letter-spacing:.03em;border-radius:var(--sc-radius-sm);transition:transform .25s,box-shadow .25s,background-color .25s,color .25s,border-color .25s;}
body.page-order .btn-primary,body.page-order .btn-primary:focus{background:var(--sc-brand);border-color:var(--sc-brand);color:#fff;box-shadow:0 6px 18px rgba(5,51,255,.28);}
body.page-order .btn-primary:hover{background:var(--sc-brand-600);border-color:var(--sc-brand-600);transform:translateY(-2px);box-shadow:0 12px 26px rgba(5,51,255,.36);}
body.page-order .btn-default{border-radius:var(--sc-radius-sm);border:1px solid var(--sc-line);font-family:var(--sc-display);font-weight:500;}
body.page-order .btn-default:hover{border-color:var(--sc-brand);color:var(--sc-brand);}

/* ------------------------------------------------------- PACKAGE CARDS ---- */
body.page-order .section.products .package,
body.page-order .package{
  background:#fff;border:1px solid var(--sc-line);border-radius:var(--sc-radius-lg);
  box-shadow:var(--sc-shadow);overflow:hidden;height:100%;
  transition:transform .3s ease,box-shadow .3s ease,border-color .3s ease;
}
body.page-order .section.products .package:hover{transform:translateY(-5px);box-shadow:var(--sc-shadow-lg);border-color:var(--sc-brand);}
body.page-order .package-header{padding:1.6rem 1.6rem 0;}
body.page-order .package-title{font-family:var(--sc-display);font-weight:700;font-size:1.35rem;color:var(--sc-ink);}
body.page-order .package-price{font-family:var(--sc-display);font-weight:700;color:var(--sc-ink);}
body.page-order .package-price .currency,
body.page-order .package-price .term{font-family:var(--sc-body);font-weight:400;color:var(--sc-muted-2);}
body.page-order .package-body,
body.page-order .package-content{padding:1rem 1.6rem;color:var(--sc-muted);}
body.page-order .package-footer{padding:1.25rem 1.6rem 1.6rem;}
body.page-order .package-footer .btn{width:100%;}
body.page-order .package-content b,
body.page-order .package-content strong{color:var(--sc-ink);}

/* ------------------------------------------------------- SECTIONS/PANELS -- */
body.page-order .section-title{font-weight:700;}
body.page-order .panel,
body.page-order .panel-form{background:#fff;border:1px solid var(--sc-line);border-radius:var(--sc-radius-lg);box-shadow:var(--sc-shadow);}
body.page-order .panel-heading{background:transparent;}
body.page-order .form-control,
body.page-order select.form-control,
body.page-order .input-lg{border-radius:var(--sc-radius-sm);border:1px solid var(--sc-line);font-family:var(--sc-body);}
body.page-order .form-control:focus{border-color:var(--sc-brand);box-shadow:0 0 0 3px rgba(5,51,255,.12);}

/* order/config summary + cart tables */
body.page-order .order-summary,
body.page-order .cart-summary,
body.page-order .table{border-radius:var(--sc-radius);}
body.page-order .store-order-container h1{font-family:var(--sc-display);font-weight:700;}

/* store landing hero (if a store category has a banner) */
body.page-order .store-header .section-title,
body.page-order .store-banner .banner-title{font-family:var(--sc-display);}

/* ------------------------------------------------------- FOOTER (match landing dark v2.5) */
body.page-order .main-footer{background:var(--sc-ink-2);color:#c7cbe0;}
body.page-order .main-footer .footer-top{background:transparent;border-top:1px solid var(--sc-line-dark);padding:56px 0;}
body.page-order .main-footer .footer-title{font-family:var(--sc-display);font-weight:600;color:#fff;letter-spacing:.02em;}
body.page-order .main-footer .footer-nav a{color:#9298b8;transition:color .2s;}
body.page-order .main-footer .footer-nav a:hover{color:var(--sc-brand-on-dark);}
body.page-order .main-footer .footer-company-desc{color:#9298b8;}
body.page-order .main-footer .footer-bottom{border-top:1px solid var(--sc-line-dark);padding:20px 0;}
body.page-order .main-footer .footer-copyright{color:#8b90a6;}
body.page-order .main-footer .footer-nav a,
body.page-order .main-footer .footer-company-socials a{opacity:1;}

/* ------------------------------------------------------- RESPONSIVE ------- */
@media (max-width:767px){
  body.page-order .package-footer .btn{width:100%;}
}

/* ==========================================================================
   STORE CATEGORY PACKAGE LIST — SoftCrafter v2.6 "strip showcase"
   Scope: body.page-products  (store category / package listing only).
   Cart, checkout, product configuration, client area and admin are untouched.
   ========================================================================== */
body.page-products{
  --sc-check:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%230533ff' stroke-width='3.4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M20 6 9 17l-5-5'/%3E%3C/svg%3E");
}
body.page-products .sc-products{margin-bottom:2.75rem;}

/* -- eyebrow (v2.5 angle-bracket label) ----------------------------------- */
body.page-products .sc-pkg-eyebrow{
  font-family:var(--sc-display);font-weight:600;font-size:.72rem;letter-spacing:.22em;
  text-transform:uppercase;color:var(--sc-brand);margin:0 0 1.15rem;
}

/* -- the strips ----------------------------------------------------------- */
body.page-products .sc-pkg-list{display:flex;flex-direction:column;gap:18px;}
body.page-products .sc-pkg{
  position:relative;display:grid;grid-template-columns:minmax(230px,285px) 1fr;
  background:var(--sc-surface);border:1px solid var(--sc-line);border-radius:20px;
  box-shadow:var(--sc-shadow);overflow:hidden;
  transition:transform .3s ease,box-shadow .3s ease,border-color .3s ease;
}
body.page-products .sc-pkg:hover{transform:translateY(-3px);border-color:var(--sc-brand);box-shadow:var(--sc-shadow-lg);}
/* brand rail that fills in on hover */
body.page-products .sc-pkg::before{
  content:"";position:absolute;left:0;top:0;bottom:0;width:3px;z-index:2;background:var(--sc-brand);
  transform:scaleY(0);transform-origin:top;transition:transform .35s ease;
}
body.page-products .sc-pkg:hover::before{transform:scaleY(1);}

/* -- left panel: number, name, price, CTA --------------------------------- */
body.page-products .sc-pkg-aside{
  display:flex;flex-direction:column;padding:30px 28px;
  border-right:1px solid var(--sc-line);
  background:linear-gradient(180deg,#fafbff 0%,#eef1ff 100%);
}
body.page-products .sc-pkg-aside-top{display:flex;align-items:center;gap:10px;min-height:22px;margin-bottom:12px;}
body.page-products .sc-pkg-num{
  font-family:var(--sc-display);font-weight:700;font-size:.78rem;letter-spacing:.2em;
  color:var(--sc-muted-2);transition:color .3s ease;
}
body.page-products .sc-pkg:hover .sc-pkg-num{color:var(--sc-brand);}
body.page-products .sc-pkg-ribbon{
  margin-left:auto;font-family:var(--sc-display);font-weight:700;font-size:.6rem;letter-spacing:.14em;
  text-transform:uppercase;color:#fff;background:var(--sc-brand);padding:5px 10px;border-radius:999px;
  white-space:nowrap;box-shadow:0 4px 12px rgba(5,51,255,.32);
}
body.page-products h3.sc-pkg-name{
  font-family:var(--sc-display);font-weight:700;font-size:1.28rem;line-height:1.18;
  letter-spacing:-.01em;color:var(--sc-ink);margin:0 0 18px;
}
body.page-products .sc-pkg-price{margin:0;}
body.page-products .sc-pkg-price .price-starting-from{
  font-family:var(--sc-body);font-size:.7rem;text-transform:uppercase;letter-spacing:.1em;
  color:var(--sc-muted-2);margin-bottom:3px;
}
body.page-products .sc-pkg-price .price-amount{
  font-family:var(--sc-display);font-weight:700;font-size:1.95rem;line-height:1.02;
  letter-spacing:-.025em;color:var(--sc-ink);
}
body.page-products .sc-pkg-price .price-prefix{font-family:var(--sc-display);font-weight:700;}
body.page-products .sc-pkg-price .price-cycle{
  font-family:var(--sc-display);font-weight:600;font-size:.66rem;letter-spacing:.16em;
  text-transform:uppercase;color:var(--sc-muted-2);margin-top:7px;
}
body.page-products .sc-pkg-actions{margin-top:auto;padding-top:24px;}
body.page-products .sc-pkg-cta.btn{
  display:inline-flex;align-items:center;justify-content:center;gap:.55rem;width:100%;
  padding:.78rem 1.1rem;font-family:var(--sc-display);font-weight:600;font-size:.95rem;
  letter-spacing:.02em;border-radius:12px;
}
body.page-products .sc-pkg-cta.btn i{font-size:.78em;transition:transform .25s ease;}
body.page-products .sc-pkg-cta.btn:hover i{transform:translateX(4px);}
body.page-products .sc-pkg-cta.btn.disabled{opacity:.55;pointer-events:none;box-shadow:none;}
body.page-products .sc-pkg-qty{
  margin-top:10px;font-family:var(--sc-body);font-size:.78rem;color:var(--sc-muted-2);text-align:center;
}

/* -- right panel: feature checklist --------------------------------------- */
body.page-products .sc-pkg-main{padding:30px 32px;display:flex;flex-direction:column;justify-content:center;gap:14px;}
body.page-products ul.sc-pkg-feat{
  list-style:none;margin:0;padding:0;width:100%;
  display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:13px 30px;
}
body.page-products ul.sc-pkg-feat li{
  position:relative;padding-left:28px;font-family:var(--sc-body);font-size:.895rem;
  line-height:1.5;color:var(--sc-muted);
}
body.page-products ul.sc-pkg-feat li:empty{display:none;}
body.page-products ul.sc-pkg-feat li::before{
  content:"";position:absolute;left:0;top:.1em;width:18px;height:18px;border-radius:50%;
  background-color:var(--sc-bg-tint);background-image:var(--sc-check);
  background-repeat:no-repeat;background-position:center;background-size:10px 10px;
}
body.page-products ul.sc-pkg-feat li b,
body.page-products ul.sc-pkg-feat li strong{color:var(--sc-ink);font-weight:600;}
body.page-products ul.sc-pkg-feat li p{margin:0;}
/* a description that is one single block reads as a lead paragraph, not a bullet */
body.page-products ul.sc-pkg-feat li:only-child{
  grid-column:1 / -1;padding-left:20px;font-size:1rem;line-height:1.62;
  border-left:3px solid var(--sc-bg-tint);
}
body.page-products ul.sc-pkg-feat li:only-child::before{content:none;}

/* -- featured ("Most Popular") strip: dark panel + glow -------------------- */
body.page-products .sc-pkg-featured{border-color:var(--sc-brand);box-shadow:0 14px 40px rgba(5,51,255,.18);}
body.page-products .sc-pkg-featured .sc-pkg-aside{
  background:linear-gradient(165deg,#1a1d2e 0%,#0f1117 100%);border-right-color:rgba(255,255,255,.08);
}
body.page-products .sc-pkg-featured .sc-pkg-main{background:linear-gradient(180deg,#fff 0%,#fafbff 100%);}
body.page-products .sc-pkg-featured .sc-pkg-num{color:var(--sc-brand-on-dark);}
body.page-products .sc-pkg-featured:hover .sc-pkg-num{color:#fff;}
body.page-products .sc-pkg-featured h3.sc-pkg-name{color:#fff;}
body.page-products .sc-pkg-featured .sc-pkg-price .price-amount{color:#fff;}
body.page-products .sc-pkg-featured .sc-pkg-price .price-cycle,
body.page-products .sc-pkg-featured .sc-pkg-price .price-starting-from,
body.page-products .sc-pkg-featured .sc-pkg-qty{color:#9298b8;}
body.page-products .sc-pkg-featured::before{background:var(--sc-brand-on-dark);}

/* -- out of stock ---------------------------------------------------------- */
body.page-products .sc-pkg-oos{opacity:.78;}
body.page-products .sc-pkg-oos:hover{transform:none;border-color:var(--sc-line);box-shadow:var(--sc-shadow);}

/* -- "Included with all plans" -------------------------------------------- */
body.page-products .sc-incl{
  background:var(--sc-surface);border:1px solid var(--sc-line);border-radius:20px;
  box-shadow:var(--sc-shadow);padding:30px 32px;margin-bottom:2.5rem;
}
body.page-products h2.sc-incl-title{
  font-family:var(--sc-display);font-weight:700;font-size:1.35rem;line-height:1.2;
  color:var(--sc-ink);margin:0 0 20px;
}
body.page-products ul.sc-incl-list{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:10px 12px;}
body.page-products ul.sc-incl-list li{
  display:inline-flex;align-items:center;gap:.5rem;font-family:var(--sc-body);font-size:.86rem;
  color:var(--sc-ink);background:var(--sc-bg-tint);border:1px solid rgba(5,51,255,.10);
  border-radius:999px;padding:.45rem .9rem;
}
body.page-products ul.sc-incl-list li::before{
  content:"";flex:0 0 14px;width:14px;height:14px;
  background:var(--sc-check) center/contain no-repeat;
}

/* -- responsive ------------------------------------------------------------ */
@media (max-width:767px){
  body.page-products .sc-pkg{grid-template-columns:1fr;}
  body.page-products .sc-pkg-aside{border-right:0;border-bottom:1px solid var(--sc-line);padding:24px 22px;}
  body.page-products .sc-pkg-featured .sc-pkg-aside{border-bottom-color:rgba(255,255,255,.08);}
  body.page-products .sc-pkg-main{padding:24px 22px;}
  body.page-products ul.sc-pkg-feat{grid-template-columns:1fr;gap:11px;}
  body.page-products .sc-pkg-price .price-amount{font-size:1.75rem;}
  body.page-products .sc-pkg-actions{padding-top:18px;}
  body.page-products .sc-incl{padding:24px 22px;}
}

/* ==========================================================================
   CONTRAST FIXES — v2.6.2
   Root cause of this whole class of bug: this stylesheet repaints Lagom's
   *coloured blocks* white (`body.page-order .panel{background:#fff}`) but the
   theme keeps their text colours light, because in stock Lagom those blocks sit
   on a brand gradient. Overriding a background without overriding the paired
   text colours produces white-on-white.
   Affected blocks resolved from the live theme + vars:
     .panel-summary-primary   -> bg linear-gradient(brand), title #fff,
                                 text hsla(0,0%,100%,80%), faded 56%,
                                 dividers hsla(0,0%,100%,12%)
     .panel-summary-secondary -> same shape, brand-secondary gradient
     .spinner-light > div     -> --loader-light-bg = #fff
   Fix: keep the white card (matches the rest of the v2.5 store skin) and repaint
   the whole text/divider palette with our own ink/muted/line tokens.
   Scoped to .panel-summary / .order-summary so cart, checkout and invoice
   summary blocks are covered in one place, for every block style the Lagom
   admin can select (primary / secondary / default).
   ========================================================================== */
body.page-order .panel-summary,
body.page-order .order-summary{
  background:var(--sc-surface);color:var(--sc-muted);
  border:1px solid var(--sc-line);border-radius:var(--sc-radius-lg);box-shadow:var(--sc-shadow);
}
body.page-order .panel-summary .panel-heading .panel-title,
body.page-order .order-summary .panel-heading .panel-title{
  font-family:var(--sc-display);font-weight:700;color:var(--sc-ink);
}

/* summary rows ------------------------------------------------------------- */
body.page-order .panel-summary .summary-list,
body.page-order .order-summary .summary-list{color:var(--sc-muted);border-bottom-color:var(--sc-line);}
body.page-order .panel-summary .summary-list .list-item,
body.page-order .order-summary .summary-list .list-item{color:var(--sc-muted);}
body.page-order .panel-summary .summary-list .list-item .item-name,
body.page-order .order-summary .summary-list .list-item .item-name{color:var(--sc-muted);}
body.page-order .panel-summary .summary-list .list-item .item-value,
body.page-order .order-summary .summary-list .list-item .item-value{color:var(--sc-ink);font-weight:600;}
body.page-order .panel-summary .summary-list .list-item.faded,
body.page-order .order-summary .summary-list .list-item.faded{
  color:var(--sc-muted-2);font-family:var(--sc-display);font-weight:600;
  font-size:.7rem;letter-spacing:.14em;text-transform:uppercase;
}
body.page-order .panel-summary .summary-list .list-item-title,
body.page-order .panel-summary .summary-list .list-item-main,
body.page-order .order-summary .summary-list .list-item-title,
body.page-order .order-summary .summary-list .list-item-main{color:var(--sc-ink);}
body.page-order .panel-summary .summary-list-recurring .list-item:not(.list-item-title),
body.page-order .order-summary .summary-list-recurring .list-item:not(.list-item-title){color:var(--sc-ink);}
body.page-order .panel-summary .summary-list .list-item .item-actions a,
body.page-order .order-summary .summary-list .list-item .item-actions a{color:var(--sc-brand);}

/* list-group rows (invoice / add-funds summaries use these) ---------------- */
body.page-order .panel-summary .list-group-item{color:var(--sc-muted);}
body.page-order .panel-summary .list-group-item strong{color:var(--sc-ink);}
body.page-order .panel-summary .list-group-item:not(:last-child){border-color:var(--sc-line);}

/* footer total + dividers -------------------------------------------------- */
body.page-order .panel-summary .price,
body.page-order .order-summary .price{color:var(--sc-ink);}
body.page-order .panel-summary .price .price-title,
body.page-order .panel-summary .price .price-total,
body.page-order .order-summary .price .price-title,
body.page-order .order-summary .price .price-total{
  color:var(--sc-muted-2);font-family:var(--sc-display);font-weight:600;
  font-size:.7rem;letter-spacing:.14em;text-transform:uppercase;
}
body.page-order .panel-summary .price .price-amount,
body.page-order .order-summary .price .price-amount{
  font-family:var(--sc-display);font-weight:700;color:var(--sc-ink);letter-spacing:-.02em;
}
body.page-order .panel-summary .panel-footer:after,
body.page-order .order-summary .panel-footer:after{background-color:var(--sc-line);}
body.page-order .panel-summary .summary-total+.summary-content,
body.page-order .order-summary .summary-total+.summary-content{border-top-color:var(--sc-line);}

/* forms / payment blocks inside a summary panel ---------------------------- */
body.page-order .panel-summary .form-group .control-label{color:var(--sc-muted);}
body.page-order .panel-summary.payment-form p,
body.page-order .panel-summary .payment-form p{color:var(--sc-muted);}
body.page-order .panel-summary .payment-form a{color:var(--sc-brand);}
body.page-order .panel-summary.view-invoice label{color:var(--sc-muted);}

/* the "light" spinner is #fff by design (it sat on a brand gradient) ------- */
body.page-order .panel-summary .spinner-light > div,
body.page-order .order-summary .spinner-light > div{background:var(--sc-brand);}

/* Checkout button: keep it solid brand so it reads on the white card ------- */
body.page-order .panel-summary .btn-checkout,
body.page-order .order-summary .btn-checkout{
  font-family:var(--sc-display);font-weight:600;letter-spacing:.02em;border-radius:12px;
}
body.page-order .panel-summary .btn-primary-faded:not(.disabled),
body.page-order .order-summary .btn-primary-faded:not(.disabled){
  background:var(--sc-brand);border-color:var(--sc-brand);color:#fff;
  box-shadow:0 6px 18px rgba(5,51,255,.28);
}
body.page-order .panel-summary .btn-primary-faded:not(.disabled):hover,
body.page-order .order-summary .btn-primary-faded:not(.disabled):hover{
  background:var(--sc-brand-600);border-color:var(--sc-brand-600);color:#fff;
}

/* Defensive: the same trap for the sidebar block styles. These are not used on
   store pages today, but a Lagom admin toggle can switch the sidebar to the
   "primary"/"secondary" block style, whose text the theme also keeps white. */
body.page-order .panel-sidebar-primary .panel-heading .panel-title,
body.page-order .panel-sidebar-secondary .panel-heading .panel-title,
body.page-order .panel-sidebar-primary strong,
body.page-order .panel-sidebar-secondary strong{color:var(--sc-ink);}
body.page-order .panel-sidebar-primary .btn.btn-outline,
body.page-order .panel-sidebar-secondary .btn.btn-outline{color:var(--sc-brand);border-color:var(--sc-brand);}
