/* ==========================================================================
   Modern Minimal Theme — Mirasoles
   ========================================================================== */

/* Base reset */
*,
*::before,
*::after{
  box-sizing:border-box;
}
html{
  scroll-behavior:smooth;
}
body, h1, h2, h3, h4, h5, h6, p, figure{
  margin:0;
}
body{
  font-family:Inter, "Helvetica Neue", Arial, sans-serif;
  background:#ffffff;
  color:#000000;
  letter-spacing:0.5px;
  line-height:1.5;
  padding-top:80px;
  min-height:100vh;
  display:flex;
  flex-direction:column;
}
main{
  flex:1 0 auto;
}
img{
  max-width:100%;
  display:block;
}
a{
  color:#39AC4A;
  text-decoration:none;
  transition:color .2s ease, opacity .2s ease;
}
a:hover{color:#8B1F81;}
ul{
  list-style:none;
  margin:0;
  padding:0;
}
button,
input,
textarea{
  font:inherit;
  color:inherit;
}
input[type="number"]::-webkit-outer-spin-button,
input[type="number"]::-webkit-inner-spin-button{
  -webkit-appearance:none;
  margin:0;
}
input[type="number"]{
  -moz-appearance:textfield;
}
button{
  cursor:pointer;
  border:none;
  background:none;
}

/* Tokens */
:root{
  --primary:#39AC4A;
  --secondary:#8B1F81;
  --black:#000000;
  --white:#ffffff;
  --muted:rgba(0,0,0,0.65);
  --border:rgba(0,0,0,0.08);
  --container-max:1200px;
  --section-space:100px;
  --page-pad:80px;
}
@media (max-width:1024px){
  :root{
    --section-space:60px;
    --page-pad:40px;
  }
}
@media (max-width:640px){
  :root{
    --section-space:40px;
    --page-pad:20px;
  }
}

/* Typography */
h1,h2,h3,h4,h5,h6{
  font-weight:700;
  color:var(--black);
}
h1{font-size:clamp(2.4rem,4vw,3rem);}
h2{font-size:clamp(2rem,3vw,2.5rem);}
h3{font-size:clamp(1.4rem,2.5vw,1.85rem);}
p{margin-bottom:1rem;}
.help{
  margin:0;
  font-size:0.9rem;
  color:rgba(12,31,22,0.6);
}

/* Helpers */
.sr-only{
  position:absolute;
  width:1px;
  height:1px;
  padding:0;
  margin:-1px;
  overflow:hidden;
  clip:rect(0,0,0,0);
  white-space:nowrap;
  border:0;
}
.skip-link{
  position:absolute;
  left:-9999px;
  top:auto;
  width:1px;
  height:1px;
  overflow:hidden;
}
.skip-link:focus{
  position:fixed;
  left:16px;
  top:16px;
  padding:0.75rem 1rem;
  background:#000000;
  color:#ffffff;
  border-radius:999px;
  z-index:999;
}

/* Layout */
.container{
  width:min(var(--container-max),100%);
  margin-inline:auto;
  padding-inline:var(--page-pad);
}
.container.narrow{
  max-width:720px;
}
.text-center{
  text-align:center;
}
.section{
  padding-block:var(--section-space);
}
.section--center{
  text-align:center;
}
.section--center .section-head{
  align-items:center;
  text-align:center;
}
.section-head{
  display:flex;
  flex-direction:column;
  gap:0.5rem;
  margin-bottom:2rem;
  text-align:center;
}
.section-sub{
  text-transform:uppercase;
  font-size:0.95rem;
  letter-spacing:0.5px;
  color:var(--muted);
  margin:0;
}
.about-coming-soon{
  background:#F8FAF5;
}
.about-coming-soon h1{
  font-size:clamp(2.6rem,5vw,4rem);
}
.about-coming-soon .coming-soon-pill{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  padding:0.75rem 1.5rem;
  border-radius:999px;
  background:#000000;
  color:#ffffff;
  font-weight:600;
  text-transform:uppercase;
  letter-spacing:0.2em;
  margin-top:1.5rem;
}
.about-coming-soon .coming-soon-note{
  margin-top:1rem;
  color:var(--muted);
}
html[lang="es"] .coming-soon-note{
  display:none;
}
.coming-soon-pill--center{
  margin-inline:auto;
}
.about-highlights{
  margin-top:2rem;
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(220px,1fr));
  gap:1rem;
}
.about-highlight{
  background:#ffffff;
  border:1px solid rgba(0,0,0,0.06);
  border-radius:16px;
  padding:1.25rem;
  text-align:left;
  box-shadow:0 15px 30px rgba(0,0,0,0.05);
}
.about-highlight h3{
  margin:0 0 0.35rem;
  font-size:1.05rem;
}
.about-highlight p{
  margin:0;
  color:#4b5563;
  font-size:0.95rem;
}
body.page-standard{
  background:#F8FAF5;
}
body.page-standard main{
  background:#F8FAF5;
}
.legal-copy{
  display:grid;
  gap:0.75rem;
}
.legal-copy p{
  margin:0;
}
.legal-copy ol{
  margin:0;
  padding-left:1.25rem;
  display:grid;
  gap:0.75rem;
}
.legal-copy li{
  margin:0;
}
.legal-copy ul{
  list-style:disc;
  padding-left:1.2rem;
  margin:0.35rem 0;
}
.legal-copy li p{
  margin:0.35rem 0;
}

/* Header & navigation */
.header{
  position:fixed;
  inset:0 0 auto 0;
  height:80px;
  border-bottom:1px solid rgba(0,0,0,0.05);
  background:var(--white);
  display:flex;
  align-items:center;
  transition:box-shadow .2s ease;
  z-index:120;
}
.header.is-scrolled{
  box-shadow:0 12px 24px rgba(0,0,0,0.1);
}
.header-inner{
  width:min(var(--container-max),100%);
  margin-inline:auto;
  padding-inline:var(--page-pad);
  display:flex;
  align-items:center;
  gap:24px;
}
.brand img{
  max-height:56px;
  width:auto;
}
.nav{
  display:flex;
  align-items:center;
  gap:0;
  margin-left:40px;
}
.nav-link{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  padding:8px 20px;
  margin:0 16px;
  border-radius:9999px;
  color:var(--black);
  font-weight:600;
  transition:color .2s ease, background .2s ease;
}
.nav-link:hover{color:var(--primary);}
.nav-link[aria-current="page"],
.nav-link.is-active{
  background:var(--primary);
  color:var(--white);
}
.nav-account{
  gap:0.4rem;
}
.nav-link.nav-account:not(.is-active){
  color:var(--black);
}
.nav-link.nav-account:not(.is-active):hover,
.nav-link.nav-account:not(.is-active):focus-visible{
  color:var(--black);
}
.nav-account i{
  font-size:1.05rem;
  color:currentColor;
}
.nav-account__label{
  display:none;
  font-size:0.9rem;
  font-weight:600;
  white-space:nowrap;
  color:inherit;
}
.nav-account--named .nav-account__label{
  display:inline;
  margin-left:0.4rem;
}
.lang-toggle{
  margin-left:auto;
  font-weight:600;
  color:var(--black);
}
.form-field{
  display:grid;
  gap:0.45rem;
}
.form-field__error{
  display:none;
  margin:0;
  font-size:0.9rem;
  color:#c53030;
}
.form-field.is-invalid .form-field__error,
.was-validated .form-field input:invalid + .form-field__error,
.was-validated .form-field textarea:invalid + .form-field__error,
.was-validated .form-field select:invalid + .form-field__error{
  display:block;
}
.was-validated .form-field input:invalid,
.was-validated .form-field textarea:invalid,
.was-validated .form-field select:invalid,
.form-field.is-invalid input,
.form-field.is-invalid textarea,
.form-field.is-invalid select{
  border-color:#c53030;
  box-shadow:0 0 0 3px rgba(197,48,48,0.12);
}
.lang-toggle--mobile{
  display:none;
  margin-left:0;
}
.nav-mobile-lang{
  display:none;
  width:100%;
}
.menu-toggle{
  display:none;
  align-items:center;
  justify-content:center;
  width:44px;
  height:44px;
  border-radius:16px;
  border:1px solid rgba(0,0,0,0.12);
  background:#ffffff;
  color:var(--black);
  transition:background .2s ease, border-color .2s ease, color .2s ease, box-shadow .2s ease;
}
.menu-toggle i{
  pointer-events:none;
  font-size:1.2rem;
}
.menu-toggle:hover{
  background:rgba(57,172,74,0.12);
  border-color:rgba(57,172,74,0.28);
  color:var(--primary);
}
.menu-toggle--open{
  background:var(--primary);
  color:#ffffff;
  border-color:var(--primary);
  box-shadow:0 10px 24px rgba(57,172,74,0.25);
}
.header--mobile .menu-toggle{
  display:inline-flex;
  margin-left:auto;
}
.header--mobile .lang-toggle{
  display:none;
}
.header--mobile .header-inner{
  justify-content:space-between;
}
.header--mobile .brand img{
  max-height:48px;
}
.header--mobile .nav{
  display:none;
}
.header--mobile.header--menu-open .nav{
  display:flex;
  flex-direction:column;
  position:absolute;
  top:100%;
  left:0;
  right:0;
  background:#ffffff;
  padding:18px var(--page-pad);
  gap:8px;
  box-shadow:0 20px 38px rgba(0,0,0,0.18);
  border-bottom-left-radius:20px;
  border-bottom-right-radius:20px;
  z-index:130;
}
.header--mobile.header--menu-open .nav-link{
  width:100%;
  margin:0;
  justify-content:flex-start;
  padding:12px 16px;
}
.header--mobile.header--menu-open .nav-link + .nav-link{
  margin-top:4px;
}
.header--mobile.header--menu-open .nav-mobile-lang{
  display:flex;
  justify-content:flex-end;
  margin-top:8px;
}
.header--mobile.header--menu-open .lang-toggle--mobile{
  display:inline-flex;
}
body.menu-open{
  overflow:hidden;
}
body.modal-open{
  overflow:hidden;
}

