/* =========================================================
   EverythingMarket — premium marketplace stylesheet
   ========================================================= */

:root{
  --navy:        #0B1B33;
  --navy-2:      #142845;
  --blue:        #2F6FED;
  --gold:        #C9973E;
  --teal:        #1E7F6E;
  --bg:          #F6F5F1;
  --card:        #FFFFFF;
  --text:        #16202E;
  --text-muted:  #5B6472;
  --border:      #E7E3DA;

  --font-display: 'Space Grotesk', sans-serif;
  --font-body:    'Inter', sans-serif;

  --radius-lg: 20px;
  --radius-md: 14px;
  --radius-sm: 10px;

  --shadow-soft: 0 10px 30px rgba(11,27,51,0.08);
  --shadow-strong: 0 24px 60px rgba(11,27,51,0.18);
}

*{box-sizing:border-box;}
html{scroll-behavior:smooth;}
body{
  font-family: var(--font-body);
  color: var(--text);
  background: var(--bg);
  overflow-x: hidden;
  -webkit-font-smoothing: antialiased;
}
h1,h2,h3,h4,h5,h6{
  font-family: var(--font-display);
  color: var(--navy);
  margin: 0;
}
p{margin:0; color: var(--text-muted); line-height: 1.6;}
a{text-decoration:none; color: inherit;}
img{max-width:100%; display:block;}
.container{max-width:1240px;}

