:root{
  --color-primary:#6B4A17;
  --color-primary-hover:#52370F;
  --color-accent:#9C3F0B;
  --color-dark:#243034;
  --color-dark-deep:#192529;
  --color-dark-soft:#303F43;
  --color-light:#FAF9F6;
  --color-surface:#FFFFFF;
  --color-ink:#243034;
  --color-muted:#697276;
  --color-line:#D9DCD9;
  --color-line-dark:rgba(255,255,255,.16);
  --color-pink:#F2D7D5;
  --color-pink-ink:#321E20;
  --color-mint:#D5E7E4;
  --color-mint-ink:#18302F;
  --color-yellow:#F4E6B8;
  --color-yellow-ink:#302811;
  --color-lavender:#DAD9EA;
  --color-lavender-ink:#25243A;
  --color-red:#D94B3D;
  --color-blue:#245EB8;
  --color-sun:#F1C94B;
  --color-success:#406E5D;
  --font-heading:"Manrope",-apple-system,"PingFang SC","PingFang TC","Hiragino Sans GB","Hiragino Kaku Gothic ProN","Yu Gothic","Noto Sans KR","Microsoft YaHei",sans-serif;
  --font-body:"IBM Plex Sans",-apple-system,"PingFang SC","PingFang TC","Hiragino Sans GB","Hiragino Kaku Gothic ProN","Yu Gothic","Noto Sans KR","Microsoft YaHei",sans-serif;
  --font-mono:"SFMono-Regular",Consolas,"Liberation Mono",Menlo,monospace;
  --text-xs:.75rem;
  --text-sm:.875rem;
  --text-base:1rem;
  --text-md:1.125rem;
  --text-lg:1.375rem;
  --text-xl:1.75rem;
  --text-2xl:clamp(2rem,4vw,3.2rem);
  --text-display:clamp(2.75rem,5.3vw,4.25rem);
  --leading-tight:1.16;
  --leading-heading:1.2;
  --leading-body:1.65;
  --space-1:.5rem;
  --space-2:1rem;
  --space-3:1.5rem;
  --space-4:2rem;
  --space-5:2.5rem;
  --space-6:4rem;
  --space-7:6rem;
  --space-8:8rem;
  --radius-sm:6px;
  --radius-md:10px;
  --radius-lg:20px;
  --shadow-stage:0 28px 58px rgba(5,14,16,.3);
  --shadow-soft:0 16px 40px rgba(20,29,32,.12);
  --container-narrow:760px;
  --container-standard:1120px;
  --container-wide:1240px;
  --gutter:clamp(1rem,4vw,2rem);
  --header-size:5rem;
  --ease:cubic-bezier(.2,.75,.25,1);
}
*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:auto;-webkit-text-size-adjust:100%}
body{margin:0;background:var(--color-light);color:var(--color-ink);font-family:var(--font-body);font-size:var(--text-base);line-height:var(--leading-body);-webkit-font-smoothing:antialiased}
main{overflow-x:clip}
img,svg,video,canvas{display:block;max-width:100%}
img{height:auto}
a{color:inherit;text-decoration:none}
button,input,select,textarea{font:inherit}
button{cursor:pointer}
h1,h2,h3,h4,h5,h6{margin:0;color:inherit;font-family:var(--font-heading);font-weight:650;letter-spacing:-.035em}
h1{font-size:var(--text-display);line-height:var(--leading-tight)}
h2{font-size:var(--text-2xl);line-height:var(--leading-heading)}
h3{font-size:var(--text-xl);line-height:var(--leading-heading)}
h4{font-size:var(--text-lg);line-height:var(--leading-heading)}
h5{font-size:var(--text-md);line-height:var(--leading-heading)}
h6{font-size:var(--text-base);line-height:var(--leading-heading)}
p{margin:0;font-size:var(--text-base);line-height:var(--leading-body)}
li{font-size:var(--text-base);line-height:var(--leading-body)}
small{font-size:var(--text-xs);line-height:1.5}
figcaption{font-size:var(--text-sm);line-height:1.55}
blockquote{margin:0;font-size:var(--text-lg);line-height:1.55}
code{font-family:var(--font-mono);font-size:var(--text-sm);line-height:1.6}
pre{margin:0;max-width:100%;overflow-x:auto;font-family:var(--font-mono);font-size:var(--text-sm);line-height:1.65}
pre code{font-size:var(--text-sm);line-height:1.65}
th{font-size:var(--text-sm);line-height:1.45}
td{font-size:var(--text-sm);line-height:1.55}
dt{font-size:var(--text-base);line-height:1.45;font-weight:700}
dd{margin:0;font-size:var(--text-sm);line-height:1.6}
label{font-size:var(--text-sm);line-height:1.45;font-weight:650}
strong,b{font-weight:700}
ul,ol{margin:0;padding-inline-start:1.25rem}
address{font-style:normal}
[hidden]{display:none!important}
:focus-visible{outline:3px solid #D39A32;outline-offset:3px}
.u-container,.u-container-wide,.u-container-narrow{width:calc(100% - var(--gutter)*2);margin-inline:auto}
.u-container{max-width:var(--container-standard)}
.u-container-wide{max-width:var(--container-wide)}
.u-container-narrow{max-width:var(--container-narrow)}
.u-grid{display:grid;gap:var(--space-3)}
.u-grid-2{grid-template-columns:repeat(2,minmax(0,1fr))}
.u-grid-3{grid-template-columns:repeat(3,minmax(0,1fr))}
.u-grid-auto{grid-template-columns:repeat(auto-fit,minmax(min(100%,17rem),1fr));align-items:start}
.u-stack{display:flex;flex-direction:column;gap:var(--space-3)}
.u-cluster{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-2)}
.u-mono{font-family:var(--font-mono);font-variant-numeric:tabular-nums}
.u-muted{color:var(--color-muted)}
.u-sr-only{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}
.u-mt-1{margin-top:var(--space-1)}
.u-mt-2{margin-top:var(--space-2)}
.u-mt-3{margin-top:var(--space-3)}
.u-mt-4{margin-top:var(--space-4)}
.u-mt-6{margin-top:var(--space-6)}
.u-text-center{text-align:center}
.reveal{opacity:0;transform:translateY(20px);transition:opacity .55s var(--ease),transform .55s var(--ease)}
.reveal-left{opacity:0;transform:translateX(-18px);transition:opacity .55s var(--ease),transform .55s var(--ease)}
.reveal-right{opacity:0;transform:translateX(18px);transition:opacity .55s var(--ease),transform .55s var(--ease)}
.reveal.is-visible,.reveal-left.is-visible,.reveal-right.is-visible{opacity:1;transform:none}
@media(prefers-reduced-motion:reduce){
  *,*::before,*::after{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}
  .reveal,.reveal-left,.reveal-right{opacity:1;transform:none}
}
@media(max-width:48rem){
  :root{--space-7:4.5rem;--space-8:5.5rem}
  .u-grid-2,.u-grid-3{grid-template-columns:1fr}
}
