/* BASIC css start */
 :root {
    --orange: #ed6d00;
    --orange-light: #ff8c2a;
    --orange-pale: #fff3e8;
    --orange-deep: #c45900;
    --black: #111110;
    --dark: #1c1c1a;
    --dark-2: #2a2a28;
    --white: #ffffff;
    --off-white: #fafaf8;
    --gray-100: #f2f1ee;
    --gray-200: #e4e3df;
    --gray-400: #a8a7a2;
    --gray-600: #6a6965;
    --text-main: #111110;
    --text-sub: #5a5957;
  }
 
  .bbs-tit {max-width:1690px;margin: 0 auto;}
 
  @keyframes fadeUp { from{opacity:0;transform:translateY(28px)} to{opacity:1;transform:translateY(0)} }
  @keyframes fadeIn { from{opacity:0} to{opacity:1} }
  @keyframes spin { to{transform:rotate(360deg)} }
    @import url('https://fonts.googleapis.com/css2?family=Special+Gothic+Expanded+One&display=swap');

.special-gothic-expanded-one-regular {
  font-family: "Special Gothic Expanded One", sans-serif;
  font-weight: 400;
  font-style: normal;
}


 
 
  .reveal { opacity:0; transform:translateY(28px); transition:opacity .7s ease, transform .7s ease; }
  .reveal.visible { opacity:1; transform:translateY(0); }
  .d1{transition-delay:.1s}.d2{transition-delay:.2s}.d3{transition-delay:.3s}.d4{transition-delay:.4s}
 
  /* ═══════════════════════════
     HERO
  ═══════════════════════════ */
  .hero {
    min-height: 67vh;
    background: var(--off-white);
    position: relative;
    overflow: hidden;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 0 10%;
  }
 
  /* 오렌지 사각형 배경 장식 */
  .hero-deco-rect {
    position: absolute;
    top: 0; right: 0;
    width: 45vw; height: 100%;
    background: var(--orange);
    clip-path: polygon(12% 0, 100% 0, 100% 100%, 0% 100%);
  }
 
  /* 큰 배경 타이포 */
  .hero-bg-type {
  font-family: "Special Gothic Expanded One", sans-serif; font-weight: 400;
    position: absolute;
    right: 10px; bottom: -15px;
    font-size: clamp(120px, 22vw, 260px);
    color: rgba(255,255,255,.1);
    line-height: 1;
    letter-spacing: 4px;
    pointer-events: none;
    user-select: none;
  }
 
  /* 회전하는 원형 배지 */
  .hero-badge-circle {
    position: absolute;
    top: 10%;
    right: 6%;
    width: 110px;
    height: 110px;
    z-index: 3;
  }
  .hero-badge-circle svg {
    width: 100%; height: 100%;
    animation: spin 14s linear infinite;
  }
  .hero-badge-circle-dot {
    position: absolute;
    top: 50%; left: 50%;
    transform: translate(-50%, -50%);
    width: 36px; height: 36px;
    background: var(--white);
    border-radius: 50%;
    display: flex; align-items: center; justify-content: center;
  }
  .hero-badge-circle-dot svg { width: 18px; height: 18px; fill:none; stroke: var(--orange); stroke-width:2; stroke-linecap:round; stroke-linejoin:round; animation: none; }
 
  .hero-content {
    position: relative; z-index: 2;
    max-width: 760px;
  }
 
  .hero-eyebrow {
    display: flex; align-items: center; gap: 12px;
    margin-bottom: 28px;
    animation: fadeUp .6s ease both;
  }
  .hero-eyebrow-line { width: 32px; height: 2px; background: var(--orange); }
  .hero-eyebrow-text {
    font-size: 11px; font-weight: 600; letter-spacing: 3px;
    text-transform: uppercase; color: var(--orange);
  }
 
 
  .hero-logo-wrap {animation: fadeUp .6s .1s ease both; }
 
  /* 로고 placeholder */
  .logo-placeholder {
    display: inline-flex; align-items: center; justify-content: center;
    width: 180px; height: 64px;
    border: 2px dashed var(--gray-200);
    border-radius: 8px;
    color: var(--gray-400);
    font-size: 11px; letter-spacing: 1px;
    background: var(--white);
    margin-bottom: 20px;
  }
 
    .hero-brand-name {display: block; margin:5% 0; animation: fadeUp .6s .1s ease both; }
    .hero-brand-name img {height:110px;}

 
  .hero-brand-name {display: block;}
 
  .hero-tagline {
    font-size: clamp(15px, 2vw, 20px);
    color: var(--text-sub);
    line-height: 1.7;
    margin-top: 20px;
    margin-bottom: 40px;
    animation: fadeUp .6s .22s ease both;
  }
  .hero-tagline strong {color: var(--orange);font-style: normal;font-family: "Special Gothic Expanded One", sans-serif;}
 
  .hero-chips {
    display: flex; gap: 10px; flex-wrap: wrap;
    animation: fadeUp .6s .32s ease both;
  }
  .chip {
    display: inline-flex; align-items: center; gap: 6px;
    padding: 7px 14px; border-radius: 40px;
    border: 1px solid var(--gray-200);
    background: var(--white);
    font-size: 12px; font-weight: 500; color: var(--text-sub);
  }
  .chip-dot { width: 6px; height: 6px; border-radius: 50%; background: var(--orange); }
 
  .hero-scroll-hint {
    position: absolute;
    bottom: 36px; left: 10%;
    display: flex; align-items: center; gap: 12px;
    animation: fadeUp .6s .5s ease both;
  }
  .scroll-track {
    width: 32px; height: 1px; background: var(--gray-200);
    position: relative; overflow: hidden;
  }
  .scroll-track::after {
    content: '';
    position: absolute; top:0; left:-100%;
    width: 100%; height: 100%; background: var(--orange);
    animation: slide 1.6s ease-in-out infinite;
  }
  @keyframes slide { 0%{left:-100%} 100%{left:100%} }
  .scroll-hint-text { font-size: 10px; letter-spacing: 2px; color: var(--gray-400); text-transform: uppercase; }
 
  /* ═══════════════════════════
     SECTION COMMON
  ═══════════════════════════ */
  .section { padding: 7% 7%; }
  .inner { max-width: 1160px; margin: 0 auto; }
  .inner2 { max-width: 1345px; margin: 0 auto; }
  .s-eyebrow {
    display: flex; align-items: center; gap: 10px; margin-bottom: 14px;
  }
  .s-eyebrow-line { width: 28px; height: 2px; background: var(--orange); flex-shrink: 0; }
  .s-eyebrow-text { font-size: 11px; font-weight: 600; letter-spacing: 3px; text-transform: uppercase; color: var(--orange); }
  .s-title {
    font-size: clamp(24px, 3.5vw, 42px);
    font-weight: 700; line-height: 1.28;
    color: var(--black); word-break: keep-all;
    margin-bottom: 10px;
  }
  .s-title.light { color: var(--white); }
  .s-body { font-size: 15px; color: var(--text-sub); line-height: 1.9; word-break: keep-all; }
 
  /* ═══════════════════════════
     STORY SECTION
  ═══════════════════════════ */
  .story-section { background: var(--white); }
 
  .story-layout {
    display: grid;
    grid-template-columns: 1fr;
    gap: 0;
    max-width: 720px;
  }
 
  .word-split {
    display: inline-flex;
    border-radius: 10px;
    overflow: hidden;
    margin-top: 14px;
    margin-bottom: 35px;
    box-shadow: 0 4px 24px rgba(0,0,0,.08);
  }
  .ws-block {
    padding: 16px 22px;
    display: flex; flex-direction: column; gap: 4px;
  }
  .ws-block:first-child { background: var(--black); }
  .ws-block:last-child { background: var(--orange); }
  .ws-en { font-family: "Special Gothic Expanded One", sans-serif; font-size: 30px; letter-spacing: 1px; color: var(--white); line-height: 1; font-weight:600;}
  .ws-ko { font-size: 13px; color: rgba(255,255,255,.6); letter-spacing: 1.5px; text-transform: uppercase; }
 
  .story-desc { font-size: 15px; color: var(--text-sub); line-height: 1.95; word-break: keep-all; }
  .story-desc strong { color: var(--black); font-weight: 700; }
 
  .story-meta {
    display: flex; gap: 0;
    border: 1px solid var(--gray-200); border-radius: 10px; overflow: hidden;
  }
  .sm-item {
    flex: 1; padding: 16px 20px;
    border-right: 1px solid var(--gray-200);
    display: flex; flex-direction: column; gap: 4px;
  }
  .sm-item:last-child { border-right: none; }
  .sm-label { font-size: 10px; font-weight: 600; letter-spacing: 1.5px; text-transform: uppercase; color: var(--orange); }
  .sm-val { font-size: 14px; font-weight: 700; color: var(--black); }
 
  /* 우측 이미지 스택 */
  .story-img-stack { position: relative; height: 480px; }
  .si-main {
    position: absolute; top: 0; left: 20px; right: 0; bottom: 40px;
    border-radius: 16px; overflow: hidden;
  }
  .si-main img { width:100%; height:100%; object-fit:cover; display:block; }
  .si-accent {
    position: absolute; bottom: 0; left: 0;
    width: 160px; height: 160px;
    border-radius: 12px; overflow: hidden;
    border: 4px solid var(--white);
    box-shadow: 0 8px 32px rgba(0,0,0,.15);
    z-index: 2;
  }
  .si-accent img { width:100%; height:100%; object-fit:cover; display:block; }
  .si-tag {
    position: absolute; top: 20px; left: 0;
    background: var(--orange); color: var(--white);
    font-size: 11px; font-weight: 700; letter-spacing: 1.5px;
    text-transform: uppercase; padding: 8px 16px;
    border-radius: 0 6px 6px 0;
    z-index: 3;
  }
 
  /* ═══════════════════════════
     PROCESS SECTION
  ═══════════════════════════ */
  .process-section { background: var(--black); position: relative; overflow: hidden; }
 
  .process-bg-type {
    position: absolute; left: -20px; bottom: -60px;
    font-size: 280px; color: rgba(255,255,255,.03);
    line-height: 1; pointer-events: none; user-select: none;
    letter-spacing: 4px;
  }
 
  .process-header {
    margin-bottom: 64px;
  }
 
  .process-steps {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 2px;
    position: relative; z-index: 1;
  }
 
  .pstep {
    display: flex; flex-direction: column;
    border-radius: 0; overflow: hidden;
    transition: transform .25s;
    cursor: default;
  }
  .pstep:first-child { border-radius: 12px 0 0 12px; }
  .pstep:last-child  { border-radius: 0 12px 12px 0; }
  .pstep:hover { transform: translateY(-6px); }
 
  .pstep-num {
    background: var(--dark-2);
    display: flex; align-items: center; justify-content: center;
    padding: 28px 0 22px;
    font-family: "Special Gothic Expanded One", sans-serif;
    font-size: 14px; color: rgba(237,109,0,.5);
    font-weight:600;
    transition: background .25s;
    flex-direction: column; gap: 12px;
  }
  .pstep:hover .pstep-num { background: var(--orange); color: rgba(255,255,255,.7); }
  .pstep-num svg { width: 40px; height: 40px; fill:none; stroke: var(--orange); stroke-width:1.4; stroke-linecap:round; stroke-linejoin:round; transition: stroke .25s; }
  .pstep:hover .pstep-num svg { stroke: var(--white); }
 
  .pstep-body {
    background: var(--dark);
    padding: 22px 24px 28px;
    flex: 1;
  }
  .pstep-title { font-size: 15px; font-weight: 700; color: var(--white); margin-bottom: 8px; }
  .pstep-desc { font-size: 12.5px; color: rgba(255,255,255,.45); line-height: 1.75; word-break: keep-all; }
 
  /* ═══════════════════════════
     BRAND VALUES (merged into story)
  ═══════════════════════════ */
  .bv-grid {
    display: grid; grid-template-columns: 1fr 1fr;
    gap: 14px; margin-top: 40px;
  }
  .bv-item {
    display: flex; gap: 14px; align-items: flex-start;
    padding: 18px 18px;
    background: var(--gray-100);
    border-radius: 10px;
    border-left: 4px solid var(--orange);
    transition: box-shadow .2s, transform .2s;
  }
  .bv-item:hover { box-shadow: 0 4px 20px rgba(237,109,0,.1); transform: translateX(4px); }
  .bv-icon { width: 36px; height: 36px; background: var(--white); border-radius: 8px; display:flex; align-items:center; justify-content:center; flex-shrink:0; }
  .bv-icon svg { width:17px; height:17px; fill:none; stroke:var(--orange); stroke-width:1.8; stroke-linecap:round; stroke-linejoin:round; }
  .bv-text strong { display:block; font-size:14px; font-weight:700; color:var(--black); margin-bottom:3px; }
  .bv-text p { font-size:11.5px; color:var(--text-sub); line-height:1.7; }
 
  /* ═══════════════════════════
     PRODUCTS SECTION
  ═══════════════════════════ */
  .products-section { background: var(--white); }
 
  .products-header {margin-bottom: 48px;}
  .products-note { font-size: 14px; color: var(--gray-400); line-height: 1.6; }
 
  /* Bento-style 그리드 */
  .bento {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    grid-template-rows: 300px 240px;
    gap: 14px;
  }
 
  .bento-card {
    border-radius: 14px; overflow: hidden;
    position: relative; cursor: default;
    transition: transform .3s, box-shadow .3s;
    background: var(--gray-100);
  }
  .bento-card:hover { transform: scale(1.02); box-shadow: 0 16px 48px rgba(0,0,0,.12); }
  .bento-card.span2 { grid-column: span 2; }
 
  .bento-img { position: absolute; inset: 0; }
  .bento-img img { width: 100%; height: 100%; object-fit: cover; display: block; }
  .bento-overlay {
    position: absolute; inset: 0;
    background: linear-gradient(180deg, transparent 40%, rgba(0,0,0,.7) 100%);
  }
  .bento-body {
    position: absolute; bottom: 0; left: 0; right: 0;
    padding: 20px 22px;
  }
  .bento-cat {
    display: inline-block;
    background: var(--orange); color: var(--white);
    font-size: 10px; font-weight: 700; letter-spacing: 1.5px;
    text-transform: uppercase; padding: 3px 10px;
    border-radius: 20px; margin-bottom: 6px;
  }
  .bento-name { font-size: 16px; font-weight: 700; color: var(--white); margin-bottom: 4px; }
  .bento-desc { font-size: 11.5px; color: rgba(255,255,255,.6); line-height: 1.5; }
 
  /* ═══════════════════════════
     CTA SECTION
  ═══════════════════════════ */
  .cta-section {
    background: var(--orange);
    position: relative; overflow: hidden;
  }
  .cta-bg-grid {
    position: absolute; inset: 0;
    background-image:
      linear-gradient(rgba(255,255,255,.06) 1px, transparent 1px),
      linear-gradient(90deg, rgba(255,255,255,.06) 1px, transparent 1px);
    background-size: 48px 48px;
  }
  .cta-bg-type {
    position: absolute; right: -20px; bottom: -60px;
    font-size: 280px; color: rgba(255,255,255,.07);
    line-height: 1; pointer-events: none;
    letter-spacing: 4px;
  }
  .cta-inner { position: relative; z-index: 1; max-width: 640px; }
  .cta-label { font-size: 11px; font-weight: 700; letter-spacing: 3px; text-transform: uppercase; color: rgba(255,255,255,.6); margin-bottom: 14px; }
  .cta-title { font-size: clamp(28px,4vw,50px); color: var(--white); font-weight: 700; line-height: 1.3; margin-bottom: 18px; word-break: keep-all; }
  .cta-sub { font-size: 15px; color: rgba(255,255,255,.65); line-height: 1.85; margin-bottom: 40px; }
  .cta-btns { display: flex; gap: 12px; flex-wrap: wrap; }
  .btn-white { display:inline-flex; align-items:center; gap:8px; background:var(--white); color:var(--orange); font-size:14px; font-weight:700; padding:14px 28px; border-radius:5px; text-decoration:none; transition:all .2s; letter-spacing:.3px; }
  .btn-white:hover { background:var(--black); color:var(--white); transform:translateY(-2px); }
  .btn-ghost { display:inline-flex; align-items:center; gap:8px; border:1.5px solid rgba(255,255,255,.4); color:var(--white); font-size:14px; font-weight:500; padding:14px 28px; border-radius:5px; text-decoration:none; transition:all .2s; }
  .btn-ghost:hover { background:rgba(255,255,255,.12); border-color:var(--white); }
 
  @media (max-width: 900px) {
    .hero-deco-rect { width: 100%; clip-path: none; height: 40vh; top: auto; bottom: 0; }
    .hero-brand-name { color: var(--black); }
    .story-layout { grid-template-columns: 1fr; }
    .story-img-stack { display: none; }
    .process-header { grid-template-columns: 1fr; }
    .process-steps { grid-template-columns: repeat(2, 1fr); }
    .pstep:first-child { border-radius: 12px 0 0 0; }
    .pstep:nth-child(2) { border-radius: 0 12px 0 0; }
    .pstep:nth-child(3) { border-radius: 0 0 0 12px; }
    .pstep:last-child  { border-radius: 0 0 12px 0; }
    .pstep:hover { transform: translateY(-4px); }
    .bento { grid-template-columns: 1fr 1fr; grid-template-rows: 220px 220px 220px; }
    .bento-card.span2 { grid-column: span 2; }
  }
  @media (max-width: 580px) {
    .bv-grid { grid-template-columns: 1fr; }
    .bento { grid-template-columns: 1fr; grid-template-rows: none; }
    .bento-card.span2 { grid-column: span 1; }
    .bento-card { height: 220px; }
  }
  
  
  
  
  
  


/* 탭 콘텐츠 */
.products-section .tab_cont { display: none; }
.products-section .tab_cont.active { display: block; }

/* 상품 목록 */
.products-section .sec10_cont ul { display: flex; flex-wrap: wrap; }
.products-section .sec10_cont ul li { width: 310px; margin-right: 35px; }
.products-section .sec10_cont ul li:nth-child(4n) { margin-right: 0; }

/* more 버튼 */
.products-section .sec10_cont { position: relative; }
.products-section .sec10_cont div.more { display: block; text-align: right; position: absolute; height: auto; top: -60px; right: 0; }


/* BASIC css end */

