:root{
  --bg-dark:#15130F; --bg-dark-2:#1E1B14; --bg-light:#FAFAF8; --bg-light-2:#F1EEE8;
  --gold:#A8792F; --gold-bright:#E0AC4F; --ink:#17140F; --paper:#EDEAE2;
  --steel:#AFA99C; --steel-dark:#6B655A;
  --brand-gold:#A8792F; --brand-gold-bright:#E0AC4F;
  --line-dark:rgba(237,234,226,0.10); --line-light:rgba(23,20,15,0.08);
  --font-display:'Space Grotesk','Noto Sans KR','Noto Sans SC','Noto Sans TC','Inter',sans-serif;
  --font-body:'Inter','Noto Sans KR','Noto Sans SC','Noto Sans TC',sans-serif;
  --maxw:1180px;
}
*{box-sizing:border-box;}
html{scroll-behavior:smooth;}
body{margin:0;font-family:var(--font-body);color:var(--ink);background:var(--bg-light);-webkit-font-smoothing:antialiased;line-height:1.65;}
img{max-width:100%;display:block;}
a{color:inherit;text-decoration:none;}
ul{list-style:none;margin:0;padding:0;}
button{font-family:inherit;}
table{border-collapse:collapse;width:100%;}
.wrap{max-width:var(--maxw);margin:0 auto;padding:0 28px;}
.eyebrow{display:inline-flex;align-items:center;gap:10px;font-family:var(--font-display);font-size:13px;letter-spacing:.14em;text-transform:uppercase;color:var(--gold);font-weight:600;margin-bottom:18px;}
.eyebrow::before{content:"";width:22px;height:1px;background:var(--gold);}
h1,h2,h3{font-family:var(--font-display);margin:0;letter-spacing:-0.01em;}
.section{padding:96px 0;}
@media (max-width:768px){.section{padding:64px 0;}}
.section-title{font-size:clamp(26px,4vw,40px);font-weight:700;line-height:1.25;margin-bottom:18px;}
.section-sub{max-width:620px;color:var(--steel-dark);font-size:16px;}
.section-dark{background:var(--bg-dark);color:var(--paper);}
.section-dark .section-sub{color:var(--steel);}
.section-dark .eyebrow{color:var(--gold-bright);}
.btn{display:inline-flex;align-items:center;gap:10px;padding:14px 26px;border-radius:2px;font-weight:600;font-size:14px;letter-spacing:.03em;border:1px solid transparent;cursor:pointer;transition:all .25s ease;font-family:var(--font-body);}
.btn-primary{background:var(--gold);color:#fff;}
.btn-primary:hover{background:var(--gold-bright);transform:translateY(-2px);}
.btn-outline{border-color:rgba(238,234,225,0.35);color:var(--paper);}
.btn-outline:hover{border-color:var(--gold-bright);color:var(--gold-bright);transform:translateY(-2px);}
.btn-outline.on-light{border-color:rgba(27,29,33,0.25);color:var(--ink);}
.btn-outline.on-light:hover{border-color:var(--gold);color:var(--gold);}

.reveal{opacity:0;transform:translateY(20px);transition:opacity .6s ease,transform .6s ease;}
.reveal.in-view{opacity:1;transform:translateY(0);}
@media (prefers-reduced-motion:reduce){.reveal{opacity:1;transform:none;transition:none;}html{scroll-behavior:auto;}}

/* ===== Breadcrumb / Page Banner ===== */
.page-banner{background:var(--bg-dark);color:var(--paper);padding:150px 0 46px;position:relative;overflow:hidden;}
.page-banner-ring{position:absolute;top:-140px;right:-140px;width:420px;height:420px;opacity:.28;}
.breadcrumb{display:flex;gap:8px;align-items:center;font-size:13px;color:var(--steel);margin-bottom:14px;position:relative;z-index:2;}
.breadcrumb a:hover{color:var(--gold-bright);}
.page-banner h1{font-size:clamp(26px,4vw,38px);font-weight:700;position:relative;z-index:2;}

/* ===== Header ===== */
.site-header{position:fixed;top:0;left:0;right:0;z-index:100;padding:18px 0;transition:background .3s ease,padding .3s ease,box-shadow .3s ease;}
.site-header.scrolled{background:rgba(27,29,33,0.94);backdrop-filter:blur(10px);padding:10px 0;box-shadow:0 8px 24px rgba(0,0,0,0.18);}
.nav-inner{display:flex;align-items:center;justify-content:space-between;gap:24px;}
.brand{display:flex;align-items:center;gap:12px;}
.brand img{height:36px;width:auto;}
.brand-name{font-family:var(--font-display);color:var(--paper);font-weight:700;font-size:15px;letter-spacing:.02em;line-height:1.15;}
.brand-name span{display:block;font-size:9.5px;font-weight:500;color:var(--steel);letter-spacing:.1em;}
.nav-links{display:flex;align-items:center;gap:6px;}
.nav-item{position:relative;}
.nav-link{display:block;color:var(--paper);font-size:14px;font-weight:500;opacity:.88;padding:10px 14px;transition:opacity .2s,color .2s;}
.nav-item:hover .nav-link,.nav-link.active{opacity:1;color:var(--gold-bright);}
.submenu{position:absolute;top:100%;left:0;min-width:220px;background:var(--bg-dark-2);border:1px solid var(--line-dark);box-shadow:0 18px 34px rgba(0,0,0,0.28);padding:8px;opacity:0;visibility:hidden;transform:translateY(6px);transition:all .2s ease;}
.nav-item:hover .submenu{opacity:1;visibility:visible;transform:translateY(0);}
.submenu a{display:block;padding:10px 14px;font-size:13.5px;color:var(--paper);opacity:.85;border-radius:2px;}
.submenu a:hover{opacity:1;background:rgba(201,154,58,0.12);color:var(--gold-bright);}
.nav-right{display:flex;align-items:center;gap:16px;}
.lang-select{background:rgba(238,234,225,0.06);color:var(--paper);border:1px solid rgba(238,234,225,0.25);border-radius:2px;padding:8px 10px;font-size:13px;font-family:var(--font-body);cursor:pointer;}
.lang-select option{color:#1B1D21;}
.menu-toggle{display:none;flex-direction:column;gap:5px;background:none;border:none;cursor:pointer;padding:6px;}
.menu-toggle span{width:22px;height:2px;background:var(--paper);}
@media (max-width:980px){
  .nav-links{position:fixed;top:0;right:0;height:100vh;width:min(320px,86vw);background:var(--bg-dark);flex-direction:column;align-items:stretch;padding:100px 24px 32px;gap:4px;transform:translateX(100%);transition:transform .35s ease;box-shadow:-16px 0 40px rgba(0,0,0,0.3);overflow-y:auto;}
  .nav-links.open{transform:translateX(0);}
  .menu-toggle{display:flex;}
  .submenu{position:static;opacity:1;visibility:visible;transform:none;background:none;border:none;box-shadow:none;padding:0 0 0 14px;display:none;}
  .nav-item.mobile-open .submenu{display:block;}
  .nav-item .nav-link{display:flex;align-items:center;justify-content:space-between;}
}

/* ===== Hero (home) ===== */
.hero{position:relative;background:var(--bg-dark);color:var(--paper);padding:180px 0 110px;overflow:hidden;}
.hero-bg-chip{position:absolute;inset:0;width:100%;height:100%;opacity:.09;z-index:0;}
.hero-ring{position:absolute;top:-160px;right:-160px;width:620px;height:620px;opacity:.16;animation:spin 120s linear infinite;z-index:1;}
@keyframes spin{to{transform:rotate(360deg);}}
@media (prefers-reduced-motion:reduce){.hero-ring{animation:none;}}
.hero-content{position:relative;z-index:2;max-width:740px;}
.hero-title{font-size:clamp(32px,5.2vw,54px);font-weight:700;line-height:1.18;margin-bottom:24px;}
.hero-subtitle{font-size:16.5px;color:var(--steel);max-width:590px;margin-bottom:36px;}
.hero-ctas{display:flex;gap:16px;flex-wrap:wrap;}
@media (max-width:768px){.hero{padding:140px 0 80px;}.hero-ring{width:400px;height:400px;top:-100px;right:-130px;}}

/* ===== Snapshot table (home / overview) ===== */
.fact-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:38px 56px;margin-top:60px;padding-top:44px;border-top:1px solid var(--line-light);}
@media (max-width:700px){.fact-grid{grid-template-columns:1fr;gap:28px;}}
.fact-label{font-size:11.5px;letter-spacing:.14em;text-transform:uppercase;color:var(--gold);font-weight:700;margin-bottom:10px;}
.fact-value{font-size:16.5px;color:var(--ink);line-height:1.55;}

.contact-strip{display:flex;flex-wrap:wrap;gap:32px 44px;margin-top:52px;padding-top:38px;border-top:1px solid var(--line-light);}
.contact-strip-item{display:flex;align-items:center;gap:12px;font-size:14.5px;color:var(--ink);}
.contact-strip-item .ico{width:19px;height:19px;color:var(--gold);flex-shrink:0;}

/* ===== Stat grid ===== */
.stat-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:var(--line-light);border:1px solid var(--line-light);margin-top:40px;}
@media (max-width:700px){.stat-grid{grid-template-columns:1fr 1fr;}}
.stat-item{background:var(--bg-light);padding:26px 22px;}
.stat-num{font-family:var(--font-display);font-size:32px;font-weight:700;color:var(--gold);line-height:1;margin-bottom:8px;}
.stat-label{font-size:12.5px;color:var(--steel-dark);}

