/* ============================================================
   GOHOMIN - 企业官网主样式表
   品牌色: #001799
   字体: Google Fonts (Inter, Noto Sans SC)
   ============================================================ */

/* Google Fonts */
@import url('https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700&family=Noto+Sans+SC:wght@300;400;500;600;700&display=swap');

/* ============ CSS Variables ============ */
:root {
    --brand: #001799;
    --brand-light: #0022bb;
    --brand-dark: #001155;
    --text: #1a1a2e;
    --text-light: #666;
    --text-muted: #999;
    --bg: #fff;
    --bg-light: #f8f9fb;
    --bg-dark: #0a0a1a;
    --border: #e8e8f0;
    --header-h: 40px;
    --max-w: 1280px;
    --shadow: 0 4px 24px rgba(0,0,0,0.08);
    --shadow-lg: 0 8px 40px rgba(0,0,0,0.12);
    --radius: 8px;
    --transition: 0.3s ease;
    --font: 'Inter', 'Noto Sans SC', -apple-system, BlinkMacSystemFont, sans-serif;
}

/* ============ Reset ============ */
*, *::before, *::after { margin:0; padding:0; box-sizing:border-box; }
html { scroll-behavior:smooth; font-size:16px; height:100%; }
body { font-family:var(--font); color:var(--text); line-height:1.6; background:var(--bg); -webkit-font-smoothing:antialiased; display:flex; flex-direction:column; min-height:100vh; }
a { text-decoration:none; color:inherit; }
ul,ol { list-style:none; }
img { max-width:100%; height:auto; display:block; }
button, input { font-family:var(--font); border:none; outline:none; background:none; }

/* ============ Utility ============ */
.wrap { max-width:var(--max-w); margin:0 auto; padding:0 24px; }
.d-flex { display:flex; align-items:center; }
.flex-between { display:flex; justify-content:space-between; align-items:center; }

