/* Versión 1.0.7: recuperación de la portada ilustrada aprobada. */
.sl-product-image:has(.sl-framed-product){background:#fff;padding:14px}.sl-framed-product{display:block;width:100%;height:100%;max-height:100%;overflow:hidden}.sl-local-photos img{image-rendering:auto}.sl-local-photos figcaption a{text-decoration:underline;text-underline-offset:3px}
.sl-local-photos{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;max-width:960px;margin:auto}.sl-local-photos figure{margin:0}.sl-local-photos img{display:block;width:100%;height:auto;border-radius:12px}.sl-local-photos figcaption{font-size:15px;margin-top:12px;color:var(--muted)}.sl-estimate{font-size:14px!important;line-height:1.5;color:var(--text);font-weight:600;margin-block:12px}.sl-local-gallery{background:var(--surface)}@media(max-width:600px){.sl-local-photos{gap:12px;grid-template-columns:1fr 1fr}.sl-local-photos figure:first-child{grid-column:1/-1}.sl-local-photos figure:first-child img{max-height:440px;object-fit:contain;background:var(--soft)}}
.sl-hero-grid{min-height:580px;padding-block:32px;gap:32px}
.sl-hero h1{font-size:clamp(44px,4.7vw,68px);letter-spacing:-.035em;line-height:1.1;margin-bottom:22px}
.sl-hero-description{font-size:18px;line-height:1.65;max-width:46ch}
.sl-hero-actions{margin-top:24px}.sl-hero-actions .sl-button,.sl-hero-actions .sl-text-link{font-size:16px}
.sl-hero-proof{margin-top:22px}.sl-hero-proof p{font-size:13px}
@media(max-width:600px){.sl-hero-grid{min-height:0;padding-block:28px;gap:12px}.sl-hero h1{font-size:clamp(42px,12vw,58px)}.sl-hero-description{font-size:17px}}
.sl-header{background:var(--surface);backdrop-filter:none;border-bottom:1px solid var(--line)}
.sl-header-inner{min-height:94px;gap:24px}.sl-header .sl-logo img{width:120px;height:90px}
#sl-nav{font-size:17px;gap:22px}#sl-nav ul{gap:22px}
/* Adaptación de contraste del logo original para superficies oscuras. */
html[data-theme=dark] .sl-logo img{background:transparent;border-radius:0;filter:grayscale(1) invert(1);mix-blend-mode:screen}
.sl-opening{background:#216b9e;color:#fff;padding:64px 0 60px}
.sl-opening-grid{display:grid;grid-template-columns:1.25fr 1fr;gap:72px;align-items:center}
.sl-opening h1{font-size:clamp(42px,4.6vw,68px);line-height:1.08;letter-spacing:-.035em;margin:0 0 26px;font-weight:700;text-wrap:balance}
.sl-opening h1 em{color:#cbeaff;font-style:normal}.sl-opening-grid>div>p{max-width:48ch;font-size:18px;line-height:1.65;color:#edf7ff}
.sl-opening-actions{display:flex;gap:16px;flex-wrap:wrap;margin-top:28px}
.sl-opening-actions .sl-button{background:white;color:#15537b;border-color:white;font-size:17px}
.sl-opening-actions .sl-outline-button{color:white;border-color:#91c0df;font-size:17px}
.sl-opening-actions a:hover{background:#d7edfb;color:#133e58}
.sl-opening-grid>div>.sl-opening-note{font-size:14px;margin:24px 0 0;color:#d7edfb}
.sl-help-panel{border-top:1px solid #91c0df;padding-top:24px}
.sl-help-panel h2{font-size:27px;letter-spacing:-.025em;margin-bottom:8px;color:white}
.sl-help-panel p{font-size:16px;color:#e1f2fc;margin-bottom:20px}
.sl-help-panel>a{display:flex;align-items:center;justify-content:space-between;padding:15px 0;border-bottom:1px solid #6e9fbe;font-size:20px;gap:16px;transition:padding .18s ease-out,background .18s ease-out}
.sl-help-panel>a:hover{padding-inline:12px;background:#185780}
.sl-help-panel>a.sl-follow-service{font-size:14px;border-bottom:0;margin-top:10px;text-decoration:underline;text-underline-offset:5px}
.sl-opening :focus-visible{outline-color:white}
.sl-assurance{display:grid;grid-template-columns:repeat(3,1fr);gap:32px;padding-block:30px;border-bottom:1px solid var(--line)}
.sl-assurance p{margin:0;color:var(--muted);font-size:15px}.sl-assurance strong{display:block;color:var(--text);font-size:17px;margin-bottom:3px}
.home .sl-section{padding-block:64px}.home h2{letter-spacing:-.03em}.home .sl-section-heading p{font-size:17px}
.home .sl-services-grid{gap:0 36px}.home .sl-service{background:transparent;border:0;border-radius:0;border-top:1px solid var(--line);padding:28px 0;box-shadow:none}
.home .sl-service-icon{display:none}.home .sl-service p{font-size:17px}.home .sl-service h3{font-size:25px}
.sl-brand-marquee{width:min(720px,100%);container-type:inline-size}
.sl-brand-logos.sl-brand-playing{animation:sl-brand-scroll 32s linear infinite!important;animation-play-state:running!important}
.sl-brand-logos.sl-brand-paused{animation-play-state:paused!important}
.sl-brand-control{display:block;margin:14px auto 0;padding:9px 18px;min-height:44px;background:var(--surface);color:var(--text);border:1px solid var(--line);border-radius:8px;font-size:14px}
.sl-brand-logos{gap:0;padding:18px 0;animation-duration:32s}
.sl-brand-logos>div{width:25cqw;flex:0 0 25cqw;height:80px}
.sl-brand-logos img{width:76%;height:64px;filter:none!important;opacity:1}
.sl-brand-disclaimer{font-size:12px!important}.sl-brands{padding-block:30px}
.home .sl-business-banner{background:#292d31}.home .sl-business-art{display:none}.home .sl-business-banner{grid-template-columns:1fr}.home .sl-business-banner h2 br{display:none}
@media(max-width:1050px){#sl-nav,#sl-nav ul{gap:14px;font-size:16px}.sl-header-inner{gap:16px}.sl-header-actions .sl-button{display:none}.sl-opening-grid{gap:36px}.sl-opening{padding-block:44px}}
@media(max-width:850px){.sl-opening-grid{grid-template-columns:1fr}.sl-opening h1{max-width:650px}.sl-help-panel{max-width:650px}.sl-header .sl-logo img{width:100px;height:75px}.sl-header-inner{min-height:80px}}
@media(max-width:600px){.sl-opening{padding-block:36px}.sl-opening-grid{gap:32px}.sl-opening h1{font-size:43px}.sl-opening-grid>div>p{font-size:17px}.sl-opening-actions{gap:12px}.sl-opening-actions a{font-size:16px!important;padding-inline:16px}.sl-help-panel h2{font-size:25px}.sl-help-panel>a{font-size:18px}.sl-assurance{grid-template-columns:1fr;gap:16px;padding-block:24px}.sl-assurance p{font-size:15px}.home .sl-section{padding-block:40px}.sl-brand-logos>div{width:25cqw;flex-basis:25cqw}.sl-brand-logos img{height:48px}.sl-header-inner{min-height:76px}.sl-topbar .sl-container{font-size:10px}.home .sl-section-heading p{font-size:16px}}