/* ===== Business grid ===== */
.business-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:var(--line-light);border:1px solid var(--line-light);margin-top:48px;}
@media (max-width:900px){.business-grid{grid-template-columns:1fr 1fr;}}
@media (max-width:600px){.business-grid{grid-template-columns:1fr;}}
.business-card{background:var(--bg-light);padding:0 0 28px;transition:background .25s ease;display:block;overflow:hidden;}
.business-card:hover{background:var(--bg-light-2);}
.business-card-inner{padding:22px 28px 0;}
.business-diagram{background:var(--bg-light-2);border-bottom:1px solid var(--line-light);height:96px;display:flex;align-items:center;justify-content:center;color:var(--gold);transition:background .3s ease,color .3s ease;}
.business-diagram svg{width:auto;height:60px;max-width:80%;animation:iconFloat 3.6s ease-in-out infinite;}
.business-card:hover .business-diagram{background:var(--bg-dark);color:var(--gold-bright);}
.business-card:hover .business-diagram svg{animation-play-state:running;}
@keyframes iconFloat{0%,100%{transform:translateY(0) rotate(0deg);}50%{transform:translateY(-5px) rotate(-2deg);}}
@media (prefers-reduced-motion:reduce){.business-diagram svg{animation:none;}}
.business-icon{width:44px;height:44px;margin-bottom:20px;color:var(--gold);}
.business-title{font-size:17px;font-weight:700;margin-bottom:8px;}
.business-desc{font-size:13.5px;color:var(--steel-dark);}
.business-more{display:inline-block;margin-top:14px;font-size:12.5px;font-weight:700;color:var(--gold);letter-spacing:.04em;}

