

html{
  scroll-behavior:smooth;
  scroll-padding-top:104px;
}
html,
body{
  width:100%;
  max-width:100%;
  margin:0 !important;
  padding:0 !important;
  overflow-x:clip;
}

.gervasini-home{
  --color-primary: #1B3B7A;
  --color-primary-dark: #10275A;
  --color-primary-light: #2E52A0;
  --color-accent: #F5C518;
  --color-accent-dark: #D9A900;
  --color-accent-soft: #E3C878;

  --color-bg: #F5F7FA;
  --color-bg-alt: #FFFFFF;
  --color-text: #1E2433;
  --color-text-muted: #5C6675;
  --color-text-inverse: #F5F7FA;

  --glass-bg: rgba(255,255,255,0.55);
  --glass-bg-strong: rgba(255,255,255,0.72);
  --glass-border: rgba(255,255,255,0.65);
  --glass-shadow: 0 8px 32px rgba(27,59,122,0.12);

  --radius-lg: 28px;
  --radius-md: 18px;
  --radius-sm: 12px;

  --ease: cubic-bezier(.22,1,.36,1);
  --container-w: 1200px;
}

/* Gervasini shell: native Tiendanube services with custom visual system */
.gervasini-shell-header{
  --gervasini-primary:#1B3B7A;
  --gervasini-primary-dark:#10275A;
  --gervasini-accent:#F5C518;
  --gervasini-soft:#F5F7FA;
  position:sticky;
  top:0;
  z-index:900;
  background:rgba(255,255,255,.92);
  -webkit-backdrop-filter:blur(18px) saturate(160%);
  backdrop-filter:blur(18px) saturate(160%);
  border-bottom:1px solid rgba(27,59,122,.12);
  box-shadow:0 10px 30px rgba(16,39,90,.08);
}
.gervasini-shell-header-main{ padding:14px 0; }
.gervasini-shell-header-inner{
  display:grid;
  grid-template-columns:minmax(180px, 260px) minmax(260px, 520px) auto;
  gap:28px;
  align-items:center;
}
.gervasini-shell-brand a,
.gervasini-shell-brand .logo-img-container{
  display:inline-flex;
  align-items:center;
}
.gervasini-shell-brand img{ max-height:58px; width:auto; }
.gervasini-shell-search .input-group,
.gervasini-shell-mobile-search .input-group{
  border:1px solid rgba(27,59,122,.24);
  border-radius:14px;
  overflow:hidden;
  background:#fff;
  box-shadow:0 8px 22px rgba(16,39,90,.08);
}
.gervasini-shell-search input,
.gervasini-shell-mobile-search input{
  min-height:52px;
  border:0 !important;
  background:#fff !important;
  color:#1E2433;
}
.gervasini-shell-search button,
.gervasini-shell-mobile-search button{
  border:0 !important;
  color:var(--gervasini-primary-dark);
}
.gervasini-shell-actions{
  display:flex;
  justify-content:flex-end;
  align-items:center;
  gap:12px;
}
.gervasini-shell-header .btn-utility{
  color:var(--gervasini-primary-dark);
  border-radius:999px;
  min-width:42px;
  min-height:42px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
}
.gervasini-shell-header .utilities-icon{ color:var(--gervasini-primary-dark); }
.gervasini-shell-header .utilities-text{
  color:#344155;
  font-size:.88rem;
  line-height:1.25;
}
.gervasini-shell-header .utilities-text a{
  color:var(--gervasini-primary-dark);
  font-weight:700;
}
.gervasini-shell-header .badge{
  background:#80cc00;
  color:#10275A;
  font-weight:800;
}
.gervasini-shell-mobile-search{ padding-bottom:12px; }
.gervasini-shell-nav{
  border-top:1px solid rgba(27,59,122,.1);
  background:rgba(255,255,255,.78);
}
.gervasini-shell-nav-inner{
  display:flex;
  align-items:center;
  min-height:56px;
  gap:18px;
}
.gervasini-shell-nav-links{
  display:flex;
  align-items:center;
  justify-content:center;
  gap:18px;
  flex:1;
  min-width:0;
  margin:0;
  padding:0;
}
.gervasini-shell-nav-link{
  display:flex;
  align-items:center;
  min-height:58px;
  color:#111827;
  font-size:.9rem;
  font-weight:800;
  text-transform:uppercase;
  letter-spacing:0;
  padding:0 14px;
  border-radius:10px;
  transition:background .25s ease, color .25s ease;
}
.gervasini-shell-nav-link:hover{
  background:rgba(27,59,122,.08);
  color:var(--gervasini-primary);
}
.gervasini-shell-nav-dropdown{ position:relative; }
.gervasini-shell-nav-dropdown-menu{
  position:absolute;
  left:50%;
  top:calc(100% + 8px);
  min-width:220px;
  transform:translateX(-50%) translateY(-8px);
  opacity:0;
  visibility:hidden;
  padding:10px;
  border:1px solid rgba(27,59,122,.12);
  border-radius:14px;
  background:rgba(255,255,255,.96);
  box-shadow:0 18px 42px rgba(16,39,90,.16);
  -webkit-backdrop-filter:blur(18px);
  backdrop-filter:blur(18px);
  transition:opacity .22s ease, transform .22s ease, visibility .22s ease;
}
.gervasini-shell-nav-dropdown:hover .gervasini-shell-nav-dropdown-menu{
  opacity:1;
  visibility:visible;
  transform:translateX(-50%) translateY(0);
}
.gervasini-shell-nav-dropdown-menu a{
  display:block;
  padding:11px 12px;
  border-radius:10px;
  color:#1E2433;
  font-size:.88rem;
  font-weight:700;
}
.gervasini-shell-nav-dropdown-menu a:hover{
  background:rgba(27,59,122,.08);
  color:var(--gervasini-primary);
}
.gervasini-shell-footer{
  --gervasini-primary:#1B3B7A;
  --gervasini-primary-dark:#10275A;
  --gervasini-accent:#F5C518;
  background:#303030;
  color:#F5F7FA;
}
.gervasini-shell-social{
  display:flex;
  justify-content:center;
  gap:16px;
  padding:28px 20px;
  background:#80cc00;
}
.gervasini-shell-social .social-icon{
  width:54px;
  height:54px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  border-radius:50%;
  background:#fff;
  color:#80cc00;
}
.js-btn-fixed-bottom.btn-whatsapp,
.btn-whatsapp{
  width:74px !important;
  height:74px !important;
  right:26px !important;
  bottom:26px !important;
  border-radius:50% !important;
  background:#25D366 !important;
  box-shadow:0 14px 36px rgba(37,211,102,.35), 0 8px 22px rgba(16,39,90,.24) !important;
}
.js-btn-fixed-bottom.btn-whatsapp svg,
.btn-whatsapp svg{
  width:38px !important;
  height:38px !important;
}
.gervasini-shell-footer-main{ padding:56px 15px 42px; }
.gervasini-shell-footer-grid{
  display:grid;
  grid-template-columns:1.2fr 1fr 1.15fr 1.2fr;
  gap:42px;
}
.gervasini-shell-footer-brand img{ max-height:52px; width:auto; filter:brightness(0) invert(1); }
.gervasini-shell-footer-brand p{
  max-width:300px;
  margin-top:18px;
  color:rgba(245,247,250,.72);
}
.gervasini-shell-footer h4,
.gervasini-shell-footer .newsletter .font-small{
  margin:0 0 18px;
  color:#fff;
  font-size:.86rem;
  font-weight:800;
  text-transform:uppercase;
}
.gervasini-shell-footer a,
.gervasini-shell-footer .contact-link{
  color:rgba(245,247,250,.82);
  font-weight:600;
}
.gervasini-shell-footer a:hover{ color:var(--gervasini-accent); }
.gervasini-shell-footer .footer-menu,
.gervasini-shell-footer ul{
  display:grid;
  gap:12px;
  margin:0;
  padding:0;
  list-style:none;
}
.gervasini-shell-newsletter input{
  min-height:52px;
  border:0 !important;
  border-radius:4px !important;
  background:#474747 !important;
  color:#fff !important;
}
.gervasini-shell-newsletter input::placeholder{ color:rgba(255,255,255,.72); }
.gervasini-shell-newsletter .btn{
  min-height:52px;
  border-radius:4px;
  background:#fff;
  color:#303030;
  font-weight:800;
}
.gervasini-shell-footer-trust{
  border-top:1px solid rgba(255,255,255,.1);
  padding:22px 0;
}
.gervasini-shell-trust-row{
  display:flex;
  flex-wrap:wrap;
  gap:24px;
  align-items:center;
}
.gervasini-shell-trust-item span{
  display:block;
  margin-bottom:8px;
  color:rgba(245,247,250,.74);
  font-size:.82rem;
  font-weight:700;
}
.gervasini-shell-seals{
  display:flex;
  justify-content:center;
  gap:16px;
  padding-top:18px;
}
.gervasini-shell-legal{
  border-top:1px solid rgba(255,255,255,.1);
  padding:18px 0;
  color:rgba(245,247,250,.7);
  font-size:.78rem;
}
.gervasini-shell-legal-inner{
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:20px;
}
.gervasini-shell-claim{ display:inline-block; margin-left:8px; }

@media (max-width: 767px){
  .gervasini-shell-header-inner{
    grid-template-columns:auto 1fr auto;
    gap:12px;
  }
  .gervasini-shell-menu{ display:flex; align-items:center; }
  .gervasini-shell-brand{ text-align:center; }
  .gervasini-shell-brand img{ max-height:48px; margin:0 auto; }
  .gervasini-shell-actions{ gap:4px; }
  .gervasini-shell-footer-grid{ grid-template-columns:1fr; gap:30px; }
  .gervasini-shell-legal-inner{ flex-direction:column; text-align:center; }
  .gervasini-shell-trust-row{ flex-direction:column; align-items:flex-start; }
}

.gervasini-home *, .gervasini-home *::before, .gervasini-home *::after{ box-sizing: border-box; }
.gervasini-home{
  margin:-1px 0 0;
  font-family:'Inter', system-ui, sans-serif;
  color: var(--color-text);
  line-height:1.6;
  -webkit-font-smoothing:antialiased;
  background: var(--color-bg);
  overflow-x:clip;
}


.gervasini-home .page-bg{
  position:fixed;
  inset:0;
  z-index:-1;
  pointer-events:none;
  background:
    radial-gradient(circle at 92% 6%, rgba(245,197,24,.14), transparent 38%),
    radial-gradient(circle at 4% 22%, rgba(27,59,122,.10), transparent 42%),
    radial-gradient(circle at 96% 58%, rgba(46,82,160,.10), transparent 40%),
    radial-gradient(circle at 2% 82%, rgba(245,197,24,.09), transparent 38%),
    radial-gradient(circle at 85% 96%, rgba(27,59,122,.10), transparent 40%);
}
.gervasini-home h1, .gervasini-home h2, .gervasini-home h3, .gervasini-home h4{
  font-family:'Poppins', sans-serif;
  color: var(--color-primary);
  margin:0 0 .5em;
  line-height:1.2;
}
.gervasini-home p{ margin:0 0 1em; color: var(--color-text-muted); }
.gervasini-home a{ text-decoration:none; color:inherit; }
.gervasini-home img{ max-width:100%; display:block; }
.gervasini-home svg{ width:1.4em; height:1.4em; fill:none; stroke:currentColor; stroke-width:1.6; stroke-linecap:round; stroke-linejoin:round; }
.gervasini-home ul{ list-style:none; margin:0; padding:0; }
.gervasini-home button{ font-family:inherit; cursor:pointer; }

.gervasini-home .container{
  width:100%;
  max-width: var(--container-w);
  margin:0 auto;
  padding:0 24px;
}

.gervasini-home .eyebrow{
  display:inline-flex;
  align-items:center;
  gap:10px;
  font-weight:700;
  font-size:.8rem;
  letter-spacing:.14em;
  text-transform:uppercase;
  color: var(--color-primary);
  margin-bottom:14px;
}
.gervasini-home .eyebrow::before{
  content:'';
  display:inline-block;
  width:26px; height:3px;
  border-radius:2px;
  background: linear-gradient(90deg, var(--color-primary), var(--color-accent-soft));
}


.gervasini-home .glass{
  background: var(--glass-bg);
  -webkit-backdrop-filter: blur(18px) saturate(160%);
  backdrop-filter: blur(18px) saturate(160%);
  border: 1px solid var(--glass-border);
  box-shadow: var(--glass-shadow);
  border-radius: var(--radius-lg);
}


.gervasini-home .tag-card{
  position:relative;
  border: 1.25px solid transparent;
  border-radius: 10px;
  background:
    linear-gradient(rgba(255,255,255,.94), rgba(255,255,255,.94)) padding-box,
    linear-gradient(120deg, var(--color-primary-light) 0%, var(--color-accent-soft) 28%, var(--color-primary) 55%, var(--color-accent-soft) 80%, var(--color-primary-dark) 100%) border-box;
  -webkit-backdrop-filter: blur(18px) saturate(160%);
  backdrop-filter: blur(18px) saturate(160%);
  overflow:hidden;
}
.gervasini-home .tag-card::before, .gervasini-home .solid-card::before{
  content:'';
  position:absolute;
  top:-40%; left:-60%;
  width:30%; height:220%;
  background: linear-gradient(115deg, rgba(255,255,255,0) 0%, rgba(255,255,255,.7) 50%, rgba(255,255,255,0) 100%);
  transform: rotate(12deg);
  transition: left .9s var(--ease);
  pointer-events:none;
}
.gervasini-home .tag-card:hover::before, .gervasini-home .solid-card:hover::before{ left:130%; }


.gervasini-home .solid-card{
  position:relative;
  border: 2px solid var(--color-primary);
  border-radius: 10px;
  background: rgba(255,255,255,.94);
  -webkit-backdrop-filter: blur(18px) saturate(160%);
  backdrop-filter: blur(18px) saturate(160%);
  overflow:hidden;
}


.gervasini-home .hero-blob{
  position:absolute;
  pointer-events:none;
  animation: blobPulse 9s ease-in-out infinite;
}
.gervasini-home .blob-a{
  width:620px; height:620px;
  top:-180px; right:-180px;
  background: radial-gradient(circle, rgba(245,197,24,.5) 0%, rgba(245,197,24,.22) 26%, rgba(245,197,24,0) 46%);
}
.gervasini-home .blob-b{
  width:620px; height:620px;
  bottom:-50px; left:-180px;
  background: radial-gradient(circle, rgba(46,82,160,.45) 0%, rgba(46,82,160,.2) 26%, rgba(46,82,160,0) 46%);
  animation-delay:-4.5s;
}


@keyframes blobPulse{
  0%,100%{ transform: scale(1); }
  50%{ transform: scale(1.1); }
}


.gervasini-home .btn{
  position:relative;
  overflow:hidden;
  display:inline-flex;
  align-items:center;
  gap:8px;
  padding:14px 28px;
  border-radius:999px;
  font-weight:600;
  font-size:.95rem;
  border:none;
  transition: transform .35s var(--ease), box-shadow .35s var(--ease), background .35s var(--ease);
}
.gervasini-home .btn-primary{
  background: var(--color-primary);
  color:#fff;
  box-shadow: 0 10px 24px rgba(27,59,122,.28);
}
.gervasini-home .btn-primary:hover{ transform: translateY(-3px); box-shadow: 0 16px 32px rgba(27,59,122,.36); }
.gervasini-home .btn-accent{
  background: var(--color-accent);
  color: var(--color-primary-dark);
  box-shadow: 0 10px 24px rgba(245,197,24,.35);
}
.gervasini-home .btn-accent:hover{ transform: translateY(-3px); background: var(--color-accent-dark); }
.gervasini-home .btn-ghost{
  background: rgba(27,59,122,.06);
  color: var(--color-primary);
}
.gervasini-home .btn-ghost:hover{ background: rgba(27,59,122,.12); transform: translateY(-3px); }

