:root{color-scheme:light}body{overflow-wrap:break-word}h1{line-height:1.06;letter-spacing:-.035em}h2,h3{line-height:1.12}section[id],main[id]{scroll-margin-top:100px}a:focus-visible,button:focus-visible,summary:focus-visible{outline:3px solid #e85800;outline-offset:5px}button:disabled{cursor:wait;opacity:.65}.languages a{text-decoration:none;display:inline-block;text-align:center}.skip-link{position:fixed;top:-100px;left:1rem;z-index:100;background:#fff;color:#111;padding:1rem}.skip-link:focus{top:1rem}.brand-tagline{font-size:clamp(1.2rem,2vw,1.7rem);margin-top:1.2rem;color:#ffab57}.hero-copy h1{font-size:clamp(2.7rem,5.2vw,5rem)}.services{padding:4rem 0;background:#f4f1eb}.service-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem;margin-top:2rem}.service-card{display:block;padding:1.7rem;background:#fff;border:1px solid #d7d1c7;border-radius:1rem;text-decoration:none;color:#151515}.service-card:hover{border-color:#b54c00;background:#fff7ee}.service-card h3{font-size:1.4rem}.service-card p{margin-top:1rem;font-size:1rem}.laxe-note{border-left:4px solid #ff7a00;padding:1.2rem 1.5rem;margin-top:2rem}.laxe-note p{margin-top:.6rem}.page-intro{background:#151515;color:white;padding:4rem 0}.page-intro h1{font-size:clamp(2.5rem,5.5vw,5rem);max-width:1000px;margin:1rem 0}.page-intro .eyebrow{margin-top:2rem}.page-intro .btn{margin-top:1.7rem}.article-body{max-width:950px;padding:2rem 0}.article-body section{padding:1.8rem 0}.article-body h2{font-size:clamp(1.8rem,3vw,2.6rem)}.article-body p{margin:1.2rem 0;font-size:1.1rem}.article-body .shell{width:100%}.article-body .technical-grid{display:block}.article-body .case-study{grid-template-columns:1fr}.article-body a:not(.btn){text-decoration:underline;text-underline-offset:3px}.article-body a{color:#9a3e00}.page-intro a{color:inherit}.page-intro .btn{color:#151515}.info-section{padding:2rem 0}.faq details{padding:1.3rem 0;border-bottom:1px solid #d0c8bd}.faq summary{cursor:pointer;font-size:1.15rem;font-weight:700}.media-item{margin:2rem 0}.hp{position:absolute;left:-10000px;top:auto;width:1px;height:1px;overflow:hidden}.form-status{grid-column:1/-1;font-weight:700;min-height:1.5rem}.form-status:empty{display:none}.form-status.is-error{color:#6b1300}.form-status:not(:empty){padding:1rem;background:#fff;border-radius:.5rem}.form-note{font-size:.9rem}.contact-actions{display:flex;flex-wrap:wrap;gap:1rem;margin-top:1.5rem}.contact-actions a{font-weight:750}input,textarea,select{min-width:0;width:100%;box-sizing:border-box}input[type=checkbox]{width:20px;height:20px;flex:0 0 20px}.check a{text-decoration:underline}.form-grid>.full{grid-column:1/-1}.footer-links{flex-wrap:wrap}.whatsapp-float{max-width:calc(100vw - 2rem)}.nav-wrap{gap:1rem}.nav-wrap nav{gap:1rem}.nav-wrap nav a{font-size:1rem}.eyebrow,.lang-btn{font-size:.875rem}.badge-year,.trust-item small,.spec-note{font-size:.875rem}
@media(max-width:1000px){.nav-wrap{flex-wrap:wrap}.menu-toggle{display:block}nav#main-nav{display:none;width:100%;margin:0;padding:1rem 0;flex-direction:column;align-items:stretch}nav#main-nav.open{display:flex}.languages{align-self:flex-start}.header-cta{align-self:flex-start}.service-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:620px){.service-grid{grid-template-columns:1fr}.hero-copy h1{font-size:clamp(2.2rem,9vw,3.4rem)}.page-intro h1{font-size:2.5rem}.shell{width:calc(100% - 2rem)}.form-grid{grid-template-columns:1fr}.contact-grid{gap:2rem}.article-body .festival-grid{grid-template-columns:1fr}.whatsapp-float{padding:.7rem 1rem}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation:none!important;transition:none!important}}
.form-status{color:#173c20}.hero-copy .brand-tagline{grid-column:1;grid-row:3}.hero-copy h1{grid-column:1;grid-row:2}.hero-copy .lead{grid-column:2;grid-row:2}.hero-copy .hero-actions{grid-column:2;grid-row:3}.consent-panel{position:fixed;z-index:60;bottom:1rem;left:1rem;max-width:480px;padding:1.5rem;background:white;color:#151515;border:1px solid #555;box-shadow:0 8px 30px #0003}.consent-panel p{margin:0 0 1rem}.consent-panel button,.consent-manage{font:inherit;cursor:pointer;padding:.65rem 1rem;border:1px solid currentColor;background:white;color:#151515;margin:.25rem}.consent-manage{font-size:.875rem}.consent-panel[hidden]{display:none}
@media(max-width:920px){.hero-copy .brand-tagline{margin-bottom:1.5rem}}
@media print{header,footer,.whatsapp-float,.services,.contact,.skip-link,button,.hero-actions,.consent-panel{display:none!important}.page-intro{background:white;color:black;padding:1rem 0}.page-intro .btn{display:none}.article-body{max-width:100%}section{break-inside:avoid}body{background:white;color:black}.technical-photo{max-width:350px}a{color:black}}

/* Mobile-first safeguards and touch refinements. */
html,body{overflow-x:clip}body{min-width:320px}.nav-wrap,.brand,.hero-copy,.contact-grid,.form-grid,.festival,.festival p{min-width:0}
@media(max-width:620px){
 body{font-size:1rem;line-height:1.55}
 section{padding:4rem 0}
 .nav-wrap{min-height:72px}
 .brand-name{font-size:.9rem;line-height:1.15}
 .menu-toggle{display:inline-flex;min-width:44px;min-height:44px;align-items:center;justify-content:center}
 nav#main-nav{gap:.4rem;padding:1rem 0 1.25rem}
 nav#main-nav>a:not(.header-cta){display:flex;min-height:44px;align-items:center;padding:.55rem .15rem}
 .languages{align-self:stretch;justify-content:space-between}
 .lang-btn{display:inline-flex;min-width:44px;min-height:44px;align-items:center;justify-content:center}
 .header-cta{width:100%;min-height:48px}
 .hero-copy h1{overflow-wrap:anywhere}
 .hero-actions{align-items:stretch}
 .hero-actions .btn{width:100%;min-height:50px}
 .hero-actions .text-link{display:flex;min-height:44px;align-items:center}
 .photo-label{gap:.6rem}
 .photo-label span:first-child{min-width:0}
 .photo-label span:last-child{flex:0 0 auto}
 .laxe-note{margin-top:1.25rem;padding:1rem}
 .laxe-note h3{font-size:1.3rem;overflow-wrap:anywhere}
 .laxe-note p{font-size:.95rem}
 form{padding:1rem}
 .contact-actions{display:grid;grid-template-columns:1fr}
 .contact-actions a{width:100%;min-height:48px;justify-content:center;text-align:center}
 .footer-links{gap:.5rem 1rem}
 .footer-links a{display:inline-flex;min-height:44px;align-items:center}
 .whatsapp-float{right:.75rem;bottom:.75rem;min-width:52px;min-height:52px;padding:.7rem}
 .consent-panel{right:.5rem;bottom:.5rem;left:.5rem;max-width:none;padding:1.1rem}
}
/* El Patatero v6 */
header .brand-mark{width:88px;height:88px;flex:0 0 88px}header .nav-wrap{min-height:108px}footer .brand-mark{width:92px;height:92px;flex:0 0 92px}.team-brand{width:120px;height:120px;object-fit:contain;margin-bottom:1.5rem}.brand{max-width:100%}.brand-name{white-space:normal}.festival-wordmark{background:#f4f5f1}.festival-wordmark span{font:800 1.35rem/1.2 Arial,sans-serif;letter-spacing:-.02em;text-align:center;overflow-wrap:normal}.festival-logo{height:110px}.festival p{font-size:1rem;font-weight:500;color:#555b55}.truck-views{display:grid;grid-template-columns:1fr .62fr;gap:1rem;align-items:center;margin-top:2rem}.truck-views .technical-photo{margin:0;aspect-ratio:1.1}.truck-video{margin:0;min-width:0}.truck-video video{display:block;width:100%;height:auto;aspect-ratio:9/16;object-fit:contain;background:#181a18;border-radius:.35rem}.truck-video figcaption{font-size:.875rem;margin-top:.65rem}.truck-diagram{display:block;width:100%;height:auto;margin:2rem 0 .5rem}.daily-proof strong{display:block;font-size:clamp(1.5rem,3vw,2.2rem);line-height:1.2;margin:1rem 0 .5rem}.press-list{margin:2rem 0}.press-list summary{cursor:pointer;display:list-item;padding:1rem 1.5rem;background:#ff8617;color:#181a18;font-weight:750;min-height:48px}.media-item{padding:1.5rem 0;border-bottom:1px solid #bbb}.media-item video{width:100%;max-height:520px;background:#181a18}.media-item a{overflow-wrap:anywhere}
@media(max-width:1100px){.nav-wrap{flex-wrap:wrap}.menu-toggle{display:block}nav#main-nav{display:none;width:100%;flex-direction:column;align-items:stretch}nav#main-nav.open{display:flex}}
@media(max-width:620px){header .brand-mark{width:72px;height:72px;flex-basis:72px}header .nav-wrap{min-height:90px}.brand{gap:.65rem}.brand-name{font-size:.875rem;max-width:140px}.festival-wordmark span{font-size:1rem}.festival-logo{height:auto;min-height:88px}.truck-views{grid-template-columns:1fr}.truck-views .technical-photo{aspect-ratio:1.48}.truck-video{width:min(100%,300px);justify-self:center}.team-brand{width:100px;height:100px}.truck-diagram{min-width:0}.footer-grid{gap:2rem}.case-study{min-width:0}.hero-copy h1{overflow-wrap:normal}.contact-actions a{overflow-wrap:anywhere}}
@media(max-width:360px){header .brand-mark{width:62px;height:62px;flex-basis:62px}.brand-name{max-width:105px}.nav-wrap{gap:.4rem}}
.truck-video-feature{width:min(100%,520px);margin:2rem 0 0}.truck-video-feature video{display:block;width:100%;height:auto;aspect-ratio:9/16;object-fit:contain;background:#181a18;border-radius:.35rem}.truck-video-feature figcaption{margin-top:.65rem;font-size:.875rem}.team-grid{grid-template-columns:1fr!important}.team-copy{max-width:850px}.team-gallery{width:min(calc(100% - 3rem),1240px);margin:3rem auto 0;display:grid;grid-template-columns:1fr 1fr;gap:1rem}.team-gallery figure{margin:0;background:#fff}.team-gallery img{display:block;width:100%;height:auto;object-fit:contain}.team-gallery figcaption{padding:.8rem 1rem;color:#555b55;font-size:.9rem}.social-links{display:flex;flex-wrap:wrap;gap:.8rem;margin-top:1.5rem}.social-links a{display:inline-flex;align-items:center;gap:.65rem;padding:.7rem .9rem;border:1px solid #60645e;text-decoration:none;font-weight:800}.social-links svg{width:26px;height:26px;fill:none;stroke:currentColor;stroke-width:2}.social-links svg .fill{fill:currentColor;stroke:none}.social-links a:hover{border-color:#ff8617;color:#ff8617}
.press-editorial-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem;margin-top:1.5rem}.press-editorial-card{display:flex;flex-direction:column;align-items:flex-start;margin:0;padding:1.5rem;border:1px solid #bbb;background:#fff}.press-editorial-card h3{font-size:1.35rem}.press-editorial-card .text-link{margin-top:auto;padding-top:1.25rem;font-weight:800}.press-meta{margin:0 0 .8rem!important;font-size:.82rem!important;font-weight:800;text-transform:uppercase;letter-spacing:.04em;color:#686c64}
@media(max-width:900px){.press-editorial-grid{grid-template-columns:1fr}}
@media(max-width:620px){.truck-video-feature{width:min(100%,380px);margin-inline:auto}.team-gallery{width:calc(100% - 2rem);grid-template-columns:1fr}.festival-wordmark span{font-size:.82rem}}
.header-instagram{display:inline-flex;align-items:center;gap:.35rem;text-decoration:none;font-weight:800}.header-instagram svg{width:1.25rem;height:1.25rem;fill:none;stroke:currentColor;stroke-width:1.8}.header-instagram .fill{fill:currentColor;stroke:none}.certification-link{display:block}.certification-link:focus-visible{outline:3px solid currentColor;outline-offset:4px}.footer-identity,.site-identity{font-size:.82rem;line-height:1.5;opacity:.82}.footer-grid .footer-identity{grid-column:1/-1;margin:0}.gallery-head-actions{display:flex;align-items:center;gap:.75rem}
.reviews{padding:clamp(3rem,7vw,6rem) 0;background:#20221f;color:#fff}.reviews-heading{display:flex;justify-content:space-between;align-items:end;gap:1rem}.reviews-heading h2{margin:.2rem 0 1.5rem}.review-stage{position:relative;min-height:250px}.review-card{display:none;max-width:850px;padding:clamp(1.4rem,4vw,2.5rem);background:#fff;color:#181a18;border-left:6px solid #ff8617}.review-card.active{display:block;animation:review-in .35s ease}.review-stars{color:#d76a00;letter-spacing:.12em}.review-card blockquote{margin:1rem 0;font-size:clamp(1.25rem,3vw,2rem);line-height:1.35}.review-card p{display:flex;flex-wrap:wrap;gap:.45rem 1rem;margin:0}.review-card p span{color:#60645e}.review-controls{display:flex;gap:.5rem;margin-bottom:1.5rem}.review-controls button{width:44px;height:44px;border:1px solid #fff;background:transparent;color:#fff;font-size:1.2rem;cursor:pointer}.reviews>.shell>.text-link{display:inline-block;margin-top:1.25rem;color:#fff}@keyframes review-in{from{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}@media(prefers-reduced-motion:reduce){.review-card.active{animation:none}}
.review-card[hidden]{display:none!important}.reviews-google{display:inline-flex!important;margin-top:1.25rem;background:#ff8617;color:#181a18!important}.gallery-hero-cta{margin-left:.25rem}.languages{flex-wrap:wrap}@media(max-width:620px){.gallery-hero-cta{margin-left:0}}
.reviews .eyebrow{color:#ffad5c}.certification .badge-year{color:#006594;border-color:#006594}nav#main-nav a.header-cta{color:#181a18}

/* v16: stable footer layout at tablet widths and browser zoom. */
footer .footer-grid{display:grid;grid-template-columns:minmax(230px,.8fr) minmax(0,1.6fr);align-items:start;gap:1.25rem 3rem}
footer .footer-grid>.brand{grid-column:1;grid-row:1;align-self:start;min-width:0}
footer .footer-grid>.footer-identity{grid-column:2;grid-row:1;min-width:0;margin:.25rem 0 0;overflow-wrap:anywhere}
footer .footer-grid>.footer-links{grid-column:1/-1;grid-row:2;min-width:0}
.footer-links .consent-manage{display:inline-flex;min-height:44px;align-items:center;margin:0;padding:.45rem .7rem;border:1px solid #666;background:transparent;color:#c4bfb7;font-size:.82rem}
.footer-links .consent-manage:hover{border-color:#ff8617;color:#ffad5c}
@media(max-width:760px){footer .footer-grid{grid-template-columns:1fr;gap:1.25rem}footer .footer-grid>.brand,footer .footer-grid>.footer-identity,footer .footer-grid>.footer-links{grid-column:1;grid-row:auto}footer .footer-grid>.footer-identity{max-width:40rem}}
