/*
Theme Name: LHR Ofertas
Theme URI: https://lhrservices.com/
Author: LH & R Services Corp.
Author URI: https://lhrservices.com/
Description: Tema comercial bilingüe para LHR Ofertas + LHR SMS con Hero de un teléfono, bloque independiente de campañas SMS con movimiento y mensajes alimentados por entradas reales de WordPress.
Version: 1.2.16
Text Domain: lhr-ofertas
*/

:root{--lhr-navy:#071a33;--lhr-blue:#0d3c78;--lhr-green:#76c800;--lhr-green2:#9dde2a;--lhr-white:#fff;--lhr-text:#10213c;--lhr-muted:#5e6b7e;--lhr-bg:#f5f8fc;--lhr-border:#e4eaf2}
*{box-sizing:border-box}body{margin:0;font-family:Inter,Arial,sans-serif;color:var(--lhr-text);background:#fff}.lhr-wrap{width:min(1180px,92%);margin:auto}.site-header{position:sticky;top:0;z-index:50;background:rgba(5,20,42,.95);backdrop-filter:blur(12px);color:#fff}.header-inner{display:flex;align-items:center;justify-content:space-between;min-height:76px;gap:24px}.brand{display:flex;align-items:center;gap:12px;text-decoration:none;color:#fff}.brand-mark{font-size:30px;font-weight:900;letter-spacing:-2px}.brand-mark span{color:var(--lhr-green)}.brand-copy strong{display:block;font-size:20px}.brand-copy small{opacity:.8}.main-nav{display:flex;align-items:center}.main-nav .menu{display:flex;align-items:center;gap:8px;list-style:none;padding:0;margin:0}.main-nav .menu-item{margin:0}.main-nav a{display:inline-flex;align-items:center;gap:7px;color:#fff;text-decoration:none;font-size:14px;font-weight:650;padding:10px 9px;border-radius:999px;transition:.2s ease}.main-nav a:hover{background:rgba(255,255,255,.08)}.main-nav .lhr-menu-button>a{background:linear-gradient(90deg,var(--lhr-green),var(--lhr-green2));padding:10px 17px;color:#fff}.main-nav .lhr-menu-outline>a{border:1px solid rgba(255,255,255,.55);padding:9px 16px}.main-nav .lhr-menu-icon>a{width:40px;height:40px;justify-content:center;padding:0;border:1px solid rgba(255,255,255,.25)}.main-nav .lhr-menu-icon .lhr-menu-label{position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}.lhr-nav-img{width:20px;height:20px;object-fit:contain}.lhr-nav-emoji{font-size:18px;line-height:1}.main-nav .dashicons{width:18px;height:18px;font-size:18px}.main-nav .sub-menu{display:none;position:absolute;top:100%;min-width:220px;background:#071a33;border:1px solid rgba(255,255,255,.12);border-radius:14px;padding:8px;list-style:none;box-shadow:0 18px 45px rgba(0,0,0,.28)}.main-nav .menu-item-has-children{position:relative}.main-nav .menu-item-has-children:hover>.sub-menu{display:block}.main-nav .sub-menu a{width:100%;border-radius:10px}.nav-toggle{display:none;width:42px;height:42px;border:1px solid rgba(255,255,255,.28);border-radius:11px;background:transparent;padding:9px;cursor:pointer}.nav-toggle span{display:block;height:2px;background:#fff;margin:5px 0;border-radius:2px}.brand-custom-logo .custom-logo-link{display:block}.brand-custom-logo img{max-height:46px;width:auto}.lang-switch{display:flex;border:1px solid rgba(255,255,255,.45);border-radius:999px;overflow:hidden;flex:0 0 auto}.lang-switch button{border:0;background:transparent;color:#fff;padding:8px 13px;cursor:pointer}.lang-switch button.active{background:var(--lhr-green)}
.hero{background:radial-gradient(circle at 82% 18%,#0e4d93 0,#071a33 43%,#041226 100%);color:#fff;padding:76px 0 68px;overflow:hidden;min-height:620px;display:flex;align-items:center}.hero-grid{display:grid;grid-template-columns:1.05fr .95fr;align-items:center;gap:46px}.hero-grid>div:first-child{position:relative;z-index:3}.hero .eyebrow,.hero h1,.hero p,.hero .actions,.hero .developed{display:block!important;visibility:visible!important;opacity:1!important}.hero h1{max-width:720px}.eyebrow{color:var(--lhr-green2);font-weight:800;text-transform:uppercase;letter-spacing:.08em;font-size:13px}.hero h1{font-size:clamp(42px,6vw,72px);line-height:1.02;margin:14px 0}.hero h1 span{color:var(--lhr-green)}.hero p{font-size:20px;line-height:1.6;max-width:650px;color:#e5edf8}.hero-points{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin:28px 0}.hero-point{display:flex;gap:10px;align-items:center;color:#eaf1fb}.dot-icon{width:36px;height:36px;border-radius:12px;border:1px solid rgba(130,210,0,.5);display:grid;place-items:center;color:var(--lhr-green2)}.actions{display:flex;flex-wrap:wrap;gap:12px}.btn{display:inline-flex;align-items:center;justify-content:center;padding:14px 22px;border-radius:999px;text-decoration:none;font-weight:800}.btn-primary{background:linear-gradient(90deg,var(--lhr-green),var(--lhr-green2));color:#fff}.btn-secondary{border:1px solid rgba(255,255,255,.55);color:#fff}.developed{margin-top:25px;font-style:italic;color:#d8e3f3}.device-stage{position:relative;min-height:440px}.laptop{position:absolute;right:2%;top:25px;width:82%;background:#111827;border:10px solid #0a0f18;border-radius:22px;padding:14px;box-shadow:0 28px 70px rgba(0,0,0,.45);transform:rotate(2deg)}.screen{background:#f7f9fc;border-radius:10px;padding:16px;color:#10213c}.screen-title{font-weight:800;margin-bottom:12px}.offer-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:9px}.offer{background:#fff;border:1px solid #e6ebf2;border-radius:10px;padding:12px;text-align:center}.offer .thumb{height:58px;border-radius:8px;background:linear-gradient(135deg,#e9f8ca,#fff1bf);margin-bottom:8px}.offer b{display:block;color:#0b2545}.phone{position:absolute;right:0;bottom:0;width:31%;background:#111827;border:7px solid #0a0f18;border-radius:28px;padding:8px;box-shadow:0 20px 50px rgba(0,0,0,.45)}.phone .screen{padding:12px}.coupon-card{background:linear-gradient(180deg,#d94234,#9d1b17);color:#fff;border-radius:14px;padding:22px 12px;text-align:center}.coupon-card strong{font-size:42px}.qr{height:90px;margin:12px auto;background:repeating-conic-gradient(#000 0 25%,#fff 0 50%) 50%/16px 16px;border:7px solid #fff;width:90px}.pwa-badge{position:absolute;right:2%;bottom:-8px;background:#0a274f;border:1px solid rgba(255,255,255,.45);padding:12px 16px;border-radius:14px;font-weight:800}
.section{padding:72px 0}.section.alt{background:var(--lhr-bg)}.section-heading{text-align:center;max-width:820px;margin:0 auto 38px}.section-heading h2{font-size:38px;margin:0 0 12px}.section-heading h2 span{color:var(--lhr-green)}.section-heading p{color:var(--lhr-muted);font-size:18px}.features{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.feature{background:#fff;border:1px solid var(--lhr-border);border-radius:18px;padding:24px;box-shadow:0 8px 24px rgba(24,49,83,.05)}.feature-icon{width:46px;height:46px;border-radius:14px;background:#eff8df;color:#4f9800;display:grid;place-items:center;font-size:22px}.feature h3{margin:16px 0 8px;font-size:18px}.feature p{color:var(--lhr-muted);line-height:1.6;margin:0}.business-grid{display:grid;grid-template-columns:1fr 1fr;gap:32px;align-items:center}.business-card{background:#fff;border-radius:22px;padding:28px;box-shadow:0 18px 45px rgba(29,63,110,.12)}.check-list{padding:0;margin:20px 0;list-style:none}.check-list li{padding:7px 0}.check-list li:before{content:'✓';color:var(--lhr-green);font-weight:900;margin-right:10px}.benefits{display:grid;grid-template-columns:repeat(2,1fr);gap:14px}.benefit{border:1px solid var(--lhr-border);border-radius:16px;padding:18px}.benefit strong{display:block;color:#0b4fa4;font-size:20px;margin-top:6px}.cta{background:linear-gradient(90deg,#071a33,#0d3c78);color:#fff;padding:56px 0}.cta-grid{display:grid;grid-template-columns:1.1fr .9fr;gap:34px;align-items:center}.cta h2{font-size:36px;margin:0 0 10px}.cta p{color:#d6e2f1}.qr-large{width:150px;height:150px;background:repeating-conic-gradient(#000 0 25%,#fff 0 50%) 50%/18px 18px;border:12px solid #fff;border-radius:12px;margin-left:auto}.site-footer{background:#041226;color:#fff;padding:40px 0 26px}.footer-grid{display:grid;grid-template-columns:1.4fr repeat(3,1fr);gap:28px}.site-footer h4{margin-top:0}.site-footer a{color:#dce7f5;text-decoration:none;display:block;margin:8px 0}.footer-bottom{border-top:1px solid rgba(255,255,255,.12);margin-top:28px;padding-top:18px;color:#9fb1c8;font-size:13px}
@media(max-width:980px){.nav-toggle{display:block;margin-left:auto}.header-inner{position:relative}.main-nav{display:none;position:absolute;left:4%;right:4%;top:72px;background:#071a33;border:1px solid rgba(255,255,255,.12);border-radius:16px;padding:12px;box-shadow:0 20px 50px rgba(0,0,0,.35)}.main-nav.is-open{display:block}.main-nav .menu{display:flex;flex-direction:column;align-items:stretch;gap:4px}.main-nav .menu-item>a{width:100%;justify-content:flex-start;border-radius:10px}.main-nav .lhr-menu-icon>a{width:100%;height:auto;justify-content:flex-start;padding:10px 9px}.main-nav .lhr-menu-icon .lhr-menu-label{position:static!important;width:auto;height:auto;overflow:visible;clip:auto;white-space:normal}.main-nav .sub-menu{display:block;position:static;box-shadow:none;border:0;background:rgba(255,255,255,.04);margin:4px 0 0 14px}.hero-grid,.business-grid,.cta-grid{grid-template-columns:1fr}.hero{min-height:0}.device-stage{min-height:390px}.features{grid-template-columns:repeat(2,1fr)}.footer-grid{grid-template-columns:1fr 1fr}}@media(max-width:600px){.hero{padding-top:46px}.hero h1{font-size:42px}.hero-points,.features,.benefits{grid-template-columns:1fr}.device-stage{min-height:330px}.laptop{width:92%;right:4%}.phone{width:38%}.section{padding:54px 0}.section-heading h2{font-size:30px}.footer-grid{grid-template-columns:1fr}.brand-copy small{display:none}.lang-switch button{padding:7px 10px}}


/* v1.0.2 — Content Recovery & Premium Layout */
.hero{padding:64px 0 60px;min-height:590px}.hero-copy{min-width:0}.hero .eyebrow{margin-bottom:10px}.hero h1{display:flex!important;flex-direction:column;gap:3px;font-size:clamp(44px,5.1vw,68px);line-height:1.03;margin:0 0 18px}.hero-title-main,.hero-accent{display:block!important;visibility:visible!important;opacity:1!important}.hero-accent{color:var(--lhr-green)}.hero-desc{margin:0;color:#e5edf8!important}.hero .actions{margin-top:6px}.hero-custom-image{display:block;width:100%;max-height:480px;object-fit:contain;filter:drop-shadow(0 28px 45px rgba(0,0,0,.28))}.features-section{padding:64px 0 68px}.features{grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}.feature{padding:20px;min-height:190px;transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease}.feature:hover{transform:translateY(-3px);box-shadow:0 15px 36px rgba(24,49,83,.10);border-color:#d8e5f2}.feature h3{font-size:17px;line-height:1.28}.feature p{font-size:14px;line-height:1.5}.section-heading{margin-bottom:30px}.business-section{padding:68px 0}.business-copy h2{font-size:clamp(32px,4vw,48px);line-height:1.08;margin:12px 0 18px;max-width:650px}.business-image{margin-top:20px;width:100%;max-height:230px;object-fit:cover;border-radius:20px;box-shadow:0 16px 40px rgba(29,63,110,.12)}.business-card{padding:24px}.benefit{min-height:132px}.benefit-icon{font-size:20px}.benefit>span:last-child{display:block;margin-top:5px;line-height:1.35}.cta{padding:54px 0}.cta-grid{grid-template-columns:minmax(0,1fr) 260px}.cta-copy{max-width:720px}.cta h2,.cta p,.cta .actions{display:block!important;visibility:visible!important;opacity:1!important}.cta h2{font-size:clamp(30px,4vw,43px);line-height:1.08}.cta p{font-size:17px;line-height:1.55;max-width:660px}.cta .actions{display:flex!important;margin-top:20px}.cta-qr-wrap{display:flex;align-items:center;justify-content:center;gap:16px}.qr-caption{display:block;max-width:110px;font-size:13px;line-height:1.35}.qr-user-image{width:150px;height:150px;object-fit:contain;background:#fff;padding:8px;border-radius:12px}.developed{font-size:15px}
@media(max-width:1100px){.features{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:980px){.features{grid-template-columns:repeat(2,minmax(0,1fr))}.cta-grid{grid-template-columns:1fr}.cta-qr-wrap{justify-content:flex-start}.hero h1{font-size:52px}}
@media(max-width:600px){.features{grid-template-columns:1fr}.feature{min-height:0}.hero h1{font-size:40px}.cta-qr-wrap{align-items:flex-start}.qr-large,.qr-user-image{width:120px;height:120px}.business-copy h2{font-size:34px}}


/* v1.0.3 — LHR Ofertas + SMS Dynamic Phone */
.device-stage{min-height:500px}.laptop{right:9%;width:76%}.phone{width:27%}.coupon-phone{right:23%;bottom:4px;z-index:4}.sms-phone{position:absolute;right:0;bottom:0;width:29%;z-index:5;background:#111827;border:7px solid #0a0f18;border-radius:30px;padding:8px;box-shadow:0 20px 50px rgba(0,0,0,.45);transform:rotate(1.5deg)}.sms-phone .screen{padding:0;overflow:hidden;background:#f7f9fc;min-height:360px}.sms-status{display:flex;justify-content:space-between;padding:10px 12px 5px;font-size:10px;font-weight:700;color:#2c3a50}.sms-header{padding:8px 12px 10px;border-bottom:1px solid #dfe5ee;text-align:center;color:#14233b}.sms-header strong{display:block;font-size:12px}.sms-header small{display:block;color:#718097;font-size:9px;margin-top:2px}.sms-thread{padding:14px 11px 12px;min-height:265px}.sms-bubble{background:#e9edf3;border-radius:16px 16px 16px 4px;padding:11px 12px;color:#12213a;font-size:11px;line-height:1.45;box-shadow:0 2px 8px rgba(16,33,60,.05);white-space:pre-line;overflow-wrap:anywhere}.sms-bubble a{color:#0767c8;text-decoration:none}.sms-time{display:block;text-align:right;color:#8592a5;font-size:9px;margin-top:6px}.sms-reply{margin:16px 0 0 auto;background:#b7ec8c;border-radius:15px 15px 4px 15px;padding:7px 10px;width:max-content;max-width:80%;font-size:10px;color:#193311}.sms-message{display:none}.sms-message.active{display:block;animation:lhrSmsFade .35s ease}.sms-empty-note{font-size:10px;color:#6f7e91;text-align:center;margin-top:10px}.sms-live-badge{position:absolute;right:1%;top:7%;background:rgba(118,200,0,.14);border:1px solid rgba(157,222,42,.55);color:#b9f45f;padding:7px 10px;border-radius:999px;font-size:11px;font-weight:800;z-index:7}.sms-live-badge:before{content:'●';margin-right:6px}.pwa-badge{right:28%;bottom:-12px;z-index:7}.solutions-section{background:linear-gradient(180deg,#f7fbff,#edf5ff);padding:68px 0}.solutions-title{text-align:center;margin:0 0 8px;font-size:clamp(32px,4vw,46px)}.solutions-title .accent{color:var(--lhr-green)}.solutions-subtitle{text-align:center;color:var(--lhr-muted);font-size:17px;margin:0 auto 30px;max-width:760px}.solutions-grid{display:grid;grid-template-columns:1fr 1fr 1fr;gap:18px;align-items:stretch}.solution-card{background:#fff;border:1px solid var(--lhr-border);border-radius:20px;padding:24px;box-shadow:0 12px 32px rgba(30,63,105,.07);position:relative}.solution-card.sms{border-color:#bcd8f7}.solution-card.combo{border-color:#cbb8ef;background:linear-gradient(180deg,#fff,#fbf8ff)}.solution-kicker{font-size:11px;font-weight:900;letter-spacing:.08em;text-transform:uppercase;color:#608097}.solution-card h3{font-size:23px;margin:8px 0 4px}.solution-card h3 span{color:var(--lhr-green)}.solution-card.sms h3 span{color:#0f74cc}.solution-card.combo h3 span{color:#7444c7}.solution-card p{color:var(--lhr-muted);line-height:1.5}.solution-list{list-style:none;padding:0;margin:17px 0 0}.solution-list li{padding:6px 0;line-height:1.4}.solution-list li:before{content:'✓';color:var(--lhr-green);font-weight:900;margin-right:8px}.solution-card.sms .solution-list li:before{color:#0f74cc}.solution-card.combo .solution-list li:before{color:#7444c7}.solution-link{display:inline-flex;margin-top:14px;text-decoration:none;font-weight:800;border-radius:999px;padding:11px 16px;color:#fff;background:var(--lhr-green)}.solution-card.sms .solution-link{background:#0f74cc}.solution-card.combo .solution-link{background:#7444c7}.sms-admin-hint{font-size:12px;color:#6b7280;margin-top:6px}
@keyframes lhrSmsFade{from{opacity:0;transform:translateY(4px)}to{opacity:1;transform:none}}
@media(max-width:1100px){.device-stage{min-height:460px}.laptop{right:12%;width:78%}.coupon-phone{right:22%;width:28%}.sms-phone{width:30%}.solutions-grid{grid-template-columns:1fr 1fr}.solution-card.combo{grid-column:1/-1}}
@media(max-width:980px){.device-stage{min-height:500px}.laptop{right:12%;width:78%}.coupon-phone{right:29%;width:25%}.sms-phone{width:28%}.pwa-badge{right:32%}}
@media(max-width:700px){.device-stage{min-height:430px}.laptop{width:94%;right:3%;top:12px}.coupon-phone{width:34%;right:34%;bottom:0}.sms-phone{width:36%;right:0}.sms-phone .screen{min-height:285px}.sms-thread{min-height:205px}.sms-bubble{font-size:9px}.sms-header strong{font-size:10px}.pwa-badge{right:36%;font-size:10px;padding:8px 10px}.sms-live-badge{top:1%;right:1%;font-size:9px}.solutions-grid{grid-template-columns:1fr}.solution-card.combo{grid-column:auto}}


/* v1.0.4 — SMS Phone Layout + Dynamic Entries */
.device-stage{min-height:510px}
.laptop{right:13%;width:79%;top:28px;transform:rotate(1deg)}
.coupon-phone{right:27%;width:26%;bottom:4px;z-index:5}
.sms-phone{right:-2%;bottom:-2px;width:34%;min-width:210px;z-index:6;padding:7px;border-width:7px;border-radius:34px;transform:rotate(.5deg);box-shadow:0 26px 60px rgba(0,0,0,.48)}
.sms-phone .screen{min-height:390px;border-radius:23px;padding:0;background:#f7f9fc;overflow:hidden}
.sms-status{height:30px;align-items:center;padding:8px 13px 4px;font-size:9px;background:#fff}
.sms-message{height:100%}
.sms-message.active{display:flex;flex-direction:column;min-height:340px}
.sms-appbar{display:flex;align-items:center;gap:8px;padding:9px 11px 10px;background:#fff;border-bottom:1px solid #e2e7ee;color:#14233b}
.sms-back{font-size:18px;line-height:1;color:#1d65aa;font-weight:500}
.sms-contact{min-width:0;flex:1;text-align:center;padding-right:18px}
.sms-contact strong{display:block;font-size:12px;line-height:1.2;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.sms-contact small{display:block;margin-top:2px;font-size:8px;color:#8090a4;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.sms-thread{padding:11px 10px 12px;min-height:300px;display:flex;flex-direction:column;background:linear-gradient(180deg,#f6f8fb,#eef2f7)}
.sms-day-label{text-align:center;color:#8592a5;font-size:8px;margin:1px 0 9px}
.sms-bubble{max-width:91%;font-size:10px;line-height:1.42;padding:10px 11px;white-space:normal;overflow-wrap:break-word;word-break:normal;hyphens:none}
.sms-bubble .sms-body{white-space:pre-line}
.sms-bubble a{display:inline-block;margin-top:5px;max-width:100%;overflow-wrap:anywhere;word-break:break-word}
.sms-time{font-size:8px;margin:4px 8% 0 0}
.sms-reply{font-size:9px;margin:14px 0 0 auto;padding:7px 10px;max-width:72%}
.sms-live-badge{right:-1%;top:4%;z-index:8}
.pwa-badge{right:31%;bottom:-14px;z-index:8}
@media(max-width:1100px){.laptop{right:14%;width:78%}.coupon-phone{right:29%;width:27%}.sms-phone{right:0;width:34%;min-width:195px}.sms-live-badge{right:0}.pwa-badge{right:34%}}
@media(max-width:980px){.device-stage{min-height:540px}.laptop{right:10%;width:82%}.coupon-phone{right:34%;width:26%}.sms-phone{right:3%;width:31%;min-width:205px}.pwa-badge{right:38%}}
@media(max-width:700px){.device-stage{min-height:455px}.laptop{width:92%;right:4%;top:8px}.coupon-phone{width:32%;right:37%;bottom:0}.sms-phone{width:35%;min-width:0;right:2%;bottom:0;border-width:5px;border-radius:25px}.sms-phone .screen{min-height:300px;border-radius:17px}.sms-message.active{min-height:260px}.sms-thread{min-height:218px;padding:8px}.sms-bubble{font-size:8px;padding:8px;max-width:94%}.sms-appbar{padding:7px 8px}.sms-contact strong{font-size:9px}.sms-contact small{font-size:7px}.sms-status{font-size:7px;height:24px}.sms-reply{font-size:7px;margin-top:9px}.sms-live-badge{top:0;right:0;font-size:8px}.pwa-badge{right:40%;font-size:9px}}


/* ==========================================================
   v1.1.0 — Hero Device System Rebuild
   Reconstrucción profunda del conjunto visual de dispositivos.
   ========================================================== */
.hero{padding:62px 0 58px;min-height:690px;overflow:hidden}
.hero-grid{grid-template-columns:minmax(0,1.02fr) minmax(560px,.98fr);gap:34px}
.device-stage-v2{position:relative;min-height:585px;isolation:isolate;overflow:visible}
.device-stage-v2 .device-glow{position:absolute;inset:8% -16% -8% 12%;z-index:-2;background:radial-gradient(circle at 55% 48%,rgba(25,115,218,.5),rgba(10,56,111,.2) 42%,transparent 72%);filter:blur(18px)}

/* Tablet / panel de ofertas */
.offers-device{position:absolute;left:0;top:38px;width:73%;z-index:1;transform:rotate(1.2deg);filter:drop-shadow(0 30px 42px rgba(0,0,0,.34))}
.offers-bezel{background:linear-gradient(145deg,#111a28,#050a12);border-radius:28px;padding:12px;border:2px solid rgba(255,255,255,.08)}
.offers-screen{background:#f7f9fc;border-radius:18px;padding:19px 18px 20px;color:#10213c;min-height:435px;overflow:hidden;box-shadow:inset 0 0 0 1px rgba(12,38,73,.06)}
.offers-device .screen-title{font-size:18px;margin:0 0 14px;font-weight:900;letter-spacing:-.02em}
.offers-device .offer-grid{grid-template-columns:repeat(3,1fr);gap:9px}
.offers-device .offer{padding:10px 8px;border-radius:12px;min-height:116px;display:flex;flex-direction:column;justify-content:flex-end}
.offers-device .offer .thumb{height:54px;margin-bottom:8px;border-radius:11px;position:relative;overflow:hidden}
.offers-device .offer .thumb:after{content:'';position:absolute;width:29px;height:29px;border-radius:50%;left:50%;top:50%;transform:translate(-50%,-50%);box-shadow:18px 6px 0 rgba(255,255,255,.24),-13px 5px 0 rgba(255,255,255,.18)}
.offers-device .thumb-1{background:linear-gradient(135deg,#e64337,#ff8b67)}
.offers-device .thumb-2{background:linear-gradient(135deg,#84bd30,#d8ed64)}
.offers-device .thumb-3{background:linear-gradient(135deg,#f1b986,#ffe3bc)}
.offers-device .thumb-4{background:linear-gradient(135deg,#3c6840,#9abb65)}
.offers-device .thumb-5{background:linear-gradient(135deg,#f0b83c,#f8e18b)}
.offers-device .thumb-6{background:linear-gradient(135deg,#69a63d,#c7e78b)}
.offers-device .offer b{font-size:13px;line-height:1.1}
.offers-device .offer small{font-size:11px;margin-top:4px;color:#14233b}
.device-top-badge{position:absolute;right:3%;top:-23px;z-index:2;display:flex;align-items:center;gap:7px;background:rgba(7,36,72,.92);border:1px solid rgba(118,200,0,.65);color:#b6f05a;padding:7px 12px;border-radius:999px;font-size:11px;font-weight:850;box-shadow:0 8px 25px rgba(0,0,0,.18)}
.badge-dot{width:8px;height:8px;border-radius:50%;background:var(--lhr-green);box-shadow:0 0 12px rgba(118,200,0,.7)}

/* Base común de ambos teléfonos */
.phone-v2{position:absolute;background:linear-gradient(145deg,#1a2330,#05080d 64%);border:2px solid rgba(255,255,255,.14);border-radius:37px;padding:8px;box-shadow:0 30px 58px rgba(0,0,0,.46);z-index:5}
.phone-v2:after{content:'';position:absolute;inset:2px;border-radius:34px;pointer-events:none;box-shadow:inset 0 0 0 1px rgba(255,255,255,.07)}
.phone-notch{position:absolute;top:10px;left:50%;transform:translateX(-50%);width:34%;height:17px;border-radius:0 0 12px 12px;background:#080c12;z-index:10}
.phone-screen-v2{height:100%;background:#f7f9fc;border-radius:28px;overflow:hidden;color:#10213c;position:relative}
.phone-status-v2{height:34px;display:flex;justify-content:space-between;align-items:flex-end;padding:0 15px 7px;font-size:9px;font-weight:800;background:#fff;color:#28384d}

/* Teléfono 1: cupón */
.coupon-phone-v2{width:29%;right:31%;bottom:7px;height:445px;transform:rotate(-.25deg);z-index:5}
.coupon-screen-v2{display:flex;flex-direction:column;padding-bottom:14px;background:linear-gradient(180deg,#fff,#f4f7fb)}
.coupon-card-v2{margin:12px 12px 0;background:linear-gradient(180deg,#e23c30,#a61d19);color:#fff;border-radius:15px;padding:20px 11px 16px;text-align:center;box-shadow:0 12px 24px rgba(170,25,20,.18)}
.coupon-card-v2 small{display:block;font-size:13px}
.coupon-card-v2 strong{display:block;font-size:48px;line-height:1;margin:8px 0 4px}
.coupon-off{font-size:10px;font-weight:900;letter-spacing:.04em}
.qr-v2{width:94px;height:94px;margin:15px auto 12px;border-width:8px;background-size:15px 15px}
.coupon-action{margin:12px auto 0;background:#071a33;color:#fff;font-size:10px;font-weight:800;padding:9px 14px;border-radius:8px}

/* Teléfono 2: SMS real desde entradas */
.sms-phone-v2{width:34%;right:-3%;bottom:-5px;height:492px;z-index:6;transform:rotate(.35deg)}
.sms-live-badge-v2{position:absolute;right:1px;top:-43px;z-index:12;display:flex;align-items:center;gap:7px;background:rgba(7,36,72,.96);border:1px solid rgba(118,200,0,.7);color:#b6f05a;padding:8px 12px;border-radius:999px;font-size:11px;font-weight:900;white-space:nowrap;box-shadow:0 10px 28px rgba(0,0,0,.2)}
.sms-screen-v2{background:linear-gradient(180deg,#fff 0,#f5f7fa 48px,#edf2f7 100%)}
.sms-carousel{height:calc(100% - 34px)}
.sms-message-v2{display:none;height:100%}
.sms-message-v2.active{display:flex;flex-direction:column;animation:lhrSmsFadeV2 .32s ease both}
.sms-appbar-v2{height:55px;display:flex;align-items:center;padding:8px 11px;background:#fff;border-bottom:1px solid #e0e6ee;position:relative}
.sms-back-v2{font-size:20px;color:#1a6cb9;line-height:1}
.sms-contact-v2{position:absolute;left:34px;right:34px;text-align:center;min-width:0}
.sms-contact-v2 strong{display:block;font-size:12px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.sms-contact-v2 small{display:block;font-size:8px;color:#8190a3;margin-top:2px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.sms-thread-v2{flex:1;min-height:0;padding:12px 11px 15px;display:flex;flex-direction:column;background:linear-gradient(180deg,#f6f8fb,#edf2f7)}
.sms-day-v2{text-align:center;font-size:8px;color:#8794a4;margin:0 0 12px}
.sms-bubble-v2{align-self:flex-start;max-width:92%;background:#e5eaf0;border-radius:17px 17px 17px 5px;padding:11px 12px;color:#14233b;font-size:10px;line-height:1.45;box-shadow:0 3px 10px rgba(30,50,80,.05);overflow-wrap:break-word;word-break:normal;hyphens:none}
.sms-greeting{display:block;margin-bottom:3px;font-weight:750}
.sms-body-v2{display:block;white-space:normal}
.sms-body-v2 br{display:block;content:'';margin-top:2px}
.sms-link-v2{display:inline-block;margin-top:7px;color:#066bc9;text-decoration:none;max-width:100%;overflow-wrap:anywhere;word-break:break-word;font-weight:700}
.sms-time-v2{display:block;align-self:flex-end;color:#8794a4;font-size:8px;margin:5px 7% 0 0}
.sms-reply-v2{align-self:flex-end;margin-top:16px;background:#b7eb8f;color:#17380c;border-radius:16px 16px 5px 16px;padding:8px 11px;font-size:9px;max-width:78%;box-shadow:0 2px 7px rgba(68,120,20,.08)}
.sms-pager{position:absolute;left:50%;bottom:8px;transform:translateX(-50%);display:flex;gap:4px;z-index:8}
.sms-page-dot{width:5px;height:5px;border-radius:50%;background:#c6ced8;transition:.2s ease}
.sms-page-dot.active{width:13px;border-radius:5px;background:var(--lhr-green)}

.pwa-badge-v2{position:absolute;right:31%;bottom:-28px;z-index:9;background:#0b2c58;border:1px solid rgba(255,255,255,.5);color:#fff;border-radius:14px;padding:10px 15px;font-weight:850;font-size:13px;box-shadow:0 10px 28px rgba(0,0,0,.22);white-space:nowrap}
@keyframes lhrSmsFadeV2{from{opacity:0;transform:translateY(5px)}to{opacity:1;transform:none}}

/* Hero equilibrado para que copy y dispositivos respiren */
.hero-copy{padding-right:6px}
.hero-copy .hero-desc{max-width:610px}
.hero-points{max-width:610px}

@media(max-width:1240px){
  .hero-grid{grid-template-columns:minmax(0,1fr) minmax(520px,.95fr)}
  .device-stage-v2{transform:scale(.94);transform-origin:center right;margin-left:-18px}
}
@media(max-width:1100px){
  .hero-grid{grid-template-columns:1fr;gap:22px}
  .hero{padding-bottom:78px}
  .hero-copy{max-width:760px}
  .device-stage-v2{width:min(760px,100%);min-height:590px;margin:0 auto;transform:none}
  .offers-device{width:70%;left:2%}
  .coupon-phone-v2{width:27%;right:31%}
  .sms-phone-v2{width:31%;right:1%}
  .pwa-badge-v2{right:33%}
}
@media(max-width:760px){
  .hero{padding:46px 0 64px}
  .device-stage-v2{min-height:520px;margin-top:10px}
  .offers-device{left:0;top:28px;width:78%}
  .offers-screen{min-height:360px;padding:14px}
  .offers-device .offer-grid{gap:6px}
  .offers-device .offer{min-height:92px;padding:7px}
  .offers-device .offer .thumb{height:39px}
  .offers-device .offer b{font-size:10px}.offers-device .offer small{font-size:9px}
  .coupon-phone-v2{height:354px;width:31%;right:32%;bottom:7px;border-radius:28px;padding:6px}
  .sms-phone-v2{height:390px;width:35%;right:0;bottom:0;border-radius:28px;padding:6px}
  .phone-screen-v2{border-radius:21px}.phone-v2:after{border-radius:25px}.phone-notch{top:8px;height:13px}
  .coupon-card-v2{padding:13px 7px 11px;margin:10px 8px 0}.coupon-card-v2 strong{font-size:37px}.coupon-card-v2 small{font-size:9px}.qr-v2{width:70px;height:70px;background-size:11px 11px;border-width:6px}.coupon-action{font-size:8px;padding:7px 9px}
  .sms-live-badge-v2{top:-34px;font-size:9px;padding:6px 9px}.sms-appbar-v2{height:47px}.sms-contact-v2 strong{font-size:10px}.sms-contact-v2 small{font-size:7px}.sms-thread-v2{padding:9px 8px 12px}.sms-bubble-v2{font-size:8px;padding:9px;max-width:94%}.sms-reply-v2{font-size:8px;margin-top:10px}.phone-status-v2{height:28px;font-size:7px;padding:0 11px 6px}
  .pwa-badge-v2{right:34%;bottom:-22px;font-size:10px;padding:8px 10px}
}
@media(max-width:520px){
  .device-stage-v2{min-height:465px;width:106%;margin-left:-3%}
  .offers-device{width:82%;left:-1%;top:18px}
  .offers-screen{min-height:325px;padding:11px}.offers-device .screen-title{font-size:13px}.offers-device .offer{min-height:79px}.offers-device .offer .thumb{height:31px;margin-bottom:5px}
  .coupon-phone-v2{height:305px;width:31%;right:34%;bottom:10px}
  .sms-phone-v2{height:338px;width:36%;right:0;bottom:3px}
  .coupon-card-v2 strong{font-size:30px}.qr-v2{width:57px;height:57px;background-size:9px 9px}.coupon-off{font-size:7px}
  .sms-day-v2{font-size:6px;margin-bottom:7px}.sms-bubble-v2{font-size:7px;line-height:1.36;padding:7px}.sms-reply-v2{font-size:7px;padding:6px 8px}.sms-time-v2{font-size:6px}.sms-appbar-v2{height:41px;padding:6px}.sms-contact-v2{left:25px;right:25px}.sms-contact-v2 strong{font-size:8px}.sms-contact-v2 small{font-size:6px}
  .device-top-badge{font-size:8px;top:-18px;padding:5px 8px}.sms-live-badge-v2{font-size:8px;top:-30px}.pwa-badge-v2{right:36%;font-size:8px;bottom:-18px}
}


/* ==========================================================
   v1.1.1 — Desktop Hero Composition Rebuild
   Más espacio real para los dispositivos, teléfonos separados,
   proporciones premium y lectura limpia del SMS.
   ========================================================== */
.hero > .lhr-wrap{width:min(1380px,94%)}
.hero{min-height:720px;padding:64px 0 60px}
.hero-grid{grid-template-columns:minmax(470px,.88fr) minmax(700px,1.12fr);gap:52px;align-items:center}
.hero-title-main{color:#fff!important}
.hero-accent{color:var(--lhr-green)!important}
.hero-copy{max-width:650px;padding-right:0}
.hero-copy .hero-desc,.hero-points{max-width:630px}

.device-stage-v2{min-height:610px;width:100%;max-width:760px;margin-left:auto;overflow:visible}
.device-stage-v2 .device-glow{inset:7% -10% -5% 4%;background:radial-gradient(circle at 57% 48%,rgba(22,111,218,.52),rgba(9,53,105,.24) 45%,transparent 73%)}

/* Panel de ofertas: grande, atrás y con presencia propia */
.offers-device{left:0;top:62px;width:66%;z-index:1;transform:rotate(.45deg)}
.offers-screen{min-height:455px;padding:20px 19px 22px}
.offers-device .offer-grid{gap:10px}
.offers-device .offer{min-height:120px}

/* Los teléfonos ya no se montan uno encima del otro. */
.coupon-phone-v2{width:23%;right:28%;bottom:30px;height:452px;transform:none;z-index:5}
.sms-phone-v2{width:27%;right:0;bottom:18px;height:500px;transform:none;z-index:6}
.phone-v2{border-radius:34px;padding:7px}
.phone-v2:after{border-radius:31px}
.phone-screen-v2{border-radius:27px}
.phone-notch{top:8px;height:16px;width:35%}

/* Cupón más limpio y proporcional */
.coupon-card-v2{margin:12px 10px 0;padding:19px 9px 15px}
.coupon-card-v2 strong{font-size:46px}
.qr-v2{width:88px;height:88px;margin:14px auto 11px;background-size:14px 14px}
.coupon-action{margin-top:11px}

/* SMS con más ancho útil y tipografía legible */
.sms-live-badge-v2{right:2px;top:-42px}
.sms-appbar-v2{height:58px}
.sms-contact-v2 strong{font-size:12px}
.sms-contact-v2 small{font-size:8px}
.sms-thread-v2{padding:14px 12px 17px}
.sms-day-v2{font-size:8px;margin-bottom:13px}
.sms-bubble-v2{max-width:94%;font-size:10.5px;line-height:1.48;padding:12px 12px;overflow-wrap:anywhere}
.sms-time-v2{font-size:8px;margin-top:6px}
.sms-reply-v2{font-size:9.5px;margin-top:16px;padding:8px 12px}
.sms-link-v2{font-size:9.5px}

/* Etiquetas fuera de los dispositivos para no tapar contenido */
.device-top-badge{right:5%;top:-22px}
.pwa-badge-v2{right:29%;bottom:-12px;z-index:10}

@media(max-width:1320px){
  .hero > .lhr-wrap{width:min(1240px,94%)}
  .hero-grid{grid-template-columns:minmax(430px,.9fr) minmax(620px,1.1fr);gap:34px}
  .device-stage-v2{max-width:690px;transform:scale(.96);transform-origin:center right}
}
@media(max-width:1140px){
  .hero-grid{grid-template-columns:1fr;gap:28px}
  .hero-copy{max-width:760px}
  .device-stage-v2{width:min(780px,100%);max-width:none;min-height:610px;margin:4px auto 0;transform:none}
  .offers-device{left:1%;width:66%}
  .coupon-phone-v2{width:23%;right:28%}
  .sms-phone-v2{width:27%;right:0}
  .pwa-badge-v2{right:29%}
}
@media(max-width:760px){
  .hero > .lhr-wrap{width:min(94%,680px)}
  .device-stage-v2{min-height:555px;width:100%;margin-top:8px}
  .offers-device{left:0;top:42px;width:72%}
  .offers-screen{min-height:390px}
  .coupon-phone-v2{width:27%;right:29%;bottom:24px;height:370px}
  .sms-phone-v2{width:31%;right:0;bottom:14px;height:410px}
  .pwa-badge-v2{right:30%;bottom:-10px}
}
@media(max-width:540px){
  .device-stage-v2{min-height:490px;width:106%;margin-left:-3%}
  .offers-device{top:28px;width:76%;left:-1%}
  .offers-screen{min-height:340px}
  .coupon-phone-v2{width:28%;right:31%;height:315px;bottom:30px}
  .sms-phone-v2{width:34%;right:0;height:350px;bottom:18px}
  .sms-live-badge-v2{top:-30px;font-size:8px;padding:5px 8px}
  .pwa-badge-v2{right:33%;bottom:-4px;font-size:8px;padding:7px 9px}
}


/* ==========================================================
   v1.2.0 — Separate Products / Animated SMS Campaign Block
   Hero limpio con un solo teléfono. LHR SMS vive en su bloque.
   ========================================================== */
/* Hero: panel de ofertas + un único teléfono de cupón */
.hero{min-height:690px}
.hero-grid{grid-template-columns:minmax(470px,.94fr) minmax(620px,1.06fr);gap:60px}
.device-stage-v2{max-width:690px;min-height:555px}
.offers-device{left:1%;top:50px;width:74%;z-index:1;transform:rotate(.35deg)}
.offers-screen{min-height:450px}
.coupon-phone-v2{width:28%;right:4%;bottom:28px;height:458px;z-index:5}
.device-top-badge{right:8%;top:-22px}
.pwa-badge-v2{right:5%;bottom:-10px}
/* SMS phone from old hero is intentionally hidden if cached markup survives */
.hero .sms-phone-v2,.hero .sms-live-badge-v2{display:none!important}

/* Independent SMS campaign section */
.sms-campaign-section{position:relative;overflow:hidden;background:radial-gradient(circle at 78% 20%,#124d8d 0,#082b56 34%,#061b38 68%,#04152d 100%);color:#fff;padding:86px 0 92px;isolation:isolate}
.sms-campaign-section:before{content:'';position:absolute;inset:0;background-image:linear-gradient(rgba(66,151,255,.07) 1px,transparent 1px),linear-gradient(90deg,rgba(66,151,255,.07) 1px,transparent 1px);background-size:48px 48px;mask-image:linear-gradient(90deg,transparent 2%,#000 28%,#000 100%);z-index:-3}
.sms-campaign-section:after{content:'';position:absolute;width:620px;height:620px;right:-130px;top:-180px;background:radial-gradient(circle,rgba(35,132,255,.23),transparent 67%);filter:blur(4px);z-index:-2;animation:lhrGlowPulse 7s ease-in-out infinite}
.sms-campaign-grid{display:grid;grid-template-columns:minmax(0,.92fr) minmax(560px,1.08fr);gap:64px;align-items:center}
.sms-campaign-copy{position:relative;z-index:4}
.sms-campaign-eyebrow{color:#41a4ff;font-weight:900;letter-spacing:.065em;text-transform:uppercase;font-size:13px;margin-bottom:15px}
.sms-campaign-copy h2{font-size:clamp(46px,5.2vw,72px);line-height:1.02;letter-spacing:-.035em;margin:0 0 22px;max-width:650px}
.sms-campaign-copy h2 .sms-blue{color:#2b8cff}
.sms-campaign-copy>p{color:#d9e8fa;font-size:19px;line-height:1.55;max-width:650px;margin:0 0 30px}
.sms-campaign-features{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin:0 0 22px}
.sms-campaign-feature{display:grid;grid-template-columns:48px 1fr;gap:12px;align-items:center;background:linear-gradient(145deg,rgba(255,255,255,.09),rgba(255,255,255,.045));border:1px solid rgba(91,167,255,.28);border-radius:15px;padding:14px 15px;min-height:82px;backdrop-filter:blur(7px);transition:.25s ease}
.sms-campaign-feature:hover{transform:translateY(-3px);border-color:rgba(80,167,255,.65);background:rgba(255,255,255,.11)}
.sms-campaign-feature .sicon{width:44px;height:44px;border-radius:12px;background:#1379e8;display:grid;place-items:center;font-size:20px;box-shadow:0 9px 25px rgba(0,98,215,.35)}
.sms-campaign-feature strong{display:block;font-size:16px;margin-bottom:3px}
.sms-campaign-feature small{display:block;color:#c9d9ed;line-height:1.35;font-size:12px}
.sms-segmentation-row{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:14px}
.sms-segment-card{border:1px solid rgba(91,167,255,.27);background:rgba(8,44,85,.72);border-radius:13px;padding:13px 15px;color:#dbe9f8;font-size:12px;line-height:1.42}
.sms-segment-card strong{display:block;color:#fff;margin-bottom:4px}
.sms-campaign-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:24px}
.sms-btn{display:inline-flex;align-items:center;justify-content:center;border-radius:999px;padding:13px 20px;text-decoration:none;font-weight:850;border:1px solid rgba(255,255,255,.6);color:#fff;background:rgba(3,20,42,.28);transition:.2s ease}
.sms-btn.primary{background:linear-gradient(90deg,#087be9,#2498ff);border-color:transparent;box-shadow:0 12px 30px rgba(0,117,230,.3)}
.sms-btn:hover{transform:translateY(-2px)}

.sms-campaign-visual{position:relative;min-height:610px;z-index:3}
.sms-orbit{position:absolute;inset:5% 0 0 0;border-radius:40px;background:linear-gradient(150deg,rgba(12,60,112,.58),rgba(4,25,55,.72));border:1px solid rgba(84,159,244,.14);overflow:hidden;box-shadow:inset 0 0 80px rgba(0,94,205,.08),0 30px 70px rgba(0,0,0,.18)}
.sms-orbit:before{content:'';position:absolute;inset:-30%;background:conic-gradient(from 0deg,transparent 0 33%,rgba(33,135,255,.17) 37%,transparent 43% 100%);animation:lhrRadarSpin 11s linear infinite}
.sms-orbit:after{content:'';position:absolute;left:-25%;right:-25%;top:48%;height:2px;background:linear-gradient(90deg,transparent,#26a4ff,transparent);box-shadow:0 0 18px #26a4ff;animation:lhrScanLine 5.5s ease-in-out infinite}
.sms-map-shape{position:absolute;left:7%;top:15%;width:60%;height:64%;opacity:.8;filter:drop-shadow(0 0 20px rgba(37,119,255,.12))}
.sms-zone{position:absolute;border-radius:18px;border:1px solid currentColor;opacity:.64;box-shadow:inset 0 0 30px currentColor;animation:lhrZonePulse 5s ease-in-out infinite}
.sms-zone.z1{left:11%;top:14%;width:39%;height:27%;color:#14d88a;background:rgba(20,216,138,.13);clip-path:polygon(12% 0,100% 10%,86% 100%,0 77%)}
.sms-zone.z2{left:43%;top:28%;width:34%;height:31%;color:#1d89ff;background:rgba(29,137,255,.12);clip-path:polygon(9% 0,100% 18%,84% 100%,0 82%);animation-delay:-1.5s}
.sms-zone.z3{left:12%;top:54%;width:45%;height:32%;color:#8266ff;background:rgba(130,102,255,.12);clip-path:polygon(8% 9%,100% 0,83% 100%,0 86%);animation-delay:-2.8s}
.sms-zone.z4{left:57%;top:60%;width:23%;height:26%;color:#ff9a24;background:rgba(255,154,36,.12);clip-path:polygon(12% 0,100% 12%,82% 100%,0 76%);animation-delay:-.7s}
.sms-node{position:absolute;width:10px;height:10px;border-radius:50%;background:#37a1ff;box-shadow:0 0 0 7px rgba(55,161,255,.13),0 0 24px #37a1ff;animation:lhrNodePulse 2.6s ease-in-out infinite}
.sms-node.n1{left:20%;top:28%}.sms-node.n2{left:50%;top:38%;animation-delay:-.8s}.sms-node.n3{left:28%;top:66%;animation-delay:-1.4s}.sms-node.n4{left:65%;top:62%;animation-delay:-2s}

.sms-zone-panel{position:absolute;left:-4%;top:13%;width:47%;background:rgba(4,24,50,.94);border:1px solid rgba(75,155,247,.38);border-radius:17px;padding:18px 18px 14px;box-shadow:0 24px 55px rgba(0,0,0,.28);backdrop-filter:blur(10px);z-index:5;animation:lhrFloatSlow 7s ease-in-out infinite}
.sms-zone-panel h3{font-size:14px;margin:0 0 12px;text-transform:uppercase;letter-spacing:.02em}
.sms-zone-row{display:grid;grid-template-columns:1fr auto auto;gap:11px;align-items:center;padding:10px 0;border-top:1px solid rgba(255,255,255,.08);font-size:11px}
.sms-zone-row:first-of-type{border-top:0}.sms-zone-name{display:flex;gap:8px;align-items:flex-start}.sms-zone-name i{width:7px;height:7px;border-radius:50%;margin-top:4px;background:#2d8cff}.sms-zone-row:nth-of-type(3) i{background:#1ed88a}.sms-zone-row:nth-of-type(4) i{background:#8a6aff}.sms-zone-row:nth-of-type(5) i{background:#ff9b2b}
.sms-zone-name b{display:block;font-size:11px}.sms-zone-name small{display:block;color:#91a7c2;font-size:8px;margin-top:2px}.sms-zone-row strong{font-size:15px}.sms-zone-row em{font-style:normal;font-weight:800;font-size:13px}
.sms-summary-panel{position:absolute;left:-4%;bottom:2%;width:66%;background:rgba(4,24,50,.95);border:1px solid rgba(75,155,247,.32);border-radius:17px;padding:16px;z-index:6;box-shadow:0 24px 55px rgba(0,0,0,.25);animation:lhrFloatSlow 8s ease-in-out infinite reverse}
.sms-summary-panel h3{font-size:12px;text-transform:uppercase;margin:0 0 10px}.sms-summary-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:8px}
.sms-stat{background:rgba(255,255,255,.045);border:1px solid rgba(255,255,255,.09);border-radius:10px;padding:10px 7px;text-align:center}.sms-stat strong{display:block;font-size:19px}.sms-stat small{display:block;color:#90a8c4;font-size:8px;margin-top:3px}

.sms-campaign-phone{position:absolute;right:1%;top:8%;width:31%;height:520px;background:#07111f;border:8px solid #06101d;border-radius:42px;padding:7px;box-shadow:0 28px 70px rgba(0,0,0,.48),0 0 0 1px rgba(255,255,255,.12);z-index:9;animation:lhrPhoneFloat 5.5s ease-in-out infinite}
.sms-campaign-phone:after{content:'';position:absolute;inset:4px;border:1px solid rgba(255,255,255,.16);border-radius:35px;pointer-events:none}.sms-campaign-phone .phone-notch{top:10px;height:18px;width:37%}
.sms-campaign-phone .phone-screen-v2{height:100%;border-radius:30px;overflow:hidden;position:relative;background:linear-gradient(180deg,#fff 0,#f3f7fb 48px,#eef3f8 100%)}
.sms-campaign-phone .phone-status-v2{height:34px}
.sms-campaign-phone .sms-carousel{height:calc(100% - 34px)}
.sms-campaign-phone .sms-appbar-v2{height:60px}
.sms-campaign-phone .sms-thread-v2{padding:15px 13px 18px}.sms-campaign-phone .sms-bubble-v2{font-size:11px;line-height:1.5}.sms-campaign-phone .sms-reply-v2{font-size:10px}
.sms-campaign-phone .sms-pager{bottom:10px}
.sms-phone-label{position:absolute;right:1%;top:1%;z-index:11;border:1px solid rgba(44,151,255,.55);background:rgba(5,33,67,.95);color:#7dc3ff;border-radius:999px;padding:8px 12px;font-size:11px;font-weight:900;box-shadow:0 10px 24px rgba(0,0,0,.18)}

@keyframes lhrRadarSpin{to{transform:rotate(360deg)}}
@keyframes lhrScanLine{0%,100%{transform:translateY(-170px);opacity:.2}50%{transform:translateY(175px);opacity:.95}}
@keyframes lhrGlowPulse{0%,100%{transform:scale(.92);opacity:.68}50%{transform:scale(1.08);opacity:1}}
@keyframes lhrZonePulse{0%,100%{opacity:.48;filter:saturate(.8)}50%{opacity:.85;filter:saturate(1.45)}}
@keyframes lhrNodePulse{0%,100%{transform:scale(.8);opacity:.6}50%{transform:scale(1.25);opacity:1}}
@keyframes lhrFloatSlow{0%,100%{transform:translateY(0)}50%{transform:translateY(-9px)}}
@keyframes lhrPhoneFloat{0%,100%{transform:translateY(0) rotate(.4deg)}50%{transform:translateY(-12px) rotate(-.35deg)}}

@media(max-width:1260px){
  .hero-grid{grid-template-columns:minmax(430px,.95fr) minmax(560px,1.05fr);gap:38px}
  .device-stage-v2{transform:scale(.96);transform-origin:center right}
  .sms-campaign-grid{grid-template-columns:minmax(0,.95fr) minmax(520px,1.05fr);gap:35px}.sms-campaign-visual{transform:scale(.94);transform-origin:center right}
}
@media(max-width:1080px){
  .hero-grid,.sms-campaign-grid{grid-template-columns:1fr}.device-stage-v2{width:min(760px,100%);margin:0 auto;transform:none}.sms-campaign-copy{max-width:760px}.sms-campaign-visual{width:min(820px,100%);margin:0 auto;transform:none}.sms-campaign-section{padding-top:72px}
}
@media(max-width:760px){
  .hero{min-height:0}.device-stage-v2{min-height:500px}.offers-device{width:79%;left:0;top:35px}.coupon-phone-v2{width:31%;right:0;height:380px;bottom:24px}.pwa-badge-v2{right:2%;bottom:-5px}
  .sms-campaign-copy h2{font-size:46px}.sms-campaign-copy>p{font-size:17px}.sms-campaign-features,.sms-segmentation-row{grid-template-columns:1fr}.sms-campaign-visual{min-height:560px}.sms-zone-panel{left:0;top:12%;width:54%}.sms-summary-panel{left:0;width:68%}.sms-campaign-phone{width:38%;height:470px;right:0}.sms-summary-grid{grid-template-columns:repeat(2,1fr)}
}
@media(max-width:520px){
  .sms-campaign-section{padding:62px 0 70px}.sms-campaign-copy h2{font-size:38px}.sms-campaign-visual{min-height:510px;width:108%;margin-left:-4%}.sms-zone-panel{width:58%;padding:13px}.sms-zone-row{gap:6px}.sms-zone-row strong{font-size:12px}.sms-zone-row em{font-size:10px}.sms-summary-panel{width:70%;padding:12px}.sms-stat strong{font-size:15px}.sms-campaign-phone{width:40%;height:420px;border-radius:34px;padding:6px}.sms-campaign-phone .phone-screen-v2{border-radius:24px}.sms-campaign-phone .sms-bubble-v2{font-size:8px;padding:8px}.sms-campaign-phone .sms-appbar-v2{height:48px}.sms-campaign-phone .sms-contact-v2 strong{font-size:9px}.sms-campaign-phone .sms-contact-v2 small{font-size:6px}.sms-phone-label{font-size:8px;padding:6px 8px}.sms-zone-name small{display:none}
}
@media(prefers-reduced-motion:reduce){.sms-campaign-section:after,.sms-orbit:before,.sms-orbit:after,.sms-zone,.sms-node,.sms-zone-panel,.sms-summary-panel,.sms-campaign-phone{animation:none!important}}


/* v1.2.1 — Device Proportion & SMS Visual Balance */
@media (min-width:1101px){
.hero{min-height:700px;padding:64px 0 62px}.hero>.lhr-wrap{width:min(1420px,94%)}
.hero-grid{grid-template-columns:minmax(500px,.92fr) minmax(700px,1.08fr);gap:58px;align-items:center}
.device-stage-v2{width:100%;max-width:790px;min-height:570px;margin-left:auto;overflow:visible;transform:none}
.offers-device{left:0;top:48px;width:72%;z-index:1;transform:rotate(.25deg)}.offers-screen{min-height:455px;padding:18px}
.offers-device .offer-grid{gap:10px}.offers-device .offer{min-height:118px}
.coupon-phone-v2{width:25%;height:470px;right:1%;bottom:25px;z-index:6;transform:none}
.device-top-badge{right:15%;top:-21px}.pwa-badge-v2{right:1.5%;bottom:-13px;z-index:10}
.sms-campaign-section{padding:82px 0 94px}.sms-campaign-section>.lhr-wrap{width:min(1420px,94%)}
.sms-campaign-grid{grid-template-columns:minmax(470px,.82fr) minmax(700px,1.18fr);gap:58px;align-items:center}
.sms-campaign-visual{min-height:640px}.sms-orbit{inset:4% 0 1%}.sms-map-shape{left:10%;top:13%;width:61%;height:69%}
.sms-zone-panel{left:1%;top:12%;width:43%;padding:18px}.sms-summary-panel{left:1%;bottom:4%;width:64%;padding:16px}
.sms-campaign-phone{right:0;top:5%;width:30%;height:565px;border-width:8px;border-radius:43px;padding:7px;z-index:10}
.sms-phone-label{right:0;top:-1%}.sms-campaign-phone .phone-screen-v2{border-radius:30px}.sms-campaign-phone .sms-appbar-v2{height:64px}
.sms-campaign-phone .sms-contact-v2 strong{font-size:13px}.sms-campaign-phone .sms-contact-v2 small{font-size:8.5px}
.sms-campaign-phone .sms-thread-v2{padding:16px 14px 20px}.sms-campaign-phone .sms-day-v2{font-size:8.5px;margin-bottom:14px}
.sms-campaign-phone .sms-bubble-v2{max-width:94%;font-size:11.5px;line-height:1.5;padding:13px}.sms-campaign-phone .sms-link-v2{font-size:10px}
.sms-campaign-phone .sms-time-v2{font-size:8px}.sms-campaign-phone .sms-reply-v2{font-size:10px;padding:9px 13px;margin-top:17px}
}
@media (min-width:1101px) and (max-width:1320px){
.hero-grid{grid-template-columns:minmax(450px,.9fr) minmax(620px,1.1fr);gap:38px}.device-stage-v2{max-width:700px;min-height:535px}
.offers-device{width:71%;top:45px}.coupon-phone-v2{width:26%;height:430px;right:0;bottom:26px}
.sms-campaign-grid{grid-template-columns:minmax(430px,.86fr) minmax(590px,1.14fr);gap:36px}.sms-campaign-visual{min-height:600px}
.sms-campaign-phone{width:31%;height:520px}.sms-zone-panel{width:44%}.sms-summary-panel{width:65%}}
@media (max-width:1100px){
.hero-grid{grid-template-columns:1fr;gap:28px}.device-stage-v2{width:min(760px,100%);min-height:560px;margin:0 auto;transform:none}
.offers-device{left:2%;top:42px;width:72%}.coupon-phone-v2{width:27%;height:430px;right:2%;bottom:25px}.pwa-badge-v2{right:2%;bottom:-12px}
.sms-campaign-grid{grid-template-columns:1fr;gap:42px}.sms-campaign-copy{max-width:760px}.sms-campaign-visual{width:min(780px,100%);min-height:620px;margin:0 auto}
.sms-zone-panel{left:1%;width:44%}.sms-summary-panel{left:1%;width:65%}.sms-campaign-phone{right:1%;width:30%;height:535px}}
@media (max-width:720px){
.device-stage-v2{min-height:470px;width:100%}.offers-device{left:0;top:28px;width:77%}.offers-screen{min-height:330px}
.coupon-phone-v2{width:31%;height:330px;right:0;bottom:25px}.device-top-badge{right:8%;top:-17px}.pwa-badge-v2{right:0;bottom:-8px}
.sms-campaign-visual{min-height:700px}.sms-orbit{inset:0}.sms-zone-panel{left:4%;top:6%;width:60%}.sms-summary-panel{left:4%;bottom:4%;width:92%}
.sms-campaign-phone{right:3%;top:24%;width:42%;height:430px}.sms-phone-label{right:3%;top:18%}}


/* ==========================================================
   v1.2.2 — Phone Proportions + Full Background Controls
   ========================================================== */
/* Teléfonos con proporción natural, evitando aspecto alargado */
.phone-v2,.sms-campaign-phone{box-sizing:border-box}
.coupon-phone-v2{height:auto!important;aspect-ratio:9/18.2;max-height:470px}
.sms-campaign-phone{height:auto!important;aspect-ratio:9/18.2;max-height:540px}
.coupon-phone-v2 .phone-screen-v2,.sms-campaign-phone .phone-screen-v2{height:100%}
.coupon-card-v2{min-height:0;padding:18px 12px 16px}
.coupon-card-v2 strong{font-size:clamp(38px,4.6vw,58px);line-height:1}
.qr-v2{width:min(92px,72%);height:auto;aspect-ratio:1/1;margin:14px auto}
.coupon-action{margin:12px auto 0}
.sms-campaign-phone .sms-carousel{height:calc(100% - 34px)}
.sms-campaign-phone .sms-message-v2{height:100%}
.sms-campaign-phone .sms-thread-v2{overflow:hidden}

@media (min-width:1101px){
  .device-stage-v2{min-height:540px}
  .coupon-phone-v2{width:25.5%;right:1.5%;bottom:28px;max-height:none}
  .sms-campaign-phone{width:29%;right:1.5%;top:7%;max-height:none}
  .sms-campaign-visual{min-height:590px}
}
@media (min-width:1101px) and (max-width:1320px){
  .coupon-phone-v2{width:27%}.sms-campaign-phone{width:30.5%}
}
@media (max-width:1100px){
  .coupon-phone-v2{width:28%;right:2%;bottom:26px;max-height:none}
  .sms-campaign-phone{width:31%;right:1%;max-height:none}
}
@media (max-width:720px){
  .coupon-phone-v2{width:34%;right:0;bottom:18px}
  .sms-campaign-phone{width:44%;right:2%;top:25%}
  .sms-campaign-visual{min-height:640px}
}

/* Soporte visual para fondos editables de todas las secciones */
body.lhr-bg-custom{background-color:var(--lhr-page-bg,#ffffff)}
.hero,.sms-campaign-section,.features-section,.solutions-section,.business-section,.cta,.site-footer,.site-header{background-size:cover!important;background-position:center!important;background-repeat:no-repeat!important}
.hero,.sms-campaign-section,.cta,.site-footer,.site-header{background-blend-mode:overlay}
.features-section,.solutions-section,.business-section{background-blend-mode:normal}


/* v1.2.3 — Ofertas de portada alimentadas por entradas con imagen */
.offers-device .offer.offer-dynamic{position:relative;text-decoration:none;color:inherit;overflow:hidden;justify-content:flex-start;transition:transform .2s ease,box-shadow .2s ease}
.offers-device a.offer.offer-dynamic:hover{transform:translateY(-2px);box-shadow:0 9px 22px rgba(11,37,69,.12)}
.offers-device .offer-photo{height:64px!important;background:#eef3f8!important;display:flex;align-items:center;justify-content:center}
.offers-device .offer-photo img{width:100%;height:100%;display:block;object-fit:cover;border-radius:inherit}
.offers-device .offer-no-image{font-size:28px;color:#9aabc0}
.offers-device .offer-dynamic b{margin-top:7px}
.offers-device .offer-price{display:flex;align-items:center;justify-content:center;gap:5px;font-weight:700}
.offers-device .offer-price del{font-size:9px;color:#8c98a8;font-weight:500}
.offers-device .offer-badge{position:absolute;top:7px;left:7px;z-index:2;background:#76c800;color:#fff;border-radius:999px;padding:3px 7px;font-size:7px;font-weight:800;box-shadow:0 3px 10px rgba(0,0,0,.14)}
.offers-device .offer-fallback{justify-content:flex-start}.offers-device .offer-fallback .thumb{display:flex;align-items:center;justify-content:center;background:#f3f6f9}.offers-device .offer-fallback .thumb span{font-size:34px;line-height:1}
@media(max-width:720px){.offers-device .offer-photo{height:42px!important}.offers-device .offer-badge{font-size:6px;padding:2px 5px}.offers-device .offer-fallback .thumb span{font-size:24px}}


/* v1.2.4 — Tablet con imagen completa / paquete */
.offers-screen{display:flex;flex-direction:column;overflow:hidden}
.offers-package-link{display:block;flex:1;min-height:0;text-decoration:none;border-radius:12px;overflow:hidden}
.offers-package-media{width:100%;height:100%;min-height:0;flex:1;border-radius:12px;overflow:hidden;background:#eef3f8;display:flex;align-items:center;justify-content:center}
.offers-package-media img{display:block;width:100%;height:100%;min-height:0}
.offers-package-media.fit-cover img{object-fit:cover}
.offers-package-media.fit-contain img{object-fit:contain;background:#fff}
.offers-device:has(.offers-package-media) .offers-screen{height:100%}
.offers-device:has(.offers-package-media) .offers-bezel{height:100%}
@media(min-width:1101px){.offers-device:has(.offers-package-media){height:520px}.offers-device:has(.offers-package-media) .offers-screen{min-height:0}.offers-package-media{min-height:420px}}
@media(max-width:1100px){.offers-device:has(.offers-package-media){height:470px}.offers-package-media{min-height:370px}}
@media(max-width:720px){.offers-device:has(.offers-package-media){height:360px}.offers-package-media{min-height:275px}.offers-device:has(.offers-package-media) .screen-title{margin-bottom:8px}}


/* v1.2.6 — Flyer completo en tablet */
.offers-device:has(.offers-package-media) .screen-title{flex:0 0 auto}
.offers-package-link{display:flex;flex:1;min-height:0}
.offers-package-media{position:relative;flex:1;min-height:0;border-radius:10px;background:#fff;overflow:hidden}
.offers-package-media img{width:100%;height:100%;display:block}
.offers-package-media.fit-contain img{object-fit:contain;object-position:center;background:#fff}
.offers-package-media.fit-cover img{object-fit:cover;object-position:center}
@media(min-width:1101px){
  .offers-device:has(.offers-package-media){height:520px}
  .offers-device:has(.offers-package-media) .offers-bezel,.offers-device:has(.offers-package-media) .offers-screen{height:100%}
  .offers-device:has(.offers-package-media) .offers-screen{display:flex;flex-direction:column;min-height:0;padding:16px}
  .offers-package-media{min-height:0;height:auto}
}

/* ==========================================================
   v1.2.6 — Flyer automático a pantalla completa en la tablet
   ========================================================== */
.offers-device:has(.offers-package-media) .offers-screen{
  padding:0!important;
  background:#fff;
  position:relative;
}
.offers-device:has(.offers-package-media) .screen-title{
  position:absolute!important;
  width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;
  overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important;
}
.offers-device:has(.offers-package-media) .offers-package-link,
.offers-device:has(.offers-package-media) .offers-package-media{
  width:100%!important;height:100%!important;min-height:100%!important;flex:1 1 100%!important;
  border-radius:12px!important;background:#fff!important;
}
.offers-device:has(.offers-package-media) .offers-package-media img{
  width:100%!important;height:100%!important;display:block!important;
  object-position:center center!important;
}
.offers-device:has(.offers-package-media) .offers-package-media.fit-contain img{object-fit:contain!important}
.offers-device:has(.offers-package-media) .offers-package-media.fit-cover img{object-fit:cover!important}
@media(min-width:1101px){
  .offers-device:has(.offers-package-media){height:520px!important}
  .offers-device:has(.offers-package-media) .offers-bezel,
  .offers-device:has(.offers-package-media) .offers-screen{height:100%!important;min-height:100%!important}
}
@media(max-width:1100px){
  .offers-device:has(.offers-package-media){height:470px!important}
  .offers-device:has(.offers-package-media) .offers-bezel,
  .offers-device:has(.offers-package-media) .offers-screen{height:100%!important}
}
@media(max-width:720px){
  .offers-device:has(.offers-package-media){height:360px!important}
}


/* ==========================================================
   v1.2.7 — Full Tablet Flyer Carousel
   ========================================================== */
.offers-device:has(.offers-flyer-carousel) .offers-screen{padding:0!important;overflow:hidden!important;background:#071426!important}
.offers-device:has(.offers-flyer-carousel) .screen-title{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}
.offers-device:has(.offers-flyer-carousel) .offers-bezel,.offers-device:has(.offers-flyer-carousel) .offers-screen{height:100%!important;min-height:100%!important}
.offers-flyer-carousel{position:absolute;inset:0;overflow:hidden;border-radius:12px;background:#071426}
.offers-flyer-slide{position:absolute;inset:0;display:block;opacity:0;visibility:hidden;transition:opacity .55s ease;pointer-events:none}
.offers-flyer-slide.active{opacity:1;visibility:visible;pointer-events:auto;z-index:2}
.offers-flyer-slide img{width:100%!important;height:100%!important;display:block!important;object-fit:cover!important;object-position:center center!important;border:0!important;border-radius:0!important}
.offers-flyer-dots{position:absolute;left:50%;bottom:10px;transform:translateX(-50%);z-index:6;display:flex;gap:7px;padding:6px 9px;border-radius:999px;background:rgba(4,19,38,.45);backdrop-filter:blur(8px)}
.offers-flyer-dot{width:8px;height:8px;border:0;border-radius:50%;padding:0;background:rgba(255,255,255,.55);cursor:pointer;box-shadow:none}
.offers-flyer-dot.active{background:var(--lhr-green);transform:scale(1.2)}
@media(min-width:1101px){.offers-device:has(.offers-flyer-carousel){height:520px!important}}
@media(max-width:1100px){.offers-device:has(.offers-flyer-carousel){height:470px!important}}
@media(max-width:720px){.offers-device:has(.offers-flyer-carousel){height:360px!important}.offers-flyer-dots{bottom:7px}}
@media(prefers-reduced-motion:reduce){.offers-flyer-slide{transition:none}}


/* ==========================================================
   v1.2.8 — Tablet Frame + Inset Flyer Carousel
   El flyer vive dentro de la pantalla, dejando marco visual
   para que el dispositivo conserve apariencia de tablet.
   ========================================================== */
.offers-device:has(.offers-flyer-carousel){
  background:linear-gradient(145deg,#111b2b,#050a12)!important;
  border:2px solid rgba(255,255,255,.12)!important;
  border-radius:30px!important;
  padding:12px!important;
  box-shadow:0 28px 70px rgba(0,0,0,.42),0 0 0 1px rgba(255,255,255,.06)!important;
}
.offers-device:has(.offers-flyer-carousel)::before{
  content:'';
  position:absolute;
  top:6px;
  left:50%;
  width:42px;
  height:5px;
  transform:translateX(-50%);
  border-radius:999px;
  background:rgba(255,255,255,.16);
  z-index:8;
}
.offers-device:has(.offers-flyer-carousel) .offers-bezel{
  height:100%!important;
  padding:0!important;
  border-radius:21px!important;
  overflow:hidden!important;
  background:#e9eef5!important;
}
.offers-device:has(.offers-flyer-carousel) .offers-screen{
  position:relative!important;
  height:100%!important;
  min-height:100%!important;
  padding:18px!important;
  border-radius:20px!important;
  overflow:hidden!important;
  background:linear-gradient(180deg,#f8fafc,#eef3f8)!important;
}
.offers-device:has(.offers-flyer-carousel) .offers-flyer-carousel{
  position:absolute!important;
  inset:18px!important;
  border-radius:14px!important;
  overflow:hidden!important;
  background:#dfe6ee!important;
  box-shadow:0 6px 18px rgba(11,37,69,.13), inset 0 0 0 1px rgba(11,37,69,.08)!important;
}
.offers-device:has(.offers-flyer-carousel) .offers-flyer-slide{
  border-radius:14px!important;
  overflow:hidden!important;
  background:#fff!important;
}
.offers-device:has(.offers-flyer-carousel) .offers-flyer-slide img{
  width:100%!important;
  height:100%!important;
  object-fit:cover!important;
  object-position:center center!important;
  border-radius:14px!important;
}
.offers-device:has(.offers-flyer-carousel) .offers-flyer-dots{
  bottom:8px!important;
}
@media(max-width:720px){
  .offers-device:has(.offers-flyer-carousel){padding:9px!important;border-radius:23px!important}
  .offers-device:has(.offers-flyer-carousel) .offers-bezel{border-radius:16px!important}
  .offers-device:has(.offers-flyer-carousel) .offers-screen{padding:12px!important;border-radius:15px!important}
  .offers-device:has(.offers-flyer-carousel) .offers-flyer-carousel{inset:12px!important;border-radius:10px!important}
  .offers-device:has(.offers-flyer-carousel) .offers-flyer-slide,
  .offers-device:has(.offers-flyer-carousel) .offers-flyer-slide img{border-radius:10px!important}
}


/* ==========================================================
   v1.2.9 — Smart Flyer Fit
   Muestra el flyer completo, centrado y legible sin recortar.
   Un fondo suave usa la misma imagen para llenar visualmente
   el espacio restante dentro de la pantalla de la tablet.
   ========================================================== */
.offers-device:has(.offers-flyer-carousel) .offers-flyer-carousel{
  inset:14px!important;
  background:#eef2f6!important;
}
.offers-device:has(.offers-flyer-carousel) .offers-flyer-slide{
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  background:#fff!important;
  isolation:isolate!important;
}
.offers-device:has(.offers-flyer-carousel) .offers-flyer-slide::before{
  content:'';
  position:absolute;
  inset:-16px;
  background-image:var(--flyer-image);
  background-size:cover;
  background-position:center;
  filter:blur(18px) saturate(.85);
  opacity:.22;
  transform:scale(1.08);
  z-index:-2;
}
.offers-device:has(.offers-flyer-carousel) .offers-flyer-slide::after{
  content:'';
  position:absolute;
  inset:0;
  background:rgba(255,255,255,.62);
  z-index:-1;
}
.offers-device:has(.offers-flyer-carousel) .offers-flyer-slide img{
  width:calc(100% - 16px)!important;
  height:calc(100% - 16px)!important;
  max-width:100%!important;
  max-height:100%!important;
  margin:auto!important;
  object-fit:contain!important;
  object-position:center center!important;
  border-radius:9px!important;
  box-shadow:0 5px 18px rgba(8,32,62,.12)!important;
  background:#fff!important;
}
.offers-device:has(.offers-flyer-carousel) .offers-flyer-slide.flyer-fit-cover img{
  width:100%!important;
  height:100%!important;
  object-fit:cover!important;
  border-radius:12px!important;
  box-shadow:none!important;
}
.offers-device:has(.offers-flyer-carousel) .offers-flyer-slide.flyer-fit-cover::before,
.offers-device:has(.offers-flyer-carousel) .offers-flyer-slide.flyer-fit-cover::after{
  display:none!important;
}
.offers-device:has(.offers-flyer-carousel) .offers-flyer-slide.flyer-fit-contain img{
  object-fit:contain!important;
}
.offers-device:has(.offers-flyer-carousel) .offers-flyer-slide.flyer-fit-contain::before{
  display:none!important;
}
.offers-device:has(.offers-flyer-carousel) .offers-flyer-slide.flyer-fit-contain::after{
  background:#fff!important;
}
@media(max-width:720px){
  .offers-device:has(.offers-flyer-carousel) .offers-flyer-carousel{inset:9px!important}
  .offers-device:has(.offers-flyer-carousel) .offers-flyer-slide img{width:calc(100% - 10px)!important;height:calc(100% - 10px)!important}
}


/* ==========================================================
   v1.2.10 — Full Flyer Visible / No Crop
   El flyer completo siempre permanece visible dentro de la
   pantalla. Se elimina el margen interno excesivo y se usa
   todo el espacio útil sin deformar ni recortar la imagen.
   ========================================================== */
.offers-device:has(.offers-flyer-carousel) .offers-flyer-carousel{
  inset:7px!important;
  background:#eef2f6!important;
}
.offers-device:has(.offers-flyer-carousel) .offers-flyer-slide{
  overflow:hidden!important;
  padding:0!important;
}
.offers-device:has(.offers-flyer-carousel) .offers-flyer-slide img,
.offers-device:has(.offers-flyer-carousel) .offers-flyer-slide.flyer-fit-smart img,
.offers-device:has(.offers-flyer-carousel) .offers-flyer-slide.flyer-fit-contain img{
  width:100%!important;
  height:100%!important;
  max-width:100%!important;
  max-height:100%!important;
  object-fit:contain!important;
  object-position:center center!important;
  margin:0!important;
  padding:0!important;
  border-radius:8px!important;
  box-shadow:none!important;
  background:transparent!important;
}
.offers-device:has(.offers-flyer-carousel) .offers-flyer-slide.flyer-fit-smart::before{
  display:block!important;
  inset:-20px!important;
  background-size:cover!important;
  background-position:center!important;
  filter:blur(20px) saturate(.8)!important;
  opacity:.18!important;
}
.offers-device:has(.offers-flyer-carousel) .offers-flyer-slide.flyer-fit-smart::after{
  display:block!important;
  background:rgba(255,255,255,.48)!important;
}
@media(max-width:720px){
  .offers-device:has(.offers-flyer-carousel) .offers-flyer-carousel{inset:5px!important}
  .offers-device:has(.offers-flyer-carousel) .offers-flyer-slide img{width:100%!important;height:100%!important}
}


/* ==========================================================
   v1.2.11 — True Landscape Tablet + Full Flyer Fit
   Tablet más horizontal y flyer 100% visible dentro del borde.
   Ningún modo puede recortar el flyer.
   ========================================================== */

/* La tablet recupera proporción horizontal tipo dispositivo real */
.offers-device:has(.offers-flyer-carousel){
  aspect-ratio: 16 / 10 !important;
  height:auto !important;
  min-height:0 !important;
  padding:11px !important;
  border-radius:30px !important;
  background:linear-gradient(145deg,#162237,#07111f 72%) !important;
  box-shadow:
    0 24px 55px rgba(0,0,0,.38),
    inset 0 0 0 1px rgba(255,255,255,.10) !important;
}
.offers-device:has(.offers-flyer-carousel) .offers-bezel{
  position:relative !important;
  width:100% !important;
  height:100% !important;
  min-height:0 !important;
  border-radius:21px !important;
  overflow:hidden !important;
  background:#eef2f5 !important;
  box-shadow:inset 0 0 0 1px rgba(6,26,48,.12) !important;
}
.offers-device:has(.offers-flyer-carousel) .offers-screen{
  position:absolute !important;
  inset:0 !important;
  width:100% !important;
  height:100% !important;
  min-height:0 !important;
  padding:10px !important;
  overflow:hidden !important;
  border-radius:21px !important;
  background:#f7f8f4 !important;
}
.offers-device:has(.offers-flyer-carousel) .offers-flyer-carousel{
  position:absolute !important;
  inset:10px !important;
  width:auto !important;
  height:auto !important;
  border-radius:14px !important;
  overflow:hidden !important;
  background:#f7f8f4 !important;
}

/* Cada flyer se centra y usa todo el espacio interior disponible */
.offers-device:has(.offers-flyer-carousel) .offers-flyer-slide{
  position:absolute !important;
  inset:0 !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  padding:0 !important;
  overflow:hidden !important;
  background:#f7f8f4 !important;
}

/* Regla definitiva: jamás recortar */
.offers-device:has(.offers-flyer-carousel) .offers-flyer-slide img,
.offers-device:has(.offers-flyer-carousel) .offers-flyer-slide.flyer-fit-smart img,
.offers-device:has(.offers-flyer-carousel) .offers-flyer-slide.flyer-fit-contain img,
.offers-device:has(.offers-flyer-carousel) .offers-flyer-slide.flyer-fit-cover img{
  display:block !important;
  width:100% !important;
  height:100% !important;
  max-width:100% !important;
  max-height:100% !important;
  object-fit:contain !important;
  object-position:center center !important;
  margin:0 !important;
  padding:0 !important;
  border:0 !important;
  border-radius:10px !important;
  box-shadow:none !important;
  background:#f7f8f4 !important;
}

/* Sin fondos borrosos que puedan dar sensación de recorte */
.offers-device:has(.offers-flyer-carousel) .offers-flyer-slide::before,
.offers-device:has(.offers-flyer-carousel) .offers-flyer-slide::after{
  display:none !important;
}

/* Dots dentro del borde, como en la referencia */
.offers-device:has(.offers-flyer-carousel) .offers-flyer-dots{
  bottom:12px !important;
  padding:5px 10px !important;
  background:rgba(3,33,29,.72) !important;
  backdrop-filter:blur(5px);
}

/* Ajuste de la composición del Hero */
@media (min-width:1101px){
  .device-stage-v2{max-width:840px !important;min-height:540px !important}
  .offers-device:has(.offers-flyer-carousel){
    left:0 !important;
    top:62px !important;
    width:76% !important;
  }
  .coupon-phone-v2{
    width:23.5% !important;
    height:410px !important;
    right:0 !important;
    bottom:42px !important;
  }
  .device-top-badge{right:17% !important;top:23px !important}
  .pwa-badge-v2{right:0 !important;bottom:8px !important}
}
@media (min-width:1101px) and (max-width:1320px){
  .device-stage-v2{max-width:740px !important;min-height:500px !important}
  .offers-device:has(.offers-flyer-carousel){width:75% !important;top:58px !important}
  .coupon-phone-v2{width:24% !important;height:390px !important;bottom:38px !important}
}
@media (max-width:1100px){
  .offers-device:has(.offers-flyer-carousel){
    width:76% !important;
    left:0 !important;
    top:48px !important;
  }
  .coupon-phone-v2{
    width:24% !important;
    height:400px !important;
    right:0 !important;
    bottom:36px !important;
  }
}
@media (max-width:720px){
  .device-stage-v2{min-height:420px !important}
  .offers-device:has(.offers-flyer-carousel){
    width:76% !important;
    top:36px !important;
    padding:7px !important;
    border-radius:20px !important;
  }
  .offers-device:has(.offers-flyer-carousel) .offers-screen{padding:6px !important}
  .offers-device:has(.offers-flyer-carousel) .offers-flyer-carousel{inset:6px !important}
  .coupon-phone-v2{width:27% !important;height:300px !important;bottom:30px !important}
  .offers-device:has(.offers-flyer-carousel) .offers-flyer-dots{bottom:7px !important}
}


/* v1.2.12 — Menú / accesos rápidos editables */
.main-nav .lhr-quick-access{flex:0 0 auto}
.main-nav .lhr-quick-access a{white-space:nowrap}
.main-nav .lhr-quick-access .lhr-nav-img{width:18px;height:18px;object-fit:contain;border-radius:4px}
.main-nav .lhr-quick-access .dashicons{font-size:18px;width:18px;height:18px}
.main-nav .lhr-quick-access .lhr-nav-emoji{line-height:1}


/* v1.2.15 — Footer completamente editable */
.footer-custom-logo{display:block;max-width:180px;max-height:72px;width:auto;height:auto;object-fit:contain;margin-bottom:18px}
.footer-brand-col p{max-width:390px}
.footer-links-col a,.footer-contact-col a{display:block;color:inherit;text-decoration:none;margin:0 0 10px;transition:opacity .2s ease,color .2s ease}
.footer-links-col a:hover,.footer-contact-col a:hover{color:var(--lhr-green);opacity:1}
.footer-contact-col{min-width:0}
.footer-contact-col a{overflow-wrap:anywhere}
@media(max-width:720px){.footer-custom-logo{max-width:150px}.footer-grid{gap:28px}}

/* v1.2.16 — Final clean footer */
.site-footer .footer-grid{grid-template-columns:1.55fr .9fr 1fr;gap:48px}
.site-footer .brand-mark{letter-spacing:-2px}
.footer-whatsapp{display:flex!important;align-items:center;gap:9px}
.footer-wa-icon{width:22px;height:22px;border-radius:50%;background:#25D366;color:#fff;display:inline-grid;place-items:center;font-size:12px;line-height:1;flex:0 0 auto;box-shadow:0 0 0 2px rgba(37,211,102,.14)}
@media(max-width:980px){.site-footer .footer-grid{grid-template-columns:1fr 1fr}}
@media(max-width:600px){.site-footer .footer-grid{grid-template-columns:1fr;gap:26px}}