.gervasini-home .btn-ripple{
  position:absolute;
  width:10px; height:10px;
  background: rgba(255,255,255,.6);
  border-radius:50%;
  transform: translate(-50%,-50%) scale(0);
  animation: rippleAnim .6s ease-out forwards;
  pointer-events:none;
}
@keyframes rippleAnim{ to{ transform: translate(-50%,-50%) scale(20); opacity:0; } }


.gervasini-home .site-header{
  position: fixed;
  top:0; left:0; right:0;
  z-index:100;
  padding: 22px 0;
  transition: padding .4s var(--ease), background .4s var(--ease), box-shadow .4s var(--ease);
}
.gervasini-home .site-header.is-scrolled{
  padding: 12px 0;
  background: var(--glass-bg-strong);
  -webkit-backdrop-filter: blur(18px) saturate(160%);
  backdrop-filter: blur(18px) saturate(160%);
  box-shadow: 0 8px 30px rgba(16,39,90,.1);
}
.gervasini-home .header-inner{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:24px;
}
.gervasini-home .logo img{ height:58px; transition: height .4s var(--ease); }
.gervasini-home .site-header.is-scrolled .logo img{ height:48px; }

.gervasini-home .main-nav{ display:flex; gap:32px; }
.gervasini-home .nav-link{
  font-weight:500;
  color: var(--color-primary-dark);
  position:relative;
  padding:6px 0;
}
.gervasini-home .nav-link::after{
  content:'';
  position:absolute;
  left:0; bottom:0;
  width:0; height:2px;
  background: var(--color-accent);
  transition: width .3s var(--ease);
}
.gervasini-home .nav-link:hover::after{ width:100%; }

.gervasini-home .nav-item-dropdown{ position:relative; }
.gervasini-home .nav-dropdown-toggle{
  background:none;
  border:none;
  font-family:inherit;
  font-size:inherit;
  cursor:pointer;
  display:flex;
  align-items:center;
  gap:5px;
}
.gervasini-home .nav-dropdown-arrow{ width:14px; height:14px; transition: transform .3s var(--ease); }
.gervasini-home .nav-dropdown-menu{
  position:absolute;
  top:calc(100% + 16px);
  left:50%;
  transform: translateX(-50%) translateY(-8px);
  min-width:220px;
  background: var(--glass-bg-strong);
  -webkit-backdrop-filter: blur(18px) saturate(160%);
  backdrop-filter: blur(18px) saturate(160%);
  border:1px solid var(--glass-border);
  border-radius:14px;
  box-shadow: var(--glass-shadow);
  padding:10px;
  opacity:0;
  visibility:hidden;
  transition: opacity .25s var(--ease), transform .25s var(--ease), visibility .25s;
}
.gervasini-home .nav-item-dropdown:hover .nav-dropdown-menu, .gervasini-home .nav-item-dropdown.is-open .nav-dropdown-menu{
  opacity:1;
  visibility:visible;
  transform: translateX(-50%) translateY(0);
}
.gervasini-home .nav-item-dropdown:hover .nav-dropdown-arrow, .gervasini-home .nav-item-dropdown.is-open .nav-dropdown-arrow{ transform: rotate(180deg); }
.gervasini-home .nav-dropdown-link{
  display:block;
  padding:10px 14px;
  border-radius:8px;
  font-weight:500;
  font-size:.92rem;
  color: var(--color-primary-dark);
  transition: background .2s var(--ease);
}
.gervasini-home .nav-dropdown-link:hover{ background: rgba(27,59,122,.08); }

.gervasini-home .header-actions{ display:flex; align-items:center; gap:14px; }

.gervasini-home .cart-btn{
  position:relative;
  display:flex; align-items:center; justify-content:center;
  width:44px; height:44px;
  border-radius:50%;
  background: rgba(27,59,122,.06);
  color: var(--color-primary);
  transition: background .3s var(--ease), transform .3s var(--ease);
}
.gervasini-home .cart-btn:hover{ background: rgba(27,59,122,.12); transform: translateY(-2px); }
.gervasini-home .cart-btn svg{ width:1.3em; height:1.3em; }
.gervasini-home .cart-badge{
  position:absolute;
  top:-2px; right:-2px;
  min-width:18px; height:18px;
  padding:0 4px;
  border-radius:999px;
  background: var(--color-accent);
  color: var(--color-primary-dark);
  font-size:.65rem;
  font-weight:700;
  display:flex; align-items:center; justify-content:center;
  box-shadow: 0 0 0 2px #fff;
}

.gervasini-home .nav-toggle{
  display:none;
  flex-direction:column;
  gap:5px;
  background:none;
  border:none;
  padding:8px;
}
.gervasini-home .nav-toggle span{
  width:24px; height:2px;
  background: var(--color-primary);
  border-radius:2px;
  transition: transform .3s var(--ease), opacity .3s var(--ease);
}
.gervasini-home .nav-toggle.is-active span:nth-child(1){ transform: translateY(7px) rotate(45deg); }
.gervasini-home .nav-toggle.is-active span:nth-child(2){ opacity:0; }
.gervasini-home .nav-toggle.is-active span:nth-child(3){ transform: translateY(-7px) rotate(-45deg); }


