:root { --overseas-mint:#e8f5ee; --overseas-deep:#173f35; --overseas-coral:#e88872; }
.overseas-page { background:#fffdf8; color:var(--ink); }
.overseas-page .section { max-width:1440px; margin:0 auto; }
.overseas-hero { display:grid; grid-template-columns:minmax(0, .92fr) minmax(420px, 1.08fr); align-items:center; gap:64px; max-width:1440px; min-height:760px; margin:0 auto; padding:150px 64px 90px; }
.overseas-hero h1 { font-size:clamp(48px, 5vw, 78px); letter-spacing:-.065em; line-height:1.08; margin:18px 0 26px; }
.overseas-hero h1 em { color:var(--green); font-style:normal; }
.overseas-lead { font-size:21px; font-weight:800; letter-spacing:-.035em; line-height:1.55; margin:0 0 12px; }
.overseas-hero-copy > p:not(.section-label):not(.overseas-lead) { color:var(--muted); font-size:16px; line-height:1.85; }
.overseas-hero-image { background:var(--overseas-mint); border-radius:36px; box-shadow:0 28px 75px rgba(20,63,53,.14); margin:0; overflow:hidden; }
.overseas-hero-image img { display:block; width:100%; height:auto; aspect-ratio:16/9; object-fit:cover; }
.hero-actions { display:flex; align-items:center; flex-wrap:wrap; gap:22px; margin-top:32px; }
.overseas-text-link { border-bottom:1px solid currentColor; font-size:13px; font-weight:800; padding-bottom:5px; }
.overseas-online-note { align-items:flex-start; background:#fff; border:1px solid rgba(23,63,53,.12); border-radius:20px; display:flex; flex-direction:column; gap:5px; margin-top:28px; padding:18px 20px; }
.overseas-online-note b { color:var(--green); font-size:13px; }
.overseas-online-note span { color:var(--muted); font-size:13px; line-height:1.65; }
.overseas-audience { background:#f7fbf8; border-radius:44px; }
.overseas-audience-grid, .overseas-process-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:16px; margin-top:52px; }
.overseas-audience-grid article, .overseas-process-grid article { background:#fff; border:1px solid rgba(16,38,30,.11); border-radius:24px; min-height:230px; padding:30px; }
.overseas-audience-grid b, .overseas-process-grid b { color:var(--green); font-family:"DM Sans",sans-serif; font-size:12px; letter-spacing:.12em; }
.overseas-audience-grid h3, .overseas-process-grid h3 { font-size:23px; letter-spacing:-.045em; margin:34px 0 13px; }
.overseas-audience-grid p, .overseas-process-grid p { color:var(--muted); font-size:14px; line-height:1.75; margin:0; }
.overseas-program-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:16px; margin-top:48px; }
.overseas-program-grid details { background:#fff; border:1px solid rgba(16,38,30,.12); border-radius:24px; overflow:hidden; }
.overseas-program-grid summary { align-items:center; cursor:pointer; display:flex; gap:16px; list-style:none; padding:25px 28px; }
.overseas-program-grid summary::-webkit-details-marker { display:none; }
.overseas-program-grid summary::after { color:var(--green); content:"＋"; font-size:22px; margin-left:auto; }
.overseas-program-grid details[open] summary::after { content:"−"; }
.overseas-program-grid summary span { align-items:center; background:var(--lime); border-radius:50%; display:inline-flex; font-size:11px; font-weight:900; height:36px; justify-content:center; width:36px; }
.overseas-program-grid summary b { font-size:20px; letter-spacing:-.035em; }
.overseas-program-grid details > div { border-top:1px solid rgba(16,38,30,.09); padding:2px 28px 26px 80px; }
.overseas-program-grid p, .overseas-program-grid li { color:var(--muted); font-size:14px; line-height:1.75; }
.overseas-program-grid ul { margin:12px 0 0; padding-left:20px; }
.overseas-teachers { background:#163f35; border-radius:44px; color:#fff; }
.overseas-teachers .section-title p, .overseas-teachers .section-label { color:rgba(255,255,255,.72); }
.teacher-data-note { background:rgba(255,255,255,.08); border:1px solid rgba(255,255,255,.15); border-radius:28px; margin-top:48px; padding:48px; text-align:center; }
.teacher-data-note > div { align-items:center; background:var(--lime); border-radius:50%; color:var(--forest); display:inline-flex; font-size:24px; height:52px; justify-content:center; width:52px; }
.teacher-data-note h3 { font-size:27px; margin:20px 0 12px; }
.teacher-data-note p { color:rgba(255,255,255,.75); line-height:1.75; margin:0 auto 25px; max-width:680px; }
.overseas-teacher-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:18px; margin-top:48px; }
.overseas-teacher-card { background:#fff; border-radius:25px; color:var(--ink); overflow:hidden; }
.overseas-teacher-card img { aspect-ratio:4/3; display:block; object-fit:cover; width:100%; }
.overseas-teacher-body { padding:26px; }
.overseas-teacher-body h3 { font-size:24px; margin:0 0 8px; }
.teacher-chips { display:flex; flex-wrap:wrap; gap:7px; margin:14px 0; }
.teacher-chips span { background:var(--overseas-mint); border-radius:999px; color:var(--green); font-size:11px; font-weight:800; padding:7px 10px; }
.teacher-detail { border-top:1px solid rgba(16,38,30,.1); margin-top:18px; padding-top:18px; }
.teacher-detail summary { cursor:pointer; font-size:13px; font-weight:900; }
.teacher-detail dl { display:grid; gap:12px; margin:18px 0 0; }
.teacher-detail dt { color:var(--green); font-size:11px; font-weight:900; }
.teacher-detail dd { color:var(--muted); font-size:13px; line-height:1.65; margin:3px 0 0; }
.teacher-consult-link { border-bottom:1px solid currentColor; color:var(--green); display:inline-block; font-size:13px; font-weight:900; margin-top:20px; padding-bottom:4px; }
.overseas-only-online { background:var(--overseas-deep); border-radius:18px; color:#fff; margin:30px 0 0; padding:18px 22px; text-align:center; }
.overseas-only-online strong { color:var(--lime); margin-right:10px; }
.overseas-guides { background:#fff8eb; border-radius:44px; }
.overseas-guide-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:18px; margin-top:45px; }
.overseas-guide-card { background:#fff; border:1px solid rgba(16,38,30,.1); border-radius:22px; padding:28px; }
.overseas-guide-card small { color:var(--green); font-weight:900; }
.overseas-guide-card h3 { font-size:21px; line-height:1.45; margin:15px 0 11px; }
.overseas-guide-card p { color:var(--muted); font-size:13px; line-height:1.7; }
.overseas-guide-empty { border:1px dashed rgba(16,38,30,.22); border-radius:24px; margin-top:44px; padding:38px; text-align:center; }
.overseas-guide-empty h3 { font-size:23px; margin:0 0 10px; }
.overseas-guide-empty p { color:var(--muted); margin:0; }
.overseas-guide-more { margin:26px 0 0; text-align:center; }
.overseas-guide-tabs { display:flex; flex-wrap:wrap; gap:10px; justify-content:center; margin:0 0 36px; }
.overseas-guide-tabs button { background:#fff; border:1px solid rgba(16,38,30,.16); border-radius:999px; color:var(--muted); cursor:pointer; font:inherit; font-size:14px; font-weight:800; padding:12px 22px; }
.overseas-guide-tabs button.active { background:var(--overseas-deep); border-color:var(--overseas-deep); color:#fff; }
.overseas-guide-page-main { min-height:70vh; padding-top:140px; }
.overseas-guide-intro { margin:0 auto; max-width:920px; padding:40px 20px 58px; text-align:center; }
.overseas-guide-intro h1 { font-size:clamp(44px,5vw,72px); letter-spacing:-.065em; line-height:1.1; margin:15px 0 20px; }
.overseas-guide-intro p { color:var(--muted); line-height:1.8; }
.overseas-guide-page-list { min-height:300px; }
.overseas-guide-page-list .overseas-guide-grid { margin-top:0; }
.guide-date-row { color:var(--muted); display:flex; flex-wrap:wrap; font-size:11px; gap:10px; margin-top:18px; }
.guide-tag-row { display:flex; flex-wrap:wrap; gap:6px; margin-top:14px; }
.guide-tag-row span { background:var(--overseas-mint); border-radius:999px; color:var(--green); font-size:10px; font-weight:800; padding:6px 8px; }
.overseas-consult { align-items:start; display:grid; grid-template-columns:minmax(280px,.7fr) minmax(0,1.3fr); gap:64px; }
.overseas-consult-copy { position:sticky; top:120px; }
.overseas-consult-copy h2 { font-size:clamp(38px,4vw,60px); letter-spacing:-.06em; line-height:1.12; margin:18px 0 20px; }
.overseas-consult-copy > p:not(.section-label), .overseas-consult-copy li { color:var(--muted); line-height:1.75; }
.overseas-consult-copy ul { display:grid; gap:8px; padding-left:20px; }
.overseas-form { background:#fff; border:1px solid rgba(16,38,30,.12); border-radius:30px; box-shadow:0 25px 70px rgba(16,38,30,.08); padding:36px; }
.overseas-form-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:20px 16px; }
.overseas-form label { display:flex; flex-direction:column; gap:9px; }
.overseas-form label > span { font-size:13px; font-weight:800; }
.overseas-form label b { color:#b94b42; }
.overseas-form input, .overseas-form select, .overseas-form textarea { background:#fbfcf9; border:1px solid rgba(16,38,30,.18); border-radius:12px; color:var(--ink); font:inherit; min-height:50px; padding:12px 14px; width:100%; }
.overseas-form textarea { resize:vertical; }
.overseas-form input:focus, .overseas-form select:focus, .overseas-form textarea:focus { border-color:var(--green); outline:3px solid rgba(23,95,71,.1); }
.overseas-full { grid-column:1/-1; }
.overseas-contact-value small { color:var(--muted); font-size:11px; }
.overseas-consent { align-items:flex-start!important; flex-direction:row!important; margin:24px 0 18px; }
.overseas-consent input { flex:0 0 auto; min-height:0; margin-top:4px; width:auto; }
.overseas-consent span { color:var(--muted); font-weight:500!important; line-height:1.6; }
.overseas-submit { border:0; cursor:pointer; width:100%; }
.overseas-submit:disabled { cursor:wait; opacity:.65; }
.overseas-form-error { color:#b12822; font-size:13px; min-height:20px; }
.overseas-form-success { background:var(--overseas-mint); border-radius:18px; margin-top:20px; padding:24px; text-align:center; }
.overseas-form-success strong { color:var(--green); font-size:20px; }
.overseas-form-success p { color:var(--muted); margin:8px 0 0; }
@media (max-width:1020px) {
  .overseas-hero { grid-template-columns:1fr; min-height:0; padding:130px 35px 75px; }
  .overseas-hero-image { max-width:820px; }
  .overseas-audience-grid, .overseas-process-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .overseas-teacher-grid, .overseas-guide-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .overseas-consult { grid-template-columns:1fr; }
  .overseas-consult-copy { position:static; }
}
@media (max-width:760px) {
  .overseas-hero { gap:36px; padding:110px 20px 58px; }
  .overseas-hero h1 { font-size:42px; }
  .overseas-lead { font-size:18px; }
  .overseas-hero-image, .overseas-audience, .overseas-teachers, .overseas-guides { border-radius:26px; }
  .overseas-audience-grid, .overseas-process-grid, .overseas-program-grid, .overseas-teacher-grid, .overseas-guide-grid, .overseas-form-grid { grid-template-columns:1fr; }
  .overseas-audience-grid article, .overseas-process-grid article { min-height:0; }
  .overseas-program-grid details > div { padding:2px 22px 24px; }
  .teacher-data-note, .overseas-guide-empty { padding:30px 20px; }
  .overseas-form { border-radius:22px; padding:24px 18px; }
  .overseas-full { grid-column:auto; }
  .overseas-only-online { text-align:left; }
  .overseas-guide-page-main { padding-top:95px; }
}
