  :root{
    /* 차콜 + 코랄 웜뉴트럴 팔레트 (기존 블루 톤 대체) */
    --navy:#23252c;
    --navy-2:#33363f;
    --blue:#e0653f;
    --sky:#f6f2ee;
    --red:#ef5a3c;
    --gold:#f5b53d;
    --accent:#f5734f;
    --accent-2:#ffa726;
    --charcoal:#1a1b20;
    --ink:#22242b;
    --muted:#6c6f78;
    --line:#e8e4df;
    --bg:#faf8f6;
    --white:#fff;
    --radius:18px;
    --shadow:0 10px 30px rgba(30,25,20,.10);
  }
  *{box-sizing:border-box;margin:0;padding:0}
  html{scroll-behavior:smooth;scroll-padding-top:118px}
  body{
    font-family:'Noto Sans KR',system-ui,sans-serif;
    color:var(--ink);
    background:var(--bg);
    line-height:1.65;
    -webkit-font-smoothing:antialiased;
  }
  .wrap{max-width:880px;margin:0 auto;padding:0 20px}
  section{padding:64px 0}
  .display{font-family:'Noto Sans KR',sans-serif;font-weight:900;letter-spacing:0;line-height:1.35}
  .eyebrow{
    display:inline-block;color:var(--blue);font-weight:700;font-size:14px;
    letter-spacing:2px;margin-bottom:10px;text-transform:uppercase;
  }
  h2.sec-title{font-family:'Noto Sans KR',sans-serif;font-weight:900;font-size:clamp(26px,5vw,38px);text-align:center;line-height:1.4;letter-spacing:-.3px}
  h2.sec-title .hl{color:var(--blue)}
  .sec-sub{text-align:center;color:var(--muted);margin-top:14px;font-size:16px}
  .center{text-align:center}

  /* ===== Top bar ===== */
  .topbar{
    position:sticky;top:0;z-index:50;background:#1a191e;color:#fff;
    border-bottom:1px solid transparent;
    transition:background .35s ease,color .35s ease,border-color .35s ease;
  }
  body.scrolled .topbar{background:#fff;color:var(--navy);border-color:var(--line)}
  .topbar .brand a{position:relative;display:block;height:60px;width:190px;line-height:0}
  .topbar .brand img{position:absolute;left:0;top:50%;transform:translateY(-50%);height:52px;width:auto;display:block;transition:opacity .35s ease}
  .topbar .brand .lg-dark{opacity:0}
  body.scrolled .topbar .brand .lg-light{opacity:0}
  body.scrolled .topbar .brand .lg-dark{opacity:1}
  .topbar .wrap{display:flex;align-items:center;justify-content:space-between;height:60px}
  .topbar .brand{font-weight:900;font-size:18px;letter-spacing:-.5px}
  .topbar .brand a{color:inherit;text-decoration:none}
  .topbar .brand b{color:var(--gold)}
  .logo-mark{
    display:inline-grid;place-items:center;width:27px;height:27px;border-radius:50%;
    background:var(--red);color:#fff;font-weight:900;font-size:15px;margin-right:9px;flex:0 0 auto;
  }
  .topbar .tel{display:flex;align-items:center;gap:8px;font-weight:700}
  .topbar .tel a{color:inherit;text-decoration:none;font-size:16px}
  .topbar .tel .dot{width:8px;height:8px;border-radius:50%;background:#37d67a;box-shadow:0 0 0 4px rgba(55,214,122,.25)}

  /* ===== Category nav ===== */
  .nav{position:sticky;top:60px;z-index:49;background:#1a191e;border-top:1px solid rgba(255,255,255,.06);border-bottom:1px solid transparent;box-shadow:none;transition:background .35s ease,border-color .35s ease,box-shadow .35s ease}
  body.scrolled .nav{background:#fff;border-top-color:transparent;border-bottom-color:var(--line);box-shadow:0 2px 10px rgba(30,25,20,.05)}
  .nav .wrap{display:flex;gap:6px;overflow-x:auto;height:52px;align-items:center;-ms-overflow-style:none;scrollbar-width:none}
  .nav .wrap::-webkit-scrollbar{display:none}
  .nav a{flex:0 0 auto;color:#fff;text-decoration:none;font-weight:700;font-size:14.5px;padding:8px 14px;border-radius:999px;white-space:nowrap;transition:background .15s,color .15s}
  body.scrolled .nav a{color:var(--navy)}
  .nav a:hover{background:rgba(255,255,255,.12)}
  body.scrolled .nav a:hover{background:var(--sky)}
  .nav a.active{background:#fff;color:var(--navy)}
  body.scrolled .nav a.active{background:var(--navy);color:#fff}
  .nav a.featured,body.scrolled .nav a.featured{background:var(--red);color:#fff}
  .nav a.featured:hover,body.scrolled .nav a.featured:hover{background:#d94a2d}

  /* ===== Page head (inner pages) ===== */
  .page-head{background:linear-gradient(160deg,var(--navy),var(--navy-2));color:#fff;text-align:center;padding:58px 0 52px}
  .page-head .eyebrow{color:var(--gold)}
  .page-head h1{font-family:'Noto Sans KR',sans-serif;font-weight:900;font-size:clamp(28px,6vw,42px);line-height:1.3}
  .page-head p{margin:14px auto 0;max-width:560px;color:#c9cbd2;font-size:16px}

  /* ===== School quick finder (진학 안내 내 학교 검색) ===== */
  .school-finder{background:#e8ddc8;border-radius:20px;padding:34px 28px;margin-top:38px;text-align:center}
  .school-finder .sf-eyebrow{color:var(--red);font-weight:800;font-size:14px;letter-spacing:.5px}
  .school-finder h3{font-family:'Noto Sans KR',sans-serif;font-weight:900;color:var(--navy);font-size:clamp(21px,3.6vw,28px);margin:8px 0 8px;line-height:1.35}
  .school-finder .sf-desc{color:#6b6253;font-size:15px;margin-bottom:20px}
  .finder-tabs{display:flex;gap:8px;justify-content:center;margin-bottom:16px;flex-wrap:wrap}
  .ftab{border:1px solid #d8c8a8;background:#fff;color:var(--navy);font-weight:700;padding:9px 18px;border-radius:999px;cursor:pointer;font-size:14px;font-family:inherit}
  .ftab.active{background:var(--navy);color:#fff;border-color:var(--navy)}
  .sf-search{position:relative;max-width:520px;margin:0 auto;text-align:left}
  .sf-search input{width:100%;padding:15px 20px;border:none;border-radius:14px;font-size:15px;box-shadow:0 10px 26px rgba(0,0,0,.12);font-family:inherit}
  .sf-search input:focus{outline:2px solid var(--blue)}
  .sf-dropdown{position:absolute;left:0;right:0;top:100%;margin-top:8px;background:#fff;border-radius:12px;box-shadow:0 14px 32px rgba(0,0,0,.18);overflow-y:auto;display:none;z-index:6;max-height:300px}
  .sf-dropdown a{display:block;padding:12px 18px;color:var(--ink);text-decoration:none;font-size:14.5px;border-bottom:1px solid var(--line)}
  .sf-dropdown a:last-child{border-bottom:none}
  .sf-dropdown a:hover{background:var(--sky);color:var(--navy);font-weight:700}
  .sf-dropdown .none{padding:12px 18px;color:var(--muted);font-size:14px}
  .school-detail{max-width:560px;margin:18px auto 0;text-align:left;background:#fff;border-radius:14px;display:none}
  .school-detail.show{display:block;padding:24px;box-shadow:0 12px 30px rgba(0,0,0,.12)}
  .school-detail h4{color:var(--navy);font-size:19px;font-weight:900}
  .school-detail .sd-region{color:var(--muted);font-size:13px;margin:5px 0 14px}
  .school-detail .sd-block{margin-top:13px}
  .school-detail .sd-block b{display:block;color:var(--blue);font-size:14px;margin-bottom:3px}
  .school-detail .sd-block p{font-size:14px;color:var(--ink);line-height:1.7}
  .school-detail .sd-cta{display:inline-block;margin-top:18px;background:var(--red);color:#fff;font-weight:700;padding:12px 22px;border-radius:999px;text-decoration:none;font-size:14.5px}

  /* ===== 글 하단 FAQ (FAQPage 구조화 데이터와 짝) ===== */
  .faq-h{font-size:22px;font-weight:900;color:var(--ink);margin:36px 0 14px}
  .faq{display:grid;gap:12px}
  .faq-item{background:var(--sky);border:1px solid var(--line);border-radius:14px;padding:18px 20px}
  .faq-q{font-weight:800;color:var(--navy);font-size:16px;margin-bottom:7px}
  .faq-a{color:var(--muted);font-size:15px;line-height:1.8}

  /* ===== 실시간 상담 현황 바 ===== */
  .live-bar{background:#1a191e;border-bottom:1px solid rgba(255,255,255,.06);color:#fff}
  .live-bar .wrap{display:flex;align-items:center;justify-content:center;gap:10px;flex-wrap:wrap;height:40px}
  .live-dot{
    width:8px;height:8px;border-radius:50%;background:#37d67a;flex:0 0 auto;
    box-shadow:0 0 0 0 rgba(55,214,122,.7);animation:livePulse 2s infinite;
  }
  @keyframes livePulse{
    0%{box-shadow:0 0 0 0 rgba(55,214,122,.7)}
    70%{box-shadow:0 0 0 7px rgba(55,214,122,0)}
    100%{box-shadow:0 0 0 0 rgba(55,214,122,0)}
  }
  .live-txt{font-size:13.5px;color:#c9cbd2;letter-spacing:-.2px;white-space:nowrap}
  .live-txt b{color:#fff;font-weight:800}
  .live-num{
    color:var(--accent-2);font-weight:900;font-variant-numeric:tabular-nums;
    display:inline-block;min-width:1.2em;text-align:center;
  }
  .live-num.bump{animation:numBump .5s ease}
  @keyframes numBump{
    0%{transform:translateY(0);opacity:1}
    40%{transform:translateY(-7px);opacity:0}
    60%{transform:translateY(7px);opacity:0}
    100%{transform:translateY(0);opacity:1}
  }
  .live-sep{color:#565a66;font-size:12px}
  @media (max-width:640px){
    .live-bar .wrap{height:auto;padding-top:8px;padding-bottom:8px;gap:6px}
    .live-txt{font-size:12.5px;white-space:normal;text-align:center}
    .live-sep{display:none}
  }
  @media (prefers-reduced-motion:reduce){
    .live-dot{animation:none}
    .live-num.bump{animation:none}
  }

  /* ===== 캠프 프로그램 표 ===== */
  /* 표가 있는 페이지는 본문보다 넓게 */
  .wrap-wide{max-width:1180px;margin:0 auto;padding:0 20px}
  @media (max-width:1220px){ .wrap-wide{max-width:100%} }

  .camp-scroll{
    overflow-x:auto;margin:24px 0 8px;-webkit-overflow-scrolling:touch;
    border-radius:14px;border:2px solid #cfc9c1;box-shadow:0 6px 20px rgba(30,25,20,.08);
  }
  .camp-table{border-collapse:collapse;width:100%;min-width:1080px;background:#fff;font-size:14.5px}
  .camp-table th,.camp-table td{
    border:1px solid #d5cfc7;padding:14px 14px;text-align:center;vertical-align:middle;line-height:1.75;
  }
  .camp-table thead th{background:var(--navy);color:#fff;font-weight:800;font-size:15.5px;padding:14px 10px;border-color:#4a4d57}
  .camp-table thead tr:nth-child(2) th{background:#43464f;font-weight:700;font-size:15px}
  .camp-table th.rowh{
    background:#f2ece5;color:var(--navy);font-weight:800;white-space:nowrap;
    width:104px;min-width:104px;text-align:center;font-size:14.5px;
  }
  .camp-table tbody tr:nth-child(even) td{background:#fdfcfb}
  .camp-table td.feat{text-align:left;font-size:13.5px;color:#5c5f68;line-height:1.85;padding:14px 16px}
  .camp-table td.price{font-weight:900;color:var(--accent);font-size:18px;background:#fff6f2 !important}
  .camp-table td.apply{padding:12px 10px}
  .camp-table td.wide{font-size:14.5px}
  .camp-table .btn-apply{display:inline-block;background:var(--accent);color:#fff;font-weight:800;font-size:14px;padding:10px 20px;border-radius:999px;text-decoration:none;white-space:nowrap;box-shadow:0 4px 12px rgba(245,115,79,.3)}
  .camp-table .btn-apply:hover{background:#e05f3c}
  .camp-note{font-size:13.5px;color:var(--muted);line-height:1.8;margin-top:12px}

  /* ===== 모바일: 표 대신 나라별 카드 (세로 스크롤) ===== */
  .camp-mobile{display:none}
  .pgroup-title{
    display:flex;align-items:center;gap:8px;font-size:19px;font-weight:900;color:var(--navy);
    margin:30px 0 12px;padding-bottom:8px;border-bottom:2px solid var(--accent);
  }
  .pgroup-title span{font-size:13px;font-weight:700;color:var(--muted)}
  .pcard{background:#fff;border:1px solid #ddd7cf;border-radius:14px;overflow:hidden;margin-bottom:14px;box-shadow:0 4px 14px rgba(30,25,20,.06)}
  .pcard-head{background:var(--navy);color:#fff;padding:14px 16px;display:flex;align-items:center;justify-content:space-between;gap:10px}
  /* .country-page h3 보다 우선하도록 구체성 확보 (navy 글자 → 안 보이던 버그) */
  .camp-mobile .pcard .pcard-head h3{font-size:17px;font-weight:900;margin:0;color:#fff}
  .camp-mobile .pcard .pcard-head .pprice{font-size:17px;font-weight:900;color:var(--accent-2);white-space:nowrap}
  .pcard-body{margin:0;padding:6px 0}
  .pcard-body > div{display:flex;gap:10px;padding:9px 16px;border-bottom:1px solid #f0ece7}
  .pcard-body > div:last-child{border-bottom:none}
  .pcard-body dt{flex:0 0 62px;font-size:13px;font-weight:800;color:var(--muted);padding-top:1px}
  .pcard-body dd{flex:1;margin:0;font-size:14.5px;color:var(--ink);line-height:1.7}
  .pcard-body dd b{color:var(--navy)}
  .pcard-body dd.sum{color:#e0653f;font-weight:800}
  .pcard-body ul{margin:0;padding-left:16px}
  .pcard-body ul li{font-size:14px;color:#5c5f68;line-height:1.75;margin-bottom:2px}
  .pcard-foot{padding:12px 16px 16px}
  .pcard-foot a{display:block;text-align:center;background:var(--accent);color:#fff;font-weight:800;font-size:15px;padding:13px;border-radius:999px;text-decoration:none}
  .pcard-foot a:hover{background:#e05f3c}

  @media (max-width:900px){
    .camp-scroll{display:none}
    .camp-mobile{display:block}
  }
  .camp-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:14px;margin:22px 0}
  .camp-card{background:#fff;border:1px solid var(--line);border-top:4px solid var(--accent);border-radius:14px;padding:18px 20px}
  .camp-card h4{font-size:17px;font-weight:900;color:var(--navy);margin-bottom:4px}
  .camp-card .cc-sub{font-size:13px;color:var(--accent);font-weight:700;margin-bottom:10px}
  .camp-card p{font-size:14px;color:var(--muted);line-height:1.75;margin:0 0 12px}
  .camp-card .cc-price{font-weight:900;color:var(--ink);font-size:15px}
  @media (max-width:700px){ .camp-scroll::after{content:"← 좌우로 넘겨보세요 →";display:block;text-align:center;font-size:12px;color:var(--muted);padding:8px} }

  /* ===== 국가별 상세 페이지 ===== */
  .country-page .lead-box{background:var(--sky);border:1px solid var(--line);border-radius:16px;padding:22px 24px;margin:22px 0 30px}
  .country-page h2{font-size:clamp(21px,3.4vw,27px);font-weight:900;color:var(--ink);margin:38px 0 14px;padding-bottom:10px;border-bottom:2px solid var(--accent)}
  .country-page h3{font-size:18px;font-weight:800;color:var(--navy);margin:22px 0 8px}
  .country-page p{margin-bottom:12px;line-height:1.85}
  .city-chips{display:flex;flex-wrap:wrap;gap:8px;margin:14px 0 6px}
  .city-chips span{background:#fff;border:1px solid var(--line);border-radius:999px;padding:8px 15px;font-size:14px;font-weight:700;color:var(--navy)}
  .subj-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:14px;margin-top:16px}
  .subj{background:#fff;border:1px solid var(--line);border-left:4px solid var(--accent);border-radius:12px;padding:16px 18px}
  .subj b{display:block;color:var(--navy);font-size:15.5px;margin-bottom:6px}
  .subj p{font-size:14.5px;color:var(--muted);margin:0;line-height:1.75}
  .grade-row{background:#fff;border:1px solid var(--line);border-radius:12px;padding:16px 18px;margin-bottom:10px}
  .grade-row b{color:var(--accent);font-size:15px}
  .grade-row p{margin:6px 0 0;font-size:14.5px;color:var(--muted);line-height:1.75}
  .country .cg-link{display:block;text-decoration:none;color:inherit}
  .cp-photo{width:100%;height:auto;border-radius:16px;margin:26px 0 8px;display:block;box-shadow:0 10px 26px rgba(30,25,20,.12)}
  .cp-cap{font-size:13px;color:var(--muted);text-align:center;margin:0 0 26px}

  /* ===== 지역별 과외 허브 (홈) ===== */
  .region-hub{display:flex;flex-wrap:wrap;gap:10px;justify-content:center;margin-top:26px}
  .region-hub a{
    background:#fff;border:1px solid var(--line);border-radius:999px;
    padding:11px 20px;text-decoration:none;color:var(--navy);font-weight:700;font-size:15px;
    box-shadow:0 3px 10px rgba(30,25,20,.05);transition:transform .15s,border-color .15s;
  }
  .region-hub a:hover{transform:translateY(-2px);border-color:var(--accent);color:var(--accent)}

  /* ===== Hero (사진 배경 + 좌측 딥 그라데이션) ===== */
  .hero{
    background:#1a191e url('hero-new.jpg?v=2') center center/cover no-repeat;
    color:#fff;text-align:left;padding:104px 0 112px;position:relative;overflow:hidden;
  }
  .hero::before{
    content:"";position:absolute;inset:0;
    background:linear-gradient(90deg,
      rgba(24,25,30,.92) 0%,
      rgba(24,25,30,.86) 30%,
      rgba(24,25,30,.50) 55%,
      rgba(24,25,30,.14) 78%,
      rgba(24,25,30,.18) 100%);
  }
  .hero .wrap{position:relative;z-index:2}
  .hero-copy{max-width:660px}
  .hero .badge{
    display:inline-block;border:1.5px solid rgba(255,255,255,.35);color:#e7e9ef;
    border-radius:999px;padding:6px 16px;font-weight:600;font-size:13px;margin-bottom:20px;
    letter-spacing:.2px;background:rgba(255,255,255,.06);
  }
  .hero h1{
    font-family:'Noto Sans KR',sans-serif;font-weight:900;
    font-size:clamp(28px,4.4vw,46px);line-height:1.42;letter-spacing:-.6px;color:#fff;
  }
  .hero h1 .pt{color:var(--accent-2)}
  .hero p.lead{
    margin:22px 0 0;max-width:560px;font-weight:400;
    font-size:clamp(14px,1.5vw,17px);line-height:1.85;color:#c5c9d3;
  }
  .hero .cta-row{margin-top:34px;display:flex;gap:12px;flex-wrap:wrap}

  .btn{
    display:inline-flex;align-items:center;gap:8px;border:none;cursor:pointer;
    font-family:'Noto Sans KR';font-weight:700;font-size:16px;text-decoration:none;
    padding:15px 28px;border-radius:999px;transition:transform .15s ease,box-shadow .15s ease;
  }
  .btn:hover{transform:translateY(-2px)}
  .btn-red{background:var(--red);color:#fff;box-shadow:0 8px 22px rgba(239,90,60,.38)}
  .btn-gold{background:var(--gold);color:#3a2a00;box-shadow:0 8px 22px rgba(245,181,61,.4)}
  .btn-coral{background:var(--accent);color:#fff;box-shadow:0 10px 26px rgba(245,115,79,.38)}
  .btn-outline{background:rgba(255,255,255,.04);color:#fff;border:1.5px solid rgba(255,255,255,.45)}
  .btn-outline:hover{background:rgba(255,255,255,.12)}
  .btn-ghost{background:transparent;color:#fff;border:2px solid rgba(255,255,255,.5)}

  @media (max-width:820px){
    /* 모바일: 글은 위(단색 배경), 사진은 아래에 온전히 — 인물 안 잘리게 */
    .hero{background:#1a191e url('hero-new.jpg?v=2') center bottom/auto 300px no-repeat;padding:64px 0 300px}
    .hero::before{
      background:linear-gradient(180deg,#18191e 0%,#18191e 46%,rgba(24,25,30,.55) 58%,rgba(24,25,30,.12) 72%,rgba(24,25,30,0) 100%);
    }
    .hero-copy{max-width:100%}
  }

  /* ===== Features (이러한 선생님) ===== */
  .features{background:var(--white)}
  .feat-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:18px;margin-top:40px}
  .feat{
    background:var(--sky);border-radius:var(--radius);padding:26px 24px;position:relative;
    border:1px solid #ece6df;
  }
  .feat .num{
    position:absolute;top:-14px;left:22px;width:34px;height:34px;border-radius:50%;
    background:var(--navy);color:#fff;display:grid;place-items:center;font-weight:900;font-size:15px;
  }
  .feat h3{font-size:17px;margin-bottom:6px;color:var(--navy)}
  .feat p{font-size:14.5px;color:var(--muted)}

  /* ===== Teachers carousel ===== */
  .teachers{background:var(--bg)}
  .teacher-scroller{margin-top:38px}
  .teacher-track{display:flex;gap:18px;overflow-x:auto;padding:6px 2px 14px;-ms-overflow-style:none;scrollbar-width:none;cursor:grab;user-select:none}
  .teacher-track.dragging{cursor:grabbing}
  .teacher-track::-webkit-scrollbar{display:none}
  .teacher-card{flex:0 0 250px;background:#fff;border:1px solid var(--line);border-top:4px solid var(--blue);border-radius:16px;overflow:hidden;box-shadow:0 4px 14px rgba(30,25,20,.06)}
  .teacher-photo{display:none}
  .teacher-info{padding:22px 20px 24px;min-height:210px}
  .teacher-info .tname{font-size:18px;font-weight:900;color:var(--navy)}
  .teacher-info .tsubj{display:inline-block;margin:9px 0;background:var(--sky);color:var(--navy-2);border:1px solid #cfe0ff;border-radius:999px;padding:3px 11px;font-size:12.5px;font-weight:700}
  .teacher-info ul{list-style:none}
  .teacher-info li{font-size:13.5px;color:var(--muted);padding-left:13px;position:relative;line-height:1.75}
  .teacher-info li::before{content:"";position:absolute;left:2px;top:10px;width:4px;height:4px;border-radius:50%;background:var(--blue)}
  .tnav{display:flex;justify-content:center;gap:12px;margin-top:18px}
  .tnav button{width:46px;height:46px;border-radius:50%;border:1px solid var(--line);background:#fff;color:var(--navy);font-size:20px;cursor:pointer;box-shadow:0 3px 10px rgba(30,25,20,.08);transition:background .15s}
  .tnav button:hover{background:var(--sky)}

  /* ===== Trust strip ===== */
  .trust{background:linear-gradient(135deg,var(--navy),var(--navy-2));color:#fff;text-align:center}
  .trust .big{font-family:'Noto Sans KR',sans-serif;font-weight:900;font-size:clamp(28px,5vw,44px)}
  .trust .stats{display:flex;gap:18px;justify-content:center;flex-wrap:wrap;margin-top:34px}
  .trust .stat{background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.18);border-radius:16px;padding:22px 30px;min-width:150px}
  .trust .stat b{display:block;font-family:'Noto Sans KR',sans-serif;font-weight:900;font-size:34px;color:var(--gold)}
  .trust .stat span{font-size:14px;color:#cfdcf3}

  /* ===== Subjects table ===== */
  .subjects{background:var(--white)}
  .tbl{margin-top:36px;border-radius:var(--radius);overflow:hidden;box-shadow:var(--shadow);border:1px solid var(--line)}
  .tbl .row{display:grid;grid-template-columns:130px 1fr;border-bottom:1px solid var(--line)}
  .tbl .row:last-child{border-bottom:none}
  .tbl .row .k{background:var(--navy);color:#fff;font-weight:700;padding:18px 16px;display:flex;align-items:center;justify-content:center;text-align:center}
  .tbl .row .v{padding:18px 20px;font-size:15px;color:var(--ink);background:#fff;display:flex;align-items:center;flex-wrap:wrap;gap:6px}
  .chip{display:inline-block;background:var(--sky);color:var(--navy-2);border:1px solid #cfe0ff;border-radius:999px;padding:4px 12px;font-size:13px;font-weight:500}

  /* ===== Ranking / specialty ===== */
  .rank{background:var(--bg)}
  .rank-card{max-width:520px;margin:34px auto 0;background:#fff;border-radius:var(--radius);box-shadow:var(--shadow);overflow:hidden;border:1px solid var(--line)}
  .rank-card .hd{background:var(--navy);color:#fff;text-align:center;padding:16px;font-weight:700}
  .rank-card .item{display:flex;align-items:center;gap:14px;padding:16px 22px;border-bottom:1px solid var(--line)}
  .rank-card .item:last-child{border-bottom:none}
  .rank-card .item .r{width:30px;height:30px;border-radius:8px;background:var(--sky);color:var(--navy);font-weight:900;display:grid;place-items:center}
  .rank-card .item.top{background:#fff7e9}
  .rank-card .item.top .r{background:var(--gold);color:#3a2a00}
  .rank-card .item .t{font-weight:600}

  /* ===== Reviews ===== */
  .reviews{background:var(--white)}
  .rev-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:18px;margin-top:40px}
  .rev{background:var(--bg);border:1px solid var(--line);border-radius:var(--radius);padding:24px}
  .rev .stars{color:var(--gold);font-size:16px;letter-spacing:2px}
  .rev p{font-size:14.5px;color:var(--ink);margin:12px 0}
  .rev .who{font-size:13px;color:var(--muted);font-weight:700}

  /* ===== Chart ===== */
  .grades{background:linear-gradient(135deg,#103a85,#1d56b0);color:#fff;text-align:center}
  .grades h2{color:#fff}
  .chart-wrap{max-width:580px;margin:42px auto 0;background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.14);border-radius:22px;padding:26px 22px 18px}
  .chart-svg{width:100%;height:auto;display:block}
  .chart-line{stroke-dasharray:600;stroke-dashoffset:600;animation:drawLine 1.9s ease .2s forwards}
  @keyframes drawLine{to{stroke-dashoffset:0}}
  .improve-badge{
    display:inline-flex;align-items:center;gap:8px;margin-top:22px;
    background:var(--gold);color:#3a2a00;font-weight:800;font-size:15px;
    padding:11px 22px;border-radius:999px;box-shadow:0 6px 18px rgba(245,181,61,.35);
  }

  /* ===== Recommend ===== */
  .reco{background:var(--bg)}
  .reco-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:16px;margin-top:38px}
  .reco-item{background:#fff;border:1px solid var(--line);border-left:5px solid var(--blue);border-radius:14px;padding:20px 22px;font-weight:500;font-size:15.5px;box-shadow:0 4px 14px rgba(30,25,20,.05)}
  .reco-item b{color:var(--blue)}

  /* ===== Steps ===== */
  .steps{background:var(--white)}
  .step-list{margin-top:42px;display:grid;gap:16px}
  .step{
    display:flex;align-items:center;gap:22px;background:var(--bg);border:1px solid var(--line);
    border-radius:var(--radius);padding:22px 26px;transition:transform .15s;
  }
  .step:hover{transform:translateX(6px)}
  .step .no{
    flex-shrink:0;width:56px;height:56px;border-radius:16px;background:var(--navy);color:#fff;
    font-family:'Noto Sans KR',sans-serif;font-weight:900;font-size:20px;display:grid;place-items:center;
  }
  .step:nth-child(odd) .no{background:var(--blue)}
  .step h3{font-size:18px;color:var(--navy)}
  .step p{font-size:14px;color:var(--muted)}

  /* ===== CTA / Contact ===== */
  .cta{background:linear-gradient(135deg,var(--navy),#0a234f);color:#fff;text-align:center}
  .cta .rank1{display:inline-block;background:var(--gold);color:#3a2a00;font-weight:900;border-radius:999px;padding:8px 22px;margin-bottom:18px;font-size:15px}
  .cta h2{color:#fff}
  .cta .tel-big{font-family:'Noto Sans KR',sans-serif;font-weight:900;font-size:clamp(30px,6vw,50px);color:var(--gold);margin:10px 0 6px}
  .form{max-width:460px;margin:34px auto 0;background:#fff;border-radius:var(--radius);padding:28px;color:var(--ink);text-align:left;box-shadow:var(--shadow)}
  .form label{display:block;font-weight:700;font-size:14px;margin:14px 0 6px;color:var(--navy)}
  .form input,.form select,.form textarea{
    width:100%;padding:13px 14px;border:1.5px solid var(--line);border-radius:12px;font-size:15px;font-family:inherit;
  }
  .form input:focus,.form select:focus,.form textarea:focus{outline:none;border-color:var(--blue)}
  .form .btn{width:100%;justify-content:center;margin-top:22px}
  .form .note{font-size:12px;color:var(--muted);margin-top:12px;text-align:center}

  /* ===== Study abroad / destinations ===== */
  .abroad{background:var(--white)}
  .path-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:16px;margin-top:38px}
  .path{background:var(--sky);border:1px solid #ece6df;border-radius:var(--radius);padding:26px 22px;text-align:center}
  .path .ic{font-size:34px}
  .path h3{color:var(--navy);font-size:17px;margin:10px 0 6px}
  .path p{font-size:14px;color:var(--muted)}
  .block-title{text-align:center;font-size:19px;color:var(--navy);font-weight:900;margin:48px 0 22px}
  .country-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(215px,1fr));gap:14px}
  .country{background:var(--bg);border:1px solid var(--line);border-radius:14px;padding:16px 18px}
  .country b{display:block;color:var(--navy);font-size:15.5px;margin-bottom:4px}
  .country span{font-size:13px;color:var(--muted)}
  .grade-grid{display:flex;flex-wrap:wrap;gap:10px;justify-content:center;max-width:700px;margin:20px auto 0}
  .grade-chip{background:var(--sky);color:var(--navy-2);border:1px solid #cfe0ff;border-radius:12px;padding:8px 14px;font-size:14.5px;font-weight:800}
  .grade-chip span{font-weight:500;color:var(--muted);font-size:12.5px;margin-left:5px}
  .hl-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:18px;margin-top:36px}
  .hl-card{background:linear-gradient(135deg,var(--navy),var(--navy-2));color:#fff;border-radius:var(--radius);padding:28px}
  .hl-card h3{font-size:18px;margin-bottom:10px;color:#fff}
  .hl-card p{font-size:14.5px;color:#c9cbd2}
  .hl-card b{color:var(--gold)}

  /* ===== Managed schools ===== */
  .schools{background:var(--bg)}
  .school-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:16px;margin-top:38px}
  .school-card{display:block;background:#fff;border:1px solid var(--line);border-top:4px solid var(--blue);border-radius:16px;padding:22px;text-decoration:none;color:inherit;box-shadow:0 4px 14px rgba(30,25,20,.05);transition:transform .15s,box-shadow .15s}
  .school-card:hover{transform:translateY(-4px);box-shadow:0 12px 26px rgba(30,25,20,.12)}
  .school-card .tag{display:inline-block;background:var(--sky);color:var(--navy-2);border:1px solid #cfe0ff;border-radius:999px;padding:3px 11px;font-size:12px;font-weight:700}
  .school-card h3{color:var(--navy);font-size:17px;margin:12px 0 8px;line-height:1.4}
  .school-card p{font-size:14px;color:var(--muted);min-height:42px}
  .school-card .more{display:inline-block;margin-top:10px;color:var(--blue);font-weight:700;font-size:13.5px}
  .school-card .cities{display:block;margin-top:8px;font-size:12.5px;color:#8a94a3;line-height:1.5}
  .school-search{max-width:560px;margin:0 auto 8px}
  .school-search input{
    width:100%;padding:16px 22px;border:2px solid var(--line);border-radius:999px;
    font-size:16px;font-family:inherit;box-shadow:var(--shadow);
  }
  .school-search input:focus{outline:none;border-color:var(--blue)}
  .search-empty{display:none;text-align:center;color:var(--muted);margin-top:20px;font-size:15px}

  /* ===== Back link ===== */
  .backlink{text-align:center;padding:0 0 50px;background:var(--bg)}
  .backlink a{color:var(--blue);text-decoration:none;font-weight:700;font-size:15px}
  .backlink a:hover{text-decoration:underline}

  /* ===== News list (blog grid tiles) ===== */
  .news{background:var(--bg)}
  .news-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(290px,1fr));gap:20px;margin-top:6px}
  .post{display:flex;flex-direction:column;background:#fff;border:1px solid var(--line);border-radius:16px;overflow:hidden;text-decoration:none;color:inherit;box-shadow:0 4px 14px rgba(30,25,20,.05);transition:transform .15s,box-shadow .15s}
  .post:hover{transform:translateY(-4px);box-shadow:0 14px 30px rgba(30,25,20,.13)}
  .post-thumb{height:185px;background:linear-gradient(160deg,#3a3d46,#1f2128)}
  .post-thumb img{width:100%;height:100%;object-fit:cover;display:block}
  .post-main{padding:18px 20px 22px}
  .post-meta{font-size:12.5px;color:var(--blue);font-weight:700}
  /* 뉴스 페이지네이션 */
  .pager{display:flex;justify-content:center;align-items:center;gap:6px;flex-wrap:wrap;margin:36px 0 4px}
  .pager .pg-btn{min-width:38px;height:38px;padding:0 10px;border:1px solid #ddd;background:#fff;border-radius:10px;font-size:14px;font-weight:700;color:var(--navy);cursor:pointer;transition:.15s}
  .pager .pg-btn:hover:not(:disabled){border-color:var(--accent);color:var(--accent)}
  .pager .pg-btn.active{background:var(--accent);border-color:var(--accent);color:#fff}
  .pager .pg-btn:disabled{opacity:.35;cursor:default}
  .pager .pg-gap{padding:0 4px;color:var(--muted);font-weight:700}
  .post-title{font-size:17px;color:var(--navy);font-weight:900;margin:8px 0 8px;line-height:1.45}
  .post-excerpt{font-size:14px;color:var(--muted);line-height:1.65}

  /* ===== Article (single post) ===== */
  .article{background:#fff}
  .article .wrap{max-width:760px}
  .article-hero{width:100%;border-radius:16px;margin-bottom:24px;display:block}
  .article-meta{font-size:14px;color:var(--blue);font-weight:700;margin-bottom:8px}
  /* 조회수 배지 (views.js가 채움) */
  .view-count{visibility:hidden;display:inline-block;color:var(--muted);font-weight:700;white-space:nowrap}
  .article-meta .view-count{font-size:13px;margin-left:8px}
  .post-meta .view-count{font-size:12px;margin-left:6px}
  .article h1{font-family:'Noto Sans KR',sans-serif;font-weight:900;font-size:clamp(23px,4.5vw,31px);color:var(--navy);line-height:1.45;margin-bottom:22px}
  .article p{font-size:16px;line-height:1.9;color:var(--ink);margin-bottom:16px}
  .article p b{color:var(--navy)}
  .green-cta{display:block;background:#1aa86b;color:#fff;text-align:center;font-weight:800;font-size:18px;padding:18px;border-radius:12px;text-decoration:none;margin-top:28px;box-shadow:0 6px 18px rgba(26,168,107,.3)}
  .green-cta:hover{background:#168a58}
  .back-news{display:inline-block;margin-top:24px;color:var(--blue);font-weight:700;text-decoration:none}
  .related-links{margin-top:26px;font-size:14.5px;color:var(--muted)}
  .related-links a{color:var(--blue);font-weight:700;text-decoration:none}
  .related-links a:hover{text-decoration:underline}


  /* ===== Footer ===== */
  footer{background:#081a3a;color:#9fb3d6;text-align:center;padding:36px 20px;font-size:13px}
  footer b{color:#fff}

  /* ===== Sticky mobile CTA ===== */
  .sticky-cta{
    position:fixed;left:0;right:0;bottom:0;z-index:60;display:none;
    background:var(--red);color:#fff;text-align:center;padding:14px;font-weight:700;
    text-decoration:none;font-size:16px;box-shadow:0 -4px 20px rgba(0,0,0,.2);
  }

  /* ===== KakaoTalk floating button ===== */
  .kakao-fab{
    position:fixed;right:20px;bottom:24px;z-index:70;
    display:inline-flex;align-items:center;gap:7px;
    background:#FAE100;color:#3C1E1E;font-weight:800;font-size:15px;
    padding:13px 20px;border-radius:999px;text-decoration:none;white-space:nowrap;
    box-shadow:0 6px 20px rgba(0,0,0,.22);
    transition:transform .15s ease;
    animation:kakaoPulse 2.2s ease-in-out infinite;
  }
  .kakao-fab:hover{transform:translateY(-2px)}
  @keyframes kakaoPulse{
    0%,100%{box-shadow:0 6px 20px rgba(0,0,0,.22),0 0 0 0 rgba(250,225,0,.55)}
    50%{box-shadow:0 6px 20px rgba(0,0,0,.22),0 0 0 12px rgba(250,225,0,0)}
  }

  @media (max-width:640px){
    .topbar .tel a{font-size:14px}
    .sticky-cta{display:block}
    body{padding-bottom:54px}
    .step{flex-direction:row}
    .kakao-fab{bottom:66px;right:14px;padding:11px 16px;font-size:14px}
  }

  /* ============================================================
     입체감(깊이감) 강화 — 전 페이지 공용 (2026-08-31)
     카드에 부드러운 다층 그림자 + 마우스오버 살짝 떠오르는 효과
     ============================================================ */
  :root{
    --shadow-sm:0 2px 6px rgba(30,25,20,.08),0 10px 22px rgba(30,25,20,.10);
    --shadow-md:0 6px 16px rgba(30,25,20,.12),0 18px 40px rgba(30,25,20,.16);
    --shadow-lg:0 10px 24px rgba(30,25,20,.14),0 28px 56px rgba(30,25,20,.20);
  }

  /* 페이지 바탕에 옅은 그라데이션 + 톤으로 깊이감 (흰 패널이 떠 보이게) */
  body{
    background:
      radial-gradient(1200px 600px at 100% -5%, rgba(245,115,79,.10), transparent 60%),
      radial-gradient(1000px 520px at 0% 100%, rgba(35,37,44,.07), transparent 55%),
      #f0ebe4;
    background-attachment:fixed;
  }

  /* 글(뉴스·유학·FAQ) 본문을 흰 종이처럼 띄우기 — 가장 큰 입체감 */
  .article{background:transparent}
  .article .wrap{
    background:#fff;
    border-radius:20px;
    box-shadow:var(--shadow-lg);
    padding:38px 44px;
    margin:28px auto 40px;
  }
  @media (max-width:640px){
    .article .wrap{padding:26px 20px;border-radius:16px;margin:16px auto 24px}
  }
  /* 히어로 이미지는 패널 안에서 위로 살짝 겹치게 */
  .article .article-hero{border-radius:14px}

  /* 후기 카드 */
  .rev{
    background:#fff;
    box-shadow:var(--shadow-sm);
    transition:transform .18s ease,box-shadow .18s ease;
  }
  .rev:hover{transform:translateY(-4px);box-shadow:var(--shadow-md)}

  /* 과목·학년·FAQ·캠프 카드 */
  .subj,.grade-row,.faq-item,.camp-card{
    box-shadow:var(--shadow-sm);
    transition:transform .18s ease,box-shadow .18s ease;
  }
  .subj:hover,.grade-row:hover,.faq-item:hover,.camp-card:hover{
    transform:translateY(-3px);
    box-shadow:var(--shadow-md);
  }

  /* 리드박스·학교찾기·비교표·상세카드 살짝 띄우기 */
  .country-page .lead-box,.lead-box{box-shadow:var(--shadow-sm)}
  .school-finder{box-shadow:var(--shadow-md)}
  .pcard{box-shadow:var(--shadow-sm);transition:transform .18s ease,box-shadow .18s ease}
  .pcard:hover{transform:translateY(-3px);box-shadow:var(--shadow-md)}
  .cp-photo,.article-hero{box-shadow:var(--shadow-md)}
  .country-page table{box-shadow:var(--shadow-sm);border-radius:12px;overflow:hidden}

  /* 홈 지역 허브 링크 — 기본 그림자 추가 */
  .region-hub a{box-shadow:var(--shadow-sm);transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease,color .18s ease}
  .region-hub a:hover{box-shadow:var(--shadow-md)}
  .city-chips span{box-shadow:var(--shadow-sm)}

  /* 목록 카드 — 기본 그림자도 또렷하게, hover 시 더 깊게 */
  .post{box-shadow:var(--shadow-sm);border-radius:18px}
  .post:hover{box-shadow:var(--shadow-lg)}
  /* 카드 모서리 조금 더 둥글게(부드러운 느낌) */
  .rev,.subj,.grade-row,.faq-item,.camp-card{border-radius:16px}

  /* 버튼 입체감 + 눌리는 느낌 */
  .green-cta,.sd-cta,.school-detail .sd-cta,.camp-table .btn-apply,.pcard-foot a{
    transition:transform .15s ease,box-shadow .15s ease,background .15s ease;
  }
  .green-cta:hover,.sd-cta:hover,.school-detail .sd-cta:hover,.camp-table .btn-apply:hover,.pcard-foot a:hover{
    transform:translateY(-2px);
    box-shadow:0 10px 24px rgba(30,25,20,.20);
  }
  .green-cta:active,.sd-cta:active,.pcard-foot a:active{transform:translateY(0)}

  /* nav 링크 hover 시 살짝 떠오르게 */
  .nav a{transition:background .15s,color .15s,transform .15s}
  .nav a:hover{transform:translateY(-1px)}

  /* ===== 국가 페이지 "그 외 공립학교" 접이식 블록 (2026-10-18) ===== */
  .pub-wrap{margin:18px 0 6px}
  .pub-intro{font-size:15px;color:var(--muted);line-height:1.7;margin:0 0 10px}
  details.pub{border:1px solid var(--line);border-radius:14px;background:#fff;overflow:hidden}
  details.pub summary,.pub-btn{list-style:none;cursor:pointer;display:flex;align-items:center;gap:10px;flex-wrap:wrap;padding:14px 18px;background:var(--navy);color:#fff;font-weight:800;font-size:16px;user-select:none}
  details.pub summary::-webkit-details-marker{display:none}
  details.pub summary:hover,.pub-btn:hover{filter:brightness(1.1)}
  .pub-arrow{display:inline-block;transition:transform .2s}
  details.pub[open] .pub-arrow{transform:rotate(90deg)}
  .pub-n{margin-left:auto;font-size:13px;font-weight:600;opacity:.9;background:rgba(255,255,255,.16);padding:4px 10px;border-radius:999px}
  .pub-body{padding:6px 18px 16px}
  .pub-body h4{font-size:16px;font-weight:900;color:var(--navy);margin:18px 0 8px;padding-bottom:6px;border-bottom:2px solid var(--line)}
  .pub-d{border-left:3px solid var(--accent);padding:4px 0 4px 12px;margin:8px 0 12px;font-size:15px;line-height:1.7}
  .pub-d>b{color:var(--navy)}
  .pub-d p{margin:4px 0;color:#333}
  .pub-d em{font-style:normal;font-weight:700;color:var(--accent);margin-right:4px}
  .pub-note{font-size:13px;color:var(--muted);margin:12px 0 0;line-height:1.6}
  @media (max-width:640px){details.pub summary{font-size:15px;padding:12px 14px}.pub-n{margin-left:0}.pub-body{padding:4px 12px 14px}.pub-d{font-size:14px}}
  .pub-btn{text-decoration:none;border-radius:14px;box-shadow:0 6px 18px rgba(18,48,92,.18);transition:transform .15s}
  .pub-btn:hover{transform:translateY(-2px)}
  .pub-page{border:1px solid var(--line);border-radius:14px;background:#fff;padding:4px 18px 16px;margin:12px 0 20px}
  .pub-page h4:first-child{margin-top:10px}


/* ===== ap튜터 테마 (생성기 사이트관리/도구/국제학교복제 — 손으로 고치지 말 것) ===== */
:root{
  --navy:#14213d;--navy-2:#1f2f57;--blue:#1f4fd8;--sky:#eef2fb;--red:#e4572e;--gold:#fca311;--accent:#fca311;--accent-2:#ffd166;
  --charcoal:#0b1430;--ink:#121826;--muted:#5c667a;--line:#dfe4ef;--bg:#f6f8fc;--radius:8px;--dark:#0b1430;
  --font-head:"IBM Plex Sans KR",sans-serif;--font-body:"IBM Plex Sans KR",sans-serif;
}
body{font-family:var(--font-body)}
.display,h2.sec-title,.hero h1,.page-head h1,.trust .big,.cta .tel-big,.step .no,.school-finder h3{font-family:var(--font-head)}
.btn{font-family:var(--font-body)}
/* 글자 로고 (원본의 로고 그림 2장 대신) */
.topbar .brand a{display:flex;align-items:center;height:60px;width:auto;line-height:1;gap:9px}
.logo-text{font-family:var(--font-head);font-weight:900;font-size:22px;letter-spacing:-.02em;white-space:nowrap;color:inherit}
.logo-text i{display:inline-block;width:12px;height:12px;border-radius:3px;background:var(--accent);transform:rotate(45deg);flex:0 0 auto}
/* 상단 띠를 뺐으므로 메뉴 고정 위치는 원본과 같다(topbar 60 + nav 52) */

.topbar,.nav{background:var(--navy)}
body.scrolled .topbar{background:#fff;color:var(--navy)}
body.scrolled .nav{background:#fff}
.nav a{border-radius:4px;font-weight:600;padding:8px 12px;border-bottom:2px solid transparent}
.nav a:hover{background:rgba(255,255,255,.08)}
.nav a.active{background:transparent;color:var(--gold);border-bottom-color:var(--gold)}
body.scrolled .nav a.active{background:transparent;color:var(--navy);border-bottom-color:var(--navy)}
.nav a.featured,body.scrolled .nav a.featured{background:var(--gold);color:var(--navy);border-radius:4px}
.nav a.featured:hover,body.scrolled .nav a.featured:hover{background:#e3920f}
.logo-text i{border-radius:0}
.hero{background:var(--navy);padding:96px 0 104px}
.hero::before{background:
  linear-gradient(90deg,rgba(20,33,61,.2) 0%,rgba(20,33,61,0) 100%),
  repeating-linear-gradient(0deg,rgba(255,255,255,.045) 0 1px,transparent 1px 48px),
  repeating-linear-gradient(90deg,rgba(255,255,255,.045) 0 1px,transparent 1px 48px)}
.hero .badge{border-radius:4px;border-color:rgba(252,163,17,.6);color:var(--gold);background:rgba(252,163,17,.08)}
.hero h1{letter-spacing:-.3px}
.btn{border-radius:6px}
.btn-red{background:var(--gold);color:var(--navy);box-shadow:0 8px 22px rgba(252,163,17,.3)}
.btn-coral{background:var(--gold);color:var(--navy);box-shadow:0 10px 26px rgba(252,163,17,.3)}
.btn-gold{background:#fff;color:var(--navy)}
.eyebrow{letter-spacing:3px;font-size:12.5px}
h2.sec-title{letter-spacing:-.5px}
.feat{border-radius:8px;background:#fff;border:1px solid var(--line);box-shadow:0 1px 0 var(--line)}
.feat .num{border-radius:4px;background:var(--gold);color:var(--navy)}
.teacher-card,.rank-card,.reco-item,.step,.post,.country,.subj,.grade-row,.school-card,.faq-item,.form,.chart-wrap{border-radius:8px}
.teacher-card{border-top-color:var(--gold)}
.step .no{border-radius:6px}
.step:nth-child(odd) .no{background:var(--gold);color:var(--navy)}
.chip,.teacher-info .tsubj,.school-card .tag,.region-hub a,.city-chips span,.ftab{border-radius:4px}
.chip{border-color:var(--line)}
.trust{background:var(--navy)}
.grades{background:linear-gradient(135deg,var(--navy),var(--navy-2))}
.cta{background:linear-gradient(135deg,var(--navy),var(--dark))}
.page-head{background:var(--navy)}
.school-finder{background:var(--sky);border:1px solid var(--line);border-radius:8px}
footer{background:var(--dark);color:#9aa6c2}
.sticky-cta{background:var(--gold);color:var(--navy)}
.post-thumb{background:linear-gradient(160deg,var(--navy-2),var(--navy))}
