@charset "utf-8";

:root{
    --container:1280px;
    --navy:#102a42;
    --navy-deep:#071a2a;
    --navy-soft:#183e54;
    --mint:#55cedb;
    --mint-pale:#e5f6f8;
    --ink:#10243a;
    --muted:#72808d;
    --line:#e8edf1;
    --paper:#f5f8fa;
    --white:#fff;
}

*{box-sizing:border-box; margin:0; padding:0;}
html{scroll-behavior:smooth;}
body{font-family:Pretendard,-apple-system,BlinkMacSystemFont,"Segoe UI","Noto Sans KR",Arial,sans-serif; color:var(--ink); background:#fff; line-height:1.55; letter-spacing:-.025em;}
a{color:inherit; text-decoration:none;}
button{font:inherit; color:inherit; border:0; background:none;}
img{display:block; width:100%; height:100%; object-fit:cover;}
svg{display:block; width:100%; height:100%; fill:none; stroke:currentColor; stroke-width:1.8; stroke-linecap:round; stroke-linejoin:round;}
.container{width:min(var(--container),calc(100% - 80px)); margin:0 auto;}
.eyebrow{display:block; margin-bottom:14px; font-size:12px; line-height:1; font-weight:800; letter-spacing:.12em; color:#fff;}
.eyebrow--light{color:#fff;}

/* Header */
.site-header{position:absolute; z-index:20; top:0; left:0; width:100%; height:92px; color:#fff; border-bottom:1px solid rgba(255,255,255,.14); overflow:visible;}
.header-inner{height:100%; display:flex; align-items:center; justify-content:space-between;}
.logo{width:200px; height:56px; display:flex; align-items:center;}
.logo img{width:100%; height:100%; object-fit:contain; object-position:left center;}

/* GNB */
.gnb{height:100%; display:flex; align-items:center;}
.gnb-list{height:100%; display:flex; align-items:center; gap:42px; margin:0; padding:0; list-style:none;}
.gnb-item{position:relative; height:100%; display:flex; align-items:center;}
.gnb-link{position:relative; height:100%; display:flex; align-items:center; gap:8px; color:#fff; font-size:15px; font-weight:700; white-space:nowrap; transition:color .2s ease;}
.gnb-link::after{content:""; position:absolute; left:0; bottom:20px; width:0; height:2px; background:var(--mint); transition:width .22s ease;}
.gnb-item:hover > .gnb-link::after,
.gnb-item:focus-within > .gnb-link::after{width:100%;}

/* 2차 메뉴 화살표 */
.gnb-arrow{width:6px; height:6px; margin-top:-4px; border-right:1.5px solid currentColor; border-bottom:1.5px solid currentColor; opacity:.75; transform:rotate(45deg); transition:transform .2s ease, opacity .2s ease;}
.gnb-item:hover > .gnb-link .gnb-arrow,
.gnb-item:focus-within > .gnb-link .gnb-arrow{opacity:1; transform:translateY(3px) rotate(225deg);}

/* 2차 메뉴 */
.gnb-submenu{position:absolute; z-index:30; top:calc(100% - 1px); left:50%; min-width:190px; margin:0; padding:10px; list-style:none; border:1px solid rgba(255,255,255,.12); border-top:2px solid var(--mint); border-radius:0 0 14px 14px; background:rgba(12,31,47,.96); box-shadow:0 18px 40px rgba(0,0,0,.22); backdrop-filter:blur(12px); opacity:0; visibility:hidden; pointer-events:none; transform:translate(-50%, 12px); transition:opacity .2s ease, visibility .2s ease, transform .2s ease;}
.gnb-item:hover > .gnb-submenu,
.gnb-item:focus-within > .gnb-submenu{opacity:1; visibility:visible; pointer-events:auto; transform:translate(-50%, 0);}

.gnb-subitem{margin:0; padding:0;}
.gnb-sublink{display:block; padding:12px 14px; border-radius:8px; color:rgba(255,255,255,.78); font-size:14px; font-weight:600; line-height:1.4; white-space:nowrap; transition:color .18s ease, background-color .18s ease, padding-left .18s ease;}
.gnb-sublink:hover,
.gnb-sublink:focus{padding-left:18px; color:var(--navy); background:var(--mint); outline:none;}

/* Header Tools */
.header-tools{display:flex; align-items:center; gap:8px;}
.header-tools button, .header-tools a{position:relative; width:40px; height:40px; display:grid; place-items:center; border:1px solid rgba(255,255,255,.28); border-radius:50%; color:#fff;}
.header-tools svg{width:20px; height:20px;}
.header-tools .cart span{position:absolute; top:-4px; right:-3px; width:18px; height:18px; display:grid; place-items:center; border-radius:50%; font-size:10px; font-weight:900; color:var(--navy); background:var(--mint);}

/* 상품 상세페이지 헤더 */
.site-header--shop-item{
    position:static;
    top:auto;
    left:auto;
    z-index:20;
    width:100%;
    height:92px;
    color:#10283e;
    border-bottom:1px solid #e7ebee;
    background:#fff;
}

/* 1차 메뉴 */
.site-header--shop-item .gnb-link{
    color:#10283e;
}

/* 1차 메뉴 밑줄 */
.site-header--shop-item .gnb-link::after{
    background:var(--mint);
}

/* 2차 메뉴 화살표 */
.site-header--shop-item .gnb-arrow{
    border-color:#10283e;
}

/* 헤더 아이콘 버튼 */
.site-header--shop-item .header-tools button,
.site-header--shop-item .header-tools a{
    color:#10283e;
}

/* 검색·마이페이지·장바구니 원형 버튼 */
.site-header--shop-item .header-tools button,
.site-header--shop-item .header-tools .header-tool{
    border-color:rgba(16,40,62,.2);
    background:#fff;
}

/* SVG가 currentColor를 사용하지 않는 경우 */
.site-header--shop-item .header-tools svg{
    color:#10283e;
    stroke:currentColor;
}

/* 장바구니 수량 */
.site-header--shop-item .header-tools .cart span{
    color:#10283e;
    background:var(--mint);
}

/* 2차 메뉴 */
.site-header--shop-item .gnb-submenu{
    border-color:#e5eaed;
    border-top-color:var(--mint);
    background:rgba(255,255,255,.98);
    box-shadow:0 18px 40px rgba(16,40,62,.14);
}

/* 2차 메뉴 글자 */
.site-header--shop-item .gnb-sublink{
    color:#425466;
}

/* 2차 메뉴 호버 */
.site-header--shop-item .gnb-sublink:hover,
.site-header--shop-item .gnb-sublink:focus{
    color:#10283e;
    background:var(--mint);
}

/* Footer */
.site-footer{padding:72px 0 30px; color:rgba(255,255,255,.55); background:#102a42;}
.footer-top{display:grid; grid-template-columns:1.2fr .8fr .8fr; gap:90px; padding-bottom:42px;}
.footer-brand img{width:205px; height:66px; object-fit:contain; object-position:left center;}
.footer-brand p{margin-top:15px; font-size:14px; line-height:1.8;}
.footer-menu h3,.footer-customer h3{margin-bottom:16px; font-size:16px; color:#fff;}
.footer-menu a{display:block; margin-top:7px; font-size:14px;}
.footer-customer strong{display:block; margin:4px 0 9px; font-size:26px; color:#fff;}
.footer-customer p{font-size:14px; line-height:1.8;}
.footer-bottom{display:flex; align-items:center; justify-content:space-between; padding-top:20px; border-top:1px solid rgba(255,255,255,.1); font-size:13px;}


.cj-subtop{height: 100vh;}
.cj-subtop *{box-sizing:border-box;}
.cj-subtop__video,.cj-subtop__poster{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center;background-position:center;background-size:cover;}
.cj-subtop__shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(2,12,20,.96) 0%,rgba(2,12,20,.83) 38%,rgba(2,12,20,.22) 73%,rgba(2,12,20,.42) 100%),linear-gradient(180deg,rgba(0,0,0,.06),rgba(0,0,0,.42));}
.cj-subtop__container{width:1280px;
    max-width:calc(100% - 80px);
    position:absolute;
    left:50%;
    top:50%;
    transform:translate(-50%, -50%);
    box-sizing:border-box;
    z-index:2;}
.cj-subtop__content{}
.cj-subtop__eyebrow{display:inline-block;color:#fff;font-size:15px;font-weight:800;letter-spacing:.16em;text-transform:uppercase;}
.cj-subtop h1{margin:22px 0 18px;font-size:clamp(64px,6vw,104px);line-height:1;letter-spacing:-.075em; color:#fff;}
.cj-subtop__lead{margin:0;font-size:clamp(25px,2.2vw,38px);font-weight:700;line-height:1.45; color:#fff;}
.cj-subtop__copy{margin:30px 0 0;color:rgba(150,150,150);font-size:20px;line-height:1.85;}
.cj-subtop__tabs{position:absolute;left:50%;bottom:76px;transform:translateX(-50%);width:min(950px,calc(100% - 60px));display:grid;grid-template-columns:repeat(var(--tab-count,5),1fr);gap:4px;padding:8px;border:1px solid rgba(255,255,255,.18);border-radius:999px;background:rgba(4,14,23,.64);box-shadow:0 22px 80px rgba(0,0,0,.35);backdrop-filter:blur(16px);}
.cj-subtop__tabs a{display:flex;align-items:center;justify-content:center;min-height:58px;border-radius:999px;color:rgba(255,255,255,.7);font-size:16px;font-weight:700;text-decoration:none;transition:.3s ease;}
.cj-subtop__tabs a:hover,.cj-subtop__tabs a.is-active{background:linear-gradient(135deg,var(--cyan),#51dce8);color:#03202a;box-shadow:0 10px 34px rgba(35,199,217,.3);}
.cj-subtop__scroll{position:absolute;bottom:20px;left:50%;width:28px;height:46px;border:1px solid rgba(255,255,255,.28);border-radius:20px;transform:translateX(-50%);}
.cj-subtop__scroll span{position:absolute;left:50%;top:9px;width:4px;height:8px;border-radius:10px;background:var(--cyan);transform:translateX(-50%);animation:cjSubtopScroll 1.8s infinite;}
@keyframes cjSubtopScroll{0%{opacity:0;transform:translate(-50%,0)}35%{opacity:1}100%{opacity:0;transform:translate(-50%,17px)}}
@media(prefers-reduced-motion:reduce){.cj-subtop__scroll span{animation:none;}}

/* 내용관리 관리자 플로팅 버튼 */
.ctt_admin{
    position:fixed;
    left:28px;
    bottom:28px;
    z-index:99999;
    margin:0;
}

.ctt_admin__button{
    position:relative;
    display:flex;
    align-items:center;
    gap:12px;
    min-width:154px;
    min-height:58px;
    padding:8px 20px 8px 9px;
    border:1px solid rgba(255,255,255,.2);
    border-radius:18px;
    background:linear-gradient(135deg,#05283a 0%,#07465a 100%);
    color:#fff;
    box-shadow:
            0 14px 35px rgba(0,0,0,.28),
            0 0 0 1px rgba(35,199,217,.12);
    text-decoration:none;
    transition:
            transform .25s ease,
            box-shadow .25s ease,
            background .25s ease;
}

.ctt_admin__button::before{
    content:"";
    position:absolute;
    inset:-3px;
    z-index:-1;
    border-radius:21px;
    background:linear-gradient(135deg,rgba(35,199,217,.75),rgba(81,220,232,.1));
    opacity:.45;
    filter:blur(7px);
    transition:opacity .25s ease;
}

.ctt_admin__button:hover{
    color:#fff;
    background:linear-gradient(135deg,#06364b 0%,#08728a 100%);
    transform:translateY(-4px);
    box-shadow:
            0 20px 44px rgba(0,0,0,.36),
            0 0 26px rgba(35,199,217,.3);
}

.ctt_admin__button:hover::before{
    opacity:.9;
}

.ctt_admin__icon{
    display:flex;
    flex:0 0 42px;
    align-items:center;
    justify-content:center;
    width:42px;
    height:42px;
    border-radius:13px;
    background:linear-gradient(135deg,#23c7d9,#72e8ef);
    color:#03232d;
    box-shadow:0 8px 20px rgba(35,199,217,.32);
}

.ctt_admin__icon svg{
    width:23px;
    height:23px;
    fill:none;
    stroke:currentColor;
    stroke-width:1.8;
    stroke-linecap:round;
    stroke-linejoin:round;
    animation:cttAdminGear 6s linear infinite;
}

.ctt_admin__label{
    display:flex;
    flex-direction:column;
    gap:2px;
    line-height:1.2;
}

.ctt_admin__label strong{
    font-size:15px;
    font-weight:800;
    letter-spacing:-.02em;
}

.ctt_admin__label small{
    color:rgba(255,255,255,.62);
    font-size:11px;
    font-weight:500;
}

@keyframes cttAdminGear{
    from{transform:rotate(0deg);}
    to{transform:rotate(360deg);}
}

@media(prefers-reduced-motion:reduce){
    .ctt_admin__icon svg{
        animation:none;
    }
}

.container{width:min(calc(100% - 80px),var(--container));margin:0 auto;position:relative;z-index:2;}
.panel{position:relative;min-height:var(--panel);overflow:hidden;display:flex;align-items:center;}
.eyebrow{display:inline-block;color:var(--cyan);font-size:15px;font-weight:800;letter-spacing:.16em;text-transform:uppercase; color:#fff;}
.section-heading{margin-bottom:72px;}
.section-heading--center{text-align:center;}
.section-heading h2{margin:18px 0 0;font-size:clamp(44px,4.2vw,72px);line-height:1.18;letter-spacing:-.06em; color:#fff;}
.section-heading p{margin:24px auto 0;max-width:720px;color:#677783;font-size:18px;line-height:1.8;}
.reveal{opacity:1;transform:none;}
.motion-ready .reveal{opacity:0;transform:translateY(42px);transition:opacity .85s ease,transform .85s cubic-bezier(.22,1,.36,1);}
.motion-ready .reveal.is-visible{opacity:1;transform:none;}

.identity{background:#090e12;}
.identity__image{position:absolute;inset:0;background:url("/img/intro-food.jpg") center/cover no-repeat;transform:scale(1.04);}
.identity__shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(3,10,15,.94) 0%,rgba(3,10,15,.7) 46%,rgba(3,10,15,.66) 100%);}
.identity__grid{display:grid;grid-template-columns:1.02fr .98fr;gap:130px;align-items:center;}
.identity__title{margin:0;font-size:clamp(52px,4.7vw,70px);line-height:1.35;letter-spacing:-.07em; color:#fff; font-weight: 500;}
.identity__title strong{color:#1cb4be; font-weight: 500;}
.identity__copy{max-width:560px;padding-top:50px;}
.identity__copy p{margin:0 0 28px;color:rgba(255,255,255,.88);font-size:21px;line-height:1.95;}
.business{background:radial-gradient(circle at center,rgba(30,186,207,.12),transparent 38%),linear-gradient(145deg,#061725,#09263b 60%,#061725);}
.business .container{padding:100px 0;}
.orbit{position:relative;width:980px;height:630px;margin:0 auto;}
.orbit__ring{position:absolute;left:50%;top:50%;border:1px solid rgba(70,211,226,.23);border-radius:50%;transform:translate(-50%,-50%);}
.orbit__ring--outer{width:510px;height:510px;border-style:dashed;animation:rotateOrbit 28s linear infinite;}
.orbit__ring--inner{width:365px;height:365px;border-color:rgba(70,211,226,.42);animation:rotateOrbit 18s linear infinite reverse;}
@keyframes rotateOrbit{to{transform:translate(-50%,-50%) rotate(360deg)}}
.orbit__center{position:absolute;left:50%;top:50%;width:250px;height:250px;border-radius:50%;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:0px;background:#fff;color:var(--navy);box-shadow:0 0 0 20px rgba(255,255,255,.04),0 28px 100px rgba(0,0,0,.35);transform:translate(-50%,-50%);}
.orbit__center img{width:96px;height:96px;object-fit:contain;}
.orbit__center strong{font-size:36px;}
.orbit__item{position:absolute;width:330px;display:flex;gap:22px;align-items:flex-start;}
.orbit__item h3{margin:3px 0 12px;font-size:26px; color:#fff;}
.orbit__item p{margin:0;color:rgba(255,255,255,.67);font-size:16px;line-height:1.75;}
.orbit__item--tl{left:0;top:90px;}
.orbit__item--tr{right:0;top:90px;}
.orbit__item--bl{left:0;bottom:90px;}
.orbit__item--br{right:0;bottom:90px;}
.orbit__icon{flex:0 0 74px;width:74px;height:74px;border:1px solid rgba(51,213,229,.65);border-radius:50%;display:grid;place-items:center;background:rgba(18,74,98,.5);box-shadow:0 0 30px rgba(35,199,217,.13);}
.orbit__icon svg{width:38px;height:38px;fill:none;stroke:var(--cyan-2);stroke-width:2;stroke-linecap:round;stroke-linejoin:round; fill:#fff;}
.statement{background:#02090e;text-align:center;}
.statement__bg{position:absolute;inset:0;background:url("/img/statement-food.jpg") center/cover no-repeat;transform:scale(1.04);}
.statement__shade{position:absolute;inset:0;background:rgba(1,7,11,.7);}
.statement__inner{display:flex;align-items:center;justify-content:center;min-height:660px;}
.statement__inner p{margin:0;font-size:clamp(42px,4.6vw,78px);font-weight:700;line-height:1.5;letter-spacing:-.06em;text-shadow:0 8px 40px rgba(0,0,0,.3); color:#fff;}
.statement__corner{position:absolute;width:70px;height:70px;border-color:var(--cyan);}
.statement__corner--tl{left:6%;top:14%;border-left:3px solid var(--cyan);border-top:3px solid var(--cyan);}
.statement__corner--br{right:6%;bottom:14%;border-right:3px solid var(--cyan);border-bottom:3px solid var(--cyan);}
.facility{background:var(--paper);color:var(--text);}
.facility__grid{display:grid;grid-template-columns:.92fr 1.08fr;gap:90px;align-items:center;}
.facility__content h2{margin:22px 0 40px;font-size:clamp(48px,4.2vw,74px);line-height:1.24;letter-spacing:-.065em;}
.facility__content>p{margin:0 0 22px;color:#52616c;font-size:19px;line-height:1.9;}
.facility__features{margin-top:58px;display:grid;grid-template-columns:repeat(3,1fr);gap:18px;}
.facility__features div{min-height:168px;padding:24px 20px;border:1px solid #dbe5e8;border-radius:22px;background:#fff;box-shadow:0 18px 50px rgba(16,36,47,.05);}
.facility__features span{display:block;color:var(--cyan);font-size:13px;font-weight:800;letter-spacing:.12em;}
.facility__features strong{display:block;margin-top:20px;font-size:19px;}
.facility__features small{display:block;margin-top:9px;color:#81909a;font-size:13px;line-height:1.55;}
.facility__visual{position:relative;height:720px;border-radius:32px;overflow:hidden;box-shadow:0 30px 100px rgba(14,33,47,.16);}
.facility__visual img{width:100%;height:100%;object-fit:cover;}
.facility__caption{position:absolute;left:32px;right:32px;bottom:30px;padding:22px 26px;border:1px solid rgba(255,255,255,.22);border-radius:18px;background:rgba(2,12,20,.63);color:#fff;backdrop-filter:blur(14px);}
.facility__caption span{color:var(--cyan);font-size:12px;font-weight:800;letter-spacing:.16em;}
.facility__caption p{margin:7px 0 0;font-size:14px;}
.statistics{background:linear-gradient(140deg,#06121d,#071d2d 60%,#052536);}
.statistics .section-heading{margin-bottom:56px;}
.stat-list{border-top:1px solid rgba(255,255,255,.18);}
.stat-row{min-height:150px;display:grid;grid-template-columns:90px 1fr auto auto;align-items:center;border-bottom:1px solid rgba(255,255,255,.18); padding-right: 50px;}
.stat-row__num{color:var(--cyan);font-size:20px;font-weight:400;letter-spacing:.1em; color:#1cb4be; text-align: center;}
.stat-row h3{margin:0;font-size:30px;font-weight:700; color:#fff;}
.stat-row strong{font-size:clamp(54px,5vw,82px);font-weight:600;letter-spacing:-.04em; color:#fff;}
.stat-row small{margin:23px 0 0 8px;color:rgba(255,255,255,.7);font-size:18px;font-weight:700;}
.certification{background:#f8f8f6;color:var(--text);}
.certification .container{padding:100px 0;}
.certification .eyebrow{color:#333;}
.certification .section-heading h2{color:#333;}
.cert-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:30px;}
.cert-card{overflow:hidden;border:1px solid #dde4e7;border-radius:26px;background:#fff;box-shadow:0 24px 70px rgba(11,31,43,.07);transition:transform .35s ease,box-shadow .35s ease;}
.cert-card:hover{transform:translateY(-12px);box-shadow:0 36px 90px rgba(11,31,43,.14);}
.cert-card__image{height:420px;padding:30px;background:#f1f3f2;overflow:hidden;}
.cert-card__image img{width:100%;height:100%;object-fit:contain;transition:transform .45s ease;}
.cert-card:hover .cert-card__image img{transform:scale(1.04);}
.cert-card__body{position:relative;min-height:210px;padding:34px 34px 50px;}
.cert-card__body>span{color:var(--cyan);font-size:13px;font-weight:800;letter-spacing:.15em;}
.cert-card__body h3{margin:14px 0 12px;font-size:27px;}
.cert-card__body p{margin:0;color:#71808a;font-size:15px;line-height:1.7;}
.cert-card__body a{position:absolute;left:34px;bottom:24px;width:38px;height:38px;border-radius:50%;display:grid;place-items:center;background:var(--cyan);color:#04212a;font-size:22px;font-weight:700;transition:.3s ease;}
.cert-card__body a:hover{transform:rotate(90deg);}
.history{background:#fff;color:var(--text);align-items:flex-start;}
.history .container{padding:115px 0 130px;}
.timeline{position:relative;max-width:1050px;margin:20px auto 0;padding:30px 0;}
.timeline__line{position:absolute;left:50%;top:0;bottom:0;width:2px;background:#e2e8ea;transform:translateX(-50%);}
.timeline__line::before{content:"";position:absolute;left:0;top:0;width:100%;height:0;background:linear-gradient(var(--cyan),#72e4ec);transition:height 2s ease;}
.motion-ready .history:has(.is-visible) .timeline__line::before{height:100%;}
.timeline__item{position:relative;width:50%;min-height:160px;padding:0 70px;margin:5px 0 42px;}
.timeline__item::before{content:"";position:absolute;top:30px;width:18px;height:18px;border:5px solid #fff;border-radius:50%;background:var(--cyan);box-shadow:0 0 0 1px #b8c8ce;}
.timeline__item--left{margin-right:auto;text-align:right;}
.timeline__item--left::before{right:-14px;}
.timeline__item--right{margin-left:auto;text-align:left;}
.timeline__item--right::before{left:-14px;}
.timeline__item>div{padding:30px 34px;border:1px solid #dce4e7;border-radius:20px;background:#fafbfa;box-shadow:0 16px 50px rgba(12,34,46,.05);}
.timeline__item span{color:var(--cyan);font-size:28px;font-weight:800;}
.timeline__item h3{margin:12px 0 14px;font-size:24px;}
.timeline__item p{margin:0;color:#65747f;font-size:15px;line-height:1.75;}
.site-footer{background:#04131f;color:#fff;}
.site-footer__grid{min-height:410px;display:grid;grid-template-columns:1fr 1.3fr auto;gap:70px;align-items:center;}
.site-footer__brand img{width:290px;padding:10px 14px;border-radius:14px;background:#fff;}
.site-footer__brand p{margin:28px 0 0;color:rgba(255,255,255,.58);font-size:15px;line-height:1.8;}
.site-footer__info{margin:0;display:grid;gap:17px;}
.site-footer__info div{display:grid;grid-template-columns:85px 1fr;gap:22px;}
.site-footer__info dt{color:var(--cyan);font-size:14px;font-weight:800;}
.site-footer__info dd{margin:0;color:rgba(255,255,255,.82);font-size:15px;}
.site-footer__cta{min-width:170px;height:62px;border-radius:16px;display:flex;align-items:center;justify-content:center;gap:22px;background:var(--cyan);color:#03202a;font-size:17px;font-weight:800;transition:.3s ease;}
.site-footer__cta:hover{transform:translateY(-5px);box-shadow:0 18px 45px rgba(35,199,217,.26);}
.site-footer__bottom{padding:23px 40px;border-top:1px solid rgba(255,255,255,.1);color:rgba(255,255,255,.35);text-align:center;font-size:12px;letter-spacing:.04em;}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.motion-ready .reveal{opacity:1;transform:none;transition:none}.orbit__ring{animation:none}}

.company-page > section{padding: 150px 0;}

.cb-story{overflow:hidden;background:#fff;}
.cb-story *{box-sizing:border-box;}
.cb-container{width:min(1280px,calc(100% - 64px));margin:0 auto;position:relative;z-index:2;}
.cb-eyebrow{margin:0 0 28px;color:var(--cb-blue);font-size:14px;font-weight:800;letter-spacing:.18em;}
.cb-title{margin:0;color:var(--cb-ink);font-size:clamp(42px,4.1vw,55px);font-weight:800;line-height:1.16;letter-spacing:-.045em;}
.cb-title--light{color:#fff;}
.cb-lead{margin:38px 0 0;max-width:650px;color:var(--cb-text);font-size:18px;font-weight:450;line-height:1.9;letter-spacing:-.02em;}
.cb-section-number{display:flex;align-items:center;gap:15px;margin:0 0 32px;color:var(--cb-blue);font-size:20px;font-weight:800;letter-spacing:.06em;}
.cb-section-number span{display:block;width:42px;height:1px;background:currentColor;opacity:.45;}
.cb-section-number--light{color:var(--cb-cyan);}
.cb-watermark{position:absolute;left:max(30px,calc(50% - 760px));top:52px;color:#edf5f7;font-size:240px;font-weight:900;line-height:1;letter-spacing:-.08em;pointer-events:none;}
.cb-watermark--right{left:auto;right:max(30px,calc(50% - 760px));top:80px;}

.cb-hero{position:relative;min-height:880px;background:linear-gradient(90deg,#fff 0%,#fff 49%,#eefbfc 49%,#eefbfc 100%);}
.cb-hero__inner{display:flex;align-items:center;min-height:880px;}
.cb-hero__copy{width:55%;padding:80px 0;position:relative;z-index:4;}
.cb-hero__title{margin:0;color:var(--cb-ink);font-size:clamp(58px,5.2vw,86px);font-weight:850;line-height:1.1;letter-spacing:-.06em;}
.cb-hero__title strong{display:inline-block;margin-top:10px;color:transparent;background:linear-gradient(90deg,var(--cb-blue),var(--cb-cyan));-webkit-background-clip:text;background-clip:text;font-weight:850;}
.cb-hero__description{margin:38px 0 0;color:var(--cb-text);font-size:19px;font-weight:500;line-height:1.85;letter-spacing:-.02em;}
.cb-hero__facts{display:flex;gap:14px;margin-top:54px;}
.cb-hero__fact{min-width:150px;padding:18px 22px;border:1px solid rgba(22,126,164,.18);border-radius:18px;background:rgba(255,255,255,.72);backdrop-filter:blur(10px);box-shadow:0 16px 50px rgba(16,67,91,.08);}
.cb-hero__fact b{display:block;color:var(--cb-navy);font-size:22px;font-weight:850;}
.cb-hero__fact span{display:block;margin-top:5px;color:#73808c;font-size:13px;font-weight:600;}
.cb-hero__visual{position:absolute;right:0;top:0;width:51%;height:100%;overflow:hidden;clip-path:polygon(16% 0,100% 0,100% 100%,0 100%);}
.cb-hero__visual:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(255,255,255,.94) 0%,rgba(255,255,255,.2) 22%,rgba(7,18,27,.08) 100%);}
.cb-hero__visual img{width:100%;height:100%;object-fit:cover;object-position:center;filter:saturate(1.02) contrast(1.03);}
.cb-hero__orbit{position:absolute;border:72px solid rgba(55,200,223,.13);border-radius:999px;z-index:3;pointer-events:none;}
.cb-hero__orbit--01{width:520px;height:520px;left:43%;top:-165px;transform:rotate(27deg);border-right-color:rgba(13,45,82,.1);}
.cb-hero__orbit--02{width:320px;height:320px;left:48%;bottom:-130px;border-width:45px;border-left-color:rgba(13,45,82,.11);}
.cb-scroll{position:absolute;left:34px;bottom:50px;color:#90a3ad;font-size:11px;font-weight:700;letter-spacing:.18em;writing-mode:vertical-rl;transform:rotate(180deg);}
.cb-scroll:before{content:"";display:block;width:1px;height:72px;margin:0 auto 15px;background:#b7c8cf;}

.cb-section{position:relative;min-height:920px;padding:150px 0;}
.cb-section--philosophy{display:flex;align-items:center;background:#fff;}
.cb-philosophy{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(480px,.95fr);gap:110px;align-items:center;}
.cb-philosophy__copy{position:relative;z-index:2;}
.cb-pillars{display:grid;grid-template-columns:repeat(3,1fr);gap:0;margin-top:66px;border-top:1px solid var(--cb-line);border-bottom:1px solid var(--cb-line);}
.cb-pillar{padding:34px 24px 34px 0;}
.cb-pillar+.cb-pillar{padding-left:24px;border-left:1px solid var(--cb-line);}
.cb-icon{display:grid;place-items:center;width:56px;height:56px;border-radius:50%;background:var(--cb-sky);color:var(--cb-blue);}
.cb-icon svg{width:30px;height:30px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round;}
.cb-pillar h3{margin:22px 0 10px;color:var(--cb-ink);font-size:17px;font-weight:800;letter-spacing:-.03em;}
.cb-pillar p{margin:0;color:#73808c;font-size:14px;line-height:1.7;}
.cb-philosophy__media{position:relative;margin:0;padding:40px 0 0 40px;}
.cb-philosophy__media:before{content:"";position:absolute;left:0;top:0;width:65%;height:64%;border-radius:46% 54% 54% 46% / 45% 39% 61% 55%;background:linear-gradient(140deg,rgba(55,201,225,.28),rgba(22,126,164,.05));}
.cb-philosophy__media img{position:relative;width:100%;aspect-ratio:1/1.14;object-fit:cover;border-radius:240px 240px 28px 28px;box-shadow:0 34px 80px rgba(13,45,82,.16);}
.cb-philosophy__media figcaption{position:absolute;right:-18px;bottom:80px;padding:13px 20px;background:#fff;color:var(--cb-blue);font-size:11px;font-weight:800;letter-spacing:.13em;box-shadow:0 16px 40px rgba(13,45,82,.12);transform:rotate(90deg) translateX(100%);transform-origin:right bottom;}

.cb-section--first-store{min-height:980px;padding:0;background:#f5fafb;}
.cb-first-store__media{position:absolute;left:0;top:0;width:62%;height:100%;overflow:hidden;}
.cb-first-store__media:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(8,22,34,.05),rgba(8,22,34,.24));}
.cb-first-store__media img{width:100%;height:100%;object-fit:cover;object-position:center;filter:saturate(.9) contrast(1.05);}
.cb-image-label{position:absolute;left:42px;bottom:52px;z-index:2;color:#fff;font-size:11px;font-weight:800;letter-spacing:.18em;writing-mode:vertical-rl;transform:rotate(180deg);}
.cb-first-store__shape{position:absolute;right:0;top:0;width:53%;height:100%;background:#f5fafb;clip-path:polygon(24% 0,100% 0,100% 100%,0 100%);}
.cb-first-store__inner{display:flex;justify-content:flex-end;align-items:center;min-height:980px;}
.cb-first-store__card{width:53%;padding:70px 0 70px 190px;position:relative;z-index:3;}
.cb-first-store__card:before{content:"";position:absolute;left:58px;top:78px;width:1px;height:150px;background:linear-gradient(var(--cb-cyan),transparent);}
.cb-first-store__meta{display:grid;grid-template-columns:78px 1fr;gap:10px 18px;margin-top:54px;padding-top:32px;border-top:1px solid var(--cb-line);}
.cb-first-store__meta span{color:var(--cb-blue);font-size:18px;font-weight:850;}
.cb-first-store__meta p{margin:0;color:#596775;font-size:15px;font-weight:600;}

.cb-section--stores{min-height:1040px;padding:165px 0 150px;background:#fff;}
.cb-store-word{position:absolute;left:50%;top:88px;transform:translateX(-50%);color:#edf4f6;font-size:190px;font-weight:900;line-height:1;letter-spacing:-.08em;white-space:nowrap;}
.cb-section-head{display:grid;grid-template-columns:1fr .85fr;gap:90px;align-items:end;}
.cb-section-head .cb-lead{margin:0 0 4px;}
.cb-store-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:28px;margin-top:92px;align-items:start;}
.cb-store-card{position:relative;background:#fff;box-shadow:0 24px 65px rgba(14,45,69,.1);transition:transform .35s ease,box-shadow .35s ease;}
.cb-store-card:hover{transform:translateY(-10px);box-shadow:0 34px 80px rgba(14,45,69,.16);}
.cb-store-card--02{margin-top:70px;}
.cb-store-card img{width:100%;aspect-ratio:1.35/1;object-fit:cover;}
.cb-store-card>div{position:relative;padding:30px 30px 34px;}
.cb-store-card span{position:absolute;right:22px;top:-33px;color:#fff;font-size:58px;font-weight:900;line-height:1;text-shadow:0 7px 24px rgba(13,45,82,.26);}
.cb-store-card h3{margin:0;color:var(--cb-ink);font-size:24px;font-weight:850;letter-spacing:-.04em;}
.cb-store-card p{margin:10px 0 0;color:#788590;font-size:14px;line-height:1.6;}

.cb-section--technology{display:flex;align-items:center;min-height:940px;background:linear-gradient(115deg,#edfafd 0%,#f8fcfd 48%,#fff 100%);}
.cb-tech-ribbon{position:absolute;left:-180px;top:-220px;width:650px;height:650px;border:95px solid rgba(55,200,223,.1);border-radius:50%;border-bottom-color:rgba(22,126,164,.08);transform:rotate(20deg);}
.cb-technology{display:grid;grid-template-columns:1fr 1fr;gap:90px;align-items:center;}
.cb-tech-points{display:grid;grid-template-columns:repeat(2,1fr);gap:1px;margin-top:62px;background:rgba(22,126,164,.12);border:1px solid rgba(22,126,164,.08);}
.cb-tech-points div{padding:28px 24px;background:rgba(255,255,255,.78);}
.cb-tech-points b{display:block;color:var(--cb-blue);font-size:20px;font-weight:850;letter-spacing:-.03em;}
.cb-tech-points span{display:block;margin-top:7px;color:#6a7985;font-size:13px;font-weight:650;}
.cb-technology__media{position:relative;margin:0;padding:54px 54px 0 0;}
.cb-technology__media:before{content:"";position:absolute;right:0;top:0;width:72%;height:72%;border-radius:50%;background:linear-gradient(145deg,rgba(55,200,223,.22),rgba(13,45,82,.06));}
.cb-technology__media img{position:relative;width:100%;aspect-ratio:1/1.1;object-fit:cover;border-radius:28px 220px 28px 28px;box-shadow:0 35px 90px rgba(14,57,79,.18);}
.cb-tech-badge{position:absolute;left:-48px;bottom:55px;display:grid;grid-template-columns:auto auto;align-items:end;padding:28px 34px;border-radius:18px;background:var(--cb-navy);color:#fff;box-shadow:0 20px 50px rgba(13,45,82,.28);}
.cb-tech-badge strong{font-size:64px;font-weight:900;line-height:.9;letter-spacing:-.07em;}
.cb-tech-badge span{margin-left:4px;font-size:26px;font-weight:800;}
.cb-tech-badge small{grid-column:1/3;margin-top:10px;color:#8fdde9;font-size:10px;font-weight:800;letter-spacing:.14em;}

.cb-section--production{min-height:1020px;display:flex;align-items:center;background:#fff;}
.cb-production{display:grid;grid-template-columns:1.1fr .9fr;gap:100px;align-items:center;}
.cb-production__gallery{display:grid;grid-template-columns:1.25fr .75fr;grid-template-rows:290px 220px 220px;gap:16px;position:relative;}
.cb-production__gallery:before{content:"";position:absolute;left:-28px;top:-28px;width:150px;height:150px;border-left:1px solid var(--cb-cyan);border-top:1px solid var(--cb-cyan);opacity:.65;}
.cb-production__item{position:relative;margin:0;overflow:hidden;border-radius:18px;}
.cb-production__item--main{grid-row:1/3;}
.cb-production__item:last-child{grid-column:1/3;}
.cb-production__item img{width:100%;height:100%;object-fit:cover;transition:transform .45s ease;}
.cb-production__item:hover img{transform:scale(1.04);}
.cb-production__item figcaption{position:absolute;left:14px;bottom:14px;padding:9px 13px;border-radius:999px;background:rgba(9,30,45,.72);color:#fff;font-size:12px;font-weight:700;backdrop-filter:blur(8px);}
.cb-check-list{display:grid;grid-template-columns:repeat(2,1fr);gap:14px;margin:52px 0 0;padding:0;list-style:none;}
.cb-check-list li{position:relative;padding:18px 18px 18px 48px;border:1px solid var(--cb-line);border-radius:14px;color:#536271;font-size:14px;font-weight:650;background:#fff;}
.cb-check-list li:before{content:"✓";position:absolute;left:17px;top:50%;display:grid;place-items:center;width:20px;height:20px;border-radius:50%;background:var(--cb-sky);color:var(--cb-blue);font-size:12px;font-weight:900;transform:translateY(-50%);}

.cb-section--flow{min-height:1000px;padding:155px 0 0;background:linear-gradient(150deg,#0a2442 0%,#0e3b63 58%,#106c84 100%);color:#fff;}
.cb-section--flow:before{content:"";position:absolute;right:-200px;top:-240px;width:720px;height:720px;border:100px solid rgba(55,200,223,.08);border-radius:50%;}
.cb-flow__head{display:grid;grid-template-columns:1fr .7fr;gap:80px;align-items:end;}
.cb-flow__head>p:last-child{margin:0 0 10px;color:rgba(255,255,255,.68);font-size:17px;line-height:1.85;}
.cb-flow{display:grid;grid-template-columns:repeat(5,1fr);gap:20px;margin-top:86px;position:relative;}
.cb-flow:before{content:"";position:absolute;left:10%;right:10%;top:63px;height:1px;background:linear-gradient(90deg,transparent,rgba(94,218,233,.7),transparent);}
.cb-flow article{position:relative;text-align:center;}
.cb-flow article>span{position:absolute;left:50%;top:-20px;color:rgba(255,255,255,.28);font-size:12px;font-weight:800;transform:translateX(-50%);}
.cb-flow__icon{position:relative;z-index:2;display:grid;place-items:center;width:126px;height:126px;margin:0 auto;border:1px solid rgba(126,229,240,.55);border-radius:50%;background:rgba(255,255,255,.05);backdrop-filter:blur(10px);}
.cb-flow__icon svg{width:42px;height:42px;fill:none;stroke:#8de2ed;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round;}
.cb-flow h3{margin:27px 0 8px;color:#fff;font-size:18px;font-weight:800;}
.cb-flow p{margin:0;color:rgba(255,255,255,.55);font-size:13px;line-height:1.6;}
.cb-cta{display:flex;justify-content:space-between;align-items:center;gap:40px;margin-top:100px;padding:55px 64px;border-radius:30px 30px 0 0;background:linear-gradient(90deg,#fff 0%,#eefcff 100%);color:var(--cb-ink);}
.cb-cta p{margin:0 0 13px;color:var(--cb-blue);font-size:12px;font-weight:850;letter-spacing:.12em;}
.cb-cta h2{margin:0;font-size:36px;font-weight:850;line-height:1.22;letter-spacing:-.04em;}
.cb-cta a{display:inline-flex;align-items:center;gap:18px;flex:0 0 auto;padding:20px 28px;border-radius:999px;background:var(--cb-navy);color:#fff;text-decoration:none;font-size:15px;font-weight:800;box-shadow:0 15px 35px rgba(13,45,82,.2);transition:transform .25s ease,background .25s ease;}
.cb-cta a:hover{transform:translateY(-3px);background:var(--cb-blue);}
.cb-cta a span{font-size:22px;line-height:1;}

.category-section .eyebrow,
.category-section .section-heading.compact h2,
.product-section .eyebrow,
.media-section .eyebrow,
.story-section .eyebrow{color: var(--ink);}
.category-section .section-heading.compact p{margin-left: 0;}
