/* apr-in.com 참고 구조 (2026-10-19): 전체메뉴 사이트맵, 메인 6단 구성, 회사정보 푸터.
   색·글꼴은 기존 아이보리·초록 톤과 태-나무B 브랜드 글씨를 그대로 쓴다. 직접 관리하는 소스 파일. */

/* ── 헤더: 모든 화면 폭에서 전체메뉴 버튼 ── */
header .menu-toggle{display:inline-flex;align-items:center;gap:10px;border:1px solid #9cae9e;padding:10px 16px;min-height:46px;color:var(--green);font-size:15px;white-space:nowrap;flex-shrink:0}
header .menu-toggle span{margin-left:0!important}
.header-inner>.member-purchase+.menu-toggle{margin-left:10px}

/* ── 전체메뉴: 사이트맵형 전체 화면 ── */
#mobile-menu{width:100%;max-width:none;height:100dvh;max-height:100dvh;margin:0;padding:0;background:var(--paper);overflow-y:auto}
#mobile-menu .menu-top{max-width:1248px;margin:0 auto;padding:22px 24px;border-bottom:1px solid var(--line)}
#mobile-menu .menu-top h2{flex-direction:row;align-items:center;gap:16px}
#mobile-menu .menu-close{border:1px solid #9cae9e;padding:10px 18px;color:var(--green)}
#mobile-menu nav{max-width:1248px;margin:0 auto;padding:56px 24px 24px;display:grid;grid-template-columns:repeat(3,1fr);gap:48px}
#mobile-menu .mobile-group{padding:0}
#mobile-menu .mobile-group h3{display:flex;align-items:baseline;gap:12px;font-size:28px;color:var(--green);letter-spacing:-.04em;padding-bottom:18px;margin-bottom:8px;border-bottom:2px solid var(--green)}
#mobile-menu .mobile-group h3 span{font-size:13px;color:#a42129;letter-spacing:.08em}
#mobile-menu .mobile-group a{min-height:56px;font-size:18px!important;padding:12px 0!important}
#mobile-menu .mobile-group a:hover{color:#a42129}
#mobile-menu>p{max-width:1248px;margin:24px auto 0;padding:0 24px 48px}

/* ── 01 메인 비주얼 슬라이드 ── */
.main-visual{position:relative;display:flex;min-height:clamp(560px,calc(100svh - 120px),820px);overflow:hidden;background:#1c3426}
.visual-media{position:absolute;inset:0}
.visual-photo{width:100%;height:100%;object-fit:cover;object-position:50% 50%;transform:scale(1);transition:object-position 1.2s ease,transform 1.6s ease}
.visual-media[data-slide-active="2"] .visual-photo{object-position:15% 65%;transform:scale(1.1)}
.visual-media[data-slide-active="3"] .visual-photo{object-position:90% 35%;transform:scale(1.05)}
.visual-media:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,#f7f5ef 0%,#f7f5efeb 36%,#f7f5ef80 58%,#f7f5ef00 80%)}
.visual-inner{position:relative;z-index:1;width:100%;max-width:1248px;margin:0 auto;padding:72px 24px 36px;display:flex;flex-direction:column;justify-content:space-between;gap:48px}
.visual-slide{max-width:640px}
.visual-slide h1{font-size:clamp(40px,4.6vw,66px);margin:24px 0;line-height:1.3}
.visual-title{font-size:clamp(38px,4.4vw,62px);font-weight:500;letter-spacing:-.055em;line-height:1.3;margin:24px 0;color:var(--ink)}
.visual-title .package-script{font-size:1.3em}
.visual-lead{font-size:18px;line-height:1.9;color:#45553f;margin-bottom:36px}
.visual-slide.is-entering{animation:visualIn .7s ease both}
@keyframes visualIn{from{opacity:0;transform:translateY(16px)}to{opacity:1;transform:none}}
.visual-controls{display:flex;align-items:center;gap:16px;flex-wrap:wrap;border-top:1px solid #244b3b33;padding-top:20px;max-width:640px}
.visual-tabs{display:flex;gap:10px;flex-wrap:wrap}
.visual-tabs button{position:relative;overflow:hidden;display:inline-flex;align-items:center;gap:10px;border:1px solid #9cae9e;background:#f7f5efd9;color:var(--green);border-radius:999px;padding:10px 20px;min-height:44px;font-size:15px}
.visual-tabs button span{font-size:12px;opacity:.75}
.visual-tabs button[aria-selected=true]{background:var(--green);border-color:var(--green);color:#fff}
.main-visual.is-playing .visual-tabs button[aria-selected=true]:after{content:"";position:absolute;left:0;bottom:0;height:3px;width:0;background:#d7dfbf;animation:visualProgress var(--visual-delay,7s) linear forwards}
@keyframes visualProgress{to{width:100%}}
.visual-pause{border:0;background:none;color:var(--green);font-size:14px;text-decoration:underline;text-underline-offset:4px;min-height:44px}
.visual-credit{position:absolute;right:24px;bottom:16px;z-index:1;font-size:12px;color:#fff;text-shadow:0 1px 4px #000a}

/* ── 02 사업영역 3줄 ── */
.biz{padding-top:112px;padding-bottom:64px}
.biz-head{margin-bottom:56px}
.biz-head h2{margin:18px 0 20px;line-height:1.4}
.biz-head>p:last-child{font-size:16px;line-height:1.9;color:#53634f}
.biz-row{display:grid;grid-template-columns:170px minmax(0,1fr) minmax(0,.95fr);gap:48px;padding:56px 0;border-top:1px solid var(--line);align-items:start}
.biz-row:last-child{border-bottom:1px solid var(--line)}
.biz-label{display:flex;align-items:center;gap:10px;padding-top:14px;font-size:14px;color:var(--green);letter-spacing:.04em}
.biz-label:before{content:"";width:6px;height:6px;border-radius:50%;background:#a42129;flex-shrink:0}
.biz-copy h3{font-size:21px;color:#45553f;font-weight:500;letter-spacing:-.03em;line-height:1.5}
.biz-en{display:block;font-size:clamp(32px,3.4vw,46px);color:var(--ink);letter-spacing:-.04em;line-height:1.2;margin-bottom:14px}
.biz-copy>p{font-size:16px;line-height:1.9;color:#53634f;margin-top:20px;max-width:520px}
.biz-links{display:flex;flex-wrap:wrap;gap:6px 26px;margin-top:28px}
.biz-links a{display:inline-flex;align-items:center;gap:10px;min-height:44px;font-size:15px;border-bottom:1px solid #a5b2a4}
.biz-links a:hover{color:#a42129;border-color:#a42129}
.biz-media{margin:0;aspect-ratio:4/3;overflow:hidden;background:#e6ede1}
.biz-forest img{display:block;width:100%;height:100%;object-fit:cover;object-position:30% 50%;transition:transform .8s ease}
.biz-row:hover .biz-forest img{transform:scale(1.04)}
.biz-word{display:flex;flex-direction:column;justify-content:center;padding:44px}
.biz-word span{font-size:13px;color:#53624b}
.biz-word strong{font-size:clamp(36px,4vw,54px);font-weight:500;line-height:1.35;letter-spacing:-.06em;color:var(--green);margin-top:14px}
.biz-media.brand-product-panel{min-height:0;justify-content:center;padding:32px}
.biz-media.brand-product-panel:before{display:none}
.biz-media.brand-product-panel>.package-script{font-size:68px!important;margin:0;color:#b31823}
.biz-media.brand-product-panel>strong{font-size:30px}

/* ── 03 기록 숫자 띠 ── */
.footprint{background:var(--green);color:var(--paper)}
.footprint-inner{max-width:1248px;margin:0 auto;padding:96px 24px 72px}
.footprint .eyebrow{color:#d7dfbf}
.footprint-head{display:flex;justify-content:space-between;align-items:end;gap:30px;flex-wrap:wrap}
.footprint-head h2{margin-top:18px;line-height:1.4}
.footprint .text-link{border-color:#d7dfbf99}
.footprint-stats{display:grid;grid-template-columns:repeat(4,1fr);margin:64px 0 0;border-top:1px solid #f7f5ef4d}
.footprint-stats>div{padding:32px 24px 8px;border-left:1px solid #f7f5ef26}
.footprint-stats>div:first-child{padding-left:0;border-left:0}
.footprint-stats dt{font-size:14px;color:#d7dfbf}
.footprint-stats dd{margin:16px 0 0;font-family:Georgia,serif;font-size:clamp(48px,5.6vw,80px);line-height:1;letter-spacing:-.02em}
.footprint-stats small{font-family:"Apple SD Gothic Neo","Malgun Gothic",sans-serif;font-size:18px;margin-left:6px;letter-spacing:0}
.footprint-note{font-size:12px;color:#d7dfbfd9;margin-top:40px}

/* ── 04 연혁 카드 슬라이드 ── */
.story{padding-top:112px;padding-bottom:72px}
.story-head{display:flex;justify-content:space-between;align-items:end;gap:30px;flex-wrap:wrap;margin-bottom:44px}
.story-head h2{margin-top:18px;line-height:1.45}
.story-nav{display:flex;align-items:center;gap:10px}
.story-nav button{width:48px;height:48px;border:1px solid #9cae9e;border-radius:50%;background:transparent;color:var(--green);font-size:18px}
.story-nav button:hover:not(:disabled){background:var(--green);color:#fff}
.story-nav button:disabled{opacity:.35;cursor:default}
.story-nav .text-link{margin-left:14px}
.story-track{list-style:none;margin:0;padding:0 0 14px;display:grid;grid-auto-flow:column;grid-auto-columns:calc((100% - 72px)/4);gap:24px;overflow-x:auto;scroll-snap-type:x mandatory;overscroll-behavior-x:contain;scrollbar-width:thin;scrollbar-color:#9cae9e transparent}
.story-track:focus-visible{outline:3px solid #ae643a;outline-offset:6px}
.story-card{scroll-snap-align:start;display:flex;flex-direction:column;min-height:310px;padding:32px 28px;background:#fff;border:1px solid var(--line)}
.story-year{font-family:Georgia,serif;font-size:40px;color:var(--green);line-height:1}
.story-card h3{font-size:21px;margin:26px 0 12px;letter-spacing:-.03em;line-height:1.5}
.story-card p{font-size:14px;line-height:1.85;color:#53634f}
.story-note{font-size:12px;color:#5a6553;margin-top:20px}

/* ── 05 인사말·문의 카드 ── */
.duo{padding-top:24px;padding-bottom:112px}
.duo-head{margin-bottom:40px}
.duo-head h2{margin-top:18px;line-height:1.45}
.duo-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px}
.duo-card{position:relative;display:flex;min-height:560px;overflow:hidden;color:#fff}
.duo-photo img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:70% 50%}
.duo-photo:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,#0f241a14 15%,#0f241ae0 92%)}
.duo-body{position:relative;z-index:1;width:100%;margin-top:auto;padding:44px}
.duo-card .eyebrow{color:#d7dfbf}
.duo-card h3{font-size:clamp(24px,2.4vw,32px);line-height:1.5;letter-spacing:-.04em;margin:14px 0 26px}
.duo-links{display:flex;flex-direction:column;border-top:1px solid #ffffff4d}
.duo-links a{display:flex;justify-content:space-between;align-items:center;gap:16px;min-height:54px;border-bottom:1px solid #ffffff33;font-size:16px}
.duo-links a:hover{color:#f3e2b8}
.duo-contact{background:var(--green)}
.duo-contact .duo-body{margin-top:0}
.duo-address{margin:0 0 26px}
.duo-address>div{padding:12px 0;border-top:1px solid #ffffff26}
.duo-address dt{font-size:12px;color:#d7dfbf}
.duo-address dd{margin:4px 0 0;font-size:15px;line-height:1.8}
.duo-note{font-size:12px;color:#d7dfbfd9;margin-top:18px;line-height:1.8}

/* ── 06 제품 띠 ── */
.brand-roll{overflow:hidden;padding:26px 0;background:#fbfaf6;border-top:1px solid var(--line)}
.roll-track{display:flex;width:max-content;animation:roll 40s linear infinite}
.brand-roll:hover .roll-track,.brand-roll:focus-within .roll-track{animation-play-state:paused}
.roll-set{display:flex;list-style:none;margin:0;padding:0}
.roll-set a{display:flex;align-items:center;gap:12px;min-height:64px;padding:0 48px;font-size:clamp(26px,3vw,40px);font-weight:500;letter-spacing:-.04em;color:#3e4f40;white-space:nowrap}
.roll-set a:hover{color:#a42129}
.roll-set .package-script{font-size:1.3em}
@keyframes roll{to{transform:translateX(-50%)}}

/* ── 푸터: 회사 정보 ── */
footer.site-footer{max-width:none;margin:0;padding:0;background:#e9ece3;border-top:1px solid #d5dacd}
.footer-inner{max-width:1248px;margin:0 auto;padding:64px 24px 0;display:grid;grid-template-columns:1fr 1.7fr .8fr;gap:48px}
.footer-brand>p{font-size:14px;line-height:1.8;color:#56624e;margin-top:20px}
.footer-info{margin:0;font-size:14px;line-height:1.8;color:#3d4a3a}
.footer-info>div{display:grid;grid-template-columns:92px 1fr;gap:12px;padding:6px 0}
.footer-info dt{color:#5d6c56}
.footer-info dd{margin:0}
.footer-info a{border-bottom:1px solid #a5b2a4}
.footer-links{display:flex;flex-direction:column;align-items:flex-start;font-size:14px}
.footer-links a{display:inline-flex;align-items:center;min-height:40px;color:#3d4a3a}
.footer-links a:hover{color:#a42129}
.site-footer .footer-bottom{max-width:1248px;margin:48px auto 0;padding:20px 24px 28px}

/* ── 반응형 ── */
@media(max-width:1180px){.header-inner .desktop{gap:26px}}
@media(max-width:1023px){
 #mobile-menu nav{grid-template-columns:1fr 1fr;gap:40px}
 .biz-row{grid-template-columns:1fr 1fr;gap:28px 40px}
 .biz-label{grid-column:1/-1;padding-top:0}
 .story-track{grid-auto-columns:calc((100% - 24px)/2)}
 .footprint-stats{grid-template-columns:1fr 1fr}
 .footprint-stats>div:nth-child(3){padding-left:0;border-left:0}
 .footprint-stats>div:nth-child(n+3){border-top:1px solid #f7f5ef26}
 .footer-inner{grid-template-columns:1fr 1fr}
 .footer-links{grid-column:1/-1;flex-direction:row;flex-wrap:wrap;gap:0 22px}
}
@media(max-width:767px){
 header .menu-toggle{padding:10px 12px;font-size:13px;gap:6px;min-height:44px}
 .header-inner>.member-purchase+.menu-toggle{margin-left:0}
 #mobile-menu .menu-top{padding:14px 20px}
 #mobile-menu nav{grid-template-columns:1fr;gap:28px;padding:28px 20px 8px}
 #mobile-menu .mobile-group h3{font-size:22px;padding-bottom:12px}
 #mobile-menu .mobile-group a{min-height:52px;font-size:18px!important}
 #mobile-menu>p{padding:0 20px 36px}
 .main-visual{flex-direction:column;min-height:0;background:var(--paper)}
 .visual-media{position:relative;order:2;height:280px}
 .visual-media:after{display:none}
 .visual-inner{order:1;padding:40px 20px 28px;gap:32px}
 .visual-slide h1{font-size:36px}
 .visual-title{font-size:34px}
 .visual-lead{font-size:16px;margin-bottom:28px}
 .visual-lead br{display:none}
 .visual-tabs button{padding:9px 14px;font-size:14px}
 .visual-credit{right:12px;bottom:10px}
 .biz{padding-top:64px;padding-bottom:40px}
 .biz-head{margin-bottom:28px}
 .biz-head>p:last-child br{display:none}
 .biz-row{grid-template-columns:1fr;gap:20px;padding:40px 0}
 .biz-en{font-size:30px}
 .biz-copy h3{font-size:18px}
 .biz-word{padding:28px}
 .footprint-inner{padding:64px 20px 48px}
 .footprint-stats{margin-top:40px}
 .footprint-stats>div{padding:24px 12px 4px}
 .footprint-stats>div:nth-child(odd){padding-left:0;border-left:0}
 .footprint-stats dd{font-size:44px}
 .footprint-stats small{font-size:15px}
 .story{padding-top:64px;padding-bottom:48px}
 .story-head{margin-bottom:28px}
 .story-nav .text-link{margin-left:auto}
 .story-track{grid-auto-columns:82%;gap:14px}
 .story-card{min-height:280px;padding:26px 22px}
 .duo{padding-top:8px;padding-bottom:64px}
 .duo-grid{grid-template-columns:1fr;gap:16px}
 .duo-card{min-height:440px}
 .duo-contact{min-height:0}
 .duo-body{padding:28px 22px}
 .brand-roll{padding:16px 0}
 .roll-set a{padding:0 28px;min-height:56px}
 .footer-inner{grid-template-columns:1fr;gap:28px;padding:44px 20px 0}
 .footer-info>div{grid-template-columns:80px 1fr}
 .site-footer .footer-bottom{margin-top:32px;padding:18px 20px 24px}
}
@media(prefers-reduced-motion:reduce){
 .visual-photo,.biz-forest img{transition:none}
 .visual-slide.is-entering{animation:none}
 .roll-track{animation:none;width:auto}
 .roll-set{flex-wrap:wrap;justify-content:center}
 .roll-set[aria-hidden]{display:none}
}

/* ── 수출 및 OEM 문의 (회사소개) ── */
.sub-forest.sub-photo{margin:0;overflow:hidden;background:#1c3426}
.sub-photo img{position:absolute;inset:0;display:block;width:100%;height:100%;max-width:none;object-fit:cover;object-position:var(--photo-pos,center)}
.sub-photo:after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,#16362766,transparent 55%)}
.sub-photo span{z-index:1}
.oem-layout{display:grid;grid-template-columns:1fr 1.1fr;gap:48px;align-items:start}
.oem-contact{background:var(--green);color:var(--paper);padding:44px 36px;display:flex;flex-direction:column;align-items:flex-start;gap:18px}
.oem-contact>span{font-size:12px;letter-spacing:.14em;color:#d7dfbf}
.oem-contact h2{font-size:30px;font-weight:500;letter-spacing:-.04em}
.oem-contact>p{font-size:16px;line-height:1.9;color:#e4e9da}
.oem-contact dl{margin:6px 0 0;width:100%;border-top:1px solid #f7f5ef40;padding-top:18px}
.oem-contact dt{font-size:13px;color:#d7dfbf}
.oem-contact dd{margin:6px 0 0;font-family:Georgia,serif;font-size:clamp(30px,3.4vw,40px);letter-spacing:.01em;font-variant-numeric:tabular-nums;user-select:all}
.oem-contact .button{background:#f7f5ef;color:var(--green);border-color:#f7f5ef;margin-top:6px}
.oem-contact .button:hover{background:#e6ede1}
.oem-contact small{font-size:12px;color:#d7dfbfd9}
.oem-topics>h2,.oem-checklist h2{font-size:24px;font-weight:500;letter-spacing:-.04em;margin-bottom:18px}
.oem-topics>div{padding:22px 0;border-top:1px solid var(--line)}
.oem-topics>div:last-child{border-bottom:1px solid var(--line)}
.oem-topics small{font-size:12px;letter-spacing:.12em;color:#a42129}
.oem-topics h3{font-size:22px;margin:8px 0 6px;letter-spacing:-.03em}
.oem-topics p{font-size:15px;color:#53634f;line-height:1.8}
.oem-checklist{margin-top:56px;padding:32px 30px;background:#e9ede3}
.oem-checklist ul{margin:0;padding-left:20px;display:grid;gap:8px;font-size:16px;color:#45553f}
@media(max-width:767px){
 .oem-layout{grid-template-columns:1fr;gap:32px}
 .oem-contact{padding:30px 22px}
 .oem-contact>p br{display:none}
 .oem-contact .button{width:100%}
 .oem-checklist{margin-top:36px;padding:24px 20px}
 .sub-forest.sub-photo{margin:0;overflow:hidden;background:#1c3426}
.sub-photo img{position:absolute;inset:0;display:block;width:100%;height:100%;max-width:none;object-fit:cover;object-position:var(--photo-pos,center)}
.sub-photo:after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,#16362766,transparent 55%)}
.sub-photo span{z-index:1}
}

/* 오시는길: 주소 2가지만 남긴 패널 */
.location-panel .address-pair{margin-top:24px}

/* 사용자 요청(2026-10-19): 상세 페이지 상단의 위치 표시(영문 구분·홈/메뉴 경로) 제거 후 간격 */
.sub-hero-copy h1{margin-top:8px}

/* 메인 원료 연구 줄: 연구진 사진 위에 ‘연구의 중심’ 문구 (사용자 요청 2026-10-19) */
.biz-word.biz-word-photo{position:relative;padding:0;margin:0;justify-content:flex-end;background:#1c3426}
.biz-word-photo img{position:absolute;inset:0;display:block;width:100%;height:100%;max-width:none;object-fit:cover;object-position:40% center;transition:transform .8s ease}
.biz-row:hover .biz-word-photo img{transform:scale(1.04)}
.biz-word-photo:after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,#0f241ad9 0%,#0f241a59 40%,transparent 70%)}
.biz-word-photo figcaption{position:relative;z-index:1;display:flex;flex-direction:column;padding:32px 36px}
.biz-word-photo figcaption span{font-size:13px;color:#d7dfbf}
.biz-word-photo figcaption strong{font-size:clamp(30px,3.2vw,44px);font-weight:500;line-height:1.3;letter-spacing:-.05em;color:#f7f5ef;margin-top:8px}
@media(max-width:767px){.biz-word-photo figcaption{padding:22px}}
@media(prefers-reduced-motion:reduce){.biz-word-photo img{transition:none}}

/* 메인 브랜드 줄: 천비솔 180캡슐 제품 이미지 (사용자 요청 2026-10-19) */
.biz-media.biz-capsule{aspect-ratio:3/2}
.biz-capsule img{object-position:center 45%}

/* 연혁 카드 사진: 글씨보다 흐리게 깐다 (사용자 요청 2026-10-19) */
.story-card.has-photo{position:relative;overflow:hidden;isolation:isolate}
.story-bg{position:absolute;inset:0;z-index:-1;display:block;width:100%;height:100%;max-width:none;object-fit:cover;opacity:.22;transition:opacity .4s ease}
.story-card.has-photo:hover .story-bg{opacity:.32}
@media(prefers-reduced-motion:reduce){.story-bg{transition:none}}

/* 제품 페이지: 천비솔 180캡슐 이미지 */
.detail-product-photo{margin:0;overflow:hidden;aspect-ratio:3/2;background:#1c3426;min-width:0}
.detail-product-photo img{display:block;width:100%;height:100%;object-fit:cover}

/* 제품 페이지: 천비솔 180캡슐 상세 정보 (사용자 제공 표시사항) */
.product-spec{display:grid;grid-template-columns:1fr 2fr;gap:60px;margin-top:70px;border-top:1px solid var(--line);padding-top:45px}
.product-spec h2{font-size:30px;margin-top:18px}
.spec-body{display:flex;flex-direction:column;gap:48px;min-width:0}
.spec-block h3{font-size:22px;letter-spacing:-.03em;color:var(--green);padding-bottom:14px;border-bottom:2px solid var(--green)}
.spec-block h4{font-size:16px;font-weight:500;color:#45553f;margin:28px 0 12px}
.spec-table{margin:0}
.spec-table>div{display:grid;grid-template-columns:1fr 2fr;gap:25px;border-bottom:1px solid var(--line);padding:20px 0;font-size:15px;line-height:1.8}
.spec-table dt{color:#5d6c56}
.spec-table dd{margin:0}
.spec-table small{font-size:13px;color:#5d6c56}
.spec-table ul{margin:0;padding-left:18px;display:grid;gap:6px}
.spec-scroll{overflow-x:auto}
.spec-components{width:100%;border-collapse:collapse;font-size:15px;font-variant-numeric:tabular-nums}
.spec-components th,.spec-components td{padding:16px 12px;border-bottom:1px solid var(--line);text-align:left}
.spec-components thead th{font-size:13px;font-weight:500;color:#5d6c56;background:#e9ede3}
.spec-components tbody th{font-weight:500}
.spec-components tbody th span{display:block;font-size:12px;color:#6b795f;font-weight:400}
.spec-components td{white-space:nowrap}
@media(max-width:767px){
 .product-spec{grid-template-columns:1fr;gap:20px;margin-top:50px;padding-top:30px}
 .spec-table>div{grid-template-columns:1fr;gap:6px;font-size:14px}
 .spec-components{font-size:14px}
 .spec-components th,.spec-components td{padding:14px 8px}
}

/* 인사말: 가족사랑 이미지 (사용자 요청 2026-10-19) */
.greeting-side{display:flex;flex-direction:column;gap:32px;min-width:0}
.greeting-photo{margin:0;overflow:hidden;aspect-ratio:16/9;background:#e6ede1}
.greeting-photo img{display:block;width:100%;height:100%;object-fit:cover}
@media(max-width:767px){.greeting-side{gap:0;margin-bottom:30px}.greeting-side .statement{margin-bottom:24px}}

/* 사업개요: 솔잎 원료·연구와 기준·천비솔 칸 뒤에 흐린 사진 (사용자 요청 2026-10-19) */
.process-photos>div{position:relative;overflow:hidden;isolation:isolate;min-height:220px}
/* 글씨가 있는 위쪽은 사진이 사라지고, 아래쪽으로 갈수록 은은하게 보이도록 */
.process-photos>div{min-height:380px;padding-bottom:150px!important}
.process-photos p{font-size:15px!important;line-height:1.85!important;color:#45553f!important}
.process-bg{position:absolute;inset:0;z-index:-1;display:block;width:100%;height:100%;max-width:none;object-fit:cover;object-position:center 75%;opacity:.55;-webkit-mask-image:linear-gradient(to bottom,transparent 0%,rgba(0,0,0,.12) 35%,#000 78%);mask-image:linear-gradient(to bottom,transparent 0%,rgba(0,0,0,.12) 35%,#000 78%)}
.process-photos small{color:#4e5d47}
@media(prefers-reduced-motion:reduce){.process-bg{transition:none}}

/* 제품 페이지: 비누·에센스·치약 실제품 사진 (정사각 원본 그대로, 잘림 없이) */
.detail-product-square{aspect-ratio:1/1}
.detail-product-square img{object-position:center}

/* 제품 페이지: 소비자가 */
.info-table .price{font-size:18px;color:var(--green);font-variant-numeric:tabular-nums}

/* 인증서: 도용 방지 — 작은 크기, 클릭·끌기·길게 눌러 저장 막기 (사용자 요청 2026-10-21) */
.cert-docs{margin-bottom:24px}
.cert-docs>h2{font-size:27px;font-weight:500;line-height:1.5;margin-bottom:14px}
.cert-docs>p{font-size:15px;line-height:1.8;color:#52604b;margin-bottom:32px;max-width:720px}
.cert-gallery{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:36px 20px;align-items:start}
.cert-doc{margin:0;display:flex;flex-direction:column;gap:12px;min-width:0;max-width:200px}
.cert-frame{position:relative;aspect-ratio:440/648;background:#fff;border:1px solid var(--line);padding:6px;box-shadow:0 8px 18px #17372610;-webkit-user-select:none;user-select:none;-webkit-touch-callout:none}
.cert-frame img{display:block;width:100%;height:100%;object-fit:contain;pointer-events:none;-webkit-user-drag:none;user-select:none}
.cert-frame:after{content:"";position:absolute;inset:0}
.cert-doc figcaption{display:flex;flex-direction:column;align-items:flex-start;gap:3px}
.cert-tag{font-style:normal;font-size:12px;letter-spacing:.04em;color:#a42129;border:1px solid #d9b3b3;padding:1px 8px;margin-bottom:4px}
.cert-doc strong{font-size:15px;font-weight:500;line-height:1.45;color:var(--green)}
.cert-doc span{font-size:13px;line-height:1.6;color:#45553f}
.cert-doc small{font-size:12px;color:#6b795f}
@media(max-width:1023px){.cert-gallery{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:767px){.cert-gallery{grid-template-columns:repeat(2,minmax(0,1fr));gap:28px 16px}.cert-docs>h2{font-size:24px}}

/* 로고: 천비솔 방패 로고(천 앞), 파인생명공학 PLE 로고(파 앞) — 사용자 요청 2026-10-21 */
.brand-lockup{display:inline-flex;align-items:center;gap:8px}
.logo-mark{display:block;width:auto;flex-shrink:0}
.wordmark .logo-cheonbisol{height:36px}
.wordmark .wordmark-company{display:inline-flex;align-items:center;gap:8px}
.wordmark .logo-pine{height:30px}
.wordmark-text{display:flex;flex-direction:column}
#mobile-menu .logo-cheonbisol{height:32px}
#mobile-menu .menu-company-name{display:inline-flex;align-items:center;gap:8px}
#mobile-menu .logo-pine{height:24px}
.site-footer .logo-cheonbisol{height:34px}
.site-footer .logo-pine{height:28px}
@media(max-width:767px){.wordmark .logo-cheonbisol{height:30px}.brand-lockup{gap:6px}}

/* 메인 큰 제목: 천비솔 앞 방패 로고 */
.hero-brand-script{align-items:center;gap:14px}
.hero-logo{display:block;height:68px;width:auto;flex-shrink:0}
@media(max-width:767px){.hero-brand-script{gap:10px}.hero-logo{height:56px}}

/* 제목 안 회사 로고 (기록으로 보는 파인생명공학) */
.title-with-logo{display:inline-flex;align-items:center;gap:12px}
.title-logo{display:block;height:1.05em;width:auto;flex-shrink:0}

/* 사업개요: 회사 로고 설명 앞 글씨 크기 로고 */
.inline-logo{display:inline-block;height:1.15em;width:auto;vertical-align:-.22em;margin-right:6px}
