*{ box-sizing:border-box }
p{ margin:0; text-wrap:pretty }
a{ color:var(--accent); text-decoration:none }
a:hover{ color:var(--accent) }
ul, ol{ margin:0; padding:0; list-style:none }
@media (max-width:640px){
  .m-fs3:not([aria-hidden]){ font-size:25px !important; letter-spacing:-0.035em !important; line-height:1.45 !important }
  figure{ max-width:100% !important; box-sizing:border-box !important; padding-left:22px !important; padding-right:22px !important }
  [role="img"][aria-label*="약도"]{ aspect-ratio:auto !important; min-height:240px !important }
}
@media (max-width:1000px){
  h1, h2, h3, h4, dt, dd, blockquote, figcaption{ word-break:keep-all; overflow-wrap:anywhere; text-wrap:balance }
}
@media (max-width:640px){
  p, li{ word-break:keep-all; overflow-wrap:anywhere }
  img, video, iframe{ max-width:100% }
}
.hv-text-green:hover{ color:#2E733B !important }
.hv-fill-green-line:hover{ background:#2E733B !important; color:#fff !important; border-color:#2E733B !important }
.hv-fill-green:hover{ background:#2E733B !important; color:#fff !important }
.hv-fill-white-line:hover{ background:#fff !important; color:#20291f !important; border-color:#fff !important }
.hv-fill-white:hover{ background:#fff !important; color:#20291f !important }
.hv-line-accent:hover{ border-color:var(--accent) !important; color:var(--accent) !important }
.hv-line-green:hover{ border-color:#2E733B !important; color:#2E733B !important }
.hv-text-dark:hover{ color:#20291f !important }
.hv-text-white:hover{ color:#fff !important }
.hv-tint-green:hover{ background:#EEF6EA !important; color:#2E733B !important }
.hv-white-green:hover{ background:#fff !important; color:#2E733B !important }
body{ margin:0; background:var(--bg); color:var(--ink); font-family:var(--font-body, Pretendard, -apple-system, "Apple SD Gothic Neo", "Malgun Gothic", sans-serif); -webkit-font-smoothing:antialiased; letter-spacing:-0.01em }
h1, h2, h3, h4{ font-family:var(--font-heading, "Noto Serif KR", serif); font-weight:600; margin:0; letter-spacing:-0.025em }
@media (max-width:1000px){
  #why-grid{ grid-template-columns:repeat(2,1fr) !important; row-gap:52px }
  #why-grid span[aria-hidden].m-left50{ display:none }
}
@media (max-width:520px){
  #why-grid{ grid-template-columns:1fr !important }
}
@media (max-width:1100px){
  .sig-grid{ grid-template-columns:repeat(2,minmax(0,1fr)) !important }
  .rev-grid{ grid-template-columns:repeat(2,minmax(0,1fr)) !important }
  .col-grid{ grid-template-columns:repeat(2,minmax(0,1fr)) !important }
}
@media (max-width:560px){
  .sig-grid{ grid-template-columns:1fr !important }
  .rev-grid{ grid-template-columns:1fr !important }
  .col-grid{ grid-template-columns:1fr !important }
}
.dir-btn:hover .dir-ico{ color:#2E733B !important }
@media (max-width:900px){
  .ft-grid{ grid-template-columns:1fr !important; gap:40px !important }
}
.m-br{ display:none }
@media (max-width:640px){
  .m-br{ display:inline }
}
@media (max-width:900px){
  #stat-strip dl{ grid-template-columns:repeat(2,minmax(0,1fr)) !important }
}
@media (max-width:1000px){
  #hero-title + p{ font-size:17px !important; line-height:1.5 !important }
}
@media (max-width:640px){
  .m-fs4:not([aria-hidden]){ font-size:32px !important; letter-spacing:-0.04em !important; line-height:1.4 !important }
  h1{ font-size:clamp(30px,9vw,37px) !important; letter-spacing:-0.04em !important }
  h2{ font-size:clamp(26px,8vw,32px) !important; line-height:1.4 !important }
  #reviews blockquote{ font-size:17px !important }
  #reviews figure p.m-fs22px{ font-size:24px !important }
  #hero-title + p{ font-size:17px !important; line-height:1.5 !important; margin-top:12px !important }
  #stat-strip{ height:auto !important; min-height:280px }
  #stat-strip dl{ grid-template-columns:repeat(2,minmax(0,1fr)) !important }
}
body{ font-size:16px; line-height:normal }
:where(body[data-home]) blockquote{ margin:0; padding:0; border:0; border-radius:0; background:none; }
:where(body[data-home]) :is(th, td){ border:0; padding:1px; }
.jy-map__canvas{ position:absolute; inset:0; z-index:0; }
.jy-map > a{ z-index:1; }
@media (max-width:900px){ .jy-map{ min-height:320px; } }
@media (max-width:640px){ .jy-map{ min-height:260px; } }
