/* =========================================================
   TENECESITAN — Tecnología y Apps V3 HUB
   Referencia visual: minimalismo SaaS, blanco, negro, grises,
   mucho espacio y jerarquía muy clara.
   ========================================================= */

.tn-tech{
    --tt-black:#1d1e22;
    --tt-ink:#1d1e22;
    --tt-muted:#68686b;
    --tt-muted-2:#8a8a8d;
    --tt-line:#dededb;
    --tt-soft:#f4f3ef;
    --tt-soft-2:#ecebe6;
    --tt-white:#ffffff;
    --tt-accent:#f1a06f;
    --tt-font:"Helvetica Neue",Helvetica,Arial,sans-serif;
    background:var(--tt-white);
    color:var(--tt-ink);
    font-family:var(--tt-font);
}

.tn-tech *{box-sizing:border-box}
.tn-tech a{text-decoration:none}
.tn-tech-shell{width:min(1240px,calc(100% - 76px));margin:0 auto}

.tn-tech-kicker{
    display:block;
    margin:0 0 22px;
    color:var(--tt-muted);
    font-size:.78rem;
    font-weight:500;
    letter-spacing:.02em;
    line-height:1.25;
    text-transform:none;
}

.tn-tech-btn{
    display:inline-flex;
    min-height:48px;
    padding:0 18px;
    align-items:center;
    justify-content:center;
    gap:18px;
    border:1px solid var(--tt-black);
    border-radius:10px;
    font-family:var(--tt-font);
    font-size:.91rem;
    font-weight:600;
    line-height:1;
    transition:background .16s ease,color .16s ease,transform .16s ease;
}
.tn-tech-btn--primary{background:var(--tt-black);color:#fff}
.tn-tech a.tn-tech-btn--primary:link,
.tn-tech a.tn-tech-btn--primary:visited{
    background:var(--tt-black) !important;
    border-color:var(--tt-black) !important;
    color:#fff !important;
}
.tn-tech a.tn-tech-btn--primary:hover,
.tn-tech a.tn-tech-btn--primary:focus-visible{
    background:var(--tt-accent) !important;
    border-color:var(--tt-accent) !important;
    color:var(--tt-black) !important;
    transform:translateY(-1px);
}
.tn-tech a.tn-tech-btn--primary:active{
    background:#e99260 !important;
    border-color:#e99260 !important;
    color:var(--tt-black) !important;
    transform:translateY(0);
}
.tn-tech a.tn-tech-btn:focus{outline:none}
.tn-tech a.tn-tech-btn:focus-visible{outline:2px solid var(--tt-accent);outline-offset:3px}

.tn-tech-text-link{
    display:inline-flex;
    align-items:center;
    gap:12px;
    color:var(--tt-black);
    font-size:.95rem;
    font-weight:500;
}
.tn-tech a.tn-tech-text-link:link,
.tn-tech a.tn-tech-text-link:visited{color:var(--tt-black)}
.tn-tech a.tn-tech-text-link:hover,
.tn-tech a.tn-tech-text-link:focus-visible{color:var(--tt-accent)}
.tn-tech a.tn-tech-text-link:focus{outline:none}
.tn-tech a.tn-tech-text-link:focus-visible{outline:2px solid var(--tt-accent);outline-offset:3px}

.tn-tech a.tn-tool-v4-alt-row:visited,
.tn-tech a.tn-hub-case__visual:visited,
.tn-tech a.tn-hub-chip:visited{color:var(--tt-black)}

/* HUB — HERO */
.tn-hub-hero{padding:112px 0 92px}
.tn-hub-hero__grid{
    display:grid;
    grid-template-columns:minmax(0,1.05fr) minmax(360px,.95fr);
    gap:112px;
    align-items:start;
}
.tn-hub-hero__copy{max-width:650px}
.tn-hub-hero h1{
    margin:0;
    max-width:650px;
    color:var(--tt-black) !important;
    font-family:var(--tt-font) !important;
    font-size:clamp(3.2rem,5.3vw,5.25rem) !important;
    font-weight:500 !important;
    letter-spacing:-.055em !important;
    line-height:1.02 !important;
}
.tn-hub-hero__copy>p{
    max-width:610px;
    margin:26px 0 0;
    color:var(--tt-muted);
    font-size:1.18rem;
    line-height:1.62;
}
.tn-hub-hero__filters{padding-top:33px}
.tn-hub-hero__filters>p{margin:0 0 24px;color:var(--tt-muted);font-size:1.05rem;line-height:1.4}
.tn-hub-chips{display:flex;flex-wrap:wrap;gap:10px}
.tn-hub-chip{
    display:inline-flex;
    min-height:42px;
    padding:0 16px;
    align-items:center;
    justify-content:center;
    border:1px solid var(--tt-line);
    border-radius:10px;
    background:transparent;
    color:var(--tt-black);
    font-size:.92rem;
    font-weight:500;
    transition:border-color .15s ease,background .15s ease;
}
.tn-hub-chip:hover,.tn-hub-chip--active{border-color:#c8c8c4;background:#fafaf8;color:var(--tt-black)}

/* HUB — PRODUCT CASES */
.tn-hub-cases{padding:42px 0 34px}
.tn-hub-case{
    display:grid;
    grid-template-columns:minmax(300px,.78fr) minmax(520px,1.22fr);
    gap:92px;
    align-items:center;
    min-height:570px;
    padding:84px 0;
    border-top:1px solid var(--tt-line);
    scroll-margin-top:110px;
}
.tn-hub-case:first-child{border-top:0}
.tn-hub-case__copy{max-width:430px}
.tn-hub-case__tag{
    display:inline-flex;
    min-height:29px;
    padding:0 11px;
    align-items:center;
    border:1px solid var(--tt-line);
    border-radius:999px;
    color:var(--tt-muted);
    font-size:.78rem;
    font-weight:500;
}
.tn-hub-case h2{
    margin:30px 0 0;
    color:var(--tt-black) !important;
    font-family:var(--tt-font) !important;
    font-size:clamp(2.4rem,3.6vw,3.7rem) !important;
    font-weight:500 !important;
    letter-spacing:-.045em !important;
    line-height:1.04 !important;
}
.tn-hub-case__copy>p{
    max-width:430px;
    margin:20px 0 28px;
    color:var(--tt-muted);
    font-size:1.08rem;
    line-height:1.62;
}
.tn-hub-case__visual{
    display:flex;
    min-height:420px;
    align-items:center;
    justify-content:center;
    overflow:hidden;
    border-radius:9px;
    background:var(--tt-soft-2);
    color:var(--tt-black);
}
.tn-hub-case__visual:hover{color:var(--tt-black)}
.tn-hub-case__visual>img{display:block;width:100%;height:100%;min-height:420px;object-fit:cover}
.tn-hub-case__visual-inner{
    width:calc(100% - 48px);
    max-width:610px;
    min-height:350px;
    padding:40px;
    display:flex;
    flex-direction:column;
    justify-content:flex-end;
    border:1px solid rgba(29,30,34,.12);
    border-radius:7px;
    background:#fff;
    box-shadow:0 18px 40px rgba(29,30,34,.05);
}
.tn-hub-case__visual-brand{margin-bottom:auto;color:var(--tt-muted);font-size:.86rem;font-weight:500}
.tn-hub-case__visual-inner strong{
    display:block;
    color:var(--tt-black);
    font-size:clamp(3.5rem,6.5vw,6.9rem);
    font-weight:500;
    letter-spacing:-.075em;
    line-height:.9;
}
.tn-hub-case__visual-line{display:block;width:100%;height:1px;margin:26px 0 22px;background:var(--tt-line)}
.tn-hub-case__visual-inner p{max-width:480px;margin:0;color:var(--tt-muted);font-size:.96rem;line-height:1.5}

/* HUB — CRITERIA */
.tn-hub-criteria{padding:112px 0 126px;border-top:1px solid var(--tt-line)}
.tn-hub-criteria__grid{
    display:grid;
    grid-template-columns:minmax(0,1fr) minmax(360px,.8fr);
    gap:112px;
    align-items:start;
}
.tn-hub-criteria h2{
    max-width:620px;
    margin:0;
    color:var(--tt-black) !important;
    font-family:var(--tt-font) !important;
    font-size:clamp(2.7rem,4.6vw,4.7rem) !important;
    font-weight:500 !important;
    letter-spacing:-.052em !important;
    line-height:1.02 !important;
}
.tn-hub-criteria__copy{padding-top:34px}
.tn-hub-criteria__copy p{max-width:540px;margin:0 0 28px;color:var(--tt-muted);font-size:1.08rem;line-height:1.65}

.tn-tech-empty{padding:70px 0;color:var(--tt-muted);font-size:1rem}

/* PRODUCT PAGE */
.tn-tool-page .tn-tech-shell{padding-bottom:90px}
.tn-tool-breadcrumbs{display:flex;gap:9px;align-items:center;padding-top:38px;color:var(--tt-muted-2);font-size:.78rem}
.tn-tool-breadcrumbs a{color:var(--tt-muted)}
.tn-tool-breadcrumbs a:hover{color:var(--tt-black)}

.tn-tool-hero{
    display:grid;
    grid-template-columns:minmax(0,1.45fr) minmax(290px,.55fr);
    gap:86px;
    padding:92px 0 108px;
    border-bottom:1px solid var(--tt-line);
}
.tn-tool-hero__main h1{
    max-width:820px;
    margin:0;
    color:var(--tt-black);
    font-family:var(--tt-font);
    font-size:clamp(3.2rem,6.4vw,6.3rem);
    font-weight:500;
    letter-spacing:-.06em;
    line-height:.94;
}
.tn-tool-hero__headline{max-width:760px;margin:30px 0 0;color:var(--tt-black);font-size:clamp(1.25rem,2vw,1.7rem);font-weight:500;letter-spacing:-.02em;line-height:1.35}
.tn-tool-hero__subheadline{max-width:720px;margin:20px 0 0;color:var(--tt-muted);font-size:1rem;line-height:1.65}
.tn-tool-hero__actions{display:flex;align-items:center;gap:24px;flex-wrap:wrap;margin-top:34px}

.tn-tool-hero__facts{padding-left:34px;border-left:1px solid var(--tt-line)}
.tn-tool-brandmark{display:flex;width:56px;height:56px;margin-bottom:34px;align-items:center;justify-content:center}
.tn-tool-brandmark img{width:100%;height:100%;object-fit:contain}
.tn-tool-hero__facts dl{margin:0}
.tn-tool-hero__facts dl>div{padding:18px 0;border-top:1px solid var(--tt-line)}
.tn-tool-hero__facts dl>div:last-child{border-bottom:1px solid var(--tt-line)}
.tn-tool-hero__facts dt{color:var(--tt-muted);font-size:.74rem}
.tn-tool-hero__facts dd{margin:6px 0 0;color:var(--tt-black);font-size:.96rem;font-weight:600;line-height:1.35}
.tn-tool-hero__price-note{margin:18px 0 0;color:var(--tt-muted);font-size:.77rem;line-height:1.5}

.tn-tool-section{display:grid;grid-template-columns:72px minmax(0,1fr);gap:28px;padding:100px 0;border-bottom:1px solid var(--tt-line)}
.tn-tool-section h2{font-size:clamp(2.1rem,3.6vw,3.75rem)}
.tn-tool-summary>div{max-width:900px}
.tn-tool-summary p{margin:22px 0 0;color:var(--tt-muted);font-size:clamp(1.18rem,2vw,1.55rem);line-height:1.55}

.tn-tool-fit__grid{display:grid;grid-template-columns:1fr 1fr;gap:70px}
.tn-tool-fit__grid>div+div{padding-left:70px;border-left:1px solid var(--tt-line)}
.tn-tool-fit ul,.tn-tool-two-col ul{list-style:none;margin:30px 0 0;padding:0}
.tn-tool-fit li,.tn-tool-two-col li{position:relative;margin:0;padding:18px 0 18px 22px;border-top:1px solid var(--tt-line);color:var(--tt-muted);font-size:.94rem;line-height:1.55}
.tn-tool-fit li:last-child,.tn-tool-two-col li:last-child{border-bottom:1px solid var(--tt-line)}
.tn-tool-fit li::before,.tn-tool-two-col li::before{content:"";position:absolute;left:0;top:1.65rem;width:5px;height:5px;border-radius:50%;background:var(--tt-accent)}

.tn-tool-section__head-clean{display:contents}
.tn-tool-section__head-clean>div{max-width:780px}
.tn-tool-section__head-clean p{margin:16px 0 0;color:var(--tt-muted);font-size:.96rem}
.tn-tool-problems-clean{grid-column:2;display:grid;grid-template-columns:repeat(3,1fr);margin-top:44px;border-top:1px solid var(--tt-line)}
.tn-tool-problems-clean article{min-height:260px;padding:24px 30px 0 0;border-right:1px solid var(--tt-line)}
.tn-tool-problems-clean article+article{padding-left:30px}
.tn-tool-problems-clean article:last-child{border-right:0}
.tn-tool-problems-clean article>span{color:var(--tt-muted-2);font-size:.72rem;font-weight:700}
.tn-tool-problems-clean h3{margin:58px 0 0;color:var(--tt-black);font-size:1.25rem;font-weight:600;letter-spacing:-.025em}
.tn-tool-problems-clean p{margin:12px 0 0;color:var(--tt-muted);font-size:.9rem;line-height:1.58}

.tn-tool-two-col{grid-template-columns:72px 1fr 1fr}
.tn-tool-two-col>div+div{padding-left:62px;border-left:1px solid var(--tt-line)}
.tn-tool-two-col h2{font-size:clamp(1.9rem,3vw,3rem)}

.tn-tool-balance-clean{grid-template-columns:72px 1fr 1fr}
.tn-tool-balance-clean>div+div{padding-left:62px;border-left:1px solid var(--tt-line)}
.tn-tool-balance-clean h2{font-size:clamp(1.9rem,3vw,3rem)}
.tn-tool-balance-clean p{padding:18px 0;margin:0;border-top:1px solid var(--tt-line);color:var(--tt-muted);font-size:.93rem;line-height:1.58}
.tn-tool-balance-clean h2+p{margin-top:28px}
.tn-tool-balance-clean p:last-child{border-bottom:1px solid var(--tt-line)}

.tn-tool-price-band{
    display:flex;
    align-items:flex-end;
    justify-content:space-between;
    gap:50px;
    margin:100px 0;
    padding:58px 62px;
    background:var(--tt-soft);
}
.tn-tool-price-band>div{max-width:700px}
.tn-tool-price-band h2{font-size:clamp(2.6rem,4.5vw,4.5rem)}
.tn-tool-price-band p{margin:16px 0 0;color:var(--tt-muted);font-size:.92rem;line-height:1.55}

.tn-tool-alternatives-clean{grid-template-columns:72px minmax(0,.85fr) minmax(280px,.65fr)}
.tn-tool-alternatives-clean>div:nth-child(2) p{margin:14px 0 0;color:var(--tt-muted);font-size:.9rem}
.tn-tool-alternatives-clean__list{border-top:1px solid var(--tt-line)}
.tn-tool-alternatives-clean__list span{display:block;padding:18px 0;border-bottom:1px solid var(--tt-line);color:var(--tt-black);font-size:.95rem}

.tn-tool-related-clean{grid-template-columns:72px minmax(0,1fr)}
.tn-tool-related-clean__links{margin-top:34px;border-top:1px solid var(--tt-line)}
.tn-tool-related-clean__links a{display:flex;justify-content:space-between;padding:20px 0;border-bottom:1px solid var(--tt-line);color:var(--tt-black);font-size:.95rem;font-weight:600}
.tn-tool-related-clean__links a span:last-child{color:#aaa}

.tn-tool-final-clean{
    display:flex;
    align-items:flex-end;
    justify-content:space-between;
    gap:60px;
    padding:96px 0;
    border-bottom:1px solid var(--tt-line);
}
.tn-tool-final-clean>div{max-width:760px}
.tn-tool-final-clean h2{font-size:clamp(2.6rem,4.6vw,4.8rem)}
.tn-tool-final-clean p{max-width:620px;margin:18px 0 0;color:var(--tt-muted);font-size:.95rem;line-height:1.6}

.tn-tool-editorial-note-clean{padding:30px 0 0}
.tn-tool-editorial-note-clean p{max-width:850px;margin:0;color:var(--tt-muted-2);font-size:.74rem;line-height:1.55}

/* Legacy card / bait styles kept minimal for reuse elsewhere */
.tn-tool-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0;border-top:1px solid var(--tt-line)}
.tn-tool-card{border-right:1px solid var(--tt-line);border-bottom:1px solid var(--tt-line);background:#fff}
.tn-tool-card:first-child{border-left:1px solid var(--tt-line)}
.tn-tool-card__link{display:flex;min-height:330px;padding:26px;color:var(--tt-black);flex-direction:column}
.tn-tool-card__top{display:flex;justify-content:space-between;gap:18px}
.tn-tool-card__mark{display:flex;width:46px;height:46px;align-items:center;justify-content:center}
.tn-tool-card__mark img{width:100%;height:100%;object-fit:contain}
.tn-tool-card__mark span{font-size:.7rem;font-weight:700}
.tn-tool-card__arrow{color:#aaa}
.tn-tool-card__body{margin-top:58px}
.tn-tool-card__category{color:var(--tt-muted);font-size:.7rem;font-weight:600;text-transform:uppercase;letter-spacing:.08em}
.tn-tool-card h3{margin:10px 0 0;color:var(--tt-black);font-size:1.45rem;font-weight:600;letter-spacing:-.03em;line-height:1.08}
.tn-tool-card p{margin:12px 0 0;color:var(--tt-muted);font-size:.86rem;line-height:1.5}
.tn-tool-card__footer{display:flex;justify-content:space-between;gap:14px;margin-top:auto;padding-top:24px;color:var(--tt-black);font-size:.75rem;font-weight:600}
.tn-tool-card__meta{color:var(--tt-muted-2);font-weight:400}

.tn-tool-bait{padding:28px;border-top:1px solid var(--tt-black);border-bottom:1px solid var(--tt-line);background:#fff}
.tn-tool-bait__eyebrow{color:var(--tt-muted);font-size:.68rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase}
.tn-tool-bait h3{margin:12px 0 0;color:var(--tt-black);font-size:1.35rem;font-weight:600;letter-spacing:-.025em}
.tn-tool-bait p{margin:10px 0 0;color:var(--tt-muted);font-size:.86rem;line-height:1.5}
.tn-tool-bait__links{margin-top:20px;border-top:1px solid var(--tt-line)}
.tn-tool-bait__links a{display:flex;justify-content:space-between;gap:16px;padding:13px 0;border-bottom:1px solid var(--tt-line);color:var(--tt-black);font-size:.82rem;font-weight:600}



/* RESPONSIVE */
@media (max-width:980px){
    .tn-tech-shell{width:min(100% - 48px,1240px)}
    .tn-hub-hero__grid,.tn-hub-criteria__grid{grid-template-columns:1fr;gap:54px}
    .tn-hub-hero__filters{padding-top:0;max-width:680px}
    .tn-hub-case{grid-template-columns:1fr;gap:46px;min-height:0;padding:72px 0}
    .tn-hub-case__copy{max-width:620px}
    .tn-hub-case__visual{min-height:380px}
    .tn-tool-hero{grid-template-columns:1fr;gap:56px}
    .tn-tool-hero__facts{padding-left:0;border-left:0;border-top:1px solid var(--tt-line);padding-top:34px}
    .tn-tool-fit__grid{gap:40px}
    .tn-tool-two-col,.tn-tool-balance-clean,.tn-tool-alternatives-clean{grid-template-columns:72px 1fr}
    .tn-tool-two-col>div:nth-child(3),.tn-tool-balance-clean>div:nth-child(3),.tn-tool-alternatives-clean>div:nth-child(3){grid-column:2;padding-left:0;border-left:0;margin-top:56px}
    .tn-tool-problems-clean{grid-template-columns:1fr}
    .tn-tool-problems-clean article,.tn-tool-problems-clean article+article{min-height:0;padding:28px 0;border-right:0;border-bottom:1px solid var(--tt-line)}
    .tn-tool-problems-clean h3{margin-top:22px}
    .tn-tool-price-band{align-items:flex-start;flex-direction:column}
}

@media (max-width:720px){
    .tn-tech-shell{width:min(100% - 34px,1240px)}
    .tn-hub-hero{padding:72px 0 54px}
    .tn-hub-hero__grid{gap:44px}
    .tn-hub-hero h1{font-size:clamp(3rem,14vw,4.6rem) !important}
    .tn-hub-hero__copy>p{font-size:1.02rem}
    .tn-hub-chip{min-height:39px;padding:0 13px;font-size:.86rem}
    .tn-hub-cases{padding-top:8px}
    .tn-hub-case{padding:58px 0;gap:34px}
    .tn-hub-case h2{font-size:clamp(2.35rem,11vw,3.6rem) !important}
    .tn-hub-case__copy>p{font-size:1rem}
    .tn-hub-case__visual{min-height:300px;border-radius:8px}
    .tn-hub-case__visual-inner{width:calc(100% - 28px);min-height:270px;padding:27px}
    .tn-hub-case__visual-inner strong{font-size:clamp(3rem,20vw,5rem)}
    .tn-hub-criteria{padding:78px 0 88px}
    .tn-hub-criteria__grid{gap:28px}
    .tn-hub-criteria__copy{padding-top:0}
    .tn-tool-breadcrumbs{overflow:hidden;white-space:nowrap;text-overflow:ellipsis}
    .tn-tool-hero{padding:68px 0 76px}
    .tn-tool-hero__main h1{font-size:clamp(3rem,14vw,5.1rem)}
    .tn-tool-section{grid-template-columns:1fr;gap:18px;padding:76px 0}
    .tn-tool-fit__grid{grid-template-columns:1fr;gap:0}
    .tn-tool-fit__grid>div+div{padding-left:0;border-left:0;margin-top:54px}
    .tn-tool-problems-clean{grid-column:1}
    .tn-tool-two-col,.tn-tool-balance-clean,.tn-tool-alternatives-clean{grid-template-columns:1fr}
    .tn-tool-two-col>div:nth-child(3),.tn-tool-balance-clean>div:nth-child(3),.tn-tool-alternatives-clean>div:nth-child(3){grid-column:1}
    .tn-tool-price-band{margin:76px 0;padding:38px 28px}
    .tn-tool-related-clean{grid-template-columns:1fr}
    .tn-tool-grid{grid-template-columns:1fr}
    .tn-tool-card{border-left:1px solid var(--tt-line)}
}

/* =========================================================
   PRODUCT PAGE V4 — lower content inspired by editorial SaaS
   service / industry layouts. Hero intentionally preserved.
   ========================================================= */

.tn-tool-v4-index{
    display:block;
    margin:0 0 26px;
    color:var(--tt-muted-2);
    font-size:.72rem;
    font-weight:600;
    letter-spacing:.02em;
}

.tn-tool-v4-intro{
    display:grid;
    grid-template-columns:minmax(300px,.9fr) minmax(420px,1.1fr);
    gap:110px;
    padding:104px 0 90px;
    border-bottom:1px dashed #b9b9b5;
}
.tn-tool-v4-intro__lead h2{
    max-width:560px;
    margin:0;
    color:var(--tt-black) !important;
    font-family:var(--tt-font) !important;
    font-size:clamp(2.3rem,3.8vw,4.15rem) !important;
    font-weight:500 !important;
    letter-spacing:-.05em !important;
    line-height:1.03 !important;
}
.tn-tool-v4-intro__copy{padding-top:38px}
.tn-tool-v4-intro__copy p{
    max-width:650px;
    margin:0 0 18px;
    color:var(--tt-muted);
    font-size:1rem;
    line-height:1.72;
}

.tn-tool-v4-service{
    padding:82px 0 88px;
    border-bottom:1px dashed #b9b9b5;
}
.tn-tool-v4-service__top{
    display:grid;
    grid-template-columns:minmax(0,1fr) minmax(240px,.42fr);
    gap:80px;
}
.tn-tool-v4-service__top>div{max-width:760px}
.tn-tool-v4-service h2,
.tn-tool-v4-list-section h2{
    margin:0;
    color:var(--tt-black) !important;
    font-family:var(--tt-font) !important;
    font-size:clamp(2.15rem,3.4vw,3.55rem) !important;
    font-weight:500 !important;
    letter-spacing:-.045em !important;
    line-height:1.04 !important;
}
.tn-tool-v4-service__top p{
    max-width:650px;
    margin:19px 0 28px;
    color:var(--tt-muted);
    font-size:.98rem;
    line-height:1.68;
}
.tn-tool-v4-service__bottom{
    display:grid;
    grid-template-columns:minmax(0,.72fr) minmax(0,.72fr) minmax(230px,.56fr);
    gap:64px;
    align-items:end;
    margin-top:66px;
}
.tn-tool-v4-mini h3{
    margin:0 0 20px;
    color:var(--tt-black);
    font-size:1rem;
    font-weight:600;
    letter-spacing:-.015em;
}
.tn-tool-v4-mini p{
    margin:0 0 13px;
    color:var(--tt-muted);
    font-size:.91rem;
    line-height:1.62;
}
.tn-tool-v4-mini p:last-child{margin-bottom:0}

.tn-tool-v4-lineart{
    position:relative;
    width:210px;
    height:190px;
    justify-self:end;
    opacity:.68;
}
.tn-tool-v4-lineart__mark{
    position:absolute;
    left:50%;
    top:50%;
    z-index:2;
    transform:translate(-50%,-50%);
    color:var(--tt-muted);
    font-size:.75rem;
    font-weight:600;
    letter-spacing:.06em;
}
.tn-tool-v4-lineart__grid{
    position:absolute;
    inset:25px 22px;
    display:grid;
    grid-template-columns:repeat(3,1fr);
    grid-template-rows:repeat(3,1fr);
    transform:skewY(-18deg) rotate(8deg);
}
.tn-tool-v4-lineart__grid span{
    border-top:1px solid #b6b6b2;
    border-left:1px solid #b6b6b2;
}
.tn-tool-v4-lineart__grid span:nth-child(3n){border-right:1px solid #b6b6b2}
.tn-tool-v4-lineart__grid span:nth-last-child(-n+3){border-bottom:1px solid #b6b6b2}
.tn-tool-v4-lineart--small{transform:scale(.86);transform-origin:right bottom}

.tn-tool-v4-list-section{
    padding:92px 0 96px;
    border-bottom:1px dashed #b9b9b5;
}
.tn-tool-v4-list-section__intro{
    display:grid;
    grid-template-columns:minmax(280px,.8fr) minmax(420px,1.2fr);
    column-gap:96px;
    row-gap:18px;
    margin-bottom:62px;
}
.tn-tool-v4-list-section__intro .tn-tool-v4-index{grid-column:1 / -1;margin-bottom:2px}
.tn-tool-v4-list-section__intro>p{
    max-width:600px;
    margin:10px 0 0;
    color:var(--tt-muted);
    font-size:.95rem;
    line-height:1.65;
}
.tn-tool-v4-list-section__intro--wide{grid-template-columns:minmax(360px,1fr) minmax(360px,.8fr)}

.tn-tool-v4-rows,
.tn-tool-v4-alt-rows,
.tn-tool-v4-decision-rows{border-top:1px dashed #b9b9b5}

.tn-tool-v4-row{
    display:grid;
    grid-template-columns:minmax(210px,.45fr) minmax(420px,1fr) 34px;
    gap:58px;
    align-items:start;
    padding:28px 0;
    border-bottom:1px dashed #b9b9b5;
}
.tn-tool-v4-row h3{
    margin:0;
    color:var(--tt-black);
    font-size:1.7rem;
    font-weight:500;
    letter-spacing:-.035em;
    line-height:1.08;
}
.tn-tool-v4-row__body p{
    max-width:690px;
    margin:0;
    color:var(--tt-muted);
    font-size:.93rem;
    line-height:1.62;
}
.tn-tool-v4-tags{display:flex;flex-wrap:wrap;gap:7px;margin-top:15px}
.tn-tool-v4-tags span,
.tn-tool-v4-alt-row>span:nth-child(2){
    display:inline-flex;
    min-height:24px;
    padding:0 9px;
    align-items:center;
    border:1px solid var(--tt-line);
    border-radius:7px;
    color:var(--tt-muted);
    font-size:.68rem;
    font-weight:500;
    line-height:1;
}
.tn-tool-v4-row__arrow{
    justify-self:end;
    color:#a8a8a4;
    font-size:1.4rem;
    font-weight:300;
}

.tn-tool-v4-decision-row{
    display:grid;
    grid-template-columns:minmax(220px,.45fr) minmax(420px,1fr);
    gap:70px;
    padding:33px 0;
    border-bottom:1px dashed #b9b9b5;
}
.tn-tool-v4-decision-row h3{
    margin:0;
    color:var(--tt-black);
    font-size:1.8rem;
    font-weight:500;
    letter-spacing:-.035em;
}
.tn-tool-v4-decision-row div{
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:12px 36px;
}
.tn-tool-v4-decision-row p{
    margin:0;
    color:var(--tt-muted);
    font-size:.92rem;
    line-height:1.62;
}

.tn-tool-v4-price{
    display:grid;
    grid-template-columns:minmax(0,1fr) auto;
    gap:70px;
    align-items:end;
    padding:94px 0;
    border-bottom:1px dashed #b9b9b5;
}
.tn-tool-v4-price>div{max-width:760px}
.tn-tool-v4-price h2{
    margin:0;
    color:var(--tt-black) !important;
    font-family:var(--tt-font) !important;
    font-size:clamp(2.6rem,4.4vw,4.55rem) !important;
    font-weight:500 !important;
    letter-spacing:-.055em !important;
    line-height:1.02 !important;
}
.tn-tool-v4-price p{
    max-width:650px;
    margin:18px 0 0;
    color:var(--tt-muted);
    font-size:.92rem;
    line-height:1.62;
}

.tn-tool-v4-alt-row{
    display:grid;
    grid-template-columns:minmax(240px,.55fr) minmax(180px,1fr) 34px;
    gap:56px;
    align-items:center;
    padding:27px 0;
    border-bottom:1px dashed #b9b9b5;
    color:var(--tt-black);
}
a.tn-tool-v4-alt-row:hover{color:var(--tt-black)}
.tn-tool-v4-alt-row h3{
    margin:0;
    color:var(--tt-black);
    font-size:1.6rem;
    font-weight:500;
    letter-spacing:-.03em;
}
.tn-tool-v4-alt-row>span:last-child{justify-self:end;color:#a8a8a4;font-size:1.35rem}

.tn-tool-v4-final{
    display:grid;
    grid-template-columns:minmax(0,1fr) auto;
    gap:72px;
    align-items:end;
    padding:108px 0 96px;
}
.tn-tool-v4-final>div{max-width:760px}
.tn-tool-v4-final h2{
    margin:0;
    color:var(--tt-black) !important;
    font-family:var(--tt-font) !important;
    font-size:clamp(2.8rem,4.7vw,4.9rem) !important;
    font-weight:500 !important;
    letter-spacing:-.055em !important;
    line-height:1 !important;
}
.tn-tool-v4-final p{
    max-width:620px;
    margin:18px 0 0;
    color:var(--tt-muted);
    font-size:.94rem;
    line-height:1.62;
}

@media (max-width:980px){
    .tn-tool-v4-intro{grid-template-columns:1fr;gap:34px}
    .tn-tool-v4-intro__copy{padding-top:0}
    .tn-tool-v4-service__bottom{grid-template-columns:1fr 1fr;gap:46px}
    .tn-tool-v4-lineart{grid-column:1 / -1;justify-self:start;margin-top:12px}
    .tn-tool-v4-list-section__intro{grid-template-columns:1fr;gap:18px}
    .tn-tool-v4-row{grid-template-columns:minmax(180px,.42fr) minmax(0,1fr) 30px;gap:34px}
    .tn-tool-v4-decision-row{grid-template-columns:220px minmax(0,1fr);gap:46px}
}

@media (max-width:720px){
    .tn-tool-v4-intro{padding:76px 0 64px}
    .tn-tool-v4-service,.tn-tool-v4-list-section{padding:68px 0}
    .tn-tool-v4-service__bottom{grid-template-columns:1fr;margin-top:44px}
    .tn-tool-v4-lineart{grid-column:1;justify-self:start}
    .tn-tool-v4-row{grid-template-columns:1fr 26px;gap:12px 20px;padding:24px 0}
    .tn-tool-v4-row h3{grid-column:1;font-size:1.45rem}
    .tn-tool-v4-row__body{grid-column:1}
    .tn-tool-v4-row__arrow{grid-column:2;grid-row:1 / 3}
    .tn-tool-v4-decision-row{grid-template-columns:1fr;gap:22px}
    .tn-tool-v4-decision-row div{grid-template-columns:1fr;gap:12px}
    .tn-tool-v4-price,.tn-tool-v4-final{grid-template-columns:1fr;align-items:start;gap:34px}
    .tn-tool-v4-alt-row{grid-template-columns:1fr auto;gap:12px 20px}
    .tn-tool-v4-alt-row>span:nth-child(2){grid-column:1}
    .tn-tool-v4-alt-row>span:last-child{grid-column:2;grid-row:1 / 3}
}


/* =========================================================
   PRODUCT PAGE V6 — refinement
   - one-column editorial intro
   - fewer separators
   - comparison-style pros / limits block
   ========================================================= */

.tn-tool-v6-intro{
    max-width:900px;
    padding:96px 0 92px;
}
.tn-tool-v6-intro .tn-tech-kicker{margin-bottom:18px}
.tn-tool-v6-intro h2{
    max-width:820px;
    margin:0;
    color:var(--tt-black) !important;
    font-family:var(--tt-font) !important;
    font-size:clamp(2rem,3vw,3rem) !important;
    font-weight:500 !important;
    letter-spacing:-.042em !important;
    line-height:1.08 !important;
}
.tn-tool-v6-intro__copy{
    max-width:760px;
    margin-top:28px;
}
.tn-tool-v6-intro__copy p{
    margin:0 0 14px;
    color:var(--tt-muted);
    font-size:1rem;
    line-height:1.72;
}
.tn-tool-v6-intro__copy p:last-child{margin-bottom:0}

/* One separator per major block, instead of stacked dashed lines. */
.tn-tool-v4-service,
.tn-tool-v4-list-section,
.tn-tool-v4-price,
.tn-tool-v4-final{
    border-bottom:0 !important;
    border-top:1px dashed #c5c5c1;
}
.tn-tool-v4-service{padding-top:82px}
.tn-tool-v4-list-section{padding-top:88px}

.tn-tool-v4-rows,
.tn-tool-v4-alt-rows{
    border-top:1px solid var(--tt-line) !important;
}
.tn-tool-v4-row,
.tn-tool-v4-alt-row{
    border-bottom:1px solid var(--tt-line) !important;
}
.tn-tool-v4-row:last-child,
.tn-tool-v4-alt-row:last-child{
    border-bottom:0 !important;
}

/* Softer, less busy row typography. */
.tn-tool-v4-row{padding:25px 0}
.tn-tool-v4-row h3{font-size:1.48rem}
.tn-tool-v4-row__body p{font-size:.92rem}
.tn-tool-v4-row__arrow{font-size:1.15rem}

/* Comparison block inspired by Eleken's neutral comparison tables. */
.tn-tool-v6-balance{
    position:relative;
    padding:100px 0 108px;
    background:var(--tt-soft);
    box-shadow:0 0 0 100vmax var(--tt-soft);
    clip-path:inset(0 -100vmax);
}
.tn-tool-v6-balance__head{
    max-width:760px;
    margin:0 auto 54px;
    text-align:center;
}
.tn-tool-v6-balance__head .tn-tool-v4-index{margin-bottom:18px}
.tn-tool-v6-balance__head h2{
    margin:0;
    color:var(--tt-black) !important;
    font-family:var(--tt-font) !important;
    font-size:clamp(2.35rem,3.8vw,3.75rem) !important;
    font-weight:500 !important;
    letter-spacing:-.045em !important;
    line-height:1.04 !important;
}
.tn-tool-v6-balance__head p{
    max-width:650px;
    margin:20px auto 0;
    color:var(--tt-muted);
    font-size:.96rem;
    line-height:1.65;
}
.tn-tool-v6-comparison{
    overflow:hidden;
    border:1px solid #e5e3df;
    border-radius:10px;
    background:#fff;
}
.tn-tool-v6-comparison__header,
.tn-tool-v6-comparison__row{
    display:grid;
    grid-template-columns:72px minmax(0,1fr) minmax(0,1fr);
    align-items:start;
    column-gap:34px;
    padding:0 30px;
}
.tn-tool-v6-comparison__header{
    min-height:64px;
    align-items:center;
    border-bottom:1px solid var(--tt-line);
    color:var(--tt-black);
    font-size:.9rem;
}
.tn-tool-v6-comparison__header strong{font-weight:500}
.tn-tool-v6-comparison__row{
    min-height:104px;
    align-items:center;
    border-bottom:1px solid var(--tt-line);
}
.tn-tool-v6-comparison__row:last-child{border-bottom:0}
.tn-tool-v6-comparison__num{
    color:#a5a5a1;
    font-size:.72rem;
    font-weight:600;
}
.tn-tool-v6-comparison__cell{
    display:grid;
    grid-template-columns:12px minmax(0,1fr);
    gap:14px;
    align-items:start;
}
.tn-tool-v6-comparison__cell p{
    margin:0;
    color:var(--tt-muted);
    font-size:.9rem;
    line-height:1.58;
}
.tn-tool-v6-dot{
    width:8px;
    height:8px;
    margin-top:.42em;
    border-radius:50%;
    background:#deddd9;
}
.tn-tool-v6-dot--accent{background:var(--tt-accent)}

@media (max-width:720px){
    .tn-tool-v6-intro{padding:72px 0 68px}
    .tn-tool-v6-balance{padding:72px 0 78px}
    .tn-tool-v6-balance__head{text-align:left;margin-bottom:36px}
    .tn-tool-v6-balance__head p{margin-left:0}
    .tn-tool-v6-comparison__header{display:none}
    .tn-tool-v6-comparison__row{
        grid-template-columns:34px 1fr;
        gap:12px 18px;
        padding:22px 20px;
    }
    .tn-tool-v6-comparison__num{grid-row:1 / 3}
    .tn-tool-v6-comparison__cell{grid-column:2}
    .tn-tool-v6-comparison__cell--pro::before,
    .tn-tool-v6-comparison__cell--limit::before{
        grid-column:1 / -1;
        margin-bottom:4px;
        color:var(--tt-black);
        font-size:.76rem;
        font-weight:600;
    }
    .tn-tool-v6-comparison__cell--pro::before{content:"A favor"}
    .tn-tool-v6-comparison__cell--limit::before{content:"A tener en cuenta"}
}
