/*
Theme Name: iNsuempresa
Theme URI: https://www.insuempresa.com
Author: iNsuempresa
Description: Tema a la medida de iNsuempresa (Johana Marcela Ospina). Incluye inicio, páginas de servicio (Helisa, SG-SST, nómina, software), nosotros, tratamiento de datos, blog "Te lo explico" y autodiagnóstico SG-SST. Al activarlo crea las páginas y deja el sitio configurado.
Version: 1.0.1
Requires at least: 6.4
Tested up to: 6.8
Requires PHP: 7.4
License: Uso exclusivo de iNsuempresa
Text Domain: insuempresa
*/

/* ---------- Fuentes (alojadas en el propio sitio, sin Google Fonts) ---------- */
@font-face{font-family:"Montserrat";font-style:normal;font-weight:600;font-display:swap;src:url(assets/fonts/montserrat-latin-600-normal.woff2) format("woff2")}
@font-face{font-family:"Montserrat";font-style:normal;font-weight:700;font-display:swap;src:url(assets/fonts/montserrat-latin-700-normal.woff2) format("woff2")}
@font-face{font-family:"Montserrat";font-style:normal;font-weight:800;font-display:swap;src:url(assets/fonts/montserrat-latin-800-normal.woff2) format("woff2")}
@font-face{font-family:"Nunito Sans";font-style:normal;font-weight:400;font-display:swap;src:url(assets/fonts/nunito-sans-latin-400-normal.woff2) format("woff2")}
@font-face{font-family:"Nunito Sans";font-style:italic;font-weight:400;font-display:swap;src:url(assets/fonts/nunito-sans-latin-400-italic.woff2) format("woff2")}
@font-face{font-family:"Nunito Sans";font-style:normal;font-weight:600;font-display:swap;src:url(assets/fonts/nunito-sans-latin-600-normal.woff2) format("woff2")}
@font-face{font-family:"Nunito Sans";font-style:normal;font-weight:700;font-display:swap;src:url(assets/fonts/nunito-sans-latin-700-normal.woff2) format("woff2")}