/* ===== Why grid ===== */
.why-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:34px;margin-top:48px;}
@media (max-width:900px){.why-grid{grid-template-columns:1fr 1fr;}}
@media (max-width:560px){.why-grid{grid-template-columns:1fr;}}
.why-icon{width:36px;height:36px;color:var(--gold-bright);margin-bottom:18px;}
.why-title{font-size:15.5px;font-weight:700;margin-bottom:8px;}
.why-desc{font-size:13px;color:var(--steel);}

/* ===== Network band ===== */
.network-band{margin-top:70px;padding-top:56px;border-top:1px solid var(--line-dark);}
.network-head{display:flex;justify-content:space-between;align-items:flex-end;flex-wrap:wrap;gap:20px;margin-bottom:28px;}
.network-chips{display:flex;flex-wrap:wrap;gap:12px;}
.chip{background:rgba(238,234,225,0.06);border:1px solid rgba(238,234,225,0.14);border-radius:3px;padding:9px 16px;font-size:12.5px;letter-spacing:.03em;color:var(--paper);}
.chip-light{background:var(--bg-light-2);border:1px solid var(--line-light);border-radius:3px;padding:9px 16px;font-size:12.5px;letter-spacing:.03em;color:var(--ink);}

/* ===== Timeline (history) ===== */
.era-block{margin-bottom:64px;}
.era-label{font-family:var(--font-display);font-size:20px;font-weight:700;color:var(--gold);margin-bottom:10px;text-align:center;}
.timeline{position:relative;padding:10px 0;}
.timeline::before{content:"";position:absolute;top:0;bottom:0;left:50%;width:2px;background:var(--line-light);transform:translateX(-50%);}
.tl-row{position:relative;display:flex;padding:8px 0 46px;}
.tl-row:last-child{padding-bottom:8px;}
.tl-row.left{justify-content:flex-end;padding-right:calc(50% + 32px);}
.tl-row.right{justify-content:flex-start;padding-left:calc(50% + 32px);}
.tl-card{background:var(--bg-light);border:1px solid var(--line-light);border-radius:10px;padding:22px 26px;max-width:360px;transition:transform .25s ease,box-shadow .25s ease;}
.tl-card:hover{transform:translateY(-4px);box-shadow:0 14px 30px rgba(0,0,0,0.08);}
.tl-dot{position:absolute;left:50%;top:6px;transform:translateX(-50%);width:14px;height:14px;border-radius:50%;background:var(--gold);border:4px solid var(--bg-light);z-index:2;box-shadow:0 0 0 1px var(--line-light);}
.section-dark .tl-dot{border-color:var(--bg-dark);box-shadow:0 0 0 1px var(--line-dark);}
.section-dark .tl-card{background:var(--bg-dark-2);border-color:var(--line-dark);}
.section-dark .tl-card:hover{box-shadow:0 14px 30px rgba(0,0,0,0.3);}
@media (max-width:700px){
  .timeline::before{left:20px;}
  .tl-row.left,.tl-row.right{justify-content:flex-start;padding-left:50px;padding-right:0;}
  .tl-dot{left:20px;}
  .tl-card{max-width:none;}
}
.timeline-year{font-family:var(--font-display);font-weight:700;font-size:22px;color:var(--gold);margin-bottom:6px;}
.timeline-title{font-size:16.5px;font-weight:700;margin-bottom:6px;}
.timeline-desc{font-size:14px;color:var(--steel-dark);}
.section-dark .timeline-desc{color:var(--steel);}
.section-dark .timeline-year{color:var(--gold-bright);}
/* simple teaser list variant (home page) */
.timeline-row{display:grid;grid-template-columns:100px 1fr;gap:28px;padding:26px 14px;border-bottom:1px solid var(--line-light);transition:transform .25s ease,background .25s ease;border-radius:4px;}
.timeline-row:hover{transform:translateX(8px);background:var(--bg-light-2);}
.section-dark .timeline-row:hover{background:rgba(237,234,226,0.04);}
@media (max-width:600px){.timeline-row{grid-template-columns:1fr;gap:6px;}}