/* Buttons */
.btn{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  padding:0.85rem 2rem;
  border-radius:9999px;
  font-weight:600;
  border:1px solid transparent;
  cursor:pointer;
  transition:background .2s ease, border .2s ease, color .2s ease, box-shadow .2s ease;
}
.btn-primary{
  background:var(--primary);
  color:var(--white);
}
.btn-primary:hover{background:var(--secondary);}
.btn-secondary{
  background:var(--secondary);
  color:var(--white);
}
.btn-secondary:hover{background:#741b73;}
.btn-outline{
  border:1px solid var(--primary);
  color:var(--primary);
  background:transparent;
}
.btn-outline:hover{
  background:var(--primary);
  color:var(--white);
}

/* Account modal */
.account-modal{
  position:fixed;
  inset:0;
  display:flex;
  align-items:center;
  justify-content:center;
  padding:24px;
  z-index:1100;
  opacity:0;
  pointer-events:none;
  transition:opacity .2s ease;
}
.account-modal[aria-hidden="true"]{
  opacity:0;
  pointer-events:none;
}
.account-modal.is-open{
  opacity:1;
  pointer-events:auto;
}
.account-modal__overlay{
  position:absolute;
  inset:0;
  background:rgba(15,23,42,.55);
}
.account-modal__panel{
  position:relative;
  background:#fff;
  border-radius:24px;
  max-width:640px;
  width:100%;
  padding:32px;
  box-shadow:0 30px 90px rgba(15,23,42,.35);
  max-height:90vh;
  overflow:auto;
}
.account-modal__body{
  display:flex;
  flex-direction:column;
  gap:32px;
}
.account-modal__eyebrow{
  text-transform:uppercase;
  letter-spacing:.2em;
  font-size:.75rem;
  color:#7e8899;
  margin:0 0 4px;
}
.account-modal__title{
  margin:0 0 16px;
}
.account-modal__form{
  display:flex;
  flex-direction:column;
  gap:12px;
  padding:16px;
  border:1px solid rgba(15,23,42,.08);
  border-radius:16px;
  background:#f8fafc;
}
.account-modal__form h4{
  margin:0;
}
.account-modal__helper{
  margin:0;
  color:#697386;
  font-size:.95rem;
}
.account-modal__form label{
  font-weight:600;
  font-size:.9rem;
}
.account-modal__form input{
  border-radius:12px;
  border:1px solid rgba(0,0,0,0.12);
  padding:0.85rem 1rem;
  font-size:1rem;
  box-shadow:0 1px 2px rgba(12,31,22,0.06);
}
.account-modal__form input:focus{
  outline:none;
  border-color:#39AC4A;
  box-shadow:0 0 0 3px rgba(57,172,74,0.18);
}
.account-modal__form button{
  align-self:flex-start;
}
.account-modal__status{
  min-height:1.25rem;
  font-size:.9rem;
  color:#2f855a;
}
.account-modal__status.is-error{
  color:#c53030;
}
.account-modal__close{
  position:absolute;
  top:16px;
  right:16px;
  border:none;
  background:transparent;
  font-size:1.5rem;
  cursor:pointer;
  color:#4a5568;
}

@media (max-width:768px){
  .account-modal__panel{
    padding:24px 20px;
    max-height:100vh;
  }
}

/* Auth */
.page-auth main{
  padding-top:60px;
}
.auth-hero{
  padding-block:80px 30px;
  text-align:center;
}
.auth-grid{
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(280px,1fr));
  gap:2rem;
}
.auth-card{
  background:#ffffff;
  border-radius:30px;
  border:1px solid rgba(0,0,0,0.08);
  box-shadow:0 30px 60px rgba(12,31,22,0.1);
  padding:2rem;
}
.auth-form{
  display:grid;
  gap:1rem;
}
.auth-form .form-field{
  display:grid;
  gap:0.35rem;
}
.auth-form input{
  padding:0.85rem 1rem;
  border-radius:14px;
  border:1px solid rgba(0,0,0,0.12);
}
.auth-password-field{
  position:relative;
}
.auth-password-field input{
  padding-right:3rem;
}
.password-toggle{
  position:absolute;
  top:50%;
  right:0.65rem;
  transform:translateY(-50%);
  border:none;
  background:transparent;
  color:rgba(0,0,0,0.5);
  font-size:1rem;
  cursor:pointer;
  display:flex;
  align-items:center;
  justify-content:center;
  padding:0.2rem;
}
.password-toggle:focus-visible{
  outline:2px solid var(--primary);
  border-radius:999px;
}
.password-toggle .fa{
  pointer-events:none;
}
.auth-form input:focus{
  outline:none;
  border-color:var(--primary);
  box-shadow:0 0 0 3px rgba(57,172,74,0.2);
}
.auth-submit{
  width:100%;
}
.auth-error{
  margin:0;
  color:#c62828;
  font-size:0.95rem;
}
.auth-error[hidden]{
  display:none;
}
.auth-status{
  margin:0;
  text-align:center;
  color:var(--muted);
  min-height:1.2rem;
  font-size:0.9rem;
}
.auth-meta{
  margin:0;
  text-align:center;
  color:var(--muted);
}
.auth-note{
  background:#f4f8f2;
  border-radius:30px;
  padding:2rem;
  border:1px solid rgba(57,172,74,0.15);
}
.auth-note h2{
  margin-top:0;
}
.auth-note ul{
  margin:1rem 0;
  padding-left:1.2rem;
  color:var(--muted);
}
.auth-note li{
  margin-bottom:0.4rem;
}

.btn-outline--filled{
  background:var(--primary);
  color:#ffffff;
  border-color:var(--primary);
  box-shadow:0 12px 24px rgba(57,172,74,0.25);
}
.btn-outline--filled:hover{
  background:#f7f8f7;
  color:var(--primary);
  border-color:#dfe3dd;
  box-shadow:0 10px 20px rgba(0,0,0,0.12);
}

