/* =========================================================
   beats365唯一官网入口官方版 GESA — 官网样式
   ========================================================= */

:root{
  --ink:        #0e1114;
  --ink-2:      #161a1e;
  --ink-3:      #22272c;
  --gold:       #c9a063;
  --gold-2:     #e6cfa1;
  --gold-deep:  #a27c3f;
  --paper:      #faf8f5;
  --paper-2:    #f2eee8;
  --text:       #2c3136;
  --muted:      #7a8189;
  --line:       rgba(14,17,20,.10);
  --line-light: rgba(255,255,255,.14);

  --serif: "Noto Serif SC", "Source Han Serif SC", "Songti SC", "SimSun", Georgia, serif;
  --sans: -apple-system, BlinkMacSystemFont, "Segoe UI", "PingFang SC", "Microsoft YaHei", "Hiragino Sans GB", sans-serif;

  --max: 1320px;
  --section-space: clamp(76px,7vw,108px);
  --heading-size: clamp(30px,3.3vw,46px);
  --ease: cubic-bezier(.22,.61,.36,1);
}

*{ box-sizing:border-box; }
html{ scroll-behavior:smooth; }
body{
  margin:0;
  background:var(--paper);
  color:var(--text);
  font-family:var(--sans);
  font-size:16px;
  line-height:1.75;
  -webkit-font-smoothing:antialiased;
  overflow-x:hidden;
}
img{ display:block; max-width:100%; }
a{ color:inherit; text-decoration:none; }
h1,h2,h3,h4{ margin:0; font-weight:600; font-family:var(--serif); letter-spacing:.02em; }
p{ margin:0; }
ul{ margin:0; padding:0; list-style:none; }
button{ font:inherit; cursor:pointer; border:0; background:none; color:inherit; }
::selection{ background:var(--gold); color:#fff; }

.wrap{ width:100%; max-width:var(--max); margin:0 auto; padding:0 40px; }
.section{ padding:var(--section-space) 0; position:relative; }
[hidden]{ display:none !important; }
a:focus-visible,button:focus-visible,[tabindex]:focus-visible{ outline:2px solid var(--gold-deep); outline-offset:4px; }
.section-links{ margin-top:32px; display:flex; justify-content:flex-end; }
.collection-status{ padding:24px; text-align:center; color:var(--muted); background:rgba(201,160,99,.07); }

/* ---------- 通用文字 ---------- */
.kicker{
  font-size:12px; letter-spacing:.28em; text-transform:uppercase;
  color:var(--gold-deep); font-weight:600; margin-bottom:22px;
}
.kicker--gold{ color:var(--gold); }
.h2{
  font-size:var(--heading-size); line-height:1.35; color:var(--ink); overflow-wrap:anywhere;
}
.h2 em{ font-style:normal; color:var(--gold-deep); }
.h2--light{ color:#fff; }
.h2--light em{ color:var(--gold); }
.lead{ margin-top:26px; font-size:17px; color:var(--muted); line-height:1.9; max-width:56ch; }
.lead--light{ color:rgba(255,255,255,.72); }

.sec-head{
  display:flex; align-items:flex-end; justify-content:space-between;
  gap:40px; margin-bottom:48px;
}
.sec-head__desc{ max-width:44ch; color:var(--muted); font-size:15.5px; padding-bottom:8px; }
.sec-head__desc--light{ color:rgba(255,255,255,.65); }
.sec-head--center{ flex-direction:column; align-items:center; text-align:center; gap:24px; }
.sec-head--center .sec-head__desc{ max-width:60ch; padding-bottom:0; }

/* ---------- 按钮 ---------- */
.btn{
  display:inline-flex; align-items:center; justify-content:center; gap:8px;
  padding:16px 34px; font-size:15px; font-weight:500; letter-spacing:.08em;
  border-radius:2px; transition:.4s var(--ease); position:relative; overflow:hidden;
}
.btn--gold{
  background:linear-gradient(120deg,var(--gold-deep),var(--gold) 45%,var(--gold-2));
  color:#16130c; font-weight:600;
  box-shadow:0 10px 30px -12px rgba(201,160,99,.75);
}
.btn--gold:hover{ transform:translateY(-3px); box-shadow:0 18px 40px -14px rgba(201,160,99,.9); }
.btn--ghost{ border:1px solid rgba(255,255,255,.4); color:#fff; }
.btn--ghost:hover{ background:rgba(255,255,255,.12); border-color:#fff; transform:translateY(-3px); }
.btn--sm{ padding:11px 22px; font-size:13.5px; }
.btn--block{ width:100%; }

.link-arrow{
  display:inline-flex; align-items:center; gap:8px; font-size:14px;
  color:var(--gold-deep); font-weight:500; letter-spacing:.06em;
}
.link-arrow span{ transition:transform .4s var(--ease); }
.link-arrow:hover span{ transform:translateX(6px); }

/* =========================================================
   导航
   ========================================================= */
.nav{
  position:fixed; inset:0 0 auto 0; z-index:100;
  transition:.45s var(--ease);
  background:linear-gradient(180deg,rgba(8,10,12,.55),rgba(8,10,12,0));
}
.nav__inner{
  max-width:var(--max); margin:0 auto; padding:22px 40px;
  display:flex; align-items:center; gap:40px;
}
.gesa-about{ padding:var(--section-space) 0; background:#fcfbf9; color:#25231f; }
.gesa-about__head{ display:grid; grid-template-columns:1fr 1.05fr; gap:76px; align-items:center; }
.gesa-about__text{ padding-top:4px; }
.gesa-about__title{ font-family:var(--serif); font-size:var(--heading-size); line-height:1.4; font-weight:600; letter-spacing:1px; color:#232120; }
.gesa-about__title em{ font-style:normal; color:#b08d57; }
.gesa-about__en{ margin-top:14px; font-size:11px; letter-spacing:5px; color:#8d8880; text-transform:uppercase; }
.gesa-about__en::before{ content:""; display:inline-block; width:26px; height:1px; background:#b08d57; vertical-align:middle; margin-right:14px; }
.gesa-about__lead{ margin-top:26px; font-size:15.5px; line-height:2.05; letter-spacing:.5px; color:#3b3833; }
.gesa-about__body{ margin-top:12px; font-size:13.5px; line-height:1.95; letter-spacing:.5px; color:#8d8880; }
.gesa-about__link{ margin-top:26px; display:inline-flex; align-items:center; gap:12px; font-size:13.5px; letter-spacing:2px; color:#b08d57; padding-bottom:7px; border-bottom:1px solid #cbb188; transition:gap .35s ease; }
.gesa-about__link:hover{ gap:20px; }
.gesa-about__figure{ position:relative; margin:0; min-width:0; }
.gesa-about__figure img{ width:100%; aspect-ratio:16/11; object-fit:cover; display:block; box-shadow:0 24px 56px rgba(35,33,32,.12); }
.gesa-about__stat{ position:absolute; right:-22px; bottom:-26px; background:#fcfbf9; padding:18px 24px; border-left:2px solid #b08d57; box-shadow:0 16px 36px rgba(35,33,32,.08); }
.gesa-about__stat strong{ display:block; font-size:34px; font-weight:700; letter-spacing:1px; color:#b08d57; }
.gesa-about__stat span{ display:block; margin-top:3px; font-size:12px; letter-spacing:3px; color:#8d8880; }
.gesa-about__points{ margin-top:76px; border-top:1px solid #ece7de; display:grid; grid-template-columns:repeat(3,1fr); }
.gesa-about__point{ padding:26px 34px 4px; border-left:1px solid #ece7de; }
.gesa-about__point:first-child{ padding-left:0; border-left:0; }
.gesa-about__point:last-child{ padding-right:0; }
.gesa-about__point > span{ font-size:12px; letter-spacing:3px; font-weight:600; color:#b08d57; }
.gesa-about__point h4{ margin-top:12px; font-size:18px; font-weight:600; letter-spacing:1px; }
.gesa-about__point h4::after{ content:""; display:block; width:18px; height:1px; background:#b08d57; margin-top:12px; opacity:.6; transition:width .45s ease,opacity .45s ease; }
.gesa-about__point:hover h4::after{ width:44px; opacity:1; }
.gesa-about__point p{ margin-top:12px; font-size:14.5px; line-height:1.8; color:#8d8880; letter-spacing:.3px; }
@media(max-width:1024px){
  .gesa-about__head{ grid-template-columns:1fr; gap:40px; }
  .gesa-about__stat{ right:0; bottom:-18px; }
  .gesa-about__points{ margin-top:48px; grid-template-columns:1fr; }
  .gesa-about__point,.gesa-about__point:first-child{ border-left:0; padding:20px 0; }
  .gesa-about__point + .gesa-about__point{ border-top:1px solid #ece7de; }
}

  .rf-reasons{
    --bg:#0b0b0c;
    --gold:#c9a26b;
    --gold-lit:#e6c795;
    --text:#f0ece6;
    --dim:#8f8a83;
    --hair:rgba(255,255,255,.07);
  }
  
  

  .rf-reasons{position:relative;padding:var(--section-space) 0;overflow:hidden}
  .rf-reasons::before{
    content:"";position:absolute;top:-250px;left:50%;transform:translateX(-50%);
    width:920px;height:430px;
    background:radial-gradient(ellipse at center,rgba(201,162,107,.09) 0%,transparent 68%);
    pointer-events:none;
  }
  .rf-wrap{position:relative;max-width:var(--max);margin:0 auto;padding:0 40px}

  /* ---------- 报头：单行 editorial ---------- */
  .rf-head{
    display:flex;align-items:flex-end;justify-content:space-between;gap:40px;
    margin-bottom:40px;
  }
  .rf-head-left{min-width:0}
  .rf-tag{display:flex;flex-direction:column;gap:6px;padding-top:6px}
  .rf-tag .rf-idx{
    font-family:"Cormorant Garamond",serif;font-size:32px;font-weight:300;
    line-height:1;color:var(--gold);letter-spacing:.04em;
  }
  .rf-tag .rf-en{
    font-family:"Cormorant Garamond",serif;font-size:9.5px;font-weight:500;
    letter-spacing:.34em;color:var(--dim);text-transform:uppercase;
  }
  .rf-head h2{font-size:var(--heading-size);font-weight:600;line-height:1.35;letter-spacing:.02em;color:var(--ink)}
  .rf-head h2 em{font-style:normal;color:var(--gold-deep)}
  .rf-head > p{font-size:15px;line-height:1.9;color:var(--muted);max-width:340px;text-align:right;letter-spacing:.03em;flex-shrink:0}

  /* ---------- 图片磁贴：三列两行 ---------- */
  .rf-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;background:transparent}
  .rf-tile{position:relative;isolation:isolate;height:280px;overflow:hidden;cursor:default;color:var(--text)}
  .rf-tile img{
    position:absolute;inset:0;z-index:-3;
    width:100%;height:100%;object-fit:cover;
    filter:saturate(.9) brightness(.86) contrast(1.04);
    transform:scale(1.001);
    transition:transform .85s cubic-bezier(.22,.61,.36,1),filter .85s ease;
  }
  /* 压暗 + 暖金色调：保证深色 a风格统一、文字可读 */
  .rf-tile .rf-shade{
    position:absolute;inset:0;z-index:-2;
    background:
      linear-gradient(180deg,rgba(11,11,12,.20) 0%,rgba(11,11,12,.05) 36%,rgba(11,11,12,.90) 100%),
      linear-gradient(0deg,rgba(201,162,107,.12),rgba(201,162,107,0) 58%);
  }
  .rf-tile:is(:hover,:focus-visible) img{transform:scale(1.07);filter:saturate(1) brightness(.95) contrast(1.02)}

  /* 顶部金线 */
  .rf-tile .rf-topline{
    position:absolute;top:0;left:0;right:0;height:2px;z-index:3;
    background:linear-gradient(90deg,transparent,var(--gold-lit),transparent);
    transform:scaleX(0);transform-origin:center;
    transition:transform .55s cubic-bezier(.22,.61,.36,1);
  }
  .rf-tile:is(:hover,:focus-visible) .rf-topline{transform:scaleX(1)}

  /* 底部内容：大字少字 */
  .rf-tile .rf-body{
    position:absolute;left:24px;right:24px;bottom:24px;z-index:2;
    transition:transform .55s cubic-bezier(.22,.61,.36,1),bottom .55s cubic-bezier(.22,.61,.36,1);
  }
  .rf-tile:is(:hover,:focus-visible) .rf-body{transform:translateY(-6px);bottom:100px}
  .rf-no{
    display:flex;align-items:center;gap:10px;
    font-family:"Cormorant Garamond",serif;font-size:11px;font-weight:500;
    letter-spacing:.24em;color:rgba(230,199,149,.85);text-transform:uppercase;
  }
  .rf-no::before{content:"";width:18px;height:1px;background:var(--gold);opacity:.7}
  .rf-tile h3{
    margin-top:10px;font-size:26px;font-weight:900;letter-spacing:.2em;line-height:1;
    text-shadow:0 2px 18px rgba(0,0,0,.6);transition:color .5s ease;
  }
  .rf-tile:is(:hover,:focus-visible) h3{color:var(--gold-lit)}
  .rf-tile .rf-en{
    font-family:"Cormorant Garamond",serif;font-size:10px;font-weight:500;
    letter-spacing:.3em;color:rgba(240,236,230,.55);text-transform:uppercase;
    margin-top:9px;transition:color .5s ease;
  }
  .rf-tile:is(:hover,:focus-visible) .rf-en{color:rgba(230,199,149,.9)}

  /* 悬停浮出的描述 */
  .rf-desc{
    position:absolute;left:24px;right:24px;bottom:0;z-index:2;padding-top:10px;
    font-size:13px;line-height:1.8;letter-spacing:.02em;color:#cfc9bf;
    text-shadow:0 1px 12px rgba(0,0,0,.65);
    opacity:0;transform:translateY(10px);
    transition:opacity .45s ease .05s,transform .55s cubic-bezier(.22,.61,.36,1) .05s;
  }
  .rf-tile:is(:hover,:focus-visible) .rf-desc{opacity:1;transform:translateY(0);bottom:20px}

  /* ---------- 响应式 ---------- */
  @media (max-width:1100px){
    .rf-grid{grid-template-columns:repeat(3,1fr)}
    .rf-head{gap:24px}
    .rf-head p{display:none}
    .rf-tile{height:auto;min-height:280px;padding:22px 20px 26px;display:flex;flex-direction:column;justify-content:flex-end}
    .rf-tile .rf-body{position:static;margin-top:auto;padding:0}
    .rf-desc{position:static;opacity:1;transform:none;padding:14px 0 0}
    .rf-tile:is(:hover,:focus-visible) .rf-body{transform:none}
  }
  @media (max-width:680px){
    .rf-wrap{padding:0 20px}
    .rf-grid{grid-template-columns:repeat(2,1fr)}
    .rf-head{flex-direction:column;align-items:flex-start;gap:14px}
    .rf-tile{min-height:230px;padding:18px 16px 20px}
    .rf-tile h3{font-size:21px;letter-spacing:.14em}
    .rf-desc{font-size:12px}
  }

.rf-reasons{font-family:var(--serif);}
.rf-tile:focus-visible{outline:2px solid var(--gold-lit);outline-offset:-2px;}
@media(prefers-reduced-motion:reduce){.rf-reasons *{transition:none;}}

.logo{ display:flex; align-items:center; gap:14px; color:#fff; }
.nav .logo{ flex-shrink:0; }
.logo__image{ display:block; width:clamp(140px,16vw,220px); height:auto; object-fit:contain; }
.logo__mark{ width:38px; height:38px; color:var(--gold); flex:none; }
.logo__mark svg{ width:100%; height:100%; display:block; }
.logo__text{ display:flex; flex-direction:column; line-height:1.15; }
.logo__text strong{ font-family:var(--serif); font-size:20px; letter-spacing:.16em; font-weight:600; }
.logo__text em{
  font-style:normal; font-size:9.5px; letter-spacing:.24em;
  color:rgba(255,255,255,.6); margin-top:3px;
}

.nav__menu{ display:flex; gap:clamp(16px,1.8vw,30px); margin-left:auto; }
.nav__link{
  font-size:15px; color:rgba(255,255,255,.85); position:relative; padding:6px 0;
  transition:color .3s; white-space:nowrap;
}
.nav__link::after{
  content:""; position:absolute; left:0; bottom:0; height:1px; width:0;
  background:var(--gold); transition:width .4s var(--ease);
}
.nav__link:hover{ color:#fff; }
.nav__link:hover::after{ width:100%; }

.nav__right{ display:flex; align-items:center; gap:20px; flex-shrink:0; }
.nav__tel{
  display:flex; align-items:center; gap:8px; color:#fff;
  font-size:16px; font-weight:600; letter-spacing:.04em; font-family:var(--serif);
}
.nav__tel svg{ width:17px; height:17px; color:var(--gold); }

.nav__toggle{ display:none; width:30px; height:22px; position:relative; }
.nav__toggle span{
  position:absolute; left:0; width:100%; height:2px; background:#fff;
  transition:.35s var(--ease);
}
.nav__toggle span:nth-child(1){ top:0; }
.nav__toggle span:nth-child(2){ top:10px; }
.nav__toggle span:nth-child(3){ top:20px; }
.nav__toggle.on span:nth-child(1){ top:10px; transform:rotate(45deg); }
.nav__toggle.on span:nth-child(2){ opacity:0; }
.nav__toggle.on span:nth-child(3){ top:10px; transform:rotate(-45deg); }

/* 滚动态 */
.nav.is-solid{
  background:rgba(12,14,17,.94);
  backdrop-filter:blur(14px);
  box-shadow:0 1px 0 rgba(255,255,255,.07), 0 18px 40px -30px #000;
}
.nav.is-solid .nav__inner{ padding-top:14px; padding-bottom:14px; }

/* =========================================================
   首屏
   ========================================================= */
.hero{
  position:relative; min-height:100vh; display:flex; flex-direction:column;
  justify-content:center; overflow:hidden; color:#fff; background:var(--ink);
}
.hero__slides,.hero__slide{ position:absolute; inset:0; }
.hero__slide{ opacity:0; visibility:hidden; transition:opacity 1.1s var(--ease),visibility 1.1s; }
.hero__slides:not(.is-enhanced) .hero__slide:first-of-type{ opacity:1; visibility:visible; }
.hero__slide.is-active{ opacity:1; visibility:visible; }
.hero__slide img{ width:100%; height:100%; object-fit:cover; transform:scale(1.055); }
.hero.is-playing .hero__slide.is-active img{ animation:heroZoom 7s linear forwards; }
@keyframes heroZoom{ to{ transform:scale(1); } }
.hero__veil{
  position:absolute; inset:0;
  background:
    linear-gradient(105deg,rgba(8,10,12,.88) 0%,rgba(8,10,12,.6) 42%,rgba(8,10,12,.25) 70%,rgba(8,10,12,.45) 100%),
    linear-gradient(180deg,rgba(8,10,12,.5),transparent 30%,rgba(8,10,12,.75));
}
.hero__content{ position:relative; z-index:2; max-width:var(--max); width:100%; margin:0 auto; padding:clamp(118px,13vh,145px) 40px 48px; }
.hero__eyebrow{
  font-size:12px; letter-spacing:.34em; color:var(--gold);
  margin-bottom:28px; text-transform:uppercase;
}
.hero__title{
  font-size:clamp(42px,5.6vw,82px); line-height:1.18; color:#fff;
  font-weight:600; letter-spacing:.02em;
}
.hero__title span{ display:block; }
.hero__title em{ font-style:normal; color:var(--gold-2); }
.hero__desc{
  margin-top:34px; max-width:52ch; font-size:17.5px; line-height:1.95;
  color:rgba(255,255,255,.78);
}
.hero__actions{ margin-top:48px; display:flex; gap:18px; flex-wrap:wrap; }

.hero__stats{
  position:relative; z-index:2; margin-top:auto;
  max-width:var(--max); width:100%; margin-inline:auto; padding:0 40px 60px;
  display:grid; grid-template-columns:repeat(4,1fr); gap:20px;
  border-top:1px solid rgba(255,255,255,.14);
}
.hero__stat{ padding-top:34px; }
.hero__stat b{
  display:block; font-family:var(--serif); font-size:44px; font-weight:600;
  color:#fff; line-height:1; letter-spacing:.02em;
}
.hero__stat b:not(.no-plus)::after{ content:"+"; color:var(--gold); font-size:24px; margin-left:2px; }
.hero__stat span{ display:block; margin-top:12px; font-size:13.5px; letter-spacing:.14em; color:rgba(255,255,255,.55); }

.hero__side{
  position:absolute; right:40px; top:50%; transform:translateY(-50%); z-index:3;
  display:flex; flex-direction:column; align-items:center; gap:22px;
}
.hero__dots{ display:flex; flex-direction:column; gap:10px; }
.hero__dot{ width:30px; height:30px; padding:0; border:0; border-radius:50%; background:transparent; cursor:pointer; position:relative; }
.hero__dot::after{ content:""; position:absolute; inset:11px; border:1px solid rgba(255,255,255,.75); border-radius:50%; }
.hero__dot.is-active::after{ background:var(--gold); border-color:var(--gold); transform:scale(1.35); }
.hero__pause{ color:#fff; font-size:12px; padding:8px; border:1px solid rgba(255,255,255,.4); }
.hero__eyebrow{ display:flex; align-items:center; gap:14px; }
.hero__eyebrow i{ display:block; width:46px; height:1px; background:var(--gold); }

.hero__scroll{
  position:absolute; left:40px; bottom:24px; z-index:3;
  display:flex; align-items:center; gap:12px;
  font-size:10px; letter-spacing:.3em; color:rgba(255,255,255,.5);
}
.hero__scroll span{ display:block; width:56px; height:1px; background:rgba(255,255,255,.35); position:relative; overflow:hidden; }
.hero__scroll span::after{
  content:""; position:absolute; inset:0; background:var(--gold);
  animation:scrollLine 2.4s infinite var(--ease);
}
@keyframes scrollLine{ 0%{transform:translateX(-100%)} 60%,100%{transform:translateX(100%)} }

/* =========================================================
   品牌
   ========================================================= */
.about{ background:var(--paper); }
.about__grid{
  display:grid; grid-template-columns:1fr 1fr; gap:90px; align-items:center;
}
.about__media{ position:relative; }
.about__media .frame{ position:relative; overflow:hidden; }
.about__media .frame img{ width:100%; height:640px; object-fit:cover; transition:1.2s var(--ease); }
.about__media:hover .frame img{ transform:scale(1.05); }
.about__media .frame::after{
  content:""; position:absolute; inset:24px; border:1px solid rgba(255,255,255,.35);
  pointer-events:none;
}
.about__badge{
  position:absolute; right:-38px; bottom:-38px; width:158px; height:158px;
  background:linear-gradient(140deg,var(--gold-deep),var(--gold) 55%,var(--gold-2));
  display:flex; align-items:center; justify-content:center; gap:12px;
  color:#181409; box-shadow:0 30px 60px -24px rgba(0,0,0,.5);
}
.about__badge b{ font-family:var(--serif); font-size:52px; line-height:1; }
.about__badge span{ font-size:13px; line-height:1.5; letter-spacing:.1em; font-weight:600; }

.about__list{ margin-top:44px; display:grid; gap:26px; }
.about__list li{ display:flex; gap:20px; align-items:flex-start; }
.about__list i{
  font-style:normal; font-family:var(--serif); font-size:15px; color:var(--gold-deep);
  letter-spacing:.06em; padding-top:3px; flex:none;
}
.about__list b{ display:block; font-size:17px; color:var(--ink); font-family:var(--serif); }
.about__list span{ font-size:14.5px; color:var(--muted); }

/* =========================================================
   产品
   ========================================================= */
.products{ background:var(--paper-2); }
.pgrid{
  display:grid; grid-template-columns:repeat(3,1fr); gap:26px;
}
.pcard{
  background:#fff; overflow:hidden; position:relative;
  box-shadow:0 4px 24px -18px rgba(0,0,0,.35); transition:.5s var(--ease);
  display:flex; flex-direction:column;
}
.pcard:hover{ transform:translateY(-8px); box-shadow:0 34px 60px -30px rgba(0,0,0,.45); }
.pcard__img{ display:block; overflow:hidden; height:330px; flex:none; background:#f4f2ee; }
.pcard__img img{ width:100%; height:100%; object-fit:contain; }
.pcard__body{ padding:34px 34px 38px; display:flex; flex-direction:column; flex:1; }
.pcard__tag{
  font-size:10.5px; letter-spacing:.26em; color:var(--gold-deep); font-weight:600;
}
.pcard h3{ margin:14px 0 14px; font-size:22px; color:var(--ink); line-height:1.45; min-height:2.9em; display:-webkit-box; -webkit-box-orient:vertical; -webkit-line-clamp:2; overflow:hidden; overflow-wrap:anywhere; }
.pcard p{ font-size:14.5px; color:var(--muted); min-height:5.25em; display:-webkit-box; -webkit-box-orient:vertical; -webkit-line-clamp:3; overflow:hidden; }
.pcard .link-arrow{ margin-top:auto; padding-top:22px; }

.pcard--lg{ grid-row:span 2; }
.pcard--lg .pcard__img{ height:100%; min-height:520px; }
.pcard--lg .pcard__body{ justify-content:flex-end; }
.pcard--wide{ grid-column:span 2; }
.pcard--wide .pcard__img{ height:300px; }
.pcard--wide h3{ font-size:26px; }

/* =========================================================
   核心优势
   ========================================================= */
.advantage{
  padding:72px 0;
  background:
    radial-gradient(900px 520px at 20% 0%,rgba(201,160,99,.14),transparent 60%),
    linear-gradient(180deg,#12161a,#0b0e11);
  color:#fff;
}
.advantage .sec-head{ gap:16px; margin-bottom:38px; }
.advantage .kicker{ margin-bottom:16px; }
.agrid{
  display:grid; grid-template-columns:repeat(3,1fr);
  border-top:1px solid var(--line-light); border-left:1px solid var(--line-light);
}
.aitem{
  padding:30px 34px; border-right:1px solid var(--line-light);
  border-bottom:1px solid var(--line-light); transition:.5s var(--ease);
  position:relative; overflow:hidden;
}
.aitem::before{
  content:""; position:absolute; inset:auto 0 0 0; height:2px; background:var(--gold);
  transform:scaleX(0); transform-origin:left; transition:.5s var(--ease);
}
.aitem:hover::before{ transform:scaleX(1); }
.aitem:hover{ background:rgba(255,255,255,.035); }
.aitem__icon{
  width:46px; height:46px; color:var(--gold); margin-bottom:18px;
  display:flex; align-items:center; justify-content:center;
  border:1px solid rgba(201,160,99,.35); border-radius:50%;
}
.aitem__icon svg{ width:26px; height:26px; }
.aitem h3{ font-size:20px; margin-bottom:12px; }
.aitem p{ font-size:14.5px; color:rgba(255,255,255,.6); }

/* =========================================================
   案例
   ========================================================= */
.cases{ background:var(--paper); }
.tabs{ display:flex; gap:10px; flex-wrap:wrap; }
.tab{
  padding:10px 24px; border:1px solid var(--line); font-size:14px; color:var(--muted);
  border-radius:100px; transition:.35s var(--ease);
}
.tab:hover{ border-color:var(--gold); color:var(--gold-deep); }
.tab.is-active{ background:var(--ink); border-color:var(--ink); color:#fff; }

.cgrid{
  display:grid; grid-template-columns:repeat(3,1fr); gap:24px;
  grid-auto-rows:260px;
}
.ccase{
  margin:0; position:relative; overflow:hidden; background:#111;
  grid-row:span 1; grid-column:span 1;
}
.ccase--tall{ grid-row:span 2; }
.ccase--wide{ grid-column:span 2; }
.cgrid.is-filtered .ccase{ grid-column:span 1; grid-row:span 1; }
.ccase img{
  width:100%; height:100%; object-fit:cover; transition:1.1s var(--ease);
}
.ccase:hover img{ transform:scale(1.08); }
.ccase figcaption{
  position:absolute; inset:auto 0 0 0; padding:34px 32px; color:#fff; z-index:2;
  background:linear-gradient(180deg,transparent,rgba(6,8,10,.9));
  transform:translateY(0); transition:.5s var(--ease);
}
.ccase__caption{
  position:absolute; inset:auto 0 0 0; z-index:2; display:block; padding:34px 32px;
  color:#fff; background:linear-gradient(180deg,transparent,rgba(6,8,10,.9));
}
.ccase__caption strong{ display:-webkit-box; -webkit-box-orient:vertical; -webkit-line-clamp:2; overflow:hidden; margin:10px 0 6px; font-family:var(--serif); font-size:21px; font-weight:600; line-height:1.4; }
.ccase__desc{ display:-webkit-box; -webkit-box-orient:vertical; -webkit-line-clamp:2; overflow:hidden; color:rgba(255,255,255,.8); font-size:13.5px; }
.ccase__cat{
  font-size:11px; letter-spacing:.2em; color:var(--gold); font-weight:600;
}
.ccase h3{ font-size:21px; margin:10px 0 6px; }
.ccase p{ font-size:13.5px; color:rgba(255,255,255,.62); }
.ccase.is-hidden{ display:none; }

/* =========================================================
   服务流程
   ========================================================= */
.service{ padding-bottom:52px; background:var(--paper-2); }
.steps{
  display:grid; grid-template-columns:repeat(6,1fr); gap:0;
  border-top:1px solid var(--line);
}
.step{ padding:44px 28px 0; position:relative; }
.step::before{
  content:""; position:absolute; top:-5px; left:0; width:9px; height:9px;
  border-radius:50%; background:var(--paper-2); border:2px solid var(--gold);
}
.step__n{
  display:block; font-family:var(--serif); font-size:34px; color:var(--gold-deep);
  opacity:.42; line-height:1; margin-bottom:18px;
}
.step h3{ font-size:18px; margin-bottom:10px; color:var(--ink); }
.step p{ font-size:13.5px; color:var(--muted); line-height:1.85; }

/* =========================================================
   客户之声
   ========================================================= */
.voices{ background:var(--paper); }
.vgrid{ display:grid; grid-template-columns:repeat(3,1fr); gap:26px; }
.vcard{
  margin:0; padding:46px 40px; background:#fff; position:relative;
  box-shadow:0 4px 26px -20px rgba(0,0,0,.4);
}
.vcard::before{
  content:"“"; position:absolute; top:18px; left:26px;
  font-family:var(--serif); font-size:66px; color:var(--gold); opacity:.28; line-height:1;
}
.vcard p{ font-size:16px; color:var(--text); line-height:1.95; position:relative; }
.vcard footer{ margin-top:28px; padding-top:20px; border-top:1px solid var(--line); }
.vcard b{ display:block; font-size:15px; color:var(--ink); }
.vcard span{ font-size:13px; color:var(--muted); }

.marquee{ margin-top:80px; overflow:hidden; position:relative; }
.marquee::before,.marquee::after{
  content:""; position:absolute; top:0; width:120px; height:100%; z-index:2;
}
.marquee::before{ left:0; background:linear-gradient(90deg,var(--paper),transparent); }
.marquee::after{ right:0; background:linear-gradient(270deg,var(--paper),transparent); }
.marquee__track{
  display:flex; gap:70px; width:max-content;
  animation:marquee 32s linear infinite;
}
.marquee__track span{
  font-family:var(--serif); font-size:20px; color:#b9b2a6; letter-spacing:.12em;
  white-space:nowrap;
}
@keyframes marquee{ to{ transform:translateX(-50%); } }

/* =========================================================
   CTA
   ========================================================= */
.cta{ position:relative; padding:var(--section-space) 0; color:#fff; overflow:hidden; }
.cta__bg{ position:absolute; inset:0; }
.cta__bg img{ width:100%; height:100%; object-fit:cover; }
.cta__veil{
  position:absolute; inset:0;
  background:linear-gradient(115deg,rgba(9,11,13,.94) 30%,rgba(9,11,13,.72) 70%,rgba(9,11,13,.86));
}
.cta__grid{
  position:relative; z-index:2;
}
.cta__text{ text-align:center; }
.cta__text .lead{ max-width:700px; margin-right:auto; margin-left:auto; }
.cta__text .kicker{ justify-content:center; }
.cta__actions{ margin-top:30px; display:flex; justify-content:center; flex-wrap:wrap; gap:16px; }
.cta__info{ margin-top:54px; display:grid; grid-template-columns:repeat(6,1fr); border-top:1px solid rgba(255,255,255,.14); border-bottom:1px solid rgba(255,255,255,.14); text-align:left; }
.cta__info li{ grid-column:span 2; min-width:0; padding:28px 30px; border-right:1px solid rgba(255,255,255,.12); border-bottom:1px solid rgba(255,255,255,.12); }
.cta__info li:nth-child(3){ border-right:0; }
.cta__info li:nth-child(4),.cta__info li:nth-child(5){ grid-column:span 3; border-bottom:0; }
.cta__info li:nth-child(5){ border-right:0; }
.cta__info b{ display:block; font-size:13px; letter-spacing:.16em; color:var(--gold); font-weight:600; margin-bottom:6px; }
.cta__info span{ font-size:16px; font-family:var(--serif); }

/* =========================================================
   页脚
   ========================================================= */
.footer{ background:var(--ink); color:rgba(255,255,255,.7); padding:0; }
.footer__grid{
  display:grid; grid-template-columns:1fr 1fr 1.4fr; gap:50px;
  padding:40px 0; border-bottom:1px solid rgba(255,255,255,.1);
}
.footer__brand{ display:none; }
.logo--footer .logo__text em{ color:rgba(255,255,255,.42); }
.footer__brand p{ margin-top:24px; font-size:14px; line-height:1.9; max-width:42ch; }
.footer__col h4{ font-size:15px; color:#fff; margin-bottom:20px; letter-spacing:.08em; }
.footer__col a,.footer__col span{ display:block; font-size:14px; margin-bottom:12px; transition:.3s; }
.footer__col a:hover{ color:var(--gold); }
.footer__bottom{
  max-width:var(--max); margin:0 auto; padding:26px 40px;
  display:flex; justify-content:space-between; gap:20px; flex-wrap:wrap;
  font-size:12.5px; color:rgba(255,255,255,.4);
}

/* =========================================================
   悬浮工具
   ========================================================= */
.float-book{
  position:fixed; right:26px; bottom:120px; z-index:90;
  width:66px; height:66px; border-radius:50%;
  background:linear-gradient(140deg,var(--gold-deep),var(--gold) 60%,var(--gold-2));
  color:#1a1509; font-size:13px; font-weight:700; line-height:1.3;
  display:flex; align-items:center; justify-content:center; text-align:center;
  box-shadow:0 18px 34px -14px rgba(0,0,0,.5); transition:.4s var(--ease);
  letter-spacing:.04em;
}
.float-book:hover{ transform:translateY(-4px) scale(1.05); }
.to-top{
  position:fixed; right:32px; bottom:40px; z-index:90;
  width:52px; height:52px; border-radius:50%;
  background:rgba(14,17,20,.85); color:#fff; font-size:18px;
  border:1px solid rgba(255,255,255,.18);
  opacity:0; pointer-events:none; transition:.4s var(--ease);
}
.to-top.show{ opacity:1; pointer-events:auto; }
.to-top:hover{ background:var(--gold); color:#16130c; border-color:var(--gold); }

/* =========================================================
   动效
   ========================================================= */
.reveal{
  transition:opacity .9s var(--ease), translate .9s var(--ease);
  transition-delay:var(--d,0s);
}
.reveal.is-pending{ opacity:0; translate:0 34px; }
.reveal.in{ opacity:1; translate:0 0; }
.hero-animate{ opacity:1; transform:none; }
.hero.is-playing .hero-animate{ animation:heroReveal .85s var(--ease) var(--d,0s) both; }
@keyframes heroReveal{ from{ opacity:0; transform:translateY(30px); } to{ opacity:1; transform:none; } }

@media (prefers-reduced-motion:reduce){
  *{ animation:none !important; transition:none !important; scroll-behavior:auto !important; }
  .reveal.is-pending,.hero-animate{ opacity:1; transform:none; translate:none; }
}

/* ---------- 顶部阅读进度条 ---------- */
.progress{
  position:fixed; top:0; left:0; height:2px; width:0; z-index:120;
  background:linear-gradient(90deg,var(--gold-deep),var(--gold) 50%,var(--gold-2));
  transition:width .1s linear;
}

/* ---------- 章节序号 ---------- */
.kicker{ display:flex; align-items:center; gap:12px; }
.kicker .no{
  font-family:var(--serif); font-size:11px; font-weight:600; letter-spacing:.1em;
  color:var(--gold); border:1px solid rgba(201,160,99,.45);
  padding:3px 7px; line-height:1; font-style:normal;
}
.kicker--gold .no{ color:var(--gold-2); border-color:rgba(230,207,161,.4); }
.sec-head--center .kicker{ justify-content:center; }

/* ---------- 竖排英文标 ---------- */
.vlabel{
  writing-mode:vertical-rl; font-size:10px; letter-spacing:.34em;
  color:rgba(255,255,255,.55); text-transform:uppercase;
}
.vline{ display:block; width:1px; height:76px; background:linear-gradient(180deg,rgba(201,160,99,.9),transparent); }

/* ---------- 免责说明 ---------- */
.disclaim{
  margin-top:34px; font-size:12.5px; color:var(--muted); letter-spacing:.02em;
  padding-left:16px; border-left:2px solid rgba(201,160,99,.5);
}
.disclaim--light{ color:rgba(255,255,255,.42); margin-top:44px; text-align:center; border:0; padding:0; }

/* =========================================================
   发展历程
   ========================================================= */
.timeline{
  margin-top:100px; display:grid; grid-template-columns:repeat(4,1fr);
  border-top:1px solid var(--line);
}
.tl{ padding:40px 34px 0 0; position:relative; }
.tl::before{
  content:""; position:absolute; top:-5px; left:0; width:9px; height:9px; border-radius:50%;
  background:var(--paper); border:2px solid var(--gold);
}
.tl b{
  display:block; font-family:var(--serif); font-size:28px; color:var(--gold-deep);
  letter-spacing:.02em; line-height:1; margin-bottom:16px;
}
.tl h4{ font-size:17px; color:var(--ink); margin-bottom:10px; }
.tl p{ font-size:13.5px; color:var(--muted); line-height:1.85; }

/* =========================================================
   精工制造 / 生产基地
   ========================================================= */
.mfg{ background:var(--paper); }
.mgrid{ display:grid; grid-template-columns:repeat(4,1fr); gap:20px; }
.mitem{
  border:1px solid var(--line); padding:34px 28px; background:#fff;
  display:flex; align-items:center; justify-content:center; text-align:center;
  min-height:132px; transition:.45s var(--ease); position:relative; overflow:hidden;
}
.mitem::after{
  content:""; position:absolute; inset:0; border:1px solid var(--gold);
  opacity:0; transition:.45s var(--ease);
}
.mitem span{ font-family:var(--serif); font-size:17px; color:var(--ink); position:relative; }
.mitem:hover{ background:var(--ink); }
.mitem:hover span{ color:#fff; }
.mitem:hover::after{ opacity:1; inset:8px; }

/* =========================================================
   品牌资质
   ========================================================= */
.qualification{
  padding:64px 0;
  background:
    radial-gradient(760px 420px at 90% 0%,rgba(201,160,99,.16),transparent 62%),
    linear-gradient(180deg,#f4f0e9,#ebe5dc);
  color:var(--ink);
}
.qhead{ display:flex; align-items:flex-end; justify-content:space-between; gap:40px; padding-bottom:24px; margin-bottom:28px; border-bottom:1px solid rgba(23,25,28,.18); }
.qhead__desc{ margin-top:18px; color:var(--muted); font-size:15px; }
.qmore{ flex:none; padding-bottom:6px; border-bottom:1px solid var(--gold-deep); color:var(--ink); font-size:13px; letter-spacing:.1em; }
.qmore span{ margin-left:14px; color:var(--gold-deep); }
.qcarousel{ position:relative; padding:0 58px; }
.qviewport{ overflow-x:auto; scroll-snap-type:x mandatory; scroll-behavior:smooth; scrollbar-width:none; }
.qviewport::-webkit-scrollbar{ display:none; }
.qtrack{ display:flex; gap:18px; }
.qcard{
  flex:0 0 calc((100% - 54px)/4); min-width:0; scroll-snap-align:start;
  padding:8px; border:1px solid rgba(23,25,28,.1); cursor:zoom-in;
  background:rgba(255,255,255,.72); transition:.45s var(--ease);
}
.qcard:hover{ background:#fff; border-color:rgba(160,113,54,.45); transform:translateY(-5px); box-shadow:0 22px 42px -30px rgba(44,34,22,.55); }
.qcard__image{
  display:block; height:220px; padding:10px; overflow:hidden;
  background:#f8f6f1;
}
.qcard__image img{ width:100%; height:100%; object-fit:contain; transition:transform .55s var(--ease); }
.qcard:hover .qcard__image img{ transform:scale(1.025); }
.qpreview{ position:fixed; inset:0; margin:auto; width:fit-content; min-width:min(320px,92vw); min-height:160px; max-width:92vw; max-height:90vh; padding:56px 16px 16px; border:0; background:#fff; overflow:auto; }
.qpreview__status{ padding:24px 8px; text-align:center; color:var(--muted); }
.qpreview::backdrop{ background:rgba(0,0,0,.82); backdrop-filter:blur(5px); }
.qpreview__image{ display:block; max-width:calc(92vw - 32px); max-height:calc(90vh - 72px); width:auto; height:auto; object-fit:contain; margin:auto; }
.qpreview__close{ position:absolute; top:8px; right:8px; width:40px; height:40px; padding:0; border:1px solid rgba(255,255,255,.5); border-radius:50%; background:rgba(0,0,0,.75); color:#fff; font-size:0; line-height:1; cursor:pointer; }
.qpreview__close::before,.qpreview__close::after{ content:""; position:absolute; top:50%; left:50%; width:16px; height:2px; border-radius:1px; background:currentColor; transform:translate(-50%,-50%) rotate(45deg); }
.qpreview__close::after{ transform:translate(-50%,-50%) rotate(-45deg); }
.qpreview__close:focus-visible,.qnav:focus-visible{ outline:3px solid var(--gold); outline-offset:3px; }
.qnav{
  position:absolute; top:50%; z-index:2; width:42px; height:42px; padding:0;
  border:1px solid rgba(23,25,28,.18); border-radius:50%; background:rgba(255,255,255,.8);
  color:var(--ink); font-size:26px; line-height:1; cursor:pointer; transform:translateY(-50%); transition:.3s var(--ease);
}
.qnav:hover{ background:var(--gold); border-color:var(--gold); }
.qnav:disabled{ opacity:.3; cursor:default; background:rgba(255,255,255,.8); border-color:rgba(23,25,28,.18); }
.qnav--prev{ left:0; }
.qnav--next{ right:0; }

/* =========================================================
   新闻资讯
   ========================================================= */
.news{ padding-top:64px; background:var(--paper-2); }
.ngrid{ display:grid; grid-template-columns:repeat(3,1fr); gap:26px; }
.ncard{
  background:#fff; padding:40px 36px; border-top:2px solid var(--gold);
  transition:.45s var(--ease); box-shadow:0 4px 24px -20px rgba(0,0,0,.35);
}
.ncard:hover{ transform:translateY(-6px); box-shadow:0 30px 50px -30px rgba(0,0,0,.4); }
.ncard__date{ font-size:12px; letter-spacing:.2em; color:var(--muted); }
.ncard h3{ font-size:19px; margin:16px 0 14px; line-height:1.55; color:var(--ink); }
.ncard p{ font-size:14.5px; color:var(--muted); margin-bottom:20px; }

/* =========================================================
   招商加盟
   ========================================================= */
.join{
  padding:var(--section-space) 0; color:#fff; position:relative; overflow:hidden;
  background:linear-gradient(115deg,#12161a 0%,#1d2126 45%,#2b2620 100%);
}
.join::before{
  content:""; position:absolute; right:-120px; top:-120px; width:460px; height:460px;
  border:1px solid rgba(201,160,99,.22); border-radius:50%;
}
.join__inner{
  position:relative; display:flex; align-items:center; justify-content:space-between;
  gap:70px; flex-wrap:wrap;
}
.join__text{ max-width:62ch; }
.join__text .lead--light{ margin-top:22px; color:rgba(255,255,255,.72); font-size:16.5px; line-height:1.9; }
.join__cta{ display:flex; flex-direction:column; align-items:flex-start; gap:20px; }
.join__tel{
  font-family:var(--serif); font-size:clamp(30px,3.4vw,46px); color:var(--gold);
  letter-spacing:.04em; font-weight:600;
}

/* 产品角标 */
.pcard__img{ position:relative; }.pcard__flag{
  position:absolute; top:18px; left:18px; z-index:2;
  background:var(--ink); color:#fff; font-size:10.5px; letter-spacing:.2em;
  padding:6px 12px; font-weight:600;
}
.pcard__flag--hot{ background:linear-gradient(120deg,var(--gold-deep),var(--gold)); color:#1a1509; }

/* 优势英文小标 */
.aitem__en{
  display:block; font-size:10.5px; letter-spacing:.24em; color:rgba(255,255,255,.38);
  margin-bottom:8px;
}

/* ---------- 关于：首段 ---------- */
.drop{ font-size:17px; color:var(--muted); line-height:2; margin-bottom:38px; }

/* ---------- 主推产品（编辑式） ---------- */
.pfeature{
  display:grid; grid-template-columns:1.1fr .9fr; background:#fff;
  box-shadow:0 4px 26px -20px rgba(0,0,0,.4); margin-bottom:26px; overflow:hidden;
}
.pfeature__img{ display:block; position:relative; overflow:hidden; }
.pfeature__img img{ width:100%; height:100%; min-height:520px; object-fit:cover; transition:1.1s var(--ease); }
.pfeature:hover .pfeature__img img{ transform:scale(1.05); }
.pfeature__body{ padding:56px 54px; display:flex; flex-direction:column; justify-content:center; }
.pfeature__body h3{ font-size:clamp(24px,2.4vw,34px); margin:14px 0 18px; color:var(--ink); line-height:1.4; }
.pfeature__body > p{ font-size:15px; color:var(--muted); line-height:1.95; }

.spec{ margin:30px 0 34px; border-top:1px solid var(--line); }
.spec > div{
  display:flex; align-items:baseline; gap:20px; padding:13px 0;
  border-bottom:1px solid var(--line);
}
.spec dt{ width:62px; flex:none; font-size:13px; letter-spacing:.16em; color:var(--muted); }
.spec dd{ margin:0; font-size:15.5px; color:var(--ink); font-family:var(--serif); }

.pcard__tag-alone{
  position:absolute; right:18px; top:18px; z-index:2; font-size:11px; letter-spacing:.2em;
  color:var(--ink); background:rgba(255,255,255,.9); padding:6px 12px; font-weight:600;
}

/* ---------- 案例 VIEW ---------- */
.ccase__view{
  position:absolute; top:50%; left:50%; transform:translate(-50%,-50%) scale(.9); z-index:3;
  width:96px; height:96px; border-radius:50%; border:1px solid rgba(255,255,255,.75);
  display:flex; align-items:center; justify-content:center;
  font-size:11px; letter-spacing:.28em; color:#fff;
  opacity:0; transition:.5s var(--ease); backdrop-filter:blur(2px);
}
.ccase:hover .ccase__view{ opacity:1; transform:translate(-50%,-50%) scale(1); }
.ccase::after{
  content:""; position:absolute; inset:0; z-index:2;
  background:linear-gradient(180deg,rgba(8,10,12,.15),rgba(8,10,12,.55));
  opacity:0; transition:.5s var(--ease);
}
.ccase:hover::after{ opacity:1; }

/* ---------- 新闻列表 ---------- */
.nlist{ border-top:1px solid var(--line); }
.nlist li{ border-bottom:1px solid var(--line); }
.nlist a{
  display:grid; grid-template-columns:140px 1fr 40px; align-items:center; gap:20px;
  padding:30px 4px; transition:.4s var(--ease);
}
.nlist a:hover{ padding-left:16px; background:rgba(201,160,99,.06); }
.nlist__date{ font-size:13px; letter-spacing:.12em; color:var(--muted); }
.nlist__title{ font-family:var(--serif); font-size:19px; color:var(--ink); }
.nlist__arrow{ text-align:right; color:var(--gold-deep); transition:transform .4s var(--ease); }
.nlist a:hover .nlist__arrow{ transform:translateX(6px); }

/* ---------- 页脚顶部品牌区 ---------- */
.footer__top{
  padding:44px 0 32px; border-bottom:1px solid rgba(255,255,255,.1);
  display:flex; align-items:flex-end; justify-content:space-between; gap:40px; flex-wrap:wrap;
}
.footer__mark{ display:flex; flex-direction:column; gap:14px; }
.footer__word{
  font-family:var(--serif); font-size:clamp(38px,5vw,64px); color:#fff;
  letter-spacing:.16em; line-height:1;
}
.footer__en{ font-size:11px; letter-spacing:.34em; color:var(--gold); }
.footer__slogan{ font-family:var(--serif); font-size:18px; color:rgba(255,255,255,.6); letter-spacing:.06em; }
.footer__col--wide .footer__tel{
  font-family:var(--serif); font-size:24px; color:var(--gold); margin-bottom:6px;
}

/* =========================================================
   响应式
   ========================================================= */
@media (max-width:1280px){
  .nav__inner{ justify-content:space-between; }
  .nav.is-enhanced .nav__menu{ display:flex; position:fixed; inset:0; background:rgba(10,12,15,.98);
    flex-direction:column; align-items:center; justify-content:center; gap:clamp(16px,3vh,30px); padding:90px 24px 24px; overflow-y:auto;
    opacity:0; visibility:hidden; pointer-events:none; transform:translateY(-12px); transition:.3s var(--ease); }
  .nav.is-enhanced .nav__menu.open{ opacity:1; visibility:visible; pointer-events:auto; transform:none; }
  .nav.is-menu-open{ backdrop-filter:none; background:transparent; }
  .nav .logo,.nav__right{ position:relative; z-index:1; }
  .nav:not(.is-enhanced){ position:relative; background:var(--ink); }
  .nav:not(.is-enhanced) .nav__inner{ flex-wrap:wrap; }
  .nav:not(.is-enhanced) .nav__menu{ order:3; width:100%; margin:0; flex-wrap:wrap; }
  .nav:not(.is-enhanced) .nav__toggle{ display:none; }
  .nav__toggle{ display:block; width:36px; height:32px; }
  .nav__tel span{ display:none; }
}
@media (max-width:1100px){
  .wrap{ padding:0 30px; }
  .nav__menu .nav__link{ font-size:22px; font-family:var(--serif); }
  .nav__toggle{ display:block; }
  .nav__tel span{ display:none; }
  .hero__content,.hero__stats{ padding-left:30px; padding-right:30px; }
  .hero__content{ padding-top:116px; padding-bottom:40px; }
  .hero__title{ font-size:clamp(42px,7vw,66px); }
  .about__grid{ grid-template-columns:1fr; gap:70px; }
  .about__media .frame img{ height:460px; }
  .pgrid{ grid-template-columns:repeat(2,1fr); }
  .pcard--lg{ grid-row:span 1; }
  .pcard--lg .pcard__img{ height:320px; min-height:0; }
  .agrid{ grid-template-columns:repeat(2,1fr); }
  .cgrid{ grid-template-columns:repeat(2,1fr); }
  .ccase--wide{ grid-column:span 2; }
  .steps{ grid-template-columns:repeat(3,1fr); }
  .step{ padding-bottom:32px; }
  .vgrid{ grid-template-columns:1fr; }
  .cta__info{ grid-template-columns:1fr; }
  .cta__info li,.cta__info li:nth-child(4),.cta__info li:nth-child(5){ grid-column:auto; border-right:0; border-bottom:1px solid rgba(255,255,255,.12); }
  .cta__info li:last-child{ border-bottom:0; }
  .footer__grid{ grid-template-columns:1fr 1fr; }
  .timeline{ grid-template-columns:repeat(2,1fr); margin-top:70px; }
  .tl{ padding-bottom:30px; }
  .mgrid{ grid-template-columns:repeat(2,1fr); }
  .qcard{ flex-basis:calc((100% - 36px)/3); }
  .ngrid{ grid-template-columns:1fr; }
  .join__inner{ flex-direction:column; align-items:flex-start; gap:44px; }
  .hero__side{ display:none; }
  .pfeature{ grid-template-columns:1fr; }
  .pfeature__img img{ min-height:0; height:400px; }
  .pfeature__body{ padding:44px 34px; }
  .nlist a{ grid-template-columns:110px 1fr 30px; }
  .footer__top{ flex-direction:column; align-items:flex-start; gap:26px; padding:36px 0 28px; }
}

@media (max-width:680px){
  :root{ --section-space:64px; }
  .section{ padding:var(--section-space) 0; }
  .service{ padding-bottom:42px; }
  .news{ padding-top:52px; }
  .hero{ min-height:92vh; }
  .hero__content{ padding-top:104px; padding-bottom:34px; }
  .hero__title{ font-size:clamp(38px,11vw,54px); line-height:1.2; }
  .hero__stats{ grid-template-columns:repeat(2,1fr); gap:26px; padding-bottom:44px; }
  .hero__stat b{ font-size:34px; }
  .hero__scroll{ display:none; }
  .sec-head{ flex-direction:column; align-items:flex-start; gap:26px; margin-bottom:44px; }
  .pgrid,.agrid,.cgrid,.vgrid,.steps,.footer__grid{ grid-template-columns:1fr; }
  .timeline,.mgrid{ grid-template-columns:1fr; }
  .qhead{ align-items:flex-start; flex-direction:column; gap:24px; margin-bottom:32px; }
  .qcarousel{ padding:0 46px; }
  .qcard{ flex-basis:100%; }
  .qualification{ padding:48px 0; }
  .qcard__image{ height:240px; }
  .nlist a{ grid-template-columns:1fr; gap:8px; padding:22px 4px; }
  .nlist__title{ font-size:17px; }
  .pfeature__body{ padding:34px 24px; }
  .spec > div{ gap:14px; }
  .footer__word{ letter-spacing:.1em; }
  .ccase--wide,.ccase--tall{ grid-column:span 1; grid-row:span 1; }
  .cgrid{ grid-auto-rows:230px; }
  .about__badge{ right:0; bottom:-30px; width:126px; height:126px; }
  .about__badge b{ font-size:40px; }
  .footer__bottom{ padding:24px 30px; }
  .nav__right{ gap:14px; }
  .nav__right > .btn{ display:none; }
  .pcard__body{ padding:26px; }
  .cta__info li{ padding:22px 0; }
  .cta__info span{ overflow-wrap:anywhere; }
}