/* ===== Vision pillars ===== */
.pillar-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:var(--line-light);border:1px solid var(--line-light);margin-top:48px;}
@media (max-width:900px){.pillar-grid{grid-template-columns:1fr 1fr;}}
@media (max-width:560px){.pillar-grid{grid-template-columns:1fr;}}

.spec-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:var(--line-light);border:1px solid var(--line-light);}
@media (max-width:820px){.spec-grid{grid-template-columns:1fr 1fr;}}
@media (max-width:520px){.spec-grid{grid-template-columns:1fr;}}

.illustration-panel{background:var(--bg-light-2);border:1px solid var(--line-light);border-radius:6px;padding:26px;display:flex;justify-content:center;align-items:center;min-height:180px;color:var(--gold);}
.illustration-panel svg{width:100%;max-width:360px;height:auto;max-height:170px;}
.product-intro-grid{display:grid;grid-template-columns:1.2fr .8fr;gap:40px;align-items:center;}
@media (max-width:760px){.product-intro-grid{grid-template-columns:1fr;}}
.pillar{background:var(--bg-light);padding:34px 26px;transition:transform .25s ease,box-shadow .25s ease;}
.pillar:hover{transform:translateY(-6px);box-shadow:0 16px 34px rgba(0,0,0,0.08);position:relative;z-index:1;}
.pillar-num{font-family:var(--font-display);font-size:14px;color:var(--gold);font-weight:700;letter-spacing:.08em;margin-bottom:16px;}
.pillar-num svg{width:22px;height:22px;}
.pillar-title{font-size:16.5px;font-weight:700;margin-bottom:10px;}
.pillar-desc{font-size:13.5px;color:var(--steel-dark);}

/* ===== Greeting ===== */
.greeting-wrap{display:grid;grid-template-columns:.85fr 1.15fr;gap:56px;align-items:start;}
@media (max-width:860px){.greeting-wrap{grid-template-columns:1fr;gap:34px;}}
.greeting-figure{background:var(--bg-dark-2);border:1px solid var(--line-light);padding:40px 30px;text-align:center;}
.greeting-figure img{height:70px;margin:0 auto 18px;}
.greeting-figure .role{font-size:13px;color:var(--gold);letter-spacing:.08em;text-transform:uppercase;margin-bottom:6px;}
.greeting-figure .name{font-family:var(--font-display);font-size:20px;font-weight:700;color:var(--paper);}
.greeting-body p{color:var(--steel-dark);font-size:15.5px;margin:0 0 18px;}
.signature{margin-top:30px;font-family:var(--font-display);font-weight:700;font-size:16px;color:var(--gold);}