/* Hero */
.hero{
  height:calc(100vh - 80px);
  min-height:720px;
  position:relative;
}
@media (max-width:768px){
  .hero{
    height:calc(100vh - 70px);
    min-height:420px;
    max-height:640px;
  }
}
.hero-slider{
  position:relative;
  height:100%;
  width:100%;
  overflow:hidden;
}
.hero-slider__track{
  position:relative;
  height:100%;
}
.hero-slide{
  position:absolute;
  inset:0;
  opacity:0;
  transition:opacity 1s ease;
}
.hero-slide.is-active{
  opacity:1;
  z-index:2;
}
.hero-slide img{
  width:100%;
  height:100%;
  object-fit:cover;
  opacity:1;
}
.hero-slide::after{
  content:"";
  position:absolute;
  inset:0;
  background:rgba(0,0,0,0.3);
}
.hero-content{
  position:absolute;
  inset:0;
  display:flex;
  align-items:center;
  justify-content:center;
  pointer-events:none;
}
.hero-content__inner{
  pointer-events:auto;
  max-width:1000px;
  width:100%;
  padding:0 40px;
  display:grid;
  gap:20px;
  text-align:center;
  background:rgba(12,31,22,0.35);
  border:1px solid rgba(255,255,255,0.18);
  border-radius:20px;
  box-shadow:0 30px 80px rgba(0,0,0,0.35);
  backdrop-filter:blur(6px);
  padding:28px 32px;
}
.hero-content h1{color:#ffffff;}
.hero-subhead{
  font-size:clamp(1.1rem,2vw,1.5rem);
  color:rgba(255,255,255,0.9);
  margin:0;
}
.hero-cta{
  display:flex;
  align-items:center;
  justify-content:center;
  gap:12px;
}
.hero-cta .btn{
  box-shadow:0 14px 30px rgba(0,0,0,0.25);
  transform:translateY(0);
  transition:transform .18s ease, box-shadow .18s ease, filter .18s ease;
}
.hero-cta .btn:hover,
.hero-cta .btn:focus-visible{
  transform:translateY(-2px);
  box-shadow:0 20px 40px rgba(0,0,0,0.32);
  filter:brightness(0.98);
}
.hero-contact{
  display:flex;
  flex-wrap:wrap;
  gap:0.4rem 0.8rem;
  justify-content:center;
  font-size:0.95rem;
  color:rgba(255,255,255,0.8);
}
.hero-contact a{color:#ffffff;}
.hero-slider__control{
  position:absolute;
  top:50%;
  transform:translateY(-50%);
  width:48px;
  height:48px;
  border-radius:50%;
  background:rgba(0,0,0,0.45);
  color:#ffffff;
  display:grid;
  place-items:center;
  transition:background .2s ease, transform .2s ease;
  z-index:3;
}
.hero-slider__control--prev{left:20px;}
.hero-slider__control--next{right:20px;}
.hero-slider__control:hover{
  background:rgba(0,0,0,0.65);
  transform:translateY(-50%) scale(1.05);
}
.hero-slider__dots{
  position:absolute;
  bottom:32px;
  left:50%;
  transform:translateX(-50%);
  display:flex;
  gap:12px;
  z-index:3;
}
.hero-slider__dots button{
  width:12px;
  height:12px;
  border-radius:50%;
  background:rgba(255,255,255,0.4);
  transition:transform .2s ease, background .2s ease;
}
.hero-slider__dots button[aria-current="true"]{
  background:#ffffff;
  transform:scale(1.1);
}

/* About */
.about-grid{
  display:flex;
  align-items:center;
  gap:40px;
}
.about-media,
.about-copy{
  flex:1 1 50%;
}
.about-media img{
  border-radius:20px;
}
.about-copy p{
  color:var(--muted);
}

/* Products */
.card-grid{
  display:grid;
  grid-template-columns:repeat(1,minmax(0,1fr));
  gap:28px;
}
@media (min-width:640px){
  .card-grid{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
}
@media (min-width:960px){
  .card-grid{
    grid-template-columns:repeat(3,minmax(0,1fr));
  }
}
@media (min-width:1200px){
  .card-grid{
    grid-template-columns:repeat(4,minmax(0,1fr));
  }
}
.product-grid{
  display:grid;
  gap:28px;
  grid-template-columns:repeat(auto-fit,minmax(240px,1fr));
}
.product-grid .card{
  height:100%;
  grid-template-rows:auto 1fr auto;
}
.product-grid .card-media{
  aspect-ratio:4 / 3;
  margin:-22px -22px 0;
  border-radius:18px 18px 0 0;
  overflow:hidden;
}
.product-grid .card-media img{
  opacity:1;
  transform:scale(1.02);
  transition:opacity .35s ease, transform .35s ease;
}
.product-grid .card:hover .card-media img{
  opacity:1;
  transform:scale(1);
}
.product-grid .card-footer{
  align-items:flex-end;
}
.filters-row{
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:16px;
  flex-wrap:wrap;
  margin-bottom:24px;
}
.filters-row__search{
  flex:1 1 260px;
  min-height:54px;
  padding:0 24px;
  border:1px solid rgba(0,0,0,0.12);
  border-radius:28px;
  background:#ffffff;
  color:var(--black);
  font-size:0.95rem;
  line-height:1.2;
  box-shadow:none;
  transition:border-color .2s ease, box-shadow .2s ease;
}
.filters-row__search::placeholder{
  color:rgba(12,31,22,0.45);
}

/* Product detail page */
.page-product main{
  padding:0;
}
.product-page-simple{
  background:#f8faf5;
  padding:clamp(2.5rem,6vw,4rem) clamp(1rem,4vw,1.5rem) clamp(3rem,7vw,5rem);
}
.product-simple-inner{
  max-width:960px;
  margin:0 auto;
  display:grid;
  gap:1.5rem;
}
.product-breadcrumb{
  display:flex;
  align-items:center;
  gap:0.5rem;
  font-size:0.9rem;
  opacity:0.85;
}
.product-back-link{
  display:inline-flex;
  align-items:center;
  gap:0.35rem;
  text-decoration:none;
  color:inherit;
}
.product-back-link i{
  font-size:0.85rem;
}
.product-mount{
  width:100%;
}
#productDetail{
  width:100%;
  max-width:none;
  margin:0;
}
.product-detail-placeholder{
  background:#ffffff;
  border-radius:16px;
  padding:1.5rem;
  text-align:center;
  font-weight:600;
  color:var(--muted);
  border:1px solid rgba(12,31,22,0.08);
}
.product-detail{
  width:100%;
}
.product-spotlight--minimal{
  background:#ffffff;
  border-radius:24px;
  border:1px solid rgba(12,31,22,0.08);
  box-shadow:0 24px 60px rgba(0,0,0,0.08);
  padding:clamp(1.25rem,3vw,2rem);
  display:grid;
  gap:1.25rem;
}
.product-spotlight__media{
  border-radius:20px;
  overflow:hidden;
  background:#0f2618;
  min-height:280px;
}
.product-spotlight__media img{
  width:100%;
  height:100%;
  object-fit:cover;
  display:block;
}
.product-pack-pill{
  display:inline-flex;
  align-items:center;
  gap:6px;
  padding:0.4rem 1rem;
  border-radius:999px;
  background:rgba(57,172,74,0.12);
  color:var(--primary);
  font-weight:600;
  text-transform:uppercase;
  letter-spacing:0.06em;
  font-size:0.8rem;
}
.product-quickfacts{
  margin:0.5rem 0 0;
}
.product-quickfacts__grid{
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(160px,1fr));
  gap:0.5rem 1rem;
}
.product-quickfact{
  background:transparent;
  border:none;
  padding:0.2rem 0;
  display:grid;
  gap:0.1rem;
}
.product-quickfact span{
  font-size:0.8rem;
  letter-spacing:0.02em;
  text-transform:none;
  color:rgba(12,31,22,0.65);
}
.product-quickfact strong{
  font-size:1.05rem;
  color:var(--black);
}
.product-chip-row{
  display:flex;
  flex-wrap:wrap;
  gap:0.5rem;
  margin:0.75rem 0 0;
  padding:0;
  list-style:none;
}
.product-chip-row li{
  padding:0.35rem 0.9rem;
  border-radius:999px;
  background:rgba(57,172,74,0.12);
  color:var(--primary);
  font-size:0.85rem;
  font-weight:600;
}
.product-spotlight__title{
  font-size:clamp(2rem,4.2vw,3rem);
  margin:0.35rem 0;
  color:var(--black);
}
.product-spotlight__blurb{
  font-size:1.05rem;
  color:var(--muted);
  max-width:640px;
}
.product-cta-panel{
  background:#f5f8f4;
  border-radius:24px;
  padding:1.5rem;
  display:grid;
  gap:1.25rem;
  border:1px solid rgba(12,31,22,0.06);
}
.product-cta-panel--call{
  text-align:center;
  background:linear-gradient(135deg,#08240f,#0f3d1b);
  color:#ffffff;
}
.product-callout{
  display:grid;
  gap:0.75rem;
}
.product-qty-grid{
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(240px,1fr));
  gap:1rem;
}
.product-qty-field label{
  display:block;
  margin-bottom:0.35rem;
  font-weight:600;
  color:var(--black);
}
.product-qty-stepper{
  display:flex;
  align-items:center;
  justify-content:center;
  gap:0.25rem;
  border:none;
  padding:0;
  background:transparent;
  max-width:180px;
  width:100%;
}
.product-qty-stepper.bump{
  animation:qtyBump .32s ease;
}
.product-qty-stepper button{
  width:26px;
  height:26px;
  border:none;
  border-radius:6px;
  background:transparent;
  font-size:1.1rem;
  line-height:1;
  color:var(--black);
  display:flex;
  align-items:center;
  justify-content:center;
  transition:background .15s ease;
}
.product-qty-stepper button:hover{
  background:rgba(12,31,22,0.08);
}
.product-qty-stepper button:disabled{
  opacity:0.35;
  cursor:not-allowed;
}
.product-qty-stepper input{
  flex:0 0 34px;
  border:none;
  text-align:center;
  font-weight:600;
  font-size:1rem;
  width:90px;
  background:transparent;
  height:26px;
  line-height:26px;
}
.product-qty-stepper input:focus{
  outline:none;
  box-shadow:none;
}
.product-qty-field[data-stepper-disabled="true"]{
  opacity:0.55;
}
.product-qty-note{
  margin-top:0.35rem;
  font-size:0.85rem;
  color:var(--muted);
}
.product-qty-summary{
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(180px,1fr));
  gap:0.75rem;
}
.product-qty-summary__item,
.product-qty-summary__total{
  background:#ffffff;
  border-radius:18px;
  padding:0.85rem 1rem;
  border:1px solid rgba(12,31,22,0.08);
  display:grid;
  gap:0.15rem;
}
.product-qty-summary__item span,
.product-qty-summary__total span{
  font-size:0.78rem;
  text-transform:uppercase;
  letter-spacing:0.08em;
  color:rgba(12,31,22,0.55);
}
.product-qty-summary__item strong,
.product-qty-summary__total strong{
  font-size:1.15rem;
  color:var(--black);
}
.product-qty-summary__total{
  background:var(--black);
  color:#ffffff;
}
.product-qty-summary__total strong{
  color:#ffffff;
  font-size:1.25rem;
}
.product-qty-hint{
  margin:0;
  font-size:0.85rem;
  color:var(--muted);
}
.product-cta-actions{
  display:flex;
  gap:0.8rem;
  flex-wrap:wrap;
}
.product-cta-actions--minimal{
  justify-content:flex-start;
}
.product-cta-actions--stack{
  flex-direction:column;
}
.product-price-stack{
  display:grid;
  gap:0.4rem;
}
.product-price-note{
  font-size:0.85rem;
  color:var(--muted);
}
.product-spotlight__body{
  display:grid;
  gap:0.75rem;
}
.product-back-link--inline{
  display:inline-flex;
  align-items:center;
  gap:0.4rem;
  color:var(--black);
  text-decoration:none;
  font-weight:600;
  margin-top:0.5rem;
}
.product-spotlight__footer{
  display:flex;
  align-items:center;
  justify-content:space-between;
  flex-wrap:wrap;
  gap:1rem;
}
.product-spotlight__section{
  margin-top:1.5rem;
  display:grid;
  gap:0.75rem;
}
.product-info-block{
  border-top:1px solid rgba(12,31,22,0.08);
  padding-top:1.5rem;
  margin-top:1.5rem;
}
.product-info-block__header h3{
  margin:0 0 0.75rem;
}
.product-attribute-grid{
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(180px,1fr));
  gap:0.85rem 1.5rem;
}
.product-attribute{
  display:grid;
  gap:0.2rem;
}
.product-attribute dt{
  font-size:0.82rem;
  text-transform:uppercase;
  letter-spacing:0.08em;
  color:rgba(12,31,22,0.55);
}
.product-attribute dd{
  margin:0;
  font-weight:600;
  color:var(--black);
}
.product-volume{
  background:rgba(57,172,74,0.08);
  border-radius:24px;
  padding:1.25rem;
  margin-top:1.5rem;
}
.product-volume h3{
  margin-top:0;
}
.product-volume ul{
  margin:0 0 0.5rem;
  padding-left:1rem;
  display:grid;
  gap:0.25rem;
  color:var(--black);
}
.product-metarow{
  font-size:0.9rem;
  color:var(--muted);
}
.product-docs{
  display:flex;
  flex-wrap:wrap;
  gap:0.65rem;
}
.product-doc{
  padding:0.5rem 1rem;
  border-radius:999px;
  border:1px dashed rgba(12,31,22,0.2);
  font-size:0.9rem;
  color:var(--black);
}
.product-stats{
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(160px,1fr));
  gap:1rem;
}
.product-stat{
  background:#0f2618;
  color:#ffffff;
  padding:1rem;
  border-radius:20px;
}
.product-stat__value{
  font-size:1.35rem;
  font-weight:700;
}
.product-stat__label{
  font-size:0.85rem;
  opacity:0.8;
}
.product-testimonial{
  margin-top:1.5rem;
  padding:1.25rem 1.5rem;
  border-radius:20px;
  background:#fff7ea;
  border:1px solid rgba(12,31,22,0.08);
}
.product-testimonial h3{
  margin-top:0;
}
.product-testimonial blockquote{
  margin:0;
  font-size:1rem;
  line-height:1.5;
}
.product-testimonial footer{
  margin-top:0.5rem;
  font-size:0.9rem;
  color:var(--muted);
}
.product-more{
  margin-top:3rem;
  display:grid;
  gap:1.5rem;
}
.product-more__head{
  display:flex;
  justify-content:space-between;
  align-items:center;
  flex-wrap:wrap;
  gap:0.75rem;
}
.product-more__link{
  font-weight:600;
  color:var(--primary);
  text-decoration:none;
}
.product-more__link:hover{
  text-decoration:underline;
}
.card-grid--related{
  grid-template-columns:repeat(auto-fit,minmax(260px,1fr));
}
.product-sticky-cta{
  position:fixed;
  bottom:24px;
  left:50%;
  transform:translate(-50%,120%);
  background:#ffffff;
  border-radius:999px;
  padding:0.5rem 1rem;
  box-shadow:0 18px 40px rgba(0,0,0,0.14);
  border:1px solid rgba(12,31,22,0.08);
  display:flex;
  align-items:center;
  gap:1rem;
  z-index:150;
  transition:transform .3s ease, opacity .3s ease;
  opacity:0;
}
.product-sticky-cta.visible{
  transform:translate(-50%,0);
  opacity:1;
}
.product-sticky-cta__content{
  font-weight:600;
  color:var(--black);
}
.product-sticky-cta__actions{
  display:flex;
  gap:0.5rem;
}
.product-add-btn.is-success{
  background:var(--black);
  border-color:var(--black);
}
.product-toast{
  position:fixed;
  bottom:40px;
  right:40px;
  background:#0f2618;
  color:#ffffff;
  padding:0.85rem 1.25rem;
  border-radius:999px;
  box-shadow:0 12px 24px rgba(0,0,0,0.2);
  opacity:0;
  transform:translateY(20px);
  transition:opacity .25s ease, transform .25s ease;
  z-index:180;
}
.product-toast.show{
  opacity:1;
  transform:translateY(0);
}

