/* BACKTIC V6 — intentionally minimal, with no inline styles or decorative cards. */
:root {
  --ink:#0b0b0b;
  --paper:#f0f0ed;
  --light:#f4f4f1;
  --gutter:clamp(24px,5vw,88px);
  --header-height:72px;
  --display:'Anton','Arial Narrow',Impact,sans-serif;
  --body:'DM Sans','Noto Sans KR',sans-serif;
  --kr:'Noto Sans KR',sans-serif;
  --mono:'IBM Plex Mono',monospace;
}
*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:var(--header-height)}
body{margin:0;background:var(--ink);color:var(--paper);font-family:var(--body);-webkit-font-smoothing:antialiased;overflow-x:hidden}
body.menu-open{overflow:hidden}
a{color:inherit;text-decoration:none}
button{font:inherit;color:inherit;cursor:pointer}
a,button{-webkit-tap-highlight-color:transparent}
a:focus-visible,button:focus-visible{outline:2px solid currentColor;outline-offset:5px}
[hidden]{display:none!important}
::selection{background:var(--paper);color:var(--ink)}
.skip-link{position:fixed;z-index:300;top:-70px;left:14px;background:#fff;color:#000;padding:10px 14px;font:13px var(--kr)}
.skip-link:focus{top:12px}
.anchor-target{position:absolute;top:0;left:0}
.site-header{height:var(--header-height);position:fixed;top:0;left:0;right:0;display:flex;align-items:center;justify-content:space-between;gap:20px;padding:0 var(--gutter);z-index:50;background:#0b0b0b;border-bottom:1px solid #343434}
.wordmark{font:normal 29px/.9 var(--display);letter-spacing:.002em}
.wordmark-dot{color:#91918c}
.desktop-nav{display:flex;align-items:center;gap:42px}
.desktop-nav a{font:500 12px var(--mono);letter-spacing:.04em;padding:16px 0;color:#d6d6d2;transition:color .2s}
.desktop-nav a:hover{color:#888}
.menu-toggle{display:none;border:0;background:none;width:44px;height:44px;padding:0;align-items:center;justify-content:center;flex-direction:column;gap:7px}
.menu-toggle span{width:25px;height:1px;background:var(--paper);transition:transform .2s}
.site-header.menu-visible .menu-toggle span:first-child{transform:translateY(4px) rotate(45deg)}
.site-header.menu-visible .menu-toggle span:last-child{transform:translateY(-4px) rotate(-45deg)}
.mobile-menu{display:none;position:fixed;z-index:49;inset:var(--header-height) 0 0;background:#0b0b0b;padding:45px var(--gutter)}
.mobile-menu.visible{display:flex;flex-direction:column}
.mobile-menu a{font:normal clamp(50px,12vw,86px)/1.05 var(--display);display:flex;align-items:center;justify-content:space-between;padding:28px 0;border-bottom:1px solid #454545}
.mobile-menu a span{font:20px var(--mono)}
.section-label{display:flex;justify-content:space-between;align-items:start;border-top:1px solid currentColor;padding-top:17px;gap:16px;font:500 11px/1.5 var(--mono);letter-spacing:.03em}
.about{background:var(--paper);color:var(--ink);padding:93px var(--gutter) 110px}
.about-content{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(270px,.7fr);gap:55px;align-items:end;padding:clamp(90px,10vw,170px) 0 clamp(92px,10vw,170px)}
.about h2{margin:0;font:800 clamp(49px,6.3vw,103px)/1.27 var(--kr);letter-spacing:-.075em;word-break:keep-all}
.period{color:#9d9d96}
.about-description{max-width:415px;padding-bottom:9px}
.about-description p{font:400 clamp(14px,1.15vw,17px)/2.1 var(--kr);letter-spacing:-.035em;word-break:keep-all;margin:0 0 17px;color:#323230}
.about-description p:first-child{font-weight:700;color:#111;font-size:clamp(17px,1.5vw,22px);line-height:1.8;margin-bottom:27px}
.capabilities{border-top:1px solid #222;display:grid;grid-template-columns:repeat(3,minmax(0,1fr))}
.capabilities>div{padding:24px 25px 0 0;display:flex;flex-direction:column;min-height:145px;border-right:1px solid #bdbdb8}
.capabilities>div+div{padding-left:26px}
.capabilities>div:last-child{border-right:0}
.capability-number{font:11px var(--mono);color:#777;margin-bottom:14px}
.capabilities strong{font:700 25px var(--kr);letter-spacing:-.05em}
.capabilities div>span:last-child{font:11px var(--mono);letter-spacing:.04em;color:#6f6f69;margin-top:8px}
.contact{background:var(--ink);color:var(--paper);padding:90px var(--gutter) 115px}
.contact-content{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(270px,.6fr);gap:50px;align-items:end;padding:clamp(105px,13vw,225px) 0 10px}
.contact h2{font:normal clamp(85px,12vw,210px)/1 var(--display);letter-spacing:-.015em;margin:0}
.contact-info{padding-bottom:9px}
.contact-info>p:first-child{font:700 clamp(19px,1.7vw,26px)/1.5 var(--kr);letter-spacing:-.045em;margin:0 0 25px}
.contact-email{font:500 clamp(18px,1.55vw,25px) var(--body);display:inline-block;border-bottom:1px solid var(--paper);padding-bottom:8px;overflow-wrap:anywhere}
.contact-email::after{content:' ↗'}
.contact-info .pending{font:14px/1.9 var(--kr);color:#999994;margin:0}
.site-footer{display:flex;align-items:center;justify-content:space-between;gap:30px;flex-wrap:wrap;padding:24px var(--gutter) 28px;background:#0b0b0b;border-top:1px solid #454545;color:#989892;font:10px/1.6 var(--mono);letter-spacing:.025em}
.site-footer a{color:#e5e5e0}
.site-footer a:hover{color:#aaa}
@media(max-width:900px){
  .about-content{grid-template-columns:1fr;gap:45px}
  .about h2{font-size:clamp(55px,8vw,85px)}
  .about-description{max-width:550px}
  .contact-content{grid-template-columns:1fr;gap:50px}
  .contact h2{font-size:clamp(100px,16vw,160px)}
}
@media(max-width:650px){
  :root{--header-height:65px;--gutter:23px}
  .wordmark{font-size:27px}
  .desktop-nav{display:none}
  .menu-toggle{display:flex}
  .about{padding:67px var(--gutter) 75px}
  .about-content{padding:95px 0 85px;gap:42px}
  .about h2{font-size:clamp(39px,9.2vw,70px);line-height:1.35}
  .about-description p:first-child{font-size:17px}
  .about-description p{font-size:14px}
  .capabilities>div{padding:22px 8px 0 0;min-height:112px}
  .capabilities>div+div{padding-left:12px}
  .capabilities strong{font-size:21px}
  .capabilities div>span:last-child{font-size:8px;letter-spacing:0}
  .contact{padding:66px var(--gutter) 95px}
  .contact-content{padding:110px 0 0;gap:45px}
  .contact h2{font-size:clamp(73px,17vw,115px)}
  .contact-info>p:first-child{font-size:21px}
  .site-footer{font-size:9px;gap:16px}
  .site-footer>span:nth-child(2){display:none}
  .section-label{font-size:10px}
}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important}}