/* ===== Organization chart ===== */
.org-chart{display:flex;flex-direction:column;align-items:center;gap:0;margin-top:56px;}
.org-node{background:var(--bg-dark);color:var(--paper);border:1px solid var(--gold);padding:16px 30px;border-radius:2px;font-weight:700;font-size:14.5px;text-align:center;position:relative;}
.org-ceo{margin-bottom:36px;}
.org-connector{width:1px;height:30px;background:var(--line-light);}
.org-row{display:flex;gap:22px;flex-wrap:wrap;justify-content:center;margin-top:0;position:relative;}
.org-row::before{content:"";position:absolute;top:-30px;left:10%;right:10%;height:1px;background:var(--line-light);}
.org-dept{background:var(--bg-light-2);border:1px solid var(--line-light);padding:16px 22px;text-align:center;min-width:170px;}
.org-dept-title{font-weight:700;font-size:14px;margin-bottom:6px;}
.org-dept-desc{font-size:12px;color:var(--steel-dark);}

/* ===== Location ===== */
.location-grid{display:grid;grid-template-columns:1fr 1fr;gap:50px;align-items:start;margin-top:48px;}
@media (max-width:860px){.location-grid{grid-template-columns:1fr;}}
.map-placeholder{aspect-ratio:4/3;background:var(--bg-light-2);border:1px dashed var(--line-light);display:flex;align-items:center;justify-content:center;color:var(--steel-dark);font-size:13.5px;text-align:center;padding:20px;}
.info-row{padding:18px 0;border-bottom:1px solid var(--line-light);}
.info-row:first-child{padding-top:0;}
.info-label{font-size:12px;letter-spacing:.1em;text-transform:uppercase;color:var(--gold);font-weight:700;margin-bottom:6px;}
.info-value{font-size:15.5px;color:var(--ink);}

/* ===== Product detail template ===== */
.product-hero{display:grid;grid-template-columns:100px 1fr;gap:26px;align-items:center;margin-bottom:14px;}
@media (max-width:600px){.product-hero{grid-template-columns:70px 1fr;}}
.product-hero .icon-badge{width:88px;height:88px;}
@media (max-width:600px){.product-hero .icon-badge{width:60px;height:60px;}}
.product-hero .icon-badge svg{width:40px;height:40px;}
@media (max-width:600px){.product-hero .icon-badge svg{width:28px;height:28px;}}
.product-body-grid{display:grid;grid-template-columns:1.1fr .9fr;gap:56px;margin-top:50px;align-items:start;}
@media (max-width:900px){.product-body-grid{grid-template-columns:1fr;gap:34px;}}
.feature-list li{padding:16px 0;border-bottom:1px solid var(--line-light);display:flex;gap:14px;font-size:14.5px;color:var(--steel-dark);line-height:1.6;}
.feature-list li::before{content:"";flex-shrink:0;width:3px;border-radius:2px;background:var(--gold);margin-top:2px;align-self:stretch;}
.feature-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px;}
@media (max-width:560px){.feature-grid{grid-template-columns:1fr;}}
.feature-card{display:flex;gap:12px;align-items:flex-start;background:var(--bg-light-2);border-radius:8px;padding:16px 18px;}
.feature-card .fc-icon{width:20px;height:20px;color:var(--gold);flex-shrink:0;margin-top:2px;}
.feature-card .fc-text{font-size:13.5px;color:var(--steel-dark);line-height:1.55;}
.section-dark .feature-card{background:rgba(237,234,226,0.05);}
.section-dark .feature-card .fc-text{color:var(--steel);}

.tag-grid{display:flex;flex-wrap:wrap;gap:10px;}
.tag-card{display:inline-flex;align-items:center;gap:8px;background:var(--bg-light-2);border:1px solid var(--line-light);border-radius:8px;padding:10px 16px;font-size:13px;color:var(--ink);}
.tag-card .tc-dot{width:6px;height:6px;border-radius:50%;background:var(--gold);flex-shrink:0;}

.trust-band{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:var(--line-light);border:1px solid var(--line-light);}
@media (max-width:700px){.trust-band{grid-template-columns:1fr 1fr;}}
@media (max-width:420px){.trust-band{grid-template-columns:1fr;}}
.trust-item{background:var(--bg-light);padding:30px 20px;text-align:center;}
.trust-item .ti-icon{display:inline-flex;align-items:center;justify-content:center;width:26px;height:26px;color:var(--gold);margin:0 auto 14px;}
.trust-item .ti-icon svg{width:100%;height:100%;}
.trust-item .ti-label{font-size:14px;font-weight:700;color:var(--ink);}

