/* ============================================================
   工厂模板 · gc- 体系 — 现代轻量风 Mobile-First
   完全独立的 HTML 结构，与 default 主题无任何 CSS 冲突
   ============================================================ */

/* ========== CSS Variables ========== */
:root {
    --pri: #1a56db;
    --pri-50: #eff6ff;
    --pri-100: #dbeafe;
    --pri-200: #bfdbfe;
    --pri-300: #93c5fd;
    --pri-400: #60a5fa;
    --pri-500: #3b82f6;
    --pri-600: #2563eb;
    --pri-700: #1d4ed8;
    --pri-800: #1e40af;
    --pri-900: #1e3a8a;

    --acc: #f97316;
    --acc-50: #fff7ed;
    --acc-100: #ffedd5;
    --acc-200: #fed7aa;
    --acc-500: #f97316;
    --acc-600: #ea580c;

    --gray-50: #f8fafc;
    --gray-100: #f1f5f9;
    --gray-200: #e2e8f0;
    --gray-300: #cbd5e1;
    --gray-400: #94a3b8;
    --gray-500: #64748b;
    --gray-600: #475569;
    --gray-700: #334155;
    --gray-800: #1e293b;
    --gray-900: #0f172a;

    --success: #10b981;
    --warning: #f59e0b;
    --danger: #ef4444;

    --bg: #ffffff;
    --bg-alt: #f8fafc;
    --bg-muted: #f1f5f9;

    --text: #1e293b;
    --text-secondary: #475569;
    --text-muted: #94a3b8;
    --text-inverse: #ffffff;

    --border: #e2e8f0;
    --border-light: #f1f5f9;

    --shadow-sm: 0 2px 4px rgba(0,0,0,.06);
    --shadow: 0 4px 12px rgba(0,0,0,.08);
    --shadow-md: 0 8px 24px rgba(0,0,0,.10);
    --shadow-lg: 0 16px 40px rgba(0,0,0,.12);
    --shadow-xl: 0 24px 60px rgba(0,0,0,.14);

    --r-sm: 8px;
    --r: 14px;
    --r-lg: 20px;
    --r-xl: 32px;
    --r-full: 9999px;

    --max-w: 1280px;
    --header-h: 72px;

    --ease: cubic-bezier(.4,0,.2,1);
    --ease-spring: cubic-bezier(.34,1.56,.64,1);
}

/* ========== Reset ========== */
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}
body{
    font-family:'Inter',-apple-system,BlinkMacSystemFont,'Segoe UI','PingFang SC','Microsoft YaHei',sans-serif;
    color:var(--text);
    background:var(--bg);
    line-height:1.7;
    font-size:clamp(1rem,2vw,1.2rem);
    overflow-x:hidden;
}
img{max-width:100%;height:auto;display:block}
a{color:var(--pri-600);text-decoration:none;transition:color .25s var(--ease)}
a:hover{color:var(--pri-700)}

/* ========== Container ========== */
.container{max-width:var(--max-w);margin:0 auto;padding:0 28px}
.container-sm{max-width:800px;margin:0 auto;padding:0 28px}
.container-narrow{max-width:960px;margin:0 auto;padding:0 28px}

/* ========== Typography ========== */
h1,h2,h3,h4{color:var(--gray-900);line-height:1.25;font-weight:800;letter-spacing:-.03em}
h1{font-size:clamp(2.2rem,6vw,3.8rem);font-weight:900;letter-spacing:-.04em}
h2{font-size:clamp(1.6rem,4vw,2.6rem);font-weight:800;letter-spacing:-.02em}
h3{font-size:clamp(1.2rem,2.5vw,1.6rem);font-weight:700}
h4{font-size:clamp(1rem,2vw,1.3rem);font-weight:700}
p{color:var(--text-secondary);line-height:1.8;font-size:clamp(.95rem,1.8vw,1.1rem)}

/* ========== Section Spacing ========== */
.gc-section{padding:clamp(48px,6vw,96px) 0}
.gc-section-sm{padding:clamp(32px,4vw,64px) 0}
.gc-section-lg{padding:clamp(80px,10vw,144px) 0}
.gc-section-alt{background:var(--bg-alt)}
.gc-section-dark{background:var(--gray-900);color:var(--text-inverse)}
.gc-section-dark h2,.gc-section-dark h3{color:var(--text-inverse)}
.gc-section-dark p{color:var(--gray-400)}

.gc-section-header{
    text-align:center;
    max-width:clamp(400px,50vw,640px);
    margin:0 auto clamp(32px,4vw,56px);
}
.gc-section-header h2{margin-bottom:clamp(10px,1.2vw,16px)}
.gc-section-header p{font-size:clamp(1rem,1.8vw,1.2rem);color:var(--text-secondary)}

/* ========== Buttons ========== */
.btn{
    display:inline-flex;align-items:center;justify-content:center;gap:clamp(6px,.8vw,12px);
    padding:clamp(12px,1.5vw,18px) clamp(24px,3vw,44px);
    border-radius:var(--r);
    font-size:clamp(.95rem,1.6vw,1.1rem);
    font-weight:700;
    cursor:pointer;border:none;
    transition:all .25s var(--ease);
    white-space:nowrap;text-decoration:none;line-height:1.4;
}
.btn:hover{transform:translateY(-2px)}
.btn:active{transform:translateY(0)}
.btn-lg{padding:clamp(16px,2vw,22px) clamp(32px,4vw,52px);font-size:clamp(1rem,1.8vw,1.2rem);border-radius:var(--r-lg)}
.btn-sm{padding:clamp(8px,1vw,12px) clamp(16px,2vw,24px);font-size:clamp(.85rem,1.3vw,.95rem);border-radius:var(--r-sm)}
.btn-block{width:100%}