/* ============ Header ============ */
.header { position:fixed; top:0; left:0; width:100%; z-index:1000; background:var(--brand); height:var(--header-h); }
.header-inner { height:var(--header-h); display:flex; justify-content:space-between; align-items:center; }
.logo a { font-size:18px; font-weight:700; color:#fff; letter-spacing:1px; }
.logo a span { opacity:0.8; font-weight:300; font-size:13px; margin-left:6px; }

/* Navigation */
.nav { display:flex; align-items:center; gap:0; height:var(--header-h); }
.nav-list { display:flex; flex-direction:row; align-items:center; height:100%; }
.nav-item { position:relative; height:100%; display:flex; align-items:center; }
.nav-item > a { display:flex; align-items:center; height:100%; padding:0 18px; color:rgba(255,255,255,0.85); font-size:14px; font-weight:500; transition:color var(--transition); white-space:nowrap; }
.nav-item:hover > a, .nav-item.active > a { color:#fff; }
.nav-item > a::after { content:''; position:absolute; bottom:0; left:50%; transform:translateX(-50%); width:0; height:2px; background:#fff; transition:width var(--transition); }
.nav-item:hover > a::after, .nav-item.active > a::after { width:40%; }

/* Arrow */
.nav-arrow { display:inline-block; width:0; height:0; border-left:3px solid transparent; border-right:3px solid transparent; border-top:4px solid rgba(255,255,255,0.5); margin-left:6px; transition:transform var(--transition); }
.nav-item:hover .nav-arrow { transform:rotate(180deg); }

/* Dropdown */
.dropdown {
    position:absolute; top:100%; left:0; min-width:200px;
    background:#fff; border-radius:0 0 var(--radius) var(--radius);
    box-shadow:var(--shadow-lg); opacity:0; visibility:hidden;
    transform:translateY(-4px); transition:all var(--transition); z-index:999;
}
.nav-item:hover .dropdown { opacity:1; visibility:visible; transform:translateY(0); }
.dropdown a { display:block; padding:12px 20px; color:var(--text); font-size:13px; border-bottom:1px solid var(--border); transition:all var(--transition); }
.dropdown a:last-child { border-bottom:none; }
.dropdown a:hover { background:var(--bg-light); color:var(--brand); padding-left:24px; }

/* Language */
.lang-dropdown { right:0; left:auto; min-width:160px; }

/* Mobile toggle */
.nav-toggle { display:none; flex-direction:column; gap:4px; cursor:pointer; padding:8px; }
.nav-toggle span { width:20px; height:2px; background:#fff; transition:all var(--transition); }

/* ============ Hero Banner ============ */
.hero { width:100%; height:100vh; min-height:600px; position:relative; overflow:hidden; margin-top:var(--header-h); }
.hero-swiper { width:100%; height:100%; }
.hero-swiper .swiper-slide { position:relative; display:flex; align-items:flex-end; justify-content:center; }
.hero-bg { position:absolute; inset:0; background-size:cover; background-position:center; z-index:0; }
.hero-bg::after { content:''; position:absolute; inset:0; background:linear-gradient(180deg, rgba(0,23,153,0.2) 0%, rgba(0,0,0,0.5) 100%); }
.hero-content { position:relative; z-index:2; text-align:center; color:#fff; max-width:1200px; padding:0 24px 80px; overflow:hidden; }
.hero-title { font-size:26px; font-weight:300; line-height:1.2; margin-bottom:10px; letter-spacing:1px; white-space:nowrap; }
.hero-subtitle { font-size:14px; font-weight:300; opacity:0.9; white-space:nowrap; }
.hero-pagination { bottom:40px !important; }
.hero-pagination .swiper-pagination-bullet { width:10px; height:10px; background:rgba(255,255,255,0.4); opacity:1; margin:0 6px !important; }
.hero-pagination .swiper-pagination-bullet-active { background:#fff; }

/* Banner 左右箭头 */
.hero-nav { position:absolute; top:50%; transform:translateY(-50%); z-index:10; width:48px; height:48px; cursor:pointer; display:flex; align-items:center; justify-content:center; transition:all 0.3s; }
.hero-nav:hover { background:rgba(0,23,153,0.6); }
.hero-prev { left:24px; }
.hero-next { right:24px; }
.hero-nav span { display:block; width:14px; height:14px; border-style:solid; border-color:#fff; border-width:2px 2px 0 0; }
.hero-prev span { transform:rotate(-135deg); margin-left:6px; }
.hero-next span { transform:rotate(45deg); margin-right:6px; }
@media (max-width:768px) { .hero-nav { width:36px; height:36px; } .hero-nav span { width:10px; height:10px; } .hero-prev { left:8px; } .hero-next { right:8px; } }

/* ============ Brand Intro ============ */
.brand-intro { padding:80px 0; text-align:center; background:var(--bg); }
.brand-intro h2 { font-size:36px; font-weight:700; color:var(--brand); margin-bottom:16px; letter-spacing:2px; }
.brand-intro .tagline { font-size:18px; color:var(--text-light); margin-bottom:24px; }
.brand-intro .features { display:flex; justify-content:center; gap:40px; flex-wrap:wrap; font-size:15px; color:var(--text-muted); }
.brand-intro .features span { position:relative; }
.brand-intro .features span:not(:last-child)::after { content:'|'; position:absolute; right:-24px; color:var(--border); }

/* ============ Products Section ============ */
.products { padding:80px 0; background:var(--bg-light); }
.sec-header { text-align:center; margin-bottom:48px; }
.sec-header h2 { font-size:32px; font-weight:600; color:var(--text); margin-bottom:12px; }
.sec-header p { font-size:16px; color:var(--text-light); }
.products-grid { display:grid; grid-template-columns:repeat(4,1fr); gap:24px; }
.product-card { background:#fff; border-radius:var(--radius); overflow:hidden; transition:transform var(--transition), box-shadow var(--transition); }
.product-card:hover { transform:translateY(-6px); box-shadow:var(--shadow-lg); }
.product-card .p-img { height:320px; overflow:hidden; }
.product-card .p-img img { width:100%; height:100%; object-fit:cover; transition:transform 0.5s ease; }
.product-card:hover .p-img img { transform:scale(1.05); }
.product-card .p-info { padding:20px; }
.product-card .p-info h3 { font-size:18px; font-weight:600; color:var(--text); margin-bottom:10px; }
.product-card .p-info .p-desc { font-size:13px; color:var(--text-light); line-height:1.7; margin-bottom:16px; display:-webkit-box; -webkit-line-clamp:2; -webkit-box-orient:vertical; overflow:hidden; }
.product-card .p-btn { display:inline-block; padding:8px 20px; background:var(--brand); color:#fff; font-size:13px; font-weight:500; border-radius:var(--radius); transition:background var(--transition); }
.product-card .p-btn:hover { background:var(--brand-light); }
.product-card .p-info p { font-size:13px; color:var(--text-muted); line-height:1.5; }
.product-card .p-link { display:inline-block; margin-top:12px; font-size:13px; color:var(--brand); font-weight:600; transition:color var(--transition); }
.product-card .p-link:hover { color:var(--brand-light); }

/* Full category */
.full-cat { padding:40px 0 80px; background:var(--bg-light); text-align:center; }
.full-cat h3 { font-size:22px; font-weight:500; color:var(--text); margin-bottom:8px; }
.full-cat p { font-size:14px; color:var(--text-muted); }

/* Category Banner (below hero) */
.category-banner { width:100%; height:400px; position:relative; overflow:hidden; }
.category-banner .banner-bg { position:absolute; inset:0; background-size:cover; background-position:center; }
.category-banner .banner-bg::after { content:''; position:absolute; inset:0; background:rgba(0,0,0,0.45); }
.category-banner .banner-text { position:relative; z-index:2; height:100%; display:flex; flex-direction:column; align-items:center; justify-content:center; text-align:center; color:#fff; padding:0 24px; }
.category-banner .banner-text h2 { font-size:32px; font-weight:600; margin-bottom:12px; letter-spacing:1px; line-height:1.4; }
.category-banner .banner-text p { font-size:16px; opacity:0.9; }

/* ============ Certifications ============ */
.certs { padding:80px 0; background:var(--bg); }
.certs-grid { display:grid; grid-template-columns:repeat(6,1fr); gap:30px; align-items:center; }
.cert-item { text-align:center; transition:transform var(--transition); }
.cert-item:hover { transform:scale(1.02); }
.cert-item img { width:120px; height:120px; margin:0 auto 12px; object-fit:contain; border-radius:var(--radius); }
.cert-item h6 { font-size:13px; font-weight:600; color:var(--text); }

/* ============ Contact CTA ============ */
.contact-cta { padding:80px 0; background:var(--bg-light); text-align:center; }
.contact-cta h2 { font-size:28px; font-weight:600; color:var(--text); margin-bottom:32px; }
.contact-links { display:flex; justify-content:center; gap:40px; flex-wrap:wrap; }
.contact-links a { display:inline-flex; align-items:center; gap:10px; padding:14px 32px; background:var(--brand); color:#fff; border-radius:var(--radius); font-size:15px; font-weight:500; transition:background var(--transition); }
.contact-links a:hover { background:var(--brand-light); }
.contact-links a svg { width:20px; height:20px; }

/* ============ Footer ============ */
.footer { background:var(--brand); color:rgba(255,255,255,0.7); height:var(--header-h); display:flex; align-items:center; margin-top:auto; }
.footer-inner { display:flex; justify-content:space-between; align-items:center; flex-wrap:wrap; gap:16px; width:100%; }
.footer-left { font-size:13px; }
.footer-mid { font-size:13px; }
.footer-mid a { color:rgba(255,255,255,0.8); margin:0 8px; transition:color var(--transition); }
.footer-mid a:hover { color:#fff; }
.footer-right { font-size:13px; }

/* ============ Page Hero (sub-pages) ============ */
.page-hero { padding:120px 0 60px; margin-top:var(--header-h); background:var(--brand); text-align:center; color:#fff; position:relative; overflow:hidden; }
.page-hero .hero-bg { position:absolute; inset:0; background-size:cover; background-position:center; z-index:0; }
.page-hero .hero-bg::after { content:''; position:absolute; inset:0; background:linear-gradient(180deg, rgba(0,23,153,0.3) 0%, rgba(0,23,153,0.85) 100%); }
.page-hero .wrap { position:relative; z-index:1; }
.page-hero h1 { font-size:48px; font-weight:700; margin-bottom:12px; }
.page-hero .page-hero-title { font-size:48px; font-weight:700; margin-bottom:12px; }
.sr-only { position:absolute; width:1px; height:1px; padding:0; margin:-1px; overflow:hidden; clip:rect(0,0,0,0); white-space:nowrap; border:0; }
.page-hero p { font-size:18px; opacity:0.9; font-weight:400; }

/* ============ Product Detail Page ============ */
.product-detail { padding:60px 0; }
.pd-inner { display:flex; gap:60px; align-items:flex-start; }
.pd-image { flex:1; }
.pd-image img { width:100%; border-radius:var(--radius); }
.pd-content { flex:1; }
.pd-content h1 { font-size:32px; font-weight:600; margin-bottom:16px; color:var(--text); }
.pd-content .pd-desc { font-size:15px; color:var(--text-light); line-height:1.8; margin-bottom:24px; }
.pd-content h3 { font-size:18px; font-weight:600; margin:24px 0 12px; color:var(--text); }
.pd-content ul { list-style:disc; padding-left:20px; color:var(--text-light); font-size:14px; }
.pd-content ul li { margin-bottom:6px; }
.pd-cta { margin-top:32px; display:flex; gap:16px; }
.pd-cta a { padding:14px 32px; background:var(--brand); color:#fff; border-radius:var(--radius); font-weight:500; transition:background var(--transition); }
.pd-cta a:hover { background:var(--brand-light); }
.pd-cta a.outline { background:transparent; border:2px solid var(--brand); color:var(--brand); }
.pd-cta a.outline:hover { background:var(--brand); color:#fff; }

/* ============ Content Page (About, Policies) ============ */
.content-page { padding:60px 0; min-height:500px; }
.content-page .wrap { max-width:800px; }
.content-page h1 { font-size:28px; font-weight:600; margin-bottom:24px; color:var(--text); }
.content-page h2 { font-size:22px; font-weight:600; margin:32px 0 12px; color:var(--text); }
.content-page p { font-size:15px; color:var(--text-light); line-height:1.8; margin-bottom:16px; }
.content-page ul { list-style:disc; padding-left:20px; color:var(--text-light); font-size:14px; margin-bottom:16px; }
.content-page ul li { margin-bottom:8px; }
.content-page a { color:var(--brand); text-decoration:underline; }

/* ============ Contact Page ============ */
.contact-page { padding:60px 0; }

.contact-info-centered { max-width:800px; margin:0 auto; }

.contact-info-left { margin-bottom:40px; }
.contact-info-left h2 { font-size:24px; font-weight:600; margin-bottom:24px; color:var(--text); }

.ci-list { display:grid; grid-template-columns:repeat(2, 1fr); gap:20px; }
.ci-item { display:flex; align-items:flex-start; gap:16px; padding:20px; background:var(--bg-light); border-radius:var(--radius); transition:box-shadow var(--transition); }
.ci-item:hover { box-shadow:var(--shadow); }
.ci-icon { flex-shrink:0; width:48px; height:48px; display:flex; align-items:center; justify-content:center; background:#fff; border-radius:50%; }
.ci-icon svg { width:22px; height:22px; }
.ci-text h4 { font-size:13px; color:var(--text-muted); margin-bottom:4px; font-weight:400; }
.ci-text p { font-size:16px; color:var(--text); font-weight:500; }
.ci-text a { color:var(--brand); transition:color var(--transition); }
.ci-text a:hover { color:var(--brand-light); }

.contact-info-right { text-align:center; }
.ci-company-card { background:var(--brand); color:#fff; padding:40px; border-radius:var(--radius); margin-bottom:24px; }
.ci-company-card h3 { font-size:20px; font-weight:600; margin-bottom:8px; opacity:0.9; }
.ci-company-card .ci-brand { font-size:32px; font-weight:700; letter-spacing:2px; margin-bottom:12px; }
.ci-company-card .ci-slogan { font-size:15px; opacity:0.8; }

.contact-cta-buttons { display:flex; gap:16px; justify-content:center; flex-wrap:wrap; }
.contact-cta-buttons a { display:inline-flex; align-items:center; gap:10px; padding:14px 32px; border-radius:var(--radius); font-size:15px; font-weight:500; transition:all var(--transition); }
.contact-cta-buttons .btn-mail { background:var(--brand); color:#fff; }
.contact-cta-buttons .btn-mail:hover { background:var(--brand-light); }
.contact-cta-buttons .btn-whatsapp { background:#25D366; color:#fff; }
.contact-cta-buttons .btn-whatsapp:hover { background:#1ebd5a; }
.contact-cta-buttons a svg { width:20px; height:20px; }

@media (max-width: 768px) {
    .ci-list { grid-template-columns:1fr; }
    .contact-cta-buttons { flex-direction:column; align-items:stretch; }
    .contact-cta-buttons a { justify-content:center; }
}

/* ============ Search Page Full ============ */
.search-page-full { padding:40px 0 80px; min-height:400px; text-align:center; }
.search-page-full .search-input-box { max-width:700px; margin:0 auto 40px; display:flex; border:1px solid var(--border); border-radius:var(--radius); overflow:hidden; }
.search-page-full .search-input-box input { flex:1; padding:14px 20px; font-size:16px; border:none; outline:none; background:#fff; }
.search-page-full .search-input-box button { padding:14px 40px; background:var(--brand); color:#fff; font-size:16px; font-weight:500; cursor:pointer; transition:background var(--transition); border:none; }
.search-page-full .search-input-box button:hover { background:var(--brand-light); }
.search-page-full .search-results { max-width:800px; margin:0 auto; text-align:left; }
.search-page-full .search-results h2 { font-size:20px; margin-bottom:20px; color:var(--text); }
.search-page-full .result-item { padding:20px 0; border-bottom:1px solid var(--border); }
.search-page-full .result-item h3 { font-size:18px; margin-bottom:6px; }
.search-page-full .result-item h3 a { color:var(--brand); }
.search-page-full .result-item p { font-size:14px; color:var(--text-light); line-height:1.8; }
.search-page-full .result-item .result-model { font-size:13px; color:var(--text-muted); margin-bottom:6px; }
.search-page-full .result-item .url { font-size:12px; color:var(--text-muted); margin-top:4px; }

/* ============ Responsive ============ */
@media (max-width: 1024px) {
    .products-grid { grid-template-columns:repeat(2,1fr); }
    .certs-grid { grid-template-columns:repeat(3,1fr); }
    .pd-inner { flex-direction:column; }
    .contact-grid { grid-template-columns:1fr; }
    .hero-title { font-size:22px; white-space:nowrap; }
    .hero-subtitle { font-size:13px; white-space:nowrap; }
    .category-banner .banner-text h2 { font-size:24px; }
}

@media (max-width: 768px) {
    .nav-toggle { display:flex; }
    .nav-list { display:none; position:fixed; top:var(--header-h); left:0; width:100%; height:calc(100vh - var(--header-h)); background:var(--brand); flex-direction:column; padding:20px; overflow-y:auto; z-index:1000; }
    .nav-list.active { display:flex; }
    .nav-item { width:100%; height:auto; }
    .nav-item > a { padding:12px 0; width:100%; border-bottom:1px solid rgba(255,255,255,0.1); }
    .dropdown { position:static; opacity:1; visibility:visible; transform:none; box-shadow:none; background:transparent; display:none; }
    .nav-item:hover .dropdown { display:block; }
    .dropdown a { color:rgba(255,255,255,0.8); border-bottom:1px solid rgba(255,255,255,0.1); padding-left:20px; }
    .dropdown a:hover { background:transparent; color:#fff; padding-left:24px; }
    .products-grid { grid-template-columns:1fr; }
    .certs-grid { grid-template-columns:repeat(2,1fr); }
    .brand-intro .features { flex-direction:column; gap:8px; }
    .brand-intro .features span::after { display:none; }
    .footer { height:auto; padding:12px 0; }
    .footer-inner { flex-direction:column; text-align:center; gap:4px; }
    .contact-links { flex-direction:column; align-items:center; }
    .hero { min-height:500px; }
    .hero-title { font-size:18px; letter-spacing:1px; white-space:nowrap; }
    .hero-subtitle { font-size:11px; white-space:nowrap; }
    .brand-intro h2 { font-size:24px; }
    .sec-header h2 { font-size:24px; }
    .page-hero h1 { font-size:24px; }
    .page-hero .page-hero-title { font-size:24px; }
    .category-banner { height:280px; }
    .category-banner .banner-text h2 { font-size:18px; }
    .category-banner .banner-text p { font-size:13px; }
}

@media (max-width: 480px) {
    .hero-title { font-size:15px; letter-spacing:1px; white-space:nowrap; }
    .hero-subtitle { font-size:10px; white-space:nowrap; }
    .product-card .p-img { height:240px; }
    .cert-item img { width:80px; height:80px; }
    .contact-cta h2 { font-size:20px; }
    .content-page h1 { font-size:22px; }
    .pd-content h1 { font-size:24px; }
    .pd-cta { flex-direction:column; }
}

/* ============ Product List Page (tbea style) ============ */
.product-list-page { padding:40px 0 80px; margin-top:var(--header-h); background:var(--bg-light); min-height:600px; }
.pl-layout { display:flex; gap:24px; }
.pl-sidebar { flex:0 0 240px; background:#fff; border-radius:var(--radius); padding:20px; height:fit-content; }
.pl-sidebar-title { font-size:16px; font-weight:700; color:var(--brand); margin-bottom:16px; padding-bottom:12px; border-bottom:2px solid var(--brand); }
.pl-cat-tree { list-style:none; padding:0; }
.pl-cat-tree li { margin-bottom:4px; }
.pl-cat-tree .cat-parent { display:flex; align-items:center; justify-content:space-between; padding:10px 12px; font-size:14px; font-weight:600; color:var(--text); cursor:pointer; border-radius:var(--radius); transition:background var(--transition); }
.pl-cat-tree .cat-parent:hover, .pl-cat-tree .cat-parent.active { background:var(--bg-light); color:var(--brand); }
.pl-cat-tree .cat-arrow { width:0; height:0; border-left:4px solid transparent; border-right:4px solid transparent; border-top:5px solid var(--text-muted); transition:transform var(--transition); }
.pl-cat-tree .cat-parent.active .cat-arrow { transform:rotate(180deg); }
.pl-cat-tree .cat-children { list-style:none; padding-left:16px; max-height:0; overflow:hidden; transition:max-height var(--transition); }
.pl-cat-tree .cat-children.open { max-height:500px; }
.pl-cat-tree .cat-children li a { display:block; padding:8px 12px; font-size:13px; color:var(--text-light); border-radius:var(--radius); transition:all var(--transition); }
.pl-cat-tree .cat-children li a:hover, .pl-cat-tree .cat-children li a.active { color:var(--brand); background:var(--bg-light); }
.pl-main { flex:1; }
.pl-header { display:flex; justify-content:space-between; align-items:center; margin-bottom:24px; }
.pl-header h2 { font-size:22px; font-weight:600; color:var(--text); }
.pl-search { position:relative; width:300px; }
.pl-search input { width:100%; padding:10px 16px 10px 36px; border:1px solid var(--border); border-radius:var(--radius); font-size:14px; }
.pl-search svg { position:absolute; left:10px; top:50%; transform:translateY(-50%); width:16px; height:16px; color:var(--text-muted); }
.pl-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:24px; }
.pl-card { background:#fff; border-radius:var(--radius); overflow:hidden; transition:box-shadow var(--transition); }
.pl-card:hover { box-shadow:var(--shadow-lg); }
.pl-card-img { height:200px; overflow:hidden; background:var(--bg-light); display:flex; align-items:center; justify-content:center; }
.pl-card-img img { width:100%; height:100%; object-fit:contain; padding:20px; }
.pl-card-body { padding:20px; text-align:center; display:flex; flex-direction:column; }
.pl-card-body h3 { font-size:16px; font-weight:600; color:var(--text); margin-bottom:4px; line-height:1.5; min-height:3em; }
.pl-card-body .pl-model { font-size:13px; color:var(--text-muted); margin-bottom:16px; }
.pl-card-actions { display:flex; gap:8px; justify-content:center; margin-top:auto; }
.pl-card-actions a { flex:1; padding:8px 16px; font-size:13px; border-radius:var(--radius); transition:all var(--transition); text-align:center; }
.pl-card-actions .btn-detail { border:1px solid var(--border); color:var(--text-light); }
.pl-card-actions .btn-detail:hover { border-color:var(--brand); color:var(--brand); }
.pl-card-actions .btn-inquiry { background:var(--brand); color:#fff; }
.pl-card-actions .btn-inquiry:hover { background:var(--brand-light); }
.breadcrumb { display:flex; align-items:center; gap:8px; margin-bottom:24px; font-size:13px; color:var(--text-muted); }
.breadcrumb a { color:var(--text-muted); transition:color var(--transition); }
.breadcrumb a:hover { color:var(--brand); }
.breadcrumb .sep { color:var(--border); }
.breadcrumb .current { color:var(--text); }

/* ============ Product Detail Page (tbea style) ============ */
.product-detail-page { padding:40px 0 80px; margin-top:var(--header-h); background:var(--bg-light); }
.pd-top { display:flex; gap:40px; margin-bottom:40px; }
.pd-gallery { flex:0 0 50%; background:#fff; border-radius:var(--radius); padding:40px; display:flex; align-items:center; justify-content:center; min-height:400px; }
.pd-gallery img { max-width:100%; max-height:320px; object-fit:contain; }
.pd-info { flex:1; }
.pd-info h1 { font-size:28px; font-weight:600; margin-bottom:8px; color:var(--text); }
.pd-info .pd-model { font-size:18px; color:var(--brand); font-weight:500; margin-bottom:24px; }
.pd-info h2 { font-size:20px; font-weight:600; margin-bottom:16px; color:var(--text); }
.pd-info .pd-desc { font-size:14px; color:var(--text-light); line-height:1.8; margin-bottom:24px; }
.pd-info .btn-inquiry { display:inline-flex; align-items:center; gap:8px; padding:12px 32px; background:var(--brand); color:#fff; border-radius:var(--radius); font-size:15px; font-weight:500; transition:background var(--transition); }
.pd-info .btn-inquiry:hover { background:var(--brand-light); }
.pd-info .btn-inquiry svg { width:18px; height:18px; }
.pd-params { background:#fff; border-radius:var(--radius); padding:40px; }
.pd-params h2 { font-size:20px; font-weight:600; margin-bottom:24px; color:var(--text); padding-bottom:12px; border-bottom:2px solid var(--brand); }
.pd-params-table { width:100%; border-collapse:collapse; }
.pd-params-table tr { border-bottom:1px solid var(--border); }
.pd-params-table td { padding:14px 20px; font-size:14px; }
.pd-params-table td:first-child { width:200px; color:var(--text-muted); font-weight:500; }
.pd-params-table td:last-child { color:var(--text); }
.pd-advantages { }
.adv-item { padding:20px 0; border-bottom:1px solid var(--border); }
.adv-item:last-child { border-bottom:none; }
.adv-item h3 { font-size:15px; font-weight:600; color:var(--text); margin-bottom:8px; }
.adv-item p { font-size:14px; color:var(--text-light); line-height:1.8; }

@media (max-width: 1024px) {
    .pl-layout { flex-direction:column; }
    .pl-sidebar { flex:none; width:100%; }
    .pl-grid { grid-template-columns:repeat(2,1fr); }
    .pd-top { flex-direction:column; }
    .pd-gallery { flex:none; }
}
@media (max-width: 768px) {
    .pl-grid { grid-template-columns:1fr; }
    .pl-search { width:100%; }
    .pd-params-table td:first-child { width:120px; }
}

/* ============ Email Copy Modal ============ */
.email-modal-overlay { position:fixed; inset:0; background:rgba(0,0,0,0.45); z-index:9999; display:flex; align-items:center; justify-content:center; opacity:0; transition:opacity 0.25s; pointer-events:none; }
.email-modal-overlay.active { opacity:1; pointer-events:auto; }
.email-modal { background:#fff; border-radius:12px; max-width:400px; width:90%; padding:32px 24px 24px; text-align:center; transform:translateY(12px); transition:transform 0.25s; }
.email-modal-overlay.active .email-modal { transform:translateY(0); }
.email-modal-icon { width:64px; height:64px; border-radius:50%; background:#EAF3DE; margin:0 auto 16px; display:flex; align-items:center; justify-content:center; }
.email-modal-icon svg { width:32px; height:32px; }
.email-modal h3 { font-size:18px; font-weight:500; color:var(--text); margin:0 0 12px; }
.email-modal-email { background:var(--bg-light); border-radius:8px; padding:12px; margin:12px 0 16px; display:flex; align-items:center; justify-content:center; gap:8px; flex-wrap:wrap; }
.email-modal-email code { font-size:15px; color:var(--brand); font-family:monospace; font-weight:500; word-break:break-all; }
.email-modal-email .copied-badge { font-size:11px; color:var(--text-muted); background:#fff; padding:3px 8px; border-radius:4px; white-space:nowrap; }
.email-modal p { font-size:13px; color:var(--text-muted); margin:0 0 20px; line-height:1.7; }
.email-modal-btns { display:flex; gap:8px; }
.email-modal-btns button, .email-modal-btns a { flex:1; padding:12px 8px; border-radius:8px; font-size:14px; font-weight:500; cursor:pointer; transition:all 0.2s; border:none; }
.email-modal-btn-open { background:var(--brand); color:#fff; }
.email-modal-btn-open:hover { background:#0000cc; }
.email-modal-btn-close { background:transparent; color:var(--text-muted); border:0.5px solid var(--border) !important; }
.email-modal-btn-close:hover { background:var(--bg-light); }
@media (max-width:480px) {
    .email-modal { padding:24px 16px 20px; }
    .email-modal h3 { font-size:16px; }
    .email-modal-email code { font-size:13px; }
    .email-modal-btns { flex-direction:column; }
}

/* ============ WhatsApp Copy Modal ============ */
.whatsapp-modal-overlay { position:fixed; inset:0; background:rgba(0,0,0,0.45); z-index:9999; display:flex; align-items:center; justify-content:center; opacity:0; transition:opacity 0.25s; pointer-events:none; }
.whatsapp-modal-overlay.active { opacity:1; pointer-events:auto; }
.whatsapp-modal { background:#fff; border-radius:12px; max-width:400px; width:90%; padding:32px 24px 24px; text-align:center; transform:translateY(12px); transition:transform 0.25s; }
.whatsapp-modal-overlay.active .whatsapp-modal { transform:translateY(0); }
.whatsapp-modal-icon { width:64px; height:64px; border-radius:50%; background:#EAF3DE; margin:0 auto 16px; display:flex; align-items:center; justify-content:center; }
.whatsapp-modal-icon svg { width:32px; height:32px; }
.whatsapp-modal h3 { font-size:18px; font-weight:500; color:var(--text); margin:0 0 12px; }
.whatsapp-modal-phone { background:#F8FAF5; border-radius:8px; padding:12px; margin:12px 0 16px; display:flex; align-items:center; justify-content:center; gap:8px; flex-wrap:wrap; }
.whatsapp-modal-phone code { font-size:15px; color:#27500A; font-family:monospace; font-weight:500; }
.whatsapp-modal-phone .copied-badge { font-size:11px; color:#3B6D11; background:#EAF3DE; padding:3px 8px; border-radius:4px; white-space:nowrap; }
.whatsapp-modal p { font-size:13px; color:var(--text-muted); margin:0 0 20px; line-height:1.7; }
.whatsapp-modal-btns { display:flex; gap:8px; }
.whatsapp-modal-btns button { flex:1; padding:12px 8px; border-radius:8px; font-size:14px; font-weight:500; cursor:pointer; transition:all 0.2s; border:none; font-family:inherit; }
.whatsapp-modal-btn-open { background:#27500A; color:#fff; }
.whatsapp-modal-btn-open:hover { background:#173404; }
.whatsapp-modal-btn-close { background:transparent; color:var(--text-muted); border:0.5px solid var(--border) !important; }
.whatsapp-modal-btn-close:hover { background:var(--bg-light); }
@media (max-width:480px) {
    .whatsapp-modal { padding:24px 16px 20px; }
    .whatsapp-modal h3 { font-size:16px; }
    .whatsapp-modal-phone code { font-size:13px; }
    .whatsapp-modal-btns { flex-direction:column; }
}
