/* Pretendard local font: one family name everywhere */
@font-face{font-family:"Pretendard";font-style:normal;font-weight:45 920;font-display:swap;src:url("fonts/PretendardVariable.woff2") format("woff2")}
html,body,body *,input,button,select,textarea{font-family:"Pretendard","Malgun Gothic",sans-serif!important;font-synthesis:none}
body{font-size:16px;line-height:1.65;letter-spacing:-.022em}

/* Calm, consistent type scale */
.kicker{font-size:12px;line-height:1.4;letter-spacing:.12em}
.section-heading h2,.split-heading h2,.contact h2,.diagnosis-copy h2{font-size:clamp(36px,3.4vw,52px);line-height:1.28;font-weight:600;letter-spacing:-.045em}
.hero h1{font-size:clamp(52px,5.2vw,78px);line-height:1.1;font-weight:500;letter-spacing:-.052em}
.lead{font-size:18px;line-height:1.75}
.section-heading>p:last-child,.split-heading>p,.diagnosis-copy>p:not(.kicker),.contact-copy>p:not(.kicker){font-size:16px}
.intro-copy .large-copy{font-size:23px;line-height:1.7;font-weight:400}
.intro-copy p:not(.large-copy){font-size:16px}
.why-answer p{font-size:22px}
.philosophy-copy h2{font-size:clamp(36px,3.4vw,52px);font-weight:600;letter-spacing:-.045em}
.final-message h2{font-size:clamp(34px,3.6vw,54px);font-weight:600;letter-spacing:-.045em}

/* Raise unreadably small labels */
.hero-strip b,.service-card .num,.service-card>a,.diagnosis-example small,.compare-side>p,.compare-side li span,.landing-card>span,.case-content>small,.process-list span,.future-grid span,.footer-bottom,.ai-note{font-size:11px}
.hero-strip span,.service-card>p,.service-card li,.landing-card>p,.landing-card li,.case-steps p,.future-grid p,.company p{font-size:14px}
.audience-row b{font-size:16px}.audience-row span{font-size:12px;line-height:1.5}
.service-card h3{font-size:25px}.landing-card h3{font-size:22px}.case-content h3{font-size:30px}.review-grid blockquote>p{font-size:15px}

/* Remove decorative placeholders and simplify cards */
.mini-layout{display:none!important}
.landing-grid{gap:18px}
.landing-card{min-height:430px;padding:34px 28px;display:flex;flex-direction:column}
.landing-card>p{min-height:48px;line-height:1.7}
.landing-card ul{margin-bottom:24px}
.card-point{margin-top:auto;padding-top:20px;border-top:1px solid #ddd8d1}
.landing-card.active .card-point,.landing-card:hover .card-point{border-color:#363a41}
.card-point small{display:block;font-size:11px;color:#888;margin-bottom:7px}
.card-point b{font-size:14px;font-weight:650}

/* Reduce visual noise and oversized empty spaces */
.section{padding:125px 0}
.service-card{min-height:500px}
.service-icon{width:auto;height:34px;margin:0 auto 28px 0;padding:0 13px;border-radius:4px;font-size:12px;letter-spacing:.08em}
.philosophy-visual:before,.philosophy-visual:after{display:none}
.philosophy-visual{min-height:420px;background:linear-gradient(145deg,#171a20,#0d0f13);align-items:flex-start;padding:42px}
.philosophy-visual>span{font-size:11px}
.circle-copy{position:static;margin:auto 0;font-size:34px;line-height:1.45;font-weight:600}
.case{padding:48px 0}.case-content{padding:15px 0}
.final-message{padding:125px 0}

@media(max-width:760px){
  body{font-size:15px}
  .section{padding:88px 0}
  .section-heading h2,.split-heading h2,.contact h2,.diagnosis-copy h2,.philosophy-copy h2{font-size:34px}
  .hero h1{font-size:46px}
  .lead{font-size:16px}
  .intro-copy .large-copy{font-size:20px}
  .landing-card{min-height:auto;padding:28px 24px}
  .case-content h3{font-size:26px}
  .final-message{padding:95px 0}
}
