:root{
    --green:#00c48c;
    --teal:#1ba7c0;
    --blue:#2f6bff;
    --blue-ink:#2456d8;
    --accent:#3b9bd6;
    --ink:#16202e;
    --body:#54627a;
    --muted:#8794a8;
    --line:#e7ecf3;
    --bg-soft:#f5f8fc;
    --hero-grad:linear-gradient(115deg,#00c48c 0%,#12b39f 45%,#1ba7c0 100%);
    --maxw:1180px;
    font-synthesis-weight:none;
  }
  body{
    color:var(--ink);background:#fff;
    font-family:"Pretendard",-apple-system,BlinkMacSystemFont,"Apple SD Gothic Neo","Malgun Gothic",Roboto,"Segoe UI",sans-serif;
    line-height:1.6;-webkit-font-smoothing:antialiased;letter-spacing:-0.01em;
  }
  .wrap{max-width:var(--maxw);margin:0 auto;padding:0 24px;}

/* ---------- Header / Navigation (Figma 7:2 / Logged In 33:188) ---------- */
.nav{
  position:sticky;top:0;z-index:50;
  background:#fff;
  border-bottom:1px solid #e8edf2;
}
.nav-inner{
  display:flex;
  align-items:center;
  height:80px;
  width:100%;
  max-width:1440px;
  margin:0 auto;
  padding:0 80px;
  box-sizing:border-box;
  gap:16px;
}
.brand{display:flex;align-items:center;gap:9px;color:#17212e;flex-shrink:0;}
.bars{display:inline-flex;align-items:flex-end;gap:3px;height:24px;width:25px;}
.bars i{width:4px;border-radius:2px;display:block;background:var(--blue);}
.bars i:nth-child(1){height:16px;}
.bars i:nth-child(2){height:24px;}
.bars i:nth-child(3){height:20px;}
.bars i:nth-child(4){height:12px;}
.brand .bars i:nth-child(1){background:var(--green);}
.brand .bars i:nth-child(2){background:var(--blue);}
.brand .bars i:nth-child(3){background:var(--teal);}
.brand .bars i:nth-child(4){background:var(--green);}
.nav.is-logged-in .brand .bars i{background:#2e6bff;}
.brand-text{display:flex;flex-direction:column;gap:2px;line-height:1.15;}
.brand-name{font-size:20px;font-weight:800;letter-spacing:-0.03em;}
.nav.is-logged-in .brand-name{font-size:18px;}
.brand-sub{font-size:10px;font-weight:500;color:#8794a8;}

.nav-menu{
  flex:1 1 auto;
  min-width:0;
  display:flex;
  align-items:center;
  justify-content:center;
  gap:24px;
}
.nav:not(.is-logged-in) .nav-menu{display:block;}
.nav-menu a{
  color:#3b4557;
  font-size:15px;
  font-weight:500;
  white-space:nowrap;
}
.nav-menu a:hover{color:var(--blue);}

.nav-auth{display:flex;align-items:center;gap:16px;flex-shrink:0;}
.nav-auth .btn-login{
  background:var(--blue);
  color:#fff;
  border-radius:8px;
  padding:10px 20px;
  font-size:14px;
  font-weight:600;
  line-height:1.3;
}
.nav-auth .btn-login:hover{background:var(--blue-ink);}
.nav-mypage{
  color:#2e6bff;
  font-size:14px;
  font-weight:700;
  white-space:nowrap;
}
.nav-mypage:hover{color:var(--blue-ink);}
.nav-auth .btn-logout{
  border:0;
  background:#f2f5f7;
  color:#546378;
  border-radius:10px;
  padding:9px 16px;
  font:inherit;
  font-size:14px;
  font-weight:700;
  cursor:pointer;
  white-space:nowrap;
}
.nav-auth .btn-logout:hover{background:#e7ecf1;}
.nav-auth form{display:inline;margin:0;}
@media(max-width:1100px){
  .nav-menu{gap:14px;}
  .nav-menu a{font-size:14px;}
}
@media(max-width:900px){
  .nav-inner{padding:0 24px;}
  .nav.is-logged-in .nav-menu{display:none;}
}
@media(max-width:480px){
  .brand-sub{display:none;}
  .nav-inner{height:64px;padding:0 16px;gap:10px;}
  .nav-auth{gap:10px;}
}

/* ---------- Footer ---------- */
  footer{background:#141b28;color:#9aa6b8;font-size:13.5px;padding:54px 0 40px;}
  .foot-grid{display:grid;grid-template-columns:1.4fr 1fr;gap:36px;}
  @media(max-width:760px){.foot-grid{grid-template-columns:1fr;}}
  footer .fbrand{display:flex;align-items:center;gap:9px;color:#fff;font-weight:800;font-size:17px;margin-bottom:16px;}
  footer .fbrand .bars i{background:#5b8cff;}
  footer p{margin:3px 0;line-height:1.7;}
  footer .fh{color:#cdd6e4;font-weight:700;margin-bottom:8px;}
  .foot-links{margin-top:26px;padding-top:20px;border-top:1px solid #2a3444;color:#7f8da0;display:flex;gap:14px;flex-wrap:wrap;}
  .foot-links span{color:#8b97ab;}

  .reveal{opacity:0;transform:translateY(22px);transition:opacity .7s ease,transform .7s ease;}
  .reveal.show{opacity:1;transform:none;}
  @media(prefers-reduced-motion:reduce){
    .reveal{opacity:1;transform:none;transition:none;}
    html{scroll-behavior:auto;}
  }

.btn{display:inline-flex;align-items:center;gap:8px;border-radius:12px;padding:15px 26px;font-size:15.5px;font-weight:700;letter-spacing:-0.02em;transition:transform .16s ease,box-shadow .16s ease,background .16s ease;}
.btn-primary{background:#fff;color:var(--blue-ink);box-shadow:0 16px 34px -18px rgba(0,0,0,0.45);}
.btn-primary:hover{transform:translateY(-2px);box-shadow:0 22px 40px -18px rgba(0,0,0,0.5);}
.btn-ghost{background:rgba(255,255,255,0.14);color:#fff;border:1px solid rgba(255,255,255,0.45);}
.btn-ghost:hover{background:rgba(255,255,255,0.24);transform:translateY(-2px);}
.btn-blue{background:linear-gradient(135deg,var(--blue),var(--teal));color:#fff;box-shadow:0 16px 32px -18px rgba(47,107,255,0.75);}
.btn-blue:hover{transform:translateY(-2px);}
