/* ===== Content templates: article, glossary, info, forms ===== */
.page-hero .wrap{padding-block:28px 16px}
.page-hero + .sec.tight .wrap,
.page-hero + .sec .wrap,
.page-hero + .art .wrap{padding-top:28px}
.page-hero .crumbs + .eyebrow{margin-top:14px!important}
.page-hero h1{font-size:clamp(32px,4.2vw,48px);margin-top:12px;font-weight:800;letter-spacing:-.03em}
.page-hero .lede{margin-top:12px}
.page-hero .hsearch{margin-top:22px}
.sec.tight .wrap{padding-block:48px}
.sec.tight .wrap:last-child{padding-bottom:56px}
.art .wrap{display:grid;gap:48px;padding-block:32px 56px;align-items:start;grid-template-columns:minmax(0,1fr)}
.art .wrap .prose{justify-self:center;width:100%;max-width:720px}
.art .wrap .prose.legal-doc{max-width:820px;justify-self:center}
.art .wrap:has(.toc){grid-template-columns:220px minmax(0,1fr)}
.art .wrap:has(.toc) .prose{justify-self:stretch;max-width:none}
.art .wrap:has(.aside){grid-template-columns:minmax(0,1fr) 280px}
.art .wrap:has(.toc):has(.aside){grid-template-columns:220px minmax(0,1fr) 280px}
.art .wrap:has(.toc):has(.aside) .prose{max-width:none}
.prose .toc{display:none}
.prose img,.prose video,.prose iframe{max-width:100%;height:auto}
.prose pre{overflow-x:auto;max-width:100%}
.prose div{max-width:100%}
.legal-doc .container,.legal-doc .min-h-screen{padding:0!important;margin:0!important;min-height:0!important;background:transparent!important;max-width:none!important}
.legal-doc .max-w-3xl,.legal-doc .max-w-4xl{max-width:none!important;margin:0!important;padding:0!important;box-shadow:none!important;background:transparent!important}
.toc{position:sticky;top:20px;align-self:start;font-size:14px}
.toc p{font:700 12px var(--fh);letter-spacing:.1em;text-transform:uppercase;color:#5A667C;margin-bottom:10px}
.toc ol{list-style:none;margin:0;padding:0;border-left:2px solid var(--line);display:grid}
.toc a{display:block;padding:6px 0 6px 14px;margin-left:-2px;border-left:2px solid transparent;text-decoration:none;color:#46546C;transition:color .2s var(--ease),border-color .2s var(--ease)}
.toc a:hover,.toc a.on{color:var(--blue);border-left-color:var(--blue)}
.prose{min-width:0;max-width:720px;font-size:17.5px;line-height:1.75;color:#24324B}
.prose h2{font-size:27px;margin:44px 0 12px;font-weight:700;letter-spacing:-.025em;scroll-margin-top:24px}
.prose h3{font-size:20px;margin:28px 0 8px}
.prose p{margin:0 0 16px}
.prose ul,.prose ol{margin:0 0 18px;padding-left:22px}
.prose li{margin-bottom:6px}
.prose a{color:var(--blue);text-underline-offset:3px}
.prose strong{color:var(--ink)}
.prose table{min-width:560px;font-size:15px;line-height:1.5}
.prose .tbl{margin:8px 0 22px}
.prose blockquote{margin:22px 0;padding:16px 20px;border-left:4px solid var(--blue);background:var(--tint);border-radius:0 var(--r) var(--r) 0;font-size:16.5px}
.takeaways{background:var(--tint);border-radius:var(--r);padding:22px 24px;border-left:4px solid var(--blue);margin:0 0 28px}
.takeaways h2{font-size:18px!important;margin:0 0 10px!important}
.takeaways ul{margin:0;padding-left:20px;font-size:16px;line-height:1.6}
.meta-line{display:flex;flex-wrap:wrap;gap:6px 18px;margin-top:16px;font-size:14px;color:#5A667C}
.meta-line span{display:inline-flex;gap:6px;align-items:center}
.meta-line .ico{width:15px;height:15px;color:var(--blue)}
.cta-box{border:1px solid #E1E8F2;border-top:3px solid var(--blue);border-radius:var(--r);padding:22px;background:#fff;box-shadow:var(--sh-1);margin:32px 0;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:16px;align-items:center}
.cta-box b{font-family:var(--fh);font-size:18px;color:var(--ink);display:block}
.cta-box span{font-size:15px;color:#5A667C}
.aside{display:grid;gap:16px;align-self:start;position:sticky;top:20px}
.author{display:grid;grid-template-columns:44px minmax(0,1fr);gap:12px;align-items:center}
.author .av{width:44px;height:44px;border-radius:50%;background:var(--tint);color:var(--blue);display:grid;place-items:center}
.author b{font-family:var(--fh);display:block;font-size:15px}
.author span{font-size:13.5px;color:#5A667C}

.cards3{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
.feature{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,1fr);gap:0;border:1px solid #E1E8F2;border-radius:var(--r);overflow:hidden;background:#fff;box-shadow:var(--sh-1);text-decoration:none;transition:box-shadow .25s var(--ease),transform .25s var(--ease)}
.feature:hover{transform:translateY(-3px);box-shadow:var(--sh-2)}
.feature .art-img{background:linear-gradient(135deg,var(--navy),#1667C7);min-height:220px;display:grid;place-items:center;color:#fff}
.feature .art-img .ico{width:64px;height:64px;stroke-width:1.4;opacity:.9}
.feature .txt{padding:28px;display:grid;gap:10px;align-content:center}
.feature h3{font-size:24px;letter-spacing:-.02em}
.feature p{color:#5A667C}
.guide .meta{font-size:13px;color:#8A95A8;margin-top:4px}

.az{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:24px}
.az a,.az span{width:38px;height:38px;display:grid;place-items:center;border:1px solid #DCE4F0;border-radius:var(--r);font:700 14px var(--fh);text-decoration:none;transition:border-color .2s var(--ease),color .2s var(--ease)}
.az a:hover{border-color:var(--blue);color:var(--blue)}
.az span{color:#C3CBD8;border-color:#EEF2F7}
.gl-letter{font:800 28px var(--fh);color:var(--blue);margin:28px 0 10px;scroll-margin-top:20px}
.gl-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.gl-item{display:block;padding:18px 20px;border:1px solid #E1E8F2;border-radius:var(--r);background:#fff;box-shadow:var(--sh-1);text-decoration:none;transition:border-color .2s var(--ease),transform .25s var(--ease),box-shadow .25s var(--ease)}
.gl-item:hover{border-color:#C9D6EA;transform:translateY(-2px);box-shadow:var(--sh-2)}
.gl-item b{font-family:var(--fh);font-size:17px;color:var(--ink);display:block}
.gl-item span{font-size:15px;color:#5A667C}
.defbox{background:#fff;border:1px solid #E1E8F2;border-left:4px solid var(--blue);border-radius:var(--r);padding:22px 24px;box-shadow:var(--sh-1);margin-bottom:28px}
.defbox .k{font:700 12px var(--fh);letter-spacing:.1em;text-transform:uppercase;color:var(--blue)}
.defbox p{font-size:19px;line-height:1.6;color:var(--ink);margin:8px 0 0!important}

.qlist{display:grid;border-top:1px solid var(--line);margin:0;padding:0}
.qlist a{display:grid;grid-template-columns:28px minmax(0,1fr) auto;gap:14px;align-items:center;padding:16px 4px;border-bottom:1px solid var(--line);text-decoration:none;transition:background-color .2s var(--ease)}
.qlist a:not(:has(small)){grid-template-columns:28px minmax(0,1fr)}
.qlist a:hover{background:#FAFCFF}
.qlist a:hover b{color:var(--blue)}
.qlist .ico{color:var(--blue);width:22px;height:22px;margin-top:2px}
.qlist b{font-family:var(--fh);font-weight:600;font-size:16.5px;color:var(--ink);transition:color .2s var(--ease);line-height:1.35;min-width:0}
.qlist small{font-size:12.5px;color:#8A95A8;white-space:nowrap;text-align:right;max-width:140px;overflow:hidden;text-overflow:ellipsis}
.sec.tight.qa-index .wrap.qa-index-wrap{max-width:920px}
.qa-empty{margin:24px 0 0;font-size:16px;color:#5A667C}
.qa-index .pager{margin-top:28px}
.answer-box{background:var(--tint);border-radius:var(--r);padding:22px 24px;border-left:4px solid var(--blue);margin-bottom:24px}
.answer-box .k{font:700 12px var(--fh);letter-spacing:.1em;text-transform:uppercase;color:var(--blue)}
.answer-box p{font-size:18px;color:var(--ink);margin:8px 0 0!important;line-height:1.6}
.prose .answer-box{margin-bottom:32px}
.prose .answer-box+p{margin-top:0}

.split{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:56px;align-items:start}
.facts-list{list-style:none;margin:0;padding:0;display:grid;gap:12px}
.facts-list li{display:grid;grid-template-columns:44px minmax(0,1fr);gap:14px;padding:16px;border:1px solid #E1E8F2;border-radius:var(--r);background:#fff;box-shadow:var(--sh-1)}
.facts-list .hi{width:44px;height:44px}
.facts-list b{font-family:var(--fh);display:block;color:var(--ink)}
.facts-list span{font-size:15px;color:#5A667C}
.co-table{width:100%;min-width:0;font-size:15px}
.co-table th{width:40%;color:#5A667C;font-weight:600;font-family:var(--f)}
.co-table td{font-weight:600;color:var(--ink)}
.process{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:20px;counter-reset:p}
.process li{counter-increment:p;border-top:3px solid var(--blue);padding-top:16px;display:grid;gap:6px}
.process li::before{content:"Step " counter(p);font:700 12px var(--fh);letter-spacing:.1em;text-transform:uppercase;color:var(--blue)}
.process b{font-family:var(--fh);font-size:17px;color:var(--ink)}
.process span{font-size:15px;color:#5A667C}

.form{display:grid;gap:16px;background:#fff;border:1px solid #E1E8F2;border-radius:var(--r);padding:28px;box-shadow:var(--sh-2)}
.form .two{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
.field{display:grid;gap:6px}
.field label{font:600 14px var(--fh);color:var(--ink)}
.field input,.field select,.field textarea{font:16px var(--f);padding:12px 14px;border:1px solid #C9D6EA;border-radius:var(--r);background:#fff;color:var(--ink);transition:border-color .2s var(--ease),box-shadow .2s var(--ease);width:100%}
.field textarea{min-height:140px;resize:vertical}
.field input:focus,.field select:focus,.field textarea:focus{outline:none;border-color:var(--blue);box-shadow:0 0 0 4px rgba(22,103,199,.14)}
.field small{font-size:13px;color:#5A667C}
.form .btn{justify-self:start}
.ok-msg{background:#E8F5EE;color:#155E3B;border-radius:var(--r);padding:14px 16px;font-weight:600}
.err-msg{background:#FDEDEC;color:#9B1C1C;border-radius:var(--r);padding:14px 16px;font-weight:600}
.office{border:1px solid #E1E8F2;border-radius:var(--r);padding:20px;background:#fff;box-shadow:var(--sh-1);display:grid;gap:6px}
.office .k{font:700 12px var(--fh);letter-spacing:.1em;text-transform:uppercase;color:var(--blue)}
.office b{font-family:var(--fh);color:var(--ink)}
.office address{font-style:normal;color:#46546C;font-size:15px}
.office a{font-weight:600;color:var(--blue);font-size:14.5px}

.faq-cats{display:grid;grid-template-columns:240px minmax(0,1fr);gap:48px}
.faq-cats nav{position:sticky;top:20px;align-self:start;display:grid;gap:4px}
.faq-cats nav a{padding:10px 14px;border-radius:var(--r);text-decoration:none;font:600 15px var(--fh);color:#46546C;transition:background-color .2s var(--ease),color .2s var(--ease)}
.faq-cats nav a:hover,.faq-cats nav a.on{background:var(--tint);color:var(--blue)}
.faq-group{scroll-margin-top:20px}
.faq-group+.faq-group{margin-top:44px}
.faq-group h2{font-size:24px;margin-bottom:14px}

.verify-card{max-width:640px;margin:0 auto}
.result{border-radius:var(--r);padding:22px 24px;border:1px solid}
.result.valid{background:#F0F9F4;border-color:#A7DDBF}
.result.invalid{background:#FDF4F2;border-color:#F2C2B8}
.result h3{display:flex;gap:10px;align-items:center;font-size:19px}
.result.valid h3{color:#155E3B}
.result.invalid h3{color:#9B1C1C}
.result dl{display:grid;grid-template-columns:auto minmax(0,1fr);gap:8px 18px;margin:14px 0 0;font-size:15px}
.result dt{color:#5A667C}
.result dd{margin:0;font-weight:600;color:var(--ink)}

.auth{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);min-height:560px}
.auth .side{background:linear-gradient(160deg,var(--navy),#123A73);color:#D5DEEC;padding:56px 48px;display:grid;align-content:center;gap:18px}
.auth .side h2{color:#fff;font-size:30px}
.auth .side ul{list-style:none;margin:0;padding:0;display:grid;gap:12px}
.auth .side li{display:grid;grid-template-columns:24px minmax(0,1fr);gap:10px}
.auth .side .ico{color:#8FB3E8;margin-top:3px}
.auth .main{display:grid;place-items:center;padding:56px 24px;background:var(--soft)}
.auth .form{width:100%;max-width:420px}
.auth .row2{display:flex;justify-content:space-between;align-items:center;gap:12px;font-size:14px;flex-wrap:wrap}
.auth .row2 a{color:var(--blue);font-weight:600}
.check{display:flex;gap:8px;align-items:center}
.check input{accent-color:var(--blue);width:16px;height:16px}

.err-page{text-align:center;padding-block:88px}
.err-page .code{font:800 clamp(80px,14vw,140px) var(--fh);letter-spacing:-.04em;line-height:1;background:linear-gradient(135deg,var(--navy),var(--blue));-webkit-background-clip:text;background-clip:text;color:transparent}
.err-page h1{font-size:clamp(28px,3.4vw,40px);margin-top:10px}
.err-page p{color:#5A667C;max-width:52ch;margin:12px auto 0}
.err-page .hsearch{margin:28px auto 0}
.err-page .popular{justify-content:center}

.rev-note{display:flex;gap:14px;align-items:flex-start;background:var(--tint);border-radius:var(--r);padding:20px 22px;margin-bottom:28px}
.rev-note .ico{color:var(--blue);margin-top:2px}
.rev{border:1px solid #E1E8F2;border-radius:var(--r);padding:22px;background:#fff;box-shadow:var(--sh-1);display:grid;gap:12px;align-content:start}
.rev .stars{display:flex;gap:2px;color:#E8A317}
.rev .stars .ico{width:17px;height:17px;fill:currentColor;stroke:none}
.rev blockquote{margin:0;font-size:16px;line-height:1.6;color:#24324B}
.rev footer{background:none;color:#5A667C;font-size:14px;padding:0}
.rev footer b{font-family:var(--fh);color:var(--ink);display:block}
.rev .src{font-size:12.5px;color:#8A95A8}
.example-tag{display:inline-block;font:700 11px var(--fh);letter-spacing:.1em;text-transform:uppercase;color:#B4530A;background:#FFF4E5;padding:4px 8px;border-radius:2px}

.legal-doc{max-width:760px}
.updated{font-size:14px;color:#5A667C;margin-top:10px}

.kit-index{padding-block:56px 88px}
.mini{border:1px solid #E1E8F2;border-radius:var(--r);background:#fff;box-shadow:var(--sh-1);padding:20px}
.mini h3{font-size:16px}
.mini p{font-size:14.5px;color:#5A667C;margin-top:6px}
.mini .btn{width:100%;margin-top:14px}
.mini ul{list-style:none;margin:10px 0 0;padding:0;display:grid;gap:8px;font-size:14.5px}
.mini ul a{text-decoration:none;color:var(--blue);font-weight:600}
.mini ul a:hover{text-decoration:underline}
@media (max-width:1100px){
  .art .wrap:has(.aside){grid-template-columns:minmax(0,1fr) 260px}
  .art .wrap:has(.toc):has(.aside){grid-template-columns:minmax(0,1fr) 260px}
  .toc{display:none}
}
@media (max-width:1000px){
  .art .wrap,.split,.faq-cats,.auth{grid-template-columns:minmax(0,1fr)}
  .aside{position:static}
  .faq-cats nav{position:static;display:flex;flex-wrap:wrap}
  .cards3{grid-template-columns:repeat(2,minmax(0,1fr))}
  .process{grid-template-columns:repeat(2,minmax(0,1fr))}
  .feature{grid-template-columns:minmax(0,1fr)}
  .feature .art-img{min-height:140px}
  .auth .side{padding:40px 24px}
}
@media (max-width:620px){
  .cards3,.gl-list,.process,.form .two{grid-template-columns:minmax(0,1fr)}
  .cta-box{grid-template-columns:minmax(0,1fr)}
  .qlist small{display:none}
  .qlist a{grid-template-columns:24px minmax(0,1fr)}
}
