/* ── tp-* equivalentes (producto.css no se carga en recursos) ── */
.smr-tp-lbl{display:block;font-size:11px;font-weight:700;letter-spacing:2px;text-transform:uppercase;margin-bottom:0}
.smr-tp-lbl-teal{color:#00F2FF}
.smr-tp-gl{width:48px;height:2px;background:linear-gradient(90deg,#00F2FF,#CCFF00);border-radius:2px;margin:.5rem auto 1.25rem}
.smr-tp-gl-left{margin:.5rem 0 1.25rem}
.smr-tp-h2{font-size:clamp(26px,3vw,46px);font-weight:800;letter-spacing:-1.5px;line-height:1.15;color:#1F2937;margin:0 0 .75rem}
.smr-tp-white{color:#fff}
.smr-tp-h2 em{font-style:italic;font-weight:400}

/* ── Global shell (archive / single) ──────────────────────── */
.smr-shell{max-width:1300px;margin:0 auto;padding:0 24px 96px;color:#1f2937}
.smr-shell a{color:inherit;text-decoration:none}

/* ── Kicker usado en cards (con línea gradiente ::before) ─── */
.smr-card-kicker{display:inline-flex;align-items:center;gap:.55rem;color:#00F2FF;font-size:.8rem;font-weight:800;letter-spacing:.14em;text-transform:uppercase}
.smr-card-kicker::before{content:'';width:22px;height:2px;border-radius:999px;background:linear-gradient(90deg,#00f2ff,#ccff00)}

/* ── Hero ─────────────────────────────────────────────────── */
.smr-hero-sm{position:relative;overflow:hidden;border-radius:0 0 40px 40px;padding:120px 6% 72px;min-height:100vh;display:flex;flex-direction:column;justify-content:center}

/* Hero variante oscura — estilo tp-hero */
.smr-hero-dark{background:#1F2937;min-height:0;border-radius:0;padding:120px 6% 80px}
.smr-hd-bg1,.smr-hd-bg2{position:absolute;border-radius:50%;filter:blur(80px);pointer-events:none}
.smr-hd-bg1{width:560px;height:560px;background:radial-gradient(circle,rgba(0,242,255,.12) 0%,transparent 70%);top:-120px;left:-140px}
.smr-hd-bg2{width:400px;height:400px;background:radial-gradient(circle,rgba(204,255,0,.10) 0%,transparent 70%);bottom:-80px;right:-100px}
.smr-hd-grid{position:absolute;inset:0;background-image:radial-gradient(rgba(255,255,255,.06) 1px,transparent 1px);background-size:28px 28px;pointer-events:none;z-index:0}
/* Textos sobre fondo oscuro */
.smr-hero-dark .smr-hero-sm__title,
.smr-hero-dark .smr-arc-hero__title{color:#fff}
.smr-hero-dark .smr-hero-sm__intro,
.smr-hero-dark .smr-arc-hero__intro{color:rgba(255,255,255,.55)}
/* Botón fantasma sobre fondo oscuro */
.smr-hero-dark .smas-btn-ghost{color:rgba(255,255,255,.8);border-color:rgba(255,255,255,.3)}
.smr-hero-dark .smas-btn-ghost:hover{color:#fff;border-color:rgba(255,255,255,.65);box-shadow:0 0 10px rgba(0,242,255,.35)}
/* Filter nav sobre fondo oscuro */
.smr-hero-dark .smr-filter-nav a{color:rgba(255,255,255,.65);border-color:rgba(255,255,255,.2)}
.smr-hero-dark .smr-filter-nav a:hover:not(.is-active){color:#fff;border-color:rgba(255,255,255,.5)}
.smr-hero-dark .smr-filter-nav a.is-active{background:#CCFF00;border-color:#CCFF00;color:#1F2937}
/* Altura del hero de archivo */
.smr-hero-dark.smr-arc-hero{min-height:0;padding:140px 6% 80px}
.smr-hero-sm--archive{min-height:0;padding:140px 6% 64px}
.smr-shell--archive{padding-top:48px;padding-left:16px;padding-right:16px}
.smr-archive-hero{position:relative;overflow:hidden;border-radius:0 0 40px 40px;padding:120px 0 72px;margin:0 -24px 48px}
.smr-hero-sm__inner{position:relative;z-index:1;max-width:1300px;width:100%;margin:0 auto;padding:0;display:flex;flex-direction:column;align-items:center;text-align:center}
.smr-archive-hero__inner{position:relative;z-index:1;max-width:1180px;margin:0 auto;padding:0 24px}
.smr-hero-sm__pill-wrap{justify-content:center;margin-bottom:1.3rem}
.smr-hero-sm__title{text-align:center;max-width:900px;margin:0 0 1.25rem;color:#1f2937}
.smr-hero-sm__intro,.smr-archive-hero p{max-width:760px;font-size:1.06rem;line-height:1.75;color:#516071}
.smr-hero-sm__cta-row{display:flex;flex-wrap:wrap;gap:14px;margin-top:28px;justify-content:center}

/* ══════════════════════════════════════════════════════════
   ARQUITECTURA EDITORIAL — fondo #1F2937 (mismo que footer)
   ══════════════════════════════════════════════════════════ */
.smr-architecture{
    position:relative;
    overflow:hidden;
    background:#1F2937;
    padding:96px 6%;
}

/* ══════════════════════════════════════════════════════════
   ÚLTIMOS PUBLICADOS — fondo #1F2937 + dot grid (estilo tp-hero)
   ══════════════════════════════════════════════════════════ */
.smr-featured-strip{
    position:relative;
    overflow:hidden;
    background:#1F2937;
    padding:96px 6%;
}
.smr-featured-strip::before{
    content:'';
    position:absolute;
    inset:0;
    background-image:radial-gradient(rgba(255,255,255,.06) 1px,transparent 1px);
    background-size:28px 28px;
    pointer-events:none;
    z-index:0;
}

/* ── Blobs (radial gradient, mismo estilo que tp-hero-bg) ─── */
/* gb1/gb2 — arquitectura editorial; gb3/gb4 — featured strip */
.smrd-gb{position:absolute;border-radius:50%;pointer-events:none;filter:blur(72px);z-index:0}
.smrd-gb1{width:560px;height:560px;background:radial-gradient(circle,rgba(0,242,255,.22) 0%,transparent 65%);top:10%;left:-80px}
.smrd-gb2{width:460px;height:460px;background:radial-gradient(circle,rgba(204,255,0,.16) 0%,transparent 65%);bottom:5%;right:-60px}
.smrd-gb3{width:560px;height:560px;background:radial-gradient(circle,rgba(0,242,255,.18) 0%,transparent 65%);top:5%;left:-80px}
.smrd-gb4{width:460px;height:460px;background:radial-gradient(circle,rgba(204,255,0,.14) 0%,transparent 65%);bottom:5%;right:-60px}

/* ── Inner containers ─────────────────────────────────────── */
.smr-arch-inner,.smr-feat-inner{
    max-width:1300px;
    margin:0 auto;
    position:relative;
    z-index:1;
}

/* ── Section head ─────────────────────────────────────────── */
.smr-section-head{max-width:760px;margin-bottom:40px}
.smr-section-sub{font-size:1rem;line-height:1.75;color:rgba(255,255,255,.55);margin:.25rem 0 0}

/* ══════════════════════════════════════════════════════════
   TYPE GRID & CARDS — diseño estilo referencia
   ══════════════════════════════════════════════════════════ */
.smr-type-grid{
    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:24px;
}
.smr-type-card{
    background:rgba(255,255,255,.05);
    border:1px solid rgba(255,255,255,.10);
    border-radius:20px;
    padding:28px;
    display:flex;
    flex-direction:column;
    gap:0;
    transition:border-color .25s,box-shadow .25s;
}
.smr-type-card:hover{
    border-color:rgba(0,242,255,.35);
    box-shadow:0 12px 40px rgba(0,0,0,.25);
}
.smr-type-card h2{
    font-size:1.55rem;
    font-weight:800;
    color:#fff;
    letter-spacing:-.03em;
    line-height:1.15;
    margin:10px 0 10px;
}
.smr-type-card h2 a{color:#fff;text-decoration:none}
.smr-type-card h2 a:hover{color:#00F2FF}
.smr-type-card__desc{
    color:rgba(255,255,255,.52);
    font-size:.88rem;
    line-height:1.7;
    margin-bottom:18px;
}

/* ── Lista de entradas dentro de la card ──────────────────── */
.smr-list{
    margin:0;
    padding:0;
    display:flex;
    flex-direction:column;
    gap:8px;
    list-style:none;
    flex:1;
}
.smr-list li a{
    display:flex;
    align-items:center;
    gap:12px;
    padding:10px 12px;
    border-radius:12px;
    background:rgba(255,255,255,.04);
    border:1px solid rgba(255,255,255,.07);
    color:rgba(255,255,255,.78);
    font-size:.87rem;
    line-height:1.4;
    text-decoration:none;
    transition:background .2s,transform .2s;
}
.smr-list li a:hover{
    background:rgba(0,242,255,.08);
    border-color:rgba(0,242,255,.22);
    transform:translateX(3px);
}
.smr-list-icon{
    flex-shrink:0;
    width:32px;
    height:32px;
    border-radius:8px;
    background:rgba(255,255,255,.08);
    display:flex;
    align-items:center;
    justify-content:center;
}
.smr-list-empty{
    color:rgba(255,255,255,.3);
    font-size:.88rem;
    padding:8px 0;
    display:block;
}

/* ── CTA lime al pie de la architecture card ──────────────── */
.smr-type-cta{
    margin-top:20px;
    align-self:flex-start;
    white-space:nowrap;
    flex-shrink:0;
    gap:6px;
}
.smr-type-cta::after{
    content:'→';
    transition:transform .2s;
}
.smr-type-cta:hover::after{
    transform:translateX(4px);
}

/* ── Kicker badge — cards sobre fondo oscuro (architecture) ── */
.smr-type-card .smr-card-kicker {
    display:inline-flex;
    align-items:center;
    background:rgba(204,255,0,.12);
    border:1px solid rgba(204,255,0,.30);
    border-radius:999px;
    color:#CCFF00;
    font-size:10px;
    font-weight:700;
    letter-spacing:.12em;
    text-transform:uppercase;
    padding:3px 10px;
    margin-bottom:8px;
    gap:0;
}
.smr-type-card .smr-card-kicker::before { display:none; }

/* ── Kicker badge — cards blancas (archive + featured strip) ── */
.smr-arc-grid-section .smr-card-kicker,
.smr-featured-strip .smr-card-kicker {
    display:inline-flex;
    align-items:center;
    background:rgba(204,255,0,.18);
    border:1px solid rgba(204,255,0,.50);
    border-radius:999px;
    color:#3d4800;
    font-size:10px;
    font-weight:700;
    letter-spacing:.12em;
    text-transform:uppercase;
    padding:3px 10px;
    margin-bottom:8px;
    gap:0;
}
.smr-arc-grid-section .smr-card-kicker::before,
.smr-featured-strip .smr-card-kicker::before { display:none; }

/* ══════════════════════════════════════════════════════════
   FEATURED CARDS (blancas sobre fondo oscuro)
   ══════════════════════════════════════════════════════════ */
.smr-grid{
    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:24px;
}
.smr-card{
    border-radius:20px;
    background:#fff;
    border:1px solid rgba(255,255,255,.12);
    overflow:hidden;
    box-shadow:0 20px 56px rgba(0,0,0,.28);
    display:flex;
    flex-direction:column;
}
.smr-card--featured{background:linear-gradient(180deg,#ffffff,#f6fbff)}
.smr-card__media{display:block;width:100%;aspect-ratio:16/7;overflow:hidden;background:#d8e3ef;position:relative;flex-shrink:0}
.smr-card__media img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center top;display:block;transition:transform .5s ease}
.smr-card:hover .smr-card__media img{transform:scale(1.04)}
.smr-card__body{padding:22px 22px 24px;display:flex;flex-direction:column;flex:1}
.smr-card__body h2,.smr-card__body h3{margin:10px 0 12px;font-size:1.2rem;line-height:1.25;letter-spacing:-.02em;color:#1F2937}
.smr-card__body h3 a{color:#1F2937;text-decoration:none}
.smr-card__body h3 a:hover{color:#00b7c2}
.smr-card__body p{color:#6B7280;line-height:1.7;font-size:.9rem}
.smr-card__cta {
    display:inline-flex;align-items:center;
    margin-top:auto;
    padding-top:1rem;
    align-self:flex-start;
    font-size:14px;font-weight:600;color:#1F2937;
    background:#CCFF00;border:1px solid #CCFF00;
    border-radius:50px;padding:9px 20px;
    text-decoration:none;white-space:nowrap;
    transition:box-shadow .2s;
}
.smr-card__cta:hover{box-shadow:0 0 10px #CCFF00;color:#1F2937;}

/* ══════════════════════════════════════════════════════════
   ARCHIVE HERO (estilo partners / franquicias)
   ══════════════════════════════════════════════════════════ */
.smr-arc-hero{
    position:relative;
    overflow:visible;
    padding:160px 6% 100px;
    min-height:80vh;
    display:flex;
    flex-direction:column;
    align-items:center;
    justify-content:center;
    text-align:center;
}
.smr-arc-hero__inner{
    position:relative;
    z-index:1;
    display:flex;
    flex-direction:column;
    align-items:center;
    max-width:860px;
    width:100%;
}
.smr-arc-hero__pill{margin-bottom:1.2rem}
.smr-arc-hero__title{
    max-width:820px;
    margin:.5rem auto 1rem;
    color:#1F2937;
}
.smr-arc-hero__intro{
    font-size:16px;
    color:rgba(31,41,55,.55);
    line-height:1.75;
    max-width:620px;
    margin:0 auto 1.5rem;
}

/* ── Filter nav (estilo smas-btn-ghost / smas-btn-lime de la home) ── */
.smr-filter-nav{display:flex;flex-wrap:wrap;gap:10px;margin-top:4px;justify-content:center}
.smr-filter-nav a{display:inline-flex;align-items:center;padding:9px 20px;border-radius:50px;background:transparent;border:1px solid #1F2937;font-size:14px;font-weight:600;color:#1F2937;text-decoration:none;white-space:nowrap;transition:box-shadow .2s,background .2s,color .2s}
.smr-filter-nav a:hover:not(.is-active){box-shadow:0 0 10px rgba(0,242,255,.35)}
.smr-filter-nav a.is-active{background:#CCFF00;border-color:#CCFF00;color:#1F2937}

/* ── Archive grid section (fondo #1F2937 + dot grid + blobs) ── */
.smr-arc-grid-section{
    position:relative;
    overflow:hidden;
    background:#1F2937;
    padding:80px 6%;
}
.smr-arc-grid-section::before{
    content:'';
    position:absolute;
    inset:0;
    background-image:radial-gradient(rgba(255,255,255,.06) 1px,transparent 1px);
    background-size:28px 28px;
    pointer-events:none;
    z-index:0;
}
.smr-arc-blob{
    position:absolute;
    border-radius:50%;
    pointer-events:none;
    filter:blur(80px);
    z-index:0;
}
.smr-arc-blob1{width:560px;height:560px;background:radial-gradient(circle,rgba(0,242,255,.10) 0%,transparent 70%);top:-100px;right:-140px}
.smr-arc-blob2{width:420px;height:420px;background:radial-gradient(circle,rgba(204,255,0,.08) 0%,transparent 70%);bottom:-80px;left:-100px}
.smr-arc-grid-inner{
    max-width:1300px;
    margin:0 auto;
    position:relative;
    z-index:1;
}
.smr-arc-empty{color:rgba(255,255,255,.45);text-align:center;padding:48px 0;font-size:1rem}

/* ── Pagination ─────────────────────────────────────────── */
.smr-pagination{display:flex;flex-wrap:wrap;gap:10px;justify-content:center;margin-top:48px}
.smr-pagination .page-numbers{display:inline-flex;align-items:center;justify-content:center;min-width:48px;padding:12px 18px;border-radius:999px;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.12);color:rgba(255,255,255,.7);font-weight:700}
.smr-pagination .page-numbers.current{background:#CCFF00;border-color:#CCFF00;color:#1F2937}
.smr-pagination .page-numbers:hover{background:rgba(255,255,255,.15);color:#fff}

/* ── Single post ──────────────────────────────────────────── */
.smr-shell--single{max-width:1200px;padding-top:108px}
.smr-single{border-radius:34px;overflow:hidden;background:#fff;box-shadow:0 24px 80px rgba(15,24,41,.12);border:1px solid rgba(31,41,55,.08)}
.smr-single__hero{background:linear-gradient(160deg,#060e1e 0%,#0a1628 55%,#0d1f3c 100%);color:#fff;padding:56px 56px 48px;position:relative;overflow:hidden}
.smr-hero-arc{position:absolute;width:45%;height:auto;pointer-events:none;z-index:0;display:block;}
.smr-hero-arc--tl{top:-8%;left:-5%;}
.smr-hero-arc--br{bottom:-12%;right:-5%;}
.smr-single__copy{max-width:860px;position:relative;z-index:1;}
.smr-single__copy h1{margin:16px 0 18px;font-size:clamp(1.4rem,2vw,2rem);line-height:1.15;letter-spacing:-.03em;color:#fff}
.smr-single__subtitle{font-size:1.08rem;line-height:1.75;color:#b7c7d8;max-width:760px}
.smr-single__meta-row{display:flex;flex-wrap:wrap;gap:10px 12px;margin-top:22px}
.smr-single__meta-row span,.smr-single__meta-row a{display:inline-flex;padding:10px 14px;border-radius:999px;background:rgba(255,255,255,.07);color:#d9e4f0;font-size:.92rem}
.smr-highlight{display:inline-flex;margin:22px 0 0;padding:11px 18px;border-radius:999px;background:rgba(204,255,0,.12);color:#ccff00;font-weight:800;letter-spacing:-.01em}
.smr-single__content{padding:42px 48px 48px;color:#304153;line-height:1.85;font-size:1.03rem}
.smr-single__content h2,.smr-single__content h3,.smr-single__content h4{color:#1F2937;margin:1.9em 0 .65em;line-height:1.15;letter-spacing:-.03em}
.smr-single__content h2{font-size:1.4rem}
.smr-single__content h3{font-size:1.15rem}
.smr-single__content a{color:#005a8d;text-decoration:underline}
.smr-single__content figure,.smr-single__content img{max-width:100%;height:auto;border-radius:24px}
.smr-single__content ul,.smr-single__content ol{padding-left:24px;margin:1rem 0}
.smr-single__content li{margin:.45rem 0}
.smr-single__content .elementor-section{margin:0 0 28px!important;background:transparent!important}
.smr-single__content .elementor-container{max-width:100%!important;display:block!important}
.smr-single__content .elementor-column{width:100%!important;max-width:100%!important}
.smr-single__content .elementor-widget-wrap{padding:0!important;gap:0!important}
.smr-single__content .elementor-widget{margin-bottom:18px!important}
.smr-single__content .elementor-widget-heading h1,.smr-single__content .elementor-widget-heading h2,.smr-single__content .elementor-widget-heading h3,.smr-single__content .elementor-widget-heading h4{color:#1F2937!important;letter-spacing:-.03em}
.smr-single__content .elementor-widget-text-editor p{margin:0 0 1rem}
.smr-single__content .elementor-widget-image img{border-radius:24px;box-shadow:0 14px 38px rgba(16,24,40,.12)}
.smr-single__content .elementor-widget-button .elementor-button{display:inline-flex;padding:14px 24px;border-radius:999px;background:#ccff00;color:#101828;font-weight:800;border:none}
.smr-single__cta{padding:0 48px 48px}
.smr-single__demo-cta{padding:0 48px 56px;display:flex;gap:1rem;flex-wrap:wrap;align-items:center}
.smr-single__demo-copy{margin:0;font-size:15px;color:#6B7280}

/* ── Responsive ───────────────────────────────────────────── */
@media (max-width:1100px){
    .smr-type-grid,.smr-grid{grid-template-columns:repeat(2,1fr)}
}
@media (max-width:780px){
    .smr-shell{padding:0 16px 72px}
    .smr-hero-sm{padding:110px 6% 54px;border-radius:0}
    .smr-hero-sm__inner{padding:0 16px}
    .smr-hero-sm__title{text-align:center;font-size:46px;line-height:1.02}
    .smr-type-grid,.smr-grid{grid-template-columns:1fr}
    .smr-architecture,.smr-featured-strip,.smr-arc-grid-section{padding:64px 5%}
    .smr-arc-hero{padding:120px 5% 80px;min-height:auto}
    .smr-shell--single{padding-top:94px}
    .smr-single__hero{padding:36px 22px 32px}
    .smr-single__content,.smr-single__cta,.smr-single__demo-cta{padding-left:22px;padding-right:22px}
    .smr-single__content{padding-top:28px}
}
