/* AdvanSEM: call-to-action boxes inside blog posts (.asem-cta). The button is the theme's own Style 3. */
.asem-cta .asem-cta-btn{white-space:normal;text-align:left;text-decoration:none}
.asem-cta .asem-cta-btn .btn-title{line-height:1.4;padding:6px 0}
.asem-cta .asem-cta-btn:hover,.asem-cta .asem-cta-btn:focus{color:#fff}
.asem-cta .asem-cta-btn .icon svg{width:10px;height:16px;fill:#fff;flex:none}
.asem-cta .asem-cta-btn,.asem-cta .asem-cta-btn:hover,.asem-cta .asem-cta-btn *{text-decoration:none!important}

/* Tables inside posts: keep the writer's capitalisation, and let wide tables scroll sideways on phones */
.single-post table th,.single-post table td{text-transform:none}
@media (max-width:767px){.single-post table{display:block;overflow-x:auto;-webkit-overflow-scrolling:touch}.single-post table th,.single-post table td{min-width:150px}}

/* ==========================================================================
   AdvanSEM blog components (single posts only).
   Navy #1A3160 · Emerald #10B981 · Slate #64748B. Headings Kumbh Sans, body Mulish.
   Each block is plain HTML with an asem-* class, so the post stays readable without CSS.
   ========================================================================== */
.post-excerpt{--an:#1A3160;--ae:#10B981;--ae-d:#047857;--as:#64748B;--al:#F1F5F9;--al2:#F8FAFC;--ael:#ECFDF5;--ab:#E2E8F0;--ah:"Kumbh Sans",sans-serif;--acheck:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 100 94'%3E%3Cpath d='M0 52C10 44 19 40 26 40C32 40 36 45 39 57C55 30 72 11 85 4C91 1 96 0 100 1C86 12 63 39 46 70C42 78 37 87 33 94C30 94 31 94 30 94C24 84 19 76 15 70C10 62 5 57 0 52Z'/%3E%3C/svg%3E")}
.post-excerpt h2{margin-top:52px;scroll-margin-top:110px}
.post-excerpt h3{scroll-margin-top:110px}
.post-excerpt .asem-eyebrow{display:block;font-family:var(--ah);font-size:12px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--ae);margin:0 0 8px}

/* Short answer card, opens the post */
.asem-answer{position:relative;margin:0 0 40px;padding:30px 32px 28px;border-radius:18px;background:linear-gradient(135deg,#1A3160 0%,#14294F 60%,#0F3B44 100%);color:#E2E8F0;overflow:hidden}
.asem-answer:after{content:"";position:absolute;right:-60px;top:-60px;width:220px;height:220px;border-radius:50%;background:radial-gradient(circle,rgba(16,185,129,.28),rgba(16,185,129,0) 70%)}
.asem-answer .asem-eyebrow{color:#5EEAB0}
.asem-answer p{position:relative;z-index:1;margin:0;color:#E2E8F0;font-size:18px;line-height:1.7}
.asem-answer p+p{margin-top:12px}
.asem-answer strong{color:#fff}

/* Stat tiles */
.asem-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:14px;margin:30px 0}
.asem-stat{padding:22px 20px 18px;border-radius:14px;background:var(--al2);border:1px solid var(--ab);border-top:3px solid var(--ae)}
.asem-stat b{display:block;font-family:var(--ah);font-size:34px;line-height:1.1;font-weight:800;color:var(--an);letter-spacing:-.01em}
.asem-stat span{display:block;margin-top:8px;font-size:14.5px;line-height:1.5;color:#475569}
.asem-stat small{display:block;margin-top:8px;font-size:12px;color:var(--as)}
.asem-stat small a{color:var(--as);text-decoration:underline}

/* Formula card */
.asem-formula{margin:30px 0;padding:26px 24px;border-radius:16px;background:var(--ael);border:1px solid #A7F3D0;text-align:center}
.asem-formula .asem-eq{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:10px 12px;font-family:var(--ah);font-weight:700;font-size:20px;color:var(--an)}
.asem-formula .asem-eq span{padding:8px 14px;border-radius:10px;background:#fff;box-shadow:0 1px 0 rgba(26,49,96,.08),0 2px 10px rgba(26,49,96,.06)}
.asem-formula .asem-eq i{font-style:normal;color:var(--ae-d);font-size:24px}
.asem-formula .asem-eq .asem-res{background:var(--an);color:#fff}
.asem-formula p{margin:14px 0 0;font-size:15px;color:#475569}

/* Step timeline: ol.asem-steps > li > strong + text */
.post-excerpt ol.asem-steps{list-style:none;margin:30px 0;padding:0;counter-reset:asemstep}
.post-excerpt ol.asem-steps>li{position:relative;margin:0;padding:0 0 26px 62px;counter-increment:asemstep;line-height:1.7}
.post-excerpt ol.asem-steps>li:before{content:counter(asemstep);position:absolute;left:0;top:-2px;width:40px;height:40px;border-radius:50%;background:var(--an);color:#fff;font-family:var(--ah);font-weight:700;font-size:17px;display:flex;align-items:center;justify-content:center;box-shadow:0 0 0 6px #E8EEF8}
.post-excerpt ol.asem-steps>li:after{content:"";position:absolute;left:19px;top:44px;bottom:4px;width:2px;background:linear-gradient(var(--ab),var(--ab))}
.post-excerpt ol.asem-steps>li:last-child{padding-bottom:0}
.post-excerpt ol.asem-steps>li:last-child:after{display:none}
.post-excerpt ol.asem-steps>li>strong:first-child{display:block;font-family:var(--ah);font-size:18px;color:var(--an);margin-bottom:2px}

/* Check list */
.post-excerpt ul.asem-checks{list-style:none;margin:24px 0;padding:0}
.post-excerpt ul.asem-checks>li{position:relative;padding:0 0 12px 34px;line-height:1.7}
.post-excerpt ul.asem-checks>li:before{content:"";position:absolute;left:0;top:.42em;width:20px;height:19px;background:var(--ae);-webkit-mask:var(--acheck) center/contain no-repeat;mask:var(--acheck) center/contain no-repeat}
.post-excerpt ul.asem-checks.asem-x>li:before{background:var(--as);-webkit-mask:none;mask:none;width:14px;height:2px;top:.85em;left:3px;border-radius:2px}

/* Split: two columns (e.g. included vs extra) */
.asem-split{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin:30px 0}
.asem-split>div{padding:24px 24px 12px;border-radius:16px;background:var(--al2);border:1px solid var(--ab)}
.asem-split>div:first-child{background:var(--ael);border-color:#A7F3D0}
.asem-split h3,.asem-split .asem-split-title{margin:0 0 12px;font-family:var(--ah);font-size:18px;font-weight:700;color:var(--an)}

/* Cards grid */
.asem-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:16px;margin:30px 0}
.asem-card{position:relative;padding:24px 22px 18px;border-radius:16px;background:#fff;border:1px solid var(--ab);box-shadow:0 2px 14px rgba(26,49,96,.05)}
.asem-card .asem-tag{display:inline-block;margin:0 0 12px;padding:4px 10px;border-radius:999px;background:var(--al);color:var(--an);font-family:var(--ah);font-size:12px;font-weight:700;letter-spacing:.04em}
.asem-card h3,.asem-card .asem-card-title{margin:0 0 8px;font-family:var(--ah);font-size:19px;line-height:1.35;font-weight:700;color:var(--an)}
.asem-card p{margin:0 0 10px;font-size:15px;line-height:1.65}
.asem-card dl{margin:12px 0 0;display:grid;gap:8px}
.asem-card dt{font-family:var(--ah);font-size:12px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--as)}
.asem-card dd{margin:0 0 4px;font-size:15px;line-height:1.55;color:#334155}

/* Question cards with a good answer and a reason to pause */
.asem-q{margin:22px 0;border-radius:16px;border:1px solid var(--ab);background:#fff;overflow:hidden;box-shadow:0 2px 14px rgba(26,49,96,.05)}
.asem-q-head{display:flex;gap:16px;align-items:flex-start;padding:20px 22px 14px}
.asem-q-num{flex:none;width:38px;height:38px;border-radius:12px;background:var(--an);color:#fff;font-family:var(--ah);font-weight:800;display:flex;align-items:center;justify-content:center}
.asem-q-head h3{margin:4px 0 0;font-size:19px;line-height:1.4;color:var(--an)}
.asem-q>p{margin:0;padding:0 22px 14px 76px;font-size:15.5px}
.asem-q-good,.asem-q-pause{display:flex;gap:12px;padding:14px 22px 14px 76px;font-size:15px;line-height:1.6;position:relative}
.asem-q-good{background:var(--ael);border-top:1px solid #D1FAE5}
.asem-q-pause{background:var(--al);border-top:1px solid var(--ab)}
.asem-q-good:before,.asem-q-pause:before{position:absolute;left:30px;top:15px;font-family:var(--ah);font-size:11px;font-weight:800;letter-spacing:.08em;text-transform:uppercase}
.asem-q-good:before{content:"";width:20px;height:19px;background:var(--ae);-webkit-mask:var(--acheck) center/contain no-repeat;mask:var(--acheck) center/contain no-repeat;left:31px;top:17px}
.asem-q-pause:before{content:"";width:18px;height:18px;border-radius:50%;border:2px solid var(--as);left:31px;top:17px;box-sizing:border-box;background:linear-gradient(var(--as),var(--as)) center/2px 8px no-repeat}
.asem-q-good b,.asem-q-pause b{font-family:var(--ah);color:var(--an);white-space:nowrap}

/* Horizontal bars: .asem-bars > .asem-bar[style="--v:62%"] > span(label) + i + em(value) */
.asem-bars{margin:30px 0;padding:24px 24px 18px;border-radius:16px;background:var(--al2);border:1px solid var(--ab)}
.asem-bars .asem-bars-title{margin:0 0 16px;font-family:var(--ah);font-weight:700;font-size:17px;color:var(--an)}
.asem-bar{display:grid;grid-template-columns:150px 1fr 70px;align-items:center;gap:12px;margin:0 0 12px;font-size:14.5px}
.asem-bar span{color:#334155;line-height:1.35}
.asem-bar i{position:relative;height:14px;border-radius:999px;background:#E2E8F0;overflow:hidden}
.asem-bar i:after{content:"";position:absolute;left:0;top:0;bottom:0;width:var(--v,0%);border-radius:999px;background:linear-gradient(90deg,#1A3160,#10B981)}
.asem-bar em{font-style:normal;font-family:var(--ah);font-weight:700;color:var(--an);text-align:right}
.asem-bars small{display:block;margin-top:6px;font-size:12.5px;color:var(--as)}
.asem-bars small a{color:var(--as);text-decoration:underline}

/* Callouts */
.asem-note{margin:26px 0;padding:18px 22px 18px 56px;position:relative;border-radius:14px;background:var(--al);font-size:15.5px;line-height:1.7;color:#334155}
.asem-note:before{content:"i";position:absolute;left:20px;top:18px;width:22px;height:22px;border-radius:50%;background:var(--an);color:#fff;font:700 13px/22px var(--ah);text-align:center}
.asem-note.asem-tip{background:var(--ael)}
.asem-note.asem-tip:before{content:"";background:var(--ae);-webkit-mask:var(--acheck) center/14px no-repeat;mask:var(--acheck) center/14px no-repeat;border-radius:0;width:22px}
.asem-note strong{color:var(--an)}
.asem-note p{margin:0}

/* Example box (worked example) */
.asem-example{margin:30px 0;border-radius:16px;border:1px dashed #94A3B8;padding:22px 24px 10px;background:#fff}
.asem-example .asem-eyebrow{color:var(--as)}
.asem-example table{margin:6px 0 14px}

/* Pull quote */
.post-excerpt blockquote.asem-quote{position:relative;margin:40px 0;padding:8px 0 8px 74px;border:0;background:none;font-family:var(--ah);font-size:24px;line-height:1.45;font-weight:700;color:var(--an)}
.post-excerpt blockquote.asem-quote:before{content:"\201C";position:absolute;left:0;top:-14px;font-size:96px;line-height:1;color:var(--ae);font-family:Georgia,serif}
.post-excerpt blockquote.asem-quote p{margin:0;font:inherit;color:inherit}

/* Tables */
.post-excerpt table{width:100%;border-collapse:separate;border-spacing:0;margin:26px 0;border:1px solid var(--ab);border-radius:14px;overflow:hidden;font-size:15px}
.post-excerpt table thead th{background:var(--an);color:#fff;font-family:var(--ah);font-weight:700;font-size:14px;letter-spacing:.02em;border:0;padding:14px 16px;text-align:left}
.post-excerpt table td{padding:13px 16px;border:0;border-top:1px solid var(--ab);color:#334155;vertical-align:top;line-height:1.55}
.post-excerpt table tbody tr:nth-child(even) td{background:var(--al2)}
.post-excerpt table td:first-child{font-weight:700;color:var(--an)}

/* Calculator */
.asem-calc{margin:36px 0;border-radius:20px;background:#fff;border:1px solid var(--ab);box-shadow:0 10px 40px rgba(26,49,96,.10);overflow:hidden}
.asem-calc-head{padding:22px 26px 6px}
.asem-calc-title{margin:0;font-family:var(--ah);font-size:21px;font-weight:700;color:var(--an)}
.asem-calc-head p{margin:6px 0 0;font-size:15px}
.asem-calc-fields{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:14px 16px;padding:18px 26px 22px}
.asem-calc-fields label{display:block;font-family:var(--ah);font-size:13px;font-weight:700;color:#334155;line-height:1.35}
.asem-in{display:flex;align-items:center;margin-top:6px;border:1px solid #CBD5E1;border-radius:10px;background:#fff;overflow:hidden;transition:border-color .15s}
.asem-in:focus-within{border-color:var(--ae);box-shadow:0 0 0 3px rgba(16,185,129,.15)}
.asem-in i{font-style:normal;padding:0 0 0 12px;color:var(--as);font-weight:700}
.asem-in i.asem-suf{padding:0 12px 0 0}
.asem-in input{flex:1;min-width:0;border:0!important;outline:0;background:transparent!important;padding:10px 12px!important;height:auto!important;font:600 16px/1.2 "Mulish",sans-serif;color:var(--an);box-shadow:none!important;margin:0!important}
.asem-range{margin-top:10px;width:100%;accent-color:#10B981}
.asem-calc-out{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:1px;background:#24467E}
.asem-calc-out>div{padding:18px 22px;background:var(--an)}
.asem-calc-out>div.asem-hi{background:#0F5D52}
.asem-calc-k{display:block;font-family:var(--ah);font-size:12px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:#A7B7D6}
.asem-calc-out output{display:block;margin-top:6px;font-family:var(--ah);font-size:30px;font-weight:800;color:#fff;line-height:1.1}
.asem-calc-out>div.asem-hi output{color:#6EF3C0}
.asem-calc-out output.is-long{font-size:20px;line-height:1.3}
.asem-calc-note{margin:0;padding:14px 26px 18px;font-size:13.5px;line-height:1.6;color:var(--as);background:var(--al2)}

/* Interactive checklist with progress */
.asem-tick{margin:30px 0;padding:22px 24px;border-radius:16px;background:var(--al2);border:1px solid var(--ab)}
.asem-tick-bar{height:10px;border-radius:999px;background:#E2E8F0;overflow:hidden;margin:6px 0 4px}
.asem-tick-bar i{display:block;height:100%;width:0;border-radius:999px;background:linear-gradient(90deg,#1A3160,#10B981);transition:width .25s}
.asem-tick-count{font-family:var(--ah);font-weight:700;color:var(--an);font-size:15px}
.asem-tick label{display:flex;gap:12px;align-items:flex-start;padding:10px 0;border-top:1px solid var(--ab);cursor:pointer;font-size:15.5px;line-height:1.55;color:#334155}
.asem-tick label:first-of-type{border-top:0}
.asem-tick input{flex:none;width:20px;height:20px;margin:2px 0 0;accent-color:#10B981}
.asem-tick-msg{margin:12px 0 0;font-size:14.5px;color:var(--an);font-weight:600}

/* FAQ accordion */
.asem-faq{margin:22px 0 0;border-top:1px solid var(--ab)}
.asem-faq details{border-bottom:1px solid var(--ab)}
.asem-faq summary{list-style:none;cursor:pointer;position:relative;padding:18px 44px 18px 0;font-family:var(--ah);font-size:18px;font-weight:700;color:var(--an);line-height:1.4}
.asem-faq summary::-webkit-details-marker{display:none}
.asem-faq summary:after{content:"";position:absolute;right:6px;top:50%;width:22px;height:22px;margin-top:-11px;border-radius:50%;background:var(--al) linear-gradient(var(--an),var(--an)) center/10px 2px no-repeat;transition:transform .2s}
.asem-faq summary:before{content:"";position:absolute;right:16px;top:50%;width:2px;height:10px;margin-top:-5px;background:var(--an);z-index:1;transition:opacity .2s}
.asem-faq details[open] summary:before{opacity:0}
.asem-faq details>div{padding:0 0 18px;font-size:16px;line-height:1.75}
.asem-faq details>div p{margin:0}

/* Key points, closes a section or the post */
.asem-keys{margin:36px 0;padding:24px 26px 12px;border-radius:16px;border:2px solid var(--an);background:#fff}
.asem-keys .asem-keys-title{margin:0 0 12px;font-family:var(--ah);font-size:18px;font-weight:700;color:var(--an)}

/* Contents box: sidebar on wide screens, folded list at the top on phones (built by asem-blog-single.js) */
.asem-toc{margin:30px 0 0;padding:26px 28px;border-radius:12px;background:#fff;border:1px solid var(--ab,#E2E8F0);box-shadow:0 10px 30px rgba(26,49,96,.07)}
.asem-toc-side{position:-webkit-sticky;position:sticky;top:120px}
.asem-toc .asem-toc-title{margin:0 0 14px;font-family:"Kumbh Sans",sans-serif;font-size:20px;font-weight:700;color:#1A3160}
.asem-toc ol{list-style:none;margin:0;padding:0;counter-reset:toc}
.asem-toc li{counter-increment:toc;margin:0;border-top:1px solid #EEF2F7}
.asem-toc li:first-child{border-top:0}
.asem-toc a{display:flex;gap:12px;padding:10px 0;font-size:15px;line-height:1.45;color:#475569;text-decoration:none!important}
.asem-toc a:before{content:counter(toc,decimal-leading-zero);flex:none;font-family:"Kumbh Sans",sans-serif;font-weight:700;font-size:13px;color:#10B981;padding-top:1px}
.asem-toc a:hover,.asem-toc a.is-on{color:#1A3160}
.asem-toc a.is-on{font-weight:700}
.asem-toc-cta{margin-top:18px;padding-top:18px;border-top:1px solid #EEF2F7}
.asem-toc-cta p{margin:0 0 12px;font-size:14.5px;line-height:1.6}
.asem-toc a.asem-toc-go{display:inline-flex;align-items:center;gap:10px;padding:11px 18px 11px 20px;border-radius:999px;background:#1A3160;color:#fff!important;font-family:"Kumbh Sans",sans-serif;font-weight:700;font-size:15px;line-height:1.3;transition:background .2s}
.asem-toc a.asem-toc-go:before{display:none}
.asem-toc a.asem-toc-go:after{content:"\2192";color:#10B981;font-size:17px}
.asem-toc a.asem-toc-go:hover{background:#10B981}
.asem-toc a.asem-toc-go:hover:after{color:#fff}
details.asem-toc-m{display:none;margin:0 0 30px;border-radius:14px;border:1px solid var(--ab);background:var(--al2)}
details.asem-toc-m summary{cursor:pointer;padding:14px 18px;font-family:var(--ah);font-weight:700;color:var(--an)}
details.asem-toc-m ol{margin:0;padding:0 18px 12px 38px}
details.asem-toc-m li{padding:4px 0;font-size:15px}
details.asem-toc-m a{color:#334155}

@media (max-width:991px){
	.asem-toc-side{display:none}
	details.asem-toc-m{display:block}
}
@media (max-width:767px){
	.asem-answer{padding:24px 22px 22px;border-radius:16px}
	.asem-answer p{font-size:16.5px}
	.asem-split{grid-template-columns:1fr}
	.asem-bar{grid-template-columns:1fr 64px;gap:6px 10px}
	.asem-bar span{grid-column:1/-1}
	.asem-q-head{padding:18px 18px 12px;gap:12px}
	.asem-q>p{padding:0 18px 12px}
	.asem-q-good,.asem-q-pause{padding:12px 18px 12px 50px}
	.asem-q-good:before,.asem-q-pause:before{left:18px}
	.post-excerpt blockquote.asem-quote{font-size:20px;padding-left:54px}
	.post-excerpt blockquote.asem-quote:before{font-size:76px}
	.asem-formula .asem-eq{font-size:17px}
	.asem-calc-head,.asem-calc-fields{padding-left:18px;padding-right:18px}
	.asem-calc-out output{font-size:26px}
	.asem-stat b{font-size:30px}
}

/* Theme spacing reset inside components */
.post-excerpt [class^="asem-"]:not(.asem-cta) p,.post-excerpt [class*=" asem-"]:not(.asem-cta) p{margin-bottom:0!important}
.post-excerpt .asem-calc-head p.asem-calc-title{margin:0!important}
.post-excerpt .asem-calc-head p:not(.asem-calc-title){margin:6px 0 0!important}
.post-excerpt .asem-split .asem-split-title,.post-excerpt .asem-keys .asem-keys-title{margin:0 0 12px!important}
.post-excerpt .asem-card p{margin:0 0 10px!important}
.post-excerpt .asem-card .asem-card-title{margin:0 0 8px!important}
.post-excerpt .asem-q-head h3{margin:6px 0 0!important}
.post-excerpt ul.asem-checks>li{margin:0!important}
.post-excerpt .asem-split ul.asem-checks,.post-excerpt .asem-keys ul.asem-checks{margin:0 0 6px!important}
.post-excerpt .asem-split>div,.post-excerpt .asem-keys{padding-bottom:16px}
.post-excerpt .asem-formula p{margin:14px 0 0!important}
.post-excerpt .asem-bars .asem-bars-title{margin:0 0 16px!important}
.post-excerpt .asem-note.asem-tip:before{-webkit-mask-size:18px;mask-size:18px}
.post-excerpt .asem-faq details>div p,.post-excerpt .asem-answer p+p{margin-top:12px!important}
.post-excerpt .asem-faq details>div p:first-child{margin-top:0!important}
/* a text result (e.g. the learning check) takes its own full row */
.asem-calc-out>div.asem-wide{grid-column:1/-1}
