/* Motion layer: independent of layout, colors and product configurators. */
:root{--ep-motion-out:cubic-bezier(.16,1,.3,1);--ep-motion-spring:cubic-bezier(.22,1.18,.36,1)}
@media(prefers-reduced-motion:no-preference){
body :is(.shop-header button,.shop-header a,.shop-button,.vehicle-selector-actions button,.vehicle-selector-actions a,.vehicle-visual-select__trigger,.vehicle-visual-select__options button,.catalog-quick-links a,.quote-primary,.ep-contact-links a,.cart-cta,.landing-primary){transition:scale 280ms var(--ep-motion-spring),background-color 180ms ease,box-shadow 220ms ease,color 180ms ease}
body :is(.shop-header button,.shop-button,.vehicle-selector-actions button,.vehicle-selector-actions a,.vehicle-visual-select__trigger,.vehicle-visual-select__options button,.catalog-quick-links a,.quote-primary,.ep-contact-links a,.cart-cta,.landing-primary):active{scale:.97;transition-duration:90ms}
body .vehicle-visual-select__panel:not([hidden]),body .vehicle-autocomplete:not([hidden]),body .shop-mobile-nav:not([hidden]){transform-origin:top center;animation:ep-panel-arrive 340ms var(--ep-motion-spring) both}
body .vehicle-visual-select__trigger svg{transition:transform 280ms var(--ep-motion-out)}
body .vehicle-visual-select.is-open .vehicle-visual-select__trigger svg{transform:rotate(180deg)}
body .vehicle-selector-fields>label{transition:box-shadow 240ms ease,background-color 240ms ease}
body .vehicle-selector-fields>label:focus-within{box-shadow:inset 0 -2px #e5a8ba,0 0 0 1px #e5a8ba30}
body .product-card:not([hidden]){animation:ep-result-arrive 380ms var(--ep-motion-out) both}
body .product-card:nth-child(3n+2){animation-delay:35ms}body .product-card:nth-child(3n){animation-delay:70ms}
body :is(.product-card,.vehicle-brand-grid>a,.vehicle-family-grid>a){transition:translate 320ms var(--ep-motion-out),box-shadow 320ms ease}
body .cart-drawer{transition:transform 440ms var(--ep-motion-out)}
body .cart-backdrop{transition:opacity 220ms ease}
body .cart-quote-card{transition:transform 380ms var(--ep-motion-spring),opacity 220ms ease}
body .ep-callback:not([hidden]){animation:ep-panel-arrive 380ms var(--ep-motion-out) both}
@media(hover:hover) and (pointer:fine){body :is(.product-card,.vehicle-brand-grid>a,.vehicle-family-grid>a):hover{translate:0 -4px;box-shadow:0 14px 30px #0003}}
@keyframes ep-panel-arrive{from{opacity:0;translate:0 -8px;scale:.975}to{opacity:1;translate:0 0;scale:1}}
@keyframes ep-result-arrive{from{opacity:0;translate:0 10px}to{opacity:1;translate:0 0}}
}
@media(prefers-reduced-motion:reduce){body :is(.product-card,.vehicle-visual-select__panel,.vehicle-autocomplete,.shop-mobile-nav,.cart-drawer,.cart-backdrop,.cart-quote-card,.ep-callback){animation:none!important;transition:none!important}}

body .has-vehicle-visual-select:has(.vehicle-visual-select.is-open){background:#29292e!important}
body .vehicle-visual-select__panel,body .vehicle-visual-select__panel>header,body .vehicle-search-shell{background:#252529;color:#f5f5f7;border-color:#ffffff20}
body .vehicle-visual-select__option[aria-selected="true"]{background:#482333;color:#fff}
body .vehicle-visual-select__panel .vehicle-visual-select__option:hover{background:#383139;color:#fff}

/* Legible garage controls: white brand marks, text-only model/generation. */
body .vehicle-visual-select--brand .vehicle-visual-select__visual img,
body .vehicle-brand-grid img{filter:brightness(0) invert(1)!important;background:transparent!important;opacity:1}
body .vehicle-selector-fields>label,
body .has-vehicle-visual-select:has(.vehicle-visual-select.is-open){background:#303035!important;color:#f5f5f7;border-color:#ffffff20}
body .vehicle-visual-select__trigger{background:#303035!important;color:#f5f5f7!important}
body .vehicle-visual-select__panel,body .vehicle-visual-select__panel>header{background:#29292e!important;color:#f5f5f7;border-color:#ffffff20;border-radius:7px}
body .vehicle-visual-select__options button{background:#35353c!important;color:#fff;border-color:#ffffff0d}
body .vehicle-visual-select__options button:hover,body .vehicle-visual-select__options button:focus-visible{background:#45454d!important;border-color:#e5a8ba}
body .vehicle-visual-select__options button[aria-selected=true]{background:#593044!important;color:#fff;border-color:#ad657d}
body .vehicle-visual-select__value small,body .vehicle-visual-select__option small{color:#c9c9d2}
body .vehicle-visual-select__value strong,body .vehicle-visual-select__trigger.is-placeholder .vehicle-visual-select__value strong{color:#f5f5f7}
body :is(.vehicle-visual-select--model,.vehicle-visual-select--generation) .vehicle-visual-select__visual{display:none!important}
body :is(.vehicle-visual-select--model,.vehicle-visual-select--generation) :is(.vehicle-visual-select__trigger,.vehicle-visual-select__option){grid-template-columns:minmax(0,1fr) 18px!important}
body .vehicle-visual-select--generation :is(.vehicle-visual-select__value strong,.vehicle-visual-select__option strong){white-space:normal;line-height:1.4}
body .vehicle-shop--finder .vehicle-search-panel .vehicle-search-shell,body .vehicle-shop--finder .vehicle-search-shell{background:#303035!important;color:#eee;border:1px solid #ffffff25;border-radius:7px}
body .vehicle-shop--finder .vehicle-search-shell input{background:transparent!important;border:0;box-shadow:none}
body .vehicle-search-shell kbd{background:#3c3c43;color:#d5d5dc;border-color:#ffffff20;border-radius:4px}

body .vehicle-visual-select--model .vehicle-visual-select__value small,body .vehicle-visual-select--model .vehicle-visual-select__option small{display:none}

body .vehicle-shop.vehicle-shop--finder .vehicle-search-shell input{background:transparent!important;border:0!important;box-shadow:none!important;outline:none;border-radius:0!important}
body .vehicle-shop.vehicle-shop--finder .vehicle-search-shell:focus-within{border-color:#e5a8ba;box-shadow:0 0 0 2px #e5a8ba30}

body .vehicle-shop.vehicle-shop--finder .vehicle-search-panel .vehicle-search-shell input[type=search]{background:transparent!important}

body .vehicle-shop--finder .vehicle-brand-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;border:0}
body .vehicle-shop--finder .vehicle-brand-grid>a{min-height:112px;padding:22px;align-content:center;gap:7px;background:#303035;color:#f5f5f7;border:1px solid transparent;border-radius:8px;box-shadow:none;transition:background-color 180ms ease,translate 240ms ease,border-color 180ms ease}
body .vehicle-shop--finder .vehicle-brand-grid>a:before{display:none}
body .vehicle-shop--finder .vehicle-brand-grid>a>span{display:none}
body .vehicle-shop--finder .vehicle-brand-grid h3{margin:0;font-size:20px;line-height:1.25;letter-spacing:-.025em;color:#f5f5f7;overflow-wrap:anywhere}
body .vehicle-shop--finder .vehicle-brand-grid p{margin:0;font-size:14px;line-height:1.4;color:#bdbdc7}
body .vehicle-shop--finder .vehicle-brand-grid b{grid-row:1/3;color:#d9a4b4;font-size:20px}
body .vehicle-shop--finder .vehicle-brand-grid>a:hover,body .vehicle-shop--finder .vehicle-brand-grid>a:focus-visible{background:#3b3b42;color:#fff;border-color:#936073;box-shadow:none}
body .vehicle-shop--finder .vehicle-brand-grid>a:focus-visible{outline:2px solid #e5a8ba;outline-offset:3px}
body .vehicle-shop--finder .vehicle-brand-grid>a:hover p{color:#d0d0d8}
@media(max-width:1050px){body .vehicle-shop--finder .vehicle-brand-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:720px){body .vehicle-shop--finder .vehicle-brand-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}body .vehicle-shop--finder .vehicle-brand-grid>a{padding:16px;min-height:100px}body .vehicle-shop--finder .vehicle-brand-grid h3{font-size:17px}}
@media(max-width:360px){body .vehicle-shop--finder .vehicle-brand-grid{grid-template-columns:1fr}}

body .vehicle-shop--finder .vehicle-family-grid{gap:18px;border:0}
body .vehicle-shop--finder .vehicle-family-grid>a{display:grid;grid-template-columns:minmax(0,1fr) 24px;align-content:start;gap:8px;min-height:0;padding:0 20px 22px;overflow:hidden;background:#29292e;color:#f5f5f7;border:0;border-radius:8px}
body .vehicle-shop--finder .vehicle-family-grid .vehicle-family-photo{grid-column:1/-1;width:calc(100% + 40px);max-width:none;margin:0 -20px 12px;height:auto;aspect-ratio:16/10;object-fit:cover;display:block;filter:none;background:#303035}
body .vehicle-shop--finder .vehicle-family-grid>a>span{grid-column:1/-1;font-size:14px;color:#e5a8ba}
body .vehicle-shop--finder .vehicle-family-grid h3{margin:0;grid-column:1;font-size:20px;line-height:1.25;color:#f5f5f7}
body .vehicle-shop--finder .vehicle-family-grid p{font-size:14px;color:#bdbdc7}
body .vehicle-shop--finder .vehicle-family-grid b{grid-column:2;grid-row:3/5;color:#e5a8ba}
body .vehicle-shop--finder .vehicle-family-grid>a:hover{background:#35353c;color:#fff}
@media(max-width:600px){body .vehicle-shop--finder .vehicle-family-grid{grid-template-columns:1fr}}

/* Quiet photo navigation: separate round controls and a compact counter. */
body .product-card-gallery-controls{left:14px;bottom:14px;display:grid;grid-template-columns:40px auto 40px;gap:7px;min-height:40px;padding:0;border:0;border-radius:0;background:transparent;box-shadow:none;backdrop-filter:none;-webkit-backdrop-filter:none;overflow:visible;opacity:1;transform:none}
body .product-card-gallery-controls button{width:40px;height:40px;min-width:40px;min-height:40px;border-radius:50%;border:1px solid #ffffff30;background:#202024e8;color:#fff;box-shadow:0 3px 10px #0002;backdrop-filter:blur(8px);transition:background-color 180ms ease,scale 180ms ease}
body .product-card-gallery-controls svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.4;stroke-linecap:round;stroke-linejoin:round}
body .product-card-gallery-controls output{min-width:44px;padding:8px 10px;border:0;border-radius:20px;background:#202024d9;color:#f5f5f7;font-size:14px;font-weight:500;letter-spacing:.04em;font-variant-numeric:tabular-nums;backdrop-filter:blur(8px)}
body .product-card-gallery-controls button:hover{background:#47474f;color:#fff}
body .product-card-gallery-controls button:focus-visible{outline:2px solid #e5a8ba;outline-offset:3px;background:#47474f}
body .product-card-gallery-controls button:active{scale:.93}
@media(pointer:coarse){body .product-card-gallery-controls{grid-template-columns:44px auto 44px}body .product-card-gallery-controls button{width:44px;height:44px}}
@media(prefers-reduced-motion:reduce){body .product-card-gallery-controls button{transition:none}body .product-card-gallery-controls button:active{scale:1}}

/* Contact actions sit directly on the page, without an enclosing frame. */
body .commerce-home .commerce-contact-copy .ep-contact-links{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;max-width:480px;padding:0;margin:24px 0;border:0!important;outline:0;box-shadow:none!important;background:transparent!important}
body .commerce-home .commerce-contact-copy .ep-contact-links:before,body .commerce-home .commerce-contact-copy .ep-contact-links:after{display:none}
body .commerce-home .commerce-contact-copy .ep-contact-links a{display:flex!important;align-items:center;justify-content:center;gap:11px;min-height:56px;margin:0;padding:14px 18px;border:0!important;border-radius:8px!important;box-shadow:none;background:#303035;color:#fff!important;text-decoration:none;transition:background-color 180ms ease,scale 180ms ease}
body .commerce-home .commerce-contact-copy .ep-contact-links a[href*="wa.me"]{background:#782b40}
body .commerce-home .commerce-contact-copy .ep-contact-links a:hover{background:#424249}
body .commerce-home .commerce-contact-copy .ep-contact-links a[href*="wa.me"]:hover{background:#923b54}
body .commerce-home .commerce-contact-copy .ep-contact-links a:focus-visible{outline:2px solid #e5a8ba;outline-offset:4px}
body .commerce-home .commerce-contact-copy .ep-contact-links span{font-size:15px;font-weight:650;line-height:1.3}
body .commerce-home .commerce-contact-copy .ep-contact-links :is(svg,img){width:23px;height:23px;flex-shrink:0}
@media(max-width:420px){body .commerce-home .commerce-contact-copy .ep-contact-links{grid-template-columns:1fr;max-width:none}}

body .commerce-home .commerce-contact-copy aside.ep-opening-hours{display:flex;flex-direction:column;align-items:flex-start;gap:8px;padding:10px 0 0;margin-top:26px;border:0!important;border-radius:0;background:transparent!important;box-shadow:none;color:#f5f5f7}
body .commerce-home .commerce-contact-copy aside.ep-opening-hours>span{font-size:14px;font-weight:650;letter-spacing:.12em;text-transform:uppercase;color:#d7a5b4}
body .commerce-home .commerce-contact-copy aside.ep-opening-hours>em{font-size:15px;font-style:normal;text-transform:none;letter-spacing:0;color:#c5c5ce}
body .commerce-home .commerce-contact-copy aside.ep-opening-hours>b{display:flex;flex-wrap:wrap;gap:8px 22px;margin-top:6px;font-size:clamp(21px,2vw,29px);font-weight:550;line-height:1.3;letter-spacing:-.035em;color:#f5f5f7;font-variant-numeric:tabular-nums}
body .commerce-home .commerce-contact-copy aside.ep-opening-hours>b>span{white-space:nowrap;font:inherit;color:inherit;letter-spacing:inherit;text-transform:none}
body .commerce-home .commerce-contact-copy aside.ep-opening-hours:before,body .commerce-home .commerce-contact-copy aside.ep-opening-hours:after{display:none}

/* Native menus must use the same dark palette as their controls. */
body .shop-main select option,body .shop-main select optgroup,body .vehicle-shop select option,body .quote-page select option{background:#303035!important;color:#f5f5f7!important;color-scheme:dark}
body .shop-main select option:disabled{color:#aaaab5!important}
body .shop-main .product-price-note a[href="#efectos-techo"]{color:#e5a8ba!important;text-decoration:underline;text-underline-offset:4px;font-weight:550}
body .shop-main .product-options select:focus-visible{outline:2px solid #e5a8ba;outline-offset:3px;box-shadow:none}

/* Starlight preview: unified dark controls. */
body starlight-configurator{border:0!important;border-radius:12px!important;overflow:hidden;background:#1e1e22!important;color:#f5f5f7;color-scheme:dark}
body starlight-configurator .sc-stage{border-radius:10px;overflow:hidden}
body starlight-configurator .sc-controls{gap:24px!important;padding:24px!important}
body starlight-configurator .sc-controls fieldset{border:0!important;padding:0!important;margin:0!important;min-width:0}
body starlight-configurator .sc-controls legend,body starlight-configurator .sc-select{font-size:14px!important;font-weight:600!important;color:#bdbdc7!important}
body starlight-configurator .sc-segment{display:flex!important;gap:4px!important;padding:4px!important;background:#29292e!important;border:0!important;border-radius:10px!important;box-shadow:none!important}
body starlight-configurator .sc-segment label{flex:1;min-width:0;margin:0!important}
body starlight-configurator .sc-segment label span{display:flex!important;align-items:center;justify-content:center;min-height:44px!important;padding:10px 8px!important;border:0!important;border-radius:7px!important;background:transparent!important;color:#bdbdc7!important;box-shadow:none!important;outline:0!important;font-size:14px!important;line-height:1.3;transition:background .18s ease,color .18s ease}
body starlight-configurator .sc-segment input:checked+span{background:#782b40!important;color:#fff!important;box-shadow:0 2px 8px #0002!important;outline:0!important}
body starlight-configurator .sc-segment input:focus-visible+span{outline:2px solid #e5a8ba!important;outline-offset:2px!important}
body starlight-configurator .sc-select select{min-height:52px!important;padding:12px 16px!important;background:#29292e!important;color:#f5f5f7!important;border:0!important;border-radius:8px!important;box-shadow:none!important;font-size:15px!important}
body starlight-configurator .sc-colors{display:flex!important;gap:20px!important;align-items:center!important}
body starlight-configurator .sc-colors label{display:flex!important;align-items:center!important;gap:10px!important;color:#bdbdc7!important;font-size:14px!important}
body starlight-configurator input[type=color]{appearance:none!important;-webkit-appearance:none!important;width:42px!important;height:42px!important;min-height:0!important;padding:4px!important;border:1px solid #ffffff29!important;border-radius:50%!important;background:#29292e!important;cursor:pointer;box-shadow:none!important}
body starlight-configurator input[type=color]::-webkit-color-swatch-wrapper{padding:0}
body starlight-configurator input[type=color]::-webkit-color-swatch{border:0;border-radius:50%}
body starlight-configurator input[type=color]::-moz-color-swatch{border:0;border-radius:50%}
body starlight-configurator .sc-shoot{display:flex!important;align-items:center!important;gap:10px!important;color:#f5f5f7!important;font-size:14px!important}
body starlight-configurator .sc-shoot input{accent-color:#a54461;width:18px;height:18px;flex-shrink:0}
body starlight-configurator .sc-pause,body starlight-configurator .sc-expand,body starlight-configurator button[data-close]{background:#303035!important;color:#f5f5f7!important;border:0!important;border-radius:8px!important;box-shadow:none!important;font-size:14px!important;font-weight:550!important;padding:12px 18px!important;min-height:44px;cursor:pointer}
body starlight-configurator .sc-expand{background:#19191ddd!important;backdrop-filter:blur(12px);bottom:16px!important;right:16px!important}
body starlight-configurator .sc-pause:hover{background:#3c3c42!important}
body starlight-configurator :is(button,select,input[type=color]):focus-visible{outline:2px solid #e5a8ba!important;outline-offset:3px!important}
body starlight-configurator .sc-status{padding:18px 24px 0!important;margin:0!important;color:#f5f5f7!important;font-size:15px!important;line-height:1.6}
body starlight-configurator .sc-note{padding:0 24px 24px!important;color:#bdbdc7!important;font-size:14px!important;line-height:1.6}
@media(max-width:600px){body starlight-configurator .sc-controls{grid-template-columns:1fr!important;padding:18px!important;gap:20px!important}body starlight-configurator .sc-colors{flex-wrap:wrap}body starlight-configurator .sc-status{padding:16px 18px 0!important}body starlight-configurator .sc-note{padding:0 18px 18px!important}}

body starlight-configurator .sc-segment label span{white-space:normal!important;text-align:center;overflow-wrap:normal;min-width:0;box-sizing:border-box}
body starlight-configurator .sc-colors input[type=color]{flex-shrink:0}
body starlight-configurator .sc-colors{flex-wrap:wrap}
