/* AFVans V2 — shared components (nav, footer, cards, ficha) */

/* --- Nav --- */
.v2-nav{
  position:sticky;top:0;z-index:50;
  display:flex;align-items:center;justify-content:space-between;gap:24px;
  background:#fff;border-bottom:1px solid rgba(21,18,15,.1);
  padding:14px var(--space-md);
}
@media (min-width:900px){.v2-nav{padding:16px var(--space-lg);}}
.v2-nav__brand img{height:40px;width:auto;display:block;}
.v2-nav__links{display:none;gap:28px;}
.v2-nav__links a{font-size:14.5px;font-weight:500;text-decoration:none;color:var(--ink);padding:6px 0;border-bottom:2px solid transparent;}
.v2-nav__links a:hover,.v2-nav__links a.is-active{border-color:var(--accent);color:var(--accent);}
.v2-nav__actions{display:none;align-items:center;gap:18px;}
.v2-nav__phone{font-size:14px;font-weight:600;text-decoration:none;color:var(--ink);}
@media (min-width:1080px){.v2-nav__links{display:flex;}.v2-nav__actions{display:flex;}}
.btn--sm{padding:10px 20px;font-size:13.5px;}
.v2-nav__burger{display:flex;flex-direction:column;justify-content:center;gap:5px;width:34px;height:34px;border:none;background:none;cursor:pointer;padding:0;}
.v2-nav__burger span{display:block;height:2px;width:100%;background:var(--ink);transition:transform .2s ease, opacity .2s ease;}
.v2-nav__burger.is-open span:nth-child(1){transform:translateY(7px) rotate(45deg);}
.v2-nav__burger.is-open span:nth-child(2){opacity:0;}
.v2-nav__burger.is-open span:nth-child(3){transform:translateY(-7px) rotate(-45deg);}
@media (min-width:1080px){.v2-nav__burger{display:none;}}
.v2-nav__mobile{display:none;flex-direction:column;background:#fff;position:fixed;top:69px;left:0;right:0;bottom:0;z-index:49;overflow-y:auto;padding:8px var(--space-md) var(--space-lg);opacity:0;transition:opacity .2s ease;}
.v2-nav__mobile.is-open{display:flex;opacity:1;}
.v2-nav__mobile a{padding:18px 4px;text-decoration:none;color:var(--ink);font-family:var(--font-heading);font-weight:600;font-size:19px;border-bottom:1px solid rgba(21,18,15,.08);}
.v2-nav__mobile a:last-child{margin-top:18px;border-bottom:none;color:var(--accent);font-family:var(--font-body);font-weight:600;font-size:16px;}
body.v2-nav-open{overflow:hidden;}
@media (min-width:1080px){.v2-nav__mobile{display:none !important;}}

/* --- Footer --- */
.v2-footer{background:var(--ink);color:rgba(255,255,255,.85);padding-block:var(--space-xl) var(--space-lg);margin-top:var(--space-xl);}
.v2-footer__grid{display:grid;grid-template-columns:1fr;gap:var(--space-lg);}
@media (min-width:760px){.v2-footer__grid{grid-template-columns:1.4fr 1fr 1fr 1fr;}}
.v2-footer__logo{height:40px;width:auto;margin-bottom:16px;border-radius:50%;background:#fff;padding:4px;}
.v2-footer h3{font-family:var(--font-body);font-size:13px;text-transform:uppercase;letter-spacing:.06em;color:rgba(255,255,255,.5);margin:0 0 14px;}
.v2-footer p{margin:0 0 10px;font-size:14.5px;}
.v2-footer a{color:rgba(255,255,255,.85);text-decoration:none;}
.v2-footer a:hover{color:var(--accent);}
.v2-footer__bottom{border-top:1px solid rgba(255,255,255,.12);margin-top:var(--space-lg);padding-top:20px;}
.v2-footer__bottom p{margin:0;font-size:13px;color:rgba(255,255,255,.5);}

/* --- Section heading --- */
.v2-section-head{margin-bottom:var(--space-lg);}
.v2-section-head h2{font-family:var(--font-heading);font-weight:600;font-size:clamp(26px,3.4vw,38px);margin:0 0 8px;}
.v2-section-head p{color:var(--ink-soft);font-size:16px;margin:0;max-width:56ch;}

/* --- Car grid / cards --- */
.v2-car-grid{display:grid;grid-template-columns:1fr;gap:28px;}
.v2-car-grid > .v2-car-card{min-width:0;}
@media (min-width:640px){.v2-car-grid{grid-template-columns:1fr 1fr;}}
@media (min-width:1080px){.v2-car-grid{grid-template-columns:repeat(3,1fr);}}
.v2-car-card{display:block;text-decoration:none;color:var(--ink);position:relative;}
.v2-car-card__img{position:relative;aspect-ratio:4/3;overflow:hidden;background:var(--surface);border-radius:var(--radius-md);}
.v2-car-card__img img{width:100%;height:100%;object-fit:cover;transition:transform .4s ease;}
.v2-car-card:hover .v2-car-card__img img{transform:scale(1.045);}
.v2-car-card__badge{position:absolute;top:14px;left:14px;background:var(--accent);color:#fff;font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.04em;padding:6px 12px;border-radius:var(--radius-sm);}
.v2-car-card__body{padding-top:16px;}
.v2-car-card__make{font-size:12.5px;text-transform:uppercase;letter-spacing:.06em;color:var(--ink-soft);margin:0 0 4px;}
.v2-car-card__title{font-family:var(--font-heading);font-weight:600;font-size:21px;margin:0 0 10px;line-height:1.25;}
.v2-car-card__meta{display:flex;gap:14px;font-size:13.5px;color:var(--ink-soft);margin:0 0 12px;flex-wrap:wrap;}
.v2-car-card__price{font-family:var(--font-heading);font-weight:600;font-size:19px;color:var(--accent);margin:0;}

/* --- Ficha (single coche) --- */
.v2-ficha__top{display:grid;grid-template-columns:1fr;gap:36px;padding-block:var(--space-lg) var(--space-xl);}
.v2-ficha__top > div{min-width:0;}
@media (min-width:980px){.v2-ficha__top{grid-template-columns:1.3fr 1fr;gap:56px;}}
.v2-ficha__gallery-main{position:relative;aspect-ratio:4/3;border-radius:var(--radius-md);overflow:hidden;background:var(--surface);}
.v2-ficha__gallery-main img{width:100%;height:100%;object-fit:cover;}
.v2-ficha__thumbs{display:flex;gap:10px;margin-top:10px;overflow-x:auto;padding-bottom:4px;-webkit-overflow-scrolling:touch;scroll-snap-type:x mandatory;}
.v2-ficha__thumbs button{flex:0 0 auto;width:84px;aspect-ratio:4/3;border-radius:var(--radius-sm);overflow:hidden;border:2px solid transparent;padding:0;cursor:pointer;background:var(--surface);scroll-snap-align:start;}
.v2-ficha__thumbs button.is-active{border-color:var(--accent);}
.v2-ficha__thumbs img{width:100%;height:100%;object-fit:cover;display:block;}
.v2-ficha__eyebrow{font-size:13px;text-transform:uppercase;letter-spacing:.06em;color:var(--ink-soft);margin:0 0 6px;}
.v2-ficha__title{font-family:var(--font-heading);font-weight:600;font-size:clamp(28px,3.6vw,42px);line-height:1.1;margin:0 0 16px;}
.v2-ficha__price{font-family:var(--font-heading);font-weight:600;font-size:28px;color:var(--accent);margin:0 0 24px;}
.v2-ficha__reserved{display:inline-block;background:var(--ink);color:#fff;font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.04em;padding:6px 12px;border-radius:var(--radius-sm);margin-bottom:16px;}
.v2-ficha__specs{list-style:none;margin:0 0 28px;padding:0;display:grid;grid-template-columns:1fr 1fr;gap:14px 20px;border-top:1px solid rgba(21,18,15,.1);padding-top:20px;}
.v2-ficha__specs li{font-size:14.5px;}
.v2-ficha__specs b{display:block;font-size:12px;text-transform:uppercase;letter-spacing:.04em;color:var(--ink-soft);font-weight:500;margin-bottom:3px;}
.v2-ficha__cta{width:100%;justify-content:center;font-size:16px;padding:16px 28px;margin-bottom:12px;}
.v2-ficha__pdf{display:inline-flex;align-items:center;gap:8px;font-size:14px;color:var(--ink-soft);text-decoration:underline;}
.v2-ficha__body{max-width:760px;padding-bottom:var(--space-xl);}
.v2-ficha__body h2{font-family:var(--font-heading);font-weight:600;font-size:22px;margin:0 0 12px;}
.v2-ficha__body p{font-size:15.5px;line-height:1.65;color:var(--ink-soft);margin:0 0 28px;}
.v2-ficha__form{background:var(--surface);border-radius:var(--radius-md);padding:28px;margin-top:8px;}
.v2-ficha__form h2{font-family:var(--font-heading);font-weight:600;font-size:20px;margin:0 0 6px;}
.v2-ficha__form .wpcf7 input[type=text],.v2-ficha__form .wpcf7 input[type=email],.v2-ficha__form .wpcf7 input[type=tel],.v2-ficha__form .wpcf7 textarea{width:100%;font-family:var(--font-body);font-size:15px;padding:12px 14px;border:1px solid rgba(21,18,15,.2);border-radius:var(--radius-sm);margin-bottom:12px;background:#fff;}
.v2-ficha__form .wpcf7 input[type=submit]{background:var(--accent);color:#fff;border:none;font-weight:600;padding:14px 26px;border-radius:var(--radius-sm);cursor:pointer;width:100%;}
.v2-ficha__form .wpcf7 input[type=submit]:hover{background:var(--accent-dark);}
.v2-ficha__form .wpcf7-not-valid-tip{color:var(--accent);font-size:12.5px;}
.v2-ficha__form .wpcf7-response-output{border-radius:var(--radius-sm);font-size:14px;margin-top:12px;}

/* --- Page header (internal pages) --- */
.v2-pagehead{position:relative;min-height:56svh;display:flex;align-items:flex-end;overflow:hidden;background:var(--ink);margin-top:-1px;}
.v2-pagehead__bg{position:absolute;inset:0;}
.v2-pagehead__bg img{width:100%;height:100%;object-fit:cover;}
.v2-pagehead__scrim{position:absolute;inset:0;background:linear-gradient(180deg, rgba(21,18,15,.15) 0%, rgba(21,18,15,.35) 45%, rgba(21,18,15,.92) 100%);}
.v2-pagehead__content{position:relative;z-index:2;width:100%;padding:0 var(--space-md) 48px;}
@media (min-width:900px){.v2-pagehead__content{padding:0 var(--space-lg) 64px;}}
.v2-pagehead__inner{max-width:720px;}
.v2-pagehead h1{font-family:var(--font-heading);font-weight:600;color:#fff;font-size:clamp(28px,4.6vw,48px);line-height:1.12;margin:0 0 14px;}
.v2-pagehead p{color:rgba(255,255,255,.82);font-size:17px;line-height:1.55;max-width:56ch;margin:0;}

/* --- Feature row (alternating image/text, used on foodtrucks) --- */
.v2-feature-row{display:grid;grid-template-columns:1fr;gap:32px;align-items:center;padding-block:var(--space-lg);}
.v2-feature-row + .v2-feature-row{border-top:1px solid rgba(21,18,15,.1);}
@media (min-width:900px){.v2-feature-row{grid-template-columns:1fr 1fr;gap:64px;}.v2-feature-row--rev .v2-feature-row__media{order:2;}}
.v2-feature-row__media{min-width:0;min-height:0;border-radius:var(--radius-md);overflow:hidden;aspect-ratio:4/3;background:var(--surface);}
.v2-feature-row__media img{width:100%;height:100%;object-fit:cover;}
.v2-feature-row__body{min-width:0;}
.v2-feature-row__eyebrow{font-size:13px;text-transform:uppercase;letter-spacing:.06em;color:var(--ink-soft);margin:0 0 6px;}
.v2-feature-row__title{font-family:var(--font-heading);font-weight:600;font-size:clamp(22px,2.6vw,30px);margin:0 0 6px;}
.v2-feature-row__tagline{font-size:15.5px;color:var(--accent);font-weight:600;margin:0 0 16px;font-style:italic;}
.v2-feature-row__body > p.v2-feature-row__desc{font-size:15.5px;line-height:1.65;color:var(--ink-soft);margin:0 0 20px;}
.v2-feature-row__list{list-style:none;margin:0;padding:0;display:grid;gap:10px;}
.v2-feature-row__list li{font-size:14.5px;padding-left:22px;position:relative;}
.v2-feature-row__list li::before{content:"";position:absolute;left:0;top:7px;width:10px;height:10px;border-radius:50%;background:var(--accent);}

/* --- Use-case cards (eventos) --- */
.v2-usecase-grid{display:grid;grid-template-columns:1fr;gap:28px;}
@media (min-width:900px){.v2-usecase-grid{grid-template-columns:repeat(3,1fr);}}
.v2-usecase{min-width:0;background:#fff;border-radius:var(--radius-md);overflow:hidden;box-shadow:0 1px 3px rgba(21,18,15,.08);display:flex;flex-direction:column;}
.v2-usecase__img{aspect-ratio:4/3;background:var(--surface);min-height:0;overflow:hidden;flex-shrink:0;}
.v2-usecase__img img{width:100%;height:100%;object-fit:cover;}
.v2-usecase__body{padding:26px 24px 28px;display:flex;flex-direction:column;flex:1;}
.v2-usecase__eyebrow{font-size:12.5px;text-transform:uppercase;letter-spacing:.05em;color:var(--accent);font-weight:700;margin:0 0 8px;}
.v2-usecase__title{font-family:var(--font-heading);font-weight:600;font-size:20px;margin:0 0 10px;line-height:1.3;}
.v2-usecase__body p{font-size:14.5px;line-height:1.6;color:var(--ink-soft);margin:0 0 20px;flex:1;}
.v2-usecase__body .btn{align-self:flex-start;}

/* --- Form section (shared: eventos / foodtrucks / contacto) --- */
.v2-form-section{background:var(--surface);padding-block:var(--space-xl);margin-top:var(--space-lg);}
.v2-form-section__inner{max-width:640px;margin-inline:auto;}
.v2-form-section .v2-section-head{text-align:center;}
.v2-form-section .v2-section-head p{margin-inline:auto;}
.v2-form-card{background:#fff;border-radius:var(--radius-md);padding:32px;box-shadow:0 1px 3px rgba(21,18,15,.08);}
.v2-form-card .wpcf7 input[type=text],.v2-form-card .wpcf7 input[type=email],.v2-form-card .wpcf7 input[type=tel],.v2-form-card .wpcf7 select,.v2-form-card .wpcf7 textarea{width:100%;font-family:var(--font-body);font-size:15px;padding:12px 14px;border:1px solid rgba(21,18,15,.2);border-radius:var(--radius-sm);margin-bottom:14px;background:#fff;}
.v2-form-card .wpcf7 label{font-size:14px;font-weight:500;display:block;margin-bottom:4px;color:var(--ink);}
.v2-form-card .wpcf7 input[type=submit]{background:var(--accent);color:#fff;border:none;font-weight:600;padding:14px 26px;border-radius:var(--radius-sm);cursor:pointer;width:100%;font-size:15px;}
.v2-form-card .wpcf7 input[type=submit]:hover{background:var(--accent-dark);}
.v2-form-card .wpcf7-not-valid-tip{color:var(--accent);font-size:12.5px;}
.v2-form-card .wpcf7-response-output{border-radius:var(--radius-sm);font-size:14px;margin-top:12px;}
/* SureForms basic reset to match card */
.v2-form-card .srfm-form-container{--srfm-color-scheme-primary:var(--accent);}
.v2-form-card input,.v2-form-card textarea,.v2-form-card select{font-family:var(--font-body) !important;}

/* --- Contact page info blocks --- */
.v2-contact-grid{display:grid;grid-template-columns:1fr;gap:var(--space-lg);padding-block:var(--space-xl);}
@media (min-width:900px){.v2-contact-grid{grid-template-columns:1fr 1.1fr;}}
.v2-contact-info h2{font-family:var(--font-heading);font-weight:600;font-size:26px;margin:0 0 20px;}
.v2-contact-info__item{display:flex;gap:14px;margin-bottom:22px;}
.v2-contact-info__item b{display:block;font-size:12.5px;text-transform:uppercase;letter-spacing:.05em;color:var(--ink-soft);margin-bottom:4px;}
.v2-contact-info__item a{font-size:16px;font-weight:600;text-decoration:none;color:var(--ink);}
.v2-contact-info__item a:hover{color:var(--accent);}
.v2-social{display:flex;gap:12px;margin-top:8px;}
.v2-social a{display:flex;align-items:center;justify-content:center;width:40px;height:40px;border-radius:50%;background:var(--surface);color:var(--ink);}
.v2-social a:hover{background:var(--accent);color:#fff;}
.v2-social svg{width:18px;height:18px;fill:currentColor;}
/* --- Servicios premium (home) --- */
.v2-services__img{position:relative;aspect-ratio:3/4;overflow:hidden;background:var(--surface);}
.v2-services__img img{width:100%;height:100%;object-fit:cover;transition:transform .5s ease;}
.v2-services__item:hover .v2-services__img img{transform:scale(1.06);}
.v2-services__item .v2-services__body{padding:24px 24px 28px;}

/* --- Marcas (tira de logos bajo el hero) --- */
.v2-brands{padding-block:22px;background:var(--surface);overflow:hidden;border-bottom:1px solid rgba(21,18,15,.08);}
.v2-brands__track-wrap{overflow:hidden;-webkit-mask-image:linear-gradient(90deg,transparent,#000 6%,#000 94%,transparent);mask-image:linear-gradient(90deg,transparent,#000 6%,#000 94%,transparent);}
.v2-brands__track{display:flex;align-items:center;gap:64px;width:max-content;animation:v2-logos-scroll 85s linear infinite;}
.v2-brands__track img{height:46px;width:auto;object-fit:contain;opacity:.55;filter:grayscale(1);transition:opacity .2s ease,filter .2s ease;}
@media (min-width:900px){.v2-brands__track img{height:56px;}}
.v2-brands__track img:hover{opacity:1;filter:grayscale(0);}
@media (prefers-reduced-motion: reduce){.v2-brands__track{animation:none;}}

/* --- Coche de tus sueños --- */
.v2-dreamcar{background:var(--ink);color:#fff;padding-block:var(--space-xl);}
.v2-dreamcar__inner{display:grid;grid-template-columns:1fr;gap:32px;align-items:center;}
@media (min-width:900px){.v2-dreamcar__inner{grid-template-columns:1fr 1fr;gap:64px;}}
.v2-dreamcar h2{font-family:var(--font-heading);font-weight:600;font-size:clamp(24px,3vw,32px);margin:0 0 12px;}
.v2-dreamcar p{color:rgba(255,255,255,.75);font-size:15.5px;line-height:1.6;margin:0;max-width:44ch;}
.v2-dreamcar .v2-form-card{background:#fff;}

/* --- Del garaje a la gran pantalla --- */
.v2-cinema{padding-block:var(--space-xl);}
.v2-cinema__inner{display:grid;grid-template-columns:1fr;gap:40px;align-items:center;}
@media (min-width:900px){.v2-cinema__inner{grid-template-columns:.9fr 1.1fr;gap:64px;}}
.v2-cinema__media{min-width:0;min-height:0;border-radius:var(--radius-md);overflow:hidden;aspect-ratio:3/4;background:var(--surface);}
.v2-cinema__media img{width:100%;height:100%;object-fit:cover;}
.v2-cinema__body h2{font-family:var(--font-heading);font-weight:600;font-size:clamp(26px,3.4vw,36px);margin:0 0 10px;line-height:1.15;}
.v2-cinema__lead{font-size:17px;color:var(--accent);font-weight:600;margin:0 0 16px;}
.v2-cinema__body p.v2-cinema__desc{font-size:15.5px;line-height:1.65;color:var(--ink-soft);margin:0 0 24px;max-width:56ch;}

/* --- Casos de éxito (4 tarjetas) --- */
.v2-cases{background:var(--surface);padding-block:var(--space-xl);}
.v2-cases-grid{display:grid;grid-template-columns:1fr;gap:24px;}
@media (min-width:640px){.v2-cases-grid{grid-template-columns:1fr 1fr;}}
@media (min-width:1080px){.v2-cases-grid{grid-template-columns:repeat(4,1fr);}}
.v2-case{min-width:0;background:#fff;border-radius:var(--radius-md);overflow:hidden;display:flex;flex-direction:column;}
.v2-case__img{aspect-ratio:4/3;min-height:0;flex-shrink:0;background:var(--surface);}
.v2-case__img img{width:100%;height:100%;object-fit:cover;}
.v2-case__body{padding:20px 22px 24px;}
.v2-case__title{font-family:var(--font-heading);font-weight:600;font-size:17.5px;margin:0 0 8px;line-height:1.3;}
.v2-case__body p{font-size:13.5px;line-height:1.55;color:var(--ink-soft);margin:0;}

/* --- Hemos trabajado con (marquee de logos) --- */
.v2-logos{padding-block:var(--space-xl);overflow:hidden;}
.v2-logos__label{text-align:center;font-size:14px;font-weight:600;text-transform:uppercase;letter-spacing:.08em;color:var(--ink-soft);margin:0 0 36px;}
.v2-logos__track-wrap{overflow:hidden;-webkit-mask-image:linear-gradient(90deg,transparent,#000 8%,#000 92%,transparent);mask-image:linear-gradient(90deg,transparent,#000 8%,#000 92%,transparent);}
.v2-logos__track{display:flex;align-items:center;gap:96px;width:max-content;animation:v2-logos-scroll 70s linear infinite;}
.v2-logos__track img{height:82px;width:auto;object-fit:contain;opacity:.7;filter:grayscale(1);transition:opacity .2s ease,filter .2s ease;}
@media (min-width:900px){.v2-logos__track img{height:98px;}}
.v2-logos__track img:hover{opacity:1;filter:grayscale(0);}
@keyframes v2-logos-scroll{from{transform:translateX(0);}to{transform:translateX(-50%);}}
@media (prefers-reduced-motion: reduce){.v2-logos__track{animation:none;}}

/* --- Historia --- */
.v2-history{padding-block:var(--space-xl);text-align:center;}
.v2-history__logo{width:72px;height:72px;margin:0 auto 24px;border-radius:50%;}
.v2-history h2{font-family:var(--font-heading);font-weight:600;font-size:clamp(24px,3vw,32px);margin:0 0 16px;}
.v2-history p{max-width:64ch;margin-inline:auto;color:var(--ink-soft);font-size:16px;line-height:1.65;}

/* --- Newsletter --- */
.v2-newsletter{background:var(--accent);padding-block:var(--space-lg);}
.v2-newsletter__inner{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:24px;}
.v2-newsletter h2{color:#fff;font-family:var(--font-heading);font-weight:600;font-size:clamp(20px,2.6vw,26px);margin:0;max-width:32ch;}
.v2-newsletter form{display:flex;gap:10px;flex-wrap:wrap;flex:1;max-width:440px;}
.v2-newsletter form p{margin:0;flex:1;display:flex;gap:10px;flex-wrap:wrap;}
.v2-newsletter .wpcf7-form-control-wrap{flex:1;min-width:180px;}
.v2-newsletter input[type=email]{width:100%;padding:13px 16px;border-radius:var(--radius-sm);border:none;font-family:var(--font-body);font-size:15px;}
.v2-newsletter input[type=submit]{background:var(--ink);color:#fff;border:none;font-weight:600;padding:13px 24px;border-radius:var(--radius-sm);cursor:pointer;white-space:nowrap;}
.v2-newsletter input[type=submit]:hover{background:#000;}
.v2-newsletter .wpcf7-response-output{width:100%;color:#fff;border-color:rgba(255,255,255,.5) !important;}
.v2-newsletter .screen-reader-text{position:static;width:auto;height:auto;clip:auto;}

/* --- Coches vendidos (home, carrusel) --- */
.v2-sold{padding-block:var(--space-xl);background:var(--surface);}
.v2-sold .v2-section-head{margin-bottom:var(--space-lg);}
.v2-sold__track-wrap{overflow:hidden;-webkit-mask-image:linear-gradient(90deg,transparent,#000 6%,#000 94%,transparent);mask-image:linear-gradient(90deg,transparent,#000 6%,#000 94%,transparent);}
.v2-sold__track{display:flex;gap:24px;width:max-content;animation-name:v2-logos-scroll;animation-timing-function:linear;animation-iteration-count:infinite;}
.v2-sold__card{flex:0 0 240px;text-decoration:none;color:var(--ink);}
.v2-sold__card-img{position:relative;aspect-ratio:4/3;border-radius:var(--radius-md);overflow:hidden;background:#fff;}
.v2-sold__card-img img{width:100%;height:100%;object-fit:cover;display:block;}
.v2-sold__badge{position:absolute;top:10px;left:10px;background:var(--accent);color:#fff;font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.04em;padding:5px 10px;border-radius:var(--radius-sm);}
.v2-sold__card-make{font-size:11.5px;text-transform:uppercase;letter-spacing:.05em;color:var(--ink-soft);margin:12px 0 2px;}
.v2-sold__card-title{font-family:var(--font-heading);font-weight:600;font-size:15.5px;margin:0;line-height:1.3;}
.v2-sold__cta{text-align:center;margin-top:32px;}
@media (prefers-reduced-motion: reduce){.v2-sold__track{animation:none;}}

/* --- Vendido (coches vendidos) --- */
.v2-car-card--sold .v2-car-card__img img{filter:none;opacity:1;}
.v2-car-card__badge--sold{background:var(--accent);}
.v2-sold-link{margin-top:36px;font-size:14.5px;}
.hidden-fields-container,.wpcf7 .hidden-fields-container{display:none !important;border:none !important;}

/* Boton "volver arriba" de Astra: su CSS no se carga en la v2, se oculta (21/10/2026) */
#ast-scroll-top{display:none !important;}

/* --- Food Trucks v2 (landing segmentada, 20/10/2026) --- */
.v2-ft-hero{background:var(--ink);color:#fff;padding-block:40px 56px;}
.v2-ft-hero__ask{margin:0 0 12px;font-size:13px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:rgba(255,255,255,.7);}
.v2-ft-segs{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:32px;}
.v2-ft-seg{min-height:44px;padding:0 20px;border-radius:999px;font-family:var(--font-body);font-weight:600;font-size:15px;cursor:pointer;background:transparent;color:#fff;border:1.5px solid rgba(255,255,255,.45);transition:background .15s ease,color .15s ease;}
.v2-ft-seg:hover{border-color:#fff;}
.v2-ft-seg.is-active{background:#fff;color:var(--ink);border-color:#fff;}
.v2-ft-seg:focus-visible,.v2-ft-btn--ghost:focus-visible,.v2-ft-card__cta:focus-visible{outline:3px solid #fff;outline-offset:2px;}
.v2-ft-hero__grid{display:grid;grid-template-columns:1fr;gap:32px;align-items:center;}
.v2-ft-hero__grid > *{min-width:0;}
@media (min-width:900px){.v2-ft-hero__grid{grid-template-columns:1.1fr 1fr;gap:56px;}}
.v2-ft-hero__kicker{margin:0 0 12px;font-size:15px;font-weight:600;color:#FF8A94;}
.v2-ft-hero h1{font-family:var(--font-heading);font-weight:600;font-size:clamp(32px,5vw,56px);line-height:1.06;margin:0 0 16px;color:#fff;}
.v2-ft-hero__sub{font-size:17px;line-height:1.55;color:rgba(255,255,255,.85);margin:0 0 24px;max-width:56ch;}
.v2-ft-hero__ctas{display:flex;flex-wrap:wrap;gap:12px;margin-bottom:24px;}
.v2-ft-btn{min-height:52px;padding:0 28px;font-size:16px;display:inline-flex;align-items:center;}
.v2-ft-btn--ghost{display:inline-flex;align-items:center;min-height:52px;padding:0 24px;border-radius:var(--radius-sm);border:1.5px solid #fff;color:#fff;text-decoration:none;font-weight:600;font-size:16px;}
.v2-ft-btn--ghost:hover{background:#fff;color:var(--ink);}
@media (max-width:520px){.v2-ft-btn,.v2-ft-btn--ghost{width:100%;justify-content:center;}}
.v2-ft-trust{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:10px 22px;font-size:14.5px;color:rgba(255,255,255,.85);}
.v2-ft-trust li{display:flex;align-items:center;gap:8px;}
.v2-ft-trust svg{color:#FF8A94;flex-shrink:0;}
.v2-ft-hero__media{margin:0;}
.v2-ft-hero__media img{width:100%;aspect-ratio:4/3;object-fit:cover;border-radius:var(--radius-md);display:block;background:#2a2622;}
.v2-ft-hero__media figcaption{margin-top:12px;font-size:14px;color:rgba(255,255,255,.7);}
.v2-ft-hero__media figcaption strong{color:#fff;}

.v2-ft-fleet{background:var(--surface);padding-block:var(--space-xl);}
.v2-ft-grid{display:grid;grid-template-columns:1fr;gap:24px;}
@media (min-width:640px){.v2-ft-grid{grid-template-columns:1fr 1fr;}}
@media (min-width:1180px){.v2-ft-grid{grid-template-columns:repeat(4,1fr);}}
.v2-ft-card{min-width:0;background:#fff;border-radius:var(--radius-md);overflow:hidden;display:flex;flex-direction:column;outline:1px solid rgba(21,18,15,.1);transition:outline-color .15s ease;}
.v2-ft-card.is-rec{outline:3px solid var(--accent);}
.v2-ft-card__img{position:relative;aspect-ratio:4/3;min-height:0;overflow:hidden;background:var(--surface);flex-shrink:0;}
.v2-ft-card__img img{width:100%;height:100%;object-fit:cover;display:block;}
.v2-ft-card__badge{display:none;position:absolute;top:12px;left:12px;background:var(--accent);color:#fff;font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.04em;padding:6px 12px;border-radius:var(--radius-sm);}
.v2-ft-card.is-rec .v2-ft-card__badge{display:inline-block;}
.v2-ft-card__body{padding:22px 22px 24px;display:flex;flex-direction:column;flex:1;}
.v2-ft-card__base{font-size:12.5px;text-transform:uppercase;letter-spacing:.06em;color:var(--ink-soft);margin:0 0 4px;}
.v2-ft-card h3{font-family:var(--font-heading);font-weight:600;font-size:22px;margin:0 0 10px;}
.v2-ft-card__desc{font-size:14.5px;line-height:1.55;color:var(--ink-soft);margin:0 0 16px;}
.v2-ft-card .v2-feature-row__list{margin-bottom:20px;}
.v2-ft-card__cta{margin-top:auto;display:inline-flex;align-items:center;min-height:44px;font-weight:600;font-size:14.5px;color:var(--accent);text-decoration:underline;text-underline-offset:3px;}

.v2-ft-steps{padding-block:var(--space-xl);}
.v2-ft-steps__list{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:1fr;gap:28px;}
@media (min-width:760px){.v2-ft-steps__list{grid-template-columns:repeat(3,1fr);}}
.v2-ft-steps__list span{display:block;font-family:var(--font-heading);font-weight:700;font-size:40px;line-height:1;color:var(--accent);margin-bottom:10px;}
.v2-ft-steps__list h3{font-size:19px;font-weight:700;margin:0 0 8px;}
.v2-ft-steps__list p{font-size:15.5px;line-height:1.6;color:var(--ink-soft);margin:0;}

.v2-ft-faq{padding-block:var(--space-xl) 0;}
.v2-ft-faq .container{max-width:860px;}
.v2-ft-faq details{background:var(--surface);border-radius:var(--radius-md);padding:0 20px;margin-bottom:12px;}
.v2-ft-faq summary{min-height:56px;display:flex;align-items:center;font-weight:700;font-size:16.5px;cursor:pointer;}
.v2-ft-faq details p{margin:0;padding:0 0 18px;font-size:15.5px;line-height:1.6;color:var(--ink-soft);}

.v2-ft-sticky{display:none;}
@media (max-width:899px){
  .v2-ft-sticky{display:grid;grid-template-columns:1fr 1fr 1.3fr;gap:8px;position:fixed;left:0;right:0;bottom:0;z-index:40;padding:10px 12px calc(10px + env(safe-area-inset-bottom));background:#fff;border-top:1px solid rgba(21,18,15,.12);box-shadow:0 -4px 16px rgba(21,18,15,.08);transform:translateY(110%);transition:transform .2s ease;}
  .v2-ft-sticky.is-visible{transform:none;}
  .v2-ft-sticky a{min-height:48px;display:flex;align-items:center;justify-content:center;border-radius:var(--radius-sm);border:1.5px solid var(--ink);color:var(--ink);font-weight:600;font-size:15px;text-decoration:none;}
  .v2-ft-sticky a.is-primary{background:var(--accent);border-color:var(--accent);color:#fff;}
  body.v2-ft-page{padding-bottom:76px;}
  body.v2-nav-open .v2-ft-sticky{display:none;}
}
.v2-ft-page #presupuesto{scroll-margin-top:80px;}

/* =========================================================
   Capa "premium" (21/10/2026): detalles sutiles en toda la web.
   Para quitarla entera: borrar desde aqui hasta el final y el <script> premium.js del footer (partials.php).
   ========================================================= */
html{scroll-behavior:smooth;}
::selection{background:var(--accent);color:#fff;}
h1,h2,h3{text-wrap:balance;}
h1,h2{letter-spacing:-.012em;}

/* Antetitulo con linea (usado en coche de tus suenos y newsletter) */
.v2-eyebrow{display:flex;align-items:center;gap:12px;margin:0 0 16px;font-size:12px;font-weight:600;letter-spacing:.16em;text-transform:uppercase;color:var(--accent);}
.v2-eyebrow::before{content:"";width:28px;height:1px;background:currentColor;}
.v2-eyebrow--light{color:rgba(255,255,255,.75);}

/* Linea de acento sobre los titulos de seccion */
.v2-section-head::before{content:"";display:block;width:44px;height:2px;background:var(--accent);margin-bottom:20px;}
.v2-form-section .v2-section-head::before,.v2-history h2::before{margin-inline:auto;}
.v2-history h2::before{content:"";display:block;width:44px;height:2px;background:var(--accent);margin:0 auto 20px;}

/* Menu: cristal esmerilado al hacer scroll */
.v2-nav{transition:background-color .3s ease,box-shadow .3s ease,border-color .3s ease;}
.v2-nav.is-scrolled{background:rgba(255,255,255,.88);-webkit-backdrop-filter:saturate(1.4) blur(14px);backdrop-filter:saturate(1.4) blur(14px);box-shadow:0 8px 28px rgba(21,18,15,.08);border-bottom-color:transparent;}
.v2-nav__links a{transition:color .2s ease,border-color .2s ease;}

/* Botones: elevacion suave */
.btn{transition:background-color .2s ease,transform .2s ease,box-shadow .2s ease;}
.btn:hover{transform:translateY(-1px);box-shadow:0 12px 26px rgba(220,15,34,.28);}
.btn--ghost:hover,.btn--sm:hover{box-shadow:none;}
.btn:active{transform:none;}

/* Tarjetas: sombra y zoom de imagen mas pausado */
.v2-car-card__img,.v2-case,.v2-usecase,.v2-ft-card,.v2-services__item{transition:box-shadow .35s ease;}
.v2-car-card:hover .v2-car-card__img{box-shadow:0 18px 40px rgba(21,18,15,.16);}
.v2-case:hover,.v2-usecase:hover,.v2-ft-card:hover{box-shadow:0 18px 40px rgba(21,18,15,.12);}
.v2-car-card__img img,.v2-case__img img,.v2-usecase__img img,.v2-ft-card__img img,.v2-feature-row__media img{transition:transform .9s cubic-bezier(.2,.7,.2,1);}
.v2-case:hover .v2-case__img img,.v2-usecase:hover .v2-usecase__img img,.v2-ft-card:hover .v2-ft-card__img img{transform:scale(1.04);}
.v2-case__img,.v2-usecase__img,.v2-ft-card__img{overflow:hidden;}

/* Aparicion suave al hacer scroll (la activa premium.js; sin JS todo se ve normal) */
.v2-reveal{opacity:0;transform:translateY(22px);transition:opacity .9s cubic-bezier(.2,.7,.2,1) var(--d,0ms),transform .9s cubic-bezier(.2,.7,.2,1) var(--d,0ms);}
.v2-reveal.is-in{opacity:1;transform:none;}
@media (prefers-reduced-motion: reduce){.v2-reveal{opacity:1;transform:none;transition:none;}}

.v2-footer a{transition:color .2s ease;}

/* ---------- Coche de tus suenos (rehecha) ---------- */
.v2-dreamcar{position:relative;overflow:hidden;}
.v2-dreamcar__bg{position:absolute;inset:0;}
.v2-dreamcar__bg img{width:100%;height:100%;object-fit:cover;opacity:.2;filter:grayscale(.3);}
.v2-dreamcar__bg::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,var(--ink) 0%,rgba(21,18,15,.85) 45%,rgba(21,18,15,.6) 100%);}
.v2-dreamcar__inner{position:relative;z-index:1;}
@media (min-width:900px){.v2-dreamcar__inner{grid-template-columns:1.05fr .95fr;gap:72px;}}
.v2-dreamcar h2{font-size:clamp(28px,3.6vw,42px);line-height:1.1;margin:0 0 14px;}
.v2-dreamcar p.v2-dreamcar__lead{font-size:17px;color:rgba(255,255,255,.8);max-width:46ch;margin:0 0 32px;}
.v2-dreamcar__steps{list-style:none;margin:0 0 36px;padding:0;display:grid;gap:20px;counter-reset:dc;}
.v2-dreamcar__steps li{counter-increment:dc;display:grid;grid-template-columns:44px 1fr;column-gap:16px;}
.v2-dreamcar__steps li::before{content:"0" counter(dc);grid-row:span 2;font-family:var(--font-heading);font-weight:600;font-size:22px;color:var(--accent);line-height:1.2;}
.v2-dreamcar__steps b{font-size:16px;font-weight:600;color:#fff;}
.v2-dreamcar__steps span{font-size:14.5px;line-height:1.55;color:rgba(255,255,255,.68);}
.v2-dreamcar__stats{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;border-top:1px solid rgba(255,255,255,.14);padding-top:24px;}
.v2-dreamcar__stats strong{display:block;font-family:var(--font-heading);font-weight:600;font-size:clamp(24px,3vw,32px);color:#fff;line-height:1.1;}
.v2-dreamcar__stats span{font-size:12.5px;letter-spacing:.04em;color:rgba(255,255,255,.6);}
.v2-dreamcar .v2-form-card{box-shadow:0 30px 60px rgba(0,0,0,.35);}
.v2-dreamcar__form h3{font-family:var(--font-heading);font-weight:600;font-size:22px;color:var(--ink);margin:0 0 4px;}
.v2-dreamcar .v2-dreamcar__form > p{color:var(--ink-soft);font-size:14px;margin:0 0 20px;}

/* ---------- Newsletter (MailPoet) ---------- */
.v2-newsletter{background:linear-gradient(135deg,#DC0F22 0%,#A60C1A 100%);padding-block:clamp(56px,7vw,88px);}
.v2-newsletter__inner{display:grid;grid-template-columns:1fr;gap:28px;align-items:center;}
@media (min-width:900px){.v2-newsletter__inner{grid-template-columns:1fr 1fr;gap:64px;}}
.v2-newsletter h2{max-width:none;font-size:clamp(24px,3vw,34px);line-height:1.15;margin:0 0 10px;}
.v2-newsletter__text > p:not(.v2-eyebrow){color:rgba(255,255,255,.85);font-size:15.5px;margin:0;max-width:48ch;}
.v2-newsletter .mailpoet_form{padding:0 !important;margin:0 !important;}
.v2-newsletter form.mailpoet_form{display:flex;flex-wrap:wrap;gap:10px;align-items:stretch;max-width:none;}
.v2-newsletter .mailpoet_paragraph{margin:0 !important;flex:1 1 220px;}
.v2-newsletter .mailpoet_paragraph:has(.mailpoet_submit){flex:0 0 auto;}
.v2-newsletter .mailpoet_text{width:100% !important;min-height:52px;padding:0 16px !important;border:0 !important;border-radius:var(--radius-sm) !important;font-family:var(--font-body) !important;font-size:15px !important;background:#fff !important;color:var(--ink) !important;}
.v2-newsletter .mailpoet_submit{min-height:52px;width:auto !important;padding:0 26px !important;border:0 !important;border-radius:var(--radius-sm) !important;background:var(--ink) !important;color:#fff !important;font-family:var(--font-body) !important;font-size:15px !important;font-weight:600 !important;cursor:pointer;transition:background-color .2s ease;}
.v2-newsletter .mailpoet_submit:hover{background:#000 !important;}
.v2-newsletter .mailpoet_message{flex-basis:100%;margin:0 !important;}
.v2-newsletter .mailpoet_validate_success,.v2-newsletter .mailpoet_validate_error,.v2-newsletter .parsley-errors-list{color:#fff !important;font-size:14px;font-weight:600;}
.v2-newsletter .parsley-errors-list{list-style:none;padding:0;margin:6px 0 0;}
.v2-newsletter .mailpoet_form_loading{display:none !important;}
.v2-newsletter__legal{font-size:12.5px;color:rgba(255,255,255,.78);margin:12px 0 0;}
.v2-newsletter__legal a{color:#fff;text-decoration:underline;}
/* Paso de verificacion anti-spam de MailPoet (captcha) */
.v2-newsletter .mailpoet_captcha_container{flex-basis:100%;display:flex;flex-wrap:wrap;align-items:center;gap:10px;background:#fff;color:var(--ink);border-radius:var(--radius-md);padding:18px;margin-top:4px;}
.v2-newsletter .mailpoet_captcha_image_wrapper img{border-radius:var(--radius-sm);max-width:100%;height:auto;}
.v2-newsletter .mailpoet_icon_button{width:44px;height:44px;display:inline-flex;align-items:center;justify-content:center;border:1px solid rgba(21,18,15,.15);border-radius:var(--radius-sm);background:#fff;cursor:pointer;}
.v2-newsletter .mailpoet_icon_button img{width:20px;height:20px;}
.v2-newsletter .mailpoet_captcha_label{flex-basis:100%;display:block;}
.v2-newsletter .mailpoet_captcha_label .mailpoet_text_label{display:none !important;}
.v2-newsletter .mailpoet_captcha_label::before{content:"Escribe los caracteres de la imagen:";font-size:14px;font-weight:600;display:block;margin-bottom:8px;}
.v2-newsletter .mailpoet_captcha_container,.v2-newsletter .mailpoet_message,.v2-newsletter .mailpoet_message p{margin-left:0 !important;margin-right:0 !important;padding-left:0;padding-right:0;}
.v2-newsletter .mailpoet_captcha_container{padding:18px !important;width:100%;box-sizing:border-box;}
.v2-newsletter .mailpoet_captcha_label .mailpoet_text{border:1px solid rgba(21,18,15,.25) !important;}
.v2-newsletter .mailpoet_captcha_submit{flex-basis:100%;}
.v2-newsletter .mailpoet_captcha_submit .mailpoet_submit{width:100% !important;}
.v2-newsletter .mailpoet_message .mailpoet_validate_error{margin:0;}
@media (max-width:520px){.v2-newsletter .mailpoet_paragraph,.v2-newsletter .mailpoet_paragraph:has(.mailpoet_submit){flex:1 1 100%;}.v2-newsletter .mailpoet_submit{width:100% !important;}}
