
.sub-hero{background:linear-gradient(135deg,#f7fbfd,#eef6f7);border-bottom:1px solid #dce9ec;padding:76px 0 60px}
.sub-hero-inner{max-width:920px}.sub-hero h1{font-size:48px;line-height:1.17;letter-spacing:-.035em;color:#173b59;margin:0 0 16px}
.sub-hero p:last-child{font-size:18px;color:#587084;max-width:800px}.sub-main{padding:76px 0 100px}
.page-section{margin-bottom:76px}.page-section h2{font-size:34px;color:#173b59;margin:0 0 16px;letter-spacing:-.025em}
.page-section>p,.copy{color:#5c7081;font-size:16px}.evidence-grid,.program-grid,.method-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}
.info-card{border:1px solid #dfe9ee;background:#fff;padding:26px;border-radius:16px}.info-card h3{font-size:21px;margin:8px 0;color:#193d5d}.info-card p{color:#617487}
.photo-card{overflow:hidden;border:1px solid #dfe9ee;background:#fff}.photo-card img{width:100%;height:240px;object-fit:cover}.photo-card .pad{padding:20px}.photo-card strong{display:block;color:#1e7950;font-size:13px;margin-bottom:6px}
.split-page{display:grid;grid-template-columns:1fr 1fr;gap:46px;align-items:center}.split-page img{width:100%;max-height:520px;object-fit:cover}
.method-nav,.program-nav{display:flex;flex-wrap:wrap;gap:10px;margin:0 0 34px}.method-nav a,.program-nav a{border:1px solid #cddfe4;padding:10px 14px;border-radius:999px;font-weight:800;color:#31566f;background:#fff}
.method-nav a:hover,.program-nav a:hover{border-color:#2da963;color:#1f7b4a}
.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-top:25px}.step{background:#f6fafb;padding:22px;border-radius:14px;border:1px solid #e1ebee}.step b{color:#2ba55f}
.cta-panel{padding:34px;background:linear-gradient(135deg,#edf8f2,#f4f9fd);border:1px solid #d8e8e1;border-radius:18px;display:flex;justify-content:space-between;gap:25px;align-items:center}
.cta-panel h3{margin:0 0 6px;font-size:26px}.cta-panel p{margin:0;color:#607587}.page-btn{display:inline-flex;padding:13px 18px;border-radius:9px;background:#1f8d50;color:white;font-weight:850}
.form-shell{max-width:820px;margin:auto}.form-shell label{display:block;font-weight:800;color:#284a63;margin-bottom:16px}.form-shell input,.form-shell select,.form-shell textarea{width:100%;margin-top:7px;border:1px solid #cfdce5;border-radius:10px;padding:13px;font:inherit;background:white}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:18px}.form-actions{display:flex;gap:10px;margin-top:18px}.board-btn{border:0;border-radius:9px;padding:12px 17px;font-weight:800;cursor:pointer}.board-btn.primary{background:#1f8d50;color:#fff}.board-btn.ghost{background:#eef4f7;color:#31556d}.board-btn.danger{background:#fff0f0;color:#b63b3b}.form-message{color:#1f7750;margin-top:15px}
.board-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px}.board-list{border-top:2px solid #234b68}.board-item{display:grid;grid-template-columns:90px 1fr 100px 100px;gap:12px;padding:16px;border-bottom:1px solid #e1eaef;align-items:center}.board-item .title{font-weight:800}.board-empty,.board-loading{padding:40px;text-align:center;color:#6b7f8e;border-bottom:1px solid #e1eaef}.post-detail{padding:28px;border-bottom:1px solid #dfe9ee;background:#f8fbfc}.post-detail-head{display:flex;justify-content:space-between}.post-body{white-space:pre-wrap;margin-top:20px;color:#4f6577}
.modal{display:none;position:fixed;inset:0;background:rgba(8,30,50,.48);z-index:50;align-items:center;justify-content:center;padding:20px}.modal.open{display:flex}.modal-card{width:min(720px,100%);background:#fff;border-radius:16px;padding:28px;max-height:90vh;overflow:auto}.modal-head{display:flex;justify-content:space-between;align-items:center}.modal-close{background:none;border:0;font-size:28px}
.inquiry-consent{display:flex!important;gap:10px;align-items:flex-start}.inquiry-consent input{width:auto!important;margin-top:3px!important}.admin-panel{margin-top:60px;border-top:1px solid #e1eaef;padding-top:30px}.inquiry-item{border:1px solid #dfe8ed;padding:20px;margin:12px 0}.inquiry-item-head{display:flex;justify-content:space-between}.inquiry-item-body{white-space:pre-wrap;color:#526b7e;margin-top:15px}
@media(max-width:900px){.evidence-grid,.program-grid,.method-grid,.steps{grid-template-columns:1fr 1fr}.split-page{grid-template-columns:1fr}.sub-hero h1{font-size:40px}}
@media(max-width:680px){.sub-hero{padding:54px 0 42px}.sub-hero h1{font-size:34px}.evidence-grid,.program-grid,.method-grid,.steps,.form-row{grid-template-columns:1fr}.board-item{grid-template-columns:65px 1fr}.board-item .author,.board-item time{display:none}.cta-panel{display:block}.cta-panel .page-btn{margin-top:18px}}

/* Full-page learning method pages */
.method-hero{padding:68px 0 46px;background:linear-gradient(135deg,#f8fbfd,#eef6f7);border-bottom:1px solid #dce9ec}
.method-hero .container{max-width:1160px}.method-kicker{font-size:12px;letter-spacing:.16em;font-weight:900;color:#2b8a61;margin-bottom:14px}
.method-hero h1{font-size:56px;line-height:1.08;color:#173b59;margin:0 0 18px;letter-spacing:-.04em}
.method-hero .lead{font-size:19px;line-height:1.7;color:#546b7e;max-width:840px}
.method-tabs{display:flex;gap:10px;flex-wrap:wrap;margin-top:28px}.method-tabs a{padding:10px 15px;border:1px solid #c9dce3;border-radius:999px;background:#fff;font-weight:800;color:#35566e}.method-tabs a.active{background:#1f8d50;color:#fff;border-color:#1f8d50}

.learning-switcher-wrap{background:#fff;border-bottom:1px solid #dce9ec;padding:18px 0}
.learning-switcher{display:flex;gap:10px;flex-wrap:wrap}
.learning-switcher a{display:inline-flex;align-items:center;justify-content:center;padding:10px 18px;border:1px solid #c9dce3;border-radius:999px;background:#fff;font-weight:800;color:#35566e;text-decoration:none;transition:all .2s ease}
.learning-switcher a:hover{border-color:#9fc2cf;background:#f6fbfd}
.learning-switcher a.active{background:#1f8d50;color:#fff;border-color:#1f8d50;box-shadow:0 8px 18px rgba(31,141,80,.18)}
.method-content{padding:70px 0 100px}.method-top{display:grid;grid-template-columns:1fr .88fr;gap:48px;align-items:center;margin-bottom:72px}.method-top img{width:100%;max-height:520px;object-fit:cover;border-radius:18px}
.principle-box{padding:34px;border:1px solid #dce8ed;border-radius:18px;background:#fff}.principle-label{font-size:12px;letter-spacing:.14em;font-weight:900;color:#2a8a60;margin-bottom:12px}.principle-box h2{font-size:32px;line-height:1.4;color:#173b59;margin:0}
.three-principles{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin:28px 0 76px}.principle-card{padding:26px;border-radius:16px;background:#f7fafb;border:1px solid #e1ebef}.principle-card .num{font-size:12px;font-weight:900;color:#2d9a67}.principle-card h3{font-size:21px;color:#1d405d;margin:10px 0}.principle-card p{color:#607486;margin:0}
.practice-section{margin-top:54px}.practice-section>p{color:#5d7183;font-size:17px;line-height:1.8;max-width:68ch;word-break:keep-all}.practice-list{display:grid;gap:18px;margin-top:26px}.practice-item{display:grid;grid-template-columns:70px 1fr;gap:20px;padding:24px 26px;border-bottom:1px solid #e0e8ed;background:#fff}.practice-item>div:last-child{max-width:68ch}.practice-item .practice-num{font-size:28px;font-weight:900;color:#7ab997}.practice-item h3{margin:0 0 8px;font-size:22px;color:#173b59}.practice-item p{margin:0;color:#5c7081;line-height:1.75;word-break:keep-all}
.method-next{margin-top:72px;padding:32px 36px;border-radius:18px;background:linear-gradient(135deg,#eef7f2,#f4f8fb);display:flex;justify-content:space-between;align-items:center;gap:20px}.method-next h3{margin:0 0 6px;font-size:26px;color:#173b59}.method-next p{margin:0;color:#5e7385}.method-next a{white-space:nowrap}
@media(max-width:850px){.method-top{grid-template-columns:1fr}.three-principles{grid-template-columns:1fr}.method-hero h1{font-size:46px}}
@media(max-width:680px){.method-hero{padding:52px 0 38px}.method-hero h1{font-size:38px}.method-content{padding:52px 0 76px}.practice-item{grid-template-columns:48px 1fr;padding:20px}.method-next{display:block}.method-next a{display:inline-flex;margin-top:18px}}


/* 연구소소개 소장 사진 품질/크롭 보정 */
#director.split-page{
  grid-template-columns:minmax(0,1.15fr) minmax(280px,420px);
  gap:54px;
  align-items:center;
}
#director > img{
  width:100%;
  max-width:380px;
  height:auto;
  max-height:none;
  object-fit:contain;
  object-position:center;
  justify-self:center;
  border-radius:0;
  box-shadow:none;
  background:#fff;
}
@media(max-width:900px){
  #director.split-page{grid-template-columns:1fr}
  #director > img{max-width:340px}
}
@media(max-width:680px){
  #director > img{max-width:290px}
}


/* 약력·연수기관 목록형 정리 */
.career-groups{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:24px;
}
.career-group{
  border-top:3px solid #2da963;
  padding:24px 0 0;
}
.career-group h3{
  margin:0 0 16px;
  font-size:21px;
  color:#173b59;
}
.career-list{
  list-style:none;
  margin:0;
  padding:0;
}
.career-list li{
  position:relative;
  padding:11px 0 11px 18px;
  border-bottom:1px solid #e3ebef;
  color:#50697b;
  font-size:15px;
  line-height:1.6;
}
.career-list li::before{
  content:"";
  position:absolute;
  left:0;
  top:20px;
  width:6px;
  height:6px;
  border-radius:50%;
  background:#66b884;
}
.record-groups .career-list li{
  font-weight:700;
  color:#37536a;
}
@media(max-width:900px){
  .career-groups{grid-template-columns:1fr 1fr}
}
@media(max-width:680px){
  .career-groups{grid-template-columns:1fr}
}


/* 연구소소개 배너 - 건물 이미지 풀배너 */
.sub-hero-building{
  position:relative;
  min-height:430px;
  display:flex;
  align-items:flex-end;
  background:
    linear-gradient(90deg, rgba(12,37,60,.58) 0%, rgba(12,37,60,.34) 34%, rgba(12,37,60,.10) 60%, rgba(12,37,60,.08) 100%),
    url('assets/images/about_banner_building.jpg') center center / cover no-repeat;
  overflow:hidden;
}
.sub-hero-building .sub-hero-overlay{
  position:absolute;
  inset:0;
  background:linear-gradient(180deg, rgba(255,255,255,.03) 0%, rgba(11,30,48,.08) 100%);
}
.sub-hero-building .sub-hero-inner{
  position:relative;
  z-index:2;
  max-width:760px;
  padding:0 0 58px;
}
.sub-hero-building .eyebrow{
  color:#E5F2FF;
  margin-bottom:14px;
}
.sub-hero-building h1{
  color:#ffffff;
  text-shadow:0 3px 18px rgba(0,0,0,.20);
  margin-bottom:14px;
}
.sub-hero-building p:last-child{
  color:rgba(255,255,255,.92);
  max-width:620px;
  text-shadow:0 2px 10px rgba(0,0,0,.18);
}

@media(max-width:900px){
  .sub-hero-building{min-height:340px;background-position:center center}
  .sub-hero-building .sub-hero-inner{padding:0 0 42px}
}
@media(max-width:680px){
  .sub-hero-building{min-height:280px;background-position:60% center}
  .sub-hero-building .sub-hero-inner{padding:0 0 34px}
}


/* 학습법 배너 - 도서관 이미지 풀배너 */
.sub-hero-library{
  position:relative;
  min-height:420px;
  display:flex;
  align-items:flex-end;
  background:
    linear-gradient(90deg, rgba(10,30,49,.48) 0%, rgba(10,30,49,.26) 34%, rgba(10,30,49,.10) 58%, rgba(10,30,49,.10) 100%),
    url('assets/images/learning_banner_library.jpg') center center / cover no-repeat;
  overflow:hidden;
}
.sub-hero-library .sub-hero-overlay{
  position:absolute;
  inset:0;
  background:linear-gradient(180deg, rgba(255,255,255,.02) 0%, rgba(8,27,43,.10) 100%);
}
.sub-hero-library .sub-hero-inner{
  position:relative;
  z-index:2;
  max-width:760px;
  padding:0 0 56px;
}
.sub-hero-library .eyebrow{
  color:#E7F1F6;
  margin-bottom:14px;
}
.sub-hero-library h1{
  color:#fff;
  margin-bottom:14px;
  text-shadow:0 3px 18px rgba(0,0,0,.20);
}
.sub-hero-library p:last-child{
  color:rgba(255,255,255,.94);
  max-width:680px;
  text-shadow:0 2px 10px rgba(0,0,0,.18);
}

/* 학습법 카드 이미지 잘림 복원 */
.method-grid .photo-card{
  display:flex;
  flex-direction:column;
}
.method-grid .photo-card img{
  width:100%;
  height:240px;
  object-fit:contain;
  object-position:center;
  background:#f6f7f5;
}
.method-grid .photo-card .pad{
  flex:1;
}
@media(max-width:900px){
  .sub-hero-library{min-height:340px;background-position:center center}
  .sub-hero-library .sub-hero-inner{padding:0 0 42px}
}
@media(max-width:680px){
  .sub-hero-library{min-height:280px;background-position:56% center}
  .sub-hero-library .sub-hero-inner{padding:0 0 34px}
  .method-grid .photo-card img{height:220px}
}


/* 프로그램 페이지 배너 - 시각이미지 풀배너 */
.sub-hero-program-visual{
  position:relative;
  min-height:420px;
  display:flex;
  align-items:flex-end;
  background-color:#000;
  background-image:
    linear-gradient(90deg, rgba(9,18,42,.46) 0%, rgba(11,29,65,.24) 34%, rgba(15,26,60,.08) 58%, rgba(15,26,60,.06) 100%),
    url('assets/images/program_banner_visual.jpg');
  background-position:center center, center center;
  background-size:cover, contain;
  background-repeat:no-repeat, no-repeat;
  overflow:hidden;
}
.sub-hero-program-visual .sub-hero-overlay{
  position:absolute;
  inset:0;
  background:linear-gradient(180deg, rgba(255,255,255,.02) 0%, rgba(8,15,34,.08) 100%);
}
.sub-hero-program-visual .sub-hero-inner{
  position:relative;
  z-index:2;
  max-width:760px;
  padding:0 0 56px;
}
.sub-hero-program-visual .eyebrow{
  color:#e6f0ff;
  margin-bottom:14px;
}
.sub-hero-program-visual h1{
  color:#ffffff;
  margin-bottom:14px;
  text-shadow:0 3px 18px rgba(0,0,0,.25);
}
.sub-hero-program-visual p:last-child{
  color:rgba(255,255,255,.94);
  max-width:680px;
  text-shadow:0 2px 10px rgba(0,0,0,.20);
}

/* 프로그램 카드 이미지 */
.program-grid .photo-card{
  display:flex;
  flex-direction:column;
}
.program-grid .photo-card img{
  width:100%;
  height:260px;
  object-fit:cover;
  object-position:center;
}
.program-grid .photo-card.contain-image img{
  object-fit:contain;
  background:#f6f7f8;
  padding:10px;
}
.program-grid .photo-card .pad{
  flex:1;
}
@media(max-width:900px){
  .sub-hero-program-visual{min-height:340px;background-position:center center}
  .sub-hero-program-visual .sub-hero-inner{padding:0 0 42px}
}
@media(max-width:680px){
  .sub-hero-program-visual{min-height:280px;background-position:center center}
  .sub-hero-program-visual .sub-hero-inner{padding:0 0 34px}
  .program-grid .photo-card img{height:230px}
}



/* 강연워크숍 페이지 배너 - 마이크 사진 풀배너 */
.sub-hero-lecture-visual{
  position:relative;
  min-height:420px;
  display:flex;
  align-items:flex-end;
  background:
    linear-gradient(90deg, rgba(6,12,24,.68) 0%, rgba(9,18,36,.42) 34%, rgba(10,18,34,.18) 58%, rgba(10,18,34,.12) 100%),
    url('assets/images/lecture_banner_microphone.jpg') center center / cover no-repeat;
  overflow:hidden;
}
.sub-hero-lecture-visual .sub-hero-overlay{
  position:absolute;
  inset:0;
  background:linear-gradient(180deg, rgba(255,255,255,.02) 0%, rgba(7,14,28,.10) 100%);
}
.sub-hero-lecture-visual .sub-hero-inner{
  position:relative;
  z-index:2;
  max-width:760px;
  padding:0 0 56px;
}
.sub-hero-lecture-visual .eyebrow{
  color:#e6f0ff;
  margin-bottom:14px;
}
.sub-hero-lecture-visual h1{
  color:#ffffff;
  margin-bottom:14px;
  text-shadow:0 3px 18px rgba(0,0,0,.28);
}
.sub-hero-lecture-visual p:last-child{
  color:rgba(255,255,255,.94);
  max-width:680px;
  text-shadow:0 2px 10px rgba(0,0,0,.22);
}
@media(max-width:900px){
  .sub-hero-lecture-visual{min-height:340px;background-position:center center}
  .sub-hero-lecture-visual .sub-hero-inner{padding:0 0 42px}
}
@media(max-width:680px){
  .sub-hero-lecture-visual{min-height:280px;background-position:center center}
  .sub-hero-lecture-visual .sub-hero-inner{padding:0 0 34px}
}


/* 게시판 배너 - 새 포스트잇 사진 풀배너 */
.sub-hero-board-cork{
  position:relative;
  min-height:400px;
  display:block;
  background:url('assets/images/board_banner_wall_notes.jpg') center center / cover no-repeat;
  overflow:hidden;
}
.sub-hero-board-cork .sub-hero-overlay,
.sub-hero-board-cork .sub-hero-inner,
.sub-hero-board-cork .eyebrow,
.sub-hero-board-cork h1{
  display:none;
}
@media(max-width:900px){
  .sub-hero-board-cork{min-height:330px;background-position:center center}
}
@media(max-width:680px){
  .sub-hero-board-cork{min-height:250px;background-position:center center}
}



/* 상담신청 배너 - 우측 작은 상담 사진 + 좌측 그라데이션 */
.sub-hero-inquiry-consulting{
  position:relative;
  padding:0;
  border-bottom:1px solid #dce9ec;
  background:linear-gradient(90deg,#f7fbfd 0%,#eef5f7 42%,#edf4f6 64%,#f5f1e8 100%);
  overflow:hidden;
}
.sub-hero-inquiry-wrap{
  display:grid;
  grid-template-columns:minmax(0,1.35fr) minmax(250px,340px);
  gap:56px;
  align-items:center;
  min-height:320px;
  padding:42px 0;
}
.sub-hero-inquiry-consulting .sub-hero-inner{
  max-width:760px;
}
.sub-hero-inquiry-consulting .sub-hero-inner .eyebrow{
  color:#2667d8;
  margin-bottom:14px;
}
.sub-hero-inquiry-consulting .sub-hero-inner h1{
  margin-bottom:16px;
}
.sub-hero-inquiry-consulting .sub-hero-inner p:last-child{
  max-width:760px;
  line-height:1.75;
}
.sub-hero-inquiry-visual{
  display:flex;
  justify-content:flex-end;
  align-items:center;
}
.sub-hero-inquiry-visual img{
  width:100%;
  max-width:320px;
  aspect-ratio:4/5;
  object-fit:cover;
  object-position:center;
  border-radius:18px;
  box-shadow:0 14px 32px rgba(17,42,66,.12);
  background:#fff;
}
@media(max-width:900px){
  .sub-hero-inquiry-wrap{
    grid-template-columns:1fr;
    gap:26px;
    min-height:auto;
    padding:40px 0;
  }
  .sub-hero-inquiry-visual{
    justify-content:center;
  }
  .sub-hero-inquiry-visual img{
    max-width:300px;
  }
}
@media(max-width:680px){
  .sub-hero-inquiry-wrap{
    padding:34px 0;
  }
  .sub-hero-inquiry-visual img{
    max-width:260px;
    border-radius:16px;
  }
}
@media(max-width:680px){.learning-switcher-wrap{padding:14px 0}.learning-switcher a{padding:9px 14px;font-size:15px}}


/* 2026-09-06 요청 수정: 학습법 상세 본문 가독성만 조정 */
.method-content .practice-section > p{
  max-width:62ch;
  line-height:1.85;
  word-break:keep-all;
}
.method-content .practice-item > div:last-child{
  max-width:62ch;
}
.method-content .practice-item p{
  max-width:62ch;
  line-height:1.85;
  word-break:keep-all;
}
.method-content .principle-card p{
  max-width:34ch;
  line-height:1.75;
  word-break:keep-all;
}
@media(max-width:850px){
  .method-content .practice-section > p,
  .method-content .practice-item > div:last-child,
  .method-content .practice-item p,
  .method-content .principle-card p{
    max-width:100%;
  }
}


.learning-step-nav{padding:20px 0 0;background:#fff}
.learning-step-nav .method-tabs{margin-top:0}


/* 2026-09-06 요청 수정: 소장 연락처와 학습성공 프로세스만 조정 */
#director .director-profile{
  width:100%;
  max-width:380px;
  justify-self:center;
}
#director .director-profile img{
  display:block;
  width:100%;
  height:auto;
  object-fit:contain;
}
#director .director-contact{
  display:flex;
  align-items:center;
  justify-content:center;
  gap:13px;
  margin-top:15px;
  padding-top:13px;
  border-top:1px solid #e1e9ed;
  color:#456276;
  font-size:14px;
  line-height:1.4;
  white-space:nowrap;
}
#director .director-contact a{
  color:#456276;
  text-decoration:none;
}
#director .director-contact a:hover{color:#16845f}
#director .director-contact-divider{
  width:1px;
  height:14px;
  background:#cbd9df;
}
.success-process .steps{
  grid-template-columns:repeat(4,minmax(0,1fr));
}
@media(max-width:900px){
  #director .director-profile{max-width:340px}
  .success-process .steps{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:680px){
  #director .director-profile{max-width:290px}
  #director .director-contact{
    flex-direction:column;
    gap:5px;
    white-space:normal;
  }
  #director .director-contact-divider{display:none}
  .success-process .steps{grid-template-columns:1fr}
}


/* 2026-09-06 프로그램 공통 상단 하위메뉴 */
.program-switcher-wrap{
  background:#fff;
  border-bottom:1px solid #dce9ec;
  padding:15px 0;
}
.program-switcher{
  display:flex;
  gap:8px;
  flex-wrap:wrap;
}
.program-switcher a{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:38px;
  padding:8px 15px;
  border:1px solid #c9dce3;
  border-radius:999px;
  background:#fff;
  color:#35566e;
  text-decoration:none;
  font-size:14px;
  font-weight:800;
  letter-spacing:-.02em;
  transition:background .18s ease,border-color .18s ease,color .18s ease,box-shadow .18s ease;
}
.program-switcher a:hover{
  border-color:#9fc2cf;
  background:#f6fbfd;
}
.program-switcher a.active{
  background:#1f8d50;
  color:#fff;
  border-color:#1f8d50;
  box-shadow:0 6px 14px rgba(31,141,80,.14);
}
@media(max-width:680px){
  .program-switcher-wrap{padding:12px 0}
  .program-switcher{gap:7px}
  .program-switcher a{font-size:13px;padding:7px 12px;min-height:36px}
}


/* 연구소 소개: 비전 · 미션 · 공유가치 */
.institute-purpose{padding-top:18px}
.purpose-head{max-width:760px;margin-bottom:30px}
.purpose-head h2{margin:0 0 12px;font-size:34px;line-height:1.28;letter-spacing:-.035em;color:#173b59}
.purpose-head>p:last-child{max-width:62ch;margin:0;color:#5a7082;line-height:1.8;word-break:keep-all}
.purpose-primary-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin-bottom:18px}
.purpose-card{min-height:210px;padding:30px;border:1px solid #d8e5e8;border-radius:16px;background:#f8fbfc}
.purpose-card-vision{
  background:linear-gradient(135deg,#176b78 0%,#1e8190 100%);
  border-color:#176b78;
  color:#fff;
}
.purpose-label{display:inline-block;margin-bottom:18px;font-size:11px;font-weight:800;letter-spacing:.15em;color:#17824d}
.purpose-card-vision .purpose-label{color:#8ee0b2}
.purpose-card h3{max-width:21ch;margin:0;font-size:25px;line-height:1.48;letter-spacing:-.035em;word-break:keep-all;color:#173b59}
.purpose-card-vision h3{color:#fff}
.purpose-card-mission{
  background:linear-gradient(135deg,#173a5a 0%,#102f4b 100%);
  border-color:#173a5a;
  color:#fff;
}
.purpose-card-mission .purpose-label{color:#8ee0b2}
.purpose-card-mission h3{color:#fff}
.purpose-card-mission p{color:#f4f8fa}
.purpose-card p{max-width:48ch;margin:14px 0 0;font-size:15px;line-height:1.8;color:#617789;word-break:keep-all}
.shared-values-block{padding:28px 30px 30px;border:1px solid #d8e5e8;border-radius:16px;background:#fff}
.shared-values-title{display:flex;align-items:baseline;gap:14px;margin-bottom:22px}
.shared-values-title .purpose-label{margin:0}
.shared-values-title h3{margin:0;font-size:24px;letter-spacing:-.03em;color:#173b59}
.shared-values-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:12px}
.shared-values-grid article{padding:18px 16px;border-top:2px solid #1f8d50;background:#f8fbfa}
.shared-values-grid strong{display:block;margin-bottom:9px;font-size:17px;color:#173b59}
.shared-values-grid p{margin:0;font-size:14px;line-height:1.68;color:#617789;word-break:keep-all}
@media(max-width:960px){.shared-values-grid{grid-template-columns:repeat(2,1fr)}.purpose-primary-grid{grid-template-columns:1fr}}
@media(max-width:680px){.purpose-head h2{font-size:28px}.purpose-card{min-height:auto;padding:24px}.purpose-card h3{font-size:22px}.shared-values-block{padding:22px 20px}.shared-values-grid{grid-template-columns:1fr}.shared-values-title{display:block}.shared-values-title .purpose-label{margin-bottom:8px}}


/* 2026-09-06 공부루틴 - 박의석 소장 부모님께 드리는 글 */
.routine-letter-preview{
  padding:46px 0 8px;
  background:#fff;
}
.routine-letter-box{
  max-width:1040px;
  padding:34px 38px;
  border:1px solid #dce7eb;
  border-radius:18px;
  background:#fbfdfe;
}
.routine-letter-box .eyebrow{
  margin:0 0 10px;
  color:#168b50;
  font-size:12px;
  font-weight:800;
  letter-spacing:.08em;
}
.routine-letter-box>h2{
  max-width:760px;
  margin:0 0 12px;
  color:#173b59;
  font-size:28px;
  line-height:1.4;
  letter-spacing:-.035em;
  word-break:keep-all;
}
.routine-letter-intro{
  max-width:720px;
  margin:0;
  color:#5a7081;
  font-size:15px;
  line-height:1.8;
  word-break:keep-all;
}
.routine-letter-details{
  margin-top:22px;
}
.routine-letter-details summary{
  width:max-content;
  cursor:pointer;
  list-style:none;
  display:inline-flex;
  align-items:center;
  gap:8px;
  min-height:42px;
  padding:9px 16px;
  border:1px solid #bdd4dd;
  border-radius:999px;
  background:#fff;
  color:#173b59;
  font-size:14px;
  font-weight:800;
}
.routine-letter-details summary::-webkit-details-marker{display:none}
.routine-letter-details .close-label{display:none}
.routine-letter-details[open] .open-label{display:none}
.routine-letter-details[open] .close-label{display:inline}
.routine-letter-details[open] summary span[aria-hidden="true"]{transform:rotate(45deg)}
.routine-letter-body{
  max-width:760px;
  padding:30px 0 2px;
  color:#405a6c;
  font-size:15px;
  line-height:1.9;
  word-break:keep-all;
}
.routine-letter-body h3{
  margin:34px 0 12px;
  color:#173b59;
  font-size:20px;
  line-height:1.45;
  letter-spacing:-.025em;
}
.routine-letter-body h3:first-child{margin-top:0}
.routine-letter-body p{margin:0 0 15px}
.routine-letter-body ul{
  margin:12px 0 20px;
  padding-left:20px;
}
.routine-letter-body li{margin:6px 0}
.routine-learning-flow{
  display:grid;
  grid-template-columns:repeat(4,1fr);
  gap:10px;
  margin:20px 0 24px;
}
.routine-learning-flow div{
  padding:16px 14px;
  border:1px solid #d8e5e9;
  border-radius:12px;
  background:#fff;
}
.routine-learning-flow strong{
  display:block;
  margin-bottom:5px;
  color:#168b50;
}
.routine-learning-flow span{
  display:block;
  font-size:13px;
  line-height:1.55;
}
.routine-quote-grid{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:10px;
  margin:18px 0 20px;
}
.routine-quote-grid p{
  padding:15px;
  border-radius:12px;
  background:#f3f8fa;
  font-size:14px;
}
.routine-quote-grid strong{
  display:block;
  margin-bottom:5px;
  color:#173b59;
}
.routine-steps{
  list-style:none;
  padding:0;
  margin:18px 0 22px;
  display:flex;
  flex-wrap:wrap;
  gap:8px;
}
.routine-steps li{
  display:flex;
  align-items:center;
  gap:7px;
  padding:10px 13px;
  border:1px solid #d8e5e9;
  border-radius:10px;
  background:#fff;
  font-size:13px;
}
.routine-steps b{color:#168b50}
.routine-letter-sign{
  margin-top:30px;
  padding-top:22px;
  border-top:1px solid #dce7eb;
}
.routine-letter-sign strong,
.routine-letter-sign span{
  display:block;
}
.routine-letter-sign strong{
  color:#173b59;
  font-size:16px;
}
.routine-letter-sign span{
  margin-top:7px;
  color:#667b8b;
  font-size:13px;
}
.routine-letter-sign a{
  display:inline-block;
  margin-top:15px;
  color:#168b50;
  font-weight:800;
  text-decoration:none;
}
@media(max-width:760px){
  .routine-letter-preview{padding:28px 0 4px}
  .routine-letter-box{padding:25px 22px;border-radius:14px}
  .routine-letter-box>h2{font-size:23px}
  .routine-learning-flow,.routine-quote-grid{grid-template-columns:1fr 1fr}
}
@media(max-width:520px){
  .routine-learning-flow,.routine-quote-grid{grid-template-columns:1fr}
}


/* 2026-09-06 공부루틴 대표영역 재구성
   제목을 상단에 두고, 아래를 편지 칼럼 + 조깅 이미지 2단으로 정리 */
.routine-feature{
  padding:54px 0 64px;
  background:#fff;
}
.routine-feature-heading{
  max-width:780px;
  margin-bottom:34px;
}
.routine-feature-heading .eyebrow{
  margin:0 0 10px;
  color:#1468c7;
  font-size:12px;
  font-weight:800;
  letter-spacing:.09em;
}
.routine-feature-heading h2{
  margin:0 0 14px;
  color:#173b59;
  font-size:32px;
  line-height:1.36;
  letter-spacing:-.04em;
  word-break:keep-all;
}
.routine-feature-heading>p:last-child{
  max-width:720px;
  margin:0;
  color:#587084;
  font-size:15px;
  line-height:1.85;
  word-break:keep-all;
}
.routine-feature-grid{
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(420px,.95fr);
  gap:44px;
  align-items:stretch;
}
.routine-letter-column{
  padding:30px 32px 28px;
  border:1px solid #dce7eb;
  background:#fff;
}
.routine-letter-author{
  display:flex;
  align-items:center;
  gap:13px;
  margin-bottom:22px;
}
.routine-letter-author img{
  width:58px;
  height:58px;
  border-radius:50%;
  object-fit:cover;
  object-position:center 20%;
  flex:none;
}
.routine-letter-author span,
.routine-letter-author small{
  display:block;
}
.routine-letter-author span{
  color:#173b59;
  font-size:14px;
  font-weight:800;
}
.routine-letter-author small{
  margin-top:3px;
  color:#718695;
  font-size:12px;
}
.routine-letter-kicker{
  margin:0 0 9px;
  color:#168b50;
  font-size:12px;
  font-weight:800;
}
.routine-letter-column>h3{
  max-width:650px;
  margin:0 0 12px;
  color:#173b59;
  font-size:24px;
  line-height:1.45;
  letter-spacing:-.035em;
  word-break:keep-all;
}
.routine-letter-column>.routine-letter-intro{
  max-width:650px;
  margin:0;
  color:#5d7181;
  font-size:14px;
  line-height:1.8;
  word-break:keep-all;
}
.routine-letter-column .routine-letter-details{
  margin-top:20px;
}
.routine-letter-column .routine-letter-details summary{
  border:0;
  border-radius:0;
  padding:0 0 4px;
  min-height:auto;
  background:transparent;
  color:#173b59;
  border-bottom:1px solid #173b59;
}
.routine-feature-visual{
  margin:0;
  min-height:100%;
}
.routine-feature-visual img{
  width:100%;
  height:100%;
  min-height:360px;
  max-height:470px;
  object-fit:cover;
  object-position:center;
  display:block;
}
.routine-letter-column .routine-letter-body{
  max-width:100%;
  padding-top:28px;
}
@media(max-width:920px){
  .routine-feature-grid{
    grid-template-columns:1fr;
    gap:28px;
  }
  .routine-feature-visual img{
    max-height:none;
    min-height:320px;
  }
}
@media(max-width:680px){
  .routine-feature{
    padding:38px 0 48px;
  }
  .routine-feature-heading{
    margin-bottom:26px;
  }
  .routine-feature-heading h2{
    font-size:27px;
  }
  .routine-letter-column{
    padding:24px 22px;
  }
  .routine-letter-column>h3{
    font-size:21px;
  }
  .routine-letter-author img{
    width:52px;
    height:52px;
  }
}


/* 2026-09-06 공부루틴 편지 전문 하단 접기 버튼 */
.routine-letter-bottom-close{
  margin-top:24px;
  padding-top:18px;
  border-top:1px solid #e1e9ed;
}
.routine-letter-bottom-close button{
  appearance:none;
  border:0;
  background:transparent;
  padding:0 0 4px;
  border-bottom:1px solid #173b59;
  color:#173b59;
  font:inherit;
  font-size:14px;
  font-weight:800;
  cursor:pointer;
}
