:root{
  --primary:#1557d6;
  --primary-dark:#0d43ab;
  --teal:#27c5c4;
  --navy:#102542;
  --text:#20262e;
  --muted:#626d78;
  --line:#e2e6ea;
  --soft:#f5f8fa;
  --white:#fff;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;font-family:"Noto Sans KR","Malgun Gothic",Arial,sans-serif;color:var(--text);background:#fff;line-height:1.75}
img{display:block;max-width:100%}
a{color:inherit}
.container{width:min(1120px,calc(100% - 40px));margin:0 auto}
.narrow{max-width:860px}
.hero{position:relative;overflow:hidden;padding:0 0 74px;background:#dff7f6}
.hero-photo{position:relative;width:100%;height:445px;overflow:hidden}
.hero-photo img{width:100%;height:100%;object-fit:cover;object-position:center 45%}
.hero-photo-overlay{position:absolute;inset:0;background:linear-gradient(90deg,rgba(5,28,40,.72) 0%,rgba(5,28,40,.38) 42%,rgba(5,28,40,.05) 72%),linear-gradient(0deg,rgba(5,28,40,.35),transparent 55%)}
.hero-inner{position:relative;margin-top:0;z-index:2}
.hero-copy-wrap{position:absolute;left:0;top:-355px;color:#fff;text-align:left;width:min(690px,100%);padding:0;text-shadow:0 2px 12px rgba(0,0,0,.25)}
.eyebrow{margin:0 0 13px;font-size:21px;font-weight:700;letter-spacing:-.8px}
.hero h1{margin:0;font-size:clamp(35px,5vw,58px);line-height:1.25;letter-spacing:-2.7px}
.hero h1 strong{font-weight:800}
.hero-copy{margin:20px 0 0;font-size:18px;line-height:1.65}
.form-card{width:min(940px,100%);margin:40px auto 0;background:#fff;border:3px solid #40c8c8;border-radius:5px;padding:38px 48px 30px;box-shadow:0 16px 45px rgba(0,0,0,.12)}
.form-heading{text-align:center;margin-bottom:25px}.form-heading h2{margin:0 0 5px;font-size:25px;letter-spacing:-1px}.form-heading p{margin:0;color:var(--muted);font-size:14px}
.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px 34px}
.form-grid label{display:flex;align-items:center;gap:16px}
.form-grid label>span:first-child{min-width:84px;font-weight:600;font-size:15px}.form-grid label b{color:#e5484d}
.form-grid input,.form-grid select,.form-grid textarea{width:100%;height:48px;border:1px solid #d4d8de;border-radius:4px;padding:0 13px;background:#fff;font-size:14px;color:var(--text);font-family:inherit}
.form-grid textarea{height:96px;padding:11px 13px;resize:vertical;line-height:1.55}
.form-grid input::placeholder,.form-grid textarea::placeholder{color:#b4bac1}
.form-grid input:focus,.form-grid select:focus,.form-grid textarea:focus{outline:2px solid rgba(21,87,214,.18);border-color:var(--primary)}
.textarea-field{align-items:flex-start!important}.textarea-field>span:first-child{padding-top:12px}
.contact-time-field{align-items:center!important}
.inline-field{display:flex;width:100%}.inline-field input{border-radius:4px 0 0 4px}.suffix{min-width:45px;display:grid;place-items:center;border:1px solid #d4d8de;border-left:0;border-radius:0 4px 4px 0}
.agreements{margin:28px 0 24px;border-top:1px solid var(--line);padding-top:18px}
.agreement-row{display:flex;justify-content:space-between;align-items:center;min-height:38px}
.check{display:flex;gap:9px;align-items:center;font-size:14px}.check input{width:16px;height:16px;accent-color:var(--primary)}
.detail-btn{border:1px solid #9da4ac;background:#fff;border-radius:999px;padding:3px 15px;cursor:pointer;font-size:12px}
.submit-btn{display:block;width:100%;border:0;border-radius:999px;background:var(--primary);color:#fff;font-size:23px;font-weight:700;padding:17px;cursor:pointer}
.submit-btn:hover{background:var(--primary-dark)}.submit-btn:disabled{opacity:.65;cursor:wait}
.form-note{margin:11px 0 0;text-align:center;font-size:12px;color:#7b838c}.form-message{min-height:24px;margin:8px 0 0;text-align:center;font-weight:600;font-size:14px}
.section{padding:98px 0}.section.soft{background:var(--soft)}.section h2{margin:0 0 22px;font-size:clamp(28px,3.5vw,42px);letter-spacing:-1.8px;line-height:1.3}
.section p{color:#505b65}.section .lead{font-size:18px;max-width:850px}.section-kicker{margin:0 0 11px!important;color:var(--primary)!important;font-weight:800;font-size:13px;letter-spacing:2px}
.section-heading{margin-bottom:38px}.section-heading.light h2,.section-heading.light p{color:#fff}.section-heading.light .section-kicker{color:#76e3dd!important}
.intro-grid,.image-text-grid,.income-grid{display:grid;grid-template-columns:1fr 1fr;gap:65px;align-items:center}
.image-card{margin:0;border-radius:18px;overflow:hidden;background:#eef2f4;box-shadow:0 14px 36px rgba(0,0,0,.09)}
.image-card img{width:100%;height:420px;object-fit:cover}.image-card-large img{height:460px}
.image-card figcaption{padding:13px 17px;background:#fff;color:#69747e;font-size:13px}
.feature-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.feature-card{background:#fff;border:1px solid var(--line);border-radius:16px;padding:29px;box-shadow:0 8px 25px rgba(24,43,61,.04)}
.feature-number{font-size:13px;font-weight:800;color:var(--primary);margin-bottom:20px}.feature-card h3{margin:0 0 9px;font-size:20px}.feature-card p{margin:0;font-size:14px}
.age-section{background:#fff}.check-list{margin-top:25px;border-top:1px solid var(--line)}
.check-list div{display:grid;grid-template-columns:28px 100px 1fr;gap:8px;padding:14px 0;border-bottom:1px solid var(--line);align-items:center}
.check-list span{color:#159d92;font-weight:900}.check-list b{font-size:15px}.check-list em{font-style:normal;color:var(--muted);font-size:14px}
.work-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;margin-top:35px}
.work-card{background:#fff;border:1px solid var(--line);border-radius:15px;overflow:hidden;box-shadow:0 8px 25px rgba(24,43,61,.04)}
.work-card img{width:100%;height:185px;object-fit:cover}.work-card>div{padding:20px}.work-card span{font-size:12px;font-weight:800;color:var(--primary)}.work-card h3{margin:7px 0 7px;font-size:18px}.work-card p{margin:0;font-size:13px}
.small-note{font-size:12px;margin-top:15px}
.income-section{background:#fff}.factor-list{margin-top:30px;border-top:1px solid var(--line)}.factor-list div{display:grid;grid-template-columns:175px 1fr;padding:17px 0;border-bottom:1px solid var(--line)}.factor-list b{font-size:15px}.factor-list span{color:var(--muted)}
.dark{background:var(--navy);color:#fff}.dark h2,.dark p{color:#fff}.timeline{display:grid;grid-template-columns:repeat(5,1fr);gap:13px;margin:40px 0}.timeline>div{padding:23px 19px;border:1px solid rgba(255,255,255,.17);border-radius:14px;background:rgba(255,255,255,.025)}.timeline span{display:block;color:#75e0d8;font-weight:800;font-size:13px;margin-bottom:15px}.timeline h3{margin:0 0 7px;font-size:16px}.timeline p{margin:0;opacity:.8;font-size:13px}
.dark-photo{display:grid;grid-template-columns:1.05fr 1fr;gap:0;overflow:hidden;border-radius:18px;background:#183454;align-items:stretch}.dark-photo img{width:100%;height:300px;object-fit:cover}.dark-photo>div{padding:38px 40px;display:flex;flex-direction:column;justify-content:center}.dark-photo strong{font-size:25px;line-height:1.35}.dark-photo p{opacity:.82;font-size:14px;margin:12px 0 23px}.cta-link{display:inline-block;text-decoration:none;background:var(--primary);color:#fff;border-radius:999px;padding:13px 30px;font-weight:700;width:max-content}
.faq{border-top:1px solid var(--line)}.faq details{border-bottom:1px solid var(--line)}.faq summary{cursor:pointer;padding:22px 4px;font-weight:700;list-style:none}.faq summary::-webkit-details-marker{display:none}.faq summary::after{content:"+";float:right;font-size:22px;color:#7d858e}.faq details[open] summary::after{content:"−"}.faq p{margin:-5px 4px 22px}
.final-cta{padding:88px 0;background:#b5ecec;text-align:center}.final-cta h2{margin:0 0 12px;font-size:38px;letter-spacing:-1.5px}.final-cta p{margin:0 0 25px;color:#45525b}
footer{padding:30px 0;background:#f2f4f6;color:#777f87;font-size:12px}footer p{margin:3px 0}

.modal{display:none;position:fixed;inset:0;z-index:1000}.modal.is-open{display:grid;place-items:center}.modal-backdrop{position:absolute;inset:0;background:rgba(0,0,0,.58)}
.modal-dialog{position:relative;width:min(680px,calc(100% - 30px));max-height:min(78vh,780px);overflow:hidden;background:#fff;border-radius:5px;padding:38px 30px 30px;box-shadow:0 20px 60px rgba(0,0,0,.25)}
.modal-dialog h2{margin:0 45px 19px;text-align:center;font-size:24px;font-weight:400}.modal-close{position:absolute;right:18px;top:12px;border:0;background:transparent;font-size:31px;color:#444;cursor:pointer;font-weight:200}.modal-title-wrap{text-align:center}.title-line{display:block;width:100px;height:1px;background:#999;margin:0 auto 38px}
.modal-scroll{max-height:480px;overflow-y:auto;padding:0 8px 0 0}.modal-section-title{background:#2c3d7c;color:#fff;font-size:22px;font-weight:600;text-align:center;padding:14px 10px;margin:0 0 26px}.modal-body p{font-size:14px;color:#3e454b;margin:0 0 16px}.legal-body h3{font-size:19px;margin:20px 0 10px}.legal-body h4{font-size:16px;margin:18px 0 8px}.privacy-table{width:100%;border-collapse:collapse;margin:15px 0 25px;font-size:13px}.privacy-table th,.privacy-table td{border:1px solid #ddd;padding:10px 9px;text-align:center;vertical-align:middle}.privacy-table th{background:#f7f7f7}.modal-confirm{display:block;margin:27px auto 0;border:0;background:var(--primary);color:#fff;border-radius:4px;padding:11px 45px;font-size:15px;cursor:pointer}
@media(max-width:900px){
  .hero-photo{height:430px}.hero-inner{margin-top:0}.hero-copy-wrap{top:-335px;padding-bottom:0}
  .intro-grid,.image-text-grid,.income-grid{grid-template-columns:1fr;gap:32px}.image-card img,.image-card-large img{height:360px}
  .feature-grid{grid-template-columns:1fr 1fr}.work-grid{grid-template-columns:1fr 1fr}.timeline{grid-template-columns:1fr 1fr}.dark-photo{grid-template-columns:1fr}.dark-photo img{height:270px}
}
@media(max-width:620px){
  .container{width:min(100% - 28px,680px)}.hero{padding-bottom:40px}.hero-photo{height:365px}.hero-photo-overlay{background:linear-gradient(90deg,rgba(5,28,40,.68),rgba(5,28,40,.15)),linear-gradient(0deg,rgba(5,28,40,.38),transparent 65%)}.hero-inner{margin-top:0}
  .hero-copy-wrap{top:-285px;width:calc(100% - 10px)}.eyebrow{font-size:18px}.hero h1{font-size:31px;letter-spacing:-1.7px}.hero-copy{font-size:14px}.form-card{margin-top:28px;padding:28px 20px 24px}
  .form-grid{grid-template-columns:1fr;gap:14px}.form-grid label{display:block}.form-grid label>span:first-child{display:block;margin-bottom:6px}.textarea-field>span:first-child{padding-top:0}
  .submit-btn{font-size:19px;padding:15px}.section{padding:67px 0}.section h2{font-size:29px}.section .lead{font-size:16px}.feature-grid,.work-grid,.timeline{grid-template-columns:1fr}.image-card img,.image-card-large img{height:290px}
  .check-list div{grid-template-columns:25px 75px 1fr}.check-list em{font-size:13px}.dark-photo>div{padding:30px 25px}.dark-photo strong{font-size:21px}.final-cta{padding:68px 0}.final-cta h2{font-size:30px}
  .modal-dialog{width:calc(100% - 22px);max-height:calc(100vh - 28px);padding:30px 16px 20px}.modal-dialog h2{font-size:21px;margin-left:35px;margin-right:35px}.title-line{margin-bottom:28px}.modal-scroll{max-height:calc(100vh - 220px)}.modal-section-title{font-size:18px;margin-bottom:20px}.modal-body p{font-size:13px}.privacy-table{font-size:11px}.privacy-table th,.privacy-table td{padding:8px 5px}.modal-confirm{margin-top:20px}
}


/* -----------------------------
   Google AdSense 광고 영역
   ----------------------------- */
.ad-wrap{
  width:100%;
  margin:28px auto 34px;
  min-height:100px;
  overflow:hidden;
  text-align:center;
}
.ad-wrap-1,
.ad-wrap-2{
  max-width:940px;
}
.ad-wrap-3{
  width:100%;
  min-height:250px;
  margin:0;
  display:flex;
  align-items:center;
  justify-content:center;
}
.ad-wrap ins.adsbygoogle{
  width:100%;
}
.dark-photo .dark-ad{
  background:#fff;
  min-height:300px;
}
.dark-photo .dark-ad .adsbygoogle{
  min-height:250px;
}
@media(max-width:620px){
  .ad-wrap{
    margin:22px auto 27px;
    min-height:90px;
  }
  .ad-wrap-3{
    min-height:250px;
  }
  .dark-photo .dark-ad{
    min-height:250px;
  }
}
