.ai4u-sub .a2-section{width:min(calc(100% - 80px),var(--max));margin-inline:auto;min-width:0;color:var(--ink)}
.a2-section :is(.a2-eyebrow,.a2-panel-kicker){margin:0 0 16px;color:#3154bb;font-size:12px;font-weight:800;letter-spacing:.14em;text-transform:uppercase}
.a2-section .a2-section-title{max-width:920px;margin:0;font-weight:850}
.a2-section .a2-lead{max-width:800px;margin:22px 0 0;color:#34466e;font-size:19px;font-weight:650;line-height:1.7}
.a2-section .a2-body{max-width:900px;margin:16px 0 0;color:#435474;line-height:1.8}
.a2-section .a2-list{margin:24px 0 0;padding:0;list-style:none}
.a2-section .a2-list li{position:relative;margin:0;padding:12px 0 12px 24px;border-bottom:1px solid var(--line);font-size:16px;line-height:1.7}
.a2-section .a2-list li:before{position:absolute;left:0;top:22px;width:7px;height:7px;border-radius:50%;background:var(--blue);content:""}
.a2-section .a2-hero-layout,.a2-section .a2-asym-layout,.a2-section .a2-handoff-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,.96fr);align-items:center;gap:clamp(40px,7vw,104px);margin:0}
.a2-section .a2-hero-layout>.wp-block-column,.a2-section .a2-asym-layout>.wp-block-column,.a2-section .a2-handoff-layout>.wp-block-column{min-width:0;margin:0}
.a2-section-01 .a2-section-title{max-width:700px;font-size:clamp(42px,5vw,70px);line-height:1.19;letter-spacing:-.065em}
.a2-section-01 .a2-lead{font-size:20px}
.a2-section .a2-hero-list{margin-top:20px}
.a2-section .a2-hero-visual{aspect-ratio:4/3;display:flex;flex-direction:column;justify-content:center;padding:clamp(22px,3vw,38px);border:1px solid #e1e8fb;border-radius:12px;background:radial-gradient(ellipse at 80% 12%,#e9edff 0,transparent 58%),#f7f9ff;box-shadow:0 24px 70px rgba(22,48,112,.08)}
.a2-section .a2-panel-kicker{margin-bottom:16px;color:#34466e;font-size:13px;letter-spacing:.04em}
.a2-section .a2-hero-table{width:100%;margin:0;overflow:visible}
.a2-section .a2-hero-table table{table-layout:fixed;font-size:12px}
.a2-section .a2-hero-table th,.a2-section .a2-hero-table td{padding:9px 11px;border-color:#e1e8fb;line-height:1.45}
.a2-section .a2-hero-table th:first-child{width:26%;color:var(--ink)}
.a2-section .a2-hero-table thead th{background:#eaf0ff;color:#243d82}
.a2-section .a2-hero-table tbody th{background:#fff}
.a2-section .a2-hero-flow{display:flex;align-items:center;gap:8px;margin:17px 0 0;padding:0;list-style:none}
.a2-section .a2-hero-flow li{position:relative;flex:1;min-width:0;padding:8px 5px;border-radius:5px;background:#eaf0ff;color:#2448c2;text-align:center;font-size:11px;font-weight:800}
.a2-section .a2-hero-flow li+li:before{position:absolute;left:-8px;top:50%;width:8px;border-top:1px solid #9aabe1;content:""}
.a2-section .a2-diagram-caption{margin:13px 0 0;color:#526381;font-size:12px}
.a2-section .a2-layer-stack{display:grid;gap:0;max-width:1040px;margin:34px auto 0;padding:0;list-style:none}
.a2-section .a2-layer{position:relative;display:grid;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:16px;min-width:0;padding:21px 26px;border:1px solid #dfe7fb;border-radius:8px;background:#fff;box-shadow:0 8px 20px rgba(22,48,112,.045)}
.a2-section .a2-layer:nth-child(2){margin:0 5% 0 10%;background:#f8faff}
.a2-section .a2-layer:nth-child(3){margin:0 10% 0 20%;background:#eef2ff}
.a2-section .a2-layer+.a2-layer{margin-top:14px}
.a2-section .a2-layer-copy{display:grid;gap:4px;color:#465777;font-size:14px;line-height:1.6}
.a2-section .a2-layer-copy strong{color:var(--ink);font-size:16px}
.a2-section .a2-step-index{display:grid;flex:0 0 30px;width:30px;height:30px;place-items:center;border-radius:50%;background:#e7edff;color:#2448c2;font-size:12px;font-weight:850}
.a2-section .a2-asym-layout{grid-template-columns:minmax(0,1.1fr) minmax(350px,.9fr);gap:clamp(44px,8vw,120px)}
.a2-section .a2-contract-panel{padding:26px;border:1px solid var(--line);border-radius:9px;background:#f8faff}
.a2-section .a2-role-switch{display:flex;flex-wrap:wrap;gap:8px;margin:0 0 14px}
.a2-section .a2-role-choice{min-height:42px;padding:8px 16px;border:1px solid #aab9e6;border-radius:5px;background:#fff;color:#263b72;font-size:14px;font-weight:750;transition:color .6s ease,background .6s ease,border-color .6s ease,transform .6s ease}
.a2-section .a2-role-choice[aria-pressed="true"]{border-color:var(--blue);background:var(--blue);color:#fff}
.a2-section .a2-role-choice:hover{transform:translateY(-2px)}
.a2-section .a2-role-network{display:grid;gap:10px}
.a2-section .a2-role-card{display:grid;grid-template-columns:minmax(62px,.32fr) minmax(0,1fr) minmax(0,1fr);align-items:center;gap:8px 12px;margin:0;padding:12px 14px;border:1px solid #dfe7fb;border-radius:6px;background:#fff;opacity:1;transition:opacity .65s ease,transform .65s ease,border-color .65s ease,box-shadow .65s ease}
.a2-section .a2-role-card.is-active{border-color:#879ce0;box-shadow:0 5px 18px rgba(49,84,238,.12);opacity:1}
.a2-section .a2-role-card h3{grid-row:span 2;margin:0;color:#1f377d;font-size:15px}
.a2-section .a2-role-card p{display:grid;gap:3px;margin:0;color:#435474;font-size:12px;line-height:1.45}
.a2-section .a2-role-card p strong{color:#53658a;font-size:10px;letter-spacing:.08em}
.a2-section .a2-contract-list{margin-top:18px}
.a2-section .a2-question-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin-top:30px}
.a2-section .a2-question-card{min-width:0;padding:23px;border-top:3px solid var(--blue);background:#f7f9ff}
.a2-section .a2-question-2{border-color:#768ccc;background:#f9faff}
.a2-section .a2-question-3{border-color:#263e83;background:#f5f7fc}
.a2-section .a2-card-title{margin:0;color:var(--ink);font-size:17px;font-weight:800;line-height:1.5}
.a2-section .a2-card-copy{margin:14px 0 0;color:#34466e;font-size:14px;line-height:1.65}
.a2-section .a2-quote{max-width:1050px;margin:28px auto;padding:28px 34px;border-left:4px solid var(--blue);background:var(--wash);color:#1b3479;font-size:clamp(22px,3vw,32px);font-weight:750;line-height:1.55}
.a2-section .a2-quote p{margin:0}
.a2-section .a2-judgement-list{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;max-width:1080px;margin-inline:auto}
.a2-section .a2-judgement-list li{padding:18px;border:1px solid var(--line);border-radius:6px;background:#fff}
.a2-section .a2-handoff-layout{grid-template-columns:minmax(0,1fr) minmax(0,.9fr);gap:22px;margin-top:30px}
.a2-section .a2-handoff-list-panel,.a2-section .a2-context-panel{height:100%;padding:28px;border:1px solid var(--line);border-radius:8px;background:#fff}
.a2-section .a2-context-panel{background:var(--wash)}
.a2-section .a2-handoff-list{margin-top:0}
.a2-section .a2-context-flow{display:grid;gap:0;margin:0;padding:0;list-style:none}
.a2-section .a2-context-flow li{position:relative;display:flex;align-items:center;gap:14px;padding:13px 0;color:#34466e;font-size:14px;font-weight:700}
.a2-section .a2-context-flow li+li{border-top:1px solid #e0e7f7}
.a2-section .a2-matrix,.a2-section .a2-output-table{margin:28px 0 0}
.a2-section .a2-matrix table,.a2-section .a2-output-table table{table-layout:fixed}
.a2-section .a2-matrix th:first-child{width:24%}
.a2-section .a2-matrix tbody th,.a2-section .a2-output-table tbody th{color:var(--ink);font-size:15px}
.a2-section .a2-matrix td,.a2-section .a2-output-table td{color:#34466e;font-size:15px;line-height:1.7}
.a2-section .a2-exception-checklist{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin:32px 0 0;padding:0;list-style:none}
.a2-section .a2-exception-checklist li{display:grid;grid-template-columns:auto 1fr;align-content:start;gap:12px;min-width:0;padding:22px 18px;border:1px solid var(--line);border-radius:7px;background:#fff;color:#34466e;font-size:15px;line-height:1.7}
.a2-section .a2-checkmark{display:grid;width:25px;height:25px;place-items:center;border-radius:50%;background:#eaf0ff;color:#2448c2;font-weight:900}
.a2-section .a2-output-mark{color:var(--blue);font-weight:800}
.a2-section-10{padding:40px!important;border:1px solid #dfe7fb;border-left:5px solid var(--blue);border-radius:10px;background:linear-gradient(120deg,#f6f8ff,#fff 78%)}
.a2-section .a2-cta-panel{max-width:1040px;margin:0 auto}
.a2-section .a2-cta-list{display:flex;flex-wrap:wrap;gap:8px 28px;margin-top:22px}
.a2-section .a2-cta-list li{padding:0;border:0;font-size:14px}
.a2-section .a2-cta-list li:before{top:10px}
.a2-section .a2-cta-buttons{margin-top:25px}
.a2-section .a2-cta-buttons a{min-height:48px}
.a2-section :is(a,button,summary):focus-visible{outline:3px solid #3154ee;outline-offset:4px}
@media(max-width:900px){
 .ai4u-sub .a2-section{width:min(calc(100% - 48px),var(--max))}
 .a2-section .a2-hero-layout{grid-template-columns:minmax(0,1fr) minmax(0,.92fr);gap:30px}
 .a2-section .a2-hero-visual{padding:18px}
 .a2-section .a2-section-title{font-size:clamp(30px,4.3vw,46px)}
 .a2-section-01 .a2-section-title{font-size:clamp(38px,5.4vw,58px)}
 .a2-section .a2-lead{font-size:17px}
 .a2-section .a2-role-card{grid-template-columns:58px minmax(0,1fr) minmax(0,1fr);gap:7px}
 .a2-section .a2-quote{padding:24px}
}
@media(max-width:680px){
 .ai4u-sub .a2-section{width:calc(100% - 40px)}
 .a2-section .a2-hero-layout,.a2-section .a2-asym-layout,.a2-section .a2-handoff-layout{grid-template-columns:1fr;gap:28px}
 .a2-section-01 .a2-section-title{font-size:clamp(38px,10vw,48px)}
 .a2-section .a2-hero-visual{aspect-ratio:auto;min-height:360px;padding:24px}
 .a2-section .a2-layer:nth-child(2){margin-left:5%;margin-right:3%}
 .a2-section .a2-layer:nth-child(3){margin-left:10%;margin-right:0}
 .a2-section .a2-question-grid,.a2-section .a2-judgement-list,.a2-section .a2-exception-checklist{grid-template-columns:1fr;gap:12px}
 .a2-section .a2-question-card,.a2-section .a2-exception-checklist li{padding:18px}
 .a2-section .a2-quote{padding:22px 20px;font-size:22px}
 .a2-section .a2-handoff-list-panel,.a2-section .a2-context-panel{padding:22px}
 .a2-section .a2-matrix table,.a2-section .a2-output-table table{min-width:590px}
 .a2-section-10{padding:24px!important}
 .a2-section .a2-cta-list{display:block}
 .a2-section .a2-cta-list li+li{margin-top:12px}
}
@media(prefers-reduced-motion:reduce){.a2-section .reveal,.a2-section .a2-role-choice,.a2-section .a2-role-card{transition:none!important;transform:none!important}}

/* Explanatory media and readable list groups reuse the shared component tokens. */
:is(.a2-page,.a2-section) .a-img-feature{width:min(calc(100% - 40px),1120px);margin:36px auto 0}
:is(.a2-page,.a2-section) .a-img-figure{margin:0!important;min-width:0}
:is(.a2-page,.a2-section) .a-img-figure img{display:block;width:100%;height:auto;border-radius:8px}
:is(.a2-page,.a2-section) .a-img-figure figcaption{margin:12px 0 0!important;color:var(--ink);font-size:14px;line-height:1.7;text-align:left}
:is(.a2-page,.a2-section) .a-img-hero-image{min-width:0;align-self:start}
:is(.a2-page,.a2-section) .a-img-items{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin:24px 0 0;padding:0;list-style:none}
:is(.a2-page,.a2-section) .a-img-items>li{position:relative;min-width:0;margin:0!important;padding:22px!important;border:1px solid var(--line);border-radius:8px;background:var(--white,#fff);color:var(--ink);font-size:15px;line-height:1.8}
:is(.a2-page,.a2-section) .a-img-items>li::before{content:none}
:is(.a2-page,.a2-section) .a-img-existing{gap:inherit}
:is(.a2-page,.a2-section) .a-img-kicker{margin:0}
:is(.a2-page,.a2-section) .a-img-cta-panel{height:4px;width:72px;background:var(--blue);margin-top:24px}
@media(max-width:1024px){:is(.a2-page,.a2-section) .a-img-items{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:768px){:is(.a2-page,.a2-section) .a-img-hero-layout{grid-template-columns:1fr!important}:is(.a2-page,.a2-section) .a-img-hero-image{order:-1}:is(.a2-page,.a2-section) .a-img-feature{width:100%;margin-top:28px}}
@media(max-width:680px){:is(.a2-page,.a2-section) .a-img-items{grid-template-columns:1fr;gap:12px}:is(.a2-page,.a2-section) .a-img-items>li{padding:18px!important}}

.a2-section .a2-hero-layout>.wp-block-column:last-child{grid-column:1/-1}.a2-section .a2-hero-visual{max-width:880px;margin-inline:auto}.a2-section .a2-context-flow.ai4u-step-grid{grid-template-columns:1fr}.a2-section .a2-layer-stack.ai4u-step-grid{grid-template-columns:1fr}
