
:root{
    --primary:#8C1F28;
    --primary-dark:#5C1218;
    --secondary:#C49A3C;
    --accent:#D4AF37;
    --bg:#F7F3EC;
    --surface:#FFFFFF;
    --text:#2A1E16;
    --muted:#6B5A4E;
    --border:#E2D5C3;
    --hero-bg:linear-gradient(135deg,#5C1218 0%,#8C1F28 48%,#A82B36 100%);
}
*{margin:0;padding:0;box-sizing:border-box}
html{scroll-behavior:smooth}
body{font-family:'Microsoft Sans Serif','Microsoft YaHei',sans-serif;background:var(--bg);color:var(--text);line-height:1.7}
a{text-decoration:none;color:inherit;transition:all .25s ease}
img{display:block;max-width:100%;height:auto}
.container{max-width:1240px;margin:0 auto;padding:0 22px}
.site-shell{width:100%;overflow:hidden}

/* topbar */
.topbar{background:var(--primary-dark);color:rgba(255,255,255,.85);font-size:.85rem;padding:8px 0;letter-spacing:.4px}
.topbar__inner{display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap}
.topbar a{color:#fff;border-bottom:1px solid rgba(255,255,255,.3)}
.topbar a:hover{color:var(--secondary)}

/* header */
.header{background:var(--surface);box-shadow:0 4px 18px rgba(0,0,0,.04);position:sticky;top:0;z-index:120;border-bottom:1px solid var(--border)}
.header__inner{display:flex;align-items:center;justify-content:space-between;height:78px;flex-wrap:wrap}
.brand{display:flex;align-items:center;gap:12px}
.brand__mark{width:44px;height:44px;background:var(--hero-bg);border-radius:10px;position:relative}
.brand__mark::after{content:';';position:absolute;inset:0;display:flex;align-items:center;justify-content:center;color:var(--secondary);font-weight:700;font-size:1.6rem;transform:translateY(-5px)}
.brand__text{display:flex;flex-direction:column;line-height:1.2}
.brand__text strong{font-size:1.3rem;color:var(--primary);letter-spacing:1px}
.brand__text span{font-size:.8rem;color:var(--muted);letter-spacing:.4px}
.nav{display:flex;gap:26px;align-items:center}
.nav a{font-size:.95rem;color:var(--text);font-weight:500;position:relative;padding:4px 0}
.nav a::after{content:'';position:absolute;left:0;bottom:0;width:0;height:2px;background:var(--secondary);transition:width .3s}
.nav a:hover::after{width:100%}
.nav a:hover{color:var(--primary)}

/* hero */
.hero{background:var(--hero-bg);color:#fff;padding:70px 0 60px;position:relative;overflow:hidden}
.hero::before{content:'';position:absolute;top:-80px;right:-60px;width:400px;height:400px;background:radial-gradient(circle,rgba(212,175,55,.12),transparent 70%);border-radius:50%}
.hero::after{content:'';position:absolute;bottom:-60px;left:-40px;width:340px;height:340px;background:radial-gradient(circle,rgba(212,175,55,.08),transparent 70%);border-radius:50%}
.hero-grid{display:grid;grid-template-columns:1.2fr .9fr;gap:60px;align-items:center;position:relative;z-index:2}
.hero-copy .eyebrow{display:inline-block;background:rgba(212,175,55,.16);border:1px solid rgba(212,175,55,.35);color:var(--secondary);padding:4px 18px;border-radius:30px;font-size:.85rem;font-weight:600;letter-spacing:1px;margin-bottom:22px}
.hero-copy h1{font-size:2.6rem;font-weight:800;line-height:1.25;letter-spacing:1px;margin-bottom:18px;text-shadow:0 6px 30px rgba(0,0,0,.2)}
.hero-copy h1 em{font-style:normal;color:var(--secondary)}
.hero-copy p{font-size:1.08rem;color:rgba(255,255,255,.82);max-width:540px;line-height:1.9;margin-bottom:28px}
.chip-row{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:18px}
.chip-row span{background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.15);padding:6px 18px;border-radius:30px;font-size:.85rem;color:#fff}
.chip-row span:first-child{background:var(--secondary);color:var(--primary-dark);font-weight:600;border-color:transparent}
.keyword-row{display:flex;flex-wrap:wrap;gap:8px}
.keyword-row span{font-size:.78rem;color:rgba(255,255,255,.6);padding:3px 0}
.keyword-row span+span::before{content:'·';margin:0 8px;color:var(--secondary)}
.hero-panel{background:rgba(255,255,255,.07);backdrop-filter:blur(8px);border:1px solid rgba(255,255,255,.14);border-radius:18px;padding:34px}
.metric-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:16px;margin-bottom:26px}
.metric{background:rgba(255,255,255,.08);border-radius:12px;padding:16px;text-align:center}
.metric strong{display:block;font-size:1.5rem;color:var(--secondary);font-weight:800}
.metric span{font-size:.75rem;color:rgba(255,255,255,.6);letter-spacing:.5px}
.hero-contact{display:flex;flex-direction:column;gap:6px}
.hero-contact strong{color:#fff;font-size:1.05rem}
.hero-contact a{color:var(--secondary);font-size:1.5rem;font-weight:700;letter-spacing:1px}
.hero-contact a:hover{color:#ffe27a}
.hero-contact p{font-size:.82rem;color:rgba(255,255,255,.7);line-height:1.7;margin-top:4px}

/* sections */
.section{padding:72px 0}
.section-head{text-align:center;margin-bottom:46px}
.section-head h2{font-size:2rem;font-weight:800;color:var(--text);letter-spacing:1px;position:relative;display:inline-block;padding-bottom:14px}
.section-head h2::after{content:'';position:absolute;bottom:0;left:50%;transform:translateX(-50%);width:60px;height:3px;background:linear-gradient(90deg,var(--primary),var(--secondary));border-radius:3px}
.section-head span{display:block;margin-top:8px;font-size:.85rem;color:var(--muted);letter-spacing:2px;text-transform:uppercase}
.surface-card{background:var(--surface);border:1px solid var(--border);border-radius:16px;padding:38px;box-shadow:0 10px 40px rgba(92,18,24,.05)}
.about-grid{display:grid;grid-template-columns:1.3fr 1fr;gap:50px;align-items:center}
.about-copy p{color:#423429;font-size:1rem;line-height:2;margin-bottom:16px}
.about-copy p strong{color:var(--primary)}
.about-figure{border-radius:12px;overflow:hidden;border:1px solid var(--border)}
.about-figure img{width:100%;aspect-ratio:4/3;object-fit:cover}
.about-figure figcaption{font-size:.85rem;color:var(--muted);padding:12px 16px;background:var(--surface);text-align:center;border-top:1px solid var(--border)}

/* strengths */
.strength-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:26px}
.strength-card{background:var(--surface);border:1px solid var(--border);border-radius:14px;padding:30px 24px;transition:all .3s ease;position:relative;overflow:hidden}
.strength-card::before{content:'';position:absolute;top:0;left:0;width:100%;height:4px;background:linear-gradient(90deg,var(--primary),var(--secondary));opacity:0;transition:opacity .3s}
.strength-card:hover{transform:translateY(-6px);box-shadow:0 14px 40px rgba(92,18,24,.08)}
.strength-card:hover::before{opacity:1}
.strength-card .icon{font-size:2rem;margin-bottom:10px}
.strength-card h3{font-size:1.1rem;color:var(--primary);margin-bottom:8px}
.strength-card p{font-size:.88rem;color:var(--muted);line-height:1.7}

/* gallery */
.gallery-area{display:flex;flex-direction:column;gap:56px}
.gallery-group{border-top:1px solid var(--border);padding-top:34px}
.gallery-group:first-child{border-top:none;padding-top:0}
.gallery-group h3{font-size:1.35rem;color:var(--primary);margin-bottom:6px;letter-spacing:.5px}
.gallery-group>p{font-size:.9rem;color:var(--muted);margin-bottom:24px;letter-spacing:.4px}
.gallery-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}
.g-card{background:var(--surface);border:1px solid var(--border);border-radius:12px;overflow:hidden;transition:transform .3s ease,box-shadow .3s}
.g-card:hover{transform:translateY(-5px);box-shadow:0 12px 30px rgba(92,18,24,.1)}
.g-card img{width:100%;aspect-ratio:1/1;object-fit:cover}
.g-card p{font-size:.88rem;color:var(--text);padding:12px;text-align:center;font-weight:500;border-top:1px solid var(--border)}
.g-card p::before{content:'';display:block;width:24px;height:2px;background:var(--secondary);margin:2px auto 6px}

/* faq */
.faq-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:22px}
.faq-item{background:var(--surface);border:1px solid var(--border);border-radius:12px;padding:26px 28px}
.faq-item h4{color:var(--primary);font-size:1.02rem;margin-bottom:8px;line-height:1.6}
.faq-item p{font-size:.9rem;color:var(--muted);line-height:1.8}

/* contact cta */
.cta-panel{background:var(--hero-bg);border-radius:20px;padding:48px;display:grid;grid-template-columns:1.3fr 1fr;gap:40px;color:#fff;position:relative;overflow:hidden}
.cta-panel::before{content:'';position:absolute;bottom:-100px;right:-60px;width:300px;height:300px;background:radial-gradient(circle,rgba(212,175,55,.15),transparent 70%);border-radius:50%}
.cta-copy{position:relative;z-index:2}
.cta-copy .eyebrow{color:var(--secondary);font-size:.9rem;font-weight:600;letter-spacing:1px;margin-bottom:8px}
.cta-copy h2{font-size:1.7rem;margin-bottom:12px}
.cta-copy p{color:rgba(255,255,255,.85);margin-bottom:18px;line-height:1.8}
.contact-list{list-style:none;display:flex;flex-direction:column;gap:8px}
.contact-list li{display:flex;gap:10px;align-items:center;font-size:.95rem;color:rgba(255,255,255,.85)}
.contact-list li::before{content:'◆';color:var(--secondary);font-size:.7rem}
.cta-contact{background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.15);border-radius:14px;padding:30px;display:flex;flex-direction:column;gap:14px;justify-content:center;position:relative;z-index:2}
.cta-contact strong{font-size:1.05rem;color:#fff}
.cta-contact a{font-size:1.7rem;color:var(--secondary);font-weight:700;letter-spacing:1px}
.cta-contact a:hover{color:#ffe27a}
.cta-contact__meta{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:14px}
.cta-contact__meta div{background:rgba(255,255,255,.08);border-radius:8px;padding:10px}
.cta-contact__meta span{display:block;font-size:.7rem;color:rgba(255,255,255,.55);letter-spacing:.5px;margin-bottom:3px}
.cta-contact__meta strong{font-size:.85rem;color:#fff;font-weight:600}

/* footer */
.footer{background:var(--primary-dark);color:rgba(255,255,255,.75);padding:46px 0 28px;margin-top:20px}
.footer__inner{display:flex;flex-direction:column;gap:18px;align-items:center;text-align:center}
.footer-copy p{font-size:.92rem;line-height:1.8;max-width:760px}
.footer-copy p:first-child{font-size:1rem;color:#fff}
.friend-links-row{width:100%;max-width:900px;margin-top:14px}
.friend-links{border-top:1px solid rgba(255,255,255,.12);padding:16px 0 4px}
.friend-links__inner{display:flex;flex-wrap:wrap;justify-content:center;gap:6px 14px;font-size:.8rem;color:rgba(255,255,255,.5)}
.friend-links a{color:rgba(255,255,255,.5);padding:2px 6px;border-radius:4px}
.friend-links a:hover{color:var(--secondary);background:rgba(212,175,55,.1)}

.timestamp-style{font-size:.78rem;color:rgba(255,255,255,.4);margin-top:14px;letter-spacing:.5px}

/* responsive */
@media(max-width:1024px){
    .hero-grid{grid-template-columns:1fr 1fr;gap:30px}
    .about-grid{grid-template-columns:1fr}
    .strength-grid{grid-template-columns:repeat(2,1fr)}
    .gallery-grid{grid-template-columns:repeat(3,1fr)}
}
@media(max-width:760px){
    .nav{display:none}
    .header__inner{height:64px}
    .hero{padding:48px 0 40px}
    .hero-grid{grid-template-columns:1fr;gap:40px}
    .hero-copy h1{font-size:2rem}
    .hero-panel{padding:22px}
    .section{padding:50px 0}
    .section-head{margin-bottom:30px}
    .surface-card{padding:24px}
    .strength-grid{grid-template-columns:1fr}
    .gallery-grid{grid-template-columns:repeat(2,1fr)}
    .faq-grid{grid-template-columns:1fr}
    .cta-panel{grid-template-columns:1fr;padding:30px}
}
@media(max-width:480px){
    .gallery-grid{grid-template-columns:1fr 1fr;gap:10px}
    .g-card p{font-size:.8rem;padding:8px}
    .topbar__inner{justify-content:center;font-size:.78rem;gap:4px}
    .brand__text strong{font-size:1.1rem}
    .brand__mark{width:36px;height:36px}
    .metric-grid{grid-template-columns:1fr 1fr;gap:10px}
}


.friend-links-row{display:block !important;width:100%;margin:18px 0 0;clear:both;}
.friend-links{display:block !important;width:100%;box-sizing:border-box;}
.friend-links__inner{display:flex;flex-wrap:wrap;align-items:center;gap:6px 12px;width:100%;}
.friend-links__inner a{display:inline-block;font-size:12px;line-height:1.6;padding:0;color:inherit;text-decoration:none;opacity:.88;}
.friend-links__inner a:hover{text-decoration:underline;opacity:1;}
@media (max-width: 768px){
  .friend-links-row{margin-top:14px;}
  .friend-links__inner{gap:5px 10px;}
  .friend-links__inner a{font-size:11px;line-height:1.7;}
}