:root{--mor:#2A1F31;--mor2:#392E3F;--tq:#41B4B0;--tqd:#2D8C89;--tqt:#1F6F6C;--g:#5E5664;--g2:#717171;--soft:#F2F7F7;--line:#E1E8E8;--hel:#2B5B88;--nom:#F08C00;--sst:#7BBC78;--sw:#6C4F9E;color-scheme:light}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
body{margin:0;background:#fff;color:var(--mor);font:17px/1.6 "Nunito Sans",Arial,sans-serif}
h1,h2,h3,h4{font-family:Montserrat,Arial,sans-serif;margin:0;text-wrap:balance;color:inherit}
p{margin:0}
a{color:var(--tqt)}
img{max-width:100%}
.in{max-width:1180px;margin:0 auto;padding-inline:24px}
@media (max-width:600px){.in{padding-inline:18px}}
.kick{font:700 13px/1.2 Montserrat,Arial;letter-spacing:.14em;text-transform:uppercase;color:var(--tqt)}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;font:700 16px/1.1 Montserrat,Arial;padding:16px 24px;border-radius:12px;text-decoration:none;border:0;cursor:pointer;white-space:nowrap}
.btn:focus-visible,a:focus-visible,button:focus-visible,input:focus-visible{outline:3px solid var(--tq);outline-offset:3px}
.btn-p{background:var(--tq);color:var(--mor)} .btn-p:hover{background:#56C2BE}
.btn-d{background:var(--mor);color:#fff} .btn-d:hover{background:#3d3046}
.btn-o{background:transparent;color:var(--mor);box-shadow:inset 0 0 0 2px var(--mor)}
.btn-w{background:#fff;color:var(--mor)}
.btn-sm{font-size:14px;padding:11px 16px;border-radius:10px}
.chat{width:20px;height:20px;flex:none}
/* header */
header.site{position:sticky;top:0;z-index:20;background:rgba(255,255,255,.96);backdrop-filter:blur(6px);border-bottom:1px solid var(--line)}
header.site .in{display:flex;align-items:center;justify-content:space-between;gap:18px;height:76px}
.logo img{height:46px;display:block}
nav.main{display:flex;gap:26px;align-items:center}
nav.main a{font:700 15px Montserrat;color:var(--mor);text-decoration:none;padding:6px 0;border-bottom:2px solid transparent}
nav.main a.on,nav.main a:hover{border-color:var(--tq)}
.burger{display:none;background:none;border:0;padding:8px;cursor:pointer}
.burger span{display:block;width:26px;height:3px;background:var(--mor);margin:5px 0;border-radius:2px}
@media (max-width:960px){nav.main{display:none;position:absolute;left:0;right:0;top:76px;background:#fff;flex-direction:column;align-items:stretch;gap:0;border-bottom:1px solid var(--line);padding:6px 18px 14px}
 nav.main.open{display:flex} nav.main a{padding:13px 4px;border-bottom:1px solid var(--line)} .burger{display:block} header.site .hdr-cta{display:none}}
/* pages */
section{padding-block:72px}
@media (max-width:700px){section{padding-block:52px}}
.sec-t{display:grid;gap:10px;max-width:760px;margin-bottom:34px}
.sec-t h2{font-size:clamp(28px,3.6vw,40px);font-weight:800;line-height:1.15}
.sec-t p{color:var(--g);font-size:18px}
.soft{background:var(--soft)}
.dark{background:var(--mor);color:#fff}
.dark .kick{color:var(--tq)}
.dark .sec-t p{color:#DCD4E0}
/* hero home */
.hero{background:linear-gradient(180deg,var(--soft) 0,#fff 100%);padding-block:56px 64px}
.hero .grid{display:grid;grid-template-columns:1fr;gap:0}
.hero .top{display:grid;grid-template-columns:1fr;gap:16px;margin-bottom:30px;max-width:760px}
@media (max-width:900px){.hero .top{grid-template-columns:1fr}}
.hero .chips{grid-template-columns:1fr 1fr}
@media (max-width:760px){.hero .chips{grid-template-columns:1fr}}
.tbar{display:grid;grid-template-columns:auto auto 1.4fr auto;gap:20px 44px;align-items:center;padding-block:26px;border-bottom:1px solid var(--line)}
.tbar .st{font:600 15px/1.3 "Nunito Sans";color:#4a4250}
.tbar .st b{display:block;font:800 34px/1 Montserrat;color:var(--mor);margin-bottom:4px}
.tbar .nat{display:flex;gap:12px;align-items:center;font:700 16px/1.35 Montserrat}
.tbar .nat svg{flex:none}
.tbar .hb2{border:0;padding:0}
@media (max-width:900px){.tbar{grid-template-columns:1fr 1fr}}
@media (max-width:900px){.tbar .nat,.tbar .hb2{grid-column:1/-1}}
@media (max-width:960px){.hero .grid{grid-template-columns:1fr}}
.hero h1{font-size:clamp(36px,5.6vw,62px);line-height:1.05;font-weight:800;letter-spacing:-.01em}
.hero .sub{font-size:19px;color:#4a4250;margin:18px 0 26px;max-width:620px}
.chips{display:grid;gap:12px}
.chipl{display:flex;align-items:center;gap:16px;background:#fff;border:1.5px solid #D7E2E2;border-radius:16px;padding:15px 18px;text-decoration:none;color:var(--mor);box-shadow:0 2px 0 #E4EDED;transition:border-color .15s,transform .15s}
.chipl:hover{border-color:var(--tq);transform:translateY(-1px)}
.chipl b{display:block;font:700 18px/1.3 Montserrat}
.chipl small{display:block;font:600 14.5px/1.3 "Nunito Sans";color:#6a6270;margin-top:3px}
.chipl .arr{margin-left:auto;font:800 22px Montserrat;color:var(--tqd)}
.chipl svg{flex:none}
.magnet{background:var(--mor);color:#fff;border-radius:22px;padding:30px;display:grid;gap:14px}
@media (max-width:760px){#magnet-home{grid-template-columns:1fr!important}}
.magnet .k{font:700 12px/1 Montserrat;letter-spacing:.16em;color:var(--tq);text-transform:uppercase}
.magnet h3{font-size:26px;line-height:1.2}
.magnet p{color:#D9D2DE;font-size:16px}
.hb2{display:flex;flex-direction:column;align-items:center;gap:8px;border-top:1px solid var(--line);padding-top:20px;text-align:center}
.hb2 img{height:58px}
.hb2 span{font:700 15px Montserrat}
.people3{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}
@media (max-width:860px){.people3{grid-template-columns:1fr}}
.person .role{font:700 14px/1.45 Montserrat;color:var(--tq);letter-spacing:.02em}
/* steps */
.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:28px}
@media (max-width:800px){.steps{grid-template-columns:1fr}}
.steps>div{display:grid;gap:8px;align-content:start}
.steps b.n{width:44px;height:44px;border-radius:12px;background:var(--tq);color:var(--mor);display:flex;align-items:center;justify-content:center;font:800 19px Montserrat}
.steps h3{font-size:20px}
.steps p{color:var(--g)}
/* people */
.person{display:grid;gap:14px;justify-items:start;align-content:start}
.pic{width:168px;height:168px;border-radius:50%;object-fit:cover;border:4px solid var(--tq);background:#DDEFEE;display:block}
.person.lt .pic{width:196px;height:196px;border-color:#D5ECEB}
.person.lt p{color:var(--g)}
.trio{display:flex;justify-content:center;align-items:center;padding:20px 0}
.trio img{width:clamp(130px,17vw,210px);aspect-ratio:1;border-radius:50%;border:5px solid var(--mor);margin-left:-26px;box-shadow:0 0 0 3px var(--tq)}
.trio img:first-child{margin-left:0}.trio img:nth-child(2){transform:translateY(-22px);z-index:1;position:relative}
.legaltxt{max-width:820px}.legaltxt p{margin-top:16px;color:var(--g);font-size:17px;line-height:1.65}.legaltxt h2{margin-top:36px;font-size:24px}

.person h3{font-size:22px}
.person p{color:#DCD4E0}
/* cards generic */
.cards3{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.cards4{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}
@media (max-width:960px){.cards4{grid-template-columns:1fr 1fr}.cards3{grid-template-columns:1fr}}
@media (max-width:560px){.cards4{grid-template-columns:1fr}}
.card{border:1.5px solid var(--line);border-radius:18px;padding:24px;background:#fff;display:grid;gap:10px;align-content:start;text-decoration:none;color:var(--mor)}
a.card:hover{border-color:var(--tq)}
.card h3{font-size:19px;line-height:1.3}
.card p{color:var(--g);font-size:16px}
.card .more{font:700 15px Montserrat;color:var(--tqt)}
.post .bar{height:8px;border-radius:18px 18px 0 0;margin:-24px -24px 6px}
/* service pages */
.shero{padding-block:56px 60px;background:linear-gradient(180deg,var(--soft) 0,#fff 100%)}
.shero .grid{display:grid;grid-template-columns:1.2fr .8fr;gap:44px;align-items:center}
@media (max-width:900px){.shero .grid{grid-template-columns:1fr}}
.shero h1{font-size:clamp(34px,5vw,56px);line-height:1.07;font-weight:800}
.shero .sub{font-size:19px;color:#4a4250;margin:18px 0 26px;max-width:620px}
.shero .tag{display:inline-flex;align-items:center;gap:10px;font:700 14px Montserrat;margin-bottom:16px}
.ctas{display:flex;flex-wrap:wrap;gap:12px}
.list{list-style:none;margin:0;padding:0;display:grid;gap:12px}
.list li{display:flex;gap:12px;align-items:flex-start}
.list li::before{content:"";flex:none;width:22px;height:22px;margin-top:2px;border-radius:7px;background:var(--tq) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M6 12.5l4 4 8-9' fill='none' stroke='%232A1F31' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center/16px no-repeat}
.box{border-radius:22px;padding:28px;background:#fff;border:1.5px solid var(--line)}
/* pricing */
.ladder{display:grid;grid-template-columns:repeat(6,1fr);gap:12px}
@media (max-width:900px){.ladder{grid-template-columns:repeat(3,1fr)}}
@media (max-width:460px){.ladder{grid-template-columns:repeat(2,1fr)}}
.rung{border:1.5px solid #DCE5E5;border-radius:16px;padding:20px 12px 16px;display:grid;gap:6px;text-align:center;position:relative;background:#fff;font-variant-numeric:tabular-nums}
.rung .h{font:800 36px/1 Montserrat}
.rung .u{font:700 12px/1 Montserrat;letter-spacing:.12em;text-transform:uppercase;color:var(--g2)}
.rung .p{font:800 17px/1.2 Montserrat;margin-top:8px}
.rung .s{font:700 13px "Nunito Sans";color:#1B5E20}
.rung.star{border:2.5px solid var(--tq);background:#F2FAF9}
.tag2{position:absolute;top:-12px;left:50%;transform:translateX(-50%);background:var(--tq);color:var(--mor);font:800 10.5px/1 Montserrat;letter-spacing:.08em;text-transform:uppercase;padding:6px 9px;border-radius:999px;white-space:nowrap}
.plans{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
@media (max-width:860px){.plans{grid-template-columns:1fr}}
.plan{border:1.5px solid #DCE5E5;border-radius:18px;padding:26px 24px;display:grid;gap:10px;align-content:start;position:relative;background:#fff;font-variant-numeric:tabular-nums}
.plan.star{border:2.5px solid var(--tq);background:#F2FAF9}
.plan .tag2{left:24px;transform:none}
.plan h3{font-size:20px}
.plan .price{font:800 32px/1 Montserrat}
.plan .save{justify-self:start;background:#E8F5E9;color:#1B5E20;font:700 13px/1 Montserrat;padding:7px 10px;border-radius:8px}
.plan ul{margin:0;padding-left:18px;display:grid;gap:5px;color:#3d3542;font-size:16px}
.plan .eq{font-size:14px;color:var(--g2)}
.band{border-radius:18px;background:var(--mor);color:#fff;padding:22px 26px;display:flex;flex-wrap:wrap;gap:12px 24px;align-items:center;justify-content:space-between}
.band b{font:800 19px Montserrat;display:block}
.band span{color:#D9D2DE}
.note{font-size:14px;color:var(--g2)}
.tiers{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
@media (max-width:860px){.tiers{grid-template-columns:1fr}}
.tier{border:1.5px solid #DCE5E5;border-top:6px solid var(--sst);border-radius:18px;padding:24px;display:grid;gap:8px;align-content:start;background:#fff;font-variant-numeric:tabular-nums}
.tier .big{font:800 46px/1 Montserrat}
.tier .big small{font:700 14px Montserrat;color:var(--g2);margin-left:6px}
.tier .who{font:700 17px/1.3 Montserrat}
.tier .row{display:flex;justify-content:space-between;gap:10px;border-top:1px solid var(--line);padding-top:10px;font-size:15px;color:var(--g)}
.tier .row b{font:800 18px Montserrat;color:var(--mor)}
.tier ul{margin:6px 0 0;padding-left:18px;font-size:15px;display:grid;gap:4px;color:#3d3542}
/* faq */
details.faq{border-bottom:1px solid var(--line);padding:18px 0}
details.faq summary{cursor:pointer;font:700 18px/1.35 Montserrat;list-style:none;display:flex;justify-content:space-between;gap:16px}
details.faq summary::after{content:"+";font:800 22px Montserrat;color:var(--tqd)}
details.faq[open] summary::after{content:"–"}
details.faq p{margin-top:10px;color:var(--g);max-width:760px}
/* quiz */
.quiz{background:var(--mor);color:#fff;border-radius:24px;padding:30px;display:grid;gap:18px}
.quiz .prog{height:8px;background:rgba(255,255,255,.14);border-radius:4px;overflow:hidden}
.quiz .prog i{display:block;height:100%;background:var(--tq);width:0;transition:width .25s}
.quiz .q{font:700 22px/1.3 Montserrat}
.quiz .opts{display:flex;flex-wrap:wrap;gap:10px}
.quiz .opts button{background:transparent;color:#fff;border:1.5px solid rgba(255,255,255,.4);border-radius:12px;padding:12px 18px;font:700 15px Montserrat;cursor:pointer}
.quiz .opts button:hover{border-color:var(--tq);color:var(--tq)}
.quiz .res{display:grid;gap:12px}
.quiz .res ul{margin:0;padding-left:20px;display:grid;gap:6px;color:#E6DFEA}
.quiz .step{font:600 14px "Nunito Sans";color:#CFC6D6}
.quiz .back{background:none;border:0;color:#CFC6D6;font:600 14px "Nunito Sans";cursor:pointer;justify-self:start;padding:0;text-decoration:underline}
/* footer */
footer.site{background:var(--mor);color:#DCD4E0;padding-block:56px 110px;position:relative;overflow:hidden}
footer.site::before{content:"";position:absolute;left:0;right:0;bottom:0;height:60px;background:var(--tq);clip-path:polygon(0 70%,100% 0,100% 100%,0 100%)}
footer.site .cols{display:grid;grid-template-columns:1.3fr 1fr 1fr 1fr;gap:32px}
@media (max-width:860px){footer.site .cols{grid-template-columns:1fr 1fr}}
@media (max-width:520px){footer.site .cols{grid-template-columns:1fr}}
footer.site h4{font-size:14px;letter-spacing:.12em;text-transform:uppercase;color:var(--tq);margin-bottom:12px}
footer.site a{color:#fff;text-decoration:none;display:block;padding:3px 0}
footer.site .legal{margin-top:36px;font-size:14px;color:#BDB3C4;border-top:1px solid #45384d;padding-top:18px}
/* sticky mobile */
.mbar{display:none}
@media (max-width:760px){.mbar{display:flex;gap:10px;position:fixed;left:0;right:0;bottom:0;z-index:30;background:#fff;border-top:1px solid var(--line);padding:10px 14px calc(10px + env(safe-area-inset-bottom,0px))}.mbar .btn{flex:1;padding:14px 10px;font-size:15px}}
.two{display:grid;grid-template-columns:1fr 1fr;gap:40px;align-items:start}
@media (max-width:860px){.two{grid-template-columns:1fr}}

/* ---------- WordPress ---------- */
.screen-reader-text{position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(1px,1px,1px,1px);white-space:nowrap}
.skip-link:focus{position:fixed;top:8px;left:8px;z-index:100;width:auto;height:auto;clip:auto;background:#fff;color:var(--mor);padding:12px 16px;border-radius:10px;font:700 15px Montserrat}
body.admin-bar header.site{top:32px}
@media (max-width:782px){body.admin-bar header.site{top:46px}}
@media (max-width:600px){body.admin-bar header.site{top:0}}
nav.main a[aria-current="page"]{border-color:var(--tq)}
.shero .sub,.hero .sub{max-width:640px}

/* ---------- Te lo explico (blog) ---------- */
.post .meta{font:600 14px "Nunito Sans";color:var(--g2)}
.post h3 a{color:var(--mor);text-decoration:none}
.post h3 a::after{content:"";position:absolute;inset:0}
.post{position:relative}
.post:hover{border-color:var(--tq)}
.pagination{display:flex;gap:10px;flex-wrap:wrap;margin-top:34px}
.pagination .page-numbers{display:inline-flex;min-width:44px;height:44px;align-items:center;justify-content:center;border:1.5px solid var(--line);border-radius:10px;text-decoration:none;font:700 15px Montserrat;color:var(--mor);padding:0 12px}
.pagination .current{background:var(--tq);border-color:var(--tq)}
.empty{border:1.5px dashed #C9D6D6;border-radius:18px;padding:28px;color:var(--g);max-width:760px}
.cats{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:28px}
.cats a{display:inline-flex;align-items:center;gap:8px;border:1.5px solid var(--line);border-radius:999px;padding:8px 14px;text-decoration:none;color:var(--mor);font:700 14px Montserrat}
.cats a i{width:10px;height:10px;border-radius:50%;display:block}
.cats a.on,.cats a:hover{border-color:var(--tq)}

/* ---------- Artículo ---------- */
.art-h{padding-block:56px 30px;background:linear-gradient(180deg,var(--soft) 0,#fff 100%)}
.art-h .in,.art-b .in{max-width:820px}
.art-h h1{font-size:clamp(30px,4.6vw,48px);line-height:1.1;font-weight:800;margin-top:12px}
.art-h .meta{margin-top:14px;color:var(--g2);font-size:15px}
.art-b{padding-block:10px 64px}
.prose{font-size:18px;line-height:1.7;color:#3d3542}
.prose>*+*{margin-top:1.1em}
.prose h2{font-size:28px;line-height:1.25;margin-top:1.6em;color:var(--mor)}
.prose h3{font-size:22px;line-height:1.3;margin-top:1.4em;color:var(--mor)}
.prose ul,.prose ol{padding-left:1.3em}
.prose li+li{margin-top:.4em}
.prose img{height:auto;border-radius:14px}
.prose blockquote{margin:1.4em 0;border-left:5px solid var(--tq);padding:6px 0 6px 20px;font-style:italic}
.prose a{color:var(--tqt)}
.prose table{border-collapse:collapse;width:100%;font-size:16px}
.prose th,.prose td{border:1px solid var(--line);padding:10px 12px;text-align:left}
.prose .wp-block-image,.prose figure{margin:1.4em 0}
.prose figcaption{font-size:14px;color:var(--g2);margin-top:6px}
.art-cta{margin-top:48px}

/* ---------- Tratamiento de datos ---------- */
.legaltxt h2{color:var(--mor)}
.legaltxt ul{margin:14px 0 0;padding-left:22px;display:grid;gap:8px;color:var(--g);font-size:17px;line-height:1.6}
.legaltxt .ver{margin-top:10px;font:600 15px "Nunito Sans";color:var(--g2)}
.legaltxt .toc{margin-top:26px;border:1.5px solid var(--line);border-radius:16px;padding:18px 22px;background:var(--soft)}
.legaltxt .toc b{font:700 14px Montserrat;letter-spacing:.1em;text-transform:uppercase;color:var(--tqt)}
.legaltxt .toc ol{margin:10px 0 0;padding-left:20px;columns:2;column-gap:28px;font-size:15.5px}
@media (max-width:600px){.legaltxt .toc ol{columns:1}}
.legaltxt .toc a{color:var(--mor)}
.legaltxt hr{border:0;border-top:1px solid var(--line);margin:48px 0 8px}

/* ---------- 404 ---------- */
.nf{padding-block:90px;text-align:left}
.nf h1{font-size:clamp(34px,5vw,54px)}

/* ---------- Ajustes móviles ---------- */
.two>*,.shero .grid>*{min-width:0}
.quiz .btn,.band .btn{white-space:normal;text-align:center}
@media (max-width:760px){body{padding-bottom:74px}}
[id]{scroll-margin-top:92px}
.nf-chips{grid-template-columns:1fr 1fr;max-width:820px}
@media (max-width:640px){.nf-chips{grid-template-columns:1fr}}
