/*
Theme Name: CorpStart Custom
Template: twentytwentyfive
Version: 1.0.0
Description: corpstart.zibsuri.com 법인설립 정보 플랫폼 전용 프리미엄 디자인 시스템
*/

:root{
  --navy-900:#0d1c33;
  --navy-800:#122a4a;
  --navy-700:#1b3a63;
  --gold-500:#c4a460;
  --gold-600:#ab8a48;
  --neutral-0:#ffffff;
  --neutral-50:#f8f7f4;
  --neutral-100:#f1efea;
  --neutral-200:#e6e3dc;
  --neutral-300:#d6d2c8;
  --neutral-500:#8a8d92;
  --neutral-600:#5f636a;
  --neutral-800:#2b2f36;
  --neutral-900:#1a1d22;
  --radius-sm:8px;
  --radius-md:14px;
  --radius-lg:24px;
  --shadow-sm:0 2px 10px rgba(13,28,51,.06);
  --shadow-md:0 10px 30px rgba(13,28,51,.10);
  --shadow-lg:0 20px 50px rgba(13,28,51,.14);
  --space-1:8px; --space-2:16px; --space-3:24px; --space-4:32px;
  --space-5:48px; --space-6:64px; --space-7:96px; --space-8:140px;
  --container:1160px;
  --content-col:740px;
  --font-sans:'Pretendard Variable','Pretendard',-apple-system,'Noto Sans KR',sans-serif;
  --font-serif:'Noto Serif KR',serif;
  --transition-fast:180ms ease;
  --transition-mid:260ms ease;
}

@media (prefers-reduced-motion: reduce){
  *{animation-duration:.001ms !important;animation-iteration-count:1 !important;transition-duration:.001ms !important;scroll-behavior:auto !important;}
}

*{box-sizing:border-box;}
html{scroll-behavior:smooth;}
body{
  margin:0;
  font-family:var(--font-sans);
  color:var(--neutral-900);
  background:var(--neutral-50);
  font-size:16px;
  line-height:1.7;
  -webkit-font-smoothing:antialiased;
  overflow-x:hidden;
}
img{max-width:100%;display:block;}
a{color:var(--navy-700);text-decoration:none;transition:color var(--transition-fast);}
a:hover{color:var(--gold-600);}
a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible,summary:focus-visible{
  outline:3px solid var(--gold-500);outline-offset:2px;border-radius:4px;
}
h1,h2,h3,h4{font-family:var(--font-serif);color:var(--navy-900);line-height:1.35;margin:0 0 var(--space-2);letter-spacing:-0.01em;}
h1{font-size:clamp(2.1rem,4.4vw,3.4rem);letter-spacing:-0.02em;}
h2{font-size:clamp(1.5rem,2.6vw,2.05rem);}
h3{font-size:1.3rem;}
p{margin:0 0 var(--space-2);}
ul,ol{margin:0 0 var(--space-2);padding-left:1.4em;}
li{margin-bottom:.4em;}

.container{max-width:var(--container);margin:0 auto;padding:0 24px;}
.content-col{max-width:var(--content-col);margin:0 auto;}
.section{padding:var(--space-8) 0;}
@media (max-width:768px){
  .section{padding:var(--space-6) 0;}
}

