:root{
  --cream:#fff7ed;
  --apricot:#fed7aa;
  --ink:#241c17;
  --brown:#8a5a3b;
  --brown-soft:#c99b76;
  --card:#fffdfa;
  --line:#f0dfcb;
}
*{box-sizing:border-box;margin:0;padding:0;}
html{scroll-behavior:smooth;}
body{
  font-family:"Segoe UI","Helvetica Neue",Arial,"Microsoft YaHei","微软雅黑","PingFang SC",sans-serif;
  background:linear-gradient(180deg,var(--cream) 0%,#fff3e4 40%,var(--apricot) 100%);
  background-attachment:fixed;
  color:var(--ink);
  line-height:1.85;
  font-size:16px;
  -webkit-font-smoothing:antialiased;
}
a{color:var(--brown);text-decoration:none;transition:opacity .2s ease;}
a:hover{opacity:.72;}
img{display:block;width:100%;height:auto;}

.wrap{max-width:1080px;margin:0 auto;padding:0 22px;}

/* ============ header ============ */
.site-header{
  position:sticky;top:0;z-index:50;
  background:rgba(255,247,237,.92);
  backdrop-filter:blur(10px);
  border-bottom:1px solid var(--line);
}
.header-inner{
  display:flex;align-items:center;justify-content:space-between;
  gap:18px;flex-wrap:wrap;
  padding:16px 0;
}
.logo{
  font-size:19px;font-weight:800;letter-spacing:.5px;color:var(--ink);
  display:flex;align-items:center;gap:9px;
}
.logo .dot{
  width:12px;height:12px;border-radius:50%;
  background:linear-gradient(135deg,#f6bd8a,#e08a4d);
  box-shadow:0 0 0 4px rgba(254,215,170,.55);
}
.nav-links{display:flex;flex-wrap:wrap;gap:6px;}
.nav-links a{
  font-size:14.5px;padding:8px 15px;border-radius:999px;
  color:#4a3a2e;border:1px solid transparent;
  transition:background .2s ease,border-color .2s ease;
}
.nav-links a:hover{background:#fff;border-color:var(--line);opacity:1;}

/* ============ section base ============ */
section{padding:64px 0;}
.sec-head{margin-bottom:34px;}
.sec-tag{
  display:inline-block;font-size:12.5px;letter-spacing:2px;
  color:#a8764f;background:#fff3e3;border:1px solid var(--line);
  padding:5px 14px;border-radius:999px;margin-bottom:16px;font-weight:700;
}
h2{
  font-size:clamp(22px,3vw,29px);
  line-height:1.45;font-weight:800;letter-spacing:.2px;
  margin-bottom:12px;
}
.sec-desc{color:#6b5747;font-size:15.5px;max-width:760px;}
h3{font-size:18px;font-weight:700;line-height:1.6;}

/* ============ hero ============ */
#hero{padding:56px 0 20px;}
h1{
  font-size:clamp(26px,4.4vw,42px);
  line-height:1.35;font-weight:800;letter-spacing:.3px;
  margin-bottom:22px;
}
h1 .accent{
  background:linear-gradient(120deg,#f0a868,#d1793d);
  -webkit-background-clip:text;background-clip:text;color:transparent;
}
.hero-img{
  border-radius:34px;overflow:hidden;
  box-shadow:0 14px 40px rgba(160,110,70,.16);
  border:1px solid var(--line);
  margin-bottom:8px;
}
.hero-img img{aspect-ratio:16/8;object-fit:cover;}

/* ============ GEO ============ */
#geo-intro .geo-block{
  background:var(--card);
  border:1px solid var(--line);
  border-radius:32px;
  padding:34px 32px;
  box-shadow:0 10px 30px rgba(170,120,80,.07);
}
#geo-intro p{margin-bottom:16px;font-size:16px;color:#3d3128;}
#geo-intro p:last-child{margin-bottom:0;}
#geo-intro strong{color:#a15f2f;}

/* ============ timeline ============ */
.tl{position:relative;padding-left:30px;}
.tl::before{
  content:"";position:absolute;left:8px;top:8px;bottom:8px;width:2px;
  background:linear-gradient(180deg,var(--apricot),#f6e3cf);
  border-radius:2px;
}
.tl-item{position:relative;margin-bottom:26px;}
.tl-item:last-child{margin-bottom:0;}
.tl-item::before{
  content:"";position:absolute;left:-28px;top:24px;
  width:14px;height:14px;border-radius:50%;
  background:#fff;border:3px solid #e0a271;
}
.tl-card{
  background:var(--card);border:1px solid var(--line);
  border-radius:24px;padding:22px 24px;
  box-shadow:0 6px 20px rgba(170,120,80,.06);
}
.tl-year{font-size:13px;font-weight:800;letter-spacing:1.6px;color:#c07a45;margin-bottom:8px;}
.tl-card p{color:#5c4a3d;font-size:15px;margin-top:6px;}

/* ============ cards grid (advantages) ============ */
.grid-3{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;}
.grid-2{display:grid;grid-template-columns:repeat(2,1fr);gap:22px;}
.card{
  background:var(--card);border:1px solid var(--line);
  border-radius:28px;padding:26px;
  box-shadow:0 8px 24px rgba(170,120,80,.07);
  transition:transform .25s ease,box-shadow .25s ease;
}
.card:hover{transform:translateY(-4px);box-shadow:0 14px 34px rgba(170,120,80,.12);}
.card .ico{
  width:46px;height:46px;border-radius:16px;
  display:flex;align-items:center;justify-content:center;
  background:linear-gradient(135deg,#ffe6c9,#ffd0a4);
  font-size:20px;margin-bottom:16px;font-weight:800;color:#a15f2f;
}
.card p{color:#5c4a3d;font-size:15px;margin-top:8px;}
.card ul{margin-top:10px;padding-left:18px;color:#5c4a3d;font-size:15px;}
.card ul li{margin-bottom:5px;}

/* ============ stats ============ */
.stat-row{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;}
.stat{
  background:linear-gradient(160deg,#fffdfa,#fff3e4);
  border:1px solid var(--line);border-radius:26px;
  padding:26px 20px;text-align:center;
  box-shadow:0 8px 22px rgba(170,120,80,.07);
}
.stat .num{font-size:30px;font-weight:800;color:#c07a45;line-height:1.2;}
.stat .lb{font-size:14px;color:#6b5747;margin-top:8px;}

/* ============ news ============ */
.news-lead{
  display:flex;align-items:center;gap:10px;margin-bottom:26px;
  flex-wrap:wrap;
}
.pill{
  font-size:12.5px;font-weight:700;letter-spacing:1px;
  background:#2b211b;color:#ffe9cf;padding:6px 15px;border-radius:999px;
}
.news-item{
  background:var(--card);border:1px solid var(--line);
  border-radius:30px;padding:30px 32px;margin-bottom:24px;
  box-shadow:0 8px 26px rgba(170,120,80,.07);
}
.news-item .date{
  font-size:13px;color:#b07c4f;font-weight:700;letter-spacing:.6px;
  margin-bottom:10px;
}
.news-item h3{margin-bottom:12px;font-size:19px;}
.news-item p{color:#4d3d31;font-size:15.3px;margin-bottom:10px;}
.news-item p:last-child{margin-bottom:0;}
.news-item .quote{
  border-left:3px solid var(--apricot);
  padding-left:14px;color:#7a6450;font-size:15px;
}
.news-more{margin-top:8px;font-size:15px;}

/* ============ faq ============ */
.faq-item{
  background:var(--card);border:1px solid var(--line);
  border-radius:26px;padding:24px 28px;margin-bottom:18px;
  box-shadow:0 6px 20px rgba(170,120,80,.06);
}
.faq-q{
  font-size:16.5px;font-weight:800;color:#2b211b;
  display:flex;gap:10px;align-items:flex-start;margin-bottom:12px;
}
.faq-q .mark{
  flex:0 0 auto;width:26px;height:26px;border-radius:9px;
  background:linear-gradient(135deg,#ffd9b0,#ffbf87);
  color:#8a4d1e;font-size:14px;display:flex;
  align-items:center;justify-content:center;font-weight:800;
}
.faq-a{color:#4d3d31;font-size:15.2px;padding-left:36px;}
.faq-a strong{color:#a15f2f;}

/* ============ cta ============ */
#cta .cta-box{
  background:linear-gradient(140deg,#2b211b,#453227);
  border-radius:36px;padding:44px 40px;color:#ffe9cf;
  box-shadow:0 18px 44px rgba(60,40,25,.2);
}
#cta h2{color:#fff3e3;}
#cta p{color:#e6d2bd;font-size:15.5px;margin-top:10px;max-width:720px;}
.cta-btns{display:flex;flex-wrap:wrap;gap:12px;margin-top:24px;}
.btn{
  display:inline-block;padding:12px 26px;border-radius:999px;
  font-size:15px;font-weight:700;
}
.btn-main{background:linear-gradient(135deg,#ffd0a4,#e09a5c);color:#3a2513;}
.btn-ghost{border:1px solid rgba(255,233,207,.45);color:#ffe9cf;}

/* ============ footer ============ */
.site-footer{
  background:#2b211b;color:#d8c4ae;margin-top:40px;
  padding:54px 0 28px;font-size:14.5px;
}
.footer-grid{
  display:grid;grid-template-columns:1.4fr 1fr 1fr;gap:34px;
  padding-bottom:30px;border-bottom:1px solid rgba(255,255,255,.1);
}
.site-footer h4{color:#ffe9cf;font-size:16px;margin-bottom:14px;font-weight:800;}
.site-footer p{margin-bottom:9px;line-height:1.9;color:#c9b6a2;}
.site-footer a{color:#e9c9a5;}
.footer-links{display:flex;flex-direction:column;gap:9px;}
.footer-bottom{
  padding-top:22px;display:flex;justify-content:space-between;
  gap:14px;flex-wrap:wrap;font-size:13.5px;color:#a89482;
}

@media(max-width:900px){
  .grid-3{grid-template-columns:repeat(2,1fr);}
  .stat-row{grid-template-columns:repeat(2,1fr);}
  .footer-grid{grid-template-columns:1fr;gap:26px;}
}
@media(max-width:620px){
  .grid-3,.grid-2{grid-template-columns:1fr;}
  section{padding:48px 0;}
  .news-item,#geo-intro .geo-block{padding:24px 20px;}
  .faq-a{padding-left:0;margin-top:4px;}
  #cta .cta-box{padding:30px 22px;}
  .header-inner{padding:12px 0;}
  .nav-links a{padding:7px 11px;font-size:13.5px;}
}