.btn-primary{background:var(--pri-600);color:#fff;box-shadow:0 4px 14px rgba(37,99,235,.35)}
.btn-primary:hover{background:var(--pri-700);color:#fff;box-shadow:0 8px 28px rgba(37,99,235,.40)}
.btn-accent{background:var(--acc);color:#fff;box-shadow:0 4px 14px rgba(249,115,22,.35)}
.btn-accent:hover{background:var(--acc-600);color:#fff;box-shadow:0 8px 28px rgba(249,115,22,.40)}
.btn-outline{background:transparent;border:2.5px solid rgba(255,255,255,.45);color:#fff}
.btn-outline:hover{background:#fff;color:var(--pri-700);border-color:#fff}
.btn-outline-dark{background:transparent;border:2.5px solid var(--pri-300);color:var(--pri-600)}
.btn-outline-dark:hover{background:var(--pri-600);color:#fff;border-color:var(--pri-600)}
.btn-ghost{background:transparent;color:var(--pri-600);padding:8px 16px}
.btn-ghost:hover{background:var(--pri-50)}

/* ============================================================
   TOPBAR — 顶栏 电话+语言
   ============================================================ */
.gc-topbar{
    background:var(--gray-900);
    color:var(--gray-400);
    font-size:clamp(.8rem,1.2vw,.9rem);
    padding:6px 0;
    display:block;
}
.gc-topbar-inner{
    max-width:var(--max-w);margin:0 auto;padding:0 28px;
    display:flex;align-items:center;justify-content:space-between;
}
.gc-topbar-left{display:flex;align-items:center;gap:clamp(16px,2vw,32px)}
.gc-topbar-left a{color:var(--gray-400);transition:color .2s;display:flex;align-items:center;gap:6px}
.gc-topbar-left a:hover{color:#fff}
.gc-topbar-right{display:flex;align-items:center;gap:12px}
.gc-topbar-right a{color:var(--gray-400);transition:color .2s;font-size:.85rem}
.gc-topbar-right a:hover{color:#fff}
.gc-lang-link{color:var(--gray-400);padding:4px 12px;border:1px solid var(--gray-700);border-radius:var(--r-full);font-size:.8rem;transition:all .2s}
.gc-lang-link:hover{color:#fff;border-color:var(--pri-400);background:rgba(255,255,255,.08)}

/* ============================================================
   HEADER — 主导航
   ============================================================ */
.gc-header{
    position:sticky;top:0;z-index:1000;
    background:rgba(255,255,255,.92);
    backdrop-filter:blur(16px) saturate(180%);
    -webkit-backdrop-filter:blur(16px) saturate(180%);
    border-bottom:1px solid var(--border);
    height:var(--header-h);
    transition:box-shadow .3s var(--ease);
}
.gc-header.scrolled{box-shadow:var(--shadow-md)}
.gc-header-inner{
    max-width:var(--max-w);margin:0 auto;padding:0 28px;
    display:flex;align-items:center;justify-content:space-between;
    height:100%;
}
.gc-logo{display:flex;align-items:center;gap:10px;flex-shrink:0;text-decoration:none}
.gc-logo img{height:40px;width:auto}
.gc-logo-text{font-size:clamp(1.2rem,2vw,1.6rem);font-weight:900;color:var(--pri-700);letter-spacing:-.02em;line-height:1}
.gc-logo-dot{color:var(--acc);font-size:1.1em}

.gc-nav{display:flex;align-items:center;gap:4px}
.gc-nav-list{display:flex;list-style:none;gap:2px}
.gc-nav-list a{
    display:block;padding:10px 18px;border-radius:var(--r);
    color:var(--gray-700);font-size:clamp(.9rem,1.4vw,1rem);
    font-weight:600;transition:all .25s var(--ease);
}
.gc-nav-list a:hover{color:var(--pri-600);background:var(--pri-50)}
.gc-nav-list a.active{color:var(--pri-600);background:var(--pri-100);font-weight:700}

.gc-cta-btn{
    padding:clamp(8px,1vw,12px) clamp(18px,2vw,28px);
    border-radius:var(--r-full);
    background:var(--acc);
    color:#fff;font-weight:700;font-size:clamp(.85rem,1.3vw,.95rem);
    transition:all .25s var(--ease);margin-left:12px;
}
.gc-cta-btn:hover{background:var(--acc-600);color:#fff;transform:translateY(-2px)}

/* Mobile toggle */
.gc-mobile-toggle{
    display:none;flex-direction:column;gap:5px;
    background:none;border:none;cursor:pointer;padding:8px;z-index:1002;
}
.gc-mobile-toggle span{
    display:block;width:28px;height:2.5px;
    background:var(--gray-700);
    border-radius:3px;
    transition:all .3s var(--ease);
    transform-origin:center;
}
.gc-mobile-toggle.active span:nth-child(1){transform:rotate(45deg) translate(5px,5px)}
.gc-mobile-toggle.active span:nth-child(2){opacity:0}
.gc-mobile-toggle.active span:nth-child(3){transform:rotate(-45deg) translate(5px,-5px)}

/* Mobile drawer overlay */
.gc-overlay{
    display:none;
    position:fixed;inset:0;z-index:1050;
    background:rgba(0,0,0,.4);
    backdrop-filter:blur(4px);
    -webkit-backdrop-filter:blur(4px);
}
.gc-overlay.open{display:block}

/* Mobile drawer */
.gc-drawer{
    position:fixed;top:0;right:-320px;width:300px;height:100%;z-index:1060;
    background:var(--bg);
    box-shadow:-8px 0 40px rgba(0,0,0,.15);
    transition:right .35s var(--ease-spring);
    overflow-y:auto;
    padding:clamp(24px,4vw,40px) clamp(20px,3vw,32px);
    display:flex;flex-direction:column;
}
.gc-drawer.open{right:0}
.gc-drawer-header{margin-bottom:28px;padding-bottom:20px;border-bottom:1px solid var(--border)}
.gc-drawer-nav{list-style:none;display:flex;flex-direction:column;gap:4px}
.gc-drawer-nav a{
    display:block;padding:14px 18px;border-radius:var(--r);
    color:var(--gray-700);font-size:1.1rem;font-weight:600;
    transition:all .2s;
}
.gc-drawer-nav a:hover{background:var(--pri-50);color:var(--pri-600)}
.gc-drawer-nav a.active{background:var(--pri-100);color:var(--pri-600)}
.gc-drawer-cta{margin-top:auto;padding-top:24px;border-top:1px solid var(--border)}
.gc-drawer-lang{margin-top:16px}
.gc-drawer-lang a{
    display:flex;align-items:center;justify-content:center;gap:8px;
    padding:12px;border-radius:var(--r);
    border:2px solid var(--border);color:var(--gray-600);
    font-weight:600;font-size:.95rem;
}

/* Scroll progress */
#gc-scroll-progress{
    position:fixed;top:0;left:0;height:3px;
    background:linear-gradient(90deg,var(--pri-500),var(--pri-700));
    z-index:1005;
    width:0;
    transition:width .1s linear;
}

/* ============================================================
   HERO (首页) — 无 clip-path
   ============================================================ */
.gc-hero{
    position:relative;
    background:linear-gradient(160deg,#1e3a8a 0%,#1e40af 40%,#2563eb 100%);
    color:#fff;
    padding:clamp(80px,10vw,160px) 0 clamp(64px,8vw,120px);
    text-align:center;
    overflow:hidden;
}
.gc-hero::before{
    content:'';position:absolute;
    top:-40%;right:-20%;width:600px;height:600px;
    border-radius:50%;
    background:radial-gradient(circle,rgba(96,165,250,.12) 0%,transparent 60%);
    pointer-events:none;
}
.gc-hero::after{
    content:'';position:absolute;
    bottom:-30%;left:-10%;width:400px;height:400px;
    border-radius:50%;
    background:radial-gradient(circle,rgba(249,115,22,.08) 0%,transparent 60%);
    pointer-events:none;
}
.gc-hero .container{position:relative;z-index:2}
.gc-hero h1{
    font-size:clamp(2.2rem,7vw,4.2rem);
    font-weight:900;color:#fff;
    line-height:1.08;
    margin-bottom:clamp(16px,2.5vw,32px);
}
.gc-hero p{
    font-size:clamp(1rem,2.2vw,1.5rem);
    color:rgba(255,255,255,.8);
    max-width:clamp(400px,45vw,600px);
    margin:0 auto clamp(28px,3.5vw,48px);
    line-height:1.7;
}
.gc-hero-badges,
.hero-badges{display:flex;flex-wrap:wrap;justify-content:center;gap:clamp(10px,1.2vw,18px);margin-bottom:clamp(24px,3vw,40px)}
.gc-hero-badge,
.hero-badge{
    display:inline-flex;align-items:center;gap:8px;
    padding:clamp(8px,1vw,14px) clamp(18px,2.5vw,32px);
    border-radius:var(--r);
    background:linear-gradient(135deg,rgba(255,255,255,.18),rgba(255,255,255,.08));
    backdrop-filter:blur(12px);
    border:1px solid rgba(255,255,255,.25);
    color:#fff;font-size:clamp(.9rem,1.4vw,1.1rem);font-weight:700;
    letter-spacing:.3px;
    text-shadow:0 1px 4px rgba(0,0,0,.15);
    transition:all .25s cubic-bezier(.4,0,.2,1);
    text-decoration:none;
    box-shadow:0 2px 12px rgba(0,0,0,.08);
}
.gc-hero-badge:hover,
.hero-badge:hover{
    background:linear-gradient(135deg,rgba(255,255,255,.28),rgba(255,255,255,.15));
    border-color:rgba(255,255,255,.4);
    transform:translateY(-2px);
    box-shadow:0 6px 24px rgba(0,0,0,.15);
    color:#fff;
    text-decoration:none;
}
.gc-hero-badge:active,
.hero-badge:active{
    transform:translateY(0);
}
.hero-line{font-size:clamp(1rem,2vw,1.3rem);line-height:1.6}
.hero-line-group{display:flex;flex-wrap:wrap;justify-content:center;align-items:center;gap:clamp(8px,1.2vw,16px);margin-bottom:clamp(8px,1vw,14px)}
.gc-hero-btns{display:flex;gap:clamp(12px,1.5vw,20px);justify-content:center;flex-wrap:wrap}

/* ============================================================
   STATS BAR — 数据横条
   ============================================================ */
.gc-stats-bar{
    background:var(--bg);
    border-bottom:1px solid var(--border);
    padding:clamp(28px,3vw,48px) 0;
}
.gc-stats-grid{
    display:grid;
    grid-template-columns:repeat(4,1fr);
    gap:clamp(16px,2vw,32px);
    text-align:center;
}
.gc-stat-item strong{
    display:block;
    font-size:clamp(2rem,4vw,3.2rem);
    font-weight:900;
    color:var(--pri-700);
    line-height:1.1;
    margin-bottom:4px;
}
.gc-stat-item span{
    font-size:clamp(.85rem,1.2vw,1rem);
    color:var(--text-muted);
}

/* ============================================================
   FEATURES — Bento 网格 2+2
   ============================================================ */
.gc-features-grid{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:clamp(16px,2vw,24px);
}
.gc-feature-card{
    background:var(--bg);
    border:1px solid var(--border);
    border-radius:var(--r-lg);
    padding:clamp(28px,3.5vw,48px) clamp(24px,3vw,40px);
    transition:all .35s var(--ease);
    position:relative;overflow:hidden;
}
.gc-feature-card::before{
    content:'';position:absolute;top:0;left:0;right:0;height:3px;
    background:linear-gradient(90deg,var(--pri-400),var(--pri-600));
    transform:scaleX(0);transition:transform .35s var(--ease);
}
.gc-feature-card:hover{box-shadow:var(--shadow-xl);transform:translateY(-4px);border-color:var(--pri-200)}
.gc-feature-card:hover::before{transform:scaleX(1)}
.gc-feature-card.wide{grid-column:1/-1}
.gc-feature-icon{
    width:clamp(48px,4vw,64px);height:clamp(48px,4vw,64px);
    background:linear-gradient(135deg,var(--pri-50),var(--pri-100));
    border-radius:var(--r);
    display:flex;align-items:center;justify-content:center;
    color:var(--pri-600);margin-bottom:clamp(16px,2vw,24px);
    transition:all .3s;
}
.gc-feature-card:hover .gc-feature-icon{background:linear-gradient(135deg,var(--pri-600),var(--pri-500));color:#fff}
.gc-feature-card h3{font-size:clamp(1.1rem,2vw,1.5rem);margin-bottom:clamp(8px,1vw,12px)}
.gc-feature-card p{font-size:clamp(.9rem,1.4vw,1.05rem);color:var(--text-secondary);line-height:1.7}

/* ============================================================
   PRODUCTS — 横向滑动卡片
   ============================================================ */
.gc-section-header-link{
    display:flex;align-items:center;justify-content:space-between;
    max-width:var(--max-w);margin:0 auto clamp(28px,3.5vw,44px);padding:0 28px;
}
.gc-section-header-link .gc-section-header{margin:0}
.gc-scroll-wrap{
    overflow-x:auto;
    padding-bottom:12px;
    -ms-overflow-style:none;scrollbar-width:none;
}
.gc-scroll-wrap::-webkit-scrollbar{display:none}
.gc-products-scroll{
    display:flex;gap:clamp(16px,2vw,24px);
    padding:0 28px;
    min-width:min-content;
}
.gc-product-card{
    flex:0 0 clamp(260px,25vw,320px);
    background:var(--bg);
    border:1px solid var(--border);
    border-radius:var(--r-lg);
    overflow:hidden;
    transition:all .35s var(--ease);
    box-shadow:var(--shadow-sm);
}
.gc-product-card:hover{box-shadow:var(--shadow-xl);transform:translateY(-6px);border-color:var(--pri-200)}
.gc-product-img{
    display:block;aspect-ratio:1/1;overflow:hidden;background:var(--gray-100);
    position:relative;
}
.gc-product-img img{width:100%;height:100%;object-fit:cover;transition:transform .5s var(--ease)}
.gc-product-card:hover .gc-product-img img{transform:scale(1.06)}
.gc-product-body{padding:clamp(16px,2vw,24px)}
.gc-product-body h3{font-size:clamp(1rem,1.5vw,1.2rem);margin-bottom:6px}
.gc-product-body h3 a{color:var(--gray-900)}
.gc-product-body h3 a:hover{color:var(--pri-600)}
.gc-product-body .gc-product-cat{
    font-size:clamp(.8rem,1.1vw,.85rem);
    font-weight:700;color:var(--pri-600);
    text-transform:uppercase;letter-spacing:.04em;
    display:block;margin-bottom:4px;
}
.gc-product-body p{font-size:clamp(.85rem,1.3vw,.95rem);color:var(--text-secondary);display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.gc-product-tag{
    position:absolute;top:clamp(10px,1.5vw,16px);left:clamp(10px,1.5vw,16px);
    padding:clamp(4px,.8vw,8px) clamp(10px,1.5vw,18px);
    border-radius:var(--r-full);
    font-size:clamp(.75rem,1.1vw,.85rem);font-weight:700;
    backdrop-filter:blur(6px);
}
.gc-tag-stock{background:rgba(16,185,129,.85);color:#fff}
.gc-tag-custom{background:rgba(245,158,11,.85);color:#fff}

/* Products grid (full page) */
.gc-products-grid{
    display:grid;
    grid-template-columns:repeat(auto-fill,minmax(300px,1fr));
    gap:clamp(20px,2.5vw,32px);
}

/* ============================================================
   TRUST BADGES — 信任认证
   ============================================================ */
.gc-trust{
    background:var(--bg-alt);
    border-top:1px solid var(--border);
    border-bottom:1px solid var(--border);
    padding:clamp(24px,3vw,40px) 0;
}
.gc-trust-inner{
    max-width:var(--max-w);margin:0 auto;padding:0 28px;
    display:flex;align-items:center;justify-content:center;
    gap:clamp(24px,4vw,64px);flex-wrap:wrap;
}
.gc-trust-item{
    display:flex;align-items:center;gap:10px;
    color:var(--gray-500);font-size:clamp(.85rem,1.2vw,.95rem);font-weight:600;
}
.gc-trust-item svg{width:clamp(28px,3vw,36px);height:clamp(28px,3vw,36px);color:var(--pri-400)}

/* ============================================================
   NEWS TIMELINE — 时间线新闻
   ============================================================ */
.gc-news-timeline{
    display:flex;flex-direction:column;gap:0;
    max-width:800px;margin:0 auto;
}
.gc-timeline-item{
    display:grid;
    grid-template-columns:80px 1fr;
    gap:clamp(20px,2.5vw,32px);
    padding:clamp(20px,2.5vw,32px) 0;
    border-bottom:1px solid var(--border);
    transition:all .25s;
}
.gc-timeline-item:last-child{border-bottom:none}
.gc-timeline-item:hover{opacity:.8}
.gc-timeline-date{
    text-align:right;
}
.gc-timeline-date .day{
    display:block;
    font-size:clamp(1.6rem,3vw,2.4rem);
    font-weight:900;color:var(--pri-600);
    line-height:1;
}
.gc-timeline-date .month{
    font-size:clamp(.8rem,1.2vw,.9rem);
    color:var(--text-muted);
    text-transform:uppercase;
    letter-spacing:.05em;
}
.gc-timeline-content h3{font-size:clamp(1rem,1.8vw,1.2rem);margin-bottom:6px}
.gc-timeline-content h3 a{color:var(--gray-900)}
.gc-timeline-content h3 a:hover{color:var(--pri-600)}
.gc-timeline-content p{font-size:clamp(.85rem,1.3vw,.95rem);color:var(--text-secondary);display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}

/* ============================================================
   CTA SPLIT — 分割式 CTA
   ============================================================ */
.gc-cta-split{
    display:grid;
    grid-template-columns:1fr 1fr;
    border-radius:var(--r-xl);
    overflow:hidden;
    background:linear-gradient(160deg,var(--pri-800),var(--pri-600));
    color:#fff;
}
.gc-cta-left{
    padding:clamp(40px,5vw,72px) clamp(36px,4vw,56px);
    display:flex;flex-direction:column;justify-content:center;
}
.gc-cta-left h2{
    font-size:clamp(1.6rem,3.5vw,2.6rem);
    font-weight:900;color:#fff;
    margin-bottom:12px;
}
.gc-cta-left p{color:rgba(255,255,255,.78);font-size:clamp(1rem,1.5vw,1.15rem);margin-bottom:28px}
.gc-cta-right{
    background:rgba(255,255,255,.06);
    padding:clamp(40px,5vw,72px) clamp(36px,4vw,56px);
    display:flex;flex-direction:column;justify-content:center;align-items:flex-start;
    border-left:1px solid rgba(255,255,255,.1);
}
.gc-cta-right .btn{margin-bottom:12px}
.gc-cta-right .hint{font-size:.85rem;color:rgba(255,255,255,.55)}

/* ============================================================
   FILTER — 产品筛选
   ============================================================ */
.gc-filter{margin-bottom:36px}
.gc-filter-row{display:flex;align-items:center;gap:clamp(10px,1.2vw,16px);flex-wrap:wrap;margin-bottom:16px}
.gc-filter-label{
    font-size:clamp(.85rem,1.2vw,.9rem);
    font-weight:700;color:var(--text-secondary);
    text-transform:uppercase;letter-spacing:.04em;
    white-space:nowrap;
}
.gc-filter-tabs{display:flex;flex-wrap:wrap;gap:2px}
.gc-filter-tab{
    padding:clamp(8px,1vw,12px) clamp(16px,2vw,24px);
    color:var(--text-secondary);font-size:clamp(.85rem,1.3vw,.95rem);
    font-weight:600;cursor:pointer;
    border-bottom:2.5px solid transparent;
    transition:all .25s var(--ease);
    text-decoration:none;
}
.gc-filter-tab:hover{color:var(--pri-600);border-bottom-color:var(--pri-300)}
.gc-filter-tab.active{color:var(--pri-600);border-bottom-color:var(--pri-600)}
.gc-filter-search{margin-left:auto;display:flex}
.gc-filter-search input{
    padding:clamp(8px,1vw,12px) clamp(14px,1.5vw,20px);
    border:2px solid var(--border);border-right:none;
    border-radius:var(--r) 0 0 var(--r);
    font-size:clamp(.85rem,1.2vw,.95rem);outline:none;
    min-width:200px;
}
.gc-filter-search input:focus{border-color:var(--pri-400)}
.gc-filter-search button{
    padding:clamp(8px,1vw,12px) clamp(14px,1.5vw,20px);
    background:var(--pri-600);color:#fff;
    border:none;border-radius:0 var(--r) var(--r) 0;
    cursor:pointer;font-size:clamp(.85rem,1.2vw,.95rem);font-weight:600;
}
.gc-filter-search button:hover{background:var(--pri-700)}
.gc-filter-count{font-size:.9rem;color:var(--text-muted);margin-bottom:24px}

/* Pagination */
.gc-pagination{
    display:flex;align-items:center;justify-content:center;gap:8px;
    margin-top:48px;padding-top:28px;border-top:2px solid var(--border);
}
.gc-page-btn,.gc-page-num{
    display:inline-flex;align-items:center;justify-content:center;
    min-width:42px;height:42px;padding:0 16px;
    border-radius:var(--r);font-size:.9rem;font-weight:600;
    transition:all .25s var(--ease);text-decoration:none;
    border:2px solid var(--border);background:var(--bg);color:var(--text-secondary);
}
.gc-page-btn:hover,.gc-page-num:hover{border-color:var(--pri-400);color:var(--pri-600);background:var(--pri-50)}
.gc-page-num.active{background:var(--pri-600);color:#fff;border-color:var(--pri-600)}
.gc-page-dots{padding:0 4px;color:var(--text-muted);font-size:.9rem}

/* ============================================================
   FACTORY PAGE
   ============================================================ */
.gc-factory-hero{
    background:linear-gradient(160deg,var(--gray-900),var(--gray-800) 40%,var(--pri-900) 100%);
    color:#fff;padding:clamp(64px,8vw,120px) 0 clamp(48px,6vw,80px);
    text-align:center;overflow:hidden;position:relative;
}
.gc-factory-hero::before{
    content:'';position:absolute;top:-20%;right:-10%;width:400px;height:400px;
    border-radius:50%;
    background:radial-gradient(circle,rgba(249,115,22,.08) 0%,transparent 60%);
}
.gc-factory-hero .container{position:relative;z-index:2}
.gc-factory-hero h1{font-size:clamp(2rem,5vw,3.6rem);color:#fff;margin-bottom:16px}
.gc-factory-hero p{color:rgba(255,255,255,.7);max-width:560px;margin:0 auto 32px}
.gc-factory-stats{display:flex;justify-content:center;gap:clamp(24px,4vw,64px);flex-wrap:wrap;margin-top:36px;padding-top:28px;border-top:1px solid rgba(255,255,255,.1)}
.gc-factory-stat strong{display:block;font-size:clamp(1.8rem,4vw,3rem);font-weight:900;color:#fff}
.gc-factory-stat span{font-size:clamp(.8rem,1.2vw,.95rem);color:rgba(255,255,255,.5)}

.gc-cap-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:clamp(16px,2vw,28px)}
.gc-cap-card{
    background:var(--bg);border:1px solid var(--border);
    border-radius:var(--r-lg);
    padding:clamp(28px,3vw,44px) clamp(24px,2.5vw,36px);
    transition:all .35s var(--ease);text-align:center;
}
.gc-cap-card:hover{box-shadow:var(--shadow-xl);transform:translateY(-4px);border-color:var(--pri-200)}
.gc-cap-icon{
    width:clamp(56px,5vw,72px);height:clamp(56px,5vw,72px);
    margin:0 auto clamp(16px,2vw,28px);
    background:linear-gradient(135deg,var(--pri-50),var(--pri-100));
    border-radius:var(--r);
    display:flex;align-items:center;justify-content:center;
    color:var(--pri-600);transition:all .3s;
}
.gc-cap-card:hover .gc-cap-icon{background:linear-gradient(135deg,var(--pri-600),var(--pri-500));color:#fff}
.gc-cap-card h3{font-size:clamp(1rem,1.8vw,1.3rem);margin-bottom:8px}
.gc-cap-card p{font-size:clamp(.85rem,1.3vw,.95rem);color:var(--text-secondary)}

.gc-gallery-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:clamp(12px,1.5vw,20px)}
.gc-gallery-item{
    border-radius:var(--r-lg);overflow:hidden;
    aspect-ratio:4/3;background:var(--gray-100);
}
.gc-gallery-item img{width:100%;height:100%;object-fit:cover;transition:transform .5s}
.gc-gallery-item:hover img{transform:scale(1.07)}

.gc-equip-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:10px}
.gc-equip-item{
    display:flex;align-items:center;gap:12px;
    padding:clamp(14px,1.5vw,20px) clamp(16px,2vw,24px);
    background:var(--bg);border:1.5px solid var(--border);
    border-radius:var(--r);font-size:clamp(.85rem,1.3vw,.95rem);
    transition:all .25s;
}
.gc-equip-item:hover{border-color:var(--pri-300);box-shadow:var(--shadow-md)}
.gc-equip-check{color:var(--acc);font-weight:700;flex-shrink:0;font-size:1.1rem}

.gc-cert-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:clamp(16px,2vw,24px)}
.gc-cert-card{
    background:var(--bg);border:1px solid var(--border);
    border-radius:var(--r-lg);overflow:hidden;text-align:center;
    transition:all .35s;
}
.gc-cert-card:hover{box-shadow:var(--shadow-lg);transform:translateY(-4px)}
.gc-cert-img{aspect-ratio:1.2;display:flex;align-items:center;justify-content:center;background:var(--gray-50);padding:24px}
.gc-cert-img img{max-height:100%;object-fit:contain}
.gc-cert-card p{padding:12px 16px 16px;font-size:.9rem;color:var(--text-secondary);font-weight:600}

.gc-factory-cta{
    background:linear-gradient(160deg,var(--gray-900),var(--pri-900));
    border-radius:var(--r-xl);padding:clamp(48px,6vw,80px);
    text-align:center;position:relative;overflow:hidden;
}
.gc-factory-cta h2{color:#fff;font-size:clamp(1.5rem,3.5vw,2.4rem);margin-bottom:12px}
.gc-factory-cta p{color:rgba(255,255,255,.7);margin-bottom:28px}
.gc-factory-cta-btns{display:flex;gap:16px;justify-content:center;flex-wrap:wrap}

/* ============================================================
   ABOUT PAGE
   ============================================================ */
.gc-about-hero{
    background:linear-gradient(160deg,var(--pri-900),var(--pri-700));
    color:#fff;padding:clamp(48px,6vw,80px) 0 clamp(56px,7vw,96px);
    text-align:center;
}
.gc-about-hero h1{color:#fff;font-size:clamp(2rem,5vw,3.6rem);margin-bottom:12px}
.gc-about-hero p{color:rgba(255,255,255,.75);max-width:560px;margin:0 auto}

.gc-story{display:grid;grid-template-columns:1fr 1fr;gap:clamp(32px,5vw,64px);align-items:center}
.gc-story-text h2{font-size:clamp(1.5rem,3.5vw,2.4rem);margin-bottom:20px}
.gc-story-text p{font-size:clamp(.95rem,1.5vw,1.1rem);line-height:1.8;margin-bottom:28px}
.gc-story-image{
    border-radius:var(--r-xl);overflow:hidden;
    aspect-ratio:4/3;background:var(--gray-100);
}
.gc-story-image img{width:100%;height:100%;object-fit:cover}
.gc-story-image .gc-placeholder{
    width:100%;height:100%;display:flex;
    align-items:center;justify-content:center;
    color:var(--gray-400);border:2px dashed var(--gray-300);
    border-radius:var(--r-xl);font-size:1rem;
}

.gc-values-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:clamp(16px,2vw,28px)}
.gc-value-card{
    background:var(--bg);border:1px solid var(--border);
    border-radius:var(--r-lg);padding:clamp(28px,3vw,40px);
    text-align:center;transition:all .35s;
}
.gc-value-card:hover{box-shadow:var(--shadow-lg);transform:translateY(-4px);border-color:var(--pri-200)}
.gc-value-icon{font-size:2.2rem;margin-bottom:16px}
.gc-value-card h3{font-size:clamp(1rem,1.8vw,1.3rem);margin-bottom:8px}
.gc-value-card p{font-size:clamp(.85rem,1.3vw,.95rem);color:var(--text-secondary)}

/* ============================================================
   CONTACT PAGE
   ============================================================ */
.gc-contact-hero{
    background:linear-gradient(160deg,var(--pri-800),var(--pri-600));
    color:#fff;padding:clamp(48px,5vw,72px) 0;text-align:center;
}
.gc-contact-hero h1{color:#fff;font-size:clamp(2rem,4.5vw,3.2rem);margin-bottom:10px}
.gc-contact-hero p{color:rgba(255,255,255,.75)}

.gc-contact-layout{display:grid;grid-template-columns:1fr 1.5fr;gap:clamp(32px,5vw,64px)}
.gc-contact-info-list{display:flex;flex-direction:column;gap:clamp(20px,2.5vw,32px)}
.gc-contact-item{display:flex;gap:16px;align-items:flex-start}
.gc-contact-icon{
    width:clamp(48px,4vw,56px);height:clamp(48px,4vw,56px);
    background:linear-gradient(135deg,var(--pri-50),var(--pri-100));
    border-radius:var(--r);display:flex;align-items:center;
    justify-content:center;flex-shrink:0;
    color:var(--pri-600);font-size:1.4rem;
}
.gc-contact-item h4{font-size:clamp(.85rem,1.2vw,.9rem);color:var(--text-muted);margin-bottom:4px}
.gc-contact-item p{font-size:clamp(.95rem,1.5vw,1.1rem);color:var(--text);font-weight:600}

.gc-form-group{margin-bottom:20px}
.gc-form-group label{display:block;font-size:.9rem;font-weight:700;margin-bottom:6px;color:var(--text)}
.gc-form-group label .required{color:var(--pri-500)}
.gc-form-group input,.gc-form-group textarea{
    width:100%;
    padding:clamp(12px,1.5vw,16px) clamp(14px,1.8vw,20px);
    border:2px solid var(--border);border-radius:var(--r);
    font-size:clamp(.9rem,1.4vw,1rem);
    outline:none;transition:all .25s var(--ease);
    font-family:inherit;background:var(--bg);color:var(--text);
}
.gc-form-group input:focus,.gc-form-group textarea:focus{border-color:var(--pri-400);box-shadow:0 0 0 4px rgba(59,130,246,.12)}
.gc-form-group textarea{resize:vertical;min-height:140px}
.gc-form-row{display:grid;grid-template-columns:1fr 1fr;gap:20px}
.gc-form-success{
    background:linear-gradient(135deg,#ecfdf5,#d1fae5);
    border:2px solid #a7f3d0;border-radius:var(--r);
    padding:clamp(24px,3vw,36px);text-align:center;
    color:#065f46;font-size:1.05rem;
}
.gc-social-strip{display:flex;gap:clamp(12px,1.5vw,20px);flex-wrap:wrap;margin-top:24px;padding-top:20px;border-top:1px solid var(--border)}
.gc-social-item{text-align:center}
.gc-social-item img{
    width:clamp(56px,6vw,72px);height:clamp(56px,6vw,72px);
    border-radius:var(--r-sm);border:1px solid var(--border);
    object-fit:contain;margin-bottom:6px;
}
.gc-social-item span{display:block;font-size:.8rem;color:var(--text-muted)}

/* ============================================================
   FAQ PAGE
   ============================================================ */
.gc-faq-tabs{display:flex;gap:4px;flex-wrap:wrap;margin-bottom:32px;justify-content:center}
.gc-faq-tab{
    padding:clamp(8px,1vw,12px) clamp(18px,2vw,28px);
    border-radius:var(--r-full);border:2px solid var(--border);
    background:var(--bg);color:var(--text-secondary);
    font-weight:600;font-size:clamp(.85rem,1.3vw,.95rem);
    cursor:pointer;transition:all .25s;text-decoration:none;
}
.gc-faq-tab:hover{border-color:var(--pri-400);color:var(--pri-600)}
.gc-faq-tab.active{background:var(--pri-600);color:#fff;border-color:var(--pri-600)}

.gc-faq-list{display:flex;flex-direction:column;gap:10px;max-width:760px;margin:0 auto}
.gc-faq-item{
    background:var(--bg);border:1.5px solid var(--border);
    border-radius:var(--r);overflow:hidden;
    transition:all .25s;
}
.gc-faq-item:hover{border-color:var(--pri-200)}
.gc-faq-q{
    padding:clamp(18px,2vw,28px) clamp(20px,2.5vw,32px);
    cursor:pointer;display:flex;justify-content:space-between;align-items:center;
    font-size:clamp(.95rem,1.5vw,1.1rem);font-weight:700;
    user-select:none;gap:16px;
}
.gc-faq-q:hover{background:var(--gray-50)}
.gc-faq-arrow{
    font-size:.75rem;transition:transform .3s var(--ease);
    color:var(--gray-400);flex-shrink:0;
}
.gc-faq-item.open .gc-faq-arrow{transform:rotate(180deg);color:var(--pri-500)}
.gc-faq-a{
    padding:0 clamp(20px,2.5vw,32px) clamp(20px,2.5vw,28px);
    font-size:clamp(.9rem,1.3vw,1rem);
    color:var(--text-secondary);line-height:1.8;
    display:none;
}
.gc-faq-item.open .gc-faq-a{display:block}

/* ============================================================
   DOWNLOADS PAGE
   ============================================================ */
.gc-dl-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(360px,1fr));gap:clamp(14px,1.5vw,20px)}
.gc-dl-card{
    display:flex;align-items:center;gap:clamp(16px,2vw,24px);
    background:var(--bg);border:1.5px solid var(--border);
    border-radius:var(--r);padding:clamp(18px,2vw,28px);
    transition:all .3s;
}
.gc-dl-card:hover{box-shadow:var(--shadow-lg);transform:translateY(-3px);border-color:var(--pri-200)}
.gc-dl-icon{font-size:2.2rem;flex-shrink:0}
.gc-dl-info{flex:1;min-width:0}
.gc-dl-info h4{font-size:clamp(.95rem,1.4vw,1.1rem);margin-bottom:4px}
.gc-dl-info p{font-size:clamp(.8rem,1.2vw,.9rem);color:var(--text-secondary)}
.gc-dl-meta{font-size:.8rem;color:var(--text-muted);margin-top:4px}

/* ============================================================
   PRODUCT DETAIL
   ============================================================ */
.gc-detail-layout{display:grid;grid-template-columns:1fr 1fr;gap:clamp(28px,4vw,56px);align-items:start}
.gc-detail-gallery{position:sticky;top:calc(var(--header-h) + 24px)}
.gc-detail-main-img{
    border-radius:var(--r-lg);overflow:hidden;
    background:var(--gray-100);aspect-ratio:1;
}
.gc-detail-main-img img{width:100%;height:100%;object-fit:contain}
.gc-detail-thumbs{display:flex;gap:10px;margin-top:12px}
.gc-detail-thumbs img{
    width:clamp(60px,6vw,80px);height:clamp(60px,6vw,80px);
    border-radius:var(--r-sm);border:2px solid var(--border);
    object-fit:cover;cursor:pointer;transition:all .2s;
}
.gc-detail-thumbs img:hover,.gc-detail-thumbs img.active{border-color:var(--pri-500)}
.gc-detail-info h1{font-size:clamp(1.6rem,3.5vw,2.4rem);margin-bottom:12px}
.gc-detail-meta{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin-bottom:16px}
.gc-detail-tag{
    font-size:.85rem;font-weight:700;color:var(--pri-600);
    background:var(--pri-50);padding:4px 14px;
    border-radius:var(--r-full);
}
.gc-detail-desc{font-size:clamp(.95rem,1.4vw,1.05rem);color:var(--text-secondary);line-height:1.8;margin-bottom:24px}
.gc-detail-highlight{
    background:linear-gradient(135deg,var(--pri-50),var(--acc-50));
    border:2px solid var(--pri-100);border-radius:var(--r);
    padding:clamp(16px,2vw,24px);margin-bottom:24px;
    font-size:clamp(.9rem,1.3vw,1rem);line-height:1.7;
}
.gc-detail-specs{margin-bottom:24px}
.gc-detail-specs h3{font-size:clamp(1rem,1.8vw,1.3rem);margin-bottom:14px}
.gc-detail-specs table{width:100%;border-collapse:collapse}
.gc-detail-specs th,.gc-detail-specs td{
    padding:clamp(10px,1.2vw,14px) clamp(14px,1.5vw,20px);
    text-align:left;font-size:clamp(.85rem,1.2vw,.95rem);
}
.gc-detail-specs th{width:120px;color:var(--text-secondary);font-weight:700;background:var(--gray-50)}
.gc-detail-specs td{color:var(--text)}
.gc-detail-specs tr+tr th,.gc-detail-specs tr+tr td{border-top:4px solid var(--bg)}
.gc-detail-inquiry{
    background:linear-gradient(135deg,var(--acc-50),var(--acc-100));
    border:2px solid rgba(245,158,11,.2);border-radius:var(--r-lg);
    padding:clamp(24px,3vw,36px);text-align:center;
}
.gc-detail-inquiry h3{font-size:clamp(1.1rem,2vw,1.5rem);margin-bottom:8px;color:var(--acc-600)}
.gc-detail-inquiry p{font-size:.95rem;margin-bottom:20px}
.gc-detail-nav{display:flex;justify-content:space-between;margin-top:48px;padding-top:28px;border-top:2px solid var(--border);gap:16px;flex-wrap:wrap}
.gc-detail-nav a{font-size:clamp(.85rem,1.3vw,.95rem);color:var(--text-secondary)}
.gc-detail-nav a:hover{color:var(--pri-600)}

/* ============================================================
   ARTICLE (news detail)
   ============================================================ */
.gc-article-header{
    background:var(--bg-alt);
    padding:clamp(32px,4vw,56px) 0;
    text-align:center;
    border-bottom:1px solid var(--border);
}
.gc-article-header h1{font-size:clamp(1.6rem,4vw,2.8rem);max-width:760px;margin:0 auto 16px}
.gc-article-meta{font-size:.9rem;color:var(--text-muted)}
.gc-article-body{max-width:760px;margin:0 auto;padding:clamp(32px,4vw,56px) 0;line-height:2}
.gc-article-body .article-cover{margin-bottom:28px;border-radius:var(--r-lg);overflow:hidden}
.gc-article-body .article-cover img{width:100%}
.gc-article-body .article-body{font-size:clamp(.95rem,1.5vw,1.1rem);color:var(--text)}
.gc-article-body .article-images{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin:28px 0}
.gc-article-images img{border-radius:var(--r)}
.gc-article-nav{
    display:flex;justify-content:space-between;gap:16px;
    padding:28px 0;margin-top:32px;border-top:2px solid var(--border);flex-wrap:wrap;
}
.gc-article-nav a{font-size:.95rem;color:var(--text-secondary)}
.gc-article-nav a:hover{color:var(--pri-600)}

/* ============================================================
   NEWS LIST
   ============================================================ */
.gc-news-list{display:flex;flex-direction:column;gap:0;max-width:800px;margin:0 auto}
.gc-news-row{
    display:grid;
    grid-template-columns:80px 1fr auto;
    gap:clamp(16px,2vw,28px);
    padding:clamp(18px,2vw,28px) 0;
    border-bottom:1px solid var(--border);
    align-items:center;
}
.gc-news-row:last-child{border-bottom:none}
.gc-news-row-date{text-align:right}
.gc-news-row-date .d{
    display:block;font-size:clamp(1.3rem,2.5vw,1.8rem);
    font-weight:900;color:var(--pri-600);line-height:1;
}
.gc-news-row-date .m{font-size:.8rem;color:var(--text-muted)}
.gc-news-row-title h3{font-size:clamp(.95rem,1.5vw,1.15rem);margin-bottom:4px}
.gc-news-row-title h3 a{color:var(--gray-900)}
.gc-news-row-title h3 a:hover{color:var(--pri-600)}
.gc-news-row-title p{font-size:clamp(.8rem,1.2vw,.9rem);color:var(--text-secondary);display:-webkit-box;-webkit-line-clamp:1;-webkit-box-orient:vertical;overflow:hidden}

/* ============================================================
   FLOATING BAR (mobile sticky contact)
   ============================================================ */
.gc-floating-bar{
    display:none;
    position:fixed;bottom:0;left:0;right:0;z-index:990;
    background:rgba(255,255,255,.95);
    backdrop-filter:blur(12px);
    -webkit-backdrop-filter:blur(12px);
    border-top:1px solid var(--border);
    padding:clamp(8px,1.2vw,12px) 16px;
    box-shadow:0 -4px 20px rgba(0,0,0,.08);
}
.gc-floating-inner{display:flex;gap:10px;align-items:center;max-width:var(--max-w);margin:0 auto}
.gc-floating-inner .btn{flex:1;padding:12px 16px;font-size:.9rem}

/* ============================================================
   PAGE HERO (internal pages) — 简洁
   ============================================================ */
.gc-page-hero-sm{
    background:linear-gradient(160deg,var(--pri-900),var(--pri-700));
    color:#fff;padding:clamp(36px,4vw,56px) 0 clamp(40px,5vw,64px);
    text-align:center;
}
.gc-page-hero-sm h1{color:#fff;font-size:clamp(1.6rem,4vw,2.8rem);margin-bottom:8px}
.gc-page-hero-sm p{color:rgba(255,255,255,.7);max-width:520px;margin:0 auto}
.gc-page-hero-sm .breadcrumb{padding-top:12px}
.gc-page-hero-sm .breadcrumb ol{list-style:none;display:flex;gap:6px;align-items:center;justify-content:center;font-size:.85rem;flex-wrap:wrap}
.gc-page-hero-sm .breadcrumb li{color:rgba(255,255,255,.5)}
.gc-page-hero-sm .breadcrumb li:not(:last-child)::after{content:'/';margin-left:6px;color:rgba(255,255,255,.2)}
.gc-page-hero-sm .breadcrumb a{color:rgba(255,255,255,.8)}
.gc-page-hero-sm .breadcrumb a:hover{color:#fff}

/* ============================================================
   FOOTER
   ============================================================ */
.gc-footer{
    background:var(--gray-900);
    color:var(--gray-400);
    margin-bottom:0;
}
.gc-footer-cta-bar{
    background:linear-gradient(90deg,var(--pri-800),var(--pri-600));
    padding:clamp(24px,3vw,40px) 28px;
    text-align:center;
}
.gc-footer-cta-inner{
    max-width:var(--max-w);margin:0 auto;
    display:flex;align-items:center;justify-content:center;
    gap:clamp(16px,2vw,32px);flex-wrap:wrap;
}
.gc-footer-cta-bar strong{
    font-size:clamp(1.2rem,2.5vw,2rem);
    color:#fff;font-weight:900;
}
.gc-footer-cta-bar span{
    color:rgba(255,255,255,.6);
    font-size:clamp(.85rem,1.2vw,.95rem);
}

.gc-footer-grid{
    display:grid;
    grid-template-columns:2fr 1fr 1.2fr;
    gap:clamp(32px,4vw,56px);
    max-width:var(--max-w);margin:0 auto;
    padding:clamp(48px,5vw,72px) 28px;
}
.gc-footer-col h4{
    color:#fff;font-size:clamp(1rem,1.5vw,1.15rem);
    font-weight:700;margin-bottom:clamp(16px,2vw,24px);
}
.gc-footer-col p,.gc-footer-col li{font-size:clamp(.85rem,1.2vw,.95rem);line-height:1.8;margin-bottom:4px}
.gc-footer-col a{color:var(--gray-400);transition:color .2s;display:inline-block;padding:3px 0}
.gc-footer-col a:hover{color:#fff}
.gc-footer-col ul{list-style:none}
.gc-footer-contact li{display:flex;gap:8px;align-items:flex-start}
.gc-footer-contact li::before{content:'\203A';color:var(--pri-400);font-weight:700;flex-shrink:0}

.gc-footer-social{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-top:16px}
.gc-footer-social-item{text-align:center}
.gc-footer-social-item img{
    width:clamp(60px,6vw,80px);height:clamp(60px,6vw,80px);
    border-radius:var(--r-sm);border:1px solid var(--gray-700);
    object-fit:contain;background:#fff;margin:0 auto 6px;
}
.gc-footer-social-item span{font-size:.75rem;color:var(--gray-500)}

.gc-footer-bottom{
    border-top:1px solid var(--gray-800);
    padding:clamp(16px,2vw,24px) 28px;
    text-align:center;font-size:.85rem;color:var(--gray-500);
    max-width:var(--max-w);margin:0 auto;
    display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:12px;
}
.gc-back-top{
    display:inline-flex;align-items:center;gap:6px;
    color:var(--gray-500);font-size:.85rem;
    cursor:pointer;transition:color .2s;
}
.gc-back-top:hover{color:#fff}

/* ============================================================
   EMPTY STATE
   ============================================================ */
.empty-state{text-align:center;padding:clamp(48px,6vw,80px) 0;color:var(--text-muted)}
.empty-state p{font-size:clamp(1rem,1.8vw,1.15rem)}

/* ============================================================
   ANIMATIONS
   ============================================================ */
@keyframes fadeInUp{
    from{opacity:0;transform:translateY(24px)}
    to{opacity:1;transform:translateY(0)}
}
.gc-animate-in{animation:fadeInUp .6s var(--ease) both}

/* ============================================================
   RESPONSIVE
   ============================================================ */

/* Tablet landscape */
@media (max-width:1100px){
    .gc-cap-grid{grid-template-columns:repeat(2,1fr)}
    .gc-values-grid{grid-template-columns:repeat(2,1fr)}
    .gc-contact-layout{grid-template-columns:1fr;gap:36px}
    .gc-story{grid-template-columns:1fr;gap:32px}
    .gc-cta-split{grid-template-columns:1fr}
    .gc-cta-right{border-left:none;border-top:1px solid rgba(255,255,255,.1)}
    .gc-detail-layout{grid-template-columns:1fr;gap:32px}
    .gc-detail-gallery{position:static}
}

/* Tablet portrait */
@media (max-width:900px){
    .gc-topbar{display:none !important}
    .gc-header-inner{padding:0 20px}
    .gc-mobile-toggle{display:flex}
    .gc-nav-list{display:none}

    .gc-stats-grid{grid-template-columns:repeat(2,1fr);gap:20px}
    .gc-features-grid{grid-template-columns:1fr}
    .gc-feature-card.wide{grid-column:1}
    .gc-gallery-grid{grid-template-columns:repeat(2,1fr)}
    .gc-dl-grid{grid-template-columns:1fr}
    .gc-news-row{grid-template-columns:70px 1fr}
    .gc-news-row .gc-news-row-arrow{display:none}
    .gc-pagination{gap:4px;flex-wrap:wrap}
    .gc-filter-search{width:100%}
    .gc-filter-search input{flex:1;min-width:0}
    .gc-filter-row{flex-direction:column;align-items:flex-start;gap:10px}
    .gc-footer-grid{grid-template-columns:1fr 1fr}
    .gc-footer-cta-bar strong{font-size:1.3rem}
    .gc-news-list{max-width:100%}
}

/* Phone */
@media (max-width:600px){
    :root{--header-h:64px}
    .container{padding:0 16px}
    body{font-size:.9rem;line-height:1.6}

    h1{font-size:clamp(1.6rem,6vw,2rem)!important}
    h2{font-size:clamp(1.3rem,5vw,1.6rem)!important}
    h3{font-size:clamp(1rem,4vw,1.2rem)!important}

    .gc-section{padding:32px 0}
    .gc-section-header{margin-bottom:24px}

    /* Mobile-only elements */
    .gc-floating-bar{display:block}
    .gc-footer{margin-bottom:0}
    .gc-topbar{display:none !important}
    .gc-header-inner{padding:0 16px}

    /* Hero mobile */
    .gc-hero{padding:48px 0 36px}
    .gc-hero h1{font-size:clamp(1.6rem,6vw,2.2rem)!important;margin-bottom:10px}
    .gc-hero p{font-size:.95rem;margin-bottom:20px}
    .gc-hero-badges{display:none}
    .gc-hero-btns{flex-direction:column;align-items:center}
    .gc-hero-btns .btn{width:100%}

    .gc-stats-grid{gap:12px}
    .gc-stat-item strong{font-size:1.6rem}
    .gc-stat-item span{font-size:.8rem}

    /* Features */
    .gc-feature-card{padding:20px 18px}
    .gc-feature-card h3{font-size:1.05rem}
    .gc-feature-card p{font-size:.85rem}

    /* Products scroll */
    .gc-products-scroll{gap:12px;padding:0 16px}
    .gc-product-card{flex:0 0 220px}

    /* Products grid */
    .gc-products-grid{grid-template-columns:1fr;gap:14px}

    /* Timeline */
    .gc-timeline-item{grid-template-columns:60px 1fr;gap:14px;padding:16px 0}
    .gc-timeline-date .day{font-size:1.3rem}
    .gc-timeline-content h3{font-size:.95rem}

    /* CTA split */
    .gc-cta-split{border-radius:var(--r-lg)}
    .gc-cta-left,.gc-cta-right{padding:28px 24px}

    /* Page pages */
    .gc-page-hero-sm{padding:28px 0 36px}
    .gc-page-hero-sm h1{font-size:clamp(1.3rem,5vw,1.6rem)!important}

    /* Filter */
    .gc-filter-tab{padding:6px 14px;font-size:.8rem}
    .gc-filter-search input{font-size:.85rem;padding:8px 12px}
    .gc-filter-search button{font-size:.85rem;padding:8px 12px}
    .gc-filter-count{font-size:.8rem}
    .gc-page-btn,.gc-page-num{min-width:36px;height:36px;font-size:.8rem}

    /* Factory */
    .gc-factory-hero{padding:40px 0 32px}
    .gc-factory-hero h1{font-size:clamp(1.3rem,5vw,1.6rem)!important}
    .gc-factory-stats{gap:16px;margin-top:20px;padding-top:16px}
    .gc-factory-stat strong{font-size:1.5rem}
    .gc-cap-grid{grid-template-columns:1fr;gap:14px}
    .gc-cap-card{padding:20px}
    .gc-cap-card h3{font-size:1rem}
    .gc-gallery-grid{grid-template-columns:1fr 1fr;gap:8px}
    .gc-equip-grid{grid-template-columns:1fr}
    .gc-cert-grid{grid-template-columns:repeat(2,1fr);gap:10px}
    .gc-factory-cta{padding:28px 20px}

    /* About */
    .gc-about-hero{padding:32px 0 40px}
    .gc-about-hero h1{font-size:clamp(1.3rem,5vw,1.6rem)!important}
    .gc-values-grid{grid-template-columns:1fr;gap:12px}
    .gc-value-card{padding:20px}

    /* Contact */
    .gc-contact-hero{padding:32px 0}
    .gc-contact-hero h1{font-size:clamp(1.3rem,5vw,1.6rem)!important}
    .gc-form-row{grid-template-columns:1fr;gap:0}
    .gc-contact-item{gap:12px}

    /* FAQ */
    .gc-faq-tab{padding:6px 16px;font-size:.8rem}
    .gc-faq-q{padding:16px;font-size:.9rem}
    .gc-faq-a{padding:0 16px 16px}

    /* Downloads */
    .gc-dl-grid{grid-template-columns:1fr}
    .gc-dl-card{padding:16px}
    .gc-dl-card h4{font-size:.95rem}

    /* Detail */
    .gc-detail-layout{gap:20px}
    .gc-detail-info h1{font-size:1.3rem}
    .gc-detail-specs th,.gc-detail-specs td{padding:8px 10px;font-size:.8rem}
    .gc-detail-specs th{width:90px}
    .gc-detail-nav{flex-direction:column;gap:10px}

    /* Article */
    .gc-article-header{padding:24px 0 32px}
    .gc-article-header h1{font-size:clamp(1.2rem,5vw,1.5rem)!important;}
    .gc-article-body{padding:24px 0}
    .gc-article-nav{flex-direction:column;gap:10px}
    .gc-news-row{grid-template-columns:50px 1fr;gap:12px;padding:14px 0}
    .gc-news-row-date .d{font-size:1.1rem}

    /* Footer */
    .gc-footer-grid{grid-template-columns:1fr;gap:24px;padding:32px 16px}
    .gc-footer-cta-bar{padding:20px 16px}
    .gc-footer-cta-inner{flex-direction:column;gap:12px}
    .gc-footer-bottom{flex-direction:column;text-align:center}
    .gc-footer-social{grid-template-columns:repeat(3,1fr);max-width:240px}

    /* Mobile drawer */
    .gc-drawer{width:280px;right:-280px}
    .gc-drawer-nav a{font-size:1rem;padding:12px 16px}

    /* Buttons */
    .btn{padding:11px 18px;font-size:.9rem;min-height:44px}
    .btn-lg{padding:13px 24px;font-size:.95rem}
    .gc-cta-btn{padding:8px 16px;font-size:.8rem}
    .gc-logo-text{font-size:1.1rem}
    .gc-logo img{height:32px}
}