.gervasini-home .hero{
  position:relative;
  min-height:calc(100vh - 142px);
  min-height:calc(100svh - 142px);
  display:flex;
  align-items:flex-start;
  padding:0;
  margin:0;
  overflow:hidden;
}
.gervasini-home .hero-bg-glow{
  position:absolute; inset:0;
  background: radial-gradient(circle at 70% 30%, rgba(27,59,122,.08), transparent 60%);
  pointer-events:none;
  -webkit-mask-image: linear-gradient(to bottom, transparent 0%, #000 16%, #000 55%, transparent 92%);
  mask-image: linear-gradient(to bottom, transparent 0%, #000 16%, #000 55%, transparent 92%);
}
.gervasini-home .hero::before{
  content:'';
  position:absolute;
  top:0; left:0; right:0;
  height:160px;
  background: linear-gradient(to bottom, var(--color-bg), transparent);
  pointer-events:none;
  z-index:0;
}
.gervasini-home .hero-inner{
  position:relative;
  display:grid;
  grid-template-columns: 1.1fr .9fr;
  gap:48px;
  align-items:start;
  padding-top:42px;
  padding-bottom:68px;
}
.gervasini-home .hero-copy{
  max-width:660px;
}
.gervasini-home .hero .eyebrow{
  margin-bottom:18px;
  font-size:.92rem;
  font-weight:600;
  line-height:1.4;
  letter-spacing:0;
  text-transform:none;
}
.gervasini-home .hero .eyebrow::before{
  width:32px;
  height:2px;
}
.gervasini-home .hero-title{
  max-width:650px;
  margin-bottom:22px;
  font-family:'Inter',system-ui,sans-serif;
  font-size:3.35rem;
  font-weight:700;
  line-height:1.08;
  letter-spacing:0;
  text-wrap:balance;
}
.gervasini-home .hero-subtitle{
  max-width:590px;
  margin-bottom:0;
  font-size:1.08rem;
  line-height:1.75;
}
.gervasini-home .hero-product-search{
  width:min(100%,590px);
  margin-top:24px;
}
.gervasini-home .hero-product-search-label{
  display:block;
  margin:0 0 8px;
  color:var(--color-text);
  font-size:.9rem;
  font-weight:500;
  line-height:1.35;
}
.gervasini-home .hero-product-search-control{ position:relative; }
.gervasini-home .hero-product-search input{
  display:block;
  width:100%;
  height:58px;
  padding:0 66px 0 20px;
  border:1px solid rgba(27,59,122,.14);
  border-radius:7px;
  outline:0;
  background:rgba(255,255,255,.78);
  color:var(--color-primary);
  font-family:'Inter',system-ui,sans-serif;
  font-size:1rem;
  box-shadow:0 12px 30px rgba(16,39,90,.09),inset 0 1px 0 rgba(255,255,255,.9);
  -webkit-backdrop-filter:blur(18px) saturate(150%);
  backdrop-filter:blur(18px) saturate(150%);
  transition:border-color .2s ease,box-shadow .2s ease,background .2s ease;
}
.gervasini-home .hero-product-search input::placeholder{ color:#6d788c; opacity:1; }
.gervasini-home .hero-product-search input:focus{
  border-color:rgba(27,59,122,.42);
  background:rgba(255,255,255,.94);
  box-shadow:0 14px 34px rgba(16,39,90,.13),0 0 0 3px rgba(245,197,24,.2);
}
.gervasini-home .hero-product-search button{
  position:absolute;
  top:7px;
  right:7px;
  display:flex;
  align-items:center;
  justify-content:center;
  width:44px;
  height:44px;
  padding:0;
  border:0;
  border-radius:6px;
  background:var(--color-primary);
  color:#fff;
  box-shadow:0 7px 16px rgba(27,59,122,.2);
  transition:transform .2s ease,background .2s ease;
}
.gervasini-home .hero-product-search button:hover{ background:var(--color-primary-dark); transform:translateY(-1px); }
.gervasini-home .hero-product-search button svg{
  width:22px;
  height:22px;
  fill:none;
  stroke:currentColor;
  stroke-width:2;
  stroke-linecap:round;
}
.gervasini-home .hero-actions{ display:flex; gap:12px; flex-wrap:wrap; margin-top:28px; }
.gervasini-home .hero-actions .btn{
  min-height:52px;
  padding:13px 24px;
  border-radius:7px;
  font-size:.94rem;
  font-weight:600;
}
.gervasini-home .hero-actions .btn-primary{
  box-shadow:0 8px 18px rgba(27,59,122,.2);
}

.gervasini-home .hero-visual{ display:flex; justify-content:center; padding-top:42px; }
.gervasini-home .tire-wrap{ position:relative; width:min(360px, 80vw); aspect-ratio:1/1; }
.gervasini-home .hero-icon{
  display:block;
  width:100%; height:100%;
  object-fit:contain;
  filter: drop-shadow(0 20px 30px rgba(27,59,122,.25));
  animation: iconFloat 6s ease-in-out infinite;
}
@keyframes iconFloat{
  0%,100%{ transform: translateY(0) rotate(-3deg); }
  50%{ transform: translateY(-14px) rotate(3deg); }
}

.gervasini-home .glass-badge{
  position:absolute;
  bottom:-10px; right:-10px;
  background: var(--glass-bg-strong);
  -webkit-backdrop-filter: blur(14px);
  backdrop-filter: blur(14px);
  border:1px solid var(--glass-border);
  box-shadow: var(--glass-shadow);
  border-radius: var(--radius-md);
  padding:14px 20px;
  text-align:center;
  animation: float 5s ease-in-out infinite;
}
.gervasini-home .glass-badge strong{ display:block; font-family:'Poppins',sans-serif; font-size:1.4rem; color:var(--color-primary); }
.gervasini-home .glass-badge span{ font-size:.75rem; color:var(--color-text-muted); }

.gervasini-home .scroll-cue{
  position:absolute;
  bottom:28px; left:50%;
  transform:translateX(-50%);
  display:flex;
  flex-direction:column;
  align-items:center;
  gap:8px;
  width:max-content;
  color:var(--color-primary);
  opacity:.72;
  transition:opacity .2s ease,transform .2s ease;
}
.gervasini-home .scroll-cue:hover{
  opacity:1;
  transform:translateX(-50%) translateY(-2px);
}
.gervasini-home .scroll-cue-label{
  font-size:.78rem;
  font-weight:700;
  line-height:1.2;
}
.gervasini-home .scroll-cue-mouse{
  position:relative;
  display:block;
  width:26px;
  height:42px;
  border:2px solid currentColor;
  border-radius:20px;
}
.gervasini-home .scroll-cue-mouse > span{
  position:absolute;
  top:8px; left:50%;
  width:4px; height:8px;
  margin-left:-2px;
  background: var(--color-accent);
  border-radius:2px;
  animation: scrollCue 1.8s ease-in-out infinite;
}

@keyframes spin{ to{ transform: rotate(360deg); } }
@keyframes float{
  0%,100%{ transform: translateY(0) rotate(-4deg); }
  50%{ transform: translateY(-8px) rotate(-2deg); }
}
@keyframes scrollCue{ 0%{ opacity:1; transform: translateY(0);} 100%{ opacity:0; transform: translateY(14px);} }

.gervasini-home .tread-strip{
  position:relative;
  z-index:1;
  height:60px;
  background-color: rgba(245,197,24,.14);
  background-image: repeating-linear-gradient(115deg, var(--color-accent) 0 3px, transparent 3px 22px);
  transform: skewY(-2deg);
  margin: -30px 0;
}


.gervasini-home .section-header{ max-width:640px; margin:0 auto 56px; text-align:center; }
.gervasini-home .section-header h2{ font-size: clamp(1.8rem, 3.4vw, 2.4rem); }

.gervasini-home .top-banner{ padding:0; }
.gervasini-home .top-banner-media{
  display:block;
  position:relative;
  width:100vw;
  margin-left:calc(50% - 50vw);
  height:96vh;
  min-height:520px;
  max-height:1160px;
  overflow:hidden;
}
.gervasini-home .top-banner-image{
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  object-fit:cover;
  object-position:center 30%;
  z-index:0;
}
.gervasini-home .top-banner-image--mobile{ display:none; }
.gervasini-home .top-banner-video{
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  object-fit:cover;
  object-position:center 30%;
  z-index:1;
  filter:brightness(1.08) saturate(1.05) contrast(1.02);
}

.gervasini-home .top-banner-media::before{
  content:"";
  position:absolute;
  inset:0;
  z-index:3;
  background:linear-gradient(100deg, rgba(4,10,24,.3) 0%, rgba(4,10,24,.14) 28%, rgba(4,10,24,0) 46%);
  pointer-events:none;
}

.gervasini-home .top-banner-promo{
  position:absolute;
  left:max(24px, calc((100% - var(--container-w, 1200px)) / 2 + 24px));
  top:50%;
  transform:translateY(-50%);
  z-index:4;
  max-width:min(46%, 560px);
  color:#fff;
}
.gervasini-home .top-banner-promo-title{
  font-family:'Poppins', sans-serif;
  font-weight:800;
  font-size:clamp(2.5rem, 5.2vw, 4.4rem);
  line-height:1.05;
  margin:0 0 16px;
  color:#fff;
  text-shadow:0 4px 22px rgba(0,0,0,.75), 0 2px 8px rgba(0,0,0,.6);
}
.gervasini-home .top-banner-promo-sub{
  font-size:clamp(1.15rem, 1.7vw, 1.4rem);
  font-weight:500;
  color:#fff;
  line-height:1.35;
  margin:0 0 22px;
  text-shadow:0 2px 12px rgba(0,0,0,.7);
}
.gervasini-home .top-banner-promo-badge{
  display:inline-block;
  background:var(--color-accent);
  color:#16233f;
  font-weight:700;
  font-size:clamp(1rem, 1.3vw, 1.2rem);
  padding:12px 22px;
  border-radius:8px;
  letter-spacing:.01em;
}

.gervasini-home .top-banner-actions{
  position:absolute;
  left:0; right:0; bottom:64px;
  z-index:4;
  display:flex;
  justify-content:center;
  align-items:center;
  gap:14px;
  flex-wrap:wrap;
  padding:0 20px;
}
.gervasini-home .top-banner-btn{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  padding:10px 6px;
  background:none;
  border:none;
  border-bottom:2px solid transparent;
  font-weight:700;
  font-size:1rem;
  letter-spacing:.01em;
  transition:transform .3s var(--ease), text-shadow .3s var(--ease), border-color .3s var(--ease);
}
.gervasini-home .top-banner-btn--glow{
  color: var(--color-accent);
  border-bottom-color: rgba(245,197,24,.65);
  animation: topBannerTextGlow 2.6s ease-in-out infinite;
}
.gervasini-home .top-banner-btn--glow:hover{
  transform:translateY(-2px);
  border-bottom-color: var(--color-accent);
}
@keyframes topBannerTextGlow{
  0%,100%{ text-shadow: 0 0 10px rgba(245,197,24,.65), 0 0 24px rgba(245,197,24,.35), 0 2px 6px rgba(0,0,0,.5); }
  50%{ text-shadow: 0 0 18px rgba(245,197,24,.95), 0 0 38px rgba(245,197,24,.6), 0 2px 6px rgba(0,0,0,.5); }
}
.gervasini-home .top-banner-btn--ghost{
  color:#fff;
  text-shadow: 0 0 12px rgba(255,255,255,.55), 0 2px 8px rgba(0,0,0,.6);
  border-bottom-color: rgba(255,255,255,.4);
}
.gervasini-home .top-banner-btn--ghost:hover{
  transform:translateY(-2px);
  text-shadow: 0 0 18px rgba(255,255,255,.8), 0 2px 8px rgba(0,0,0,.6);
  border-bottom-color: rgba(255,255,255,.75);
}
@media (max-width:720px){
  .gervasini-home .top-banner-media{ height:auto; aspect-ratio:1.6/1; min-height:0; max-height:none; }
  .gervasini-home .top-banner-media.has-mobile-variant .top-banner-image--desktop{ display:none; }
  .gervasini-home .top-banner-media.has-mobile-variant .top-banner-image--mobile{ display:block; }
  .gervasini-home .top-banner-actions{ bottom:44px; gap:2px; }
  .gervasini-home .top-banner-btn{ padding:3px 2px; font-size:.6rem; border-bottom-width:1px; letter-spacing:0; }
  .gervasini-home .top-banner-promo{ top:26px; transform:none; max-width:62%; }
  .gervasini-home .top-banner-promo-title{ font-size:clamp(1.25rem, 5.5vw, 1.7rem); margin-bottom:6px; }
  .gervasini-home .top-banner-promo-sub{ display:none; }
  .gervasini-home .top-banner-promo-badge{ font-size:.62rem; padding:5px 10px; border-radius:6px; }
}
@media (max-width:380px){
  .gervasini-home .top-banner-btn{ font-size:.52rem; padding:3px 1px; }
  .gervasini-home .top-banner-actions{ gap:1px; }
}

.gervasini-home .categories--finder{ padding-top:24px; padding-bottom:20px; }
.gervasini-home .categories--finder .section-header{ margin-bottom:14px; }

.gervasini-home .featured-products-section{ padding-top:20px; }

.gervasini-home .brand-showcase-section{ padding-bottom:30px; }
.gervasini-home .categories--carousel{ padding-top:20px; }

.gervasini-home .underline-draw{ display:block; width:150px; height:14px; margin:2px auto 18px; overflow:visible; }
.gervasini-home .underline-draw-left{ margin-left:0; }
.gervasini-home .underline-draw path{
  fill:none;
  stroke: var(--color-accent);
  stroke-width:4;
  stroke-linecap:round;
  stroke-dasharray:220;
  stroke-dashoffset:220;
  transition: stroke-dashoffset 1s var(--ease) .3s;
}
.gervasini-home [data-reveal].is-visible .underline-draw path{ stroke-dashoffset:0; }

.gervasini-home section{ padding:110px 0; position:relative; }
.gervasini-home section.hero{ padding:0; }


.gervasini-home .journey{
  position:relative;
  display:grid;
  grid-template-columns:repeat(5, 1fr);
  grid-template-rows: minmax(110px,auto) 0 minmax(110px,auto);
  align-items:start;
}
.gervasini-home .journey-step{ display:contents; }

.gervasini-home .journey-line{
  grid-row:2;
  grid-column:1 / -1;
  align-self:center;
  height:3px;
  border-radius:2px;
  background: repeating-linear-gradient(90deg, var(--color-accent) 0 16px, transparent 16px 30px);
}

.gervasini-home .journey-marker{
  grid-row:2;
  grid-column: var(--col);
  align-self:center;
  justify-self:center;
  z-index:2;
  font-family:'Bebas Neue', sans-serif;
  font-weight:400;
  font-size:2.2rem;
  line-height:1;
  letter-spacing:.02em;
  color: var(--color-primary);
}

.gervasini-home .journey-content{
  grid-column: var(--col);
  display:flex;
  flex-direction:column;
  align-items:center;
  text-align:center;
  gap:6px;
  padding:0 14px;
}
.gervasini-home .journey-content--up{ grid-row:1; align-self:end; padding-bottom:24px; }
.gervasini-home .journey-content--down{ grid-row:3; align-self:start; padding-top:24px; }

.gervasini-home .journey-icon{
  width:42px; height:42px;
  border-radius:50%;
  background: rgba(27,59,122,.08);
  color: var(--color-primary);
  display:flex; align-items:center; justify-content:center;
  margin-bottom:2px;
}
.gervasini-home .journey-icon svg{ width:21px; height:21px; }
.gervasini-home .journey-content h3{ font-size:.92rem; margin-bottom:0; }
.gervasini-home .journey-content p{ font-size:.78rem; margin-bottom:0; }

.gervasini-home .how-to-buy{
  isolation:isolate;
  padding-bottom:150px;
  background-image:
    linear-gradient(90deg,rgba(7,20,40,.26) 0%,rgba(7,20,40,.5) 46%,rgba(7,20,40,.82) 100%),
    var(--how-to-buy-image);
  background-position:center;
  background-size:cover;
  color:#fff;
}
.gervasini-home .how-to-buy::before{
  content:'';
  position:absolute;
  z-index:-1;
  inset:0;
  background:linear-gradient(180deg,rgba(255,255,255,.05),transparent 30%,rgba(0,0,0,.1));
  pointer-events:none;
}
.gervasini-home .how-to-buy .section-header h2,
.gervasini-home .how-to-buy .journey-content h3{ color:#fff; }
.gervasini-home .how-to-buy .section-header p,
.gervasini-home .how-to-buy .journey-content p{ color:rgba(255,255,255,.76); }
.gervasini-home .how-to-buy .eyebrow{ color:#fff; }
.gervasini-home .how-to-buy .journey-content{
  min-height:132px;
  padding:18px 14px;
  border:1px solid rgba(255,255,255,.16);
  border-radius:6px;
  background:rgba(255,255,255,.08);
  -webkit-backdrop-filter:blur(12px) saturate(135%);
  backdrop-filter:blur(12px) saturate(135%);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.14),0 14px 34px rgba(0,0,0,.12);
}
.gervasini-home .how-to-buy .journey-content--up{ padding-bottom:34px; }
.gervasini-home .how-to-buy .journey-content--down{ padding-top:30px; }
.gervasini-home .how-to-buy .journey-icon{
  background:rgba(255,255,255,.92);
  color:var(--color-primary);
}
.gervasini-home .how-to-buy .journey-marker{
  padding:2px 6px;
  background:#0b1d39;
  color:var(--color-accent);
}

.gervasini-home .scroll-cue--section{
  bottom:26px;
  color:#fff;
  opacity:.86;
}

.gervasini-home .scroll-cue--section .scroll-cue-label{
  text-shadow:0 2px 12px rgba(0,0,0,.42);
}




.gervasini-home .finder{
  max-width:900px;
  margin:0 auto 40px;
  padding:8px;
  overflow:hidden;
}
.gervasini-home .finder-metal{
  border-radius:16px;
  background: linear-gradient(100deg,
    #eef0f3 0%, #d7dae0 10%, #f3f5f7 20%, #c9cdd4 32%,
    #f0f2f4 44%, #cfd3d9 56%, #f5f6f8 68%, #d3d7dd 80%,
    #eef0f3 90%, #dadde3 100%);
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.9),
    inset 0 -2px 4px rgba(16,39,90,.15),
    0 12px 32px rgba(16,39,90,.18);
}
.gervasini-home .finder-tabs{
  display:flex;
  flex-wrap:wrap;
  gap:4px;
  padding:8px;
  border-bottom:1px solid rgba(27,59,122,.08);
}
.gervasini-home .finder-tab{
  display:flex; align-items:center; gap:8px;
  padding:12px 18px;
  border:none;
  background:transparent;
  border-radius: var(--radius-sm);
  font-weight:600;
  font-size:.9rem;
  color: var(--color-text-muted);
  transition: background .3s var(--ease), color .3s var(--ease);
}
.gervasini-home .finder-tab svg{ width:1.2em; height:1.2em; }
.gervasini-home .finder-tab.is-active{ background: var(--color-primary); color:#fff; }
.gervasini-home .finder-tab:not(.is-active):hover{ background: rgba(27,59,122,.08); color: var(--color-primary); }

.gervasini-home .finder-body{ padding:18px 24px; }

.gervasini-home .finder-visual-row{
  display:flex;
  align-items:center;
  justify-content:center;
  gap:24px;
  margin-bottom:14px;
}
.gervasini-home .finder-size-preview{
  display:flex;
  flex-shrink:0;
  justify-content:center;
  gap:6px;
  font-family:'Poppins',sans-serif;
  font-weight:700;
  font-size:1.8rem;
  color: var(--color-primary);
}
.gervasini-home .finder-size-preview .sep{ color: var(--color-accent-dark); font-weight:700; }
.gervasini-home .finder-size-preview span{ display:inline-block; transition: transform .25s var(--ease), color .25s var(--ease); }
.gervasini-home .finder-size-preview span.is-pulsing{ color: var(--color-accent-dark); transform: scale(1.2); }

.gervasini-home .finder-size-guide{
  width:min(48%,300px);
  flex-shrink:0;
  margin:0;
  padding:0;
  overflow:visible;
  border:0 !important;
  border-radius:0 !important;
  outline:0 !important;
  background:transparent !important;
  box-shadow:none !important;
}
.gervasini-home .finder-size-guide img{
  display:block;
  width:100%;
  height:auto;
  max-height:170px;
  border:0 !important;
  border-radius:0 !important;
  outline:0 !important;
  background:transparent !important;
  box-shadow:none !important;
  object-fit:contain;
  object-position:center;
  filter:none;
}

.gervasini-home .finder-fields{ display:grid; grid-template-columns:repeat(3, 1fr); gap:16px; margin-bottom:14px; }
.gervasini-home .finder-fields[hidden]{ display:none; }
.gervasini-home .finder-field-wide{ grid-column: 1 / -1; }
.gervasini-home .finder-fields label{ display:block; font-size:.8rem; font-weight:600; color: var(--color-primary-dark); }
.gervasini-home .finder-fields select, .gervasini-home .finder-fields input{
  width:100%;
  margin-top:8px;
  padding:12px 14px;
  border-radius: var(--radius-sm);
  border:1px solid rgba(27,59,122,.15);
  background: rgba(255,255,255,.7);
  font-family:inherit;
  font-size:.95rem;
}
.gervasini-home .finder-fields select:focus, .gervasini-home .finder-fields input:focus{
  outline:none;
  border-color: var(--color-primary-light);
  box-shadow: 0 0 0 4px rgba(27,59,122,.12);
}
.gervasini-home .finder-submit{ width:100%; justify-content:center; }

.gervasini-home .finder-how-to-buy{
  display:flex;
  justify-content:center;
  margin:20px 0 0;
}

.gervasini-home .how-to-buy-actions{
  display:flex;
  justify-content:center;
  gap:16px;
  margin-top:48px;
}
.gervasini-home .how-to-buy-actions .btn-ghost{
  background: rgba(255,255,255,.1);
  color:#fff;
  border:1px solid rgba(255,255,255,.45);
}
.gervasini-home .how-to-buy-actions .btn-ghost:hover{
  background: rgba(255,255,255,.2);
  border-color: rgba(255,255,255,.65);
}

.gervasini-home .brand-row{
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  justify-content:center;
  gap:28px;
  margin-top:28px;
}
.gervasini-home .brand-logo{
  height:40px;
  width:auto;
  border-radius:8px;
  box-shadow: 0 10px 22px rgba(16,39,90,.16);
  animation: brandFloat 4.5s ease-in-out infinite;
}
.gervasini-home .brand-logo--goodride{ height:56px; }
.gervasini-home .brand-logo:nth-child(1){ animation-delay: 0s; }
.gervasini-home .brand-logo:nth-child(2){ animation-delay: .35s; }
.gervasini-home .brand-logo:nth-child(3){ animation-delay: .7s; }
.gervasini-home .brand-logo:nth-child(4){ animation-delay: 1.05s; }
@keyframes brandFloat{
  0%,100%{ transform: translateY(0); }
  50%{ transform: translateY(-9px); }
}

.gervasini-home .brand-showcase{
  position:relative;
  max-width:1120px;
  margin:-12px auto 52px;
}
.gervasini-home .brand-showcase-head{
  display:flex;
  align-items:flex-end;
  justify-content:space-between;
  gap:24px;
  margin-bottom:14px;
  padding:0 4px;
}
.gervasini-home .brand-showcase-head .eyebrow{
  margin-bottom:5px;
}
.gervasini-home .brand-showcase-head h3{
  margin:0;
  font-size:1.45rem;
}
.gervasini-home .brand-rail-buttons{
  display:flex;
  flex-shrink:0;
  gap:8px;
  transition:opacity .25s ease,visibility .25s ease;
}
.gervasini-home .brand-rail-arrow{
  display:flex;
  align-items:center;
  justify-content:center;
  width:48px;
  height:48px;
  padding:0;
  border:1px solid rgba(27,59,122,.14);
  border-radius:50%;
  background:rgba(255,255,255,.72);
  color:var(--color-primary);
  box-shadow:0 8px 22px rgba(16,39,90,.1),inset 0 1px 0 rgba(255,255,255,.95);
  transition:transform .3s var(--ease),background .3s var(--ease),opacity .3s ease;
}
.gervasini-home .brand-rail-arrow:hover:not(:disabled){
  background:#fff;
  transform:translateY(-2px) scale(1.04);
}
.gervasini-home .brand-rail-arrow:disabled{
  opacity:.32;
  cursor:default;
}
.gervasini-home .brand-rail-arrow svg{
  width:20px;
  height:20px;
}
.gervasini-home .brand-rail-viewport{
  width:100%;
  overflow-x:auto;
  overflow-y:hidden;
  padding:10px 4px 24px;
  scroll-padding-left:4px;
  scroll-snap-type:x mandatory;
  scroll-behavior:smooth;
  scrollbar-width:none;
  overscroll-behavior-inline:contain;
  -webkit-overflow-scrolling:touch;
}
.gervasini-home .brand-rail-viewport::-webkit-scrollbar{ display:none; }
.gervasini-home .brand-rail-viewport:focus-visible{
  outline:3px solid rgba(245,197,24,.7);
  outline-offset:4px;
  border-radius:8px;
}
.gervasini-home .brand-rail-track{
  display:flex;
  align-items:stretch;
  gap:20px;
  width:100%;
}
.gervasini-home .brand-card{
  --brand-scale:1;
  position:relative;
  isolation:isolate;
  display:flex;
  flex:1 1 0;
  min-width:0;
  flex-direction:column;
  min-height:250px;
  padding:18px 18px 16px;
  overflow:visible;
  scroll-snap-align:start;
  border:0;
  border-radius:0;
  background:transparent;
  color:var(--color-primary-dark);
  box-shadow:none;
  -webkit-backdrop-filter:none;
  backdrop-filter:none;
  transition:transform .4s var(--ease);
}
.gervasini-home .brand-card::before{
  display:none;
}
.gervasini-home .brand-card::after{
  display:none;
}
.gervasini-home .brand-card:hover,
.gervasini-home .brand-card:focus-visible{
  --brand-scale:1.1;
  box-shadow:none;
  transform:translateY(-4px);
}
.gervasini-home .brand-card:hover::before,
.gervasini-home .brand-card:focus-visible::before{ opacity:1; }
.gervasini-home .brand-card:focus-visible{
  outline:3px solid rgba(245,197,24,.7);
  outline-offset:3px;
}
.gervasini-home .brand-logo-stage{
  position:relative;
  z-index:1;
  display:flex;
  align-items:center;
  justify-content:center;
  height:165px;
  padding:24px 8px;
}
.gervasini-home .brand-logo-stage::after{
  content:'';
  position:absolute;
  z-index:-1;
  right:20%;
  bottom:17px;
  left:20%;
  height:12px;
  border-radius:50%;
  background:rgba(16,39,90,.18);
  filter:blur(9px);
  transition:transform .4s ease,opacity .4s ease;
}
.gervasini-home .brand-card:hover .brand-logo-stage::after{
  opacity:.75;
  transform:scaleX(.82);
}
.gervasini-home .brand-logo-stage img{
  --brand-scale-local:var(--brand-scale);
  position:relative;
  display:block;
  width:auto;
  max-width:98%;
  height:auto;
  max-height:102px;
  object-fit:contain;
  filter:drop-shadow(0 7px 8px rgba(16,39,90,.12));
  animation:brandLogoDrift 4.9s ease-in-out infinite;
  animation-delay:var(--brand-delay);
  transition:filter .35s ease;
}
.gervasini-home .brand-logo-stage img.brand-card-logo--goodride{
  width:112%;
  max-width:112%;
  max-height:112px;
}
.gervasini-home .brand-logo-stage img.brand-card-logo--goodyear{
  width:122%;
  max-width:122%;
  max-height:120px;
}
.gervasini-home .brand-card:hover .brand-logo-stage img{
  filter:drop-shadow(0 11px 12px rgba(16,39,90,.2));
}
.gervasini-home .brand-card-footer{
  position:relative;
  z-index:1;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  gap:3px;
  margin-top:auto;
  padding-top:4px;
  border:0;
  text-align:center;
}
.gervasini-home .brand-card-footer strong{
  color:var(--color-primary-dark);
  font-size:1rem;
}
.gervasini-home .brand-card-footer > span{
  display:inline-flex;
  align-items:center;
  gap:5px;
  color:var(--color-primary);
  font-size:.8rem;
  font-weight:700;
  white-space:nowrap;
}
.gervasini-home .brand-card-footer svg{
  width:15px;
  height:15px;
  transition:transform .3s var(--ease);
}
.gervasini-home .brand-card:hover .brand-card-footer svg{ transform:translateX(4px); }
.gervasini-home .brand-rail-progress{
  width:160px;
  height:3px;
  margin:0 auto;
  overflow:hidden;
  border-radius:3px;
  background:rgba(27,59,122,.12);
  transition:opacity .25s ease,visibility .25s ease;
}
.gervasini-home .brand-showcase.is-static .brand-rail-buttons,
.gervasini-home .brand-showcase.is-static .brand-rail-progress{
  visibility:hidden;
  opacity:0;
}
.gervasini-home .brand-rail-progress span{
  display:block;
  width:100%;
  height:100%;
  border-radius:inherit;
  background:var(--color-accent);
  transform:scaleX(.25);
  transform-origin:left;
  transition:transform .18s ease-out;
}
@keyframes brandLogoDrift{
  0%,100%{ transform:translateY(1px) rotate(-.35deg) scale(var(--brand-scale-local)); }
  50%{ transform:translateY(-9px) rotate(.35deg) scale(var(--brand-scale-local)); }
}
@keyframes brandCardSweep{
  0%,58%{ left:-75%; opacity:0; }
  64%{ opacity:.82; }
  82%,100%{ left:145%; opacity:0; }
}
@media (min-width:901px){
  .gervasini-home .brand-rail-buttons,
  .gervasini-home .brand-rail-progress{ display:none; }
}

.gervasini-home .cat-grid-label{
  text-align:center;
  font-size:.85rem;
  font-weight:600;
  color: var(--color-text-muted);
  margin-bottom:24px;
}

.gervasini-home .product-gallery-header{ text-align:center; margin:64px 0 28px; }
.gervasini-home .product-gallery-header h3{ font-size:1.4rem; }


.gervasini-home .product-carousel{
  position:relative;
  max-width:1080px;
  margin:0 auto;
  display:flex;
  align-items:center;
  justify-content:center;
  gap:12px;
}
.gervasini-home .carousel-track{
  position:relative;
  flex:1;
  height:540px;
}
.gervasini-home .carousel-slide{
  position:absolute;
  top:0; left:50%;
  width:260px;
  display:flex;
  flex-direction:column;
  align-items:center;
  text-align:center;
  transform: translate(-50%, 16px) scale(.68);
  opacity:.4;
  filter: blur(2.5px);
  transition: transform .8s var(--ease), opacity .8s var(--ease), width .8s var(--ease);
  will-change: transform;
  pointer-events:none;
}
.gervasini-home .carousel-slide.is-active{
  width:430px;
  transform: translate(-50%, 0) scale(1);
  opacity:1;
  filter: blur(0);
  z-index:3;
  pointer-events:auto;
}
.gervasini-home .carousel-slide.is-prev{
  transform: translate(calc(-50% - 335px), 28px) scale(.74);
  opacity:.55;
  filter: blur(2.5px);
  z-index:2;
  pointer-events:auto;
}
.gervasini-home .carousel-slide.is-next{
  transform: translate(calc(-50% + 335px), 28px) scale(.74);
  opacity:.55;
  filter: blur(2.5px);
  z-index:2;
  pointer-events:auto;
}
.gervasini-home .carousel-photo{
  width:100%;
  aspect-ratio:1/1;
  display:flex;
  align-items:center;
  justify-content:center;
  border-radius:24px;
  background: radial-gradient(ellipse at center, rgba(255,255,255,.65) 0%, rgba(255,255,255,.24) 55%, rgba(255,255,255,0) 78%);
  margin-bottom:16px;
}
.gervasini-home .carousel-photo img{
  width:100%; height:100%;
  object-fit:cover;
  border-radius:24px;
  -webkit-mask-image: radial-gradient(ellipse at center, #000 72%, transparent 100%);
  mask-image: radial-gradient(ellipse at center, #000 72%, transparent 100%);
}
.gervasini-home .carousel-photo--filled{
  position:relative;
  isolation:isolate;
  overflow:visible;
  background:transparent;
}
.gervasini-home .carousel-photo--filled::after{
  content:'';
  position:absolute;
  z-index:0;
  left:18%;
  right:18%;
  bottom:4%;
  height:9%;
  border-radius:50%;
  background:rgba(16,39,90,.34);
  filter:blur(18px);
  transform:scaleX(.92);
}
.gervasini-home .carousel-photo img.carousel-tire-image{
  position:relative;
  z-index:1;
  width:100%;
  height:100%;
  padding:8px;
  object-fit:contain;
  border-radius:0;
  -webkit-mask-image:none;
  mask-image:none;
  filter:none;
  transition:transform .45s var(--ease);
}
.gervasini-home .carousel-slide.is-active .carousel-tire-image{
  transform:translateY(-5px) scale(1.06);
  animation:gervasiniCarouselFloat 4.8s ease-in-out infinite;
}
.gervasini-home .carousel-slide.is-active:hover .carousel-tire-image{
  transform:translateY(-9px) scale(1.08);
}
@keyframes gervasiniCarouselFloat{
  0%,100%{ transform:translateY(-5px) scale(1.06) rotate(-.25deg); }
  50%{ transform:translateY(-13px) scale(1.06) rotate(.25deg); }
}
.gervasini-home .carousel-photo-placeholder{
  display:flex;
  flex-direction:column;
  align-items:center;
  gap:8px;
  color: var(--color-text-muted);
  opacity:.55;
}
.gervasini-home .carousel-slide.is-active .carousel-photo-placeholder svg{ width:58px; height:58px; }
.gervasini-home .carousel-photo-placeholder svg{ width:42px; height:42px; }
.gervasini-home .carousel-photo-placeholder span{ font-size:.78rem; font-weight:600; }
.gervasini-home .carousel-slide h4{ font-size:1.05rem; margin-bottom:5px; color: var(--color-primary); }
.gervasini-home .carousel-slide.is-active h4{ font-size:1.4rem; }
.gervasini-home .carousel-link{ font-weight:600; color: var(--color-primary); font-size:.9rem; display:inline-flex; align-items:center; gap:4px; }

.gervasini-home .carousel-arrow{
  flex-shrink:0;
  width:56px; height:56px;
  border-radius:50%;
  background: var(--glass-bg-strong);
  -webkit-backdrop-filter: blur(10px);
  backdrop-filter: blur(10px);
  border:1px solid var(--glass-border);
  color: var(--color-primary);
  display:flex; align-items:center; justify-content:center;
  box-shadow: var(--glass-shadow);
  transition: transform .3s var(--ease), background .3s var(--ease);
  z-index:5;
}
.gervasini-home .carousel-arrow:hover{ background:#fff; transform: scale(1.08); }
.gervasini-home .carousel-arrow svg{ width:22px; height:22px; }

@media (min-width:1025px){
  .gervasini-home .product-carousel{ max-width:1160px; }
  .gervasini-home .carousel-track{ height:585px; }
  .gervasini-home .carousel-slide{ width:285px; }
  .gervasini-home .carousel-slide.is-active{ width:475px; }
  .gervasini-home .carousel-slide.is-prev{
    transform:translate(calc(-50% - 360px),28px) scale(.76);
  }
  .gervasini-home .carousel-slide.is-next{
    transform:translate(calc(-50% + 360px),28px) scale(.76);
  }
}


.gervasini-home .promo-grid{
  display:grid;
  grid-template-columns:repeat(3, 1fr);
  gap:24px;
}
.gervasini-home .promo-card{
  aspect-ratio: 1024 / 1440;
  display:flex;
  align-items:center;
  justify-content:center;
}
.gervasini-home .promo-placeholder{
  display:flex;
  flex-direction:column;
  align-items:center;
  gap:10px;
  color: var(--color-text-muted);
  opacity:.55;
}
.gervasini-home .promo-placeholder svg{ width:40px; height:40px; }
.gervasini-home .promo-placeholder span{ font-size:.78rem; font-weight:600; }

.gervasini-home .featured-products{
  margin:44px auto 0;
  max-width:1120px;
}
.gervasini-home .featured-products-header{
  text-align:center;
  margin-bottom:24px;
}
.gervasini-home .featured-products-header h3{ font-size:1.4rem; }
.gervasini-home .featured-products-header .eyebrow{
  color: var(--color-primary);
  font-size:1rem;
}
.gervasini-home .featured-products-header .eyebrow::before{
  content:'';
  width:20px; height:20px;
  border-radius:0;
  background: var(--color-accent-dark);
  -webkit-mask: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'><path d='M12 2.5l2.85 6.32 6.9.63-5.2 4.62 1.55 6.78L12 17.6l-6.1 3.25 1.55-6.78-5.2-4.62 6.9-.63L12 2.5z'/></svg>") center / contain no-repeat;
  mask: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'><path d='M12 2.5l2.85 6.32 6.9.63-5.2 4.62 1.55 6.78L12 17.6l-6.1 3.25 1.55-6.78-5.2-4.62 6.9-.63L12 2.5z'/></svg>") center / contain no-repeat;
}
.gervasini-home .featured-products-status{
  text-align:center;
  color: var(--color-text-muted);
  font-size:.85rem;
  margin:0 0 16px;
}
.gervasini-home .featured-products-status[hidden]{ display:none; }
.gervasini-home .featured-products-carousel{
  display:flex;
  align-items:center;
  gap:10px;
}
.gervasini-home .featured-carousel-arrow{
  display:flex;
  align-items:center;
  justify-content:center;
  flex-shrink:0;
  width:48px;
  height:48px;
  padding:0;
  border:1px solid rgba(27,59,122,.14);
  border-radius:50%;
  background:rgba(255,255,255,.72);
  color:var(--color-primary);
  box-shadow:0 8px 22px rgba(16,39,90,.1),inset 0 1px 0 rgba(255,255,255,.95);
  transition:transform .3s var(--ease),background .3s var(--ease),opacity .3s ease;
}
.gervasini-home .featured-carousel-arrow:hover:not(:disabled){ background:#fff; transform:translateY(-2px) scale(1.04); }
.gervasini-home .featured-carousel-arrow:disabled{ opacity:.32; cursor:default; }
.gervasini-home .featured-carousel-arrow svg{ width:20px; height:20px; }
.gervasini-home .featured-products-viewport{
  flex:1;
  min-width:0;
  overflow-x:auto;
  overflow-y:hidden;
  padding:14px 4px 10px;
  scroll-snap-type:x mandatory;
  scroll-behavior:smooth;
  scrollbar-width:none;
  -webkit-overflow-scrolling:touch;
}
.gervasini-home .featured-products-viewport::-webkit-scrollbar{ display:none; }
.gervasini-home .featured-products-viewport:focus-visible{
  outline:3px solid rgba(245,197,24,.7);
  outline-offset:4px;
  border-radius:8px;
}
.gervasini-home .featured-products-grid{
  display:flex;
  align-items:stretch;
  gap:20px;
}
.gervasini-home .featured-product-card{
  flex:0 0 auto;
  width:230px;
  scroll-snap-align:start;
  display:flex;
  flex-direction:column;
  align-items:center;
  text-align:center;
  padding:22px 18px;
  animation: featuredCardFloat 6s ease-in-out infinite;
  transition: box-shadow .3s var(--ease), border-color .3s var(--ease);
}
.gervasini-home .featured-product-card:nth-child(2n){ animation-delay:.7s; }
.gervasini-home .featured-product-card:nth-child(3n){ animation-delay:1.4s; }
.gervasini-home .featured-product-card:nth-child(4n){ animation-delay:2.1s; }
@keyframes featuredCardFloat{
  0%,100%{ transform: translateY(0); }
  50%{ transform: translateY(-5px); }
}
.gervasini-home .featured-product-card:hover .featured-product-media img{ transform: scale(1.06); }
.gervasini-home .featured-product-card.tag-card{
  border:none;
  background:none;
  box-shadow:none;
  backdrop-filter:none;
  -webkit-backdrop-filter:none;
}
.gervasini-home .featured-product-card.tag-card::before{ display:none; }
.gervasini-home .featured-product-media{
  width:100%;
  aspect-ratio:1/1;
  display:flex;
  align-items:center;
  justify-content:center;
  margin-bottom:14px;
  background: var(--color-bg);
  border-radius:12px;
  overflow:hidden;
}
.gervasini-home .featured-product-media img{ width:100%; height:100%; object-fit:contain; transition: transform .3s var(--ease); }
.gervasini-home .featured-product-name{
  font-size:.92rem;
  font-weight:600;
  color: var(--color-primary-dark);
  margin:0 0 8px;
  line-height:1.35;
  min-height:2.7em;
  display:-webkit-box;
  -webkit-line-clamp:2;
  -webkit-box-orient:vertical;
  overflow:hidden;
}
.gervasini-home .featured-product-price{
  font-family:'Poppins',sans-serif;
  font-weight:700;
  font-size:1.2rem;
  color: var(--color-primary);
  margin:auto 0 4px;
}
.gervasini-home .featured-product-installments{
  font-size:.8rem;
  color: var(--color-text-muted);
  margin:0 0 8px;
}
.gervasini-home .featured-product-financing{
  display:inline-flex;
  align-items:center;
  gap:5px;
  font-size:.82rem;
  font-weight:700;
  color:var(--color-accent-dark);
  margin:0;
}
.gervasini-home .featured-products-dots{
  display:flex;
  justify-content:center;
  align-items:center;
  gap:8px;
  margin-top:16px;
}
.gervasini-home .featured-products-dots button{
  width:8px;
  height:8px;
  padding:0;
  border:none;
  border-radius:50%;
  background:rgba(27,59,122,.2);
  transition:transform .25s ease,background .25s ease;
}
.gervasini-home .featured-products-dots button.is-active{
  background:var(--color-primary);
  transform:scale(1.3);
}
.gervasini-home .featured-products-actions{
  display:flex;
  justify-content:center;
  gap:16px;
  margin-top:28px;
  flex-wrap:wrap;
}

.gervasini-home .cat-grid{
  display:grid;
  grid-template-columns:repeat(3, 1fr);
  gap:24px;
  max-width:900px;
  margin:0 auto;
}
.gervasini-home .cat-grid .cat-card:nth-child(odd){ --tilt:-1.4deg; }
.gervasini-home .cat-grid .cat-card:nth-child(even){ --tilt:1.4deg; }
.gervasini-home .cat-card{
  aspect-ratio: 1 / 1;
  padding:26px 24px;
  display:flex;
  flex-direction:column;
  align-items:flex-start;
  transition: transform .45s var(--ease), box-shadow .45s var(--ease);
}
.gervasini-home .cat-grid .cat-card:hover{
  transform: translateY(-8px) rotate(0deg) scale(1.02);
  box-shadow: 0 16px 32px rgba(27,59,122,.2);
}
.gervasini-home .cat-icon{
  width:48px; height:48px;
  border-radius: 38% 62% 55% 45% / 45% 40% 60% 55%;
  background: linear-gradient(135deg, var(--color-primary), var(--color-primary-light));
  color:#fff;
  display:flex; align-items:center; justify-content:center;
  margin-bottom:16px;
  transition: transform .45s var(--ease), border-radius .45s var(--ease);
}
.gervasini-home .cat-icon svg{ width:22px; height:22px; }
.gervasini-home .cat-card:hover .cat-icon{ transform: rotate(-8deg) scale(1.05); border-radius: 55% 45% 38% 62% / 55% 60% 40% 45%; }
.gervasini-home .cat-card h3{ font-size:1rem; margin-bottom:7px; }
.gervasini-home .cat-card p{ font-size:.8rem; margin-bottom:12px; line-height:1.5; }
.gervasini-home .cat-link{
  margin-top:auto;
  font-weight:600;
  color: var(--color-primary);
  font-size:.84rem;
  display:inline-flex; align-items:center; gap:5px;
  transition: gap .3s var(--ease);
}
.gervasini-home .cat-card:hover .cat-link{ gap:10px; }


.gervasini-home .about-inner{
  display:grid;
  grid-template-columns: 1.2fr .8fr;
  gap:64px;
  align-items:center;
}
.gervasini-home .about-visual{ position:relative; }
.gervasini-home .about-frame{
  overflow:hidden;
  aspect-ratio: 16 / 10;
  border-radius:16px;
  box-shadow: 0 20px 45px rgba(16,39,90,.18);
}
.gervasini-home .about-frame img{ width:100%; height:100%; object-fit:cover; display:block; }
.gervasini-home .about-badges{
  position:absolute;
  bottom:-20px; left:-20px;
  display:flex;
  flex-wrap:wrap;
  gap:12px;
  max-width: calc(100% - 20px);
}
.gervasini-home .about-badge{
  display:flex; align-items:center; gap:10px;
  padding:14px 18px;
  font-weight:600;
  font-size:.85rem;
  color: var(--color-primary-dark);
}
.gervasini-home .about-badge svg{ color: var(--color-accent-dark); flex-shrink:0; }
.gervasini-home .about-copy .about-network{
  margin:22px 0 0;
  padding:18px 0 0;
  border-top:1px solid rgba(27,59,122,.18);
  text-align:left;
}
.gervasini-home .about-network-label{
  display:flex;
  align-items:center;
  gap:10px;
  margin-bottom:10px;
  color:var(--color-primary);
  font-size:.76rem;
  font-weight:700;
  line-height:1.35;
  text-transform:uppercase;
}
.gervasini-home .about-network-label::before{
  content:'';
  width:30px;
  height:2px;
  flex:0 0 30px;
  background:var(--color-accent);
}
.gervasini-home .about-copy .about-network p{
  margin:0 0 9px;
  color:var(--color-text-muted);
  font-weight:400;
  line-height:1.65;
}
.gervasini-home .about-copy .about-network p:last-child{ margin-bottom:0; }
.gervasini-home .about-copy .about-network strong{
  color:var(--color-primary-dark);
  font-weight:700;
}

.gervasini-home .stats-grid{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:20px;
  margin-top:36px;
}
.gervasini-home .stat{ text-align:left; }
.gervasini-home .stat-display{
  display:inline-flex;
  align-items:center;
  background: var(--color-primary-dark);
  border-radius:10px;
  padding:8px 18px;
  margin-bottom:10px;
  position:relative;
  overflow:hidden;
  box-shadow: inset 0 2px 6px rgba(0,0,0,.35);
}
.gervasini-home .stat-display::before{
  content:'';
  position:absolute; inset:0;
  background: linear-gradient(180deg, rgba(255,255,255,.14), transparent 45%);
  pointer-events:none;
}
.gervasini-home .stat-number{
  position:relative;
  font-family:'Poppins',sans-serif;
  font-size:2rem;
  font-weight:700;
  font-variant-numeric: tabular-nums;
  color: var(--color-accent);
  text-shadow: 0 0 14px rgba(245,197,24,.5);
}
.gervasini-home .stat-label{ display:block; margin-top:6px; font-size:.8rem; color: var(--color-text-muted); }


.gervasini-home .branches-card{ padding:40px; }
.gervasini-home .branch-grid{
  display:flex;
  flex-wrap:wrap;
  justify-content:center;
  gap:24px;
}
.gervasini-home .branch-subcard{
  flex:1 1 300px;
  max-width:386px;
  min-width:280px;
  padding:26px;
  border-radius:12px;
  background: rgba(255,255,255,.55);
  box-shadow: 0 6px 18px rgba(16,39,90,.08);
  transition: transform .4s var(--ease), box-shadow .4s var(--ease);
}
.gervasini-home .branch-subcard:hover{ transform: translateY(-6px); box-shadow: 0 16px 32px rgba(16,39,90,.16); }
.gervasini-home .branch-type{
  display:flex;
  align-items:center;
  gap:8px;
  margin-bottom:7px;
  color:var(--color-primary);
  font-size:.72rem;
  font-weight:700;
  line-height:1.3;
  text-transform:uppercase;
}
.gervasini-home .branch-type::before{
  content:'';
  width:24px;
  height:2px;
  flex:0 0 24px;
  background:var(--color-accent);
}
.gervasini-home .branch-subcard--distribution h3{ margin-bottom:18px; }
.gervasini-home .branch-line{
  display:flex; align-items:center; gap:10px;
  font-size:.9rem;
  color: var(--color-text-muted);
  margin-bottom:10px;
  overflow-wrap:anywhere;
}
.gervasini-home .branch-line svg{ color: var(--color-primary); flex-shrink:0; width:1.2em; height:1.2em; }
.gervasini-home .branch-map{
  display:inline-block;
  margin-top:8px;
  font-weight:600;
  color: var(--color-primary);
}


.gervasini-home .contact-inner{
  display:grid;
  grid-template-columns: .85fr 1.15fr;
  gap:56px;
  align-items:start;
}
.gervasini-home .contact-item{
  display:flex; align-items:center; gap:16px;
  padding:18px 22px;
  margin-bottom:16px;
  transition: transform .3s var(--ease), box-shadow .3s var(--ease);
}
.gervasini-home .contact-item svg{ width:1.4em; height:1.4em; color: var(--color-primary); flex-shrink:0; }
.gervasini-home .contact-item strong{ display:block; font-size:.85rem; color: var(--color-primary-dark); }
.gervasini-home .contact-item span{ font-size:.9rem; color: var(--color-text-muted); }

.gervasini-home .contact-item--whatsapp:hover{ transform: translateY(-3px); box-shadow: 0 14px 28px rgba(37,211,102,.25); }
.gervasini-home .wa-icon-badge{
  width:40px; height:40px;
  border-radius:50%;
  background:#25D366;
  display:flex; align-items:center; justify-content:center;
  flex-shrink:0;
  box-shadow: 0 6px 14px rgba(37,211,102,.35);
}
.gervasini-home .wa-icon-badge svg{ width:24px; height:24px; }
.gervasini-home .wa-icon-badge .gervasini-wa-official-icon{
  width:24px;
  height:24px;
  fill:#fff;
  stroke:none;
}


.gervasini-home .whatsapp-float{
  position:fixed;
  right:24px; bottom:24px;
  width:60px; height:60px;
  background:#25D366;
  border-radius:50%;
  display:flex; align-items:center; justify-content:center;
  color:#fff;
  z-index:500;
  box-shadow: 0 8px 24px rgba(16,39,90,.3);
  animation: waPulse 2.8s ease-in-out infinite;
  transition: transform .3s var(--ease);
}
.gervasini-home .whatsapp-float:hover{ transform: scale(1.08); }
.gervasini-home .whatsapp-float svg{ width:30px; height:30px; }
@keyframes waPulse{
  0%,100%{ box-shadow: 0 8px 24px rgba(16,39,90,.3), 0 0 0 0 rgba(37,211,102,.55); }
  50%{ box-shadow: 0 8px 24px rgba(16,39,90,.3), 0 0 0 14px rgba(37,211,102,0); }
}

.gervasini-home .social-row{ display:flex; gap:12px; margin-top:20px; }
.gervasini-home .social-btn{
  width:54px; height:54px;
  display:flex; align-items:center; justify-content:center;
  color: var(--color-primary);
  border-radius:16px;
  transition: transform .3s var(--ease);
}
.gervasini-home .social-btn svg{ width:27px; height:27px; }
.gervasini-home .social-btn:hover{ transform: translateY(-4px); color: var(--color-accent-dark); }

.gervasini-home .contact-form{ padding:40px; }
.gervasini-home .contact-form h3{ margin-bottom:20px; }
.gervasini-home .form-row{ display:grid; grid-template-columns:1fr 1fr; gap:16px; }
.gervasini-home .contact-form label{ display:block; margin-bottom:16px; font-size:.85rem; font-weight:600; color: var(--color-primary-dark); }
.gervasini-home .contact-form input, .gervasini-home .contact-form textarea{
  width:100%;
  margin-top:8px;
  padding:12px 16px;
  border-radius: var(--radius-sm);
  border:1px solid rgba(27,59,122,.15);
  background: rgba(255,255,255,.7);
  font-family:inherit;
  font-size:.95rem;
  transition: border-color .3s var(--ease), box-shadow .3s var(--ease);
}
.gervasini-home .contact-form input:focus, .gervasini-home .contact-form textarea:focus{
  outline:none;
  border-color: var(--color-primary-light);
  box-shadow: 0 0 0 4px rgba(27,59,122,.12);
}
.gervasini-home .form-submit{ width:100%; justify-content:center; margin-top:8px; }
.gervasini-home .form-feedback{ margin:12px 0 0; font-size:.85rem; min-height:1.2em; }


.gervasini-home .site-footer{
  background: var(--color-primary-dark);
  color: rgba(245,247,250,.75);
  padding-top:72px;
}
.gervasini-home .footer-inner{
  display:grid;
  grid-template-columns: 1.4fr 1fr 1fr 1fr;
  gap:40px;
  padding-bottom:48px;
  border-bottom:1px solid rgba(255,255,255,.1);
}
.gervasini-home .footer-brand img{ height:36px; margin-bottom:16px; }
.gervasini-home .footer-logo{ filter: brightness(0) invert(1); opacity:.92; }
.gervasini-home .footer-brand p{ color: rgba(245,247,250,.6); font-size:.9rem; }
.gervasini-home .footer-col h4{ color:#fff; font-size:.95rem; margin-bottom:18px; }
.gervasini-home .footer-col a{
  display:block;
  color: rgba(245,247,250,.65);
  font-size:.9rem;
  margin-bottom:12px;
  transition: color .3s var(--ease), transform .3s var(--ease);
}
.gervasini-home .footer-col a:hover{ color: var(--color-accent); transform: translateX(4px); }
.gervasini-home .footer-col .social-row .social-btn{
  display:flex;
  align-items:center;
  justify-content:center;
  margin-bottom:0;
  color:#fff;
  background: var(--color-primary-light);
  border-color: transparent;
  -webkit-backdrop-filter: none;
  backdrop-filter: none;
  box-shadow: 0 6px 16px rgba(0,0,0,.3);
}
.gervasini-home .footer-col .social-row .social-btn:hover{ background: var(--color-accent); color: var(--color-primary-dark); }

.gervasini-home .footer-bottom{ padding:20px 0; font-size:.8rem; color: rgba(245,247,250,.5); }


.gervasini-home [data-reveal]{
  --tilt: 0deg;
  opacity:0;
  transform: translateY(28px) rotate(var(--tilt));
  transition: opacity .8s var(--ease), transform .8s var(--ease);
}
.gervasini-home [data-reveal].is-visible{ opacity:1; transform: translateY(0) rotate(var(--tilt)); }

/* Variante 3D: entrada tipo "se posa desde el aire", para tarjetas destacadas (promociones, destacados) */
.gervasini-home [data-reveal-3d]{
  opacity:0;
  transform: perspective(1200px) translateY(38px) rotateX(-16deg) scale(.94);
  transition: opacity .95s cubic-bezier(.22,1,.36,1), transform .95s cubic-bezier(.22,1,.36,1);
  transform-style: preserve-3d;
}
.gervasini-home [data-reveal-3d].is-visible{
  opacity:1;
  transform: perspective(1200px) translateY(0) rotateX(0deg) scale(1);
}

/* Flotado ambiente continuo, solo tarjetas de Promociones - se pausa fuera de pantalla */
@keyframes promoCardFloat{
  0%, 100%{ transform: translateY(0) rotate(0deg); }
  50%{ transform: translateY(-8px) rotate(.6deg); }
}
.gervasini-home .promo-card{
  animation: promoCardFloat 6.2s ease-in-out infinite;
  animation-play-state: paused;
  animation-delay: 1s;
}
.gervasini-home .promo-card:nth-child(2){ animation-duration: 6.8s; animation-delay: 1.3s; }
.gervasini-home .promo-card:nth-child(3){ animation-duration: 5.6s; animation-delay: .7s; }
.gervasini-home .promotions.is-animating .promo-card{ animation-play-state: running; }
.gervasini-home [data-animate-section] .hero-blob,
.gervasini-home [data-animate-section] .hero-icon,
.gervasini-home [data-animate-section] .glass-badge,
.gervasini-home [data-animate-section] .scroll-cue-mouse > span,
.gervasini-home [data-animate-section] .brand-card::after,
.gervasini-home [data-animate-section] .brand-logo-stage img,
.gervasini-home [data-animate-section] .carousel-tire-image,
.gervasini-home [data-animate-section] .featured-product-card{
  animation-play-state: paused;
}
.gervasini-home [data-animate-section].is-animating .hero-blob,
.gervasini-home [data-animate-section].is-animating .hero-icon,
.gervasini-home [data-animate-section].is-animating .glass-badge,
.gervasini-home [data-animate-section].is-animating .scroll-cue-mouse > span,
.gervasini-home [data-animate-section].is-animating .brand-card::after,
.gervasini-home [data-animate-section].is-animating .brand-logo-stage img,
.gervasini-home [data-animate-section].is-animating .carousel-tire-image,
.gervasini-home [data-animate-section].is-animating .featured-product-card{
  animation-play-state: running;
}

@media (prefers-reduced-motion: reduce){
  .gervasini-home html{ scroll-behavior:auto; }
  .gervasini-home [data-reveal]{ opacity:1; transform:none; transition:none; }
  .gervasini-home [data-reveal-3d]{ opacity:1; transform:none; transition:none; }
  .gervasini-home .promo-card{ animation:none; }
  .gervasini-home .top-banner-btn--glow{ animation:none; }
  .gervasini-home .hero-icon{ animation:none; }
  .gervasini-home .glass-badge{ animation:none; }
  .gervasini-home .hero-blob{ animation:none; }
  .gervasini-home .brand-logo{ animation:none; }
  .gervasini-home .brand-card::after,
  .gervasini-home .brand-logo-stage img{ animation:none !important; }
  .gervasini-home .carousel-tire-image{ animation:none !important; }
  .gervasini-home .whatsapp-float{ animation:none; }
  .gervasini-home .featured-product-card{ animation:none; }
  .gervasini-home .featured-products-viewport{ scroll-behavior:auto; }
}


@media (max-width: 1024px){
  .gervasini-home .hero-inner{ grid-template-columns:1fr; text-align:center; padding-top:36px; }
  .gervasini-home .hero-copy{ max-width:720px; margin-right:auto; margin-left:auto; }
  .gervasini-home .hero-title{ max-width:700px; margin-right:auto; margin-left:auto; font-size:3rem; }
  .gervasini-home .hero .eyebrow{ justify-content:center; }
  .gervasini-home .hero-copy p, .gervasini-home .hero-actions{ margin-left:auto; margin-right:auto; }
  .gervasini-home .hero-subtitle{ margin-left:auto; margin-right:auto; }
  .gervasini-home .hero-product-search{ margin-right:auto; margin-left:auto; }
  .gervasini-home .hero-visual{ margin-top:32px; padding-top:0; }
  .gervasini-home .promo-grid{ grid-template-columns:repeat(2,1fr); }
  .gervasini-home .featured-product-card{ width:200px; }

  .gervasini-home .journey{
    display:flex;
    flex-direction:column;
    gap:8px;
  }
  .gervasini-home .journey-line{
    position:absolute;
    top:8px;
    bottom:24px;
    left:29px;
    width:3px;
    height:auto;
    background: repeating-linear-gradient(180deg, var(--color-accent) 0 16px, transparent 16px 30px);
  }
  .gervasini-home .journey-step{
    position:relative;
    z-index:1;
    display:grid;
    grid-template-columns:60px minmax(0, 1fr);
    align-items:start;
    width:100%;
  }
  .gervasini-home .journey-marker{
    grid-column:1;
    grid-row:1;
    align-self:start;
    justify-self:center;
    margin:12px 0 0;
    padding:2px 5px;
    background:var(--color-bg);
    font-size:1.8rem;
  }
  .gervasini-home .journey-content, .gervasini-home .journey-content--up, .gervasini-home .journey-content--down{
    grid-column:2;
    grid-row:1;
    align-items:flex-start; text-align:left;
    padding:10px 0 32px 20px;
  }

  .gervasini-home .finder-fields{ grid-template-columns:1fr 1fr; }
  .gervasini-home .about-inner{ grid-template-columns:1fr; }
  .gervasini-home .about-visual{ max-width:420px; margin:0 auto; }
  .gervasini-home .branch-subcard{ max-width:calc(50% - 12px); }
  .gervasini-home .contact-inner{ grid-template-columns:1fr; }
  .gervasini-home .footer-inner{ grid-template-columns:1fr 1fr; }
}

@media (max-width: 720px){
  .gervasini-home .main-nav{
    position:fixed;
    top:0; right:0;
    height:100vh;
    width:min(300px, 80vw);
    background: var(--glass-bg-strong);
    -webkit-backdrop-filter: blur(20px);
    backdrop-filter: blur(20px);
    flex-direction:column;
    justify-content:center;
    align-items:flex-start;
    gap:28px;
    padding:0 40px;
    transform: translateX(100%);
    transition: transform .4s var(--ease);
    box-shadow: -10px 0 30px rgba(16,39,90,.15);
  }
  .gervasini-home .main-nav.is-open{ transform: translateX(0); }
  .gervasini-home .nav-toggle{ display:flex; }
  .gervasini-home .header-actions .btn-accent{ display:none; }
  .gervasini-home body.nav-open{ overflow:hidden; }

  .gervasini-home .nav-item-dropdown{ width:100%; }
  .gervasini-home .nav-dropdown-toggle{ width:100%; justify-content:space-between; }
  .gervasini-home .nav-dropdown-menu{
    position:static;
    transform:none;
    opacity:1;
    visibility:visible;
    max-height:0;
    overflow:hidden;
    padding:0;
    margin-top:0;
    background:none;
    -webkit-backdrop-filter:none;
    backdrop-filter:none;
    border:none;
    box-shadow:none;
    transition: max-height .35s var(--ease);
  }
  .gervasini-home .nav-item-dropdown.is-open .nav-dropdown-menu{
    max-height:220px;
    padding-top:6px;
  }
  .gervasini-home .nav-item-dropdown:hover .nav-dropdown-menu{ max-height:0; opacity:1; visibility:visible; }
  .gervasini-home .nav-item-dropdown.is-open:hover .nav-dropdown-menu{ max-height:220px; }

  .gervasini-home .cat-grid{ grid-template-columns:1fr; max-width:280px; }
  .gervasini-home .cat-card{ aspect-ratio:auto; }

  .gervasini-home .product-carousel{ gap:4px; }
  .gervasini-home .carousel-track{ height:300px; }
  .gervasini-home .carousel-slide{ width:150px; }
  .gervasini-home .carousel-slide.is-active{ width:210px; }
  .gervasini-home .carousel-slide.is-prev{ transform: translate(calc(-50% - 118px), 16px) scale(.62); }
  .gervasini-home .carousel-slide.is-next{ transform: translate(calc(-50% + 118px), 16px) scale(.62); }
  .gervasini-home .carousel-arrow{ width:38px; height:38px; }
  .gervasini-home .carousel-arrow svg{ width:18px; height:18px; }

  .gervasini-home .promo-grid{ grid-template-columns:1fr; }
  .gervasini-home .featured-product-card{ width:160px; padding:16px 12px; }
  .gervasini-home .featured-carousel-arrow{ width:38px; height:38px; }
  .gervasini-home .featured-carousel-arrow svg{ width:16px; height:16px; }
  .gervasini-home .featured-products-actions{ flex-direction:column; align-items:stretch; }
  .gervasini-home .how-to-buy-actions{ flex-direction:column; align-items:stretch; }

  .gervasini-home .finder-tab span{ display:none; }
  .gervasini-home .finder-fields{ grid-template-columns:1fr; }
  .gervasini-home .stats-grid{ grid-template-columns:1fr 1fr; }
  .gervasini-home .branch-grid{ gap:16px; }
  .gervasini-home .branch-subcard{ max-width:100%; min-width:0; }
  .gervasini-home .branches-card{ padding:22px; }
  .gervasini-home .form-row{ grid-template-columns:1fr; }
  .gervasini-home .footer-inner{ grid-template-columns:1fr; }
  .gervasini-home section{ padding:72px 0; }
}

/* Gervasini global header, footer and live Tiendanube controls */
.gervasini-site-header{
  --g-primary:#1b3b7a;
  --g-primary-dark:#10275a;
  --g-accent:#f5c518;
  position:-webkit-sticky !important;
  position:sticky !important;
  top:0 !important;
  z-index:1000;
  isolation:isolate;
  width:100%;
  min-height:98px;
  margin:0 0 -1px !important;
  padding:0 !important;
  background:transparent;
  border-bottom:0 !important;
  -webkit-backdrop-filter:blur(22px) saturate(175%);
  backdrop-filter:blur(22px) saturate(175%);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.95);
  transition:min-height .28s ease,background .28s ease,backdrop-filter .28s ease;
}
.gervasini-site-header,
.gervasini-site-header *{ box-sizing:border-box; }
.gervasini-site-header::before{
  content:'';
  position:absolute;
  z-index:0;
  inset:0;
  pointer-events:none;
  background:linear-gradient(180deg,rgba(255,255,255,.62) 0%,rgba(255,255,255,.22) 52%,rgba(255,255,255,0) 100%);
}
.gervasini-header-inner{
  position:relative;
  z-index:1;
  width:min(100% - 48px, 1440px);
  min-height:98px;
  margin:0 auto;
  padding:12px 0;
  display:grid;
  grid-template-columns:minmax(225px,295px) minmax(620px,1fr) auto;
  align-items:center;
  gap:24px;
  transition:min-height .28s ease,padding .28s ease,gap .28s ease;
}
.gervasini-header-logo{
  display:flex;
  align-items:center;
  width:min(100%, 310px);
  transition:width .28s ease,max-width .28s ease;
}
.gervasini-header-logo img{
  display:block;
  width:100%;
  max-width:310px;
  height:auto;
  max-height:64px;
  object-fit:contain;
  transition:max-width .28s ease,max-height .28s ease;
}
.gervasini-main-nav{
  display:flex;
  justify-content:center;
  align-items:center;
  gap:24px;
}
.gervasini-nav-link{
  position:relative;
  display:flex;
  align-items:center;
  gap:6px;
  padding:10px 0;
  color:var(--g-primary-dark) !important;
  font-family:'Inter',system-ui,sans-serif;
  font-size:16px;
  font-weight:500;
  line-height:1.2;
  white-space:nowrap;
  text-decoration:none !important;
}
.gervasini-nav-link::after{
  content:'';
  position:absolute;
  left:0;
  right:100%;
  bottom:3px;
  height:2px;
  background:var(--g-accent);
  transition:right .25s ease;
}
.gervasini-nav-link:hover::after{ right:0; }
.gervasini-nav-products svg{
  width:15px;
  height:15px;
  fill:none;
  stroke:currentColor;
  stroke-width:2;
  stroke-linecap:round;
  stroke-linejoin:round;
}
.gervasini-nav-dropdown{ position:relative; }
.gervasini-nav-dropdown-menu{
  position:absolute;
  top:calc(100% + 5px);
  left:0;
  z-index:20;
  min-width:230px;
  padding:7px;
  border:1px solid rgba(27,59,122,.12);
  border-top:3px solid var(--g-accent);
  border-radius:2px;
  background:#fff;
  box-shadow:0 18px 40px rgba(16,39,90,.14);
  opacity:0;
  visibility:hidden;
  transform:translateY(-6px) scaleY(.97);
  transform-origin:top left;
  transition:opacity .2s ease,transform .2s ease,visibility .2s ease;
}
.gervasini-nav-dropdown:hover .gervasini-nav-dropdown-menu,
.gervasini-nav-dropdown:focus-within .gervasini-nav-dropdown-menu{
  opacity:1;
  visibility:visible;
  transform:translateY(0) scaleY(1);
}
.gervasini-nav-brands.is-dismissed .gervasini-nav-dropdown-menu{
  opacity:0 !important;
  visibility:hidden !important;
  pointer-events:none !important;
  transform:translateY(-6px) scaleY(.97) !important;
}
.gervasini-nav-dropdown-menu a{
  display:block;
  padding:11px 12px;
  border-radius:0;
  color:var(--g-primary-dark) !important;
  font-size:14px;
  font-weight:600;
  text-decoration:none !important;
}
.gervasini-nav-dropdown-menu a:hover{ background:rgba(27,59,122,.07); }
.gervasini-header-actions{
  display:flex;
  align-items:center;
  justify-content:flex-end;
  gap:12px;
  padding-left:8px;
}

.gervasini-quicksearch{ position:relative; }
.gervasini-quicksearch-toggle{
  position:relative;
  display:flex;
  align-items:center;
  justify-content:center;
  width:56px;
  height:56px;
  padding:0;
  border:none;
  border-radius:50%;
  background:rgba(27,59,122,.06);
  color:var(--g-primary);
  cursor:pointer;
  animation: quicksearchGlow 2.6s ease-in-out infinite;
  transition:width .28s ease,height .28s ease,background .2s ease,color .2s ease;
}
.gervasini-quicksearch-toggle svg{ width:23px; height:23px; position:relative; z-index:1; }
.gervasini-quicksearch-toggle:hover{ background:rgba(27,59,122,.12); }
.gervasini-quicksearch.is-open .gervasini-quicksearch-toggle,
.gervasini-quicksearch.was-used .gervasini-quicksearch-toggle{
  background:var(--g-primary);
  color:#fff;
  animation:none;
  box-shadow:none;
}
.gervasini-quicksearch.is-open .gervasini-quicksearch-toggle{ background:var(--g-primary); color:#fff; }
@keyframes quicksearchGlow{
  0%, 100%{ box-shadow:0 0 0 0 rgba(245,197,24,.55), 0 4px 14px rgba(27,59,122,.1); }
  50%{ box-shadow:0 0 0 9px rgba(245,197,24,0), 0 4px 14px rgba(27,59,122,.1); }
}
@media (prefers-reduced-motion: reduce){
  .gervasini-quicksearch-toggle{ animation:none; }
}
.gervasini-quicksearch-hint{
  position:absolute;
  top:100%;
  left:50%;
  margin-top:10px;
  padding:7px 13px;
  border-radius:8px;
  background:#16233f;
  color:#fff;
  font-size:12px;
  font-weight:600;
  white-space:nowrap;
  opacity:0;
  transform:translateX(-50%) translateY(2px);
  pointer-events:none;
  transition:opacity .2s ease, transform .2s ease;
}
.gervasini-quicksearch-toggle:hover .gervasini-quicksearch-hint{ opacity:1; transform:translateX(-50%) translateY(0); }
.gervasini-quicksearch.is-open .gervasini-quicksearch-hint{ opacity:0 !important; }

.gervasini-quicksearch-panel{
  position:absolute;
  top:calc(100% + 14px);
  right:0;
  width:340px;
  max-width:88vw;
  transform-origin:top right;
  transform:scaleY(.35) translateY(-6px);
  opacity:0;
  pointer-events:none;
  transition:transform .4s cubic-bezier(.22,1,.36,1), opacity .3s ease;
  z-index:80;
}
.gervasini-quicksearch.is-open .gervasini-quicksearch-panel{
  transform:scaleY(1) translateY(0);
  opacity:1;
  pointer-events:auto;
}
.gervasini-quicksearch-form{
  display:flex;
  align-items:center;
  gap:6px;
  padding:8px;
  border-radius:16px;
  background:#fff;
  box-shadow:0 18px 40px rgba(15,26,58,.2), 0 2px 10px rgba(15,26,58,.1);
}
.gervasini-quicksearch-input{
  flex:1;
  min-width:0;
  border:none;
  outline:none;
  background:transparent;
  padding:10px 8px;
  font-size:14px;
  font-family:inherit;
  color:#16233f;
}
.gervasini-quicksearch-input::placeholder{ color:rgba(22,35,63,.4); }
.gervasini-quicksearch-submit{
  display:flex;
  align-items:center;
  justify-content:center;
  width:40px;
  height:40px;
  border:none;
  border-radius:12px;
  background:var(--g-accent);
  color:#16233f;
  cursor:pointer;
  flex-shrink:0;
  transition:transform .2s ease;
}
.gervasini-quicksearch-submit:hover{ transform:translateY(-1px); }
.gervasini-quicksearch-submit svg{ width:18px; height:18px; }
.gervasini-quicksearch-caption{
  margin:10px 6px 2px;
  font-size:11.5px;
  line-height:1.4;
  color:#fff;
  text-shadow:0 1px 6px rgba(0,0,0,.5);
}

.gervasini-cart-button{
  position:relative;
  display:flex !important;
  align-items:center;
  justify-content:center;
  width:56px;
  height:56px;
  padding:0 !important;
  border-radius:50%;
  background:rgba(27,59,122,.06);
  color:var(--g-primary) !important;
  text-decoration:none !important;
  transition:width .28s ease,height .28s ease,background .2s ease;
}
.gervasini-cart-icon{ width:25px !important; height:25px !important; }
.gervasini-cart-badge{
  position:absolute;
  top:-3px;
  right:-1px;
  display:flex;
  align-items:center;
  justify-content:center;
  min-width:23px;
  height:23px;
  padding:0 5px;
  border:3px solid #fff;
  border-radius:999px;
  background:var(--g-accent) !important;
  color:var(--g-primary-dark) !important;
  font-size:12px;
  font-weight:800;
  line-height:1;
}
.gervasini-contact-button{
  display:flex;
  align-items:center;
  justify-content:center;
  min-width:174px;
  min-height:64px;
  padding:0 26px;
  border-radius:32px;
  background:var(--g-accent);
  color:var(--g-primary-dark) !important;
  font-size:17px;
  font-weight:700;
  text-decoration:none !important;
  box-shadow:0 10px 24px rgba(245,197,24,.22);
  transition:min-width .28s ease,min-height .28s ease,padding .28s ease,font-size .28s ease,transform .2s ease;
}
.gervasini-menu-toggle{ display:none; }

.gervasini-site-header.is-compact{
  min-height:74px;
  background:rgba(245,247,250,.34);
  -webkit-backdrop-filter:blur(24px) saturate(185%);
  backdrop-filter:blur(24px) saturate(185%);
}
.gervasini-site-header.is-compact::before{
  background:linear-gradient(180deg,rgba(255,255,255,.7),rgba(255,255,255,.12) 70%,rgba(255,255,255,0));
}
.gervasini-site-header.is-compact .gervasini-header-inner{
  min-height:74px;
  padding:6px 0;
  gap:28px;
}
.gervasini-site-header.is-compact .gervasini-header-logo{ max-width:245px; }
.gervasini-site-header.is-compact .gervasini-header-logo img{
  max-width:245px;
  max-height:48px;
}
.gervasini-site-header.is-compact .gervasini-main-nav{ gap:28px; }
.gervasini-site-header.is-compact .gervasini-nav-link{ font-size:15px; }
.gervasini-site-header.is-compact .gervasini-cart-button{
  width:48px;
  height:48px;
}
.gervasini-site-header.is-compact .gervasini-contact-button{
  min-width:162px;
  min-height:48px;
  padding:0 23px;
  font-size:15px;
}

@media (min-width:721px){
  .gervasini-site-header::before{ inset:0 0 -24px; }
  .template-home .gervasini-home{ margin-top:-24px !important; }
}

.gervasini-site-footer{
  --g-primary:#1b3b7a;
  --g-primary-dark:#10275a;
  --g-primary-light:#2e52a0;
  --g-accent:#f5c518;
  width:100%;
  padding-top:68px;
  background:var(--g-primary-dark) !important;
  color:rgba(245,247,250,.74) !important;
  font-family:'Inter',system-ui,sans-serif;
}
.gervasini-footer-inner{
  display:grid;
  grid-template-columns:1.45fr .8fr 1fr 1.15fr;
  gap:48px;
  padding-bottom:48px;
}
.gervasini-footer-brand img{
  display:block;
  width:min(100%, 285px);
  height:auto;
  max-height:58px;
  margin-bottom:18px;
  object-fit:contain;
  filter:brightness(0) invert(1);
  opacity:.95;
}
.gervasini-footer-brand p{
  max-width:330px;
  margin:0;
  color:rgba(245,247,250,.65) !important;
  font-size:14px;
  line-height:1.7;
}
.gervasini-footer-column{
  display:flex;
  flex-direction:column;
  align-items:flex-start;
}
.gervasini-footer-column h4{
  margin:0 0 18px;
  color:#fff !important;
  font-size:15px;
  font-weight:700;
}
.gervasini-footer-column a,
.gervasini-footer-column span{
  display:block;
  margin:0 0 12px;
  color:rgba(245,247,250,.68) !important;
  font-size:14px;
  line-height:1.45;
  text-decoration:none !important;
}
.gervasini-footer-column > a:hover{ color:var(--g-accent) !important; }
.gervasini-footer-social{ display:flex; gap:12px; margin-top:8px; }
.gervasini-footer-social a{
  display:flex !important;
  align-items:center;
  justify-content:center;
  width:50px;
  height:50px;
  margin:0;
  border-radius:8px;
  background:var(--g-primary-light);
  color:#fff !important;
}
.gervasini-footer-social-icon{ width:24px !important; height:24px !important; }
.gervasini-footer-bottom{
  border-top:1px solid rgba(255,255,255,.1);
  padding:20px 0;
  color:rgba(245,247,250,.52);
  font-size:12px;
}
.gervasini-footer-bottom-inner{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:24px;
}
.gervasini-footer-bottom a{ color:rgba(245,247,250,.68) !important; }

body .js-btn-fixed-bottom.btn-whatsapp,
body a.js-btn-fixed-bottom.btn-whatsapp,
body .btn-whatsapp{
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  width:72px !important;
  min-width:72px !important;
  max-width:72px !important;
  height:72px !important;
  min-height:72px !important;
  max-height:72px !important;
  right:22px !important;
  bottom:22px !important;
  padding:0 !important;
  border:0 !important;
  border-radius:50% !important;
  background:#25d366 !important;
  color:#fff !important;
  box-shadow:0 14px 36px rgba(37,211,102,.34),0 8px 22px rgba(16,39,90,.24) !important;
  z-index:1100 !important;
}
body .js-btn-fixed-bottom.btn-whatsapp svg,
body .btn-whatsapp svg{
  display:block !important;
  width:62px !important;
  height:70px !important;
  max-width:none !important;
  max-height:none !important;
  color:#fff !important;
  fill:#fff !important;
  transform:none !important;
}
.gervasini-home .wa-icon-badge{
  width:52px !important;
  height:52px !important;
  padding:0 !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  line-height:1 !important;
}
.gervasini-home .wa-icon-badge .gervasini-wa-official-icon,
.gervasini-home .wa-icon-badge svg{
  display:block !important;
  width:39px !important;
  height:45px !important;
  color:#fff !important;
  fill:#fff !important;
}
.gervasini-home .promo-card-image{ padding:0; overflow:hidden; }
.gervasini-home .promo-card-image img{
  display:block;
  width:100%;
  height:100%;
  object-fit:contain;
  background:#0b0f1a;
}

.gervasini-home .promo-card-cinematic{
  position:relative;
  padding:0;
  overflow:hidden;
  background:#050912;
}
.gervasini-home .promo-card-cinematic img{
  display:block;
  width:100%;
  height:100%;
  object-fit:cover;
  transition:transform .5s var(--ease);
}
.gervasini-home .promo-card-cinematic:hover img{ transform:scale(1.06); }
.gervasini-home .promo-card-overlay{
  position:absolute;
  inset:0;
  display:flex;
  flex-direction:column;
  justify-content:flex-end;
  align-items:flex-start;
  gap:10px;
  padding:22px 24px;
  background:linear-gradient(180deg, rgba(5,9,18,0) 40%, rgba(5,9,18,.85) 100%);
}
.gervasini-home .promo-card-title{
  font-family:'Poppins', sans-serif;
  font-weight:800;
  font-size:clamp(1.15rem, 1.9vw, 1.5rem);
  line-height:1.15;
  color:#fff;
  text-shadow:0 3px 14px rgba(0,0,0,.6);
}
.gervasini-home .promo-card-caption{
  font-size:.9rem;
  font-weight:500;
  color:rgba(255,255,255,.85);
  text-shadow:0 2px 8px rgba(0,0,0,.55);
}
.gervasini-home .promo-card-btn{
  display:inline-block;
  margin-top:4px;
  background:var(--color-accent);
  color:#16233f;
  font-weight:700;
  font-size:.9rem;
  padding:10px 18px;
  border-radius:8px;
  letter-spacing:.01em;
  transition:transform .3s var(--ease);
}
.gervasini-home .promo-card-cinematic:hover .promo-card-btn{ transform:translateY(-2px); }

@media (max-width:1200px){
  .gervasini-header-inner{
    grid-template-columns:minmax(210px,260px) 1fr auto;
    gap:24px;
  }
  .gervasini-main-nav{ gap:22px; }
  .gervasini-nav-link{ font-size:14px; }
  .gervasini-contact-button{ min-width:150px; min-height:56px; padding:0 22px; }
}
@media (max-width:900px){
  .gervasini-home .brand-rail-track{ width:max-content; }
  .gervasini-home .brand-card{
    flex:0 0 calc((100vw - 90px) / 2);
    max-width:400px;
  }
  .gervasini-site-header{ min-height:82px; }
  .gervasini-header-inner{
    width:min(100% - 30px, 1440px);
    min-height:82px;
    grid-template-columns:1fr auto;
  }
  .gervasini-header-logo{ max-width:250px; }
  .gervasini-main-nav{
    position:fixed;
    inset:82px 0 auto 0;
    display:flex;
    flex-direction:column;
    align-items:stretch;
    gap:0;
    max-height:0;
    padding:0 24px;
    overflow:hidden;
    background:#f5f7fa;
    box-shadow:0 18px 30px rgba(16,39,90,.12);
    opacity:0;
    transition:max-height .3s ease,padding .3s ease,opacity .2s ease;
  }
  .gervasini-main-nav.is-open{ max-height:calc(100vh - 82px); padding:20px 24px 28px; opacity:1; }
  .gervasini-nav-link{ justify-content:space-between; min-height:48px; font-size:16px; }
  .gervasini-nav-dropdown-menu{
    position:static;
    min-width:0;
    padding:0 0 8px 16px;
    border:0;
    box-shadow:none;
    background:transparent;
    opacity:1;
    visibility:visible;
    transform:none;
  }
  .gervasini-header-actions{ gap:10px; }
  .gervasini-contact-button{ display:none; }
  .gervasini-cart-button,.gervasini-quicksearch-toggle{ width:48px; height:48px; }
  .gervasini-quicksearch-toggle svg{ width:20px; height:20px; }
  .gervasini-menu-toggle{
    display:flex;
    flex-direction:column;
    justify-content:center;
    gap:5px;
    width:48px;
    height:48px;
    padding:11px;
    border:0;
    background:transparent;
  }
  .gervasini-menu-toggle span{
    display:block;
    width:26px;
    height:2px;
    background:var(--g-primary);
    transition:transform .2s ease,opacity .2s ease;
  }
  .gervasini-menu-toggle.is-open span:nth-child(1){ transform:translateY(7px) rotate(45deg); }
  .gervasini-menu-toggle.is-open span:nth-child(2){ opacity:0; }
  .gervasini-menu-toggle.is-open span:nth-child(3){ transform:translateY(-7px) rotate(-45deg); }
  .gervasini-footer-inner{ grid-template-columns:1fr 1fr; }
  .gervasini-site-header.is-compact{ min-height:68px; }
  .gervasini-site-header.is-compact .gervasini-header-inner{
    min-height:68px;
    padding:5px 0;
    gap:8px;
  }
  .gervasini-site-header.is-compact .gervasini-header-logo{ max-width:210px; }
  .gervasini-site-header.is-compact .gervasini-header-logo img{ max-width:210px; max-height:44px; }
  .gervasini-site-header.is-compact .gervasini-main-nav{ inset:68px 0 auto; }
  .gervasini-site-header.is-compact .gervasini-cart-button,
  .gervasini-site-header.is-compact .gervasini-menu-toggle{ width:42px; height:42px; }
}
@media (max-width:600px){
  .gervasini-header-logo{ max-width:205px; }
  .gervasini-header-actions{ gap:4px; }
  .gervasini-cart-button,.gervasini-menu-toggle,.gervasini-quicksearch-toggle{ width:44px; height:44px; }
  .gervasini-cart-icon{ width:21px !important; height:21px !important; }
  .gervasini-quicksearch-toggle svg{ width:19px; height:19px; }
  .gervasini-quicksearch-panel{ right:-44px; }
  .gervasini-quicksearch-hint{ display:none; }
  .gervasini-site-footer{ padding-top:48px; }
  .gervasini-footer-inner{ grid-template-columns:1fr; gap:30px; }
  .gervasini-footer-bottom-inner{ flex-direction:column; align-items:flex-start; }
  body .js-btn-fixed-bottom.btn-whatsapp,
  body a.js-btn-fixed-bottom.btn-whatsapp,
  body .btn-whatsapp{
    width:68px !important;
    min-width:68px !important;
    max-width:68px !important;
    height:68px !important;
    min-height:68px !important;
    max-height:68px !important;
    right:18px !important;
    bottom:18px !important;
  }
  body .js-btn-fixed-bottom.btn-whatsapp svg,
  body .btn-whatsapp svg{
    width:58px !important;
    height:66px !important;
  }
}

/* Complete phone layout */
@media (max-width:720px){
  body.gervasini-menu-open{ overflow:hidden; }

  .gervasini-site-header{
    min-height:76px;
    height:auto !important;
    margin:0 0 -24px !important;
    padding:0 !important;
    background:transparent;
    border-bottom:0 !important;
    -webkit-backdrop-filter:blur(20px) saturate(175%);
    backdrop-filter:blur(20px) saturate(175%);
    box-shadow:inset 0 1px 0 rgba(255,255,255,.98);
  }
  .gervasini-site-header::before{ inset:0 0 -24px; }
  .gervasini-site-header.is-compact{ min-height:64px; }
  .gervasini-site-header.is-compact .gervasini-header-inner{
    min-height:64px;
    padding:4px 0;
  }
  .gervasini-site-header.is-compact .gervasini-header-logo{ max-width:175px; }
  .gervasini-site-header.is-compact .gervasini-header-logo img{ max-width:175px; max-height:40px; }
  .gervasini-site-header.is-compact .gervasini-main-nav{ inset:64px 0 auto; }
  .gervasini-header-inner{
    width:calc(100% - 24px);
    min-height:76px;
    padding:8px 0;
    gap:8px;
  }
  .gervasini-header-logo{
    width:100%;
    max-width:205px;
    min-width:0;
  }
  .gervasini-header-logo img{
    max-height:50px;
    object-position:left center;
  }
  .gervasini-main-nav{
    inset:76px 0 auto;
    padding-right:18px;
    padding-left:18px;
    border-top:1px solid rgba(255,255,255,.8);
    background:linear-gradient(180deg,rgba(255,255,255,.95),rgba(245,247,250,.9));
    -webkit-backdrop-filter:blur(20px) saturate(175%);
    backdrop-filter:blur(20px) saturate(175%);
    overflow-y:auto;
  }
  .gervasini-main-nav.is-open{
    max-height:calc(100dvh - 76px);
    padding:12px 18px 24px;
  }
  .gervasini-nav-link{
    min-height:46px;
    padding:8px 2px;
    font-size:15px;
  }
  .gervasini-nav-dropdown-menu{
    padding:0 0 8px 12px;
  }
  .gervasini-nav-dropdown-menu a{
    padding:9px 10px;
    font-size:13px;
  }
  .gervasini-header-actions{ gap:3px; }
  .gervasini-cart-button,
  .gervasini-menu-toggle{
    width:44px;
    min-width:44px;
    height:44px;
  }
  .gervasini-cart-badge{
    top:-2px;
    right:-2px;
    min-width:21px;
    height:21px;
    border-width:2px;
  }

  .gervasini-home .container{ padding-right:18px; padding-left:18px; }
  .gervasini-home section{ padding:60px 0; }
  .gervasini-home .section-header{ margin-bottom:34px; }
  .gervasini-home .section-header h2{
    font-size:1.75rem;
    line-height:1.22;
  }
  .gervasini-home .section-header p{
    font-size:.92rem;
    line-height:1.6;
  }
  .gervasini-home .eyebrow{
    justify-content:center;
    max-width:100%;
    font-size:.7rem;
    line-height:1.45;
    letter-spacing:.1em;
  }
  .gervasini-home .underline-draw-left{ margin-right:auto; margin-left:auto; }
  .gervasini-home .tread-strip{
    height:42px;
    margin:-21px 0;
  }

  .gervasini-home .hero{
    min-height:auto;
    align-items:flex-start;
  }
  .gervasini-home .hero-inner{
    grid-template-columns:1fr;
    gap:30px;
    padding-top:52px;
    padding-bottom:78px;
    text-align:left;
  }
  .gervasini-home .hero-copy{ min-width:0; margin-right:0; margin-left:0; }
  .gervasini-home .hero .eyebrow{
    justify-content:flex-start;
    margin-bottom:16px;
    font-size:.8rem;
  }
  .gervasini-home .hero-title{
    margin-right:0;
    margin-left:0;
    font-size:2.15rem;
    line-height:1.13;
  }
  .gervasini-home .hero-subtitle{
    max-width:34rem;
    margin-right:0;
    margin-left:0;
    font-size:.97rem;
    line-height:1.65;
  }
  .gervasini-home .hero-product-search{
    width:100%;
    margin-top:20px;
  }
  .gervasini-home .hero-product-search input{
    height:54px;
    padding-right:60px;
    padding-left:16px;
    font-size:.92rem;
  }
  .gervasini-home .hero-product-search button{
    top:6px;
    right:6px;
    width:42px;
    height:42px;
  }
  .gervasini-home .hero-actions{
    display:grid;
    grid-template-columns:1fr;
    gap:10px;
    width:100%;
    max-width:340px;
    margin:22px 0 0;
  }
  .gervasini-home .hero-actions .btn{
    width:100%;
    min-height:50px;
    justify-content:center;
    padding:12px 20px;
  }
  .gervasini-home .hero-visual{ margin-top:0; }
  .gervasini-home .tire-wrap{ width:min(245px,72vw); }
  .gervasini-home .glass-badge{
    right:-8px;
    bottom:-14px;
    padding:10px 14px;
    border-radius:12px;
  }
  .gervasini-home .glass-badge strong{ font-size:1.15rem; }
  .gervasini-home .glass-badge span{ font-size:.68rem; }
  .gervasini-home .hero-blob{ opacity:.62; transform:scale(.72); }
  .gervasini-home .scroll-cue{ display:none; }

  .gervasini-home .journey{ gap:2px; }
  .gervasini-home .journey-line{
    top:7px;
    bottom:22px;
    left:23px;
  }
  .gervasini-home .journey-step{
    grid-template-columns:48px minmax(0,1fr);
  }
  .gervasini-home .journey-marker{
    margin-top:10px;
    padding:2px 4px;
    font-size:1.55rem;
  }
  .gervasini-home .journey-content,
  .gervasini-home .journey-content--up,
  .gervasini-home .journey-content--down{
    padding:8px 0 26px 14px;
  }
  .gervasini-home .journey-content h3{ font-size:.98rem; }
  .gervasini-home .journey-content p{
    font-size:.82rem;
    line-height:1.55;
  }
  .gervasini-home .journey-icon{
    width:44px;
    height:44px;
  }

  .gervasini-home .promo-grid{ gap:18px; }
  .gervasini-home .promo-card{
    width:100%;
    max-width:520px;
    margin:0 auto;
  }
  .gervasini-home .promo-card-image img{ min-height:190px; }

  .gervasini-home .finder{
    width:100%;
    margin-bottom:32px;
    padding:5px;
  }
  .gervasini-home .finder-tabs{
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:4px;
    padding:6px;
  }
  .gervasini-home .finder-tab{
    flex-direction:column;
    justify-content:center;
    gap:4px;
    min-width:0;
    min-height:64px;
    padding:7px 3px;
    font-size:.7rem;
    line-height:1.2;
    text-align:center;
  }
  .gervasini-home .finder-tab span{
    display:block;
    max-width:100%;
  }
  .gervasini-home .finder-tab svg{
    width:19px;
    height:19px;
  }
  .gervasini-home .finder-body{ padding:18px 12px 14px; }
  .gervasini-home .finder-visual-row{ gap:12px; margin-bottom:12px; }
  .gervasini-home .finder-size-preview{
    gap:3px;
    font-size:1.25rem;
  }
  .gervasini-home .finder-size-guide{ width:40%; }
  .gervasini-home .finder-size-guide img{ max-height:130px; }
  .gervasini-home .finder-fields{ gap:12px; margin-bottom:16px; }
  .gervasini-home .finder-fields select,
  .gervasini-home .finder-fields input{
    min-height:48px;
    margin-top:6px;
  }
  .gervasini-home .finder-submit{
    min-height:50px;
    padding-right:14px;
    padding-left:14px;
    font-size:.87rem;
  }
  .gervasini-home .brand-row{ gap:18px; margin-top:24px; }
  .gervasini-home .brand-logo{ max-width:42%; height:34px; object-fit:contain; }
  .gervasini-home .brand-logo--goodride{ height:46px; }
  .gervasini-home .brand-showcase{ margin:-2px auto 42px; }
  .gervasini-home .brand-showcase-head{
    align-items:flex-end;
    gap:14px;
    margin-bottom:10px;
  }
  .gervasini-home .brand-showcase-head .eyebrow{
    justify-content:flex-start;
    margin-bottom:4px;
  }
  .gervasini-home .brand-showcase-head h3{
    max-width:250px;
    font-size:1.2rem;
    line-height:1.25;
  }
  .gervasini-home .brand-rail-arrow{
    width:42px;
    height:42px;
  }
  .gervasini-home .brand-rail-track{ gap:14px; }
  .gervasini-home .brand-card{
    flex-basis:calc(100vw - 50px);
    max-width:560px;
    min-height:250px;
    padding:16px 18px 14px;
  }
  .gervasini-home .brand-logo-stage{ height:168px; padding:24px 12px; }
  .gervasini-home .brand-logo-stage img{ max-width:96%; max-height:100px; }
  .gervasini-home .brand-logo-stage img.brand-card-logo--goodride{ width:112%; max-width:112%; max-height:110px; }
  .gervasini-home .brand-logo-stage img.brand-card-logo--goodyear{ width:122%; max-width:122%; max-height:118px; }
  .gervasini-home .brand-rail-progress{ width:130px; }

  .gervasini-home .product-gallery-header{ margin:46px 0 20px; }
  .gervasini-home .product-gallery-header h3{ font-size:1.25rem; }
  .gervasini-home .product-carousel{
    display:block;
    width:100%;
    min-width:0;
    margin-bottom:34px;
  }
  .gervasini-home .carousel-track{
    width:100%;
    height:415px;
    overflow:hidden;
  }
  .gervasini-home .carousel-slide{ width:170px; }
  .gervasini-home .carousel-slide.is-active{
    width:min(340px,calc(100% - 46px));
  }
  .gervasini-home .carousel-slide.is-prev{
    transform:translate(calc(-50% - 190px),26px) scale(.58);
    opacity:.2;
  }
  .gervasini-home .carousel-slide.is-next{
    transform:translate(calc(-50% + 190px),26px) scale(.58);
    opacity:.2;
  }
  .gervasini-home .carousel-slide.is-active h4{ font-size:1.25rem; }
  .gervasini-home .carousel-arrow{
    position:absolute;
    top:145px;
    width:42px;
    height:42px;
    border-radius:50%;
  }
  .gervasini-home .carousel-arrow:first-child{ left:0; }
  .gervasini-home .carousel-arrow:last-child{ right:0; }

  .gervasini-home .cat-grid{
    width:100%;
    max-width:390px;
    margin-top:0;
    gap:16px;
  }
  .gervasini-home .cat-grid .cat-card{ --tilt:0deg; }
  .gervasini-home .cat-card{
    min-height:230px;
    padding:22px;
  }

  .gervasini-home .about-inner{ gap:42px; }
  .gervasini-home .about-visual{ width:100%; max-width:520px; }
  .gervasini-home .about-frame{
    aspect-ratio:4 / 3;
    border-radius:12px;
  }
  .gervasini-home .about-badges{
    position:static;
    display:grid;
    grid-template-columns:1fr;
    max-width:none;
    margin-top:14px;
    gap:10px;
  }
  .gervasini-home .about-badge{
    justify-content:flex-start;
    padding:12px 14px;
    font-size:.8rem;
  }
  .gervasini-home .about-copy{ text-align:center; }
  .gervasini-home .about-copy p{
    font-size:.92rem;
    line-height:1.65;
  }
  .gervasini-home .stats-grid{
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:8px;
    margin-top:28px;
  }
  .gervasini-home .stat{ min-width:0; text-align:center; }
  .gervasini-home .stat-display{
    width:100%;
    justify-content:center;
    padding:7px 5px;
  }
  .gervasini-home .stat-number{ font-size:1.42rem; }
  .gervasini-home .stat-label{
    font-size:.68rem;
    line-height:1.35;
  }

  .gervasini-home .branches-card{ padding:14px; }
  .gervasini-home .branch-grid{ gap:14px; }
  .gervasini-home .branch-subcard{
    flex-basis:100%;
    width:100%;
    min-width:0;
    padding:18px;
  }
  .gervasini-home .branch-subcard h3{ font-size:1.05rem; }
  .gervasini-home .branch-line{
    min-width:0;
    align-items:flex-start;
    gap:9px;
    font-size:.8rem;
    line-height:1.5;
    overflow-wrap:anywhere;
  }
  .gervasini-home .branch-map{ font-size:.86rem; }

  .gervasini-home .contact-inner{ gap:36px; }
  .gervasini-home .contact-info{ text-align:center; }
  .gervasini-home .contact-item{
    min-width:0;
    padding:15px 16px;
    text-align:left;
  }
  .gervasini-home .contact-item > div{ min-width:0; }
  .gervasini-home .contact-item > div span{
    display:block;
    font-size:.82rem;
    line-height:1.45;
    overflow-wrap:anywhere;
  }
  .gervasini-home .social-row{ justify-content:center; }
  .gervasini-home .contact-form{
    width:100%;
    min-width:0;
    padding:22px 18px;
    border-radius:18px;
  }
  .gervasini-home .contact-form h3{ font-size:1.35rem; }
  .gervasini-home .contact-form input,
  .gervasini-home .contact-form textarea{ font-size:16px; }

  .gervasini-site-footer{ padding-top:42px; }
  .gervasini-footer-inner{
    gap:28px;
    padding-bottom:34px;
  }
  .gervasini-footer-brand img{
    width:min(100%,240px);
    margin-bottom:14px;
  }
  .gervasini-footer-brand p{ font-size:13px; }
  .gervasini-footer-column h4{ margin-bottom:12px; }
  .gervasini-footer-column a,
  .gervasini-footer-column span{
    max-width:100%;
    margin-bottom:9px;
    font-size:13px;
    overflow-wrap:anywhere;
  }
  .gervasini-footer-bottom{ padding-bottom:94px; }
  .gervasini-footer-bottom-inner{
    align-items:flex-start;
    gap:12px;
    line-height:1.5;
  }
}

@media (max-width:420px){
  .gervasini-header-inner{ width:calc(100% - 18px); }
  .gervasini-header-logo{ max-width:180px; }
  .gervasini-cart-button,
  .gervasini-menu-toggle{
    width:42px;
    min-width:42px;
    height:42px;
  }
  .gervasini-home .container{ padding-right:15px; padding-left:15px; }
  .gervasini-home .hero-inner{ padding-top:48px; }
  .gervasini-home .hero-title{ font-size:1.92rem; }
  .gervasini-home .tire-wrap{ width:min(225px,70vw); }
  .gervasini-home .finder-body{ padding-right:9px; padding-left:9px; }
  .gervasini-home .finder-tab{ font-size:.64rem; }
  .gervasini-home .finder-size-preview{ font-size:1.1rem; }
  .gervasini-home .finder-size-guide{ width:38%; }
  .gervasini-home .finder-size-guide img{ max-height:110px; }
  .gervasini-home .brand-showcase-head{ align-items:flex-start; }
  .gervasini-home .brand-showcase-head h3{ max-width:210px; font-size:1.08rem; }
  .gervasini-home .brand-rail-buttons{ gap:4px; }
  .gervasini-home .brand-rail-arrow{ width:38px; height:38px; }
  .gervasini-home .brand-card{ flex-basis:calc(100vw - 42px); }
  .gervasini-home .carousel-track{ height:405px; }
  .gervasini-home .carousel-arrow{ top:132px; }
  .gervasini-home .cat-card{ min-height:220px; }
  body .js-btn-fixed-bottom.btn-whatsapp,
  body a.js-btn-fixed-bottom.btn-whatsapp,
  body .btn-whatsapp{
    right:14px !important;
    bottom:14px !important;
  }
}

@media (max-width:720px){
  .gervasini-home .how-to-buy{
    padding-bottom:105px;
    background-image:
      linear-gradient(180deg,rgba(7,20,40,.48),rgba(7,20,40,.76)),
      var(--how-to-buy-image);
    background-position:62% center;
  }
  .gervasini-home .how-to-buy .scroll-cue--section{
    position:absolute;
    bottom:22px;
    left:50%;
    display:flex;
    transform:translateX(-50%);
  }
  .gervasini-home .how-to-buy .scroll-cue--section:hover{
    transform:translateX(-50%) translateY(-2px);
  }
  .gervasini-home .how-to-buy .journey-content,
  .gervasini-home .how-to-buy .journey-content--up,
  .gervasini-home .how-to-buy .journey-content--down{
    min-height:0;
    margin:0 0 10px 8px;
    padding:15px 14px 18px;
  }
  .gervasini-home .how-to-buy .journey-marker{
    margin-top:12px;
  }
  .gervasini-home .finder-size-guide img{
    object-position:center;
  }
}

/* ======================= Tarjetas de producto en Categorías y Búsqueda =======================
   Estas páginas las arma el tema BASE de Tiendanube (snipplets/grid/item.tpl, fuera de este repo,
   no se toca) - no tienen el wrapper .gervasini-home, por eso estas reglas van SIN ese prefijo.
   Solo se toca el contenedor .item-image (nunca el <img> en sí, que Tiendanube gestiona con
   lazy-load nativo vía position:absolute) para forzar un marco cuadrado consistente entre todas
   las fotos de producto, sin importar el recorte/zoom de la foto original de cada una. Se agrega
   también una altura mínima al nombre + margin-top:auto al precio para que la fila de precio
   quede siempre a la misma altura, sin importar si el nombre ocupa 1 o 2 líneas. Ver README.md. */
.item-image{
  aspect-ratio:1/1;
  background:#ffffff;
}
.item-description{
  display:flex;
  flex-direction:column;
}
.item-name{
  min-height:2.29em;
}
.item-price-container{
  margin-top:auto;
}