.inline-list{font-size:15px;color:var(--steel-dark);line-height:1.9;}
.inline-list .sep{color:var(--gold);margin:0 10px;font-weight:600;}
.inline-list-dark{font-size:15px;color:var(--steel);line-height:1.9;}
.inline-list-dark .sep{color:var(--gold-bright);margin:0 10px;font-weight:600;}
.related-products{display:flex;gap:14px;flex-wrap:wrap;margin-top:20px;}
.related-chip{border:1px solid var(--line-light);padding:10px 18px;font-size:13px;border-radius:2px;}
.related-chip:hover{border-color:var(--gold);color:var(--gold);}
.cta-banner{background:var(--bg-dark);color:var(--paper);border-radius:2px;padding:50px 40px;display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:22px;margin-top:70px;}
.cta-banner h3{font-size:22px;font-weight:700;}
.cta-banner p{color:var(--steel);margin:6px 0 0;font-size:14px;}

/* ===== Contact ===== */
.contact-grid{display:grid;grid-template-columns:.85fr 1.15fr;gap:56px;margin-top:46px;}
@media (max-width:900px){.contact-grid{grid-template-columns:1fr;gap:36px;}}
.contact-form{display:grid;gap:16px;}
.form-row-2{display:grid;grid-template-columns:1fr 1fr;gap:16px;}
@media (max-width:560px){.form-row-2{grid-template-columns:1fr;}}
.contact-form input,.contact-form select,.contact-form textarea{width:100%;padding:14px 16px;border:1px solid var(--line-light);border-radius:2px;background:#fff;font-family:var(--font-body);font-size:14.5px;color:var(--ink);}
.contact-form input:focus,.contact-form select:focus,.contact-form textarea:focus{outline:2px solid var(--gold);outline-offset:1px;}
.contact-form textarea{resize:vertical;min-height:130px;}
.btn-submit{justify-self:start;}

/* ===== Footer ===== */
.site-footer{background:var(--bg-dark);color:var(--steel);padding:52px 0 28px;}
.footer-inner{display:flex;justify-content:space-between;align-items:flex-start;flex-wrap:wrap;gap:30px;padding-bottom:32px;border-bottom:1px solid var(--line-dark);}
.footer-brand{display:flex;align-items:center;gap:12px;}
.footer-brand img{height:32px;}
.footer-brand-name{font-family:var(--font-display);color:var(--paper);font-weight:700;font-size:14.5px;}
.footer-desc{max-width:320px;font-size:13px;}
.footer-links{display:flex;gap:44px;flex-wrap:wrap;}
.footer-col-title{color:var(--paper);font-weight:700;font-size:13px;margin-bottom:14px;}
.footer-col a{display:block;font-size:13px;padding:6px 0;opacity:.85;}
.footer-sns{display:flex;}
.footer-sns a{display:inline-block;padding:6px 10px;border:1px solid var(--line-dark);border-radius:4px;font-size:12px;opacity:.9;}
.footer-sns a:hover{border-color:var(--gold-bright);color:var(--gold-bright);}
.footer-col a:hover{opacity:1;color:var(--gold-bright);}
.footer-bottom{display:flex;justify-content:space-between;flex-wrap:wrap;gap:10px;padding-top:20px;font-size:12px;}

.icon-badge{width:54px;height:54px;border-radius:50%;border:2px solid var(--gold);display:flex;align-items:center;justify-content:center;flex-shrink:0;}
.icon-badge svg{width:24px;height:24px;color:var(--gold);}

.glow-text{color:var(--gold-bright);text-shadow:0 0 18px rgba(168,121,47,0.35);}

.shine-text{
  background:linear-gradient(100deg, var(--gold-bright) 20%, #fff 42%, var(--gold-bright) 55%, var(--gold-bright) 100%);
  background-size:250% 100%;
  -webkit-background-clip:text; background-clip:text;
  color:var(--gold-bright); -webkit-text-fill-color:transparent;
  animation:shineSweep 4.5s ease-in-out infinite;
  display:inline-block;
}
@keyframes shineSweep{
  0%{background-position:180% 0;}
  55%,100%{background-position:-60% 0;}
}
@media (prefers-reduced-motion:reduce){.shine-text{animation:none;-webkit-text-fill-color:initial;color:var(--gold-bright);background:none;}}