::selection{background: var(--blue); color:#fff;}

/* ---------- buttons ---------- */
.btn{
  display:inline-flex; align-items:center; gap:.5rem;
  font-family: var(--font-body); font-weight:600; font-size:.95rem;
  padding: .8rem 1.5rem; border-radius: 999px; border:none;
  transition: transform .25s ease, box-shadow .25s ease, background .25s ease;
  white-space:nowrap;
}
.btn-post{
  background: linear-gradient(135deg, var(--blue), #1c4fc9);
  color:#fff; box-shadow: 0 10px 24px rgba(47,111,237,0.35);
}
.btn-post:hover{ transform: translateY(-2px); box-shadow: 0 14px 30px rgba(47,111,237,0.45); color:#fff;}
.btn-search{ background: var(--navy); color:#fff; padding:.9rem 2rem;}
.btn-search:hover{ background: var(--blue); }
.btn-light-outline{
  border:1.5px solid rgba(255,255,255,0.6); color:#fff; background: rgba(255,255,255,0.06);
  backdrop-filter: blur(6px);
}
.btn-light-outline:hover{ background:#fff; color: var(--navy); }
.btn-outline-dark-pill{
  border:1.5px solid var(--border); background:transparent; color: var(--navy);
  padding:.8rem 2rem; border-radius:999px; font-weight:600;
  transition: all .25s ease;
}
.btn-outline-dark-pill:hover{ background: var(--navy); color:#fff; border-color: var(--navy); }

.icon-btn{
  width:42px; height:42px; border-radius:50%; border:1px solid var(--border);
  background:#fff; display:flex; align-items:center; justify-content:center;
  color: var(--navy); font-size:1rem;
}

/* ---------- scroll progress ---------- */
.scroll-progress{ position:fixed; top:0; left:0; width:100%; height:3px; z-index:1200; background:transparent;}
.scroll-progress__bar{ height:100%; width:0%; background: linear-gradient(90deg, var(--blue), var(--gold)); }

/* ---------- header ---------- */
.site-header{
  position: fixed; top:0; left:0; width:100%; z-index:1000;
  padding: 18px 0;
  background: rgba(11,27,51,0.0);
  transition: background .3s ease, box-shadow .3s ease, padding .3s ease;
}
.site-header.is-scrolled{
  background: rgba(255,255,255,0.85);
  backdrop-filter: blur(14px) saturate(160%);
  box-shadow: 0 6px 24px rgba(11,27,51,0.08);
  padding: 10px 0;
}
.header-inner{ display:flex; align-items:center; justify-content:space-between; gap:1.5rem; }

.brand{ display:flex; align-items:center; gap:.6rem; }
.brand__mark{
  width:38px; height:38px; border-radius:10px; display:flex; align-items:center; justify-content:center;
  background: linear-gradient(135deg, var(--blue), var(--navy)); color:#fff;
  font-family: var(--font-display); font-weight:700; font-size:.85rem;
}
.brand__name{ font-family: var(--font-display); font-weight:700; font-size:1.2rem; color:#fff; transition: color .3s ease;}
.brand__name em{ font-style:normal; color: var(--gold); }
.site-header.is-scrolled .brand__name{ color: var(--navy); }

.main-nav{ gap: 2rem; }
.main-nav__link{
  font-size:.95rem; font-weight:500; color:#fff; position:relative; padding:.3rem 0;
  transition: color .3s ease;
}
.main-nav__link::after{
  content:''; position:absolute; left:0; bottom:-2px; width:0; height:2px; background: var(--gold);
  transition: width .25s ease;
}
.main-nav__link:hover::after{ width:100%; }
.site-header.is-scrolled .main-nav__link{ color: var(--navy); }

.header-actions{ align-items:center; gap:1.2rem; }
.header-actions__link{ font-size:.9rem; font-weight:500; color:#fff; transition: color .3s ease; }
.site-header.is-scrolled .header-actions__link{ color: var(--navy); }
.site-header:not(.is-scrolled) .icon-btn{ background: rgba(255,255,255,0.12); border-color: rgba(255,255,255,0.3); color:#fff; }

/* ---------- mobile drawer ---------- */
.mobile-drawer{
  position:fixed; top:0; right:-100%; width:min(340px,85%); height:100%; z-index:1300;
  background: var(--navy); color:#fff; padding: 1.5rem; display:flex; flex-direction:column; gap:2rem;
  transition: right .4s cubic-bezier(.4,0,.2,1);
}
.mobile-drawer.is-open{ right:0; }
.mobile-drawer__head{ display:flex; align-items:center; justify-content:space-between; }
.mobile-drawer .icon-btn{ background: rgba(255,255,255,0.1); border-color: rgba(255,255,255,0.2); color:#fff; }
.mobile-drawer__nav{ display:flex; flex-direction:column; gap:1.1rem; flex:1; }
.mobile-drawer__nav a{ font-size:1.05rem; font-weight:500; color: rgba(255,255,255,0.85); }
.drawer-backdrop{
  position:fixed; inset:0; background:rgba(11,27,51,0.5); z-index:1250; opacity:0; pointer-events:none;
  transition: opacity .3s ease;
}
.drawer-backdrop.is-open{ opacity:1; pointer-events:auto; }

/* ---------- hero ---------- */
.hero{ position:relative; min-height: 92vh; display:flex; align-items:flex-end; overflow:hidden; }
.hero__media{ position:absolute; inset:0; }
.hero__media img{ width:100%; height:100%; object-fit:cover; }
.hero__overlay{
  position:absolute; inset:0;
  background: linear-gradient(180deg, rgba(11,27,51,0.55) 0%, rgba(11,27,51,0.35) 40%, rgba(11,27,51,0.92) 100%);
}
.hero__content{ position:relative; z-index:2; padding-bottom: 5rem; padding-top: 8rem; color:#fff; }
.hero__eyebrow{ font-size:.95rem; font-weight:500; color: rgba(255,255,255,0.75); margin-bottom:.75rem; }
.hero__title{
  font-size: clamp(2.4rem, 5.4vw, 4.4rem); font-weight:700; line-height:1.05; letter-spacing:-.02em;
  max-width: 820px; margin-bottom:1.2rem;
  color:#fff;
}
.hero__sub{ font-size: clamp(1rem,1.6vw,1.2rem); color: rgba(255,255,255,0.82); max-width:560px; margin-bottom:2.4rem; }

.search-panel{
  background: rgba(255,255,255,0.12);
  backdrop-filter: blur(18px) saturate(160%);
  border: 1px solid rgba(255,255,255,0.25);
  border-radius: var(--radius-lg);
  padding: 1.4rem;
  max-width: 900px;
}
.search-panel__tabs{ display:flex; flex-wrap:wrap; gap:.5rem; margin-bottom:1.1rem; }
.search-tab{
  border:1px solid rgba(255,255,255,0.25); background: rgba(255,255,255,0.08); color: rgba(255,255,255,0.85);
  border-radius:999px; padding:.5rem 1rem; font-size:.85rem; font-weight:500;
  display:flex; align-items:center; gap:.5rem; transition: all .25s ease;
}
.search-tab.is-active, .search-tab:hover{ background:#fff; color: var(--navy); border-color:#fff; }
.search-panel__row{ display:flex; gap:.75rem; flex-wrap:wrap; }
.search-field{
  flex:1; min-width:200px; background:#fff; border-radius: var(--radius-md);
  display:flex; align-items:center; gap:.7rem; padding:.9rem 1.1rem; color: var(--text);
}
.search-field i{ color: var(--blue); }
.search-field input{ border:none; outline:none; width:100%; font-family: var(--font-body); font-size:.95rem; }
.search-field--grow{ flex:2; }

/* ---------- promo banner ---------- */
.promo{ padding: 3.2rem 0; }
.promo__card{
  position:relative; overflow:hidden;
  background: linear-gradient(120deg, var(--navy) 0%, var(--navy-2) 55%, #1c3660 100%);
  border-radius: var(--radius-lg);
  padding: 2.6rem clamp(1.5rem,4vw,3.2rem);
  display:flex; align-items:center; gap:2.4rem; flex-wrap:wrap;
  box-shadow: var(--shadow-strong);
}
.promo__deco{
  position:absolute; top:-40px; right:-30px; font-size:9rem; color: rgba(255,255,255,0.06);
}
.promo__text{ flex:1; min-width:230px; }
.promo__tag{
  display:inline-block; font-size:.78rem; font-weight:600; color: var(--navy);
  background: #fff; padding:.3rem .8rem; border-radius:999px; margin-bottom:.8rem;
}
.promo__tag--gold{ background: var(--gold); color:#fff; }
.promo__text h3{ color:#fff; font-size:1.5rem; margin-bottom:.5rem; }
.promo__text p{ color: rgba(255,255,255,0.7); font-size:.92rem; }
.promo__divider{ width:1px; align-self:stretch; background: rgba(255,255,255,0.15); }

/* ---------- section heads ---------- */
.section-head{ max-width:640px; margin: 0 auto 3rem; text-align:center; }
.section-head h2{ font-size: clamp(1.8rem,3vw,2.6rem); margin-bottom:.7rem; }
.section-head--split{
  display:flex; justify-content:space-between; align-items:flex-end; text-align:left;
  max-width:none; flex-wrap:wrap; gap:1.5rem;
}
.section-head--split h2{ margin-bottom:.4rem; }

/* ---------- categories ---------- */
.categories{ padding: 6rem 0 5rem; }
.cat-card{
  position:relative; display:block; border-radius: var(--radius-lg); overflow:hidden;
  background: var(--card); box-shadow: var(--shadow-soft);
  height: 340px;
  border: 1px solid var(--border);
  transition: transform .4s cubic-bezier(.2,.8,.2,1), box-shadow .4s ease;
}
.cat-card:hover{ transform: translateY(-8px); box-shadow: var(--shadow-strong); }
.cat-card__img{ position:absolute; inset:0; }
.cat-card__img img{ width:100%; height:100%; object-fit:cover; transition: transform .6s ease; }
.cat-card:hover .cat-card__img img{ transform: scale(1.08); }
.cat-card::before{
  content:''; position:absolute; inset:0; z-index:1;
  background: linear-gradient(0deg, rgba(11,27,51,0.9) 5%, rgba(11,27,51,0.15) 55%, rgba(11,27,51,0.05) 100%);
}
.cat-card__body{ position:relative; z-index:2; height:100%; display:flex; flex-direction:column; justify-content:flex-end; padding: 1.8rem; color:#fff; }
.cat-card__icon{ font-size:1.4rem; margin-bottom:.8rem; color: rgba(255,255,255,0.9); }
.cat-card__body h3{ color:#fff; font-size:1.5rem; margin-bottom:.3rem; }
.cat-card__kicker{ color: rgba(255,255,255,0.75); font-size:.9rem; margin-bottom:1rem; }
.cat-card__cta{
  display:inline-flex; align-items:center; gap:.5rem; font-weight:600; font-size:.9rem; color:#fff;
  width:fit-content; padding-bottom:2px; border-bottom:1px solid rgba(255,255,255,0.5);
  transition: gap .25s ease, border-color .25s ease;
}
.cat-card:hover .cat-card__cta{ gap:.9rem; border-color:#fff; }
.cat-card--navy .cat-card__icon{ color: var(--blue); }
.cat-card--blue .cat-card__icon{ color: #7FA8FF; }
.cat-card--gold .cat-card__icon{ color: var(--gold); }
.cat-card--teal .cat-card__icon{ color: #5FCBB4; }

/* ---------- trust ---------- */
.trust{ padding: 3rem 0 5rem; }
.trust-item{ text-align:center; padding: 1.4rem 1rem; }
.trust-item i{ font-size:1.8rem; color: var(--blue); margin-bottom:1rem; }
.trust-item h4{ font-size:1.05rem; margin-bottom:.35rem; }
.trust-item p{ font-size:.88rem; }

/* ---------- filter tabs ---------- */
.filter-tabs{ display:flex; gap:.6rem; flex-wrap:wrap; }
.filter-tab{
  border:1px solid var(--border); background:#fff; color: var(--text-muted);
  padding:.55rem 1.1rem; border-radius:999px; font-size:.85rem; font-weight:600;
  transition: all .25s ease;
}
.filter-tab.is-active, .filter-tab:hover{ background: var(--navy); color:#fff; border-color: var(--navy); }

/* ---------- featured / listing cards ---------- */
.featured{ padding: 5rem 0; }
.listing-card{
  background: var(--card); border-radius: var(--radius-lg); overflow:hidden;
  border: 1px solid var(--border); box-shadow: var(--shadow-soft);
  height:100%; display:flex; flex-direction:column;
  transition: transform .35s ease, box-shadow .35s ease;
}
.listing-card:hover{ transform: translateY(-6px); box-shadow: var(--shadow-strong); }
.listing-card__img{ position:relative; aspect-ratio: 4/3; overflow:hidden; }
.listing-card__img img{ width:100%; height:100%; object-fit:cover; transition: transform .55s ease; }
.listing-card:hover .listing-card__img img{ transform: scale(1.07); }

.badge-verified, .badge-stock, .badge-rating{
  position:absolute; top:12px; left:12px; z-index:2;
  font-size:.72rem; font-weight:700; padding:.35rem .7rem; border-radius:999px;
  display:flex; align-items:center; gap:.35rem;
}
.badge-verified{ background: rgba(47,111,237,0.95); color:#fff; }
.badge-stock{ background: rgba(30,127,110,0.95); color:#fff; }
.badge-rating{ background: rgba(255,255,255,0.95); color: var(--navy); }

.fav-btn{
  position:absolute; top:12px; right:12px; z-index:2;
  width:36px; height:36px; border-radius:50%; border:none;
  background: rgba(255,255,255,0.92); color: var(--navy); display:flex; align-items:center; justify-content:center;
  transition: transform .2s ease;
}
.fav-btn:hover{ transform: scale(1.08); }
.fav-btn.is-active{ color:#E4485B; }
.fav-btn.is-active i{ font-weight:900; }

.listing-card__body{ padding: 1.2rem 1.3rem 1.4rem; flex:1; display:flex; flex-direction:column; gap:.35rem; }
.listing-card__price{ font-family: var(--font-display); font-weight:700; font-size:1.25rem; color: var(--navy); }
.listing-card__price span{ font-family: var(--font-body); font-size:.8rem; font-weight:500; color: var(--text-muted); }
.listing-card__body h4{ font-size:1.02rem; font-weight:600; }
.listing-card__loc{ font-size:.85rem; display:flex; align-items:center; gap:.4rem; }
.listing-card__meta{ display:flex; flex-wrap:wrap; gap: .9rem; margin-top:.5rem; padding-top:.7rem; border-top:1px solid var(--border); font-size:.8rem; color: var(--text-muted); }
.listing-card__meta i{ color: var(--blue); margin-right:.25rem; }
.listing-item{ transition: opacity .3s ease, transform .3s ease; }
.listing-item.is-hidden{ display:none; }

/* ---------- explore editorial ---------- */
.explore{ padding: 5rem 0 2rem; }
.explore-panel{
  position:relative; display:block; height: 62vh; min-height:420px; overflow:hidden; margin-bottom: 4px;
}
.explore-panel__img{ position:absolute; inset:-8% -2%; width:104%; height:116%; object-fit:cover; }
.explore-panel__overlay{
  position:absolute; inset:0;
  background: linear-gradient(90deg, rgba(11,27,51,0.75) 0%, rgba(11,27,51,0.25) 55%, rgba(11,27,51,0.05) 100%);
}
.explore-panel__text{ position:relative; z-index:2; height:100%; display:flex; flex-direction:column; justify-content:center; padding: 0 clamp(1.5rem,6vw,6rem); color:#fff; max-width:600px; }
.explore-panel__text span{ font-size:.9rem; font-weight:600; color: rgba(255,255,255,0.75); margin-bottom:.6rem; display:block; }
.explore-panel__text h3{ color:#fff; font-size: clamp(1.8rem,3vw,2.6rem); }

/* ---------- how it works ---------- */
.how{ padding: 6rem 0; }
.how-steps{ display:grid; grid-template-columns: repeat(4,1fr); gap: 1.6rem; }
.how-step{
  background:#fff; border:1px solid var(--border); border-radius: var(--radius-md);
  padding: 1.8rem 1.5rem; position:relative;
}
.how-step__num{ font-family: var(--font-display); font-size:2rem; font-weight:700; color: rgba(47,111,237,0.18); display:block; margin-bottom:.6rem; }
.how-step h4{ font-size:1.1rem; margin-bottom:.4rem; }
.how-step p{ font-size:.88rem; }

/* ---------- sell CTA ---------- */
.sell-cta{ position:relative; padding: 6rem 0; overflow:hidden; }
.sell-cta__bg{ position:absolute; inset:0; width:100%; height:100%; object-fit:cover; }
.sell-cta__overlay{ position:absolute; inset:0; background: linear-gradient(120deg, rgba(11,27,51,0.92), rgba(20,40,69,0.82)); }
.sell-cta__content{ position:relative; z-index:2; text-align:center; color:#fff; }
.sell-cta__content h2{ color:#fff; font-size: clamp(1.9rem,3.4vw,2.8rem); margin-bottom:.7rem; }
.sell-cta__content p{ color: rgba(255,255,255,0.78); max-width:520px; margin: 0 auto 2rem; }
.sell-cta__btns{ display:flex; flex-wrap:wrap; justify-content:center; gap:.9rem; }

/* ---------- locations ---------- */
.locations{ padding: 5rem 0; }
.locations-scroll{ display:flex; gap:1.3rem; overflow-x:auto; padding-bottom: 1rem; scroll-snap-type:x mandatory; }
.locations-scroll::-webkit-scrollbar{ height:6px; }
.locations-scroll::-webkit-scrollbar-thumb{ background: var(--border); border-radius:10px; }
.loc-card{
  position:relative; min-width:220px; height:260px; border-radius: var(--radius-md); overflow:hidden;
  scroll-snap-align:start; flex-shrink:0;
}
.loc-card img{ width:100%; height:100%; object-fit:cover; transition: transform .5s ease; }
.loc-card:hover img{ transform: scale(1.08); }
.loc-card__body{
  position:absolute; inset:0; display:flex; flex-direction:column; justify-content:flex-end; padding:1.1rem;
  background: linear-gradient(0deg, rgba(11,27,51,0.85), transparent 60%); color:#fff;
}
.loc-card__body h5{ color:#fff; font-size:1.05rem; margin-bottom:.15rem; }
.loc-card__body span{ font-size:.8rem; color: rgba(255,255,255,0.75); }

/* ---------- partners ---------- */
.partners{ padding: 3rem 0; }
.partners__label{ text-align:center; font-size:.85rem; font-weight:600; letter-spacing:.02em; color: var(--text-muted); margin-bottom:1.6rem; }
.partners__strip{ display:flex; flex-wrap:wrap; justify-content:center; gap: 2.4rem; }
.partners__strip span{ display:flex; align-items:center; gap:.55rem; font-weight:600; color: var(--navy); opacity:.55; font-size:.95rem; transition: opacity .25s ease; }
.partners__strip span:hover{ opacity:1; }
.partners__strip i{ color: var(--blue); }

/* ---------- testimonials ---------- */
.testimonials{ padding: 5rem 0; }
.testi-card{
  background:#fff; border:1px solid var(--border); border-radius: var(--radius-md);
  padding: 1.7rem; height:100%; display:flex; flex-direction:column; gap:1rem;
}
.testi-card__stars{ color: var(--gold); font-size:.85rem; }
.testi-card p{ color: var(--text); font-size:.92rem; flex:1; }
.testi-card__author{ display:flex; align-items:center; gap:.7rem; }
.testi-card__author img{ width:42px; height:42px; border-radius:50%; object-fit:cover; }
.testi-card__author strong{ display:block; font-size:.9rem; }
.testi-card__author span{ font-size:.78rem; color: var(--text-muted); }

/* ---------- final CTA ---------- */
.final-cta{ padding: 6rem 0; text-align:center; background: var(--navy); }
.final-cta h2{ color:#fff; font-size: clamp(2rem,3.6vw,3rem); margin-bottom:.6rem; }
.final-cta p{ color: rgba(255,255,255,0.75); margin-bottom:2rem; }
.final-cta__btns{ display:flex; justify-content:center; gap:1rem; flex-wrap:wrap; }

/* ---------- footer ---------- */
.site-footer{ background: var(--navy-2); color: rgba(255,255,255,0.7); padding: 4rem 0 1.6rem; }
.footer-top{ display:grid; grid-template-columns: 1.6fr repeat(5, 1fr); gap: 2rem; padding-bottom: 3rem; }
.footer-brand .brand__name{ color:#fff; }
.footer-brand p{ color: rgba(255,255,255,0.6); font-size:.88rem; margin: .9rem 0 1.2rem; max-width:240px; }
.footer-social{ display:flex; gap:.7rem; }
.footer-social a{
  width:36px; height:36px; border-radius:50%; border:1px solid rgba(255,255,255,0.18);
  display:flex; align-items:center; justify-content:center; color:#fff; transition: background .25s ease;
}
.footer-social a:hover{ background: var(--blue); border-color: var(--blue); }
.footer-col h6{ color:#fff; font-size:.85rem; margin-bottom:1rem; letter-spacing:.02em; }
.footer-col{ display:flex; flex-direction:column; gap:.65rem; grid-column: span 1; }
.footer-col a{ font-size:.86rem; color: rgba(255,255,255,0.6); transition: color .2s ease; }
.footer-col a:hover{ color:#fff; }
.footer-newsletter{ grid-column: span 2; }
.footer-newsletter h6{ color:#fff; font-size:.9rem; margin-bottom:.4rem; }
.footer-newsletter p{ font-size:.85rem; color: rgba(255,255,255,0.55); margin-bottom:1rem; }
.footer-newsletter form{ display:flex; background: rgba(255,255,255,0.08); border:1px solid rgba(255,255,255,0.18); border-radius:999px; overflow:hidden; }
.footer-newsletter input{ flex:1; background:transparent; border:none; outline:none; padding:.75rem 1rem; color:#fff; font-size:.88rem; }
.footer-newsletter input::placeholder{ color: rgba(255,255,255,0.45); }
.footer-newsletter button{ width:44px; border:none; background: var(--blue); color:#fff; }
.newsletter-msg{ display:block; margin-top:.6rem; font-size:.8rem; color: #7FE0B8; min-height:1em; }
.footer-bottom{
  display:flex; justify-content:space-between; flex-wrap:wrap; gap:.6rem;
  padding-top: 1.6rem; border-top: 1px solid rgba(255,255,255,0.1); font-size:.8rem; color: rgba(255,255,255,0.45);
}

/* ---------- back to top ---------- */
.back-to-top{
  position:fixed; bottom:24px; right:24px; z-index:900;
  width:46px; height:46px; border-radius:50%; border:none; background: var(--navy); color:#fff;
  display:flex; align-items:center; justify-content:center; box-shadow: var(--shadow-soft);
  opacity:0; visibility:hidden; transform: translateY(10px);
  transition: opacity .3s ease, transform .3s ease, visibility .3s ease;
}
.back-to-top.is-visible{ opacity:1; visibility:visible; transform:none; }
.back-to-top:hover{ background: var(--blue); }

/* ---------- reveal defaults (GSAP sets final state) ---------- */
.reveal-up{ opacity:0; transform: translateY(28px); }

/* ---------- responsive ---------- */
@media (max-width: 991px){
  .how-steps{ grid-template-columns: repeat(2,1fr); }
  .footer-top{ grid-template-columns: repeat(3,1fr); }
  .footer-newsletter{ grid-column: span 3; }
}
@media (max-width: 767px){
  .hero{ min-height: 88vh; }
  .hero__content{ padding-top: 6.5rem; }
  .search-panel__row{ flex-direction:column; }
  .search-field--grow{ flex:1; }
  .promo__card{ flex-direction:column; align-items:flex-start; }
  .promo__divider{ display:none; }
  .how-steps{ grid-template-columns: 1fr; }
  .footer-top{ grid-template-columns: repeat(2,1fr); }
  .footer-newsletter{ grid-column: span 2; }
  .explore-panel{ height:46vh; min-height:320px; }
  .section-head--split{ flex-direction:column; align-items:flex-start; }
}
@media (max-width: 480px){
  .footer-top{ grid-template-columns: 1fr; }
  .footer-newsletter{ grid-column: span 1; }
  .promo__deco{ display:none; }
}

@media (prefers-reduced-motion: reduce){
  *{ animation-duration:0.01ms !important; transition-duration:0.01ms !important; }
}