/* ---------- Site Header ---------- */
.site-header{
  position:sticky;top:0;z-index:100;
  background:rgba(248,247,244,.92);
  backdrop-filter:saturate(140%) blur(10px);
  border-bottom:1px solid var(--neutral-200);
}
.site-header .row{display:flex;align-items:center;justify-content:space-between;height:72px;}
.site-logo{display:flex;align-items:center;gap:10px;font-family:var(--font-serif);font-weight:700;font-size:1.25rem;color:var(--navy-900);}
.site-logo .mark{width:34px;height:34px;border-radius:9px;background:var(--navy-900);color:#fff;display:flex;align-items:center;justify-content:center;font-family:var(--font-sans);font-weight:700;font-size:.95rem;}
.site-logo .mark span{color:var(--gold-500);}
.primary-nav ul{list-style:none;display:flex;gap:28px;margin:0;padding:0;}
.primary-nav a{color:var(--neutral-800);font-weight:500;font-size:.96rem;padding:8px 2px;position:relative;}
.primary-nav a::after{content:"";position:absolute;left:0;right:0;bottom:0;height:2px;background:var(--gold-500);transform:scaleX(0);transition:transform var(--transition-fast);}
.primary-nav a:hover::after,.primary-nav a.current::after{transform:scaleX(1);}
.nav-toggle{display:none;}
.nav-toggle-label{display:none;cursor:pointer;width:44px;height:44px;align-items:center;justify-content:center;}
.nav-toggle-label span,.nav-toggle-label span::before,.nav-toggle-label span::after{
  content:"";display:block;width:22px;height:2px;background:var(--navy-900);position:relative;transition:var(--transition-fast);
}
.nav-toggle-label span::before{position:absolute;top:-7px;}
.nav-toggle-label span::after{position:absolute;top:7px;}
@media (max-width:860px){
  .primary-nav{position:fixed;inset:72px 0 0 0;background:var(--neutral-0);transform:translateY(-8px);opacity:0;pointer-events:none;transition:var(--transition-mid);padding:var(--space-4) 24px;}
  .primary-nav ul{flex-direction:column;gap:6px;}
  .primary-nav a{display:block;padding:14px 4px;font-size:1.05rem;border-bottom:1px solid var(--neutral-100);}
  .nav-toggle-label{display:flex;}
  .nav-toggle:checked ~ .primary-nav{transform:translateY(0);opacity:1;pointer-events:auto;}
}

/* ---------- Buttons ---------- */
.btn{display:inline-flex;align-items:center;gap:8px;padding:14px 28px;border-radius:999px;font-weight:600;font-size:.98rem;transition:transform var(--transition-fast),box-shadow var(--transition-fast),background var(--transition-fast);min-height:44px;}
.btn-primary{background:var(--navy-900);color:#fff;box-shadow:var(--shadow-sm);}
.btn-primary:hover{background:var(--navy-700);color:#fff;transform:translateY(-2px);box-shadow:var(--shadow-md);}
.btn-ghost{background:transparent;border:1.5px solid var(--neutral-300);color:var(--navy-900);}
.btn-ghost:hover{border-color:var(--gold-500);color:var(--navy-900);}

/* ---------- Hero ---------- */
.hero{position:relative;background:linear-gradient(160deg,var(--navy-900),var(--navy-800) 60%,var(--navy-700));color:#fff;overflow:hidden;}
.hero .row{display:grid;grid-template-columns:1.05fr .95fr;gap:var(--space-6);align-items:center;padding:var(--space-8) 0;}
.hero .eyebrow{display:inline-flex;align-items:center;gap:8px;color:var(--gold-500);font-weight:600;font-size:.85rem;letter-spacing:.08em;text-transform:uppercase;margin-bottom:var(--space-2);}
.hero h1{color:#fff;font-size:clamp(2.2rem,4.6vw,3.6rem);}
.hero p.lead{color:#cbd3de;font-size:1.15rem;max-width:520px;margin-bottom:var(--space-3);}
.hero .cta-row{display:flex;gap:14px;flex-wrap:wrap;}
.hero .btn-ghost{border-color:rgba(255,255,255,.35);color:#fff;}
.hero .btn-ghost:hover{border-color:var(--gold-500);}
.hero-media{position:relative;border-radius:var(--radius-lg);overflow:hidden;box-shadow:var(--shadow-lg);aspect-ratio:4/3;}
.hero-media img{width:100%;height:100%;object-fit:cover;}
.hero-media::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(13,28,51,0) 55%,rgba(13,28,51,.55));}
.hero-stats{display:flex;gap:var(--space-4);margin-top:var(--space-4);flex-wrap:wrap;}
.hero-stats .stat b{display:block;font-family:var(--font-serif);font-size:1.6rem;color:var(--gold-500);}
.hero-stats .stat span{color:#aeb8c4;font-size:.85rem;}
@media (max-width:900px){
  .hero .row{grid-template-columns:1fr;padding:var(--space-6) 0;}
  .hero-media{aspect-ratio:16/10;}
}

/* ---------- Section headings ---------- */
.section-head{max-width:640px;margin:0 auto var(--space-5);text-align:center;}
.section-head .kicker{color:var(--gold-600);font-weight:700;font-size:.8rem;letter-spacing:.1em;text-transform:uppercase;}
.section-head p{color:var(--neutral-600);}

/* ---------- Carousel ---------- */
.carousel-wrap{position:relative;}
.carousel-track{display:flex;gap:var(--space-3);overflow-x:auto;scroll-snap-type:x mandatory;padding-bottom:8px;scrollbar-width:thin;}
.carousel-track::-webkit-scrollbar{height:6px;}
.carousel-track::-webkit-scrollbar-thumb{background:var(--neutral-300);border-radius:4px;}
.carousel-card{scroll-snap-align:start;flex:0 0 320px;background:#fff;border-radius:var(--radius-md);overflow:hidden;box-shadow:var(--shadow-sm);transition:transform var(--transition-mid),box-shadow var(--transition-mid);}
.carousel-card:hover{transform:translateY(-4px);box-shadow:var(--shadow-md);}
.carousel-card .thumb{aspect-ratio:4/3;overflow:hidden;}
.carousel-card .thumb img{width:100%;height:100%;object-fit:cover;transition:transform var(--transition-mid);}
.carousel-card:hover .thumb img{transform:scale(1.04);}
.carousel-card .body{padding:var(--space-3);}
.carousel-card .body .step{color:var(--gold-600);font-weight:700;font-size:.78rem;letter-spacing:.06em;text-transform:uppercase;}
.carousel-card .body h3{font-size:1.08rem;margin:6px 0 6px;}
.carousel-card .body p{color:var(--neutral-600);font-size:.92rem;margin:0;}

/* ---------- Process steps ---------- */
.steps-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--space-3);}
.step-card{background:#fff;border:1px solid var(--neutral-200);border-radius:var(--radius-md);padding:var(--space-3);position:relative;}
.step-card .num{width:40px;height:40px;border-radius:50%;background:var(--navy-900);color:var(--gold-500);display:flex;align-items:center;justify-content:center;font-family:var(--font-serif);font-weight:700;margin-bottom:var(--space-2);}
.step-card h3{font-size:1.05rem;margin-bottom:6px;}
.step-card p{color:var(--neutral-600);font-size:.92rem;margin:0;}
@media (max-width:860px){.steps-grid{grid-template-columns:1fr;}}

/* ---------- Article / post cards ---------- */
.post-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--space-3);}
.post-card{background:#fff;border-radius:var(--radius-md);overflow:hidden;box-shadow:var(--shadow-sm);transition:transform var(--transition-mid),box-shadow var(--transition-mid);display:flex;flex-direction:column;}
.post-card:hover{transform:translateY(-4px);box-shadow:var(--shadow-md);}
.post-card .thumb{aspect-ratio:16/10;overflow:hidden;background:var(--neutral-100);}
.post-card .thumb img{width:100%;height:100%;object-fit:cover;}
.post-card .body{padding:var(--space-3);flex:1;display:flex;flex-direction:column;}
.post-card .cat{color:var(--gold-600);font-size:.78rem;font-weight:700;letter-spacing:.05em;text-transform:uppercase;margin-bottom:6px;}
.post-card h3{font-size:1.08rem;margin-bottom:8px;}
.post-card h3 a{color:var(--navy-900);}
.post-card p{color:var(--neutral-600);font-size:.92rem;flex:1;}
.post-card .meta{color:var(--neutral-500);font-size:.82rem;margin-top:8px;}
@media (max-width:860px){.post-grid{grid-template-columns:1fr 1fr;}}
@media (max-width:600px){.post-grid{grid-template-columns:1fr;}}

/* ---------- Footer ---------- */
.site-footer{background:var(--navy-900);color:#c9d1dc;padding:var(--space-6) 0 var(--space-4);}
.site-footer a{color:#dfe6ee;}
.site-footer a:hover{color:var(--gold-500);}
.footer-grid{display:grid;grid-template-columns:1.4fr 1fr 1fr;gap:var(--space-4);margin-bottom:var(--space-4);}
.footer-grid h4{color:#fff;font-size:.95rem;margin-bottom:12px;font-family:var(--font-sans);}
.footer-grid ul{list-style:none;padding:0;margin:0;}
.footer-grid li{margin-bottom:8px;font-size:.92rem;}
.footer-brand p{color:#9aa6b4;font-size:.88rem;max-width:340px;}
.footer-legal{border-top:1px solid rgba(255,255,255,.12);padding-top:var(--space-3);font-size:.82rem;color:#8b96a4;}
.footer-legal .legal-notice{background:rgba(255,255,255,.05);border-left:3px solid var(--gold-500);padding:12px 16px;border-radius:0 8px 8px 0;margin-bottom:16px;color:#a9b3c0;}
.footer-legal .legal-notice p{margin:4px 0;font-size:.85em;}
.footer-bottom{display:flex;justify-content:space-between;flex-wrap:wrap;gap:8px;margin-top:16px;}
@media (max-width:860px){.footer-grid{grid-template-columns:1fr;}}

/* ---------- Single post ---------- */
.breadcrumb{font-size:.85rem;color:var(--neutral-600);margin-bottom:var(--space-2);}
.breadcrumb a{color:var(--neutral-600);}
.article-header{padding:var(--space-6) 0 var(--space-3);}
.article-header .cat-badge{display:inline-block;background:var(--navy-900);color:var(--gold-500);font-size:.78rem;font-weight:700;letter-spacing:.05em;text-transform:uppercase;padding:6px 14px;border-radius:999px;margin-bottom:var(--space-2);}
.article-header h1{font-size:clamp(1.8rem,3.6vw,2.6rem);}
.article-meta{color:var(--neutral-500);font-size:.9rem;margin-top:8px;}
.article-hero-image{border-radius:var(--radius-lg);overflow:hidden;box-shadow:var(--shadow-md);margin:var(--space-3) 0 var(--space-5);aspect-ratio:16/9;}
.article-hero-image img{width:100%;height:100%;object-fit:cover;}

.article-body{font-size:1.06rem;line-height:1.8;color:var(--neutral-800);}
.article-body h2{margin-top:var(--space-6);padding-top:var(--space-2);border-top:1px solid var(--neutral-200);font-size:1.55rem;}
.article-body h2:first-of-type{border-top:none;margin-top:var(--space-3);}
.article-body h3{margin-top:var(--space-4);color:var(--navy-800);}
.article-body p{margin-bottom:1.2em;}
.article-body img{border-radius:var(--radius-md);box-shadow:var(--shadow-sm);margin:var(--space-3) 0;}
.article-body figure{margin:var(--space-4) 0;}
.article-body figcaption{color:var(--neutral-500);font-size:.85rem;text-align:center;margin-top:8px;}
.article-body a{text-decoration:underline;text-decoration-color:var(--gold-500);text-decoration-thickness:1.5px;}
.article-body blockquote{border-left:4px solid var(--gold-500);background:var(--neutral-100);padding:18px 22px;border-radius:0 var(--radius-sm) var(--radius-sm) 0;margin:var(--space-4) 0;color:var(--navy-800);font-style:normal;}
.article-body blockquote p:last-child{margin-bottom:0;}

.article-body table{width:100%;border-collapse:collapse;margin:var(--space-4) 0;font-size:.95rem;box-shadow:var(--shadow-sm);border-radius:var(--radius-sm);overflow:hidden;display:block;overflow-x:auto;white-space:nowrap;}
.article-body table thead{background:var(--navy-900);color:#fff;}
.article-body table th,.article-body table td{padding:12px 16px;border-bottom:1px solid var(--neutral-200);text-align:left;white-space:normal;}
.article-body table tbody tr:nth-child(even){background:var(--neutral-50);}
.article-body table tbody tr:hover{background:var(--neutral-100);}

.callout{background:linear-gradient(135deg,var(--neutral-100),var(--neutral-50));border:1px solid var(--neutral-200);border-left:4px solid var(--navy-900);border-radius:0 var(--radius-md) var(--radius-md) 0;padding:20px 24px;margin:var(--space-4) 0;}
.callout strong{color:var(--navy-900);}

.chart-bar{margin:var(--space-4) 0;}
.chart-bar .row{display:flex;align-items:center;gap:12px;margin-bottom:10px;}
.chart-bar .label{flex:0 0 130px;font-size:.88rem;color:var(--neutral-700);font-weight:600;}
.chart-bar .track{flex:1;background:var(--neutral-200);border-radius:999px;height:14px;overflow:hidden;}
.chart-bar .fill{height:100%;border-radius:999px;background:linear-gradient(90deg,var(--navy-700),var(--gold-500));}
.chart-bar .val{flex:0 0 auto;font-size:.85rem;color:var(--neutral-600);font-weight:700;}

.timeline{margin:var(--space-4) 0;border-left:2px solid var(--neutral-300);padding-left:24px;}
.timeline .t-item{position:relative;padding-bottom:var(--space-3);}
.timeline .t-item::before{content:"";position:absolute;left:-30px;top:4px;width:12px;height:12px;border-radius:50%;background:var(--gold-500);border:2px solid var(--navy-900);}
.timeline .t-item b{display:block;color:var(--navy-900);font-size:.98rem;}
.timeline .t-item span{color:var(--neutral-600);font-size:.88rem;}

.faq-item{border-bottom:1px solid var(--neutral-200);padding:16px 0;}
.faq-item summary{font-weight:700;cursor:pointer;color:var(--navy-900);list-style:none;display:flex;justify-content:space-between;align-items:center;padding:6px 0;min-height:44px;}
.faq-item summary::-webkit-details-marker{display:none;}
.faq-item summary::after{content:"+";font-size:1.3rem;color:var(--gold-600);transition:transform var(--transition-fast);}
.faq-item[open] summary::after{transform:rotate(45deg);}
.faq-item p{color:var(--neutral-700);margin-top:10px;}

.toc{background:var(--neutral-0);border:1px solid var(--neutral-200);border-radius:var(--radius-md);padding:20px 24px;margin:var(--space-3) 0 var(--space-5);}
#ez-toc-container{background:var(--neutral-0) !important;border:1px solid var(--neutral-200) !important;border-radius:var(--radius-md) !important;box-shadow:var(--shadow-sm);}
.ez-toc-title{font-family:var(--font-serif);color:var(--navy-900) !important;}

.legal-notice{font-size:.85em;color:#777;background:#f8f9fa;border-left:3px solid #cbd5e1;padding:10px 14px;margin-top:2em;border-radius:0 6px 6px 0;}
.ai-notice{font-size:.85em;color:#888;margin-top:2em;}

.related-posts{margin-top:var(--space-7);padding-top:var(--space-5);border-top:1px solid var(--neutral-200);}

/* ---------- Page (약관/방침) ---------- */
.legal-page .article-body h2{border-top:none;}
.legal-page .article-body{font-size:1rem;}

@media (max-width:600px){
  .btn{padding:12px 22px;}
  h1{font-size:2rem;}
}
