:root{
  --deep:#0A1628;
  --accent:#7A5340;
  --accent-soft:#EFE6E0;
  --accent-text:#FFFFFF;
  --midband:#F4F3EC;
  --bar-chrome:#E8EAED;
  --ink:#1c1c1c;
  --font-head:'Inter','Pretendard',sans-serif;
  --font-body:'Pretendard',sans-serif;
}
*{box-sizing:border-box;margin:0;padding:0;}
body{font-family:var(--font-body);color:var(--ink);line-height:1.7;background:#fff;}
h1,h2,h3{font-family:var(--font-head);font-weight:700;line-height:1.35;letter-spacing:-.01em;}
a{color:inherit;text-decoration:none;}
img{max-width:100%;display:block;border-radius:10px;}
ul{list-style:none;}
table{border-collapse:collapse;width:100%;}

.eyebrow{display:flex;align-items:center;gap:6px;color:var(--accent);font-family:var(--font-head);font-size:13px;font-weight:800;letter-spacing:.08em;margin-bottom:10px;text-transform:uppercase;}
.eyebrow svg{flex-shrink:0;}

/* header */
.site-header{position:fixed;top:0;left:0;right:0;z-index:100;background:#FFFFFF;border-bottom:1px solid #EDEDED;}
.site-header.scrolled{box-shadow:0 2px 10px rgba(0,0,0,.06);}
.header-inner{max-width:1200px;margin:0 auto;display:flex;align-items:center;justify-content:space-between;padding:18px 24px;}
.brand{font-family:var(--font-head);font-size:22px;font-weight:800;display:flex;gap:2px;}
.brand-the{color:var(--ink);}
.brand-accent{color:var(--accent);}
.main-nav{display:flex;gap:28px;font-size:15px;font-weight:500;}
.btn-cta{background:var(--accent);color:var(--accent-text);padding:10px 22px;border-radius:6px;font-size:14px;font-weight:600;}

/* hero (hero_id=4 비전트리플이미지) */
main{padding-top:76px;}
.hero-triple{max-width:1400px;margin:0 auto;padding:48px 24px;}
.hero-triple-text{max-width:640px;margin-bottom:32px;}
.hero-triple-text h1{font-size:30px;margin-bottom:16px;}
.hero-triple-text p{font-size:16px;color:#444;margin-bottom:24px;}
.btn-cta-lg{display:inline-block;background:var(--accent);color:#fff;padding:14px 30px;border-radius:6px;font-weight:600;}
.hero-triple-imgs{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;}
.hero-triple-imgs img{width:100%;height:260px;object-fit:cover;border-radius:14px;}

.hero-simple{position:relative;overflow:hidden;color:#fff;padding:120px 24px 64px;text-align:center;}
.hero-simple::before{content:'';position:absolute;inset:0;background:rgba(10,22,40,.6);z-index:0;}
.hero-simple img.hero-bg{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:-1;border-radius:0;}
.hero-simple h1,.hero-simple p{position:relative;z-index:1;color:#fff;}
.hero-simple h1{font-size:32px;}
.hero-simple p{margin-top:12px;color:#eee;}
.hero-case img{width:100%;height:420px;object-fit:cover;border-radius:0;}

/* sections */
.section-block{max-width:1000px;margin:0 auto;padding:64px 24px;}
.section-block h2{font-size:26px;margin-bottom:28px;}
.band-mid{background:var(--midband);max-width:none;}
.band-mid > *{max-width:1000px;margin:0 auto;}
.prose p{margin-bottom:16px;font-size:16px;color:#333;}
.check-list li{padding:10px 0 10px 24px;border-bottom:1px solid #eee;position:relative;}
.check-list li::before{content:'✓';position:absolute;left:0;color:var(--accent);font-weight:700;}

.info-table{margin:20px 0 8px;font-size:15px;}
.info-table th,.info-table td{border:1px solid #E5E5E5;padding:12px 14px;text-align:left;}
.info-table th{background:var(--accent-soft);color:var(--accent);font-weight:700;}

.brand-imgs{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;}
.brand-imgs img{aspect-ratio:4/3;object-fit:cover;}

/* section_variant=6 border-lift */
.process-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:20px;padding:64px 24px;max-width:1000px;margin:0 auto;}
.process-card{background:#fff;border-radius:10px;padding:24px 18px;border-top:3px solid var(--accent);transition:transform .2s,box-shadow .2s;}
.process-card:hover{transform:translateY(-4px);box-shadow:0 10px 24px rgba(0,0,0,.08);}
.process-n{color:var(--accent);font-family:var(--font-head);font-size:20px;font-weight:800;}
.process-card h3{font-size:17px;margin:8px 0;}
.process-card p{font-size:14px;color:#555;}

/* list_variant=1 editorial-card + draw_id=1 박스 호버 라인 */
.cases-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;}
.cases-grid-full{grid-template-columns:repeat(4,1fr);}
.related-row{display:grid;grid-template-columns:repeat(2,1fr);gap:16px;max-width:520px;}
.case-card{position:relative;border-radius:10px;overflow:hidden;border:1px solid transparent;transition:border-color .25s;}
.case-card:hover{border-color:var(--accent);}
.case-card img{aspect-ratio:4/3;object-fit:cover;transition:transform .3s;}
.case-card:hover img{transform:scale(1.05);}
.case-card span{position:absolute;bottom:0;left:0;right:0;padding:14px;background:linear-gradient(transparent,rgba(0,0,0,.7));color:#fff;font-size:14px;font-weight:600;}
.related-row .case-card img{height:180px;aspect-ratio:auto;}
.link-more{display:inline-block;margin-top:24px;color:var(--accent);font-weight:600;}

.case-label{color:var(--accent);font-weight:700;font-size:14px;margin-bottom:8px;}
.case-cover{width:550px;max-width:100%;height:410px;object-fit:cover;margin:20px 0;}
.row3{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;}
.row3 figure img{aspect-ratio:4/3;object-fit:cover;}
.row3 figcaption{text-align:center;font-size:13px;color:#666;margin-top:6px;font-weight:600;}
.gallery-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;}
.gallery-grid img{aspect-ratio:1;object-fit:cover;}

.faq-item{border-top:1px solid #eee;padding:20px 0;}
.faq-item h3{font-size:16px;margin-bottom:8px;}
.faq-item p{font-size:15px;color:#444;}

.contact-cards{display:grid;grid-template-columns:1fr 1fr;gap:20px;}
.contact-card{background:var(--accent-soft);border-radius:12px;padding:32px;text-align:center;}
.contact-card h3{color:var(--accent);margin-bottom:8px;}

/* closing */
.closing{position:relative;height:650px;overflow:hidden;}
.closing img{width:100%;height:100%;object-fit:cover;border-radius:0;}
.closing-overlay{position:absolute;inset:0;background:rgba(10,22,40,.55);display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;color:#fff;padding:24px;gap:16px;}
.closing-headline{font-family:var(--font-head);font-size:30px;font-weight:800;}
.closing-quote{font-size:16px;color:#eee;max-width:520px;}
.btn-consult{background:var(--accent);color:var(--accent-text);padding:14px 36px;border-radius:0;font-weight:600;margin-top:8px;}

/* footer */
.site-footer{background:#fff;border-top:1px solid #E5E5E5;padding:56px 24px 0;}
.footer-inner{max-width:1200px;margin:0 auto;display:grid;grid-template-columns:repeat(4,1fr);gap:32px;}
.f-brand .brand-the,.f-brand .brand-accent{font-size:22px;}
.f-col h4{font-size:14px;margin-bottom:12px;color:#888;}
.f-col a,.f-col p{display:block;font-size:14px;color:#555;margin-bottom:8px;}
.f-col a.btn-cta{display:inline-block;color:var(--accent-text);margin-top:4px;}
.footer-bottom{max-width:1200px;margin:24px auto 0;padding-bottom:24px;font-size:13px;color:#999;}
.footer-addr{white-space:nowrap;overflow-x:auto;margin-bottom:6px;}

.mobile-sticky-cta{display:none;}

@media (max-width:860px){
  .hero-triple-imgs{grid-template-columns:1fr;}
  .hero-triple-imgs img{height:200px;}
  .main-nav{display:none;}
  .process-grid,.gallery-grid,.row3{grid-template-columns:repeat(2,1fr);}
  .cases-grid,.cases-grid-full,.related-row,.brand-imgs{grid-template-columns:repeat(2,1fr);}
  .footer-inner{grid-template-columns:1fr 1fr;}
  .contact-cards{grid-template-columns:1fr;}
  .mobile-sticky-cta{display:flex;position:fixed;bottom:0;left:0;right:0;z-index:200;background:var(--accent);color:#fff;padding:14px 20px;justify-content:space-between;align-items:center;transform:translateY(100%);transition:transform .25s;}
  .mobile-sticky-cta.show{transform:translateY(0);}
  .site-footer{padding-bottom:90px;}
}
