:root{
  --imss:#006455;--imss-dark:#004d42;--imss-deep:#003b33;--black:#000;
  --gray:#8e908f;--white:#fff;--paper:#f5f7f6;--mint:#e7f1ef;
  --line:#d8e1de;--ink:#17211f;--muted:#5b6764;--warn:#9a6418;
  --shadow:0 18px 50px rgba(0,100,85,.12);--radius:18px;--max:1180px;
}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:Inter,system-ui,-apple-system,"Segoe UI",sans-serif;line-height:1.55}a{color:inherit}.wrap{width:min(var(--max),calc(100% - 40px));margin:auto}.independent{background:var(--black);color:var(--white);font-size:12px;letter-spacing:.025em}.independent .wrap{min-height:34px;display:flex;justify-content:center;align-items:center;text-align:center}.header{background:rgba(255,255,255,.96);border-bottom:1px solid var(--line);position:sticky;top:0;z-index:20;backdrop-filter:blur(12px)}.nav{min-height:78px;display:flex;align-items:center;justify-content:space-between;gap:24px}.brand{display:flex;align-items:center;gap:12px;text-decoration:none}.brand-mark{width:46px;height:46px;display:grid;place-items:center;flex:0 0 46px}.brand-mark img{display:block;width:100%;height:100%;object-fit:contain}.brand strong{display:block;font-size:18px}.brand small{display:block;color:var(--muted);font-size:11px;margin-top:2px}.nav-links{display:flex;align-items:center;gap:24px}.nav-links a{text-decoration:none;font-size:14px;font-weight:650}.nav-links a:hover{color:var(--imss)}.button{display:inline-flex;justify-content:center;align-items:center;min-height:48px;padding:12px 22px;border-radius:8px;background:var(--imss);border:1px solid var(--imss);color:var(--white);text-decoration:none;font-weight:750;cursor:pointer}.button:hover{background:var(--imss-dark)}.button.secondary{background:var(--white);color:var(--imss)}.button.ghost{background:transparent;color:var(--imss);border-color:transparent;padding-inline:4px}.button:focus-visible,a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid #111;outline-offset:3px}.hero{padding:76px 0 54px;background:linear-gradient(135deg,var(--white) 0 58%,var(--mint) 58% 100%)}.hero-grid{display:grid;grid-template-columns:1.04fr .96fr;gap:58px;align-items:center}.eyebrow{color:var(--imss);font-size:12px;font-weight:800;letter-spacing:.13em;text-transform:uppercase;margin:0 0 18px}.hero h1,.page-hero h1{font-size:clamp(42px,6vw,68px);line-height:.98;letter-spacing:-.05em;margin:0 0 24px}.hero h1 span,.page-hero h1 span{color:var(--imss)}.lead{font-size:19px;color:#34423f;max-width:62ch}.actions{display:flex;align-items:center;gap:14px;flex-wrap:wrap;margin-top:30px}.trust{display:flex;gap:18px;flex-wrap:wrap;margin-top:20px;color:var(--muted);font-size:13px}.trust span::before{content:"✓";color:var(--imss);font-weight:900;margin-right:6px}.result{background:var(--white);border:1px solid var(--line);border-radius:22px;box-shadow:var(--shadow);overflow:hidden}.result-head{background:var(--imss);color:var(--white);padding:20px 24px;display:flex;justify-content:space-between;align-items:center}.result-head strong{font-size:16px}.badge{font-size:11px;border:1px solid rgba(255,255,255,.45);border-radius:999px;padding:5px 9px}.result-body{padding:24px}.amount-label{font-size:13px;color:var(--muted)}.amount{font-size:39px;letter-spacing:-.04em;font-weight:820;color:var(--imss);margin:3px 0 18px}.concept{display:flex;justify-content:space-between;gap:18px;padding:11px 0;border-top:1px solid var(--line);font-size:14px}.concept b{font-variant-numeric:tabular-nums}.conditional{margin-top:18px;padding:15px;background:#f7f4ef;border-left:4px solid var(--warn);font-size:13px}.deadline{background:var(--black);color:var(--white);padding:28px 0}.deadline .wrap{display:grid;grid-template-columns:1fr auto;gap:26px;align-items:center}.deadline strong{display:block;color:#9fd0c7;font-size:12px;letter-spacing:.11em;text-transform:uppercase;margin-bottom:7px}.deadline h2{font-size:clamp(25px,3.4vw,38px);margin:0;line-height:1.12}.deadline p{margin:8px 0 0;color:#cfd7d5}.deadline .button{background:var(--white);color:var(--imss);border-color:var(--white)}.section{padding:72px 0}.section.white{background:var(--white)}.section h2{font-size:clamp(31px,4vw,48px);letter-spacing:-.035em;line-height:1.07;margin:0 0 18px}.section-intro{font-size:18px;color:var(--muted);max-width:720px;margin-bottom:34px}.comparison{display:grid;grid-template-columns:1fr 1fr;border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;background:var(--white)}.comparison>div{padding:32px}.comparison>div+div{background:var(--imss);color:var(--white)}.comparison h2{font-size:22px;margin:0 0 20px;line-height:1.55;letter-spacing:normal}.comparison ul,.clean-list{list-style:none;margin:0;padding:0}.comparison li{padding:12px 0;border-top:1px solid var(--line)}.comparison>div+div li{border-color:rgba(255,255,255,.2)}.comparison li::before{content:"—";margin-right:10px;color:var(--gray)}.comparison>div+div li::before{content:"✓";color:#c5e5df}.steps{display:grid;grid-template-columns:repeat(5,1fr);gap:12px}.step{padding:24px 20px;background:var(--white);border-top:4px solid var(--imss);min-height:188px}.step span{display:block;color:var(--imss);font-weight:850;margin-bottom:34px}.step h2{font-size:16px;margin:0 0 8px;line-height:1.55;letter-spacing:normal}.step p{font-size:14px;color:var(--muted);margin:0}.journey-section .section-intro{margin-bottom:36px}.journey-steps .step{min-height:300px;display:flex;flex-direction:column}.journey-steps .step span{margin-bottom:28px}.journey-steps .step p{margin-bottom:18px}.journey-steps .step small{display:block;margin-top:auto;padding-top:14px;border-top:1px solid var(--line);color:var(--imss-deep);font-size:12px;font-weight:700}.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.card{background:var(--white);border:1px solid var(--line);border-radius:14px;padding:24px;text-decoration:none}.card:hover{transform:translateY(-2px);box-shadow:var(--shadow)}.card .tag{display:inline-block;color:var(--imss);font-size:11px;font-weight:800;letter-spacing:.1em;text-transform:uppercase;margin-bottom:20px}.card h3{font-size:20px;margin:0 0 9px}.card p{font-size:14px;color:var(--muted);margin:0}.proof{background:var(--imss-deep);color:var(--white)}.proof-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:64px;align-items:center}.metrics{display:grid;grid-template-columns:1fr 1fr;gap:1px;background:rgba(255,255,255,.18)}.metric{background:var(--imss-deep);padding:28px}.metric b{display:block;font-size:34px}.metric span{font-size:12px;color:#b9d4cf}.pro-hook{background:var(--white);border:1px solid var(--line);border-radius:20px;padding:34px;display:grid;grid-template-columns:1fr auto;gap:30px;align-items:center;box-shadow:var(--shadow)}.pro-hook h2{font-size:30px;margin-bottom:10px}.pro-hook p{margin:0;color:var(--muted);max-width:720px}.footer{background:var(--black);color:var(--white);padding:48px 0}.footer-grid{display:grid;grid-template-columns:1.3fr repeat(3,1fr);gap:30px}.footer h2{font-size:13px;color:#a8c9c3;text-transform:uppercase;letter-spacing:.08em}.footer a{display:block;color:#d4dddb;text-decoration:none;font-size:13px;margin:8px 0}.footer-note{border-top:1px solid #333;margin-top:32px;padding-top:20px;color:#aaa;font-size:12px}.footer-cta{border-left:3px solid #75b8ad;padding-left:18px}.footer-cta span{display:block;color:#8fc8be;font-size:10px;font-weight:850;letter-spacing:.1em;text-transform:uppercase}.footer-cta strong{display:block;color:var(--white);font-size:16px;line-height:1.25;margin:7px 0}.footer-cta p{color:#abb7b5;font-size:12px;line-height:1.45;margin:0 0 12px}.footer-cta a{display:inline-flex;color:var(--white);font-weight:750;border-bottom:1px solid #75b8ad;padding-bottom:3px;margin:0}.page-hero{padding:70px 0;background:var(--white);border-bottom:1px solid var(--line)}.page-hero .lead{max-width:760px}.content-grid{display:grid;grid-template-columns:minmax(0,1fr) 340px;gap:48px}.content h2{font-size:32px;margin:46px 0 14px}.content h2:first-child{margin-top:0}.content p,.content li{color:#40504c}.sidebox{background:var(--white);border:1px solid var(--line);border-top:5px solid var(--imss);padding:24px;position:sticky;top:130px}.sidebox h3{margin:0 0 10px}.sidebox p{color:var(--muted);font-size:14px}.timeline{border-left:3px solid var(--imss);margin:28px 0;padding-left:26px}.timeline div{margin-bottom:28px}.timeline strong{display:block}.timeline span{color:var(--muted);font-size:14px}.flow{display:flex;flex-wrap:wrap;gap:9px;align-items:center;margin:32px 0}.flow span{padding:10px 13px;border:1px solid var(--line);background:var(--white);font-size:13px;font-weight:750}.flow i{color:var(--imss);font-style:normal}.sample{background:var(--white);border:1px solid var(--line);border-radius:14px;padding:26px}.sample-row{display:grid;grid-template-columns:1fr auto;gap:18px;padding:14px 0;border-top:1px solid var(--line)}.sample-row:first-child{border-top:0}.sample-row small{display:block;color:var(--muted)}.form{display:grid;grid-template-columns:1fr 1fr;gap:18px}.field{display:block}.field.full{grid-column:1/-1}.field span{display:block;font-size:13px;font-weight:750;margin-bottom:6px}.field input,.field select,.field textarea{width:100%;min-height:48px;padding:10px 12px;border:1px solid #aab7b4;border-radius:7px;font:inherit;background:var(--white)}.field textarea{min-height:116px;resize:vertical}.notice{padding:16px 18px;background:#f1f5f4;border-left:4px solid var(--imss);font-size:14px}.demo-banner{background:#efe8d9;color:#382f20;padding:11px 0;font-size:12px;text-align:center;border-bottom:1px solid #d8c9aa}.menu-button{display:none;background:none;border:0;font-size:24px}.mobile-panel{display:none}
.professional-feature{background:#f3f6f5;color:var(--ink);padding:72px 0;border-top:1px solid var(--line)}.home-pro-card{display:grid;grid-template-columns:1.25fr .75fr;background:var(--white);border:1px solid var(--line);border-left:7px solid var(--imss);box-shadow:0 18px 46px rgba(23,33,31,.08)}.home-pro-message{padding:42px 46px}.professional-feature h2{font-size:clamp(36px,4.6vw,54px);margin-bottom:14px}.home-pro-message>p:not(.eyebrow){font-size:17px;color:var(--muted);max-width:700px}.professional-feature .button.secondary{background:transparent;color:var(--imss);border-color:var(--imss)}.home-pro-benefits{display:grid;background:#e5efed;border-left:1px solid #cbdad7;padding:25px 32px}.home-pro-benefits div{display:flex;flex-direction:column;justify-content:center;border-top:1px solid #c2d3cf;padding:14px 0}.home-pro-benefits div:first-child{border-top:0}.home-pro-benefits strong{color:var(--imss);font-size:20px}.home-pro-benefits span{color:#52615e;font-size:13px}.business-value{background:#e7f1ef}.value-intro{display:grid;grid-template-columns:1.05fr .95fr;gap:64px;align-items:end;margin-bottom:36px}.value-intro h2{margin-bottom:0}.value-intro>p{color:var(--muted);font-size:17px;margin:0}.value-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:#bdd0cc;border:1px solid #bdd0cc}.value-grid article{background:var(--white);padding:28px;min-height:290px;display:flex;flex-direction:column}.value-grid article>span{color:var(--imss);font-size:12px;font-weight:850;margin-bottom:28px}.value-grid h3{font-size:19px;margin:0 0 10px}.value-grid p{color:var(--muted);font-size:14px;margin:0 0 22px}.value-grid strong{color:var(--imss);font-size:12px;margin-top:auto;text-transform:uppercase;letter-spacing:.07em}.value-summary{display:grid;grid-template-columns:1fr auto;gap:36px;align-items:center;background:var(--imss-deep);color:var(--white);padding:30px 34px}.value-summary small{color:#b9d4cf;text-transform:uppercase;letter-spacing:.1em;font-weight:800}.value-summary h3{font-size:22px;margin:5px 0 0;max-width:780px}.value-summary .button{background:var(--white);color:var(--imss);border-color:var(--white);white-space:nowrap}@media(max-width:900px){.professional-grid{grid-template-columns:1fr}.professional-kicker{align-items:flex-start;flex-direction:column;justify-content:center;gap:5px}.professional-outcomes{grid-template-columns:1fr 1fr}.professional-outcomes i{display:none}.professional-close{grid-template-columns:1fr}.nav-links>a:not(.button){display:none}.hero-grid,.proof-grid,.content-grid{grid-template-columns:1fr}.hero{background:linear-gradient(180deg,var(--white) 0 65%,var(--mint) 65% 100%)}.steps{grid-template-columns:1fr 1fr}.cards{grid-template-columns:1fr 1fr}.deadline .wrap,.pro-hook{grid-template-columns:1fr}.sidebox{position:static}.footer-grid{grid-template-columns:1fr 1fr}}
@media(max-width:620px){.value-grid{grid-template-columns:1fr}.home-pro-message{padding:32px 25px}.wrap{width:min(var(--max),calc(100% - 24px))}.brand small{display:none}.nav-links{gap:8px}.nav-links .button{padding-inline:14px}.hero{padding-top:48px}.hero h1,.page-hero h1{font-size:42px}.comparison,.steps,.cards,.form{grid-template-columns:1fr}.comparison>div{padding:24px}.proof-grid{gap:34px}.metrics{grid-template-columns:1fr 1fr}.footer-grid{grid-template-columns:1fr}.result-body{padding:18px}.section{padding:54px 0}}

.legal-foundations{background:#edf3f1}.foundations-intro{display:grid;grid-template-columns:1fr 1fr;gap:64px;align-items:end;margin-bottom:40px}.foundations-intro h2{margin-bottom:0}.foundations-intro>p{color:var(--muted);font-size:17px;margin:0}.foundation-list{display:grid;grid-template-columns:1fr 1fr;gap:16px}.foundation-item{display:grid;grid-template-columns:52px 1fr;gap:18px;background:var(--white);border:1px solid var(--line);border-top:4px solid var(--imss);padding:28px}.foundation-number{width:44px;height:44px;border-radius:50%;background:var(--mint);color:var(--imss);display:grid;place-items:center;font-size:12px;font-weight:850}.foundation-type{color:var(--imss);font-size:10px;font-weight:850;letter-spacing:.12em;text-transform:uppercase}.foundation-item h3{font-size:20px;margin:5px 0 8px}.foundation-item p{font-size:14px;color:#40504c;margin:0 0 14px}.foundation-item small{display:block;color:var(--muted);border-top:1px solid var(--line);padding-top:12px}.foundation-wide{grid-column:1/-1}.trace-line{display:flex;gap:10px;align-items:center;flex-wrap:wrap;margin-top:20px}.trace-line span{background:var(--mint);color:var(--imss-deep);padding:8px 11px;font-size:12px;font-weight:750}.trace-line i{font-style:normal;color:var(--imss)}.source-note{display:grid;grid-template-columns:auto 1fr auto;gap:20px;align-items:center;margin-top:16px;padding:22px 24px;background:var(--imss-deep);color:var(--white)}.source-note span{font-size:13px;color:#c8dcd8}.source-note a{color:var(--white);font-size:13px;font-weight:750;white-space:nowrap}@media(max-width:900px){.foundations-intro,.foundation-list{grid-template-columns:1fr}.foundation-wide{grid-column:auto}.source-note{grid-template-columns:1fr}}
.library-hero{background:linear-gradient(135deg,var(--white) 0 68%,var(--mint) 68%);padding-bottom:54px}.library-search{margin-top:36px;padding:22px 26px;background:var(--imss-deep);color:var(--white);display:flex;justify-content:space-between;align-items:center;gap:24px}.library-search>span{font-weight:750}.library-search div{display:flex;gap:8px;flex-wrap:wrap}.library-search a{color:var(--white);text-decoration:none;border:1px solid rgba(255,255,255,.35);padding:8px 11px;font-size:12px}.library-heading{display:grid;grid-template-columns:1fr 1fr;gap:55px;align-items:end;margin-bottom:32px}.library-heading h2{margin-bottom:0}.library-heading>p{color:var(--muted);margin:0}.guide-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.guide-card{position:relative;display:grid;grid-template-columns:42px 1fr auto;gap:18px;background:var(--white);border:1px solid var(--line);border-top:4px solid var(--imss);padding:28px;text-decoration:none;min-height:245px}.guide-card:hover{box-shadow:var(--shadow);transform:translateY(-2px)}.guide-card.featured{grid-column:1/-1;background:#e7f1ef}.guide-number{color:var(--imss);font-size:12px;font-weight:850}.guide-card small{color:var(--imss);font-size:10px;font-weight:850;letter-spacing:.1em;text-transform:uppercase}.guide-card h3{font-size:21px;line-height:1.2;margin:7px 0 10px}.guide-card p{color:var(--muted);font-size:14px}.guide-card b{display:block;color:#44534f;font-size:11px;margin-top:18px}.guide-card em{font-style:normal;color:var(--imss);font-size:12px;font-weight:750;align-self:end}.guide-grid.compact{grid-template-columns:repeat(4,1fr)}.guide-grid.compact .guide-card{grid-template-columns:30px 1fr;min-height:260px}.library-cta{background:var(--imss-deep);color:var(--white);padding:54px 0}.library-cta .wrap{display:grid;grid-template-columns:1fr auto;gap:50px;align-items:center}.library-cta h2{font-size:35px;margin:0 0 10px}.library-cta p{color:#c6d9d5}.library-cta .eyebrow{color:#9fd0c7}.library-cta .button{background:var(--white);color:var(--imss)}.guide-hero{padding:70px 0;background:#f3f6f5}.guide-hero-grid{display:grid;grid-template-columns:1.3fr .7fr;gap:70px;align-items:center}.guide-hero h1{font-size:clamp(42px,5.6vw,66px);line-height:1;letter-spacing:-.045em;margin:0 0 22px}.deadline-card{background:var(--imss);color:var(--white);padding:36px;border-radius:4px}.deadline-card>span{font-size:11px;font-weight:850;text-transform:uppercase;letter-spacing:.12em}.deadline-card>strong{display:block;font-size:66px;line-height:1;margin:22px 0 8px}.deadline-card p{font-size:17px}.deadline-card small{display:block;border-top:1px solid rgba(255,255,255,.3);padding-top:16px;color:#d6e7e4}.guide-alert{background:var(--black);color:var(--white);padding:24px 0}.guide-alert .wrap{display:grid;grid-template-columns:auto 1fr;gap:24px;align-items:center}.guide-alert b{color:#9fd0c7;text-transform:uppercase;letter-spacing:.1em;font-size:11px}.guide-alert p{margin:0}.article-layout{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:70px}.guide-article{max-width:780px}.guide-article h2{font-size:31px;margin:54px 0 14px}.guide-article h2:first-of-type{margin-top:0}.guide-article>p{font-size:17px;color:#40504c}.date-flow{display:grid;grid-template-columns:1fr auto 1fr auto 1fr;gap:14px;align-items:center;margin:32px 0;padding:22px;background:#edf3f1}.date-flow div{text-align:center}.date-flow span{display:block;color:var(--imss);font-size:11px;font-weight:850}.date-flow strong,.date-flow small{display:block}.date-flow small{color:var(--muted)}.date-flow i{font-style:normal;color:var(--imss)}.article-note{display:grid;grid-template-columns:auto 1fr;gap:18px;background:#f5efe5;border-left:4px solid var(--warn);padding:20px;margin:28px 0}.article-note span{color:#5f5546}.article-side .sidebox{top:125px}.article-side ul{padding-left:18px;color:var(--muted)}.article-side a{color:var(--imss);font-weight:750;font-size:13px}.action-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}.action-grid>div{background:var(--white);border-top:4px solid var(--imss);padding:25px}.action-grid span{color:var(--imss);font-size:12px;font-weight:850}.action-grid h3{font-size:18px;margin:24px 0 8px}.action-grid p{color:var(--muted);font-size:13px}.guide-bottom-cta{display:grid;grid-template-columns:1fr auto;gap:30px;align-items:center;margin-top:24px;background:var(--imss);color:var(--white);padding:28px 32px}.guide-bottom-cta strong,.guide-bottom-cta span{display:block}.guide-bottom-cta span{color:#d5e5e2;font-size:13px}.guide-bottom-cta .button{background:var(--white);color:var(--imss);white-space:nowrap}
@media(max-width:900px){.library-heading,.library-cta .wrap,.guide-hero-grid,.article-layout{grid-template-columns:1fr}.guide-grid.compact{grid-template-columns:1fr 1fr}.action-grid{grid-template-columns:1fr 1fr}.library-search{align-items:flex-start;flex-direction:column}.article-side .sidebox{position:static}}
@media(max-width:620px){.guide-grid,.guide-grid.compact{grid-template-columns:1fr}.guide-card.featured{grid-column:auto}.guide-card{grid-template-columns:30px 1fr}.guide-card em{display:none}.guide-alert .wrap,.guide-bottom-cta{grid-template-columns:1fr}.date-flow{grid-template-columns:1fr}.date-flow i{transform:rotate(90deg)}.action-grid{grid-template-columns:1fr}}
.guide-detail-hero{padding:62px 0;background:linear-gradient(135deg,var(--white) 0 72%,var(--mint) 72%)}.guide-detail-hero h1{font-size:clamp(42px,5.6vw,66px);line-height:1;letter-spacing:-.045em;max-width:980px;margin:0 0 22px}.guide-detail-hero .lead{max-width:850px}.guide-breadcrumb{display:flex;align-items:center;gap:9px;font-size:12px;color:var(--muted);margin-bottom:42px}.guide-breadcrumb a{color:var(--imss);font-weight:750}.guide-breadcrumb b{font-weight:650}.guide-topic{padding-bottom:10px}.guide-topic h2{font-size:31px;margin:50px 0 14px}.guide-topic:first-child h2{margin-top:0}.guide-topic>p{font-size:17px;color:#40504c}.guide-limit{background:#edf3f1}.guide-limit>.wrap{display:grid;grid-template-columns:1fr 1fr;gap:60px;align-items:center}.guide-limit h2{font-size:38px}.guide-limit p{color:var(--muted)}.guide-system-flow{display:flex;align-items:center;gap:9px;flex-wrap:wrap}.guide-system-flow span{background:var(--white);border:1px solid var(--line);padding:11px 13px;font-size:12px;font-weight:750}.guide-system-flow i{font-style:normal;color:var(--imss)}.guide-next{background:var(--imss-deep);color:var(--white);padding:48px 0}.guide-next>.wrap{display:grid;grid-template-columns:1fr auto;gap:50px;align-items:center}.guide-next small{color:#9fd0c7;text-transform:uppercase;letter-spacing:.1em;font-weight:850}.guide-next h2{font-size:31px;line-height:1.1;margin:7px 0 0;max-width:820px}.guide-next .button{background:var(--white);color:var(--imss);border-color:var(--white);white-space:nowrap}
@media(max-width:900px){.guide-limit>.wrap,.guide-next>.wrap{grid-template-columns:1fr}}
.nav-switch{border:1px solid var(--line);border-radius:999px;padding:8px 12px!important;color:var(--imss)!important}.nav-switch:before{content:"↔";margin-right:6px}.pro-header{box-shadow:inset 0 3px 0 var(--imss)}.pro-header .brand-mark{width:46px;height:46px;display:grid;place-items:center;flex:0 0 46px}.footer-legal-link{display:block!important;width:min(var(--max),calc(100% - 40px));margin:22px auto 0!important;padding-top:18px;border-top:1px solid #333;color:#b9c5c3!important}.legal-hero{padding:70px 0;background:linear-gradient(135deg,var(--white) 0 68%,var(--mint) 68%);border-bottom:1px solid var(--line)}.legal-hero h1{font-size:clamp(44px,6vw,68px);line-height:.98;letter-spacing:-.05em;margin:0 0 22px}.legal-hero h1 span{color:var(--imss)}.legal-index{display:flex;gap:8px;flex-wrap:wrap;margin-top:34px}.legal-index a{background:var(--white);border:1px solid var(--line);padding:9px 12px;text-decoration:none;color:var(--imss);font-size:12px;font-weight:750}.legal-layout{display:grid;grid-template-columns:280px minmax(0,760px);justify-content:space-between;gap:70px}.legal-side{position:sticky;top:125px;align-self:start;background:var(--imss-deep);color:var(--white);padding:26px}.legal-side p{color:#c8d9d6;font-size:14px}.legal-side a{color:var(--white);font-size:13px;font-weight:750}.legal-content>section{padding:44px 0;border-top:1px solid var(--line)}.legal-content>section:first-child{padding-top:0;border-top:0}.legal-content>section>span{display:block;color:var(--imss);font-size:12px;font-weight:850}.legal-content h2{font-size:32px;margin:8px 0 15px}.legal-content h3{font-size:20px;margin:30px 0 8px}.legal-content p,.legal-content li{color:#40504c;font-size:16px}.legal-content li{margin:9px 0}.legal-callout{background:#edf3f1;border-left:4px solid var(--imss);padding:22px;margin:26px 0}.legal-callout p{margin:5px 0}.legal-callout a,.text-link{color:var(--imss);font-weight:750}.legal-final{background:var(--imss-deep);color:var(--white);padding:26px;margin-top:28px}.legal-final strong{display:block;font-size:20px;margin-bottom:18px}.legal-final .button{color:var(--white)}
@media(max-width:900px){.legal-layout{grid-template-columns:1fr}.legal-side{position:static}.nav-links{gap:10px}}
/* ============================================================
   AJUSTE MÓVIL DE `.value-summary` — 19-ago-2026

   🔴 El CTA «Hablemos de tu operación» es `white-space:nowrap` y mide
   244px. En un grid `1fr auto` esa columna no cede, así que a 390px el
   texto se quedaba con ~100px y se partía palabra por palabra:

        EL RESULTADO
        QUE
        BUSCAMOS
        Menos
        esfuerzo

   No producía scroll horizontal —el contenedor seguía dentro del ancho—
   y por eso ningún detector de desborde lo veía. Sólo se vio en una
   captura, que es la regla 10: que el contenido esté no prueba que se vea.

   Es la sección de cierre de la página comercial de la vertical legal:
   la última pantalla antes del formulario de despachos.
   ============================================================ */
@media(max-width:760px){
  .value-summary{grid-template-columns:1fr;gap:22px;padding:26px 22px}
  .value-summary h3{font-size:19px}
  /* El botón deja de imponer su ancho: ocupa la línea y centra su texto. */
  .value-summary .button{width:100%;white-space:normal;text-align:center}
}

/* ============================================================
   AJUSTE MÓVIL DE `.home-pro-card` — 19-ago-2026

   Mismo defecto que `.value-summary` y encontrado con el mismo
   detector: la tarjeta mantenía `grid-template-columns:1.25fr .75fr`
   en TODOS los anchos. A 390px el mensaje se quedaba en 223px y su
   titular salía a una palabra por línea:

        Más
        asuntos.
        Menos
        trabajo
        repetitivo.

   Es el bloque que abre la vertical de despachos desde el home — la
   primera vez que un abogado ve la propuesta comercial.

   ⚠️ El botón del menú («Revisar mi caso») también parte en dos
   líneas en móvil y NO se toca: ahí es deliberado, cabe y se lee.
   ============================================================ */
@media(max-width:760px){
  .home-pro-card{grid-template-columns:1fr}
  .home-pro-benefits{border-left:0;border-top:1px solid #cbdad7}
  /* Con una sola columna los CTA dejan de competir por 173px. */
  .professional-feature .actions .button{width:100%;white-space:normal;text-align:center}
}

/* ====
   PANTALLAS MUY ESTRECHAS (<=360px) — 2-sep-2026
   La portada desbordaba 19px a 320px: `scrollWidth` 339 sobre una ventana de
   320, y el navegador lo disimulaba ENCOGIENDO la página (escala 0,944), que
   es justo lo que hace invisible un desborde para cualquier revisión a ojo.
   La causa era `.metrics`: mantiene dos columnas en movil y el ancho MINIMO de
   cada celda —el numero a 34px mas 28px de padding a cada lado— no cabe en los
   296px utiles que deja `.wrap`. Un `1fr` no baja del min-content, asi que el
   grid empuja al contenedor.
   `minmax(0,1fr)` permite que la columna se encoja por debajo de ese minimo, y
   ademas se aligera el interior para que el numero siga siendo legible.
   ==== */
@media(max-width:360px){
  .metrics{grid-template-columns:repeat(2,minmax(0,1fr))}
  .metric{padding:20px 14px}
  .metric b{font-size:26px;letter-spacing:-.02em}
  .metric span{font-size:11px}
}

/* ====
   CASILLA DE CONSENTIMIENTO Y DATOS PENDIENTES — 6-sep-2026 (alineación legal)
   El formulario de profesionales recaba datos personales: la casilla es obligatoria
   y nunca viene marcada (LFPDPPP art. 7). `.pendiente` marca los datos del
   responsable que faltan por publicar sin fingir que existen.
   ==== */
.field.consent{display:flex;gap:10px;align-items:flex-start;font-size:14px;line-height:1.45}
.field.consent input{margin-top:3px;flex:none;width:18px;height:18px}
.field.consent span{display:inline;font-size:14px;font-weight:400;margin:0}
.pendiente{font-style:normal;border-bottom:1px dotted currentColor}
