*{box-sizing:border-box}
:root{--brand-primary:#050505;--brand-secondary:#d9141c;--paper:#fff;--bg:#f2f3f4;--ink:#090909;--muted:#606060;--radius:24px}
html{scroll-behavior:smooth}
html{font-size:calc(16px * var(--landing-scale,1))}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--landing-font,Inter,ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif);line-height:1.5}
button,a,input,textarea{font:inherit}a{text-decoration:none;color:inherit}img{max-width:100%;display:block}
.landing-header{height:78px;padding:0 max(24px,calc((100vw - 1180px)/2));display:flex;align-items:center;background:#fff;border-bottom:1px solid #e5e5e5;position:sticky;top:0;z-index:30}
.landing-brand{display:flex;align-items:center;gap:11px;min-width:max-content}.landing-brand img{width:46px;height:46px;object-fit:contain}.landing-brand strong,.landing-brand small{display:block}.landing-brand strong{font-size:1rem}.landing-brand small{font-size:.76rem;color:#666;margin-top:2px}
.landing-btn{border:0;border-radius:999px;padding:13px 20px;display:inline-flex;align-items:center;justify-content:center;font-weight:850;cursor:pointer;transition:.2s transform,.2s box-shadow}.landing-btn:hover{transform:translateY(-2px);box-shadow:0 8px 24px #0002}
.landing-btn-primary{background:var(--brand-secondary);color:#fff}.landing-btn-outline{background:#fff;color:#111;border:2px solid #111}.landing-btn-whatsapp{background:#20a45b;color:#fff}.landing-btn-light{background:#fff;color:#111}
.landing-hero{min-height:680px;background:#202020;display:flex;align-items:center;color:#fff;padding:92px max(26px,calc((100vw - 1180px)/2));position:relative;overflow:hidden}.landing-cover-image{position:absolute;inset:0;width:100%;height:100%!important;object-fit:cover;object-position:center;z-index:0}.landing-cover-overlay{position:absolute;inset:0;background:var(--hero-overlay);z-index:1;pointer-events:none}.landing-hero .hero-copy{position:relative;z-index:2}
.hero-copy{max-width:760px;background:rgba(0,0,0,.16);padding:26px 0}.hero-label,.section-title span,.process-copy>span,.detail-copy>span,.landing-closing span{font-size:.78rem;font-weight:900;letter-spacing:.15em;color:var(--brand-secondary)}
.hero-copy h1{font-size:clamp(3rem,6.6vw,6.2rem);line-height:.92;letter-spacing:-.055em;margin:18px 0 24px;max-width:900px}.hero-copy>p{font-size:1.15rem;line-height:1.65;color:#f4f4f4;max-width:650px;margin:0}
.hero-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:30px}.hero-meta{display:flex;gap:20px;flex-wrap:wrap;margin-top:30px;font-size:.86rem;color:#f1f1f1}
.trust-strip{min-height:88px;padding:22px max(26px,calc((100vw - 1180px)/2));display:flex;align-items:center;gap:18px;flex-wrap:wrap;border-bottom:1px solid #ddd;background:#fff;font-size:.88rem}.trust-strip strong{margin-right:auto}.trust-strip i{width:5px;height:5px;background:var(--brand-secondary);border-radius:50%}
.landing-section{padding:105px max(26px,calc((100vw - 1180px)/2))}
.section-title{display:grid;grid-template-columns:minmax(0,1fr) minmax(320px,.8fr);gap:55px;align-items:end;margin-bottom:48px}.section-title h2,.landing-process h2,.detail-feature h2,.landing-closing h2{font-size:clamp(2.15rem,4.4vw,4.5rem);line-height:.98;letter-spacing:-.045em;margin:12px 0 0}.section-title>p{font-size:1.02rem;line-height:1.72;color:#444;margin:0}.section-title.compact{grid-template-columns:1fr;margin-bottom:35px}
.service-layout{display:grid;grid-template-columns:minmax(0,.92fr) minmax(0,1.08fr);gap:24px;align-items:stretch}.editorial-photo{margin:0;position:relative;border-radius:var(--radius);overflow:hidden;min-height:550px;background:#ddd}.editorial-photo img{width:100%;height:100%;object-fit:cover}.editorial-photo figcaption{position:absolute;left:20px;bottom:18px;background:#fff;color:#111;padding:9px 13px;border-radius:999px;font-size:.8rem;font-weight:800}
.service-grid{display:grid;grid-template-columns:1fr;gap:14px}.service-grid article{border:2px solid #d2d2d2;border-radius:18px;padding:26px;background:#fff;display:grid;grid-template-columns:58px 1fr;grid-template-areas:"num title" "num text";column-gap:18px;align-content:center}.service-grid b{grid-area:num;width:44px;height:44px;border-radius:50%;display:grid;place-items:center;background:color-mix(in srgb,var(--brand-secondary) 11%,white);color:var(--brand-secondary);font-size:.8rem}.service-grid h3{grid-area:title;font-size:1.3rem;margin:0 0 7px}.service-grid p{grid-area:text;color:#555;line-height:1.62;margin:0}
.landing-process{padding:100px max(26px,calc((100vw - 1180px)/2));background:#f2f3f4;display:grid;grid-template-columns:minmax(320px,.8fr) minmax(0,1.2fr);gap:70px;align-items:start}.process-copy{position:sticky;top:115px}.process-copy>p{line-height:1.72;color:#444;max-width:520px}.process-steps{display:grid;gap:16px}.process-steps article{display:grid;grid-template-columns:58px minmax(0,1fr);gap:20px;padding:25px;border:2px solid #cacaca;border-radius:18px;background:#fff;align-items:start}.process-steps em{font-style:normal;width:46px;height:46px;border-radius:50%;display:grid;place-items:center;background:var(--brand-primary);color:#fff;font-weight:900}.process-steps h3{margin:1px 0 7px;font-size:1.18rem}.process-steps p{margin:0;color:#555;line-height:1.6;max-width:620px}
.detail-feature{padding:0 max(26px,calc((100vw - 1180px)/2)) 105px;display:grid;grid-template-columns:1.05fr .95fr;gap:0;background:#fff}.detail-feature figure{margin:0;min-height:620px;border-radius:24px 0 0 24px;overflow:hidden;background:#ddd}.detail-feature figure img{width:100%;height:100%;object-fit:cover}.detail-copy{background:var(--brand-primary);color:#fff;border-radius:0 24px 24px 0;padding:58px 52px;display:flex;flex-direction:column;justify-content:center}.detail-copy>span{color:var(--brand-secondary)}.detail-copy h2{color:#fff}.detail-intro{color:#ddd;line-height:1.7;font-size:1rem}.detail-points{margin-top:16px}.detail-points p{display:grid;grid-template-columns:38px 1fr;gap:13px;align-items:start;border-top:1px solid #ffffff30;padding:17px 0;margin:0}.detail-points b{color:var(--brand-secondary);font-size:.79rem}.detail-points span{line-height:1.55;color:#f4f4f4}
.faq{background:#f7f7f7}.faq-list{max-width:900px;margin-left:auto}.faq details{border-bottom:2px solid #ccc;padding:20px 3px}.faq summary{font-weight:850;cursor:pointer;font-size:1.06rem}.faq details p{color:#555;line-height:1.65}
.landing-closing{min-height:540px;background:#202020;display:grid;place-items:center;text-align:center;color:#fff;padding:80px 24px;position:relative;overflow:hidden}.landing-closing .landing-cover-overlay{background:var(--closing-overlay)}.landing-closing .closing-inner{position:relative;z-index:2}.closing-inner{max-width:850px}.landing-closing>span,.landing-closing span{color:#fff}.landing-closing h2{font-size:clamp(2.8rem,6vw,5.4rem);color:#fff}.landing-closing p{font-size:1.1rem;color:#f2f2f2}.landing-closing .hero-actions{justify-content:center}
.landing-footer{min-height:105px;padding:24px max(26px,calc((100vw - 1180px)/2));background:#0a0a0a;color:#fff;display:flex;align-items:center;gap:25px;justify-content:space-between;font-size:.82rem}.footer-brand strong{color:#fff}.footer-brand small{color:#bbb}
.floating-stack{position:fixed;right:18px;bottom:92px;z-index:25;display:grid;gap:9px}.landing-floating{border:0;border-radius:999px;padding:13px 18px;font-weight:900;box-shadow:0 10px 25px #0003;cursor:pointer;text-align:center}.landing-floating.whatsapp{background:#20a45b;color:#fff}.landing-floating.quote{background:var(--brand-secondary);color:#fff}
.lead-dialog{border:0;border-radius:18px;padding:0;width:min(500px,calc(100% - 28px));box-shadow:0 28px 80px #0007}.lead-dialog::backdrop{background:#0009}.lead-dialog form{padding:25px}.lead-head{display:flex;justify-content:space-between;gap:20px;border-bottom:2px solid #ddd;padding-bottom:14px}.lead-head span{font-size:.72rem;font-weight:900;letter-spacing:.12em;color:var(--brand-secondary)}.lead-head h2{margin:4px 0 0}.lead-head button{border:0;background:#eee;width:36px;height:36px;border-radius:50%;font-size:1.4rem;cursor:pointer}.lead-intro{color:#555;line-height:1.5}.lead-dialog label{display:grid;gap:6px;margin:14px 0;font-weight:800;font-size:.85rem}.lead-dialog input,.lead-dialog textarea{border:2px solid #888;border-radius:9px;padding:11px 12px;font-weight:500;outline:none}.lead-dialog input:focus,.lead-dialog textarea:focus{border-color:var(--brand-secondary);box-shadow:0 0 0 3px color-mix(in srgb,var(--brand-secondary) 15%,transparent)}.lead-submit{width:100%;margin-top:8px}.lead-dialog small{display:block;color:#666;margin-top:9px;text-align:center}.lead-status{font-size:.86rem;font-weight:700;min-height:21px;color:#a00000}
@media(max-width:950px){.section-title,.service-layout,.landing-process,.detail-feature{grid-template-columns:1fr}.process-copy{position:static}.editorial-photo{min-height:420px}.detail-feature{padding:0 22px 80px}.detail-feature figure{min-height:430px;border-radius:20px 20px 0 0}.detail-copy{border-radius:0 0 20px 20px;padding:42px 30px}.landing-section,.landing-process{padding:75px 22px}.trust-strip{padding:20px 22px}.landing-footer{padding:25px 18px;flex-direction:column;text-align:center}}
@media(max-width:620px){.landing-header{height:68px;padding:0 15px}.landing-brand img{width:40px;height:40px}.landing-hero{min-height:620px;padding:72px 20px}.hero-copy h1{font-size:3rem}.hero-copy>p{font-size:1.03rem}.hero-actions{flex-direction:column}.hero-actions .landing-btn{width:100%}.hero-meta{display:grid;gap:8px}.section-title{gap:22px}.section-title h2,.landing-process h2,.detail-feature h2{font-size:2.35rem}.service-grid article{grid-template-columns:48px 1fr;padding:21px}.editorial-photo{min-height:340px}.process-steps article{grid-template-columns:48px 1fr;padding:20px}.process-steps em{width:42px;height:42px}.detail-copy{padding:34px 22px}.landing-closing{min-height:500px}.landing-closing h2{font-size:3rem}.floating-stack{right:12px;bottom:12px}.landing-floating{padding:12px 16px}.trust-strip strong{width:100%;margin-right:0}}


/* v24: variantes globales y rendimiento */
main{display:flex;flex-direction:column}
.landing-hero{order:1}.trust-strip{order:2}.block-services{order:3}.block-process{order:4}.block-details{order:5}.block-faq{order:6}.block-closing{order:7}

/* Un bloque central usa el color principal para dar variedad visual. */
.block-process{background:var(--brand-primary);color:#fff}
.block-process .process-copy>p{color:#eee}
.block-process .process-copy>span{color:var(--brand-secondary)}
.block-process .process-steps article{background:#fff;color:#111;border-color:#ffffff66}
.block-process .process-steps p{color:#4b4b4b}
.block-process .process-steps em{background:var(--brand-secondary)}

/* Diferencias visuales reales entre los tres acomodos */
.layout_b .service-layout{grid-template-columns:1.08fr .92fr}
.layout_b .editorial-photo{order:2}
.layout_b .service-grid{order:1}
.layout_c .detail-feature{grid-template-columns:.88fr 1.12fr;padding-top:90px}
.layout_c .detail-feature figure{order:2;border-radius:0 24px 24px 0}
.layout_c .detail-copy{order:1;border-radius:24px 0 0 24px}
.layout_c .service-layout{grid-template-columns:1fr}
.layout_c .editorial-photo{min-height:420px}
.layout_c .service-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
.layout_c .service-grid article{grid-template-columns:1fr;grid-template-areas:"num" "title" "text"}

/* PageSpeed: evita renderizar contenido fuera de pantalla hasta que se aproxima. */
.block-services,.block-process,.block-details,.block-faq,.block-closing{content-visibility:auto;contain-intrinsic-size:800px}
img{height:auto}
@media(max-width:860px){
  .layout_b .service-layout,.layout_c .detail-feature,.layout_c .service-grid{grid-template-columns:1fr}
  .layout_b .editorial-photo,.layout_b .service-grid,.layout_c .detail-feature figure,.layout_c .detail-copy{order:initial}
  .layout_c .detail-feature figure,.layout_c .detail-copy{border-radius:20px}
}


/* v25: logo flotante, hero a tope y controles flotantes */
.landing-header{display:none!important}
.floating-brand{
  position:absolute;top:18px;left:max(20px,calc((100vw - 1180px)/2));
  z-index:40;display:flex;align-items:center;gap:10px;color:#fff;
  background:rgba(0,0,0,.44);border:1px solid rgba(255,255,255,.22);
  border-radius:999px;padding:7px 14px 7px 8px;
  box-shadow:0 8px 28px rgba(0,0,0,.18)
}
.floating-brand img{width:48px;height:48px;object-fit:contain;border-radius:50%}
.floating-brand span{font-weight:850;font-size:.94rem;text-shadow:0 1px 3px #000}
.landing-hero{min-height:720px;padding-top:118px}
.hero-actions{display:none!important}

/* Más aire entre el bloque superior y "Antes de mover..." */
.block-details{margin-top:48px}
.layout_b .block-details,.layout_c .block-details{margin-top:58px}

/* Footer de marca un poco más discreto */
.landing-footer{font-size:.88rem}
.landing-footer>span:last-child{font-size:.84rem;opacity:.82}

/* Flotantes de escritorio */
.floating-stack{
  position:fixed;right:20px;bottom:92px;z-index:55;
  display:flex;flex-direction:column;gap:9px
}
.landing-floating{
  min-width:138px;min-height:48px;border-radius:999px;border:0;
  display:flex;align-items:center;justify-content:center;gap:8px;
  padding:10px 16px;font-weight:850;box-shadow:0 10px 26px rgba(0,0,0,.18)
}
.landing-floating.whatsapp{background:#20a45b;color:#fff}
.landing-floating.quote{background:var(--brand-secondary);color:#fff}
.floating-icon{font-size:1.15em;line-height:1}

/* En móvil se convierten en una barra fija inferior siempre visible. */
@media(max-width:700px){
  body{padding-bottom:68px}
  .floating-brand{
    top:12px;left:12px;padding:5px 11px 5px 6px;
    max-width:calc(100vw - 24px)
  }
  .floating-brand img{width:40px;height:40px}
  .floating-brand span{font-size:.84rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
  .landing-hero{padding-top:92px;min-height:640px}
  .floating-stack{
    left:0;right:0;bottom:0;display:grid;grid-template-columns:1fr 1fr;
    gap:1px;background:#fff;padding:0;box-shadow:0 -5px 24px rgba(0,0,0,.16)
  }
  .landing-floating{
    border-radius:0;min-width:0;min-height:58px;padding:7px 8px;
    flex-direction:column;gap:1px;box-shadow:none;font-size:.86rem
  }
  .landing-floating.whatsapp{background:#19a956}
  .landing-floating.quote{background:var(--brand-secondary)}
  .floating-icon{font-size:1.2rem}
  .block-details{margin-top:34px}
  .landing-footer{padding-bottom:82px}
}

/* v26 · WhatsApp visual */
.whatsapp-svg{display:inline-grid;place-items:center;width:22px;height:22px}
.whatsapp-svg svg{width:100%;height:100%;display:block}

.whatsapp-dialog{
  overflow:hidden;
  border-radius:18px;
  background:#efeae2;
  border:1px solid #cfc9bf;
}
.whatsapp-dialog::backdrop{background:rgba(11,20,26,.72)}
.whatsapp-dialog form{padding:0 0 18px;background:#efeae2}
.whatsapp-head{
  display:flex;
  align-items:center;
  justify-content:flex-start;
  gap:12px;
  padding:14px 16px;
  border:0;
  background:#075e54;
  color:#fff
}
.whatsapp-head>div:nth-child(2){flex:1}
.whatsapp-head span{color:#d9fdd3!important;letter-spacing:.06em}
.whatsapp-head h2{color:#fff;font-size:1.12rem;margin:1px 0 0}
.whatsapp-head button{
  background:transparent!important;
  color:#fff;
  font-size:1.55rem;
  margin-left:auto
}
.wa-avatar{
  flex:0 0 42px;
  width:42px;height:42px;
  border-radius:50%;
  display:grid;place-items:center;
  background:#25d366;color:#fff
}
.wa-avatar .whatsapp-svg{width:28px;height:28px}
.whatsapp-dialog .lead-intro{
  margin:14px 16px 8px;
  background:#fff;
  border-radius:0 10px 10px 10px;
  padding:10px 12px;
  color:#303030;
  box-shadow:0 1px 1px rgba(0,0,0,.08);
  width:fit-content;
  max-width:88%
}
.whatsapp-dialog label{margin:12px 16px;color:#3b4a54;font-size:.8rem}
.whatsapp-dialog input,
.whatsapp-dialog textarea{
  background:#fff;
  border:1.5px solid #d0d7da;
  border-radius:10px;
  color:#111b21
}
.whatsapp-dialog input:focus,
.whatsapp-dialog textarea:focus{
  border-color:#25d366;
  box-shadow:0 0 0 3px rgba(37,211,102,.13)
}
.whatsapp-dialog .lead-status{margin:0 16px}
.whatsapp-dialog .lead-submit{
  display:flex;
  width:calc(100% - 32px);
  margin:10px 16px 0;
  background:#25d366;
  color:#071f13;
  border-radius:999px;
  font-weight:900
}
.whatsapp-dialog>form>small{
  margin:8px 16px 0;
  color:#667781
}
@media(max-width:700px){
  .floating-stack{bottom:0} /* móvil sigue pegado a la base */
  .whatsapp-dialog{width:min(520px,calc(100% - 18px))}
}

/* v27 · alineación configurable del copy del banner */
.hero-align-left{justify-content:flex-start}
.hero-align-center{justify-content:center;text-align:center}
.hero-align-center .hero-copy{margin-inline:auto}
.hero-align-center .hero-copy>p{margin-inline:auto}
.hero-align-center .hero-meta{justify-content:center}
.hero-align-right{justify-content:flex-end;text-align:right}
.hero-align-right .hero-copy{margin-left:auto}
.hero-align-right .hero-copy>p{margin-left:auto}
.hero-align-right .hero-meta{justify-content:flex-end}

/* v28 · ajuste final de botones flotantes en escritorio */
@media(min-width:701px){
  .floating-stack{bottom:68px}
  .landing-floating{
    min-width:126px;
    min-height:43px;
    padding:8px 14px;
    font-size:.82rem
  }
  .floating-icon{font-size:1.05rem}
  .whatsapp-svg{width:20px;height:20px}
}
/* v30 navegación y bloques adicionales */
.landing-site-menu{position:fixed;z-index:35;top:18px;left:50%;transform:translateX(-50%);display:flex;gap:6px;max-width:min(68vw,820px);padding:6px;background:rgba(255,255,255,.92);backdrop-filter:blur(12px);border:1px solid rgba(20,20,20,.1);border-radius:999px;box-shadow:0 8px 28px rgba(0,0,0,.08);overflow:auto}.landing-site-menu a{white-space:nowrap;text-decoration:none;color:var(--ink);font-weight:700;font-size:.82rem;padding:8px 12px;border-radius:999px}.landing-site-menu a.active{background:var(--brand-primary);color:#fff}.block-extra-content{padding-top:70px;padding-bottom:70px}.block-extra-content .section-title{max-width:950px;margin:auto}.block-extra-content .section-title p{white-space:pre-line}
@media(max-width:760px){.landing-site-menu{top:82px;left:12px;right:12px;transform:none;max-width:none}.landing-hero{padding-top:150px}}

/* v31 · el orden de los bloques lo define Settings, no CSS */
main>section{order:initial!important}
.hero-copy .hero-heading{font-size:clamp(3rem,6.6vw,6.2rem);line-height:.92;letter-spacing:-.055em;margin:18px 0 24px;max-width:900px;color:#fff;font-weight:800}
input,textarea,select,button{font-family:inherit!important}
.block-extra-content{border-top:1px solid #e5e5e5;border-bottom:1px solid #e5e5e5;background:#fff}
@media(max-width:620px){.hero-copy .hero-heading{font-size:3rem}}

/* v34: cuarto acomodo Premium para variar negocios del mismo giro */
.layout_d .landing-hero{min-height:780px;text-align:center;justify-content:center}.layout_d .hero-copy{max-width:900px}.layout_d .hero-meta{justify-content:center}.layout_d .service-editorial{background:#0f0f10;color:#fff}.layout_d .service-editorial .section-title p,.layout_d .service-grid p{color:#d6d6d8}.layout_d .service-grid article{border-color:#ffffff38}.layout_d .service-grid h3{color:#fff}.layout_d .detail-feature{padding-top:80px}.layout_d .detail-feature figure,.layout_d .detail-copy{border-radius:24px}.layout_d .detail-feature{gap:18px}

/* v35 · Cambio de Diseño: conserva contenido y orden, transforma la presentación */
.layout_a .landing-section,.layout_a .landing-process{background:#fbfaf8}
.layout_a .section-title h2,.layout_a .process-copy h2,.layout_a .detail-copy h2{font-family:Georgia,"Times New Roman",serif;letter-spacing:-.025em}
.layout_a .service-grid article,.layout_a .process-steps article,.layout_a .detail-copy{border-radius:28px;border-width:1px;box-shadow:0 16px 45px rgba(28,23,18,.06)}
.layout_a .trust-strip{background:#efe9df;color:#29231f}
.layout_a .trust-strip i{background:#b9ad9e}

.layout_b .landing-section,.layout_b .landing-process{background:#f6f7f8}
.layout_b .section-title h2,.layout_b .process-copy h2,.layout_b .detail-copy h2{text-transform:uppercase;letter-spacing:-.035em;font-weight:900}
.layout_b .service-grid article,.layout_b .process-steps article{border-radius:4px;border:2px solid #111;box-shadow:8px 8px 0 color-mix(in srgb,var(--brand-secondary) 24%,#111)}
.layout_b .service-grid b,.layout_b .process-steps em{border-radius:4px}
.layout_b .detail-feature figure,.layout_b .detail-copy{border-radius:4px}
.layout_b .trust-strip{background:var(--brand-secondary);color:#fff}
.layout_b .trust-strip i{background:#ffffff66}

.layout_c .landing-section,.layout_c .landing-process{background:#fff}
.layout_c .section-title,.layout_c .process-copy,.layout_c .detail-copy{max-width:900px}
.layout_c .section-title h2,.layout_c .process-copy h2,.layout_c .detail-copy h2{font-weight:650;letter-spacing:-.025em}
.layout_c .service-grid article,.layout_c .process-steps article{border:0;border-top:1px solid #dfe3e6;border-radius:0;background:transparent;padding-left:0;padding-right:0}
.layout_c .service-grid b,.layout_c .process-steps em{background:transparent;color:var(--brand-secondary);border:1px solid #ccd2d5}
.layout_c .detail-feature{gap:0}
.layout_c .detail-feature figure,.layout_c .detail-copy{border-radius:0;box-shadow:none}
.layout_c .trust-strip{background:#f5f7f7;color:#394144}

.layout_d .landing-hero{min-height:780px;text-align:center;justify-content:center}
.layout_d .hero-copy{max-width:920px;margin-inline:auto}
.layout_d .hero-meta{justify-content:center}
.layout_d .landing-section.block-services,.layout_d .landing-section.block-faq,.layout_d .block-extra-content{background:#101113;color:#fff}
.layout_d .landing-section.block-services .section-title p,.layout_d .landing-section.block-faq .section-title p,.layout_d .service-grid p{color:#d3d4d6}
.layout_d .service-grid article{background:#17181b;border:1px solid #ffffff2d;border-radius:22px;box-shadow:0 20px 50px #0005}
.layout_d .service-grid h3{color:#fff}
.layout_d .landing-process{background:#191b1f;color:#fff}
.layout_d .process-copy>p,.layout_d .process-steps p{color:#d5d6d8}
.layout_d .process-steps article{background:#111215;border:1px solid #ffffff2d;border-radius:22px}
.layout_d .detail-feature figure,.layout_d .detail-copy{border-radius:24px}

/* v35 · pie de página con etiqueta Osser separada */
.landing-footer{display:block!important;min-height:0;padding:0!important;background:#0a0a0a;color:#fff}
.landing-footer-main{min-height:112px;padding:26px max(26px,calc((100vw - 1180px)/2));display:flex;align-items:center;justify-content:space-between;gap:26px}
.landing-footer .footer-brand strong{font-size:1.18rem;line-height:1.2}
.landing-footer .footer-brand small{font-size:.82rem}
.footer-phone{font-size:1.08rem;font-weight:800;letter-spacing:.01em}
.landing-powered-bar{border-top:1px solid rgba(255,255,255,.1);padding:9px 18px 11px;text-align:center;font-size:.7rem;opacity:.66;letter-spacing:.015em}
@media(max-width:950px){.landing-footer-main{padding:28px 18px 24px;flex-direction:column;text-align:center}.landing-footer{padding-bottom:72px!important}.landing-powered-bar{margin-bottom:0}}

/* v36 · cambio de diseño realmente diferenciado + alineación visible de portada */
@media(min-width:901px){
  .landing-hero .hero-copy{width:min(760px,64vw);max-width:none}
  .landing-hero.hero-align-left .hero-copy{margin-left:0;margin-right:auto;text-align:left}
  .landing-hero.hero-align-center .hero-copy{margin-left:auto;margin-right:auto;text-align:center}
  .landing-hero.hero-align-right .hero-copy{margin-left:auto;margin-right:0;text-align:right}
  .landing-hero.hero-align-left .hero-heading,.landing-hero.hero-align-left .hero-copy>p{margin-left:0;margin-right:auto}
  .landing-hero.hero-align-center .hero-heading,.landing-hero.hero-align-center .hero-copy>p{margin-left:auto;margin-right:auto}
  .landing-hero.hero-align-right .hero-heading,.landing-hero.hero-align-right .hero-copy>p{margin-left:auto;margin-right:0}
  .landing-hero.hero-align-left .hero-meta{justify-content:flex-start}
  .landing-hero.hero-align-center .hero-meta{justify-content:center}
  .landing-hero.hero-align-right .hero-meta{justify-content:flex-end}
}

/* B · estudio geométrico: composición asimétrica, bordes duros y ritmo horizontal */
.layout_b .landing-section{padding-top:96px;padding-bottom:96px}
.layout_b .section-title{display:grid;grid-template-columns:minmax(260px,.8fr) minmax(300px,1.2fr);gap:72px;align-items:end;max-width:1180px;margin-inline:auto;text-align:left}
.layout_b .section-title h2{font-size:clamp(2.8rem,5.5vw,5.4rem);line-height:.9;margin:0}
.layout_b .section-title p{font-size:1.06rem;max-width:620px;margin:0 0 8px auto}
.layout_b .service-grid{grid-template-columns:repeat(12,1fr);gap:18px;max-width:1180px;margin-inline:auto}
.layout_b .service-grid article{grid-column:span 4;min-height:245px;padding:30px 28px;display:flex;flex-direction:column;justify-content:space-between;background:#fff}
.layout_b .service-grid article:nth-child(4n+1){grid-column:span 7}
.layout_b .service-grid article:nth-child(4n+2){grid-column:span 5}
.layout_b .service-grid article:nth-child(4n+3){grid-column:span 5}
.layout_b .service-grid article:nth-child(4n+4){grid-column:span 7}
.layout_b .landing-process{padding:92px max(24px,calc((100vw - 1180px)/2));display:grid;grid-template-columns:360px 1fr;gap:70px;align-items:start}
.layout_b .process-copy{position:sticky;top:120px}
.layout_b .process-steps{display:grid;grid-template-columns:1fr;gap:0;border-top:2px solid #111}
.layout_b .process-steps article{display:grid;grid-template-columns:74px 1fr;gap:22px;align-items:start;border:0;border-bottom:2px solid #111!important;box-shadow:none!important;padding:28px 0;background:transparent}
.layout_b .process-steps em{width:56px;height:56px;display:grid;place-items:center;background:var(--brand-secondary);color:#fff;border:0}
.layout_b .detail-feature{grid-template-columns:1.18fr .82fr;gap:0;max-width:1180px;margin-inline:auto}
.layout_b .detail-feature:nth-of-type(even){grid-template-columns:.82fr 1.18fr}
.layout_b .detail-feature .detail-copy{padding:58px;border:2px solid #111;background:#fff}
.layout_b .detail-feature figure{min-height:520px}
.layout_b .faq details{border-radius:0;border-width:0 0 2px;background:transparent}

/* C · editorial minimalista: mucho aire, títulos centrados y contenidos en franjas */
.layout_c .landing-section{padding-top:122px;padding-bottom:122px}
.layout_c .section-title{max-width:820px!important;margin:0 auto 72px;text-align:center}
.layout_c .section-title h2{font-size:clamp(2.7rem,4.8vw,4.8rem);line-height:1.02;margin-bottom:24px}
.layout_c .section-title p{max-width:650px;margin-inline:auto;color:#697176}
.layout_c .service-grid{display:block;max-width:980px;margin-inline:auto;border-top:1px solid #dfe3e6}
.layout_c .service-grid article{display:grid;grid-template-columns:70px minmax(200px,.75fr) 1.25fr;gap:28px;align-items:start;padding:30px 0!important;border-top:0!important;border-bottom:1px solid #dfe3e6!important;min-height:0}
.layout_c .service-grid article b{width:46px;height:46px;display:grid;place-items:center}
.layout_c .service-grid article h3{margin:8px 0 0;font-size:1.35rem}
.layout_c .service-grid article p{margin:8px 0 0;max-width:560px}
.layout_c .landing-process{padding:120px max(24px,calc((100vw - 1040px)/2));text-align:center}
.layout_c .process-copy{max-width:720px!important;margin:0 auto 70px}
.layout_c .process-steps{display:grid;grid-template-columns:repeat(3,1fr);gap:48px;max-width:1040px;margin-inline:auto}
.layout_c .process-steps article{padding:0 0 28px!important;border:0!important;background:transparent!important;text-align:center}
.layout_c .process-steps em{margin:0 auto 22px;border-radius:50%;width:52px;height:52px;display:grid;place-items:center}
.layout_c .detail-feature{display:grid;grid-template-columns:1fr 1fr;max-width:1120px;margin:0 auto 86px;align-items:center}
.layout_c .detail-feature:nth-child(even) figure{order:2}
.layout_c .detail-copy{padding:64px;background:#f7f8f8}
.layout_c .detail-feature figure{min-height:500px}
.layout_c .faq{max-width:900px;margin-inline:auto}
.layout_c .faq details{border-radius:0;border-left:0;border-right:0;background:transparent}

/* D · premium oscuro: paneles de alto contraste y bloques visuales contundentes */
.layout_d{background:#090a0c;color:#f7f7f8}
.layout_d main{background:#090a0c}
.layout_d .landing-hero{min-height:86vh;border-bottom:1px solid #ffffff22}
.layout_d .landing-section,.layout_d .landing-process,.layout_d .block-extra-content{background:#0d0f12!important;color:#f7f7f8}
.layout_d .section-title{max-width:1040px;margin-inline:auto;text-align:center}
.layout_d .section-title h2,.layout_d .process-copy h2,.layout_d .detail-copy h2{color:#fff;font-size:clamp(2.7rem,5vw,5rem);line-height:.98}
.layout_d .section-title p,.layout_d .process-copy>p,.layout_d .detail-copy p,.layout_d .block-extra-content p{color:#c8ccd2!important}
.layout_d .service-grid{max-width:1180px;margin-inline:auto;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}
.layout_d .service-grid article{min-height:270px;padding:34px;background:linear-gradient(145deg,#17191e,#111318);border:1px solid #ffffff25;border-radius:30px}
.layout_d .service-grid article:nth-child(3n+1){grid-column:span 2}
.layout_d .landing-process{padding-top:110px;padding-bottom:110px}
.layout_d .process-copy{text-align:center;max-width:760px;margin:0 auto 60px}
.layout_d .process-steps{max-width:1100px;margin-inline:auto;gap:18px}
.layout_d .process-steps article{background:#15171b;border:1px solid #ffffff22;color:#fff;padding:30px}
.layout_d .process-steps h3,.layout_d .service-grid h3{color:#fff}
.layout_d .process-steps p,.layout_d .service-grid p{color:#c8ccd2!important}
.layout_d .detail-feature{max-width:1180px;margin-inline:auto;background:#13151a;border:1px solid #ffffff20;border-radius:30px;overflow:hidden;gap:0!important}
.layout_d .detail-copy{background:#13151a;color:#fff;padding:58px;border-radius:0!important}
.layout_d .detail-feature figure{border-radius:0!important;min-height:520px}
.layout_d .faq{max-width:960px;margin-inline:auto}
.layout_d .faq details{background:#15171b;border:1px solid #ffffff22;color:#fff}
.layout_d .faq summary,.layout_d .faq details h3{color:#fff}
.layout_d .faq details p,.layout_d .faq details div,.layout_d .faq details span{color:#d7d9de!important}
.layout_d .trust-strip{background:#08090b;color:#f7f7f8;border-block:1px solid #ffffff1a}

/* marca fija: logo + nombre permanecen visibles junto con el menú */
.floating-brand{position:fixed!important;z-index:48!important}
.landing-site-menu{z-index:47!important}

@media(max-width:900px){
  .layout_b .section-title{display:block;text-align:left}.layout_b .section-title p{margin:24px 0 0}
  .layout_b .service-grid article,.layout_b .service-grid article:nth-child(n){grid-column:1/-1;min-height:auto}
  .layout_b .landing-process{display:block;padding-inline:22px}.layout_b .process-copy{position:static;margin-bottom:42px}
  .layout_b .detail-feature,.layout_b .detail-feature:nth-of-type(even){grid-template-columns:1fr}.layout_b .detail-feature .detail-copy{padding:34px 26px}
  .layout_c .service-grid article{grid-template-columns:58px 1fr}.layout_c .service-grid article p{grid-column:2}
  .layout_c .process-steps{grid-template-columns:1fr}.layout_c .detail-feature{grid-template-columns:1fr}.layout_c .detail-feature:nth-child(even) figure{order:0}
  .layout_d .service-grid{grid-template-columns:1fr}.layout_d .service-grid article:nth-child(n){grid-column:auto}
}


/* v37 · contraste revisado y tema completo: menú, portada y pie */
.layout_b,.layout_b main{color:#111;background:#f6f7f8}
.layout_b .landing-process,.layout_b .landing-section,.layout_b .block-extra-content{color:#111}
.layout_b .section-title h2,.layout_b .process-copy h2,.layout_b .detail-copy h2,.layout_b .process-steps h3,.layout_b .service-grid h3,.layout_b .faq summary{color:#111!important}
.layout_b .section-title p,.layout_b .process-copy>p,.layout_b .process-steps p,.layout_b .service-grid p,.layout_b .faq details p,.layout_b .detail-copy p,.layout_b .detail-points span{color:#3f454b!important}
.layout_b .detail-copy{color:#111!important;background:#fff!important}
.layout_b .landing-site-menu{background:#111!important;border:2px solid #111!important;border-radius:4px!important;box-shadow:8px 8px 0 color-mix(in srgb,var(--brand-secondary) 35%,#111)!important;padding:5px!important}
.layout_b .landing-site-menu a{color:#fff!important;border-radius:2px!important;text-transform:uppercase;letter-spacing:.04em}
.layout_b .landing-site-menu a.active{background:var(--brand-secondary)!important;color:#fff!important}
.layout_b .floating-brand{background:#111!important;color:#fff!important;border-radius:4px!important;border:2px solid #111!important;box-shadow:7px 7px 0 color-mix(in srgb,var(--brand-secondary) 35%,#111)!important}
.layout_b .landing-hero{border-bottom:10px solid var(--brand-secondary);padding-top:135px}
.layout_b .landing-hero .hero-copy{background:#fff!important;color:#111!important;padding:34px 38px!important;box-shadow:12px 12px 0 color-mix(in srgb,var(--brand-secondary) 78%,#111);max-width:760px}
.layout_b .landing-hero .hero-heading,.layout_b .landing-hero .hero-copy>p,.layout_b .landing-hero .hero-meta{color:#111!important}
.layout_b .landing-footer{background:#fff!important;color:#111!important;border-top:8px solid #111}.layout_b .landing-footer .footer-brand strong,.layout_b .landing-footer .footer-brand small,.layout_b .footer-phone{color:#111!important}.layout_b .landing-powered-bar{border-top:2px solid #111;color:#111!important;opacity:1}

.layout_a .landing-site-menu{background:#f8f3ebf2;border:1px solid #d7cbbc;box-shadow:0 10px 34px #0002}.layout_a .landing-site-menu a{color:#2b241d}.layout_a .landing-site-menu a.active{background:#2b241d;color:#fff}.layout_a .floating-brand{background:#2b241de8;border-color:#ffffff33}.layout_a .landing-footer{background:#211d18!important}.layout_a .landing-powered-bar{background:#17130f}

.layout_c .landing-site-menu{background:#fffffff0;border:1px solid #dfe4e7;border-radius:10px!important;box-shadow:0 10px 35px #25313b12}.layout_c .landing-site-menu a{color:#34404a;border-radius:7px!important}.layout_c .landing-site-menu a.active{background:#eef1f3!important;color:#111!important}.layout_c .floating-brand{background:#fffffff2!important;color:#111!important;border:1px solid #dfe4e7!important;border-radius:12px!important;box-shadow:0 10px 35px #25313b18!important}.layout_c .floating-brand span{text-shadow:none!important}.layout_c .landing-hero{padding-top:142px}.layout_c .landing-hero .hero-copy{background:#fffffff0!important;color:#111!important;border-radius:22px;padding:38px 42px!important;box-shadow:0 24px 65px #0003}.layout_c .landing-hero .hero-heading,.layout_c .landing-hero .hero-copy>p,.layout_c .landing-hero .hero-meta{color:#202a31!important}.layout_c .landing-footer{background:#f4f6f7!important;color:#28323a!important;border-top:1px solid #dde2e5}.layout_c .landing-footer .footer-brand strong,.layout_c .landing-footer .footer-brand small,.layout_c .footer-phone{color:#28323a!important}.layout_c .landing-powered-bar{border-top:1px solid #dde2e5;color:#52616c!important;opacity:1}

.layout_d .landing-site-menu{background:#0b0d10e8!important;border:1px solid #ffffff24!important;box-shadow:0 16px 45px #0008!important}.layout_d .landing-site-menu a{color:#dfe3e8!important}.layout_d .landing-site-menu a.active{background:var(--brand-secondary)!important;color:#fff!important}.layout_d .floating-brand{background:#0b0d10e8!important;color:#fff!important;border:1px solid #ffffff24!important}.layout_d .landing-footer{background:#07080a!important;border-top:1px solid #ffffff20}.layout_d .landing-powered-bar{background:#050608;color:#b9c0c8!important}

@media(max-width:760px){.layout_b .landing-hero,.layout_c .landing-hero{padding-top:170px}.layout_b .landing-hero .hero-copy,.layout_c .landing-hero .hero-copy{padding:26px 22px!important;box-shadow:none}}


/* v40.9 | CTA directos por bloque; responden al diseño seleccionado. */
.landing-block-actions{display:flex;flex-wrap:wrap;justify-content:center;align-items:center;gap:14px;padding:23px max(22px,calc((100vw - 1180px)/2));background:#f5f5f5;border-block:1px solid rgba(0,0,0,.06)}
.landing-block-action{display:inline-flex;align-items:center;justify-content:center;gap:11px;min-height:49px;padding:13px 24px;font-weight:850;font-size:.95rem;text-decoration:none;border-radius:999px;transition:transform .2s,box-shadow .2s;box-shadow:0 7px 20px rgba(0,0,0,.10)}
.landing-block-action svg{width:20px;height:20px;flex:0 0 auto}
.landing-block-action:hover{transform:translateY(-2px);box-shadow:0 13px 26px rgba(0,0,0,.16)}
.landing-block-action:focus-visible{outline:3px solid var(--brand-secondary);outline-offset:4px}
.landing-block-action-wa{background:#178847;color:#fff}
.landing-block-action-call{background:var(--brand-primary);color:#fff}
.layout_a .landing-block-actions{background:#f3f0e9}
.layout_a .landing-block-action{border-radius:999px}
.layout_b .landing-block-actions{background:#f4f4f4;border-top:3px solid #161616}
.layout_b .landing-block-action{border-radius:4px;box-shadow:6px 6px 0 #1115;text-transform:uppercase;letter-spacing:.025em}
.layout_b .landing-block-action-call{background:var(--brand-secondary)}
.layout_c .landing-block-actions{background:#fff;border-block:1px solid #e3e6e7}
.layout_c .landing-block-action{border-radius:3px;box-shadow:none;background:transparent;color:#273136;border:1.5px solid #737d83}
.layout_c .landing-block-action-wa{border-color:#178847;color:#156e3e}
.layout_d .landing-block-actions{background:#191b1f;border-color:#ffffff1e}
.layout_d .landing-block-action{border-radius:14px;box-shadow:0 12px 30px #0006}
.layout_d .landing-block-action-call{background:var(--brand-secondary)}
/* v40.10: WhatsApp verde solido y llamada verde invertido en todos los disenos. */
.landing-block-action-wa,.layout_c .landing-block-action-wa{background:#178847;color:#fff;border:2px solid #178847}
.landing-block-action-call,.layout_b .landing-block-action-call,.layout_c .landing-block-action-call,.layout_d .landing-block-action-call{background:transparent;color:#178847;border:2px solid #178847}
.landing-block-action-call:hover,.layout_b .landing-block-action-call:hover,.layout_c .landing-block-action-call:hover,.layout_d .landing-block-action-call:hover{background:transparent;color:#178847}

@media(max-width:540px){.landing-block-actions{gap:10px;padding:19px 16px}.landing-block-action{flex:1 1 130px;padding:12px 14px}}

/* v40.18 | Mobile menu, brand-aware new blocks, and centered editable footer. */
.landing-menu-toggle{display:none}
/* New blocks inherit the selected Settings palette by default; per-block overrides remain available. */
.block-extra-content{background:color-mix(in srgb,var(--brand-primary) 7%,#fff)}
.landing-section.block-highlights{background:color-mix(in srgb,var(--brand-primary) 8%,#fff)}
.layout_a .landing-section.block-highlights,.layout_c .landing-section.block-highlights{background:color-mix(in srgb,var(--brand-primary) 8%,#fff)}
.layout_b .landing-section.block-highlights{background:color-mix(in srgb,var(--brand-secondary) 9%,#fff)}
.layout_d .landing-section.block-highlights{background:color-mix(in srgb,var(--brand-primary) 88%,#111)}
/* Keep the original Osser Web attribution bar; apply primary to the footer itself. */
.layout_original .landing-footer,.layout_a .landing-footer,.layout_b .landing-footer,.layout_c .landing-footer,.layout_d .landing-footer{
 background:var(--brand-primary)!important;color:var(--brand-footer-text)!important;
}
.layout_original .landing-footer .footer-brand strong,.layout_original .landing-footer .footer-brand small,.layout_original .footer-phone,
.layout_a .landing-footer .footer-brand strong,.layout_a .landing-footer .footer-brand small,.layout_a .footer-phone,
.layout_b .landing-footer .footer-brand strong,.layout_b .landing-footer .footer-brand small,.layout_b .footer-phone,
.layout_c .landing-footer .footer-brand strong,.layout_c .landing-footer .footer-brand small,.layout_c .footer-phone,
.layout_d .landing-footer .footer-brand strong,.layout_d .landing-footer .footer-brand small,.layout_d .footer-phone,
.layout_original .landing-powered-bar,.layout_a .landing-powered-bar,.layout_b .landing-powered-bar,.layout_c .landing-powered-bar,.layout_d .landing-powered-bar{
 color:var(--brand-footer-text)!important;
}
.landing-footer-main{display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);gap:16px}
.landing-footer-main .footer-brand{grid-column:1;justify-self:start}
.landing-footer-main .footer-phone{grid-column:2;justify-self:center;text-align:center;overflow-wrap:anywhere}
@media(max-width:760px){
 .landing-menu-toggle{position:fixed;z-index:52;top:17px;right:16px;left:auto;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:5px;width:46px;height:46px;padding:8px;border-radius:10px;border:1px solid #dddddd;background:#fff;color:var(--brand-primary);box-shadow:0 8px 25px #0002;cursor:pointer}
 .landing-menu-toggle span{width:24px;height:3px;background:currentColor;border-radius:3px}
 .landing-site-menu,.layout_a .landing-site-menu,.layout_b .landing-site-menu,.layout_c .landing-site-menu,.layout_d .landing-site-menu{
   top:69px!important;right:16px!important;left:auto!important;transform:none!important;max-width:min(310px,calc(100vw - 32px))!important;max-height:70vh!important;width:max-content;min-width:195px;flex-direction:column;align-items:stretch;overflow-y:auto;border-radius:12px!important;padding:8px!important;z-index:51!important;
 }
 .landing-site-menu:not(.is-open){display:none!important}
 .landing-site-menu.is-open{display:flex!important}
 .landing-site-menu a{border-radius:8px;text-align:left;white-space:normal}
 .landing-footer-main{grid-template-columns:1fr;gap:12px;justify-items:center}
 .landing-footer-main .footer-brand,.landing-footer-main .footer-phone{grid-column:1;justify-self:center}
}

.layout_original .landing-powered-bar,.layout_a .landing-powered-bar,.layout_b .landing-powered-bar,.layout_c .landing-powered-bar,.layout_d .landing-powered-bar{
 background:color-mix(in srgb,var(--brand-primary) 97%,#000)!important;
}
/* V40.19 | Cuatro diseños independientes, sin librerías ni consultas extra. */
.osser-eyebrow{display:block;font-size:.76rem;font-weight:850;letter-spacing:.17em;text-transform:uppercase;color:var(--brand-secondary)}
.block-gallery{background:color-mix(in srgb,var(--brand-primary) 5%,#fff);color:#17191c}
.osser-gallery-intro{max-width:850px;margin:0 0 35px}
.osser-gallery-intro h2,.osser-spotlight-copy h2,.osser-cards-header h2{font-size:clamp(2.3rem,4.5vw,4.9rem);line-height:1.04;letter-spacing:-.05em;margin:14px 0 18px}
.osser-gallery-intro p,.osser-spotlight-copy p,.osser-cards-header p{font-size:1.06rem;line-height:1.75;max-width:640px;opacity:.8}
.osser-gallery-mosaic{display:grid;grid-template-columns:1.25fr 1fr;grid-template-rows:repeat(2,230px);gap:17px}
.osser-gallery-mosaic figure{min-width:0;min-height:0;overflow:hidden;margin:0;position:relative;border-radius:25px;background:color-mix(in srgb,var(--brand-primary) 18%,#ddd)}
.osser-gallery-mosaic figure:first-child{grid-row:span 2}
.osser-gallery-mosaic img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .4s}
.osser-gallery-mosaic figure:hover img{transform:scale(1.025)}
.osser-gallery-mosaic figcaption{position:absolute;bottom:13px;left:13px;right:13px;padding:11px 17px;border-radius:11px;background:#101317be;color:#fff!important;font-weight:700;backdrop-filter:blur(6px)}
.block-manifesto{background:var(--brand-primary);color:#fff;position:relative;display:grid;grid-template-columns:125px minmax(0,1fr);gap:48px;align-items:start;min-height:440px}
.osser-manifesto-mark{font-size:clamp(9rem,17vw,18rem);line-height:.82;font-family:Georgia,serif;color:var(--brand-secondary);opacity:.9}
.osser-manifesto-body .osser-eyebrow{color:var(--brand-secondary)}
.osser-manifesto-body h2{max-width:1020px;font-size:clamp(2.7rem,5.5vw,6rem);line-height:1.09;letter-spacing:-.047em;margin:25px 0 38px;color:inherit}
.osser-manifesto-bottom{display:flex;align-items:flex-end;justify-content:space-between;gap:26px;border-top:1px solid currentColor;padding-top:22px}
.osser-manifesto-bottom p{max-width:600px;line-height:1.7;margin:0;opacity:.85}
.osser-manifesto-signature{font-size:.72rem;font-weight:850;letter-spacing:.12em;flex:0 0 auto}
.block-spotlight{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);gap:0;padding-top:70px;padding-bottom:70px;background:color-mix(in srgb,var(--brand-secondary) 6%,white);color:#18191b}
.osser-spotlight-image{position:relative;min-height:520px;border-radius:28px 0 0 28px;overflow:hidden;background:#dde0e4}
.osser-spotlight-image img{width:100%;height:100%;object-fit:cover;position:absolute;inset:0}
.osser-spotlight-image>span{position:absolute;bottom:22px;left:22px;right:22px;max-width:max-content;border-radius:99px;padding:12px 20px;background:#fff;color:#212121;font-size:.82rem;font-weight:750}
.osser-spotlight-copy{padding:clamp(35px,5vw,80px);background:var(--brand-primary);color:#fff;min-height:520px;border-radius:0 28px 28px 0;display:flex;flex-direction:column;justify-content:center}
.osser-spotlight-copy .osser-eyebrow{color:var(--brand-secondary)}
.osser-spotlight-copy p{opacity:.92}
.osser-spotlight-decoration{width:95px;height:6px;margin-top:38px;background:var(--brand-secondary);border-radius:99px}
.block-cards{background:color-mix(in srgb,var(--brand-primary) 9%,#fff);color:#191d21}
.osser-cards-header{max-width:910px;margin-bottom:42px}
.osser-cards-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:17px}
.osser-cards-grid article{min-height:305px;background:#fff;border:1px solid #00000016;border-radius:23px;padding:36px 30px;display:flex;flex-direction:column;align-items:flex-start;box-shadow:0 16px 44px #0000000a}
.osser-cards-grid article:nth-child(2){background:var(--brand-primary);color:#fff;border-color:transparent}
.osser-card-number{font-size:2.35rem;font-weight:900;letter-spacing:-.04em;line-height:1;color:var(--brand-secondary);margin-bottom:auto}
.osser-cards-grid h3{font-size:1.55rem;line-height:1.15;margin:38px 0 12px;color:inherit}
.osser-cards-grid p{line-height:1.65;font-size:.96rem;opacity:.84;margin:0;color:inherit}
@media(max-width:850px){
 .osser-gallery-mosaic{grid-template-rows:repeat(2,205px)}
 .block-manifesto{grid-template-columns:60px 1fr;gap:22px}.osser-manifesto-mark{font-size:9rem}
 .block-spotlight{grid-template-columns:1fr}.osser-spotlight-image{min-height:380px;border-radius:22px 22px 0 0}.osser-spotlight-copy{min-height:350px;border-radius:0 0 22px 22px}
 .osser-cards-grid{grid-template-columns:1fr}.osser-cards-grid article{min-height:210px}
}
@media(max-width:560px){
 .osser-gallery-mosaic{grid-template-columns:1fr;grid-template-rows:290px 205px 205px}.osser-gallery-mosaic figure:first-child{grid-row:span 1}
 .block-manifesto{display:block;min-height:0}.osser-manifesto-mark{font-size:7rem;line-height:.65}.osser-manifesto-body h2{font-size:2.65rem}.osser-manifesto-bottom{display:block}.osser-manifesto-signature{display:block;margin-top:18px}
 .osser-spotlight-image{min-height:290px}.osser-spotlight-copy{padding:30px}
}
/* Personalizaciones de fondo del Osser Editor: el contraste se aplica al exterior, nunca al texto de tarjetas independientes. */
body [data-osser-block][data-osser-custom-bg]{background:var(--osser-user-bg)!important;color:var(--osser-user-fg)!important}
body [data-osser-block][data-osser-custom-bg] .section-title h2,
body [data-osser-block][data-osser-custom-bg] .section-title>p,
body [data-osser-block][data-osser-custom-bg] .process-copy h2,
body [data-osser-block][data-osser-custom-bg] .process-copy>p,
body [data-osser-block][data-osser-custom-bg] .highlights-heading h2,
body [data-osser-block][data-osser-custom-bg] .highlights-heading>p,
body [data-osser-block][data-osser-custom-bg] .osser-gallery-intro h2,
body [data-osser-block][data-osser-custom-bg] .osser-gallery-intro>p,
body [data-osser-block][data-osser-custom-bg] .osser-manifesto-body h2,
body [data-osser-block][data-osser-custom-bg] .osser-manifesto-bottom p,
body [data-osser-block][data-osser-custom-bg] .osser-cards-header h2,
body [data-osser-block][data-osser-custom-bg] .osser-cards-header>p{color:var(--osser-user-fg)!important}
body [data-osser-block][data-osser-custom-bg].block-services .service-grid article,
body [data-osser-block][data-osser-custom-bg].block-process .process-steps article{background:#fff!important;color:#17191c!important;border-color:#e4e7eb}
body [data-osser-block][data-osser-custom-bg].block-services .service-grid article h3,
body [data-osser-block][data-osser-custom-bg].block-process .process-steps article h3{color:#17191c!important}
body [data-osser-block][data-osser-custom-bg].block-services .service-grid article p,
body [data-osser-block][data-osser-custom-bg].block-process .process-steps article p{color:#444a50!important}
body [data-osser-block][data-osser-custom-bg].block-details .detail-copy,
body [data-osser-block][data-osser-custom-bg].block-spotlight .osser-spotlight-copy{background:var(--osser-user-bg)!important;color:var(--osser-user-fg)!important}
body [data-osser-block][data-osser-custom-bg].block-details .detail-copy h2,
body [data-osser-block][data-osser-custom-bg].block-details .detail-copy p,
body [data-osser-block][data-osser-custom-bg].block-details .detail-copy .detail-points span,
body [data-osser-block][data-osser-custom-bg].block-spotlight .osser-spotlight-copy h2,
body [data-osser-block][data-osser-custom-bg].block-spotlight .osser-spotlight-copy p{color:var(--osser-user-fg)!important}
body [data-osser-block][data-osser-custom-bg].landing-hero .landing-cover-overlay{background:color-mix(in srgb,var(--osser-user-bg) 75%,transparent)!important}
body [data-osser-block][data-osser-custom-bg].block-closing .landing-cover-overlay{background:color-mix(in srgb,var(--osser-user-bg) 80%,transparent)!important}
body [data-osser-block][data-osser-custom-bg].block-cards .osser-cards-grid article{background:#fff!important;color:#17191c!important}
body [data-osser-block][data-osser-custom-bg].block-cards .osser-cards-grid article:nth-child(2){background:var(--brand-primary)!important;color:#fff!important}
/* Barra de contacto: mismo tono del bloque anterior cuando es un color sólido. */
.landing-block-actions{background:var(--osser-action-bg,#f5f5f5)!important}
.layout_a .landing-section+.landing-block-actions,.layout_a .landing-process+.landing-block-actions{background:var(--osser-action-bg,#fbfaf8)!important}
.layout_b .landing-section+.landing-block-actions,.layout_b .landing-process+.landing-block-actions{background:var(--osser-action-bg,#f6f7f8)!important}
.layout_c .landing-section+.landing-block-actions,.layout_c .landing-process+.landing-block-actions{background:var(--osser-action-bg,#fff)!important}
.layout_d .landing-section+.landing-block-actions,.layout_d .landing-process+.landing-block-actions{background:var(--osser-action-bg,#191b1f)!important}
.layout_original .landing-process+.landing-block-actions{background:var(--osser-action-bg,var(--brand-primary))!important}
.block-manifesto+.landing-block-actions,.block-spotlight+.landing-block-actions{background:var(--osser-action-bg,var(--brand-primary))!important}
.layout_a .block-gallery+.landing-block-actions,.layout_a .block-cards+.landing-block-actions{background:var(--osser-action-bg,color-mix(in srgb,var(--brand-primary) 7%,#fff))!important}
.landing-hero+.landing-block-actions{background:var(--osser-action-bg,var(--brand-primary))!important}

/* Los bloques editoriales con interior oscuro mantienen el fondo de su barra de contacto. */
.layout_a .block-manifesto+.landing-block-actions,.layout_b .block-manifesto+.landing-block-actions,
.layout_c .block-manifesto+.landing-block-actions,.layout_d .block-manifesto+.landing-block-actions,
.layout_a .block-spotlight+.landing-block-actions,.layout_b .block-spotlight+.landing-block-actions,
.layout_c .block-spotlight+.landing-block-actions,.layout_d .block-spotlight+.landing-block-actions{background:var(--osser-action-bg,var(--brand-primary))!important}
/* Contraste exterior en diseños cuya tarjeta no tiene fondo blanco propio. */
body [data-osser-block][data-osser-custom-bg].block-highlights .highlight-item h3,
body [data-osser-block][data-osser-custom-bg].block-highlights .highlight-item p,
body [data-osser-block][data-osser-custom-bg].trust-strip strong,
body [data-osser-block][data-osser-custom-bg].trust-strip>span,
body [data-osser-block][data-osser-custom-bg].landing-hero .hero-copy h1,
body [data-osser-block][data-osser-custom-bg].landing-hero .hero-copy h2,
body [data-osser-block][data-osser-custom-bg].landing-hero .hero-copy>p,
body [data-osser-block][data-osser-custom-bg].landing-hero .hero-meta,
body [data-osser-block][data-osser-custom-bg].block-closing .closing-inner h2,
body [data-osser-block][data-osser-custom-bg].block-closing .closing-inner p{color:var(--osser-user-fg)!important}
/* El texto de los paneles coloreados también se adapta a colores principales claros. */
.block-manifesto,.osser-spotlight-copy,.osser-cards-grid article:nth-child(2){color:var(--brand-footer-text)}
.layout_a .block-spotlight+.landing-block-actions,.layout_b .block-spotlight+.landing-block-actions,
.layout_c .block-spotlight+.landing-block-actions,.layout_d .block-spotlight+.landing-block-actions{background:var(--osser-action-bg,color-mix(in srgb,var(--brand-secondary) 6%,white))!important}
.layout_a .block-gallery+.landing-block-actions,.layout_b .block-gallery+.landing-block-actions,
.layout_c .block-gallery+.landing-block-actions,.layout_d .block-gallery+.landing-block-actions{background:var(--osser-action-bg,color-mix(in srgb,var(--brand-primary) 5%,white))!important}
.layout_a .block-cards+.landing-block-actions,.layout_b .block-cards+.landing-block-actions,
.layout_c .block-cards+.landing-block-actions,.layout_d .block-cards+.landing-block-actions{background:var(--osser-action-bg,color-mix(in srgb,var(--brand-primary) 9%,white))!important}

/* V40.20: CTA de llamada siempre blanco. Sin librerias adicionales. */
.landing-block-action-call,.layout_b .landing-block-action-call,.layout_c .landing-block-action-call,.layout_d .landing-block-action-call,
.landing-block-action-call:hover,.layout_b .landing-block-action-call:hover,.layout_c .landing-block-action-call:hover,.layout_d .landing-block-action-call:hover{background:#fff!important;color:#178847!important;border:2px solid #178847!important}
/* Contraste inmediato de los nuevos bloques para las paletas claras y oscuras. */
.block-manifesto:not([data-osser-custom-bg]){color:var(--brand-footer-text,#fff)}
.block-manifesto:not([data-osser-custom-bg]) .osser-manifesto-body h2,
.block-manifesto:not([data-osser-custom-bg]) .osser-manifesto-bottom p,
.block-manifesto:not([data-osser-custom-bg]) .osser-manifesto-signature{color:var(--brand-footer-text,#fff)!important}
.block-spotlight:not([data-osser-custom-bg]) .osser-spotlight-copy,
.block-spotlight:not([data-osser-custom-bg]) .osser-spotlight-copy h2,
.block-spotlight:not([data-osser-custom-bg]) .osser-spotlight-copy p{color:var(--brand-footer-text,#fff)!important}
.block-cards .osser-cards-grid article:nth-child(2),
.block-cards .osser-cards-grid article:nth-child(2) h3,
.block-cards .osser-cards-grid article:nth-child(2) p{color:var(--brand-footer-text,#fff)!important}
body [data-osser-block][data-osser-custom-bg].block-manifesto .osser-manifesto-signature{color:var(--osser-user-fg)!important}
body [data-osser-block][data-osser-custom-bg].block-cards .osser-cards-grid article:nth-child(2),
body [data-osser-block][data-osser-custom-bg].block-cards .osser-cards-grid article:nth-child(2) h3,
body [data-osser-block][data-osser-custom-bg].block-cards .osser-cards-grid article:nth-child(2) p{color:var(--brand-footer-text)!important}
/* Disenos insertables en el layout original: evitar que su regla general de fondo blanco los blanquee. */
.layout_original .landing-section.block-manifesto:not([data-osser-custom-bg]){background:var(--brand-primary);color:var(--brand-footer-text,#fff)}
.layout_original .landing-section.block-gallery:not([data-osser-custom-bg]){background:color-mix(in srgb,var(--brand-primary) 5%,#fff)}
.layout_original .landing-section.block-cards:not([data-osser-custom-bg]){background:color-mix(in srgb,var(--brand-primary) 9%,#fff)}
.layout_original .landing-section.block-spotlight:not([data-osser-custom-bg]){background:color-mix(in srgb,var(--brand-secondary) 6%,#fff)}

/* V40.21: cuatro diseños nuevos ligeros (galería con scroll nativo, sin JS). */
.block-gallerystrip{background:color-mix(in srgb,var(--brand-secondary) 7%,#fff);color:#17191c}
.osser-strip-head{display:grid;grid-template-columns:1.1fr .75fr;gap:38px;align-items:end;margin-bottom:36px}
.osser-strip-head h2,.osser-compare-head h2,.osser-metrics-lead h2,.osser-test-head h2{font-size:clamp(2.2rem,4.6vw,4.8rem);line-height:1.03;letter-spacing:-.052em;margin:15px 0 5px;color:inherit}
.osser-strip-head p,.osser-compare-head p,.osser-metrics-lead p{font-size:1.05rem;line-height:1.75;max-width:650px;opacity:.83}
.osser-strip-rail{display:flex;gap:16px;overflow-x:auto;scroll-snap-type:x mandatory;overscroll-behavior-x:contain;padding:4px 1px 18px;scrollbar-color:var(--brand-secondary) #d5d5d5;scrollbar-width:thin}
.osser-strip-rail figure{flex:0 0 clamp(245px,31vw,400px);height:420px;border-radius:23px;overflow:hidden;position:relative;scroll-snap-align:start;background:#dadde0;margin:0}
.osser-strip-rail img{display:block;width:100%;height:100%;object-fit:cover}
.osser-strip-rail figcaption{position:absolute;left:0;right:0;bottom:0;padding:40px 20px 22px;color:#fff!important;background:linear-gradient(transparent,#08090bba);font-size:1.13rem;font-weight:800}
.osser-strip-hint{display:inline-block;font-size:.72rem;letter-spacing:.12em;font-weight:850;color:var(--brand-secondary);margin-top:12px;text-transform:uppercase}
.block-comparison{background:color-mix(in srgb,var(--brand-primary) 4%,white);color:#17191c}
.osser-compare-head{max-width:890px;margin-bottom:38px}
.osser-compare-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px}
.osser-compare-grid figure{margin:0;min-width:0}
.osser-compare-photo{height:clamp(260px,39vw,510px);overflow:hidden;position:relative;border-radius:25px;background:#dde2e4}
.osser-compare-photo img{width:100%;height:100%;object-fit:cover}
.osser-compare-label{position:absolute;top:18px;left:18px;max-width:calc(100% - 36px);border-radius:99px;padding:10px 16px;background:var(--brand-primary);color:var(--brand-footer-text,#fff)!important;font-size:.75rem;font-weight:900;letter-spacing:.12em}
.osser-compare-grid figcaption{font-size:1.12rem;margin-top:18px;font-weight:800;color:inherit}
.block-metrics{background:var(--brand-primary);color:var(--brand-footer-text,#fff)}
.osser-metrics-lead{max-width:830px;margin:0 0 54px}
.osser-metrics-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border-top:1px solid currentColor;border-bottom:1px solid currentColor}
.osser-metrics-grid article{min-width:0;display:flex;flex-direction:column;gap:17px;padding:35px 22px 40px;border-right:1px solid currentColor}
.osser-metrics-grid article:first-child{padding-left:0}
.osser-metrics-grid article:last-child{border:0}
.osser-metrics-grid strong{font-size:clamp(3.6rem,8vw,8.4rem);line-height:.9;letter-spacing:-.07em;color:var(--brand-secondary);font-variant-numeric:tabular-nums}
.osser-metrics-grid article>span{font-size:.95rem;line-height:1.5;font-weight:700}
.block-testimonials{background:color-mix(in srgb,var(--brand-secondary) 5%,white);color:#151b22}
.osser-test-head{max-width:930px;margin-bottom:44px}
.osser-test-grid{display:grid;grid-template-columns:1.15fr 1fr;gap:18px}
.osser-test-grid blockquote{margin:0;min-width:0;background:white;border:1px solid #00000012;border-radius:27px;padding:clamp(28px,4.4vw,65px);display:flex;flex-direction:column;min-height:390px;box-shadow:0 12px 40px #00000009;color:#18202b}
.osser-test-grid blockquote:first-child{background:var(--brand-primary);color:var(--brand-footer-text,#fff)}
.osser-test-quote-mark{font-family:Georgia,serif;font-size:9rem;line-height:.6;color:var(--brand-secondary);height:75px}
.osser-test-grid blockquote>p{margin:18px 0 40px;font-size:clamp(1.35rem,2vw,2.1rem);line-height:1.32;letter-spacing:-.018em;font-weight:680;color:inherit}
.osser-test-grid footer{margin-top:auto;border-top:1px solid currentColor;padding-top:20px;display:grid;gap:5px}
.osser-test-grid footer strong{font-size:1.04rem;color:inherit}
.osser-test-grid footer span{opacity:.75;font-size:.83rem;color:inherit}
/* Mantener el diseño predeterminado de los nuevos bloques en todos los layouts. */
.layout_original .landing-section.block-gallerystrip:not([data-osser-custom-bg]),.layout_b .landing-section.block-gallerystrip:not([data-osser-custom-bg]),.layout_c .landing-section.block-gallerystrip:not([data-osser-custom-bg]){background:color-mix(in srgb,var(--brand-secondary) 7%,#fff)}
.layout_original .landing-section.block-comparison:not([data-osser-custom-bg]),.layout_b .landing-section.block-comparison:not([data-osser-custom-bg]),.layout_c .landing-section.block-comparison:not([data-osser-custom-bg]){background:color-mix(in srgb,var(--brand-primary) 4%,white)}
.layout_original .landing-section.block-metrics:not([data-osser-custom-bg]),.layout_b .landing-section.block-metrics:not([data-osser-custom-bg]),.layout_c .landing-section.block-metrics:not([data-osser-custom-bg]){background:var(--brand-primary);color:var(--brand-footer-text,#fff)}
.layout_original .landing-section.block-testimonials:not([data-osser-custom-bg]),.layout_b .landing-section.block-testimonials:not([data-osser-custom-bg]),.layout_c .landing-section.block-testimonials:not([data-osser-custom-bg]){background:color-mix(in srgb,var(--brand-secondary) 5%,white)}
/* Fondos personalizados en nuevos diseños: contraste del exterior, no de tarjetas con fondo propio. */
body [data-osser-block][data-osser-custom-bg].block-gallerystrip .osser-strip-head h2,
body [data-osser-block][data-osser-custom-bg].block-gallerystrip .osser-strip-head p,
body [data-osser-block][data-osser-custom-bg].block-comparison .osser-compare-head h2,
body [data-osser-block][data-osser-custom-bg].block-comparison .osser-compare-head p,
body [data-osser-block][data-osser-custom-bg].block-comparison .osser-compare-grid figcaption,
body [data-osser-block][data-osser-custom-bg].block-metrics .osser-metrics-lead h2,
body [data-osser-block][data-osser-custom-bg].block-metrics .osser-metrics-lead p,
body [data-osser-block][data-osser-custom-bg].block-metrics .osser-metrics-grid,
body [data-osser-block][data-osser-custom-bg].block-testimonials .osser-test-head h2{color:var(--osser-user-fg)!important}
@media(max-width:850px){.osser-strip-head{grid-template-columns:1fr;gap:0}.osser-compare-grid{gap:12px}.osser-test-grid{grid-template-columns:1fr}.osser-test-grid blockquote{min-height:300px}}
@media(max-width:560px){.osser-strip-rail figure{height:310px;flex-basis:85%}.osser-compare-grid{grid-template-columns:1fr}.osser-compare-photo{height:290px}.osser-metrics-grid{grid-template-columns:1fr}.osser-metrics-grid article,.osser-metrics-grid article:first-child{padding:24px 0;border-right:0;border-bottom:1px solid currentColor}.osser-metrics-grid article:last-child{border-bottom:0}.osser-metrics-grid strong{font-size:4.3rem}}

/* V40.22: decoracion de testimonios y bloque de video bajo demanda. */
.osser-test-decoration{display:flex;align-items:center;gap:8px;height:50px}
.osser-test-decoration i{display:block;width:11px;height:11px;border-radius:99px;background:var(--brand-secondary)}
.osser-test-decoration i:first-child{width:54px;height:5px}
.osser-test-decoration i:last-child{opacity:.35;width:7px;height:7px}
.block-video{background:color-mix(in srgb,var(--brand-primary) 5%,white);display:grid;grid-template-columns:minmax(260px,.82fr) minmax(0,1.18fr);gap:clamp(26px,5vw,70px);align-items:center}
.osser-video-copy .osser-eyebrow{font-size:.79rem;letter-spacing:.16em;font-weight:850;color:var(--brand-secondary)}
.osser-video-copy h2{font-size:clamp(2.2rem,4.3vw,4.6rem);line-height:1.07;letter-spacing:-.05em;margin:18px 0 24px;color:inherit}
.osser-video-copy p{font-size:1.05rem;line-height:1.7;color:inherit;opacity:.83}
.osser-video-player{aspect-ratio:16/9;background:linear-gradient(140deg,#202124,#08090b);border-radius:24px;overflow:hidden;display:grid;place-items:center;box-shadow:0 24px 50px #0002;position:relative}
.osser-video-player iframe{width:100%;height:100%;border:0;display:block;position:absolute;inset:0}
.osser-video-play{width:100%;height:100%;border:0;display:flex;flex-direction:column;gap:10px;align-items:center;justify-content:center;background:transparent;color:#fff;cursor:pointer;text-align:center;padding:22px}
.osser-video-empty{display:flex;gap:14px;flex-direction:column;align-items:center;justify-content:center;color:#dadde2;text-align:center;padding:20px}
.osser-play-icon{border-radius:100%;background:var(--brand-secondary);color:#fff;display:grid;place-items:center;width:68px;height:68px;font-size:25px;box-shadow:0 8px 26px #0004;padding-left:4px}
.osser-video-play strong{font-size:1.2rem}.osser-video-play small{font-size:.81rem;opacity:.7}
.osser-video-play:focus-visible{outline:4px solid var(--brand-secondary);outline-offset:-4px}
body [data-osser-block][data-osser-custom-bg].block-video .osser-video-copy h2,body [data-osser-block][data-osser-custom-bg].block-video .osser-video-copy p{color:var(--osser-user-fg)!important}
@media(max-width:850px){.block-video{grid-template-columns:1fr}.osser-video-copy{max-width:740px}}

/* V40.24: dos bloques ligeros; los colores personalizados siempre tienen prioridad. */
.block-videowide{display:flex;align-items:center;justify-content:center;padding-block:clamp(34px,5vw,85px);background:color-mix(in srgb,var(--brand-primary) 4%,white)}
.block-videowide .osser-video-player{width:min(100%,880px);aspect-ratio:16/9;border-radius:20px}
.block-videowide .osser-video-play{padding:0}
.block-videowide .osser-play-icon{width:76px;height:76px;font-size:29px}
.block-subtitle{display:flex;align-items:center;justify-content:center;text-align:center;padding:clamp(22px,4vw,55px) clamp(20px,5vw,80px);background:color-mix(in srgb,var(--brand-secondary) 9%,white)}
.block-subtitle h2{margin:0;color:inherit;font-size:clamp(1.35rem,2.9vw,2.6rem);line-height:1.3;letter-spacing:-.025em;font-weight:750;max-width:1000px}
body [data-osser-block][data-osser-custom-bg].block-subtitle h2{color:var(--osser-user-fg)!important}
@media(max-width:600px){.block-videowide .osser-video-player{width:100%;border-radius:12px}.block-videowide .osser-play-icon{width:60px;height:60px}}


/* ===== V40.28 · Atelier rediseñado a fondo ===== */
.layout_a{--atelier-bg:#f7f1ea;--atelier-bg-soft:#fffaf5;--atelier-surface:#fffdf9;--atelier-ink:#201b17;--atelier-muted:#5b5147;--atelier-line:rgba(53,40,29,.12);background:var(--atelier-bg);color:var(--atelier-ink)}
.layout_a .floating-brand{background:#fffdfaf2!important;border:1px solid var(--atelier-line)!important;border-radius:20px!important;box-shadow:0 18px 42px rgba(33,24,17,.10)!important;color:var(--atelier-ink)!important;backdrop-filter:blur(8px)}
.layout_a .landing-site-menu{background:#fffdfbf2!important;border:1px solid var(--atelier-line)!important;border-radius:18px!important;box-shadow:0 18px 46px rgba(33,24,17,.09)!important;backdrop-filter:blur(10px)}
.layout_a .landing-site-menu a{border-radius:14px!important;color:#41382f!important;font-weight:700!important}
.layout_a .landing-site-menu a.active{background:#1f1915!important;color:#fff!important}
.layout_a .landing-menu-toggle{background:#fffdfbf2!important;border:1px solid var(--atelier-line)!important;box-shadow:0 14px 34px rgba(33,24,17,.10)!important}
.layout_a .landing-hero{display:grid;grid-template-columns:minmax(0,.92fr) minmax(420px,.98fr);gap:clamp(28px,6vw,78px);align-items:center;min-height:0;padding:clamp(122px,12vw,158px) max(28px,calc((100vw - 1180px)/2)) clamp(72px,8vw,112px);background:linear-gradient(180deg,#f8f3ec 0%,#f1e7db 100%);color:var(--atelier-ink);overflow:visible}
.layout_a .landing-hero .landing-cover-image{position:relative;inset:auto;width:100%;height:clamp(430px,54vw,690px)!important;grid-column:2;grid-row:1;object-fit:cover;object-position:center;border-radius:46px 46px 46px 150px;box-shadow:0 30px 78px rgba(33,24,17,.18);z-index:1}
.layout_a .landing-hero .landing-cover-overlay{display:none!important}
.layout_a .landing-hero .hero-copy{grid-column:1;grid-row:1;max-width:none;background:var(--atelier-surface)!important;color:var(--atelier-ink)!important;padding:clamp(30px,5vw,56px)!important;border-radius:30px;box-shadow:0 24px 62px rgba(33,24,17,.08);position:relative;z-index:2}
.layout_a .landing-hero .hero-copy::before{content:"";display:block;width:92px;height:2px;background:var(--brand-secondary);margin-bottom:24px;opacity:.85}
.layout_a .landing-hero .hero-label{display:inline-flex;align-items:center;gap:10px;padding:10px 15px;border-radius:999px;background:color-mix(in srgb,var(--brand-secondary) 12%,white);color:var(--atelier-ink)!important;font-size:.8rem;letter-spacing:.16em}
.layout_a .landing-hero .hero-heading{font-family:Georgia,"Times New Roman",serif!important;font-size:clamp(3.4rem,6vw,6.6rem)!important;line-height:.92!important;letter-spacing:-.045em!important;color:var(--atelier-ink)!important}
.layout_a .landing-hero .hero-copy>p{font-size:1.08rem;line-height:1.85;color:var(--atelier-muted)!important;max-width:58ch}
.layout_a .landing-hero .hero-meta{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-top:28px}
.layout_a .landing-hero .hero-meta span{display:flex;align-items:center;min-height:100%;padding:14px 16px;background:#fff;border:1px solid var(--atelier-line);border-radius:18px;color:var(--atelier-ink)!important}
.layout_a .trust-strip{display:grid;grid-template-columns:minmax(210px,1.1fr) repeat(4,minmax(0,1fr));gap:12px;padding:0 max(28px,calc((100vw - 1180px)/2)) 30px;background:transparent;border:0;margin-top:-18px;position:relative;z-index:3}
.layout_a .trust-strip strong,.layout_a .trust-strip>span{display:flex;align-items:center;justify-content:flex-start;min-height:74px;padding:18px 22px;border-radius:22px;background:var(--atelier-surface);border:1px solid var(--atelier-line);box-shadow:0 18px 42px rgba(33,24,17,.08);color:#2a241f}
.layout_a .trust-strip i{display:none}
.layout_a .landing-section,.layout_a .landing-process{background:var(--atelier-bg-soft)}
.layout_a .section-title h2,.layout_a .process-copy h2,.layout_a .detail-copy h2,.layout_a .landing-closing h2{font-family:Georgia,"Times New Roman",serif!important;letter-spacing:-.03em!important;color:var(--atelier-ink)}
.layout_a .block-services{padding-top:96px;padding-bottom:110px;background:#fffaf4}
.layout_a .block-services .section-title{grid-template-columns:minmax(0,1fr);gap:18px;max-width:900px}
.layout_a .block-services .section-title>p{max-width:680px;color:var(--atelier-muted)}
.layout_a .service-layout{display:grid;grid-template-columns:1.05fr .95fr;gap:28px;align-items:stretch}
.layout_a .service-grid{order:1;display:grid;grid-template-columns:1fr;gap:18px}
.layout_a .service-grid article{position:relative;display:block;padding:30px 28px 28px 100px;background:var(--atelier-surface);border:1px solid var(--atelier-line);border-radius:28px;box-shadow:0 18px 44px rgba(33,24,17,.08)}
.layout_a .service-grid article b{position:absolute;left:24px;top:24px;width:52px;height:52px;display:grid;place-items:center;border-radius:16px;background:color-mix(in srgb,var(--brand-secondary) 14%,white);color:var(--brand-secondary);font-size:.95rem;font-weight:900}
.layout_a .service-grid article h3{margin:0 0 10px;color:var(--atelier-ink)}
.layout_a .service-grid article p{margin:0;color:var(--atelier-muted);line-height:1.7}
.layout_a .editorial-photo{order:2;min-height:100%;position:relative;border-radius:36px;overflow:hidden;background:#ddd;box-shadow:0 28px 72px rgba(33,24,17,.16)}
.layout_a .editorial-photo figcaption{position:absolute;right:20px;bottom:20px;background:#fff;color:#2a241f;padding:12px 16px;border-radius:999px;box-shadow:0 14px 30px rgba(33,24,17,.14)}
.layout_a .landing-process{grid-template-columns:1fr;gap:36px;background:linear-gradient(180deg,#f6eee4 0%,#fbf7f2 100%);padding-top:108px;padding-bottom:108px}
.layout_a .process-copy{position:static;display:grid;grid-template-columns:minmax(0,.95fr) minmax(0,1.05fr);gap:24px;align-items:end;max-width:none}
.layout_a .process-copy>span{grid-column:1/-1}
.layout_a .process-copy>p{max-width:none;color:var(--atelier-muted)}
.layout_a .process-steps{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
.layout_a .process-steps article{grid-template-columns:1fr;gap:16px;padding:30px 24px;background:#fff;border:1px solid var(--atelier-line);border-radius:28px;box-shadow:0 18px 42px rgba(33,24,17,.08)}
.layout_a .process-steps em{width:58px;height:58px;border-radius:18px;background:#231c17;color:#fff;font-weight:900}
.layout_a .process-steps p{color:var(--atelier-muted)}
.layout_a .detail-feature{grid-template-columns:.92fr 1.08fr;gap:28px;padding:0 max(28px,calc((100vw - 1180px)/2)) 112px;background:#fffaf5}
.layout_a .detail-feature figure{order:2;margin:0;min-height:640px;border-radius:42px;overflow:hidden;box-shadow:0 28px 72px rgba(33,24,17,.17)}
.layout_a .detail-copy{order:1;background:#fff;color:var(--atelier-ink);border-radius:42px;padding:58px 52px;border:1px solid var(--atelier-line);box-shadow:0 22px 60px rgba(33,24,17,.08)}
.layout_a .detail-copy>span{color:var(--brand-secondary)}
.layout_a .detail-copy h2{color:var(--atelier-ink)}
.layout_a .detail-intro{color:var(--atelier-muted)}
.layout_a .detail-points p{grid-template-columns:54px 1fr;gap:16px;border-top:1px solid #e6dccf;padding:18px 0}
.layout_a .detail-points b{display:grid;place-items:center;width:42px;height:42px;border-radius:14px;background:color-mix(in srgb,var(--brand-secondary) 14%,white);color:var(--brand-secondary);font-size:.82rem}
.layout_a .detail-points span{color:#463d35}
.layout_a .block-faq{background:#f4ebe0}
.layout_a .faq-list{display:grid;gap:16px}
.layout_a .faq-list details{background:#fff;border:1px solid var(--atelier-line);border-radius:22px;padding:0 22px;box-shadow:0 14px 34px rgba(33,24,17,.07)}
.layout_a .faq-list summary{padding:20px 0;font-weight:800;color:#2a241f}
.layout_a .faq-list p{padding:0 0 18px;color:var(--atelier-muted)}
.layout_a .landing-closing{display:grid;grid-template-columns:minmax(0,.95fr) minmax(0,1.05fr);gap:28px;align-items:center;min-height:0;padding:100px max(28px,calc((100vw - 1180px)/2)) 112px;background:linear-gradient(180deg,#f1e7db 0%,#ebdcc9 100%);text-align:left;color:var(--atelier-ink);overflow:visible}
.layout_a .landing-closing .landing-cover-image{position:relative;inset:auto;grid-column:2;grid-row:1;width:100%;height:clamp(360px,45vw,560px)!important;object-fit:cover;border-radius:140px 34px 34px 34px;box-shadow:0 28px 70px rgba(33,24,17,.17)}
.layout_a .landing-closing .landing-cover-overlay{display:none!important}
.layout_a .landing-closing .closing-inner{grid-column:1;grid-row:1;max-width:none;position:relative;z-index:2;background:var(--atelier-surface);padding:40px 42px;border-radius:28px;box-shadow:0 20px 52px rgba(33,24,17,.08)}
.layout_a .landing-closing span{color:var(--brand-secondary)!important}
.layout_a .landing-closing h2{font-size:clamp(2.8rem,4.8vw,5.2rem);line-height:.96;color:var(--atelier-ink)!important}
.layout_a .landing-closing p{color:var(--atelier-muted)!important;font-size:1.06rem;line-height:1.82}
.layout_a .block-gallery,.layout_a .block-spotlight,.layout_a .block-cards,.layout_a .block-gallerystrip,.layout_a .block-comparison,.layout_a .block-testimonials,.layout_a .block-video,.layout_a .block-videowide,.layout_a .block-subtitle,.layout_a .block-extra-content,.layout_a .block-logos{background:#fffaf5}
.layout_a .block-subtitle{background:linear-gradient(90deg,color-mix(in srgb,var(--brand-secondary) 10%,white),#fffaf5)}
.layout_a .block-videowide{background:linear-gradient(180deg,#fffaf5 0%,#f7eee4 100%)}
.layout_a .landing-block-actions{background:var(--osser-action-bg,color-mix(in srgb,var(--brand-primary) 4%,white))!important;padding-top:18px;padding-bottom:34px}
.layout_a .landing-block-action{border-radius:999px;border-width:1.5px;box-shadow:0 14px 34px rgba(33,24,17,.08)}
.layout_a .landing-footer{background:#1f1a16!important;color:#f5ede4!important;border-top:0!important}
.layout_a .landing-footer .footer-brand strong,.layout_a .landing-footer .footer-brand small,.layout_a .footer-phone{color:#f5ede4!important}
.layout_a .landing-powered-bar{background:#17120f!important;color:#d6c7b5!important;border-top:1px solid rgba(255,255,255,.08)!important}
@media(max-width:980px){
 .layout_a .landing-hero,.layout_a .service-layout,.layout_a .detail-feature,.layout_a .landing-closing,.layout_a .process-copy{grid-template-columns:1fr}
 .layout_a .landing-hero .landing-cover-image,.layout_a .landing-closing .landing-cover-image{grid-column:1;grid-row:auto;height:420px!important;border-radius:30px}
 .layout_a .landing-hero .hero-copy,.layout_a .landing-closing .closing-inner{grid-column:1;grid-row:auto}
 .layout_a .trust-strip{grid-template-columns:1fr 1fr;margin-top:0;padding-top:4px}
 .layout_a .process-steps{grid-template-columns:1fr}
}
@media(max-width:760px){
 .layout_a .landing-hero{padding:150px 22px 56px}
 .layout_a .landing-hero .hero-meta{grid-template-columns:1fr}
 .layout_a .trust-strip{grid-template-columns:1fr;padding:0 22px 20px}
 .layout_a .block-services,.layout_a .landing-process,.layout_a .detail-feature,.layout_a .landing-closing{padding-left:22px;padding-right:22px}
 .layout_a .detail-copy,.layout_a .landing-closing .closing-inner,.layout_a .landing-hero .hero-copy{padding:28px 24px!important;border-radius:24px}
 .layout_a .landing-hero .landing-cover-image,.layout_a .editorial-photo,.layout_a .detail-feature figure,.layout_a .landing-closing .landing-cover-image{height:320px!important;min-height:320px;border-radius:26px}
 .layout_a .service-grid article{padding:24px 22px 24px 86px}
 .layout_a .service-grid article b{left:18px;top:18px;width:48px;height:48px}
 .layout_a .detail-copy{padding:34px 24px!important}
 .layout_a .landing-closing{padding-top:76px;padding-bottom:82px}
}


/* v40.29 · corrección Atelier + nuevo bloque de logotipos + Scandinavian renovado */
.layout_a .block-manifesto:not([data-osser-custom-bg]){background:#0d4094;color:#fff}
.layout_a .block-manifesto:not([data-osser-custom-bg]) .osser-manifesto-mark{color:#1e8f60}
.layout_a .block-manifesto:not([data-osser-custom-bg]) .osser-eyebrow,
.layout_a .block-manifesto:not([data-osser-custom-bg]) h2,
.layout_a .block-manifesto:not([data-osser-custom-bg]) p,
.layout_a .block-manifesto:not([data-osser-custom-bg]) .osser-manifesto-signature{color:#fff!important}
.layout_a .block-metrics:not([data-osser-custom-bg]){background:var(--brand-primary);color:var(--brand-footer-text,#fff)}
.layout_a .block-metrics:not([data-osser-custom-bg]) .osser-eyebrow,
.layout_a .block-metrics:not([data-osser-custom-bg]) h2,
.layout_a .block-metrics:not([data-osser-custom-bg]) p,
.layout_a .block-metrics:not([data-osser-custom-bg]) strong,
.layout_a .block-metrics:not([data-osser-custom-bg]) span{color:inherit!important}

.block-logos{padding-top:96px;padding-bottom:100px;background:#fff}
.osser-logos-head{max-width:860px;margin:0 auto 42px;text-align:center}
.osser-logos-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;max-width:1080px;margin:0 auto}
.osser-logos-grid figure{margin:0;background:#fff;border:1px solid #e5e8eb;border-radius:22px;min-height:168px;padding:24px 22px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:14px;box-shadow:0 12px 30px rgba(21,28,36,.05)}
.osser-logos-grid img{max-width:100%;max-height:64px;object-fit:contain;filter:grayscale(1);opacity:.92}
.osser-logos-grid figcaption{text-align:center;font-weight:700;color:#4d5760;font-size:.95rem}

.layout_c .landing-section,.layout_c .landing-process{background:#f6f2ed;color:#16323f}
.layout_c .section-title h2,.layout_c .process-copy h2,.layout_c .detail-copy h2,.layout_c .service-grid h3,.layout_c .process-steps h3,.layout_c .faq summary{color:#16323f!important}
.layout_c .section-title p,.layout_c .process-copy>p,.layout_c .detail-copy p,.layout_c .service-grid p,.layout_c .process-steps p,.layout_c .faq details p,.layout_c .block-extra-content p{color:#516069!important}
.layout_c .landing-site-menu{background:#f6f2edf5!important;border:1px solid #cdc4ba!important;border-radius:26px!important;box-shadow:none!important;padding:7px!important}
.layout_c .landing-site-menu a{border:1px solid transparent;border-radius:999px!important;color:#173745!important;font-weight:700}
.layout_c .landing-site-menu a.active{background:#fff!important;border-color:#d2c9bf!important;color:#173745!important}
.layout_c .floating-brand{background:#173f92!important;color:#fff!important;border:1px solid #ffffff1a!important;border-radius:18px!important;box-shadow:0 18px 36px rgba(0,0,0,.16)!important}
.layout_c .landing-hero{padding-top:144px}
.layout_c .landing-hero .hero-copy{background:#f6f2edf2!important;color:#16323f!important;border-radius:30px!important;box-shadow:none!important;border:1px solid #dcd4ca;padding:42px 44px!important}
.layout_c .landing-hero .hero-heading,.layout_c .landing-hero .hero-copy>p,.layout_c .landing-hero .hero-meta{color:#16323f!important}
.layout_c .block-services,.layout_c .landing-process,.layout_c .block-details,.layout_c .block-faq,.layout_c .block-gallery,.layout_c .block-gallerystrip,.layout_c .block-comparison,.layout_c .block-testimonials,.layout_c .block-video,.layout_c .block-videowide,.layout_c .block-subtitle,.layout_c .block-extra-content,.layout_c .block-logos{background:#fffdf9}
.layout_c .block-manifesto:not([data-osser-custom-bg]){background:#0d4094;color:#fff;padding:118px max(28px,calc((100vw - 1180px)/2)) 112px}
.layout_c .block-manifesto:not([data-osser-custom-bg]) .osser-manifesto-mark{color:#1c9863;font-size:clamp(7rem,10vw,9rem)}
.layout_c .block-manifesto:not([data-osser-custom-bg]) .osser-manifesto-body{max-width:1280px}
.layout_c .block-manifesto:not([data-osser-custom-bg]) .osser-eyebrow{color:#1c9863!important;letter-spacing:.22em;font-weight:800;text-transform:uppercase}
.layout_c .block-manifesto:not([data-osser-custom-bg]) h2{max-width:1180px;font-size:clamp(4rem,8vw,8.2rem);line-height:.96;color:#fff!important;letter-spacing:-.065em}
.layout_c .block-manifesto:not([data-osser-custom-bg]) .osser-manifesto-bottom{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:28px;align-items:end;padding-top:36px;border-top:1px solid rgba(255,255,255,.35)}
.layout_c .block-manifesto:not([data-osser-custom-bg]) p,.layout_c .block-manifesto:not([data-osser-custom-bg]) .osser-manifesto-signature{color:#eef3ff!important}
.layout_c .service-grid{border-top:1px solid #d8d0c6}
.layout_c .service-grid article{border-bottom:1px solid #d8d0c6!important}
.layout_c .service-grid b,.layout_c .process-steps em{border:1px solid #c8beb2;color:#0f3f94}
.layout_c .process-steps article{padding-bottom:26px!important}
.layout_c .detail-copy{background:#f1ebe4}
.layout_c .faq details{border-color:#d7d0c7}
.layout_c .landing-block-actions{background:#fffdf9!important;border-block:1px solid #e4ddd4}
.layout_c .landing-block-action{border-radius:999px;box-shadow:none;background:#fff;color:#173745;border:1px solid #d3cabf}
.layout_c .landing-footer{background:#f6f2ed!important;color:#173745!important;border-top:1px solid #ddd3c7!important}
.layout_c .landing-footer .footer-brand strong,.layout_c .landing-footer .footer-brand small,.layout_c .footer-phone{color:#173745!important}
.layout_c .landing-powered-bar{background:#efe8df;color:#52616c!important;border-top:1px solid #ddd3c7!important}
.layout_c .block-logos .osser-logos-head{text-align:left;max-width:1180px;padding:0 max(0px,calc((100vw - 1180px)/2))}
.layout_c .block-logos .osser-logos-head .osser-eyebrow{color:#1c9863!important;letter-spacing:.18em;text-transform:uppercase}
.layout_c .block-logos .osser-logos-head h2{font-size:clamp(2.6rem,4.8vw,5rem);line-height:.98;letter-spacing:-.045em}
.layout_c .block-logos .osser-logos-head p{max-width:700px}
.layout_c .osser-logos-grid{max-width:1180px;grid-template-columns:repeat(6,minmax(0,1fr));gap:12px}
.layout_c .osser-logos-grid figure{border-radius:999px;min-height:132px;padding:18px 20px;background:#f6f2ed;border:1px solid #d7cec4;box-shadow:none}
.layout_c .osser-logos-grid img{max-height:42px;filter:none;opacity:1}
.layout_c .osser-logos-grid figcaption{font-size:.82rem;color:#617078}
@media(max-width:980px){
 .osser-logos-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
 .layout_c .osser-logos-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
 .layout_c .block-manifesto:not([data-osser-custom-bg]) .osser-manifesto-bottom{grid-template-columns:1fr}
}
@media(max-width:760px){
 .layout_c .landing-hero{padding-top:168px}
 .layout_c .landing-hero .hero-copy{padding:30px 24px!important}
 .layout_c .block-manifesto:not([data-osser-custom-bg]){padding:84px 22px}
 .layout_c .block-manifesto:not([data-osser-custom-bg]) h2{font-size:clamp(3.1rem,14vw,5.1rem)}
 .layout_c .block-logos .osser-logos-head{text-align:center;padding:0}
 .layout_c .osser-logos-grid,.osser-logos-grid{grid-template-columns:1fr 1fr}
 .layout_c .osser-logos-grid figure{border-radius:26px}
}

/* V40.31 - Norte: corregir geometria, contraste y exceso de espacio.
   Son estilos estaticos; ningun script o consulta extra. */
.layout_c { --norte-text:#173442; --norte-muted:#4a5d67; --norte-paper:#fffdf9; --norte-line:#d7cec4; }
.layout_c .landing-section { padding-top:clamp(52px,5.4vw,86px);padding-bottom:clamp(52px,5.4vw,86px); }
.layout_c .landing-process {padding-top:clamp(62px,6vw,94px);padding-bottom:clamp(62px,6vw,94px);}
.layout_c .section-title {margin-bottom:clamp(28px,3.4vw,46px)!important;max-width:1000px!important;}
.layout_c .section-title h2 {font-size:clamp(2.2rem,4.2vw,4.4rem);line-height:1.08;}
.layout_c .section-title p {color:var(--norte-muted)!important;}
/* Antes: max-width:1120px sumado a padding lateral calculado de todo el viewport.
   En un monitor ancho dejaba el contenido reducido a unos 200px por columna. */
.layout_c .detail-feature {
  box-sizing:border-box;
  width:min(1180px,calc(100% - 52px));max-width:none;
  margin:0 auto clamp(48px,5vw,84px);
  padding:0!important;
  display:grid;grid-template-columns:minmax(0,.98fr) minmax(0,1.02fr);
  gap:0;align-items:stretch;
}
.layout_c .detail-copy {
  min-width:0;max-width:none;
  padding:clamp(28px,3.7vw,54px);
  background:#f1ebe4;color:var(--norte-text);
  border-radius:24px 0 0 24px;
  overflow-wrap:break-word;word-break:normal;
}
.layout_c .detail-copy>span {color:var(--brand-secondary)!important;}
.layout_c .detail-copy h2 {color:var(--norte-text)!important;font-size:clamp(2.2rem,4.2vw,4.8rem);line-height:1.05;overflow-wrap:normal;}
.layout_c .detail-copy .detail-intro,.layout_c .detail-copy p,.layout_c .detail-points span {color:var(--norte-muted)!important;}
.layout_c .detail-points p {grid-template-columns:44px minmax(0,1fr);border-color:var(--norte-line);}
.layout_c .detail-points b {color:var(--brand-secondary)!important;}
.layout_c .detail-feature figure {min-width:0;min-height:440px;border-radius:0 24px 24px 0;overflow:hidden;}
.layout_c .detail-feature figure img {width:100%;height:100%;object-fit:cover;}
.layout_c .block-spotlight {grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:0;}
.layout_c .osser-spotlight-image,.layout_c .osser-spotlight-copy {min-width:0;min-height:390px;}
.layout_c .osser-spotlight-copy {padding:clamp(28px,4vw,62px);background:var(--brand-primary);}
.layout_c .osser-spotlight-copy h2 {font-size:clamp(2rem,3.4vw,3.9rem);}
.layout_c .osser-spotlight-copy h2,.layout_c .osser-spotlight-copy p {overflow-wrap:break-word;word-break:normal;}
.layout_c .process-copy {max-width:820px!important;margin-bottom:35px!important;}
.layout_c .process-steps {gap:clamp(16px,2.5vw,30px);}
.layout_c .process-steps article {min-height:0;padding:10px 0 18px!important;}
.layout_c .service-grid article {min-height:0;padding-top:23px!important;padding-bottom:23px!important;}
.layout_c .detail-feature + .detail-feature {margin-top:0;}
/* La geometria de los bloques anadidos debe pertenecer al tema elegido. */
:where(.layout_original,.layout_a,.layout_b,.layout_c,.layout_d) .block-subtitle h2 {font-family:var(--landing-font,system-ui,sans-serif);}
.layout_a .block-subtitle h2,.layout_a .block-gallery h2,.layout_a .block-cards h2,
.layout_a .block-logos h2,.layout_a .block-comparison h2,.layout_a .block-testimonials h2,
.layout_a .block-video h2,.layout_a .block-gallerystrip h2 {font-family:Georgia,"Times New Roman",serif;letter-spacing:-.03em;}
.layout_a .osser-gallery-mosaic figure,.layout_a .osser-strip-rail figure,.layout_a .osser-compare-photo,
.layout_a .osser-cards-grid article,.layout_a .osser-test-grid blockquote,.layout_a .osser-video-player,
.layout_a .osser-logos-grid figure {border-radius:30px;}
.layout_a .block-subtitle h2 {font-size:clamp(1.6rem,3vw,3rem);font-weight:600;}
/* Vertice: lineas rectas, cuadrícula, bordes y sombras geometricas en TODOS los bloques. */
.layout_b .osser-gallery-mosaic figure,.layout_b .osser-strip-rail figure,.layout_b .osser-compare-photo,
.layout_b .osser-cards-grid article,.layout_b .osser-test-grid blockquote,.layout_b .osser-video-player,
.layout_b .osser-logos-grid figure {border-radius:2px!important;border:2px solid #111!important;box-shadow:7px 7px 0 color-mix(in srgb,var(--brand-secondary) 24%,#111)!important;}
.layout_b .osser-gallery-mosaic figcaption,.layout_b .osser-compare-label,
.layout_b .osser-card-number,.layout_b .osser-video-play .osser-play-icon,
.layout_b .osser-spotlight-image,.layout_b .osser-spotlight-copy,
.layout_b .osser-spotlight-image>span {border-radius:2px!important;}
.layout_b .block-subtitle:not([data-osser-custom-bg]) {background:#f6f7f8;}
.layout_b .block-subtitle h2,.layout_b .block-gallery h2,.layout_b .block-cards h2,
.layout_b .block-video h2,.layout_b .block-logos h2,.layout_b .block-comparison h2,
.layout_b .block-gallerystrip h2,.layout_b .block-testimonials h2 {font-family:var(--landing-font,system-ui,sans-serif);text-transform:uppercase;letter-spacing:-.035em;font-weight:900;}
.layout_b .block-subtitle {border-top:4px solid #111;border-bottom:4px solid #111;}
.layout_b .block-subtitle h2 {font-size:clamp(1.6rem,3.4vw,3.25rem);}
.layout_b .osser-logos-grid figure {min-height:150px;}
/* Norte: tarjetas serenas, tipografia y contornos rectos suavizados, espacios compactos. */
.layout_c .osser-gallery-mosaic figure,.layout_c .osser-strip-rail figure,.layout_c .osser-compare-photo,
.layout_c .osser-cards-grid article,.layout_c .osser-test-grid blockquote,.layout_c .osser-video-player,
.layout_c .osser-spotlight-image,.layout_c .osser-spotlight-copy {border-radius:23px;border:1px solid var(--norte-line);box-shadow:none;}
.layout_c .osser-cards-grid article {min-height:255px;padding:28px;}
.layout_c .osser-cards-grid article:nth-child(2) {background:var(--brand-primary);border-color:transparent;}
.layout_c .osser-gallery-intro h2,.layout_c .osser-cards-header h2,
.layout_c .osser-strip-head h2,.layout_c .osser-compare-head h2,
.layout_c .osser-test-head h2,.layout_c .osser-logos-head h2,
.layout_c .osser-video-copy h2 {font-family:var(--landing-font,system-ui,sans-serif);font-size:clamp(2.1rem,4vw,4.5rem);line-height:1.09;letter-spacing:-.045em;color:var(--norte-text);}
.layout_c .osser-gallery-intro p,.layout_c .osser-cards-header p,.layout_c .osser-video-copy p,
.layout_c .osser-strip-head p,.layout_c .osser-compare-head p {color:var(--norte-muted);}
.layout_c .block-subtitle:not([data-osser-custom-bg]) {background:#f1ebe4;}
.layout_c .block-subtitle h2 {font-size:clamp(1.6rem,3vw,3.1rem);font-weight:650;letter-spacing:-.04em;color:var(--norte-text);}
.layout_c .block-video {grid-template-columns:minmax(0,.82fr) minmax(0,1.18fr);gap:clamp(22px,4vw,52px);}
.layout_c .block-videowide .osser-video-player {border-radius:24px;}
.layout_c .block-manifesto:not([data-osser-custom-bg]) {min-height:0;padding-top:clamp(58px,6vw,94px);padding-bottom:clamp(58px,6vw,94px);}
.layout_c .block-manifesto:not([data-osser-custom-bg]) h2 {font-size:clamp(3rem,6.8vw,6.8rem);line-height:1.02;}
.layout_c .block-gallerystrip .osser-strip-rail figure {height:340px;}
.layout_c .block-logos .osser-logos-grid figure {border-radius:22px;}
/* Impacto: superficies oscuras, bordes redondeados firmes; textos visibles. */
.layout_d .osser-gallery-mosaic figure,.layout_d .osser-strip-rail figure,.layout_d .osser-compare-photo,
.layout_d .osser-cards-grid article,.layout_d .osser-test-grid blockquote,
.layout_d .osser-video-player,.layout_d .osser-logos-grid figure {border-radius:18px;border:1px solid #ffffff30;box-shadow:0 12px 32px #0004;}
.layout_d .block-subtitle:not([data-osser-custom-bg]),.layout_d .block-logos:not([data-osser-custom-bg]),
.layout_d .block-gallery:not([data-osser-custom-bg]),.layout_d .block-gallerystrip:not([data-osser-custom-bg]),
.layout_d .block-comparison:not([data-osser-custom-bg]),.layout_d .block-testimonials:not([data-osser-custom-bg]),
.layout_d .block-video:not([data-osser-custom-bg]),.layout_d .block-videowide:not([data-osser-custom-bg]) {background:#101318!important;color:#f7f7f8;}
.layout_d .block-subtitle h2,.layout_d .block-logos h2,.layout_d .block-gallery h2,
.layout_d .block-gallerystrip h2,.layout_d .block-comparison h2,.layout_d .block-testimonials h2,
.layout_d .block-video h2 {color:#f7f7f8;letter-spacing:-.04em;}
.layout_d .osser-gallery-intro p,.layout_d .osser-logos-head p,.layout_d .osser-compare-head p,
.layout_d .osser-strip-head p,.layout_d .osser-video-copy p {color:#c8ccd2;}
.layout_d .osser-logos-grid figure {background:#fff;color:#17202a;box-shadow:none;}
/* El color manual del Editor SIEMPRE gana sobre el fondo del tema. */
body [data-osser-block][data-osser-custom-bg].block-subtitle h2,
body [data-osser-block][data-osser-custom-bg].block-logos .osser-logos-head h2,
body [data-osser-block][data-osser-custom-bg].block-gallery .osser-gallery-intro h2,
body [data-osser-block][data-osser-custom-bg].block-comparison .osser-compare-head h2,
body [data-osser-block][data-osser-custom-bg].block-video .osser-video-copy h2 {color:var(--osser-user-fg)!important;}
/* Los elementos con su propio fondo se leen con su contraste propio. */
.layout_c .detail-copy p,.layout_c .detail-points span {color:var(--norte-muted)!important;}
.layout_c .osser-cards-grid article:not(:nth-child(2)) h3,
.layout_c .osser-cards-grid article:not(:nth-child(2)) p {color:var(--norte-text)!important;}
@media(max-width:950px){
 .layout_c .detail-feature {width:calc(100% - 36px);grid-template-columns:minmax(0,1fr);margin-bottom:48px;}
 .layout_c .detail-copy {order:1;padding:clamp(24px,5vw,40px);border-radius:22px 22px 0 0;}
 .layout_c .detail-feature figure {order:2;min-height:300px;border-radius:0 0 22px 22px;}
 .layout_c .block-spotlight,.layout_c .block-video {grid-template-columns:minmax(0,1fr);}
 .layout_c .osser-spotlight-image {min-height:340px;border-radius:22px 22px 0 0;}
 .layout_c .osser-spotlight-copy {min-height:0;border-radius:0 0 22px 22px;}
}
@media(max-width:600px){
 .layout_c .detail-feature {width:calc(100% - 28px);}
 .layout_c .detail-copy h2 {font-size:clamp(2rem,9.5vw,3.4rem);}
 .layout_c .detail-feature figure {min-height:270px;}
 .layout_c .block-gallerystrip .osser-strip-rail figure {height:285px;}
 .layout_b .osser-gallery-mosaic figure,.layout_b .osser-strip-rail figure,
 .layout_b .osser-compare-photo,.layout_b .osser-cards-grid article,.layout_b .osser-test-grid blockquote {box-shadow:4px 4px 0 #19191944!important;}
}
/* Contraste y jerarquía en nuevos bloques para todas las familias visuales. */
.osser-logos-head h2{font-size:clamp(2.15rem,4.1vw,4.2rem);line-height:1.08;letter-spacing:-.045em;margin:15px 0 18px;}
.osser-logos-head p{color:inherit;opacity:.8;font-size:1rem;line-height:1.65;}
.layout_b .osser-logos-head h2{font-size:clamp(2.2rem,4.2vw,4.6rem);}
.layout_b .block-manifesto:not([data-osser-custom-bg]){background:#111316!important;color:#fff;}
.layout_b .block-manifesto:not([data-osser-custom-bg]) .osser-manifesto-body h2,
.layout_b .block-manifesto:not([data-osser-custom-bg]) .osser-manifesto-bottom p,
.layout_b .block-manifesto:not([data-osser-custom-bg]) .osser-manifesto-signature {color:#fff!important;}
.layout_b .block-metrics:not([data-osser-custom-bg]){background:#111316;color:#fff;}
.layout_b .block-metrics:not([data-osser-custom-bg]) h2,
.layout_b .block-metrics:not([data-osser-custom-bg]) p,
.layout_b .block-metrics:not([data-osser-custom-bg]) .osser-metrics-grid{color:#fff!important;}
.layout_c .block-metrics:not([data-osser-custom-bg]){background:#0d4094;color:#fff;}
.layout_c .block-metrics:not([data-osser-custom-bg]) h2,
.layout_c .block-metrics:not([data-osser-custom-bg]) p,
.layout_c .block-metrics:not([data-osser-custom-bg]) .osser-metrics-grid{color:#fff!important;}
.layout_d .osser-cards-grid article:not(:nth-child(2)){background:#20242b;color:#fff;border-color:#ffffff30;}
.layout_d .osser-cards-grid article:not(:nth-child(2)) h3,
.layout_d .osser-cards-grid article:not(:nth-child(2)) p{color:#f7f7f8;}
@media(max-width:950px){
 .layout_c .detail-feature:nth-child(even) figure{order:2;}
 .layout_d .detail-feature{box-sizing:border-box;grid-template-columns:minmax(0,1fr);width:calc(100% - 36px);max-width:none;margin:0 auto 48px;}
 .layout_d .detail-feature figure,.layout_d .detail-copy{min-width:0;width:100%;min-height:0;}
 .layout_d .detail-feature figure{min-height:310px;}
 .layout_d .detail-copy{padding:clamp(24px,5vw,42px);}
}
@media(max-width:600px){
 .layout_d .detail-feature{width:calc(100% - 28px);}
 .layout_d .detail-copy h2{font-size:clamp(2rem,8.2vw,3.5rem);overflow-wrap:break-word;}
}

/* V40.32: Norte servicios a todo el ancho, sin columnas que compriman palabras. */
.layout_c .block-services .service-layout{display:grid;grid-template-columns:minmax(0,1fr);gap:clamp(25px,4vw,52px);max-width:1180px;margin-inline:auto;min-width:0}
.layout_c .block-services .editorial-photo{order:0;width:100%;height:clamp(260px,36vw,440px);min-height:0;margin:0;border-radius:22px;overflow:hidden}
.layout_c .block-services .editorial-photo img{width:100%;height:100%;object-fit:cover}
.layout_c .block-services .service-grid{order:1;display:grid;grid-template-columns:minmax(0,1fr);gap:0;width:100%;max-width:none;min-width:0;margin:0}
.layout_c .block-services .service-grid article{display:grid;grid-template-columns:64px minmax(0,1.05fr) minmax(0,1.5fr);grid-template-areas:none;gap:clamp(12px,2.5vw,30px);align-items:start;min-width:0;width:100%;padding:26px 4px!important}
.layout_c .block-services .service-grid article b{grid-area:auto;margin:0}
.layout_c .block-services .service-grid article h3{grid-area:auto;min-width:0;margin:8px 0;max-width:none;overflow-wrap:break-word;word-break:normal}
.layout_c .block-services .service-grid article p{grid-area:auto;grid-column:auto;min-width:0;max-width:none;margin:8px 0;overflow-wrap:break-word;word-break:normal}
@media(max-width:760px){
 .layout_c .block-services .service-grid article{grid-template-columns:52px minmax(0,1fr);gap:8px 16px}
 .layout_c .block-services .service-grid article h3{grid-column:2;margin-top:6px}
 .layout_c .block-services .service-grid article p{grid-column:2;margin-top:0}
 .layout_c .block-services .editorial-photo{height:270px}
}