/* Profile dashboard */
body.page-profile{
  background:#f7f7f5;
}
.profile-hero{
  padding-block:130px 40px;
  background:linear-gradient(180deg,#f7f8f6 0%,#ffffff 90%);
}
.profile-hero__content{
  display:flex;
  flex-wrap:wrap;
  justify-content:space-between;
  gap:1.5rem;
  align-items:flex-start;
}
.profile-hero__text{
  max-width:560px;
  display:grid;
  gap:0.35rem;
}
.profile-hero__text h1{
  margin-block:0.4rem 0;
  font-size:clamp(2.2rem,4vw,3.2rem);
}
.profile-kicker{
  text-transform:uppercase;
  letter-spacing:0.12em;
  font-size:0.8rem;
  color:rgba(0,0,0,0.55);
  margin:0;
}
.profile-meta{
  list-style:none;
  padding:0;
  margin:0;
  display:flex;
  flex-wrap:wrap;
  gap:0.75rem;
  color:rgba(0,0,0,0.6);
  font-size:0.95rem;
}
.profile-meta li{
  display:flex;
  align-items:center;
  gap:0.4rem;
}
.profile-meta li::before{
  content:'•';
  color:rgba(0,0,0,0.35);
}
.profile-meta li:first-child::before{
  display:none;
}
.profile-auth-note{
  margin:0.2rem 0 0;
  font-size:0.95rem;
  color:rgba(0,0,0,0.6);
}
.profile-auth-note[hidden]{
  display:none;
}
.profile-workspace{
  margin:0.4rem 0 0;
  font-size:0.95rem;
  color:rgba(0,0,0,0.6);
}
.profile-card__helper{
  margin:0.5rem 0 0;
  font-size:0.9rem;
  color:rgba(0,0,0,0.5);
}
.profile-card__helper[hidden]{
  display:none;
}
.profile-hero__actions{
  display:flex;
  gap:0.75rem;
  flex-wrap:wrap;
}
.profile-chip{
  padding:0.65rem 1.25rem;
  border-radius:999px;
  border:1px solid transparent;
  background:var(--primary);
  color:#ffffff;
  font-weight:600;
  transition:background .2s ease, color .2s ease, border-color .2s ease;
  cursor:pointer;
  font-family:inherit;
}
.profile-chip:hover{
  background:#2f8c3f;
  color:#ffffff;
}
.profile-chip--ghost{
  background:transparent;
  color:var(--primary);
  border-color:rgba(57,172,74,0.35);
}
.profile-chip--ghost:hover{
  background:rgba(57,172,74,0.08);
}
.profile-layout{
  display:grid;
  grid-template-columns:repeat(2,minmax(280px,1fr));
  gap:1.75rem;
}
.profile-card{
  background:#ffffff;
  border-radius:20px;
  border:1px solid rgba(12,31,22,0.06);
  padding:1.5rem;
  display:grid;
  gap:0.85rem;
  box-shadow:0 12px 30px rgba(12,31,22,0.06);
}
.profile-card__head{
  display:flex;
  justify-content:space-between;
  align-items:flex-start;
  gap:0.5rem;
}
.profile-card__eyebrow{
  text-transform:uppercase;
  letter-spacing:0.08em;
  font-size:0.75rem;
  color:rgba(0,0,0,0.45);
  margin:0 0 0.15rem;
}
.profile-card__head h2{
  margin:0;
  font-size:1.6rem;
}
.profile-card__link,
.profile-card__head button{
  color:var(--primary);
  background:none;
  border:none;
  padding:0;
  font-weight:600;
  font-size:0.9rem;
}
.profile-card__description{
  margin:0;
  color:rgba(0,0,0,0.55);
  font-size:0.95rem;
}
.profile-list{
  display:grid;
  gap:0.75rem;
}
.profile-list li{
  display:flex;
  justify-content:space-between;
  gap:1rem;
  padding:0.65rem 0;
  border-bottom:1px solid rgba(0,0,0,0.05);
}
.profile-list li:last-child{
  border-bottom:none;
}
.profile-list strong{
  display:block;
  font-size:1.05rem;
}
.profile-list p{
  margin:0.25rem 0 0;
  color:rgba(0,0,0,0.55);
  font-size:0.95rem;
}
.pill-link{
  display:inline-flex;
  align-items:center;
  padding:0.45rem 0.85rem;
  border-radius:12px;
  background:rgba(57,172,74,0.12);
  color:var(--primary);
  font-weight:600;
  font-size:0.9rem;
  transition:background .2s ease;
}
.pill-link:hover{
  background:rgba(57,172,74,0.22);
}
.pill-link--muted{
  background:rgba(0,0,0,0.05);
  color:var(--muted);
}
.profile-track{
  display:flex;
  gap:0.75rem;
  flex-wrap:wrap;
}
.profile-track input{
  flex:1;
  min-width:220px;
  padding:0.85rem 1rem;
  border-radius:12px;
  border:1px solid rgba(0,0,0,0.1);
  background:#f8f8f6;
}
.profile-track input:focus{
  border-color:var(--primary);
  outline:none;
  background:#ffffff;
}
.profile-manage-btn{
  width:max-content;
  padding-inline:1.75rem;
}
.history-list{
  display:grid;
  gap:0.85rem;
}
.history-list strong{
  font-size:1rem;
}
.history-list span{
  color:var(--muted);
  font-size:0.9rem;
}
@keyframes qtyBump{
  0%{transform:scale(1);}
  40%{transform:scale(1.05);}
  100%{transform:scale(1);}
}

/* Order modal */
.modal{
  position:fixed;
  inset:0;
  z-index:200;
  display:none;
  align-items:center;
  justify-content:center;
  padding:2rem;
}
.modal.open{display:flex;}
.modal-backdrop{
  position:absolute;
  inset:0;
  background:rgba(0,0,0,0.45);
}
.modal-dialog{
  position:relative;
  width:min(520px,100%);
  margin:0;
  background:#ffffff;
  border-radius:28px;
  box-shadow:0 40px 120px rgba(0,0,0,0.28);
  padding:2rem;
  display:grid;
  gap:1.5rem;
}
.modal-header{
  display:grid;
  gap:0.35rem;
}
.modal-header h3{
  margin:0;
  font-size:1.5rem;
}
.modal-pack{
  margin:0;
  color:var(--muted);
  font-weight:500;
}
.modal-close{
  position:absolute;
  top:1.2rem;
  right:1.2rem;
  border:none;
  background:#f0f2ef;
  width:40px;
  height:40px;
  border-radius:999px;
  font-size:1.1rem;
  color:#0C1F16;
}
.modal-body{
  display:grid;
  gap:1.2rem;
}
.modal-price{
  font-size:1.05rem;
  font-weight:600;
}
.modal-qty-grid{
  display:grid;
  gap:1rem;
}
.modal-qty{
  display:grid;
  gap:0.4rem;
}
.modal-qty__label{
  font-size:0.85rem;
  text-transform:uppercase;
  letter-spacing:0.08em;
  color:rgba(12,31,22,0.6);
}
.modal-qty__controls{
  display:flex;
  align-items:center;
  gap:0rem;
  max-width:210px;
}
.modal-qty__controls input{
  flex:1;
  border:none;
  background:transparent;
  text-align:center;
  font-weight:600;
  font-size:1.1rem;
  height:44px;
  line-height:44px;
}
.modal-qty__controls input:focus{outline:none;}
.qty-btn{
  width:20px;
  height:20px;
  border-radius:1px;
  border:1px solid transparent;
  background:transparent;
  font-size:1.35rem;
  line-height:5px;
  color:#0C1F16;
  transition:background .2s ease;
}
.qty-btn:hover{
  background:rgba(0,0,0,0.08);
}
.modal-hint{
  margin:0;
  font-size:0.9rem;
  color:var(--muted);
}
.modal-actions{
  display:flex;
  flex-wrap:wrap;
  gap:0.75rem;
}
.modal-open{overflow:hidden;}
@media (max-width:960px){
  .product-page-grid{
    grid-template-columns:1fr;
  }
  .product-sidebar{
    order:-1;
  }
  .product-spotlight__card{
    padding:1.5rem;
  }
  .product-qty-summary{
    grid-template-columns:repeat(auto-fit,minmax(140px,1fr));
  }
  .product-spotlight__footer{
    flex-direction:column;
    align-items:flex-start;
  }
  .product-sticky-cta{
    left:50%;
    right:auto;
  }
}
@media (max-width:640px){
  .product-page-title{
    align-items:flex-start;
  }
  .product-spotlight__card{
    border-radius:20px;
  }
  .product-qty-stepper{
    grid-template-columns:44px minmax(0,1fr) 44px;
  }
  .product-qty-summary{
    grid-template-columns:1fr;
  }
  .product-qty-summary__item,
  .product-qty-summary__total{
    text-align:center;
  }
  .product-sticky-cta{
    bottom:16px;
    width:calc(100% - 2rem);
    transform:translate(-50%,140%);
  }
  .product-toast{
    left:16px;
    right:16px;
    bottom:80px;
  }
}
.filters-row__search:focus-visible{
  outline:none;
  border-color:var(--primary);
  box-shadow:0 0 0 3px rgba(57,172,74,0.14);
}
.filters-row .custom-select{
  position:relative;
  flex:0 0 auto;
  min-width:220px;
}
.filters-row .custom-select.filters-row__select--filter{
  margin-right:auto;
}
.filters-row .custom-select.filters-row__select--sort{
  margin-left:auto;
}
.filters-row .custom-select.filters-row__select--sort .custom-select__list{
  left:auto;
  right:0;
}
.custom-select__native{
  display:none !important;
}
.custom-select__trigger{
  display:flex;
  align-items:center;
  gap:8px;
  min-height:40px;
  padding:0 16px;
  border-radius:999px;
  border:1px solid #E0E0E0;
  background:#ffffff;
  color:#0C1F16;
  font-weight:500;
  letter-spacing:0.5px;
  box-shadow:0 2px 4px rgba(0,0,0,0.05);
  transition:background .2s ease, color .2s ease, border .2s ease, box-shadow .2s ease;
}
.custom-select__trigger:hover{
  background:rgba(57,172,74,0.08);
}
.custom-select__trigger:focus-visible{
  outline:none;
  box-shadow:0 0 0 3px rgba(57,172,74,0.18);
}
.custom-select--open .custom-select__trigger{
  background:var(--primary);
  color:#ffffff;
  border-color:var(--primary);
  box-shadow:0 8px 18px rgba(57,172,74,0.25);
}
.custom-select__label{
  flex:1;
  text-align:left;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
}
.custom-select__caret{
  display:inline-flex;
  align-items:center;
  color:inherit;
}
.custom-select__caret::before{
  content:'▾';
  font-size:12px;
  line-height:1;
}
.custom-select__list{
  position:absolute;
  top:calc(100% + 10px);
  left:0;
  right:0;
  background:#ffffff;
  border:1px solid #EAEAEA;
  border-radius:12px;
  box-shadow:0 4px 12px rgba(0,0,0,0.08);
  padding:8px 0;
  opacity:0;
  transform:scale(0.96) translateY(-8px);
  transform-origin:top center;
  pointer-events:none;
  transition:opacity .18s ease, transform .18s ease;
  z-index:20;
  max-height:260px;
  overflow-y:auto;
}
.custom-select--open .custom-select__list{
  opacity:1;
  transform:scale(1) translateY(0);
  pointer-events:auto;
}
.custom-select__option{
  padding:8px 16px;
  margin:2px 0;
  font-weight:500;
  color:var(--muted);
  cursor:pointer;
  transition:color .18s ease, background .18s ease;
  border-radius:8px;
}
.custom-select__option:hover,
.custom-select__option.is-focused{
  color:var(--primary);
  background:rgba(57,172,74,0.1);
}
.custom-select__option.is-selected{
  color:var(--primary);
}
.custom-select__option[aria-disabled="true"]{
  opacity:0.55;
  cursor:not-allowed;
}
.card{
  background:#ffffff;
  border:1px solid rgba(12,31,22,0.06);
  box-shadow:0 10px 24px rgba(12,31,22,0.08);
  border-radius:22px;
  padding:22px;
  position:relative;
  display:grid;
  gap:16px;
  transition:transform .25s ease, box-shadow .25s ease, border-color .25s ease;
}
.card:hover{
  transform:translateY(-4px);
  box-shadow:0 16px 40px rgba(12,31,22,0.18);
  border-color:rgba(12,31,22,0.12);
}
.reveal-up{
  opacity:0;
  transform:translateY(10px);
  transition:opacity .4s ease, transform .4s ease;
}
.reveal-up.is-visible{
  opacity:1;
  transform:translateY(0);
}
.card-media{
  position:relative;
  display:flex;
  align-items:center;
  justify-content:center;
  background:#f6f8f5;
  border:1px solid rgba(0,0,0,0.05);
  border-radius:20px 20px 0 0;
  overflow:hidden;
  aspect-ratio:4 / 3;
  margin:-20px -20px 0;
}
.card-media--placeholder{
  background:#f6f8f5;
  border:1px solid rgba(0,0,0,0.05);
}
.card-media img{
  width:100%;
  height:100%;
  object-fit:contain;
  object-position:center;
  display:block;
}
.card-media .placeholder{
  display:flex;
  align-items:center;
  justify-content:center;
  flex-direction:column;
  text-align:center;
  font-size:0.9rem;
  color:rgba(12,31,22,0.65);
  gap:0.35rem;
  width:100%;
  height:100%;
  background:transparent;
  border:none;
  border-radius:inherit;
  margin:0;
  padding:20px;
  justify-content:flex-start;
  align-items:flex-start;
  text-align:left;
}
.card-media .placeholder .help{
  font-size:0.85rem;
  color:rgba(12,31,22,0.5);
}
.card-body{
  display:grid;
  gap:0.4rem;
}
.card-title{font-size:1.05rem;}
.card-desc{color:var(--muted);}
.card-footer{
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:12px;
}
.card-price{
  font-weight:600;
  color:var(--black);
}
.card-cta{
  display:flex;
  gap:0.6rem;
  flex-wrap:wrap;
}
.card-cta--call{
  justify-content:flex-start;
}
.card-cta .btn{
  padding:0.6rem 1.2rem;
  font-size:0.95rem;
}
.card-cta .order-btn{
  background:#f2f2f2;
  color:rgba(12,31,22,0.85);
  border:1px solid rgba(12,31,22,0.08);
  transition:background .2s ease, border-color .2s ease, color .2s ease, box-shadow .2s ease;
}
.card-cta .order-btn:hover{
  background:var(--primary);
  border-color:var(--primary);
  color:#ffffff;
  box-shadow:0 12px 20px rgba(57,172,74,0.25);
}
.card-cta .order-btn:focus-visible{
  outline:none;
  box-shadow:0 0 0 3px rgba(12,31,22,0.18);
}
.card-comingsoon{
  display:flex;
  align-items:center;
  justify-content:center;
  text-align:center;
  background:#0c5f2f;
  border:none;
  color:#ffffff;
}
.card-comingsoon .card-body{
  gap:0;
}
.card-comingsoon__text{
  font-size:20px;
  font-weight:700;
  color:#ffffff;
  margin:0;
}
.card-details{
  border:1px solid var(--primary);
  color:#ffffff;
  background:var(--primary);
}
.card-details:hover{
  background:#f7f8f7;
  color:var(--primary);
  border-color:#dfe3dd;
  box-shadow:0 10px 20px rgba(0,0,0,0.12);
}
.card-details:focus-visible{
  outline:none;
  box-shadow:0 0 0 3px rgba(57,172,74,0.18);
}
.card.card-product{
  background:#116329;
  border:1px solid rgba(0,0,0,0.08);
  color:#ffffff;
  box-shadow:0 20px 36px rgba(0,0,0,0.2);
}
.card.card-product:hover{
  box-shadow:0 24px 44px rgba(0,0,0,0.24);
}
.card.card-product .card-title,
.card.card-product .card-price{
  color:#ffffff;
}
.card.card-product .card-desc,
.card.card-product .card-specs{
  color:rgba(255,255,255,0.88);
}
.card.card-product .card-footer{
  color:#ffffff;
}

/* Tracking page */
.page-tracking main{
  padding-block:60px 80px;
}
.tracking-hero-grid{
  display:grid;
  grid-template-columns:minmax(0,1.8fr) minmax(0,0.9fr);
  gap:32px;
  margin-bottom:48px;
}
.card.tracking-card{
  border-radius:32px;
  border:1px solid rgba(12,31,22,0.08);
  box-shadow:0 35px 70px rgba(12,31,22,0.08);
  padding:28px;
  gap:1.4rem;
}
.tracking-card .card-body{
  gap:1rem;
}
.tracking-card--timeline .card-body{
  gap:1.5rem;
}
.tracking-card:hover{
  transform:none;
  box-shadow:0 35px 70px rgba(12,31,22,0.12);
}
.tracking-card--orders{
  box-shadow:none;
  border:1px solid rgba(12,31,22,0.06);
}
.tracking-card__hint{
  margin:0;
  color:rgba(12,31,22,0.65);
}
.tracking-card__helper{
  margin:0.5rem 0 0;
  font-size:0.9rem;
  color:rgba(12,31,22,0.55);
}
.tracking-card__helper[hidden]{
  display:none;
}
.tracking-search{
  margin-bottom:32px;
  display:grid;
  gap:0.35rem;
}
.tracking-search label{
  font-size:0.85rem;
  text-transform:uppercase;
  letter-spacing:0.08em;
  color:rgba(12,31,22,0.65);
}
.tracking-search__fields{
  display:flex;
  gap:0.75rem;
  flex-wrap:wrap;
}
.tracking-search__fields input{
  flex:1;
  min-width:220px;
  border-radius:18px;
  border:1px solid rgba(12,31,22,0.15);
  padding:0.85rem 1rem;
  font-size:1rem;
}
.tracking-search__fields input:focus{
  outline:none;
  border-color:var(--primary);
  box-shadow:0 0 0 3px rgba(57,172,74,0.2);
}
.tracking-orderlist{
  list-style:none;
  margin:0;
  padding:0;
  display:grid;
  gap:1rem;
}
.tracking-orderlist li{
  display:flex;
  justify-content:space-between;
  gap:1rem;
  padding:0.75rem 0;
  border-bottom:1px solid rgba(12,31,22,0.06);
  align-items:flex-start;
}
.tracking-orderlist li:last-child{
  border-bottom:none;
}
.tracking-orderlist__label{
  display:block;
  font-size:0.78rem;
  letter-spacing:0.08em;
  text-transform:uppercase;
  color:rgba(12,31,22,0.55);
  margin-bottom:0.2rem;
}
.tracking-orderlist strong{
  display:block;
  font-size:1rem;
}
.tracking-orderlist p{
  margin:0.15rem 0 0;
  color:rgba(12,31,22,0.65);
}
.tracking-card__head{
  display:flex;
  flex-direction:column;
  gap:12px;
}
.tracking-chip{
  display:inline-flex;
  align-items:center;
  gap:0.35rem;
  padding:0.35rem 0.85rem;
  border-radius:999px;
  font-size:0.85rem;
  font-weight:600;
  text-transform:uppercase;
  letter-spacing:0.08em;
  background:rgba(57,172,74,0.12);
  color:var(--primary);
  width:max-content;
}
.tracking-headline{
  display:flex;
  flex-direction:column;
  gap:6px;
}
.tracking-headline h3{
  margin:0;
  font-size:1.8rem;
}
.tracking-headline__meta{
  display:flex;
  flex-wrap:wrap;
  gap:12px 20px;
  font-size:0.95rem;
  color:rgba(12,31,22,0.65);
}
.tracking-headline__meta span{
  display:inline-flex;
  align-items:center;
  gap:0.4rem;
}
.tracking-meter{
  position:relative;
  padding:0;
  display:flex;
  flex-direction:column;
  gap:0.65rem;
}
.tracking-meter__rail{
  position:relative;
  width:100%;
  height:12px;
  border-radius:999px;
  background:rgba(12,31,22,0.12);
  overflow:hidden;
}
.tracking-meter__fill{
  position:absolute;
  inset:0;
  border-radius:inherit;
  background:linear-gradient(90deg,#39AC4A,#51C064 55%,#2F9640);
  transform-origin:left center;
  transform:scaleX(var(--timeline-progress-ratio,0));
  transition:transform .45s cubic-bezier(0.22, 0.61, 0.36, 1);
  box-shadow:0 6px 18px rgba(57,172,74,0.25);
}
.tracking-meter__checkpoints{
  position:absolute;
  inset:0;
  pointer-events:none;
}
.tracking-meter__checkpoint{
  position:absolute;
  top:50%;
  left:var(--checkpoint,0%);
  --checkpoint-size:18px;
  width:var(--checkpoint-size);
  height:var(--checkpoint-size);
  border-radius:50%;
  border:2px solid #d7d7d7;
  background:#d7d7d7;
  transform:translate(-50%,-50%);
  transition:background .3s ease,border-color .3s ease,box-shadow .3s ease,transform .3s ease;
}
.tracking-meter__checkpoint.is-active{
  background:#39AC4A;
  border-color:#39AC4A;
  box-shadow:0 0 0 5px rgba(57,172,74,0.25);
  animation:checkpointBounce .6s ease;
}
.tracking-meter__checkpoint.is-complete{
  background:#39AC4A;
  border-color:#39AC4A;
  box-shadow:none;
}
.tracking-meter__value{
  font-size:0.95rem;
  font-weight:600;
  color:#0C1F16;
}
.tracking-progress{
  --tracking-marker-size:18px;
  display:flex;
  flex-direction:column;
  gap:0.85rem;
  min-height:360px;
}
.tracking-step{
  flex:1 1 0;
  display:grid;
  grid-template-columns:24px 1fr;
  column-gap:16px;
  position:relative;
  align-items:center;
  opacity:0;
  transform:translateY(8px);
  will-change:opacity,transform;
}
.tracking-step.is-visible{
  animation:trackingStepReveal .38s ease forwards;
  animation-delay:calc(var(--reveal-index,0) * 0.08s);
}
.tracking-step__marker{
  width:18px;
  height:18px;
  border-radius:50%;
  border:2px solid rgba(12,31,22,0.2);
  background:#ffffff;
  justify-self:center;
  align-self:center;
  transition:background .2s ease, border-color .2s ease, transform .2s ease;
  z-index:1;
}
.tracking-step__content{
  display:grid;
  gap:0.2rem;
  align-self:center;
}
.tracking-step__meta{
  font-size:0.9rem;
  color:rgba(12,31,22,0.55);
  margin:0;
}
.tracking-step__title{
  margin:0;
  font-size:1rem;
  font-weight:700;
}
.tracking-step__desc{
  margin:0;
  color:rgba(12,31,22,0.7);
  font-size:0.95rem;
}
.tracking-step.is-complete .tracking-step__marker{
  background:#39AC4A;
  border-color:#39AC4A;
  box-shadow:0 4px 14px rgba(57,172,74,0.28);
}
.tracking-step.is-active .tracking-step__marker{
  transform:scale(1.05);
  border-color:#39AC4A;
  background:#39AC4A;
  box-shadow:0 4px 14px rgba(57,172,74,0.28);
  transition-delay:0.12s;
}
.tracking-step.is-active .tracking-step__title{
  color:#0C1F16;
}
@media (max-width:720px){
  .tracking-meter__checkpoint{
    --checkpoint-size:22px;
  }
  .tracking-step{
    min-height:72px;
    align-items:flex-start;
  }
}
@keyframes trackingStepReveal{
  from{opacity:0;transform:translateY(10px);}
  to{opacity:1;transform:translateY(0);}
}
@keyframes checkpointBounce{
  0%{transform:translate(-50%,-50%) scale(0.9);}
  50%{transform:translate(-50%,-50%) scale(1.08);}
  100%{transform:translate(-50%,-50%) scale(1);}
}
.tracking-error{
  margin:0;
  font-size:0.9rem;
  color:#c62828;
}
.tracking-form{
  display:grid;
  gap:1rem;
  margin-top:1rem;
}
.tracking-input{
  display:grid;
  gap:0.35rem;
}
.tracking-input label{
  font-size:0.85rem;
  text-transform:uppercase;
  letter-spacing:0.08em;
  color:rgba(12,31,22,0.65);
}
.tracking-input__field{
  display:flex;
  align-items:center;
  gap:0.65rem;
  border:1px solid rgba(12,31,22,0.12);
  border-radius:18px;
  background:#fafbfa;
  padding:0.9rem 1rem;
}
.tracking-input__field i{
  color:rgba(12,31,22,0.45);
}
.tracking-input__field input{
  border:none;
  background:transparent;
  width:100%;
  font-size:1rem;
}
.tracking-input__field input:focus{
  outline:none;
}
.tracking-form__actions{
  display:flex;
  flex-wrap:wrap;
  gap:0.75rem;
  margin-top:0.5rem;
}
.tracking-meta,
.tracking-meta__item,
.tracking-route,
.tracking-route__label,
.tracking-pills{
  display:none;
}
.pill{
  display:inline-flex;
  align-items:center;
  gap:0.35rem;
  padding:0.35rem 0.9rem;
  border-radius:999px;
  background:rgba(57,172,74,0.12);
  color:#0C1F16;
  font-size:0.9rem;
  font-weight:500;
}
.tracking-doc-list,
.tracking-doc__icon,
.tracking-grid{
  display:none;
}

/* Why section */
.feature-grid{
  display:grid;
  gap:40px;
  grid-template-columns:repeat(auto-fit,minmax(220px,1fr));
}
.feature-item{
  display:grid;
  gap:16px;
  text-align:center;
}
.feature-icon{
  width:56px;
  height:56px;
  margin-inline:auto;
  border-radius:50%;
  display:grid;
  place-items:center;
  background:rgba(57,172,74,0.12);
  color:var(--primary);
}
.feature-icon svg{
  width:24px;
  height:24px;
  fill:currentColor;
}
.feature-item p{
  color:var(--muted);
}
.section-cta{
  margin-top:2.5rem;
  display:flex;
  justify-content:flex-start;
}

/* Contact */
.section-contact{background:#F9F9F9;}
.contact-form{
  max-width:640px;
  margin-inline:auto;
  display:grid;
  gap:1.2rem;
}
.form-row{
  display:grid;
  gap:0.5rem;
}
.form-row label{
  font-weight:600;
}
.form-row input,
.form-row textarea{
  padding:0.85rem 1rem;
  border:1px solid var(--border);
  border-radius:12px;
  background:#ffffff;
  color:var(--black);
}
.form-row textarea{
  resize:vertical;
}
.form-actions{
  display:flex;
  justify-content:flex-end;
}

.section-checkout .checkout-shell{
  display:grid;
  gap:clamp(24px,4vw,36px);
  grid-template-columns:minmax(0,1.4fr) minmax(0,0.6fr);
  align-items:start;
}
.checkout-cost-card{
  background:#ffffff;
  border:1px solid rgba(0,0,0,0.06);
  border-radius:20px;
  box-shadow:0 12px 28px rgba(0,0,0,0.08);
  padding:1.25rem;
  display:grid;
  gap:0.85rem;
  width:100%;
}
.checkout-cost-card__row{
  display:flex;
  justify-content:space-between;
  align-items:center;
  font-weight:600;
  color:#0C1F16;
}
.checkout-cost-card__label{font-size:0.95rem;}
.checkout-cost-card__value{font-size:1.05rem;}
.checkout-cost-card__cta{
  margin-top:0.25rem;
  width:100%;
}
.checkout-summary{
  background:#ffffff;
  border:1px solid rgba(0,0,0,0.06);
  border-radius:24px;
  box-shadow:0 20px 38px rgba(0,0,0,0.08);
  padding:clamp(20px,3vw,32px);
  display:grid;
  gap:18px;
  width:100%;
}
.checkout-summary__title{
  font-size:1.2rem;
  font-weight:600;
  color:#0C1F16;
}
.checkout-table-wrap{
  width:100%;
  overflow-x:auto;
  padding:4px;
}
.checkout-table{
  width:100%;
  min-width:640px;
  border-collapse:collapse;
  margin-inline:auto;
  table-layout:fixed;
}
.checkout-table th{
  text-align:center;
  text-transform:uppercase;
  font-size:0.72rem;
  letter-spacing:0.08em;
  color:rgba(12,31,22,0.55);
  padding:12px 14px;
  border-bottom:1px solid rgba(12,31,22,0.12);
}
.checkout-table td{
  padding:14px;
  vertical-align:top;
  border-bottom:1px solid rgba(12,31,22,0.08);
  color:#0C1F16;
  font-weight:500;
}
.checkout-table th:nth-child(1),
.checkout-table td:nth-child(1){width:30%;}
.checkout-table th:nth-child(2),
.checkout-table td:nth-child(2){width:30%;}
.checkout-table th:nth-child(3),
.checkout-table td:nth-child(3){width:40%;}
.checkout-table th:nth-child(4),
.checkout-table td:nth-child(4){width:30%;}
.checkout-table th:nth-child(5),
.checkout-table td:nth-child(5){width:30%;}
.cart-price-col{
  white-space:normal;
  word-break:break-word;
}
.cart-qty{
  display:flex;
  flex-direction:column;
  gap:0.35rem;
  max-width:150px;
  margin:0 auto;
  align-items:center;
}
.cart-qty-block label{
  font-size:0.85rem;
  text-transform:uppercase;
	text-align: center;
  letter-spacing:0.08em;
  color:rgba(12,31,22,0.55);
  display:block;
}
.cart-qty-stepper{
  display:flex;
  align-items:center;
  justify-content:center;
  gap:0.25rem;
  max-width:150px;
  width:100%;
}
.cart-qty-stepper input{
  flex:0 0 34px;
  border:none;
  background:transparent;
  text-align:center;
  font-weight:600;
  font-size:1rem;
	width: 90px;
  height:26px;
  line-height:26px;
}
.cart-qty-stepper input:focus{
  outline:none;
}
.cart-qty-stepper button{
  width:26px;
  height:26px;
  border:none;
  border-radius:6px;
  background:transparent;
  color:#0C1F16;
  font-size:1.1rem;
  line-height:1;
  display:flex;
  align-items:center;
  justify-content:center;
  transition:background .15s ease;
}
.cart-qty-stepper button:hover{
  background:rgba(12,31,22,0.08);
}
.checkout-table td.center{
  text-align:center;
}
.checkout-table tfoot td{
  font-weight:700;
  font-size:0.95rem;
  border-bottom:none;
  padding-top:16px;
}
.checkout-help{
  margin:0;
  font-size:0.9rem;
  color:rgba(12,31,22,0.6);
}
.checkout-panel{
  background:#ffffff;
  border:1px solid rgba(0,0,0,0.06);
  border-radius:24px;
  box-shadow:0 20px 38px rgba(0,0,0,0.08);
  padding:clamp(22px,3vw,32px);
  display:grid;
  gap:1.4rem;
  width:100%;
}
.checkout-panel h3{
  margin:0;
  font-size:1.25rem;
  color:#0C1F16;
}
.checkout-form{
  display:grid;
  gap:1.2rem;
}
.checkout-form__grid{
  display:grid;
  gap:1rem 16px;
  grid-template-columns:repeat(2,minmax(0,1fr));
}
.checkout-form .form-field{
  display:grid;
  gap:0.45rem;
}
.checkout-form .form-field--full{
  grid-column:1 / -1;
}
.checkout-form label{
  font-weight:600;
  font-size:0.95rem;
  color:#0C1F16;
}
.checkout-form input,
.checkout-form textarea{
  width:100%;
  padding:0.85rem 1rem;
  border:1px solid rgba(0,0,0,0.12);
  border-radius:12px;
  background:#ffffff;
  color:#0C1F16;
  transition:border .2s ease, box-shadow .2s ease;
  box-shadow:0 1px 2px rgba(12,31,22,0.06);
}
.checkout-form input:focus,
.checkout-form textarea:focus{
  border-color:#39AC4A;
  box-shadow:0 0 0 3px rgba(57,172,74,0.18);
  outline:none;
}
.checkout-form textarea{
  min-height:140px;
  resize:vertical;
}
.form-consent{
  display:flex;
  align-items:flex-start;
  gap:0.6rem;
  font-size:0.9rem;
  color:#0C1F16;
}
.form-consent input{
  margin-top:0.35rem;
  width:auto;
}
.form-consent__text{
  margin:0;
}
.form-consent a{
  color:#39AC4A;
  text-decoration:underline;
}
.checkout-actions{
  display:flex;
  gap:0.75rem;
  flex-wrap:wrap;
}
.checkout-actions .btn{
  min-width:180px;
}
.checkout-actions .btn-outline{
  border-color:rgba(0,0,0,0.16);
  color:#0C1F16;
}
.checkout-actions .btn-outline:hover{
  border-color:#39AC4A;
  color:#39AC4A;
}
.checkout-message{
  font-size:0.9rem;
  color:rgba(12,31,22,0.65);
  margin:0;
}
.account-track__form{
  margin-top:1.2rem;
}
.account-track__controls{
  display:flex;
  align-items:center;
  gap:12px;
  flex-wrap:wrap;
}
.account-track__controls input{
  flex:1 1 240px;
  min-width:200px;
  padding:0.85rem 1rem;
  border:1px solid rgba(0,0,0,0.12);
  border-radius:12px;
  background:#ffffff;
  color:#0C1F16;
  font-weight:500;
  transition:border .2s ease, box-shadow .2s ease;
  box-shadow:0 1px 2px rgba(12,31,22,0.06);
}
.account-track__controls input:focus{
  outline:none;
  border-color:#39AC4A;
  box-shadow:0 0 0 3px rgba(57,172,74,0.18);
}
.account-track__controls .btn{
  min-height:46px;
  min-width:140px;
  padding:0.85rem 1.8rem;
}
.account-track__controls .btn-outline{
  border-color:rgba(0,0,0,0.16);
  color:#0C1F16;
}
.account-track__controls .btn-outline:hover{
  border-color:#39AC4A;
  color:#39AC4A;
}

/* Footer */
.footer{
  background:#000000;
  color:#ffffff;
  padding-block:60px;
  border-top:1px solid rgba(255,255,255,0.08);
  letter-spacing:0.5px;
  margin-top:auto;
}
.footer-cta{
  display:grid;
  grid-template-columns:1fr auto;
  gap:18px;
  align-items:center;
  background:linear-gradient(120deg,rgba(57,172,74,0.18),rgba(57,172,74,0.08));
  border:1px solid rgba(255,255,255,0.16);
  border-radius:18px;
  padding:18px 20px;
  margin:0 auto 28px;
  box-shadow:0 18px 38px rgba(0,0,0,0.28);
}
.footer-cta__title{
  margin:0;
  font-size:1.1rem;
  font-weight:700;
}
.footer-cta__text{
  margin:4px 0 0;
  color:rgba(255,255,255,0.78);
  font-size:0.95rem;
}
.footer-cta__actions{
  display:flex;
  gap:10px;
  flex-wrap:wrap;
  justify-content:flex-end;
}
.footer-cta .btn{
  padding:10px 16px;
}
.footer a{
  color:#ffffff;
  transition:color .2s ease, opacity .2s ease;
}
.footer a:hover{
  color:#39AC4A;
}
.footer-inner{
  display:grid;
  grid-template-columns:minmax(0,2fr) repeat(2,minmax(0,1fr));
  gap:24px;
  align-items:start;
}
.footer-logo-link{
  display:inline-flex;
  align-items:center;
  margin-bottom:1rem;
}
.footer-logo{
  max-height:52px;
  width:auto;
  display:block;
}
.footer-brand p{
  margin:0 0 1.5rem;
  max-width:340px;
  color:rgba(255,255,255,0.72);
}
.footer-social{
  display:flex;
  gap:12px;
}
.footer-social__link{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  transition:transform .2s ease;
}
.footer-social__icon{
  width:30px;
  height:30px;
  display:block;
  background:#ffffff;
  -webkit-mask-repeat:no-repeat;
  mask-repeat:no-repeat;
  -webkit-mask-position:center;
  mask-position:center;
  -webkit-mask-size:contain;
  mask-size:contain;
  transition:transform .2s ease, background .2s ease;
}
.footer-social__img{
  width:28px;
  height:28px;
  object-fit:contain;
  filter:brightness(0) invert(1);
  transition:transform .2s ease, filter .2s ease;
}
.footer-social__link:hover .footer-social__img{
  transform:scale(1.05);
  filter:invert(64%) sepia(26%) saturate(1026%) hue-rotate(78deg) brightness(95%) contrast(94%);
}
.footer-social__link:hover .footer-social__icon{
  transform:scale(1.05);
}
.footer-social__link--tiktok .footer-social__img{
  width:34px;
  height:34px;
  filter:brightness(0) invert(1);
  transition:transform .25s ease, filter .25s ease;
}
.footer-social__link--tiktok:hover .footer-social__img{
  transform:scale(1.12);
  filter:drop-shadow(-2px -1px 0 rgba(37,244,238,.8)) drop-shadow(2px 1px 0 rgba(254,44,85,.85));
}
.footer-social__icon--instagram{
  background:#ffffff;
  -webkit-mask-image:url("assets/social/instagram.png");
  mask-image:url("assets/social/instagram.png");
}
.footer-social__link--instagram:hover .footer-social__icon--instagram{
  background:linear-gradient(135deg,#f9ce34 0%,#ee2a7b 40%,#c32aa3 60%,#4c4ed7 100%);
}
.footer-col h3{
  margin:0 0 1rem;
  text-transform:uppercase;
  letter-spacing:0.5px;
  font-size:0.95rem;
}
.footer-list{
  display:grid;
  gap:0.65rem;
  margin:0;
  padding:0;
  list-style:none;
}
.footer-list a{
  display:inline-flex;
  align-items:center;
  gap:10px;
  color:rgba(255,255,255,0.9);
}
.footer-list a:hover{
  color:#39AC4A;
}
.footer-link-icon{
  width:16px;
  height:16px;
  flex:0 0 16px;
  fill:currentColor;
  opacity:0.85;
  transition:fill .2s ease, opacity .2s ease;
}
.footer-list a:hover .footer-link-icon{
  opacity:1;
}
.footer-note{
  margin-top:24px;
  font-size:0.85rem;
  color:rgba(255,255,255,0.6);
}
@media (max-width:960px){
  .section-checkout .checkout-shell{
    grid-template-columns:1fr;
  }
  .footer-inner{
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:24px;
  }
  .footer-brand p{
    max-width:none;
  }
  .footer-cta{
    grid-template-columns:1fr;
    text-align:left;
  }
}
@media (max-width:768px){
  .section-checkout .checkout-shell{
    grid-template-columns:1fr;
  }
  .checkout-form__grid{
    grid-template-columns:1fr;
  }
  .account-track__controls{
    flex-direction:column;
    align-items:stretch;
  }
  .account-track__controls input,
  .account-track__controls .btn{
    width:100%;
  }
  .footer{
    padding-block:32px;
  }
  .footer-inner{
    grid-template-columns:1fr;
    text-align:center;
    gap:24px;
  }
  .footer-brand p{
    margin-inline:auto;
  }
  .footer-social{
    justify-content:center;
  }
  .footer-list a{
    justify-content:center;
  }
  .footer-note{
    text-align:center;
  }
}

/* Sticky cart & mobile nav (minimal) */
.sticky-cart{
  position:fixed;
  bottom:24px;
  right:24px;
  width:320px;
  max-width:calc(100% - 32px);
  background:#ffffff;
  border:none;
  border-radius:32px;
  box-shadow:0 28px 60px rgba(12,31,22,0.12);
  padding:1.5rem;
  display:none;
  flex-direction:column;
  gap:1.25rem;
  z-index:260;
}
.sticky-cart__header{
  display:flex;
  justify-content:space-between;
  align-items:flex-start;
  gap:0.75rem;
}
.sticky-cart__titlegroup{
  display:flex;
  flex-direction:column;
  gap:0.15rem;
}
.sticky-cart__title{
  font-size:1rem;
  font-weight:600;
  color:#0C1F16;
}
.sticky-cart__summary{
  margin:0;
  font-size:0.85rem;
  color:var(--muted);
  text-align:left;
}
.sticky-cart__toggle{
  width:46px;
  height:46px;
  border-radius:50%;
  border:none;
  background:rgba(57,172,74,0.1);
  color:#0C1F16;
  display:grid;
  place-items:center;
  transition:transform .2s ease, background .2s ease;
  cursor:pointer;
}
.sticky-cart__toggle i{
  pointer-events:none;
  font-size:1rem;
}
.sticky-cart__toggle:hover{
  background:rgba(57,172,74,0.18);
}
.sticky-cart__body{
  display:grid;
  gap:1.25rem;
}
.sticky-cart__items{
  display:grid;
  gap:1rem;
  max-height:260px;
  overflow-y:auto;
  padding-right:0;
}
.sticky-cart__empty{
  text-align:center;
  color:var(--muted);
}
.sticky-cart__item{
  position:relative;
  border:none;
  border-radius:24px;
  padding:0.75rem;
  background:transparent;
  text-align:center;
}
.sticky-cart__remove{
  position:absolute;
  top:0.55rem;
  left:0.55rem;
  border:none;
  background:transparent;
  color:var(--muted);
  font-size:0.9rem;
}
.sticky-cart__item-name{
  font-weight:600;
  color:#0C1F16;
  margin-bottom:0.25rem;
}
.sticky-cart__steppers{
  display:flex;
  flex-direction:column;
  align-items:center;
  gap:0.3rem;
  margin-top:0.25rem;
}
.sticky-cart__step label{
  font-size:0.7rem;
  text-transform:uppercase;
  letter-spacing:0.08em;
  color:rgba(12,31,22,0.55);
  display:block;
  text-align:center;
}
.sticky-cart-stepper{
  display:flex;
  align-items:center;
  justify-content:center;
  gap:0.1rem;
  max-width:100px;
  margin:0 auto;
}
.sticky-cart-stepper input{
  flex:0 0 32px;
  border:none;
  background:transparent;
  text-align:center;
  font-weight:600;
  font-size:0.95rem;
  height:28px;
  line-height:28px;
}
.sticky-cart-stepper button{
  width:26px;
  height:26px;
  border-radius:6px;
  border:none;
  background:transparent;
  color:#0C1F16;
  font-size:1.1rem;
  display:flex;
  align-items:center;
  justify-content:center;
}
.sticky-cart-stepper button:hover{
  background:rgba(57,172,74,0.12);
}
.sticky-cart__checkout{
  width:100%;
  justify-content:center;
  border-radius:999px;
  font-size:1rem;
}
.sticky-cart--collapsed{
  width:64px;
  height:64px;
  padding:0;
  border-radius:999px;
  background:var(--primary);
  border:none;
  box-shadow:0 20px 50px rgba(57,172,74,0.35);
  align-items:center;
  justify-content:center;
}
.sticky-cart--collapsed .sticky-cart__body,
.sticky-cart--collapsed .sticky-cart__titlegroup{
  display:none;
}
.sticky-cart--collapsed .sticky-cart__header{
  width:100%;
  height:100%;
  justify-content:center;
  align-items:center;
}
.sticky-cart--collapsed .sticky-cart__toggle{
  width:100%;
  height:100%;
  border:none;
  background:transparent;
  color:#ffffff;
  border-radius:inherit;
  font-size:1.4rem;
}
.sticky-cart--collapsed .sticky-cart__toggle:hover{
  background:transparent;
  color:#ffffff;
}

.mobile-bottom-nav{
  position:fixed;
  bottom:0;
  left:0;
  right:0;
  display:none;
  background:#000000;
  border-top:1px solid rgba(255,255,255,0.12);
  padding:0.5rem 1rem calc(0.75rem + env(safe-area-inset-bottom,0));
  flex-direction:column;
  align-items:center;
  gap:8px;
  z-index:200;
  color:#ffffff;
}
.mobile-bottom-nav__icons{
  width:100%;
  display:flex;
  align-items:center;
  justify-content:center;
  gap:28px;
}
.mobile-bottom-nav__icon{
  width:48px;
  height:48px;
  border-radius:50%;
  display:grid;
  place-items:center;
  color:#ffffff;
  transition:background .2s ease, color .2s ease;
  background:transparent;
}
.mobile-bottom-nav__icon--search{
  border:none;
  background:transparent;
  color:inherit;
}
.mobile-bottom-nav__icon:hover{
  background:rgba(255,255,255,0.15);
  color:#ffffff;
}
.mobile-bottom-nav__icon--search:hover{
  background:rgba(255,255,255,0.15);
}
.mobile-bottom-nav.expanded .mobile-bottom-nav__icon--search{
  background:transparent;
  color:#ffffff;
  border:none;
}
.mobile-bottom-nav__search-form{
  width:100%;
  display:flex;
  justify-content:center;
  max-height:0;
  opacity:0;
  pointer-events:none;
  overflow:hidden;
  transition:max-height .2s ease, opacity .2s ease;
}
.mobile-bottom-nav.expanded .mobile-bottom-nav__search-form{
  max-height:80px;
  opacity:1;
  pointer-events:auto;
}
.mobile-bottom-nav__search-input{
  width:100%;
  max-width:420px;
  min-height:48px;
  border:1px solid rgba(255,255,255,0.3);
  border-radius:999px;
  padding:0 20px;
  font-size:0.95rem;
  background:#111111;
  color:#ffffff;
  box-shadow:0 6px 18px rgba(0,0,0,0.4);
}
.mobile-bottom-nav__search-input::placeholder{
  color:rgba(255,255,255,0.6);
}
.mobile-bottom-nav__search-input:focus{
  outline:none;
  border-color:var(--primary);
  box-shadow:0 0 0 3px rgba(57,172,74,0.25);
}

/* Reveal animations */
[data-reveal]{
  opacity:0;
  transform:translateY(32px);
  transition:
    opacity .6s ease-in-out var(--reveal-delay,0s),
    transform .6s ease-in-out var(--reveal-delay,0s);
  will-change:opacity, transform;
}
[data-reveal].is-visible{
  opacity:1;
  transform:translateY(0);
}

/* Responsive adjustments */
@media (max-width:960px){
  .tracking-hero-grid{
    grid-template-columns:1fr;
  }
  .nav{margin-left:20px;}
  .about-grid{flex-direction:column;}
  .footer-grid{
    grid-template-columns:1fr;
    text-align:center;
  }
  .footer-social{
    justify-content:center;
  }
  .sticky-cart:not(.sticky-cart--collapsed){
    right:16px;
    left:auto;
    width:min(320px, calc(100% - 32px));
  }
}
@media (max-width:640px){
  body{
    padding-top:70px;
    padding-bottom:calc(110px + env(safe-area-inset-bottom,0));
  }
  .header{
    height:70px;
  }
  .header-inner{
    padding-inline:var(--page-pad);
    gap:12px;
  }
  .nav-link{
    margin:0 8px;
  }
  .lang-toggle{
    display:none;
  }
  .hero-content__inner{
    padding:0 20px;
  }
  .hero-slider__control{
    width:40px;
    height:40px;
    top:auto;
    bottom:110px;
    transform:none;
  }
  .hero-slider__control--prev{left:16px;}
  .hero-slider__control--next{right:16px;}
  .hero-slider__dots{bottom:24px;}
  .form-actions{
    justify-content:flex-start;
  }
  .tracking-card{
    padding:22px;
  }
  .tracking-progress{
    min-height:300px;
  }
  .tracking-form__actions{
    flex-direction:column;
    align-items:stretch;
  }
  .tracking-route{
    flex-direction:column;
    align-items:flex-start;
  }
  .tracking-headline__meta{
    flex-direction:column;
  }
  .mobile-bottom-nav{
    display:flex;
  }
  .sticky-cart{
    right:clamp(12px,4vw,20px);
    left:auto;
    bottom:calc(80px + 16px + env(safe-area-inset-bottom,0));
  }
  .filters-row{
    flex-direction:column;
    align-items:stretch;
    gap:12px;
  }
  .filters-row__search{
    display:none;
  }
  .filters-row .custom-select{
    width:100%;
    margin:0;
  }
.custom-select__trigger{
  width:100%;
  justify-content:space-between;
}

/* Admin Control Room — playful glass + neumorph */
body.page-admin{
  min-height:100vh;
  margin:0;
  font-family:'Inter',system-ui,-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;
  background:radial-gradient(circle at top,#f3f6ff,#fef9f3);
  color:#0b1f19;
  display:flex;
  justify-content:center;
  align-items:flex-start;
  padding:50px 16px 80px;
}
.admin-bg-glow{
  position:fixed;
  inset:0;
  background:
    radial-gradient(circle at 15% 15%,rgba(255,166,158,0.45),transparent 50%),
    radial-gradient(circle at 80% 0%,rgba(137,196,255,0.45),transparent 40%),
    linear-gradient(135deg,rgba(255,255,255,0.6),transparent 30%);
  filter:blur(55px);
  pointer-events:none;
  z-index:0;
}
.admin-shell{
  position:relative;
  z-index:1;
  width:100%;
  max-width:2000px;
  margin:0 auto;
  padding:0;
  display:flex;
  flex-direction:column;
  gap:32px;
}
.admin-hero{
  display:flex;
  flex-wrap:wrap;
  justify-content:space-between;
  gap:2rem;
  padding:32px;
  border-radius:36px;
  background:rgba(255,255,255,0.78);
  box-shadow:28px 28px 60px rgba(175,188,213,0.55),
             -20px -20px 45px rgba(255,255,255,0.85);
  backdrop-filter:blur(20px);
}
.admin-hero__logo img{
  height:52px;
}
.admin-hero__kicker{
  margin:1rem 0 0.25rem;
  text-transform:uppercase;
  letter-spacing:0.24em;
  font-size:0.7rem;
  color:rgba(35,52,50,0.6);
}
.admin-hero h1{
  margin:0;
  font-size:clamp(2.4rem,4.5vw,3.3rem);
}
.admin-hero__lead{
  margin:0.5rem 0 0;
  color:rgba(15,33,29,0.75);
}
.admin-hero__actions{
  margin-top:1.5rem;
  display:flex;
  gap:0.8rem;
  flex-wrap:wrap;
}
.admin-pill{
  padding:0.6rem 1.2rem;
  border-radius:999px;
  background:#f1f4ff;
  box-shadow:inset 4px 4px 10px rgba(180,187,209,0.6),
             inset -4px -4px 10px rgba(255,255,255,0.9);
  font-weight:600;
}
.admin-pill--cta{
  background:linear-gradient(135deg,#ff8fb1,#8bd0ff);
  color:#0b1f19;
  border:none;
  cursor:pointer;
  box-shadow:0 18px 35px rgba(255,143,177,0.35);
  transition:transform .2s ease, box-shadow .2s ease;
}
.admin-pill--cta:hover{
  transform:translateY(-2px);
  box-shadow:0 25px 45px rgba(255,143,177,0.4);
}
.admin-hero__stats{
  list-style:none;
  margin:0;
  padding:0;
  flex:1;
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(200px,1fr));
  gap:1rem;
}
.admin-hero__stats li{
  padding:1rem;
  border-radius:22px;
  background:#f7f9ff;
  box-shadow:-12px -12px 24px rgba(255,255,255,0.8),
             12px 12px 24px rgba(182,193,214,0.6);
  text-align:left;
}
.admin-hero__stats p{
  margin:0;
  text-transform:uppercase;
  letter-spacing:0.18em;
  font-size:0.68rem;
  color:rgba(15,33,29,0.5);
}
.admin-hero__stats strong{
  display:block;
  margin:0.35rem 0 0.1rem;
  font-size:1.9rem;
  color:#0b1f19;
}
.admin-cards{
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(320px,1fr));
  gap:24px;
}
.admin-card{
  border-radius:30px;
  padding:28px;
  box-shadow:-20px -20px 60px rgba(255,255,255,0.9),
             20px 20px 60px rgba(170,190,200,0.45);
  background:rgba(255,255,255,0.82);
}
.admin-card--neo{
  background:linear-gradient(135deg,#141e30,#243b55);
  color:#f5fbff;
  box-shadow:0 25px 50px rgba(20,30,48,0.4);
}
.admin-eyebrow{
  margin:0;
  text-transform:uppercase;
  letter-spacing:0.22em;
  font-size:0.7rem;
  color:rgba(15,33,29,0.55);
}
.admin-card--neo .admin-eyebrow{
  color:rgba(255,255,255,0.55);
}
.admin-card header h2{
  margin:0.2rem 0 0.5rem;
  font-size:1.6rem;
}
.admin-copy{
  margin:0 0 1.2rem;
  color:inherit;
  opacity:0.75;
}
.admin-form{
  display:grid;
  gap:1rem;
}
.admin-form--inline{
  grid-template-columns:repeat(auto-fit,minmax(220px,1fr));
}
.admin-form label{
  display:flex;
  flex-direction:column;
  gap:0.35rem;
  font-size:0.9rem;
}
.admin-form label span{
  font-size:0.75rem;
  letter-spacing:0.12em;
  text-transform:uppercase;
  color:rgba(15,33,29,0.55);
}
.admin-card--neo label span{
  color:rgba(255,255,255,0.6);
}
.admin-form input,
.admin-form select,
.admin-form textarea{
  border-radius:18px;
  border:1px solid rgba(15,33,29,0.15);
  padding:0.85rem 1rem;
  background:#f8fbff;
  font-size:1rem;
  box-shadow:inset 5px 5px 12px rgba(200,210,220,0.5),
             inset -5px -5px 12px rgba(255,255,255,0.9);
}
.admin-card--neo .admin-form input,
.admin-card--neo .admin-form select,
.admin-card--neo .admin-form textarea{
  background:rgba(255,255,255,0.15);
  border-color:rgba(255,255,255,0.3);
  color:#f5fbff;
  box-shadow:none;
}
.admin-feed{
  border-radius:36px;
  padding:32px;
  background:rgba(255,255,255,0.88);
  box-shadow:-25px -25px 60px rgba(255,255,255,0.9),
             25px 25px 60px rgba(180,195,210,0.5);
}
.admin-feed__head{
  display:flex;
  justify-content:space-between;
  flex-wrap:wrap;
  gap:1rem;
}
.admin-feed__watch{
  display:flex;
  align-items:center;
  gap:0.5rem;
}
.admin-label{
  text-transform:uppercase;
  letter-spacing:0.2em;
  font-size:0.68rem;
  color:rgba(15,33,29,0.55);
}
.admin-pulse{
  width:12px;
  height:12px;
  border-radius:50%;
  background:#33b69f;
  box-shadow:0 0 0 rgba(51,182,159,0.6);
  animation:adminPulse 2s infinite;
}
.admin-empty{
  margin-top:1.2rem;
  padding:1rem;
  border-radius:18px;
  background:rgba(15,33,29,0.05);
  text-align:center;
  color:rgba(15,33,29,0.6);
}
.admin-orders{
  margin-top:24px;
  display:grid;
  gap:18px;
}
.admin-order{
  padding:20px;
  border-radius:24px;
  background:linear-gradient(145deg,#f9fbff,#e8eef9);
  box-shadow:12px 12px 25px rgba(184,196,214,0.6),
             -12px -12px 25px rgba(255,255,255,0.95);
}
.admin-order__header{
  display:flex;
  justify-content:space-between;
  flex-wrap:wrap;
  gap:1rem;
}
.admin-order__header h3{
  margin:0;
  font-size:1.35rem;
}
.admin-order__status{
  margin:0.2rem 0;
  color:rgba(15,33,29,0.65);
}
.admin-order__customer{
  margin:0;
  color:rgba(15,33,29,0.5);
}
.admin-order__toggle{
  border:none;
  border-radius:999px;
  padding:0.4rem 0.9rem;
  background:rgba(15,33,29,0.08);
  color:#0b1f19;
  cursor:pointer;
}
.admin-order__history{
  margin:1rem 0;
  border-top:1px solid rgba(15,33,29,0.08);
  padding-top:0.8rem;
  color:rgba(15,33,29,0.65);
}
.admin-order__form label{
  color:rgba(15,33,29,0.75);
}
.admin-order__form textarea,
.admin-order__form select,
.admin-order__form input{
  background:rgba(255,255,255,0.9);
  border-color:rgba(15,33,29,0.08);
  box-shadow:inset 4px 4px 10px rgba(200,210,220,0.35),
             inset -4px -4px 10px rgba(255,255,255,0.9);
}
.admin-order__form .btn{
  margin-top:0.6rem;
}
@keyframes adminPulse{
  0%{box-shadow:0 0 0 0 rgba(51,182,159,0.6);}
  70%{box-shadow:0 0 0 12px rgba(51,182,159,0);}
  100%{box-shadow:0 0 0 0 rgba(51,182,159,0);}
}
@media (max-width:768px){
  .admin-hero,
  .admin-feed,
  .admin-card{
    padding:24px;
  }
  .admin-shell{
    padding:40px 16px 60px;
  }
}
}
