:root{--violet:#991b2f;--deep:#0c1f33;--ink:#172334;--wash:#fbf7ef;--line:#eadfce;--accent:#c9a24a}
.site-header{background:rgba(8,28,47,.96);border-bottom:1px solid rgba(218,178,86,.3);color:#fff}
.brand-lockup{display:flex;align-items:center;gap:10px;letter-spacing:0}
.brand-lockup>img{width:61px;height:43px;object-fit:cover;object-position:center;mix-blend-mode:screen;border-radius:8px}
.brand-type{display:flex;flex-direction:column;line-height:1}
.brand-type strong{font-family:Georgia,"Times New Roman",serif;font-size:18px;letter-spacing:.075em;color:#e5c16e}
.brand-type strong em{font-style:normal;color:#c12b42}
.brand-type small{font-size:9px;letter-spacing:.42em;color:#d9c79f;margin-top:6px;font-weight:500}
nav a:hover{color:#e2bd67}.nav-cta{background:linear-gradient(135deg,#a91f36,#761022);border:1px solid #ce9e53}.menu-btn span{background:#e5c16e}
.site-header nav{gap:22px}.header-actions{display:flex;align-items:center;gap:9px}.header-icon{width:42px;height:42px;display:grid;place-items:center;border-radius:13px;flex:0 0 42px;box-shadow:0 6px 16px rgba(0,0,0,.2)}.header-icon svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.9;stroke-linecap:round;stroke-linejoin:round}.header-phone,.header-phone:hover{background:#21181d;color:#e4b850;border:1px solid #b7862e}.header-sms,.header-sms:hover{background:#0c978d;color:#fff;border:1px solid #2ab6aa}.header-consult{position:relative;padding-top:10px}.header-consult small{position:absolute;left:50%;top:-12px;transform:translateX(-50%);color:#e4b850;font-size:10px;font-weight:800;line-height:1;white-space:nowrap}.header-consult .nav-cta{display:flex;align-items:center;justify-content:center;min-height:44px;padding:0 20px;box-shadow:0 6px 16px rgba(0,0,0,.2)}
.hero h1 em,.eyebrow{color:#a91f36}.btn.primary{background:linear-gradient(135deg,#a91f36,#761022);border-color:#a91f36;box-shadow:0 10px 30px rgba(140,20,42,.23)}.btn.primary:hover{background:#741022}.btn.ghost:hover,.alt-links a:hover{border-color:#a91f36;color:#a91f36}.trust li:before,summary span{color:#c19845}.image-frame{background:#f5ead6}
.steps article.featured{background:linear-gradient(145deg,#ad243b,#761022);border-color:#ce9e53}.steps article:hover{border-color:#c49b4b}.course-link{display:inline-flex;align-items:center;justify-content:center;gap:8px;margin-top:8px;padding:11px 17px!important;border:1px solid #d6b35d!important;border-radius:999px;background:linear-gradient(135deg,#79500f 0%,#b78322 48%,#8a5d12 100%)!important;color:#fff8e8!important;box-shadow:inset 0 1px 0 rgba(255,240,190,.38),0 8px 20px rgba(0,0,0,.28);transition:transform .2s ease,filter .2s ease,box-shadow .2s ease}.course-link i{color:#f6df9b}.course-link:hover{transform:translateY(-2px);filter:brightness(1.12);box-shadow:inset 0 1px 0 rgba(255,245,210,.45),0 11px 26px rgba(0,0,0,.34)}.mobile-bar a:last-child{background:linear-gradient(135deg,#a91f36,#761022)}footer{background:#071522}.brand.inverse .brand-type strong{color:#e8c876}
@media(max-width:900px){nav{background:#0c1f33;border-color:#4d4034}.site-header .brand-lockup>img{width:50px;height:35px}.brand-type strong{font-size:15px}.brand-type small{font-size:8px}.header-actions{display:grid;grid-template-columns:48px 48px minmax(0,1fr);gap:10px;margin-top:10px}.header-icon{width:48px;height:48px;flex-basis:48px}.header-consult{padding-top:14px}.header-consult small{top:0}.header-consult .nav-cta{min-height:48px;padding:0 12px}}
.hero{grid-template-columns:.92fr 1.08fr;max-width:1240px;text-align:left;justify-items:stretch;gap:58px}
.hero-copy{max-width:660px}.hero-photo{position:relative}.hero-photo:before{content:"";position:absolute;inset:-14px 18px 18px -14px;border:1px solid #d9b96f;border-radius:34px;z-index:-1}.hero-photo img{display:block;width:100%;height:auto;aspect-ratio:3/2;object-fit:cover;object-position:center;border-radius:30px;box-shadow:0 24px 70px rgba(12,31,51,.2)}
@media(max-width:900px){.hero{grid-template-columns:1fr;gap:45px}.hero-copy{max-width:760px}.hero-photo{width:100%;max-width:760px}}
body{overflow-x:hidden}h1,h2,h3,p,summary{word-break:keep-all;overflow-wrap:break-word}
@media(max-width:620px){
  html{scroll-padding-top:70px}.site-header{padding-left:16px;padding-right:14px}
  .brand-lockup{gap:7px}.site-header .brand-lockup>img{width:44px;height:31px;border-radius:5px}.brand-type strong{font-size:13px;letter-spacing:.045em}.brand-type small{font-size:7px;letter-spacing:.32em;margin-top:4px}
  .hero{min-height:auto;padding:48px 18px 76px;gap:36px}.hero h1{font-size:clamp(40px,12vw,48px);line-height:1.1;letter-spacing:-.055em}.hero .lead{font-size:16px;line-height:1.75;margin:22px 0 26px;max-width:34em}.hero-actions{display:grid;grid-template-columns:1fr;gap:10px}.hero-actions .btn{width:100%;min-height:52px}.trust{display:flex;flex-wrap:wrap;justify-content:flex-start;column-gap:15px;row-gap:7px;margin-top:22px}.trust li{white-space:nowrap}
  .hero-photo:before{inset:-8px 10px 10px -8px;border-radius:24px}.hero-photo img{height:auto;min-height:0;max-height:none;aspect-ratio:3/2;border-radius:22px;object-position:center center}
  .section-head{text-align:left;margin-bottom:34px}.section h2{font-size:clamp(31px,9vw,40px);line-height:1.25}.section-head>p:last-child{line-height:1.75}
  .steps{gap:10px}.steps article{padding:22px 20px}.steps article h3{font-size:18px}.steps article p{font-size:14px;line-height:1.7}
  .course-top{gap:24px;margin-bottom:28px}.filters{margin-left:-18px;margin-right:-18px;width:calc(100% + 36px);padding:0 18px 10px;scrollbar-width:none}.filters::-webkit-scrollbar{display:none}.filters button{min-height:42px}.course-grid{gap:14px}.course-card>div{padding:20px}.course-card p{min-height:auto;line-height:1.7}.course-link{min-height:44px}
  .contact{gap:58px}.accordion{margin-top:26px}summary{padding:19px 0;font-size:15px;line-height:1.55}details p{padding-right:16px;line-height:1.75}.form-card{border-radius:24px}.form-card h2{font-size:33px}.form-card input,.form-card select,.form-card textarea{font-size:16px;min-height:50px}.alt-links{display:grid;gap:6px}.alt-links a{padding:8px 0}
  footer{gap:16px}footer .brand-lockup>img{width:54px;height:38px}footer div{flex-wrap:wrap}.mobile-bar{grid-template-columns:.82fr 1.18fr}.mobile-bar a{white-space:nowrap}
}
@media(max-width:380px){.hero h1{font-size:39px}.trust{font-size:11px;column-gap:10px}.section h2{font-size:30px}.form-card h2{font-size:30px}}
.hero{grid-template-columns:.92fr 1.08fr;text-align:left;justify-items:stretch}
.hero-copy{max-width:660px}.hero .lead{margin-left:0;margin-right:0}.hero-actions{justify-content:flex-start}.hero .trust{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));width:100%;column-gap:14px;row-gap:10px}.hero .trust li{min-width:0;white-space:normal;line-height:1.5}
@media(max-width:900px){.hero{grid-template-columns:1fr}.hero-copy{max-width:760px}}
@media(max-width:620px){.hero{text-align:left;justify-items:stretch}.hero-copy{max-width:none}.hero .lead{margin-left:0;margin-right:0}.hero-actions,.hero .trust{justify-content:flex-start}}

/* 5단계 학습 카드 색상 구분 */
.steps article{color:#fff;box-shadow:0 14px 34px rgba(0,0,0,.16)}
.steps article:nth-child(1){background:linear-gradient(145deg,#235da8,#173b70);border-color:#4c83c9}
.steps article:nth-child(2){background:linear-gradient(145deg,#168579,#0c5f59);border-color:#43aa9e}
.steps article:nth-child(3){background:linear-gradient(145deg,#b4233b,#811326);border-color:#d2a84e}
.steps article:nth-child(4){background:linear-gradient(145deg,#7548a8,#4f2d7b);border-color:#9871c6}
.steps article:nth-child(5){background:linear-gradient(145deg,#b8671a,#81440e);border-color:#d9944e}
.steps article b,.steps article.featured b{color:rgba(255,255,255,.58)}
.steps article span,.steps article.featured span{color:rgba(255,255,255,.74)}
.steps article p,.steps article.featured p{color:rgba(255,255,255,.86)}
.steps article:hover{border-color:#fff;box-shadow:0 18px 42px rgba(0,0,0,.25)}

/* 빠른 상담 채널 */
.consult-channels{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-top:22px}
.consult-channel{min-width:0;display:flex;align-items:center;gap:11px;padding:14px 12px;border:1px solid var(--line);border-radius:16px;background:#fff;color:var(--ink);transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease}
.consult-channel:hover{transform:translateY(-2px);box-shadow:0 10px 24px rgba(12,31,51,.11)}
.consult-channel>span:last-child{min-width:0;display:flex;flex-direction:column;gap:3px}
.consult-channel strong{font-size:14px;line-height:1.25;white-space:nowrap}
.consult-channel small{font-size:10px;line-height:1.35;color:#6d7480;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.channel-icon{flex:0 0 40px;width:40px;height:40px;display:grid;place-items:center;border-radius:13px;color:#fff;box-shadow:0 5px 13px rgba(12,31,51,.14)}
.channel-icon svg{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.consult-channel.phone{border-color:#dec998}.consult-channel.phone .channel-icon{background:#21181d;color:#e4b850;border:1px solid #b7862e}
.consult-channel.sms{border-color:#b9d9d5}.consult-channel.sms .channel-icon{background:#0c978d;color:#fff;border:1px solid #2ab6aa}
.consult-channel.chat{border-color:#ded7c0}.consult-channel.chat .channel-icon{background:#fee500;color:#3b1e1e}
.channel-icon .kakao-icon{fill:currentColor;stroke:none}
.branches{max-width:none;padding-left:max(24px,calc((100vw - 1240px)/2));padding-right:max(24px,calc((100vw - 1240px)/2));background:#f8f3f3}
.branches-head{max-width:620px;margin-bottom:34px}.branches-head h2{font-size:clamp(42px,5vw,64px)}.branches-head>p:last-child{margin:16px 0 0;color:#655e66;font-size:17px}
.branch-grid,.branch-actions{display:grid;grid-template-columns:1fr 1fr;gap:14px}.branch-card{min-height:168px;padding:26px 28px;background:#fff;border:1px solid #ead6da;border-radius:22px}.branch-card>span{display:block;color:#aa1e36;font-size:13px;font-weight:800;margin-bottom:13px}.branch-card h3{margin:0 0 12px;font-size:21px;color:#172334}.branch-card p,.branch-card address{margin:0;color:#675f68;font-size:15px;font-style:normal;line-height:1.7}.branch-actions{margin-top:18px}.branch-btn{display:flex;align-items:center;justify-content:center;min-height:56px;border-radius:14px;color:#fff;font-weight:800;transition:transform .2s ease,box-shadow .2s ease}.branch-btn:hover{transform:translateY(-2px);box-shadow:0 10px 24px rgba(12,31,51,.15)}.branch-btn.primary{background:linear-gradient(135deg,#b31833,#831124)}.branch-btn.chat{background:#24181d;border:1px solid #c29a43}
.mobile-bar svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.9;stroke-linecap:round;stroke-linejoin:round}
.mobile-bar a{display:flex;align-items:center;justify-content:center;gap:7px}
.mobile-bar .mobile-phone{background:#21181d;color:#e4b850}.mobile-bar .mobile-sms{background:#0c978d;color:#fff}.mobile-bar .mobile-chat{background:#fee500;color:#3b1e1e}.mobile-bar .kakao-icon{fill:currentColor;stroke:none}
@media(max-width:760px){.consult-channels{grid-template-columns:1fr}.consult-channel{padding:13px 14px}.consult-channel small{font-size:11px}.mobile-bar{grid-template-columns:repeat(3,1fr)}.mobile-bar a{flex-direction:column;gap:2px;font-size:11px;line-height:1.15;padding:7px 3px}.mobile-bar svg{width:19px;height:19px}}
@media(max-width:620px){.branches{padding-left:18px;padding-right:18px}.branches-head{margin-bottom:26px}.branches-head>p:last-child{font-size:15px;line-height:1.8}.branch-grid,.branch-actions{grid-template-columns:1fr}.branch-card{min-height:0;padding:22px 20px}.branch-actions{gap:10px}.branch-btn{min-height:54px}}
@media(max-width:620px){
  body{font-size:16px}.hero-copy,.hero-photo,.form-card{width:100%}
  .hero h1{max-width:100%;font-size:clamp(38px,11.5vw,47px);line-height:1.12;letter-spacing:-.06em}.hero .lead{word-break:keep-all;overflow-wrap:break-word}
  .section h2{letter-spacing:-.045em}.section-head>p:last-child,.branches-head>p:last-child,.branch-card p,.branch-card address,details p,.form-card>p:not(.eyebrow),footer p,footer address{word-break:keep-all;overflow-wrap:break-word}
  .steps article p,.course-card p{font-size:14px;line-height:1.75}.course-card h3,.branch-card h3{line-height:1.35}
  .form-card label{font-size:14px}.form-card textarea{min-height:92px}
  footer p,footer address{font-size:13px;line-height:1.75}
}
