/* Base - Modern reset + typography */

/* Pretendard variable, swap so it never blocks render */
@font-face{
  font-family:'Pretendard Variable';
  font-weight:45 920;
  font-style:normal;
  font-display:swap;
  src:url('https://cdn.jsdelivr.net/gh/orioncactus/pretendard/dist/web/variable/woff2/PretendardVariable.woff2') format('woff2-variations');
}

*,*::before,*::after{box-sizing:border-box}
html,body,h1,h2,h3,h4,h5,h6,p,ul,ol,li,figure,figcaption,blockquote,dl,dd,address,fieldset,legend{margin:0;padding:0}
html{
  font-size:16px;
  -webkit-text-size-adjust:100%;
  -webkit-font-smoothing:antialiased;
  -moz-osx-font-smoothing:grayscale;
  scroll-behavior:smooth;
}
body{
  font-family:var(--font);
  font-size:var(--fs-base);
  line-height:var(--lh-normal);
  color:var(--text);
  background:var(--bg);
  font-weight:var(--fw-regular);
  letter-spacing:-0.01em;
  min-height:100vh;
}
img,svg,video{max-width:100%;height:auto;display:block;border:0}
ul,ol{list-style:none}
a{color:inherit;text-decoration:none;transition:color var(--transition)}
button{font:inherit;color:inherit;background:none;border:0;padding:0;cursor:pointer}
input,select,textarea,button{font-family:inherit}
table{border-collapse:collapse;border-spacing:0;width:100%}
address{font-style:normal}
h1,h2,h3,h4,h5,h6{font-weight:var(--fw-bold);line-height:var(--lh-tight);letter-spacing:-0.02em}
h1{font-size:var(--fs-hero)}
h2{font-size:var(--fs-4xl)}
h3{font-size:var(--fs-2xl)}
h4{font-size:var(--fs-lg)}
h5{font-size:var(--fs-md)}
p{line-height:var(--lh-relaxed);color:var(--text-sub)}
strong,b{font-weight:var(--fw-semibold)}
::selection{background:var(--brand-100);color:var(--brand-800)}

/* Container */
.container{max-width:var(--container-max);margin:0 auto;padding:0 var(--container-pad)}

/* Visibility helpers */
.only-pc{display:block}
.only-mb{display:none}
@media(max-width:768px){
  .only-pc{display:none!important}
  .only-mb{display:block}
  span.only-mb{display:inline}
}

/* Skip link for a11y */
.skip{position:absolute;left:-9999px;top:0;background:var(--brand-600);color:#fff;padding:10px 16px;border-radius:0 0 var(--r-md) 0;z-index:1000}
.skip:focus{left:0}
