/* BLOG-L02. Scope presentation to the article and editorial cards. */
.acv-main{background:#f6f7f2;color:#183b33;margin-block:0!important;padding:0!important}
.acv-main *,.acv-card *{box-sizing:border-box}
.acv-wrap{width:min(1120px,calc(100% - 48px));margin-inline:auto}
.acv-hero{background:radial-gradient(ellipse at 82% 25%,#225c4a66,transparent 65%),linear-gradient(130deg,#102e2a,#0c2421);color:#f6f7f2;padding:54px 0 44px}
.acv-has-cover .acv-hero{padding-bottom:174px}
.acv-hero .acv-title{font-size:clamp(34px,4.3vw,62px);line-height:1.1;letter-spacing:-.045em;font-weight:650;color:#f6f7f2;max-width:1080px;margin:22px 0 28px;text-wrap:pretty;overflow-wrap:anywhere}
.acv-topic{display:inline-flex;align-items:center;background:#e1e8cb;color:#193c32;font-size:12px;line-height:1.3;padding:6px 11px;border-radius:5px;font-weight:650}
.acv-meta-row{display:flex;align-items:center;justify-content:space-between;gap:22px;flex-wrap:wrap}
.acv-meta-author{display:flex;align-items:center;gap:18px;flex-wrap:wrap}
.acv-byline{display:flex;align-items:center;gap:10px;min-width:0;font-size:12px;line-height:1.5}
.acv-byline>div{display:flex;flex-direction:column;gap:2px;min-width:0}
.acv-author-name{font-weight:600;font-size:14px;overflow-wrap:anywhere}
.acv-byline a{color:inherit;text-decoration:none}
.acv-byline a:hover{text-decoration:underline;text-underline-offset:3px}
.acv-avatar{width:44px;height:44px;display:block;flex:none;overflow:hidden;border-radius:50%;position:relative;background:#d9e2cc}
.acv-avatar img{position:absolute;display:block;width:175%;max-width:none;height:auto;top:-3%;left:-37.5%}
.acv-reading-time{font-size:12px;color:#d4dfd7;white-space:nowrap}
.acv-share{display:flex;align-items:center;flex-wrap:wrap;gap:4px 6px;position:relative;font-size:12px}
.acv-share>a,.acv-share-native{min-width:44px;min-height:44px;display:inline-flex;align-items:center;justify-content:center;border-radius:6px;color:#f6f7f2;text-decoration:none;background:transparent;border:0;font:inherit;cursor:pointer;gap:7px;padding:8px}
.acv-share>span:first-child{margin-right:3px}
.acv-share img{width:19px;height:19px;display:block;filter:brightness(0) invert(1);object-fit:contain}
.acv-share-native svg{width:19px;height:19px;flex:none}
.acv-share>a:hover,.acv-share-native:hover{background:#e1e8cb1f;color:#e1e8cb}
.acv-share-status{flex-basis:100%;font-size:12px;line-height:1.4;color:#e1e8cb;min-height:0}
.acv-share-status:empty{display:none}
.acv-cover{position:relative;margin-top:-126px;margin-bottom:0;border-radius:12px;overflow:hidden;background:#dfe7cf}
.acv-cover img{width:100%;height:auto;aspect-ratio:2.35/1;object-fit:cover;object-position:center;display:block}
.acv-reading{display:grid;grid-template-columns:minmax(0,760px) minmax(0,240px);gap:60px;padding-top:56px;align-items:start}
.acv-main .acv-prose{min-width:0;width:100%;max-width:none;font-size:17px;line-height:1.8;color:#35463d}
.acv-main .acv-prose .wp-block-post-content{padding:0!important;margin:0!important;max-width:none!important}
.acv-main .acv-prose .wp-block-post-content>*{max-width:none!important;margin-inline:0!important}
.acv-main .acv-prose p{font-size:inherit;line-height:inherit;margin-block:0 1.3em}
.acv-main .acv-prose h2{font-size:clamp(25px,2.4vw,34px);line-height:1.24;letter-spacing:-.025em;color:#183b33;margin-block:48px 18px;font-weight:650;text-wrap:pretty}
.acv-main .acv-prose h3{font-size:23px;line-height:1.35;color:#183b33;margin-block:34px 14px;font-weight:600}
.acv-main .acv-prose a{color:#145b48;text-decoration:underline;text-underline-offset:3px;overflow-wrap:anywhere}
.acv-main .acv-prose a:hover{color:#0c3025;text-decoration-thickness:2px}
.acv-main .acv-prose li{padding-left:4px;margin-bottom:9px}
.acv-main .acv-prose ul,.acv-main .acv-prose ol{padding-left:25px;margin-block:0 26px}
.acv-main .acv-prose blockquote{margin-block:28px;padding:22px 24px;background:#e1e8cb8c;border:0;border-radius:9px;box-shadow:none;font-style:normal}
.acv-main .acv-prose blockquote p:last-child{margin-bottom:0}
.acv-main .acv-prose .wp-block-table{max-width:100%;overflow-x:auto;overscroll-behavior-x:contain;margin-block:26px}
.acv-main .acv-prose .wp-block-table table{min-width:36rem;font-size:15px;line-height:1.55}
.acv-main .acv-prose .wp-block-table th{background:#e1e8cb;color:#183b33}
.acv-toc{position:sticky;top:calc(var(--ac-header-height,93px) + var(--ac-admin-height,0px) + 24px);max-height:calc(100dvh - var(--ac-header-height,93px) - var(--ac-admin-height,0px) - 48px);overflow-y:auto;padding:0 0 12px 18px;border-left:1px solid #d9e2d7}
.acv-toc h2{font-size:15px;line-height:1.4;font-weight:650;margin:0 0 16px;color:#183b33}
.acv-toc ol,.acv-mobile-toc ol{padding:0;margin:0;list-style:none}
.acv-toc li+li,.acv-mobile-toc li+li{margin-top:5px}
.acv-toc a,.acv-mobile-toc a{display:block;padding:7px 8px;font-size:13px;line-height:1.45;color:#526358;text-decoration:none;border-radius:5px}
.acv-toc a:hover,.acv-mobile-toc a:hover,.acv-toc a[aria-current=location],.acv-mobile-toc a[aria-current=location]{color:#153c30;background:#e3ead8}
.acv-mobile-toc{display:none}
.acv-after{padding-block:52px 64px}
.acv-author-box{background:#e1e8cb80;border:1px solid #dbe4d2;border-radius:10px;display:flex;gap:22px;align-items:center;padding:25px 30px}
.acv-author-box .acv-avatar{width:88px;height:88px}
.acv-author-box h2{font-size:25px;line-height:1.25;letter-spacing:-.025em;margin:0 0 7px;font-weight:650}
.acv-author-box p{font-size:15px;margin:0 0 6px;line-height:1.55;color:#405b49}
.acv-author-box a{display:inline-flex;align-items:center;gap:10px;min-height:44px;font-size:14px;font-weight:600;color:#183b33;text-underline-offset:4px}
.acv-author-box a svg,.acv-continue svg,.acv-card-action svg{width:19px;height:19px;flex:none}
.acv-related{margin-top:46px}
.acv-related>h2{font-size:30px;line-height:1.25;letter-spacing:-.03em;margin:0 0 22px;font-weight:650}
.acv-related-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:25px}
.acv-card{display:flex;flex-direction:column;min-width:0;background:#fff;border:1px solid #d5ded4;border-radius:11px;overflow:hidden;height:100%;color:#183b33;transition:box-shadow .18s ease,transform .18s ease}
.acv-card-cover{display:block;background:#e1e8cb;overflow:hidden;aspect-ratio:2.05/1;position:relative}
.acv-card-cover img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .22s ease}
.acv-card-cover>.ado-icon{display:block;width:60px;height:60px;position:absolute;inset:0;margin:auto;color:#174d43}
.acv-card-copy{padding:22px;display:flex;flex-direction:column;flex:1;gap:12px;min-width:0}
.acv-card-topic{font-size:11px;font-weight:600;letter-spacing:.04em;color:#56725e}
.acv-card h2,.acv-card h3{font-size:21px;font-weight:650;letter-spacing:-.025em;line-height:1.3;margin:0;text-wrap:pretty}
.acv-card h2 a,.acv-card h3 a{color:#183b33;text-decoration:none}
.acv-card h2 a:hover,.acv-card h3 a:hover{color:#28664c}
.acv-card .acv-card-excerpt{font-size:14px;line-height:1.6;color:#526358;margin:0 0 4px}
.acv-card .acv-byline{margin-top:auto;padding-top:8px}
.acv-card .acv-avatar{width:35px;height:35px}
.acv-card .acv-author-name{font-size:12px}
.acv-card time{font-size:11px;color:#526358}
.acv-card-action{min-height:44px;display:flex;gap:12px;align-items:center;justify-content:space-between;color:#174d43;font-size:13px;font-weight:600;text-decoration:underline;text-underline-offset:4px}
.acv-continue{background:#e1e8cb;border-radius:9px;margin-top:30px;padding:25px 30px;display:flex;align-items:center;justify-content:space-between;gap:25px}
.acv-continue h2{font-size:22px;line-height:1.35;letter-spacing:-.02em;font-weight:650;max-width:560px;margin:0}
.acv-continue>a{display:inline-flex;align-items:center;justify-content:center;gap:15px;min-height:48px;padding:12px 20px;background:#174d43;color:#fff;border-radius:6px;text-decoration:none;font-size:14px;font-weight:600;flex:none}
.acv-continue>a:hover{background:#103d34}
.acv-main :is(a,button,input,summary):focus-visible,.acv-card :is(a,button):focus-visible{outline:3px solid #28664c;outline-offset:4px}
.acv-hero :is(a,button,input):focus-visible{outline-color:#e1e8cb}
.acv-main h2[tabindex="-1"]:focus{outline:none}
@media(hover:hover){.acv-card:hover{transform:translateY(-3px);box-shadow:0 12px 28px #17202412}.acv-card:hover .acv-card-cover img{transform:scale(1.025)}}
@media(max-width:1000px){.acv-reading{grid-template-columns:minmax(0,1fr);gap:26px;max-width:760px}.acv-toc{display:none}.acv-mobile-toc{display:block;border:1px solid #d5dfce;border-radius:8px;background:#ecf0e4;padding:8px 14px}.acv-mobile-toc summary{min-height:44px;padding:10px 2px;cursor:pointer;font-size:14px;font-weight:600}.acv-mobile-toc nav{padding-bottom:8px}.acv-meta-row{align-items:flex-start}.acv-card-copy{padding:20px}}
@media(max-width:600px){.acv-wrap{width:calc(100% - 36px)}.acv-hero{padding-top:34px}.acv-has-cover .acv-hero{padding-bottom:108px}.acv-hero .acv-title{font-size:35px;line-height:1.1;letter-spacing:-.04em;margin:18px 0 24px}.acv-meta-row{gap:17px}.acv-meta-author{gap:10px 15px}.acv-byline{gap:9px}.acv-reading-time{font-size:11px}.acv-share{width:100%;gap:2px}.acv-share>span:first-child{font-size:11px}.acv-share>a,.acv-share-native{padding:7px;min-width:44px}.acv-share-native{font-size:11px;gap:5px}.acv-cover{margin-top:-82px;border-radius:9px}.acv-cover img{aspect-ratio:16/10;object-position:center}.acv-reading{padding-top:28px}.acv-main .acv-prose{font-size:16px;line-height:1.8}.acv-main .acv-prose h2{font-size:27px;margin-top:38px}.acv-main .acv-prose h3{font-size:22px}.acv-main .acv-prose blockquote{padding:20px}.acv-after{padding-block:35px 42px}.acv-author-box{padding:21px 18px;gap:16px;align-items:flex-start}.acv-author-box .acv-avatar{width:64px;height:64px}.acv-author-box h2{font-size:23px}.acv-author-box p{font-size:14px}.acv-author-box a{font-size:13px;gap:7px;flex-wrap:wrap}.acv-related{margin-top:32px}.acv-related>h2{font-size:27px}.acv-related-grid{grid-template-columns:minmax(0,1fr);gap:20px}.acv-card h2,.acv-card h3{font-size:22px}.acv-continue{padding:23px 20px;flex-direction:column;align-items:stretch;gap:18px}.acv-continue h2{font-size:22px}.acv-continue>a{white-space:normal;text-align:center}}
@media(prefers-reduced-motion:reduce){.acv-main *,.acv-card *,.acv-card{scroll-behavior:auto!important;transition:none!important;animation:none!important}.acv-card:hover,.acv-card:hover .acv-card-cover img{transform:none}}

/* BLOG-L03: compact share controls, subject and article progress. */
.acv-reading-meta{display:flex;flex-direction:column;gap:3px;align-items:flex-start;min-width:0}
.acv-reading-subject{font-size:11px;line-height:1.45;color:#d4dfd7;max-width:240px;overflow-wrap:anywhere}
.acv-share{gap:0;flex-wrap:nowrap}
.acv-share>a,.acv-share-native{width:32px;min-width:32px;height:36px;min-height:36px;padding:7px;flex:none}
.acv-share>span:first-child{margin-right:9px}
.acv-share svg{width:19px;height:19px;flex:none}
.acv-share-status:not(:empty){position:absolute;top:calc(100% + 8px);right:0;width:min(320px,80vw);padding:12px 14px;background:#173d33;border:1px solid #71827c;border-radius:6px;z-index:3;box-shadow:0 8px 22px #0002}
.acv-share noscript{position:absolute;top:100%;right:0;width:260px;font-size:11px}
.acv-progress{position:fixed;top:var(--ac-admin-height,0px);left:0;width:100%;height:5px;background:#172024;z-index:102;pointer-events:none}
.acv-progress[hidden]{display:none}
.acv-progress>span{display:block;width:100%;height:100%;background:#d9bb71;transform:scaleX(0);transform-origin:left;transition:none}
@media(max-width:600px){.acv-share{width:auto;gap:0}.acv-share>a,.acv-share-native{padding:10px;min-width:44px;width:44px;min-height:44px;height:44px}.acv-share-status:not(:empty){right:auto;left:0}.acv-reading-subject{font-size:11px;max-width:180px}}
@media(pointer:coarse){.acv-share>a,.acv-share-native{width:44px;min-width:44px;height:44px;min-height:44px}}

/* BLOG-L03 v1.1: reserve the visible strip above the article menu only. */
body:has(.acv-progress) .wp-site-blocks>header.wp-block-template-part{top:calc(var(--ac-admin-height,0px) + 5px)!important}
body:has(.acv-progress) .acv-main h2[tabindex="-1"]{scroll-margin-top:calc(var(--ac-header-height,93px) + var(--ac-admin-height,0px) + 29px)!important}

/* BLOG-L04: no outline on non-interactive hub fragment destinations; controls retain focus styling. */
#ac-hub :is(h1,h2,h3,section)[tabindex="-1"]:focus{outline:none!important}
