
/* Layout: 한 페이지 스크롤. 상단 고정 메뉴 → 6개 구역. 소비자(구매)와 업체(납품) 두 갈래 동선이 첫 화면에서 갈라짐 */
:root{
  --bg:#FBFAF8; --surface:#F1EEEA; --fg:#231A16; --muted:#6E625B;
  --glaze:#8E2F1C;   /* 족발 윤기, 주 강조색 */
  --cold:#2F5D73;    /* 냉동·위생, 보조색 */
  --line:#DDD6CF; --onaccent:#FFFFFF;
  --ph:#E6E0D9; --ph-fg:#8A7D74;
  --display:"Gowun Batang", "Noto Serif KR", "AppleMyungjo", serif;
  --body:"IBM Plex Sans KR", "Apple SD Gothic Neo", "Malgun Gothic", sans-serif;
}
@media (prefers-color-scheme: dark){:root:not([data-theme="light"]){
  --bg:#17120F; --surface:#221B17; --fg:#F1EAE4; --muted:#B3A69C;
  --glaze:#E07A5C; --cold:#7FB3CB; --line:#3A302A; --onaccent:#17120F;
  --ph:#2C241F; --ph-fg:#998B80; color-scheme:dark}}
:root[data-theme="dark"]{
  --bg:#17120F; --surface:#221B17; --fg:#F1EAE4; --muted:#B3A69C;
  --glaze:#E07A5C; --cold:#7FB3CB; --line:#3A302A; --onaccent:#17120F;
  --ph:#2C241F; --ph-fg:#998B80; color-scheme:dark}

*{box-sizing:border-box}
body{background:var(--bg);color:var(--fg);font-family:var(--body);font-size:16px;line-height:1.7;margin:0;word-break:keep-all;overflow-wrap:break-word}
body::before{content:"";position:fixed;inset:0 0 auto;height:env(safe-area-inset-top,0px);z-index:10;background:var(--bg)}
a{color:inherit}
.wrap{max-width:1080px;margin:0 auto;padding-left:max(16px,env(safe-area-inset-left,0px));padding-right:max(16px,env(safe-area-inset-right,0px))}
h1,h2,h3{font-family:var(--display);font-weight:700;text-wrap:balance;margin:0;line-height:1.3}
h2{font-size:clamp(1.6rem,3.2vw,2.2rem)}
h3{font-size:1.2rem}
p{margin:0}
.eyebrow{font-size:.78rem;letter-spacing:.12em;color:var(--glaze);font-weight:600}
.lead{color:var(--muted);max-width:60ch}

/* 시안 안내 */

/* 메뉴 */
header{position:sticky;top:env(safe-area-inset-top,0px);z-index:5;background:var(--bg);border-bottom:1px solid var(--line)}
header .wrap{display:flex;align-items:center;justify-content:space-between;gap:16px;padding-block:12px}
.logo{font-family:var(--display);font-weight:700;font-size:1.25rem;text-decoration:none}
.logo small{font-family:var(--body);font-size:.75rem;color:var(--muted);font-weight:500;margin-left:6px}
nav ul{list-style:none;display:flex;gap:20px;margin:0;padding:0;flex-wrap:wrap}
nav a{text-decoration:none;font-size:.92rem;color:var(--muted)}
nav a:hover,nav a:focus-visible{color:var(--fg)}
.nav-buy{color:var(--glaze)!important;font-weight:600}
@media (max-width:760px){nav ul{gap:12px}nav li.opt{display:none}.logo small{display:none}}

/* 버튼 */
.btn{display:inline-flex;align-items:center;justify-content:center;padding:13px 22px;border-radius:4px;font-weight:600;text-decoration:none;font-size:.98rem;border:1.5px solid transparent;cursor:pointer;font-family:var(--body)}
.btn-glaze{background:var(--glaze);color:var(--onaccent)}
.btn-line{border-color:var(--fg);color:var(--fg);background:transparent}
.btn:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid var(--cold);outline-offset:2px}

/* 사진 자리 */
.photo{display:block;width:100%;height:auto;object-fit:cover;border-radius:2px;background:var(--ph)}
.ph{background:var(--ph);color:var(--ph-fg);display:flex;align-items:center;justify-content:center;text-align:center;font-size:.85rem;padding:12px;border-radius:2px;max-width:100%}

section{padding-block:72px}
section+section{border-top:1px solid var(--line)}

/* 첫 화면 */
.hero .hero-grid{display:grid;grid-template-columns:1.1fr 1fr;gap:48px;align-items:center}
.hero h1{font-size:clamp(2rem,4.6vw,3.2rem);margin-top:12px}
.hero .lead{margin-top:18px}
.split{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:32px}
.split a{display:flex;flex-direction:column;gap:4px;padding:16px;border:1px solid var(--line);border-radius:4px;text-decoration:none;background:var(--surface)}
.split a b{font-size:1rem}
.split a{transition:border-color .15s,transform .15s}.split a:hover{border-color:currentColor;transform:translateY(-2px)}
.split a span{font-size:.85rem;color:var(--muted)}
.split a.b2c b{color:var(--glaze)}
.split a.b2b b{color:var(--cold)}
.hero .ph,.hero .photo{aspect-ratio:4/5}
@media (max-width:760px){.hero .hero-grid{grid-template-columns:1fr}.hero .photo{aspect-ratio:4/3}}

/* 수치 띠 */
.facts{display:grid;grid-template-columns:repeat(4,1fr);gap:0;border:1px solid var(--line);border-radius:4px;margin-top:40px;background:var(--surface)}
.facts div{padding:18px;border-right:1px solid var(--line)}
.facts div:last-child{border-right:0}
.facts b{display:block;font-family:var(--display);font-size:1.35rem}
.facts span{font-size:.82rem;color:var(--muted)}
@media (max-width:760px){.facts{grid-template-columns:1fr 1fr}.facts div:nth-child(2){border-right:0}.facts div:nth-child(-n+2){border-bottom:1px solid var(--line)}}

/* 회사 소개 */
.about .wrap{display:grid;grid-template-columns:1fr 1fr;gap:48px;align-items:start}
.about .body{display:flex;flex-direction:column;gap:16px}
.motto{font-family:var(--display);font-size:1.15rem;border-left:3px solid var(--glaze);padding-left:16px;color:var(--fg)}
.about .photo{aspect-ratio:10/3}
@media (max-width:760px){.about .wrap{grid-template-columns:1fr;gap:28px}}

.about .ceo-wrap{display:block}
.ceo{display:grid;grid-template-columns:260px 1fr;gap:40px;align-items:center;margin-top:56px;padding-top:48px;border-top:1px solid var(--line)}
.ceo .photo{aspect-ratio:2/3;border-radius:4px}
.ceo .body{display:flex;flex-direction:column;gap:14px;min-width:0}
.ceo .sign{font-family:var(--display);font-weight:700;color:var(--fg)}
@media (max-width:760px){.ceo{grid-template-columns:1fr;gap:24px}.ceo .photo{max-width:260px}}
.film .wrap{display:grid;grid-template-columns:minmax(0,340px) 1fr;gap:48px;align-items:center}
.film video{width:100%;height:auto;aspect-ratio:9/16;border-radius:6px;background:#000;display:block}
.film .body{display:flex;flex-direction:column;gap:14px;min-width:0}
@media (max-width:760px){.film .wrap{grid-template-columns:1fr;gap:24px}.film video{max-width:340px}}
.callbar{display:none}
@media (max-width:760px){.callbar{display:flex;position:fixed;left:0;right:0;bottom:0;z-index:20;gap:8px;padding:10px max(12px,env(safe-area-inset-right,0px)) calc(10px + env(safe-area-inset-bottom,0px)) max(12px,env(safe-area-inset-left,0px));background:var(--bg);border-top:1px solid var(--line)}
.callbar a{flex:1;text-align:center;padding:12px 0;border-radius:4px;font-weight:600;text-decoration:none}
.callbar .c1{background:var(--glaze);color:var(--onaccent)}.callbar .c2{border:1.5px solid var(--fg);color:var(--fg)}
body{padding-bottom:72px}}
footer a.pp{color:var(--fg);font-weight:600}
/* 제품 */
.sec-head{display:flex;flex-direction:column;gap:10px;margin-bottom:36px}
.products{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}
.prod{display:flex;flex-direction:column;gap:10px}
.prod .ph,.prod .photo{aspect-ratio:1}
.prod .cut{font-size:.78rem;color:var(--cold);font-weight:600}
.prod p{font-size:.88rem;color:var(--muted)}
@media (max-width:900px){.products{grid-template-columns:1fr 1fr}}
@media (max-width:560px){.products{grid-template-columns:1fr}}

/* 생산·위생 */
.process{display:grid;grid-template-columns:repeat(4,1fr);gap:20px;counter-reset:step}
.step{display:flex;flex-direction:column;gap:10px}
.step .photo{aspect-ratio:4/3}
.line-photo{aspect-ratio:21/9;margin-bottom:28px}
@media (max-width:760px){.line-photo{aspect-ratio:4/3}}
.step h3::before{counter-increment:step;content:counter(step) ". ";color:var(--glaze)}
.step p{font-size:.88rem;color:var(--muted)}
.cert{display:flex;gap:20px;align-items:center;margin-top:40px;padding:20px;border:1px solid var(--line);border-radius:4px}
.cert a{flex:none}.cert img{width:160px;height:auto;border:1px solid var(--line);border-radius:2px;display:block}
.cert div{min-width:0}
@media (max-width:900px){.process{grid-template-columns:1fr 1fr}}
@media (max-width:520px){.cert{flex-direction:column;align-items:flex-start}}

/* 납품 안내 */
.b2b{background:var(--surface)}
.b2b-grid{display:grid;grid-template-columns:1fr 1fr;gap:40px}
.terms{border-collapse:collapse;width:100%;font-size:.92rem;font-variant-numeric:tabular-nums}
.terms th,.terms td{text-align:left;padding:10px 8px;border-bottom:1px solid var(--line);vertical-align:top}
.terms th{font-weight:600;color:var(--muted);width:32%}
.table-box{overflow-x:auto}
form{display:flex;flex-direction:column;gap:14px}
label{font-size:.85rem;font-weight:600;display:flex;flex-direction:column;gap:6px}
input,select,textarea{font:inherit;padding:11px 12px;border:1px solid var(--line);border-radius:4px;background:var(--bg);color:var(--fg)}
textarea{min-height:90px;resize:vertical}
.row2{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.note{font-size:.82rem;color:var(--muted)}
.side{display:flex;flex-direction:column;gap:16px;min-width:0}
.hp{position:absolute;left:-9999px;width:1px;height:1px;opacity:0}
.agree{flex-direction:row;align-items:flex-start;gap:8px;font-weight:400;color:var(--muted);font-size:.8rem;line-height:1.5}
.agree input{margin-top:3px;flex:none}
.call-line{font-size:.92rem;color:var(--muted)}
.call-line a{color:var(--glaze);font-weight:600}
.ok{color:var(--cold);font-weight:600}.err{color:var(--glaze);font-weight:600}
.call{display:flex;flex-direction:column;gap:10px;padding:28px;border:1px solid var(--line);border-radius:4px;background:var(--bg);align-self:start}
.call-num{font-family:var(--display);font-size:clamp(1.8rem,4vw,2.4rem);font-weight:700;color:var(--glaze);text-decoration:none;font-variant-numeric:tabular-nums}
@media (max-width:760px){.b2b-grid{grid-template-columns:1fr}.row2{grid-template-columns:1fr}}

/* 구매 */
.buy .wrap{display:flex;flex-direction:column;align-items:flex-start;gap:16px}
.buy-links{display:flex;gap:12px;flex-wrap:wrap;margin-top:8px}

footer{border-top:1px solid var(--line);padding-block:32px;font-size:.85rem;color:var(--muted)}
footer .wrap{display:flex;flex-direction:column;gap:6px}
.todo{background:color-mix(in srgb,var(--glaze) 14%,transparent);color:var(--glaze);padding:0 4px;border-radius:2px;font-weight:600}
@media (prefers-reduced-motion:no-preference){html{scroll-behavior:smooth}}

.faq{display:flex;flex-direction:column;border-top:1px solid var(--line);max-width:820px}
.faq details{border-bottom:1px solid var(--line)}
.faq summary{cursor:pointer;padding:18px 4px;font-weight:600;list-style:none;display:flex;justify-content:space-between;gap:16px}
.faq summary::-webkit-details-marker{display:none}
.faq summary::after{content:"+";color:var(--glaze);font-size:1.2rem;line-height:1}
.faq details[open] summary::after{content:"−"}
.faq details p{padding:0 4px 18px;color:var(--muted);max-width:68ch}
.lead a,.b2b a{color:var(--glaze);font-weight:600}
