.aw-infographic{border:1px solid #96d1e0;border-radius:12px;overflow:hidden;background:#eef8fa;margin:20px 0}.aw-lineage-frame{height:425px;position:relative;overflow:hidden;background:linear-gradient(#00658e,#217ca0);touch-action:pan-y}.aw-lineage-art{height:100%;width:100%;transform-origin:center;position:relative}.aw-lineage-art>svg{display:block;width:100%;height:100%}.aw-lineage-art a{cursor:pointer}.aw-lineage-art a:hover .aw-node-bg,.aw-lineage-art a:focus .aw-node-bg{opacity:.12}.aw-lineage-art a:focus-visible{outline:none}.aw-lineage-art a:focus-visible>circle:last-of-type{stroke:#fff;stroke-width:4}.aw-lineage-edge.aw-hidden{visibility:hidden}.aw-infographic-actions{display:flex;justify-content:space-between;align-items:center;gap:20px;padding:18px 20px;color:#4f7483;font-size:12px}.aw-infographic-actions>div{display:flex;gap:10px}.home-lineage-background{position:absolute;inset:0}.home-lineage-background .aw-infographic{margin:0;border:0;border-radius:0;background:linear-gradient(#00658e,#217ca0)}.home-lineage-background .aw-lineage-art{max-width:1376px;margin:auto}.home-original-hero .hero-copy{width:100%;height:100%;margin:0 auto;display:flex;align-items:center;padding-block:0}.home-original-hero .home-photo-panel{margin-left:clamp(52px,8vw,100px)}.home-photo-panel h1{font-size:26px}.my-teacher-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(310px,.8fr);gap:26px}.my-teacher-list .relationship-card{margin-top:14px}.connection-choices{display:grid;gap:10px;margin:18px 0}.connection-choice{display:flex;align-items:flex-start;gap:12px;border:1px solid #c9dde4;border-radius:7px;padding:14px;cursor:pointer}.connection-choice input{margin-top:4px;accent-color:#1296b4}.connection-choice strong,.connection-choice small{display:block}.connection-choice small{color:#637681;margin-top:4px}.main-teacher-choice{margin:14px 0}.connection-extra{margin:20px 0}.connection-extra summary{cursor:pointer;color:#08728a}.my-teacher-explanation{color:#59717d;font-size:13px;margin-top:22px}.my-teacher-list .relationship-person{flex-wrap:wrap}.my-teacher-list .lineage-draft-actions{margin-left:auto}.my-teacher-preview{background:#edf6f8;padding:18px;border:1px solid #c9dfe6;border-radius:8px}.my-teacher-preview h3{margin:0 0 10px}.my-teacher-list .relationship-source{margin-top:10px;font-size:11px}.teacher-infographic-legacy{margin:24px 0}.teacher-infographic-legacy>summary{cursor:pointer;color:#08728a}.aw-catalogue-save-status{font-size:12px;color:#58727e;margin-top:14px}.aw-infographic[aria-busy=true]{opacity:.6}@media(max-width:900px){.my-teacher-layout{grid-template-columns:1fr}.aw-infographic-actions{align-items:flex-start;flex-direction:column}.home-photo-panel{max-width:365px}}@media(max-width:700px){.home-original-hero .home-photo-panel{margin-left:clamp(48px,12vw,64px)}.home-lineage-background .aw-lineage-frame{height:590px}.aw-infographic-actions>div{flex-wrap:wrap}.aw-infographic-actions{padding:14px}.aw-lineage-frame{touch-action:pan-y}.my-teacher-list .lineage-draft-actions{margin-left:0}.home-photo-panel h1{font-size:25px}}

.main-teacher-choice[hidden]{display:none!important}

.home-photo-panel .home-lineage-cta{display:block;color:#fff;font-size:clamp(18px,2vw,22px);font-weight:700;line-height:1.15;letter-spacing:-.35px;margin-top:8px}

.site-footer .footer-message{align-self:center;text-align:center;min-width:0}
.site-footer .footer-message p{font-size:12px;line-height:1.6;margin:0 0 5px}
.site-footer .footer-origin{display:flex;flex-wrap:wrap;gap:5px 14px}
@media(min-width:761px){.site-footer .footer-inner{grid-template-columns:minmax(0,1fr) minmax(0,1.5fr) auto auto}.site-footer .footer-message{padding-inline:8px}}
@media(max-width:760px){.site-footer .footer-message{grid-column:1/-1}.site-footer .footer-origin{display:block}}

@media(max-width:700px){.home-original-hero .hero-copy{min-height:590px}}
.aw-lineage-art .aw-add-teacher:focus-visible .aw-gap-cta{stroke:white;stroke-width:3}
.aw-lineage-art .aw-add-teacher:hover .aw-gap-cta{fill:#5bcce7}

.aw-sensei-balloon{position:absolute;z-index:5;left:50%;top:50%;transform:translate(-50%,-50%);width:320px;max-width:calc(100% - 24px);max-height:calc(100% - 24px);overflow:auto;padding:20px;background:white;border:1px solid #d5e7ed;border-radius:10px;box-shadow:0 8px 28px #003b5666;color:#243539}.aw-sensei-balloon h3{font-size:17px;margin:0 20px 12px 0}.aw-sensei-balloon input{width:100%;padding:9px;border:1px solid #c7dbe2;border-radius:4px}.aw-sensei-close{position:absolute;right:9px;top:7px;background:none;border:0;font-size:24px;color:#476779;cursor:pointer}.aw-sensei-results{display:grid;gap:5px;margin-top:8px}.aw-sensei-results button{text-align:left;border:1px solid #d5e7ed;border-radius:5px;padding:8px;background:#f5fafb;cursor:pointer}.aw-sensei-results small{display:block;color:#58727e;margin-top:3px}.aw-sensei-status,.aw-sensei-context{font-size:12px;color:#58727e;line-height:1.4;margin:8px 0 0}.aw-sensei-confirm p{font-size:13px;line-height:1.5}.aw-sensei-confirm[hidden]{display:none}.aw-sensei-balloon:focus-within{outline:2px solid #159fc1;outline-offset:2px}

/* The landing-page background spans the viewport; artwork keeps its readable width. */
.home-lineage-background .aw-lineage-frame{background:repeating-linear-gradient(to bottom,transparent 0 21.4px,rgba(255,255,255,.065) 21.4px 22px),linear-gradient(to bottom,#00658e 0%,#00658e 28%,#3186a7 68%,#217ca0 100%)}

.aw-sensei-button{position:absolute;z-index:2;transform:translate(-50%,-50%);border:0;border-radius:6px;background:#00b4e5;color:#003b56;font-weight:700;padding:0 6px;line-height:1.15;cursor:pointer}.aw-sensei-button:hover{background:#5bcce7}.aw-sensei-button:focus-visible{outline:3px solid white;outline-offset:3px}

.home-original-hero .home-photo-panel{transition:opacity .25s ease}
.home-original-hero.aw-pointer-exploring .home-photo-panel{opacity:.25}
@media(prefers-reduced-motion:reduce){.home-original-hero .home-photo-panel{transition:none}}

/* Portraits remain fully visible; only relationship lines change emphasis. */
.aw-lineage-edge.aw-muted{opacity:.16}.aw-lineage-edge{transition:opacity .15s}.aw-lineage-art [data-person]{opacity:1}.aw-node-bg{transition:opacity .15s}
.aw-infographic:not(.aw-ambient) .aw-lineage-frame{height:auto;aspect-ratio:var(--aw-graph-ratio,3.24)}
.aw-infographic:not(.aw-ambient) .aw-lineage-art{height:100%}

.aw-lineage-art [data-person]:hover .aw-node-bg,.aw-lineage-art [data-person]:focus .aw-node-bg{opacity:.12}
