/* Elementary subject pages, TALK Seminar 1.2.0. */
.talk-elementary{--es-blue:#0075bd;--es-deep:#104b71;--es-rule:#ccdfeb;color:#183d55;font-size:1rem;line-height:1.95;overflow-wrap:anywhere}
.talk-elementary *{box-sizing:border-box}.es-shell{width:min(1180px,calc(100% - 80px));margin-inline:auto}
.talk-elementary p,.talk-elementary figure,.talk-elementary dl{margin:0}.talk-elementary p+p{margin-top:1.1em}
.talk-elementary h1,.talk-elementary h2,.talk-elementary h3{margin:0;color:inherit;letter-spacing:.015em}
.talk-elementary h1,.talk-elementary h2{font-family:var(--serif,"Yu Mincho",serif);font-weight:700}
.talk-elementary h1{font-size:clamp(2rem,3.25vw,2.8rem);line-height:1.7;letter-spacing:-.035em;margin:20px 0 22px}
.talk-elementary h2{font-size:clamp(1.7rem,2.5vw,2.35rem);line-height:1.75;letter-spacing:0}
.talk-elementary h3{font-family:var(--body,sans-serif);font-weight:700;font-size:1.2rem;line-height:1.8}
.es-kicker{font-size:.875rem;line-height:1.8;color:var(--es-blue);font-weight:700;letter-spacing:.06em}.es-kicker span{margin-left:1em}
.talk-elementary section[id]{scroll-margin-top:110px}.talk-elementary a:focus-visible,.talk-elementary summary:focus-visible{outline:3px solid var(--es-blue);outline-offset:5px}
.es-link{display:inline-flex;gap:25px;align-items:center;font-size:.95rem;font-weight:700;color:var(--es-deep);text-decoration:none;border-bottom:1px solid currentColor;padding:9px 0;min-height:44px;line-height:1.7}
.es-link span{display:inline-block;transition:transform .2s ease}.es-small{font-size:.875rem;line-height:1.85;color:#526b7b}
.es-hero{padding:22px 0 38px;background:linear-gradient(90deg,#fff 0 62%,#eff7fc 62%)}
.es-hero-grid{display:grid;grid-template-columns:1fr 1.05fr;gap:48px;align-items:center}.es-hero-copy .es-lead{font-size:1.03rem;line-height:2}.es-hero-copy .es-link{margin-top:15px}
.es-hero-photo img{display:block;width:100%;height:auto;aspect-ratio:3/2;object-fit:contain;border-radius:2px}.es-hero-photo figcaption{font-size:.75rem;line-height:1.8;color:#526b7b;padding-top:11px}
.es-subject-nav{display:flex;flex-wrap:wrap;align-items:center;gap:12px 30px;padding:22px 0;border-block:1px solid var(--es-rule)}
.es-subject-nav a{font-size:.95rem;min-height:44px;padding:8px 6px;text-decoration:none;border-bottom:2px solid transparent;transition:color .2s ease,border-color .2s ease}.es-subject-nav a[aria-current]{color:var(--es-blue);font-weight:700;border-bottom-color:var(--es-blue)}
.es-section{padding-block:70px}.es-heading{margin-bottom:30px}.es-heading .es-kicker{margin-bottom:13px}.es-section-lead{max-width:850px}
.es-tinted{background:#f0f7fc}.es-index-heading{display:grid;grid-template-columns:1fr .95fr;gap:65px;align-items:end;margin-bottom:34px}.es-index-heading h2{margin-top:13px}
.es-directory{border-top:2px solid var(--es-blue)}.es-directory-item{display:grid;grid-template-columns:55px 160px 1fr 24px;gap:22px;align-items:center;padding:26px 14px;border-bottom:1px solid var(--es-rule);text-decoration:none;transition:background .2s ease,color .2s ease}
.es-directory-no{font-family:Georgia,serif;color:var(--es-blue);font-size:1.4rem}.es-directory-name strong{font-family:var(--serif,"Yu Mincho",serif);font-size:1.8rem;font-weight:700;line-height:1.6}.es-directory-name small{display:block;color:#526b7b;font-size:.75rem;letter-spacing:.03em;margin-top:4px}
.es-directory-copy strong{display:block;font-size:1.12rem;font-weight:600}.es-directory-copy small{display:block;font-size:.875rem;color:#526b7b;line-height:1.8;margin-top:6px}.es-directory-item>span:last-child{color:var(--es-blue);transition:transform .2s ease}
.es-two-prose{display:grid;grid-template-columns:1fr 1fr;gap:48px}.es-grade-bands{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:30px;margin-top:35px;align-items:start}
.es-grade-bands article{border-top:2px solid #83b7d4;padding:22px 0 0}.es-grade-bands h3{margin:12px 0}.es-grade-bands p{font-size:.96rem}.es-grade-bands .es-grade-focus{padding:22px;background:white;border-color:var(--es-blue)}.es-grade-focus .es-link{font-size:.875rem;margin-top:12px}
.es-concerns{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:32px;margin-top:32px}.es-concerns article{border-top:2px solid #7babc7;padding-top:20px}.es-concerns h3{font-size:1.1rem;margin-bottom:12px}.es-concerns p{font-size:.96rem}
.es-methods{border-top:1px solid var(--es-rule)}.es-methods article{display:grid;grid-template-columns:52px .85fr 1.15fr;gap:28px;padding:27px 0;border-bottom:1px solid var(--es-rule);align-items:start}.es-method-no{font-size:1.7rem;font-family:Georgia,serif;color:var(--es-blue);line-height:1.8}.es-methods h3{font-size:1.22rem}
.talk-elementary .es-flow{margin-top:36px;border:1px solid var(--es-rule);background:white;padding:28px 30px}.es-flow figcaption{margin-bottom:26px}.es-flow figcaption p{font-size:.95rem;color:#526b7b;margin-top:10px}
.es-flow ol{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:30px}.es-flow li{position:relative;padding:16px 0;border-top:3px solid #75aed0}.es-flow li:not(:last-child):after{content:'→';position:absolute;right:-22px;top:58px;color:var(--es-blue);font-size:1.2rem}
.es-flow-number{display:block;color:var(--es-blue);font-family:Georgia,serif;font-size:.95rem;line-height:1.5;margin-bottom:10px}.es-flow li strong{display:block;font-size:1.2rem;line-height:1.7}.es-flow li p{font-size:.94rem;margin-top:8px;line-height:1.8}.es-flow .es-flow-note{margin-top:12px;border-top:1px dashed var(--es-rule);padding-top:17px;font-size:.875rem;color:#526b7b}
.es-flow-japanese li:nth-child(3),.es-flow-science li:nth-child(2){border-color:var(--es-blue)}.es-flow-english li{border-top-style:dashed}.es-flow-social li:nth-child(3){border-color:var(--es-deep)}
.es-connect-note{margin-top:30px}.es-connect-note .es-link{margin-top:12px}
.es-areas{display:grid;grid-template-columns:1fr 1fr;gap:28px 50px}.es-areas article{border-left:3px solid #9ec4dc;padding:0 0 0 22px}.es-areas h3{margin-bottom:10px}.es-area-note{padding-top:26px}
.es-goals{background:var(--es-deep);color:#fff}.es-goals .es-kicker{color:#b7e2fc}.es-goals h2,.es-goals h3{color:#fff}.es-goal-rows article{display:grid;grid-template-columns:190px 1fr;gap:42px;padding:27px 0;border-top:1px solid #4a7c99}.es-goal-label{font-size:.95rem;font-weight:700;color:#b7e2fc;line-height:1.8;padding-top:5px}.es-goal-rows h3{font-size:1.2rem;margin-bottom:12px}.es-goal-rows p{max-width:49em}.es-goal-rows .es-link{color:#fff;margin-top:14px}
.es-support-intro{display:grid;grid-template-columns:1fr 1fr;gap:48px}.es-support-intro p+p{margin:0}.es-checks{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;padding:28px 0 0}.es-checks>div{padding:19px 22px;background:#edf6fc;border-top:3px solid var(--es-blue)}.es-checks dt{font-size:.9rem;color:var(--es-blue);font-weight:700;margin-bottom:8px}.es-checks dd{margin:0;font-size:1.02rem;font-weight:700;line-height:1.85}
.es-support-bottom{display:flex;align-items:start;justify-content:space-between;gap:35px;padding-top:26px}.es-support-bottom>p{font-size:.875rem;max-width:43em;color:#526b7b}.es-support-bottom .es-link{flex-shrink:0}
.es-faq-section{background:#f4f8fb}.es-faq-grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:50px}.es-faq{border-top:1px solid var(--es-rule)}.es-faq details{border-bottom:1px solid var(--es-rule);padding:19px 0}.es-faq summary{cursor:pointer;font-weight:700;line-height:1.9;min-height:44px;display:list-item;padding:5px 24px 5px 0;margin-left:20px}.es-faq details>p{margin-top:14px;font-size:1rem;padding:0 0 5px}
.es-consult{display:grid;grid-template-columns:.85fr 1.15fr;gap:60px;padding-block:55px}.es-consult h2{font-size:1.8rem;margin-top:13px}.es-consult .es-link{margin-top:14px}
.es-related{display:flex;justify-content:space-between;gap:35px;align-items:center;border-top:1px solid var(--es-rule);padding-block:30px 50px}.es-related h2{font-family:var(--body,sans-serif);font-size:1.15rem;margin-top:8px}.es-related-links{display:flex;flex-wrap:wrap;gap:15px 25px}
@media(hover:hover){.es-link:hover span,.es-directory-item:hover>span:last-child{transform:translateX(4px)}.es-hero-copy .es-link:hover span{transform:translateY(4px)}.es-subject-nav a:hover{color:var(--es-blue);border-color:var(--es-blue)}.es-directory-item:hover{background:#edf7fd;color:var(--es-blue)}}
@media(max-width:1050px){.es-hero-grid{gap:30px}.es-directory-item{grid-template-columns:40px 140px 1fr 20px;gap:17px}.es-methods article{gap:20px;grid-template-columns:42px .9fr 1.1fr}.es-goal-rows article{grid-template-columns:160px 1fr;gap:28px}.es-support-bottom{display:block}.es-support-bottom .es-link{margin-top:12px}.es-related{align-items:start}}
@media(max-width:760px){
 .es-shell{width:calc(100% - 40px)}.talk-elementary{line-height:1.95}.talk-elementary h1{font-size:clamp(1.75rem,5.6vw,2.5rem);line-height:1.7;margin-block:16px 19px}.talk-elementary h2{font-size:clamp(1.6rem,5vw,2rem);line-height:1.75;letter-spacing:-.02em}.talk-elementary h3{font-size:1.15rem}
 .es-hero{padding:12px 0 25px;background:linear-gradient(#fff 0 62%,#eff7fc 62%)}.es-hero-grid{grid-template-columns:1fr;gap:24px}.es-hero-copy .es-kicker{display:flex;flex-wrap:wrap;gap:4px 14px}.es-hero-copy .es-kicker span{margin:0}.es-hero-copy .es-lead{font-size:1rem}.es-hero-photo figcaption{font-size:.75rem;padding-top:8px}
 .es-subject-nav{gap:5px 22px;padding:14px 0}.es-subject-nav a{font-size:.95rem;padding:7px 3px}.es-section{padding-block:45px}.es-heading{margin-bottom:24px}.es-heading .es-kicker{margin-bottom:10px}
 .es-index-heading,.es-two-prose,.es-grade-bands,.es-concerns,.es-areas,.es-support-intro,.es-faq-grid,.es-consult{grid-template-columns:1fr;gap:22px}.es-index-heading{margin-bottom:25px;gap:17px}.es-index-heading h2{margin-top:10px}.es-two-prose p+p{margin:0}
 .es-directory-item{grid-template-columns:28px 1fr 18px;gap:8px 14px;padding:21px 4px}.es-directory-name{display:flex;align-items:baseline;gap:14px;flex-wrap:wrap}.es-directory-name strong{font-size:1.5rem}.es-directory-name small{font-size:.75rem;margin:0}.es-directory-copy{grid-column:2;grid-row:2}.es-directory-copy strong{font-size:1rem;line-height:1.8}.es-directory-copy small{font-size:.875rem;margin-top:5px}.es-directory-no{font-size:1.15rem}.es-directory-item>span:last-child{grid-column:3;grid-row:1/3}
 .es-grade-bands{margin-top:28px}.es-grade-bands article{padding-top:17px}.es-grade-bands .es-grade-focus{padding:20px}.es-grade-bands h3{margin-block:9px}.es-grade-bands p,.es-concerns p{font-size:1rem}
 .es-concerns{margin-top:24px;gap:22px}.es-concerns article{padding-top:16px}.es-concerns h3{font-size:1.08rem;margin-bottom:8px}
 .es-methods article{grid-template-columns:32px 1fr;gap:7px 15px;padding:23px 0}.es-method-no{font-size:1.3rem}.es-methods h3{font-size:1.13rem}.es-methods p{grid-column:2}
 .talk-elementary .es-flow{margin-top:28px;padding:23px 20px}.es-flow figcaption{margin-bottom:20px}.es-flow figcaption p{font-size:.95rem}.es-flow ol{grid-template-columns:1fr;gap:0}.es-flow li{padding:18px 0;display:grid;grid-template-columns:28px 1fr;column-gap:12px;border-top-width:1px}.es-flow li strong{font-size:1.1rem}.es-flow-number{grid-row:1/3;margin:3px 0 0}.es-flow li p{grid-column:2;margin-top:4px;font-size:1rem}.es-flow li:not(:last-child):after{content:'↓';top:auto;bottom:-15px;right:8px;background:white;padding-inline:7px;z-index:1}.es-flow .es-flow-note{padding-top:15px;font-size:.875rem}
 .es-areas{gap:24px}.es-areas article{padding-left:17px}.es-areas h3{font-size:1.1rem;margin-bottom:8px}.es-area-note{padding-top:22px}
 .es-goal-rows article{grid-template-columns:1fr;gap:12px;padding-block:23px}.es-goal-label{padding:0}.es-goal-rows h3{font-size:1.14rem;margin-bottom:9px}.es-goal-rows .es-link{margin-top:10px}
 .es-checks{grid-template-columns:1fr;gap:15px;padding-top:24px}.es-checks>div{padding:16px 20px}.es-checks dt{margin-bottom:5px}.es-checks dd{font-size:1rem}.es-support-bottom{padding-top:22px}
 .es-faq-grid{gap:0}.es-faq details{padding-block:15px}.es-faq summary{padding-right:4px}.es-faq details>p{padding-bottom:8px}
 .es-consult{padding-block:38px;gap:20px}.es-consult h2{font-size:1.65rem;margin-top:10px}.es-related{display:block;padding-block:25px 38px}.es-related-links{margin-top:16px;gap:10px 25px}.es-related h2{font-size:1.05rem}
}
@media(max-width:370px){.es-shell{width:calc(100% - 32px)}.talk-elementary h1{font-size:1.6rem}.talk-elementary h2{font-size:1.5rem}.es-subject-nav{gap:5px 17px}.es-directory-name{gap:8px}.es-directory-name small{font-size:.7rem}}
@media(prefers-reduced-motion:reduce){.talk-elementary a,.talk-elementary a span{transition:none!important;transform:none!important}}
