/* ============================================================
   FIVER — Editorial minimal redesign
   ============================================================ */
:root{
  --bg:#ffffff;
  --fg:#0d0d0d;
  --muted:#7a7a7a;
  --soft:#f4f3f1;
  --line:#e4e2df;
  --red:#c8102e;
  --denim:#2f4a6d;
  --display:'Didot','Bodoni MT','Playfair Display',Georgia,'Times New Roman',serif;
  --sans:'Helvetica Neue',Helvetica,Arial,'Segoe UI',sans-serif;
  --ease:cubic-bezier(.22,.61,.36,1);
}
*{margin:0;padding:0;box-sizing:border-box}
html{scroll-behavior:smooth}
html,body{overflow-x:hidden;max-width:100%}
body{
  background:var(--bg);color:var(--fg);
  font-family:var(--sans);
  font-size:16px;line-height:1.65;
  -webkit-font-smoothing:antialiased;
  letter-spacing:.01em;
}
img{max-width:100%;display:block}
a{color:inherit;text-decoration:none}
.wrap{max-width:1240px;margin:0 auto;padding:0 32px}
.eyebrow{font-size:11px;letter-spacing:.28em;text-transform:uppercase;color:var(--muted)}
.display{font-family:var(--display);font-weight:400;line-height:1.02;letter-spacing:-.01em}

/* ---------- Header ---------- */
header.site{
  position:fixed;top:0;left:0;right:0;z-index:100;
  background:rgba(255,255,255,.86);
  backdrop-filter:saturate(180%) blur(14px);
  -webkit-backdrop-filter:saturate(180%) blur(14px);
  border-bottom:1px solid transparent;
  transition:border-color .3s var(--ease),background .3s var(--ease);
}
header.site.scrolled{border-bottom-color:var(--line)}
.nav{display:flex;align-items:center;justify-content:space-between;height:72px}
.brand{display:flex;align-items:center;gap:12px}
.brand img.crest{height:34px;width:auto}
.brand img.brandlogo{height:44px;width:auto;display:block}
.brand .word{font-family:var(--display);font-size:30px;letter-spacing:.02em;line-height:1}
.brand .est{font-size:9px;letter-spacing:.3em;color:var(--muted);text-transform:uppercase}
.menu{display:flex;align-items:center;gap:34px}
.menu a{
  font-size:11.5px;letter-spacing:.2em;text-transform:uppercase;color:#3a3a3a;
  position:relative;padding:4px 0;transition:color .25s var(--ease);
}
.menu a::after{
  content:"";position:absolute;left:0;bottom:-2px;height:1px;width:0;background:var(--fg);
  transition:width .3s var(--ease);
}
.menu a:hover{color:var(--fg)}
.menu a:hover::after,.menu a.active::after{width:100%}
.menu a.active{color:var(--fg)}
.lang{display:flex;gap:8px;font-size:11px;letter-spacing:.15em;color:var(--muted)}
.lang button{background:none;border:none;font:inherit;cursor:pointer;color:var(--muted);padding:2px 3px}
.lang button.on{color:var(--fg);font-weight:700}
.burger{display:none;flex-direction:column;gap:5px;background:none;border:none;cursor:pointer;padding:8px}
.burger span{width:24px;height:1.6px;background:var(--fg);display:block;transition:.3s var(--ease)}

/* ---------- Hero ---------- */
.hero{position:relative;height:100vh;min-height:620px;display:flex;align-items:flex-end;overflow:hidden;background:#111}
.hero .bg{position:absolute;inset:0;background-size:cover;background-position:center 30%;transform:scale(1.06);animation:kenburns 18s var(--ease) forwards;filter:brightness(.66) contrast(1.05) saturate(.96)}
@keyframes kenburns{to{transform:scale(1)}}
.hero .veil{position:absolute;inset:0;background:linear-gradient(180deg,rgba(0,0,0,.5) 0%,rgba(0,0,0,.12) 38%,rgba(0,0,0,.82) 100%)}
.hero h1{text-shadow:0 2px 40px rgba(0,0,0,.35)}
.hero .inner{position:relative;z-index:2;color:#fff;padding-bottom:80px;width:100%}
.hero h1{font-family:var(--display);font-size:clamp(64px,15vw,220px);line-height:.86;letter-spacing:-.015em;margin:0}
.hero .tag{margin-top:14px;font-size:12px;letter-spacing:.42em;text-transform:uppercase;opacity:.92}
.hero .cta{margin-top:38px;display:flex;gap:16px;flex-wrap:wrap}
.hero .scroll{position:absolute;bottom:26px;right:32px;z-index:2;color:#fff;font-size:10px;letter-spacing:.3em;text-transform:uppercase;writing-mode:vertical-rl;opacity:.7}

/* ---------- Buttons ---------- */
.btn{
  display:inline-flex;align-items:center;gap:10px;
  font-size:11.5px;letter-spacing:.2em;text-transform:uppercase;
  padding:15px 30px;border:1px solid var(--fg);color:var(--fg);background:none;cursor:pointer;
  transition:background .3s var(--ease),color .3s var(--ease);
}
.btn:hover{background:var(--fg);color:#fff}
.btn.light{border-color:rgba(255,255,255,.85);color:#fff}
.btn.light:hover{background:#fff;color:var(--fg)}
.btn.solid{background:var(--fg);color:#fff}
.btn.solid:hover{background:transparent;color:var(--fg)}

/* ---------- Marquee ---------- */
.marquee{border-top:1px solid var(--line);border-bottom:1px solid var(--line);overflow:hidden;padding:20px 0;background:var(--bg)}
.marquee .track{display:flex;gap:60px;white-space:nowrap;animation:slide 26s linear infinite;width:max-content}
.marquee span{font-family:var(--display);font-size:22px;letter-spacing:.06em;color:#1a1a1a}
.marquee span i{color:rgba(0,0,0,.4);font-style:normal}
@keyframes slide{to{transform:translateX(-50%)}}

/* ---------- Sections ---------- */
section.pad{padding:120px 0}
.sec-head{display:flex;justify-content:space-between;align-items:flex-end;gap:30px;margin-bottom:56px;flex-wrap:wrap}
.sec-head h2{font-family:var(--display);font-size:clamp(34px,5vw,62px);line-height:1.02;letter-spacing:-.01em}
.sec-head p{max-width:420px;color:var(--muted);font-size:15px}

/* ---------- Split (about) ---------- */
.split{display:grid;grid-template-columns:1fr 1fr;gap:70px;align-items:center}
.split .media{position:relative;overflow:hidden}
.split .media img{width:100%;height:100%;object-fit:cover;transition:transform 1.2s var(--ease)}
.split .media:hover img{transform:scale(1.04)}
.split .body h2{font-family:var(--display);font-size:clamp(30px,4vw,52px);line-height:1.05;margin:18px 0 22px}
.split .body p{color:#3c3c3c;margin-bottom:18px;max-width:520px}
.stats{display:flex;gap:48px;margin-top:38px;flex-wrap:wrap}
.stats .n{font-family:var(--display);font-size:44px;line-height:1}
.stats .l{font-size:10.5px;letter-spacing:.22em;text-transform:uppercase;color:var(--muted);margin-top:8px}

/* ---------- Grid products ---------- */
.grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}
.card{position:relative;overflow:hidden;background:var(--soft);cursor:pointer}
.card .ph{aspect-ratio:3/4;overflow:hidden}
.card .ph img{width:100%;height:100%;object-fit:cover;transition:transform 1.1s var(--ease)}
.card:hover .ph img{transform:scale(1.06)}
.card .info{position:absolute;left:0;right:0;bottom:0;padding:22px;display:flex;justify-content:space-between;align-items:flex-end;color:#fff;
  background:linear-gradient(180deg,rgba(0,0,0,0) 0%,rgba(0,0,0,.62) 100%);opacity:0;transform:translateY(8px);transition:.4s var(--ease)}
.card:hover .info{opacity:1;transform:none}
.card .info .t{font-family:var(--display);font-size:22px}
.card .info .k{font-size:10px;letter-spacing:.22em;text-transform:uppercase;opacity:.85}
.card.tall .ph{aspect-ratio:3/4.6}
.card.wide{grid-column:span 2}
.card.wide .ph{aspect-ratio:16/8.4}

/* ---------- Timeline (news) ---------- */
.tl{border-top:1px solid var(--line)}
.tl .row{display:grid;grid-template-columns:150px 1fr auto;gap:24px;align-items:baseline;padding:26px 0;border-bottom:1px solid var(--line);transition:padding-left .35s var(--ease),background .35s var(--ease)}
.tl .row:hover{padding-left:16px}
.tl .y{font-family:var(--display);font-size:26px}
.tl .ev{font-size:17px}
.tl .pl{font-size:11px;letter-spacing:.18em;text-transform:uppercase;color:var(--muted)}

/* ---------- News / events ---------- */
.feat{position:relative;overflow:hidden;background:#111}
.feat img{width:100%;height:auto;display:block;opacity:.92}
.feat .cap{position:absolute;left:0;right:0;bottom:0;padding:34px 40px;color:#fff;background:linear-gradient(0deg,rgba(0,0,0,.72),rgba(0,0,0,0));display:flex;justify-content:space-between;align-items:flex-end;gap:20px;flex-wrap:wrap}
.feat .cap .t{font-family:var(--display);font-size:clamp(26px,4vw,52px);line-height:1}
.feat .cap .e{font-size:11px;letter-spacing:.26em;text-transform:uppercase;opacity:.85}
.evt-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:26px}
.evt{background:var(--soft);display:flex;flex-direction:column}
.evt .pair{display:grid;grid-template-columns:1fr 1fr;gap:2px}
.evt .pair .cell{aspect-ratio:4/5;overflow:hidden;background:#e7e5e2;position:relative}
.evt .pair .cell img{width:100%;height:100%;object-fit:cover;transition:transform 1.05s var(--ease)}
.evt:hover .pair .cell img{transform:scale(1.06)}
.evt .pair .cell .badge{position:absolute;top:8px;left:8px;font-size:8.5px;letter-spacing:.18em;text-transform:uppercase;color:#fff;background:rgba(0,0,0,.55);padding:4px 7px;backdrop-filter:blur(4px)}
.evt .meta{padding:18px 20px 22px}
.evt .meta .y{font-size:10.5px;letter-spacing:.22em;text-transform:uppercase;color:var(--red)}
.evt .meta .t{font-family:var(--display);font-size:21px;line-height:1.15;margin-top:7px}
.evt .meta .p{font-size:12.5px;color:var(--muted);margin-top:5px}

/* ---------- Contact ---------- */
.contact-grid{display:grid;grid-template-columns:1fr 1.1fr;gap:80px}
.info-block{margin-bottom:34px}
.info-block .l{font-size:10.5px;letter-spacing:.24em;text-transform:uppercase;color:var(--muted);margin-bottom:10px}
.info-block .v{font-size:19px;font-family:var(--display)}
.field{margin-bottom:20px}
.field label{display:block;font-size:10.5px;letter-spacing:.2em;text-transform:uppercase;color:var(--muted);margin-bottom:9px}
.field input,.field textarea{width:100%;border:none;border-bottom:1px solid var(--line);padding:12px 0;font:inherit;background:none;outline:none;transition:border-color .3s var(--ease)}
.field input:focus,.field textarea:focus{border-bottom-color:var(--fg)}
.field textarea{resize:vertical;min-height:110px}
.consent{display:flex;gap:12px;align-items:flex-start;font-size:12.5px;color:var(--muted);margin:8px 0 26px}
.consent input{margin-top:3px}
.notice{display:none;margin-top:16px;font-size:13px;color:var(--red)}
.notice.on{display:block}

/* ---------- CTA band ---------- */
.band{background:var(--fg);color:#fff;text-align:center}
.band .display{font-size:clamp(32px,5vw,58px);margin-bottom:26px}

/* ---------- Footer ---------- */
footer.site{border-top:1px solid var(--line);padding:76px 0 40px;background:var(--bg)}
.fgrid{display:grid;grid-template-columns:1.4fr 1fr 1fr 1fr;gap:44px}
.fcol h4{font-size:10.5px;letter-spacing:.24em;text-transform:uppercase;color:var(--muted);margin-bottom:20px;font-weight:600}
.fcol a,.fcol p{display:block;font-size:13.5px;color:#3c3c3c;margin-bottom:11px;transition:color .25s}
.fcol a:hover{color:var(--red)}
.fbrand img{height:40px;margin-bottom:20px}
.fbrand p{font-size:13px;color:var(--muted);max-width:280px}
.fbottom{display:flex;justify-content:space-between;gap:20px;margin-top:60px;padding-top:26px;border-top:1px solid var(--line);font-size:11.5px;color:var(--muted);flex-wrap:wrap}

/* ---------- Page hero (inner pages) ---------- */
.phero{padding:180px 0 70px;border-bottom:1px solid var(--line)}
.phero .eyebrow{margin-bottom:20px}
.phero h1{font-family:var(--display);font-size:clamp(46px,9vw,120px);line-height:.94;letter-spacing:-.015em}
.phero p{margin-top:24px;max-width:560px;color:var(--muted)}

/* ---------- Page hero variants ---------- */
.ph-about{position:relative;padding:170px 0 90px;overflow:hidden;border-bottom:1px solid var(--line);background:var(--bg)}
.ph-about .wrap{display:grid;grid-template-columns:1.05fr .95fr;gap:60px;align-items:center}
.ph-about .copy .eyebrow{margin-bottom:18px}
.ph-about .copy h1{font-family:var(--display);font-size:clamp(46px,7vw,96px);line-height:.96;letter-spacing:-.015em}
.ph-about .copy p{margin-top:22px;max-width:520px;color:var(--muted)}
.ph-about .copy .meta{display:flex;gap:34px;margin-top:38px;color:var(--muted);font-size:11px;letter-spacing:.18em;text-transform:uppercase}
.ph-about .copy .meta b{color:var(--fg);font-weight:700;display:block;font-size:22px;letter-spacing:.02em;text-transform:none;margin-bottom:2px}
.ph-about .ph-img{position:relative;aspect-ratio:4/5;overflow:hidden;background:#0d0d0d}
.ph-about .ph-img img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.ph-about .ph-img .badge{position:absolute;left:18px;bottom:18px;color:#fff;font-size:11px;letter-spacing:.2em;text-transform:uppercase;display:flex;align-items:center;gap:10px;background:rgba(0,0,0,.45);padding:8px 12px;backdrop-filter:blur(6px)}
.ph-about .ph-img .badge i{width:6px;height:6px;background:var(--red);border-radius:50%}

.ph-style{position:relative;min-height:78vh;color:#fff;overflow:hidden;border-bottom:1px solid var(--line);display:flex;align-items:flex-end}
.ph-style .ph-img{position:absolute;inset:0;z-index:0}
.ph-style .ph-img img{width:100%;height:100%;object-fit:cover;object-position:center 30%}
.ph-style .ph-img::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(0,0,0,.15) 0%,rgba(0,0,0,.55) 80%,rgba(0,0,0,.7) 100%)}
.ph-style .wrap{position:relative;z-index:1;padding:120px 0 36px}
.ph-style .eyebrow{color:#cfcfcf;margin-bottom:16px}
.ph-style h1{font-family:var(--display);font-size:clamp(64px,11vw,160px);line-height:.92;letter-spacing:-.02em;color:#fff}
.ph-style .lede{margin-top:24px;max-width:560px;color:#dcdcdc}
.ph-style .strip{margin-top:48px;display:flex;flex-wrap:wrap;gap:18px 28px;color:#cfcfcf;font-size:12px;letter-spacing:.22em;text-transform:uppercase;border-top:1px solid rgba(255,255,255,.2);padding-top:20px}
.ph-style .strip span{display:flex;align-items:center;gap:8px;white-space:nowrap}
.ph-style .strip i{width:5px;height:5px;background:var(--red);border-radius:50%}

.ph-news{position:relative;padding:150px 0 72px;border-bottom:1px solid var(--line);background:#0d0d0d;color:#fff;overflow:hidden}
.ph-news .bg{position:absolute;inset:0;background-size:cover;background-position:center 40%;transform:scale(1.04);filter:brightness(.66) contrast(1.05) saturate(.9)}
.ph-news .veil{position:absolute;inset:0;background:linear-gradient(100deg,rgba(0,0,0,.85) 0%,rgba(0,0,0,.62) 42%,rgba(0,0,0,.30) 100%)}
.ph-news .wrap{position:relative;z-index:1}
.ph-news .copy .eyebrow{margin-bottom:18px;color:#cfcfcf}
.ph-news .copy h1{font-family:var(--display);font-size:clamp(46px,9vw,120px);line-height:.94;letter-spacing:-.015em;color:#fff}
.ph-news .copy p{margin-top:22px;max-width:600px;color:#d6d6d6}
.ph-news .row{display:grid;grid-template-columns:repeat(4,1fr);gap:24px;margin-top:40px;max-width:900px}
.ph-news .row .stat{border-top:1px solid rgba(255,255,255,.24);padding-top:14px;display:flex;flex-direction:column;gap:6px}
.ph-news .row .stat b{font-family:var(--display);font-size:34px;line-height:1;color:#fff}
.ph-news .row .stat span{color:#bdbdbd;font-size:11px;letter-spacing:.16em;text-transform:uppercase}
.ph-band{padding:64px 0 72px;background:var(--bg)}
.ph-band .archive{display:grid;grid-template-columns:1.1fr .9fr;gap:18px}
.ph-band .archive .cell{position:relative;aspect-ratio:5/4;overflow:hidden;background:#0d0d0d;display:block}
.ph-band .archive .cell:nth-child(2){margin-top:34px}
.ph-band .archive img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:transform .9s var(--ease)}
.ph-band .archive .cell:hover img{transform:scale(1.04)}
.ph-band .archive .cell .tag{position:absolute;left:14px;top:14px;color:#fff;font-size:11px;letter-spacing:.2em;text-transform:uppercase;background:rgba(0,0,0,.45);padding:6px 10px;backdrop-filter:blur(6px);display:flex;align-items:center;gap:8px}
.ph-band .archive .cell .tag i{width:6px;height:6px;border-radius:50%;background:var(--red);display:inline-block}
.ph-band .archive .cell .year{position:absolute;right:14px;bottom:14px;color:#fff;font-family:var(--display);font-size:38px;line-height:1;background:rgba(0,0,0,.45);padding:8px 12px;backdrop-filter:blur(6px)}
.ph-band .feat{margin:52px 0 -1px}
.ph-band .feat img{display:block;width:100%;height:auto}
.ph-band .cap{display:flex;justify-content:space-between;align-items:center;padding:14px 2px;color:var(--muted);font-size:11px;letter-spacing:.18em;text-transform:uppercase;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}

.ph-contact{position:relative;color:#fff;border-bottom:1px solid #1a1a1a;background:#0d0d0d;overflow:hidden}
.ph-contact .ph-img{position:absolute;inset:0;z-index:0}
.ph-contact .ph-img img{width:100%;height:100%;object-fit:cover;object-position:center 40%;opacity:.45}
.ph-contact .ph-img::after{content:"";position:absolute;inset:0;background:linear-gradient(120deg,#0d0d0d 35%,rgba(13,13,13,.35) 70%,rgba(13,13,13,.05))}
.ph-contact .wrap{position:relative;z-index:1;display:grid;grid-template-columns:1.1fr .9fr;gap:60px;padding:170px 0 90px;align-items:end}
.ph-contact .copy .eyebrow{color:#9a9a9a;margin-bottom:18px}
.ph-contact .copy h1{font-family:var(--display);font-size:clamp(54px,8vw,118px);line-height:.94;letter-spacing:-.015em;color:#fff}
.ph-contact .copy p{margin-top:22px;max-width:520px;color:#cfcfcf}
.ph-contact .card{border:1px solid rgba(255,255,255,.18);padding:30px;background:rgba(0,0,0,.45);backdrop-filter:blur(8px);align-self:end}
.ph-contact .card h4{font-family:var(--display);font-size:18px;font-weight:400;letter-spacing:.04em;margin-bottom:14px}
.ph-contact .card .row{display:grid;grid-template-columns:auto 1fr;gap:8px 16px;font-size:13px;color:#cfcfcf}
.ph-contact .card .row .l{color:#9a9a9a;font-size:11px;letter-spacing:.2em;text-transform:uppercase;align-self:center}
.ph-contact .card .row a{color:#fff;text-decoration:none;border-bottom:1px solid rgba(255,255,255,.2)}
.ph-contact .card .row a:hover{border-bottom-color:var(--red)}
.ph-contact .card .note{margin-top:18px;color:#9a9a9a;font-size:11px;letter-spacing:.15em;text-transform:uppercase;display:flex;align-items:center;gap:10px}
.ph-contact .card .note i{width:6px;height:6px;background:var(--red);border-radius:50%}

/* ---------- Reveal ---------- */
.rv{opacity:0;transform:translateY(26px);transition:opacity .9s var(--ease),transform .9s var(--ease)}
.rv.in{opacity:1;transform:none}

/* ---------- Responsive ---------- */
@media(max-width:1080px){ .evt-grid{grid-template-columns:repeat(2,1fr);gap:18px} }
@media(max-width:960px){
  .menu{position:fixed;inset:72px 0 auto 0;background:#fff;flex-direction:column;gap:0;align-items:flex-start;padding:20px 32px 30px;border-bottom:1px solid var(--line);transform:translateY(-130%);transition:transform .4s var(--ease)}
  .menu.open{transform:none}
  .menu a{padding:16px 0;width:100%;border-bottom:1px solid var(--line);font-size:14px}
  .burger{display:flex}
  .nav .lang{order:3}
  .split{grid-template-columns:1fr;gap:40px}
  .grid{grid-template-columns:1fr 1fr;gap:14px}
  .card.wide{grid-column:span 2}
  .contact-grid{grid-template-columns:1fr;gap:50px}
  .fgrid{grid-template-columns:1fr 1fr;gap:34px}
  .tl .row{grid-template-columns:88px 1fr;gap:14px}
  .tl .pl{display:none}
  .feat .cap{padding:22px}
  section.pad{padding:80px 0}
}
@media(max-width:560px){
  .grid{grid-template-columns:1fr}
  .evt-grid{grid-template-columns:1fr}
  .card.wide{grid-column:span 1}
  .fgrid{grid-template-columns:1fr}
  .wrap{padding:0 20px}
  .hero h1{font-size:clamp(46px,15vw,84px);letter-spacing:-.02em}
  .hero .tag{letter-spacing:.2em;font-size:10px}
  .hero .inner{padding-bottom:56px}
  .hero .scroll{display:none}
  .phero h1{font-size:clamp(40px,13vw,72px)}
  .ph-about .wrap{grid-template-columns:1fr;gap:30px}
  .ph-about .ph-img{aspect-ratio:16/10}
  .ph-style{min-height:64vh}
  .ph-news .row{grid-template-columns:1fr 1fr;gap:14px}
  .ph-contact .wrap{grid-template-columns:1fr;gap:30px;padding:140px 0 70px}
  .ph-contact .card{padding:22px}
  .stats{gap:30px}
  .stats .n{font-size:34px}
}

/* ---------- SS27 Collection page ---------- */
.coll-hero{position:relative;min-height:82vh;display:flex;align-items:flex-end;color:#fff;overflow:hidden;background:#0d0d0d}
.coll-hero .bg{position:absolute;inset:0;background-size:cover;background-position:center top;background-repeat:no-repeat}
.coll-hero .veil{position:absolute;inset:0;background:linear-gradient(180deg,rgba(13,13,13,0) 0%,rgba(13,13,13,.06) 26%,rgba(13,13,13,.62) 52%,rgba(13,13,13,.94) 72%,#0d0d0d 88%)}
.coll-hero .inner{position:relative;z-index:2;padding:150px 32px 62px}
.coll-hero .tag{font-size:11px;letter-spacing:.3em;text-transform:uppercase;opacity:.85;margin-bottom:18px}
.coll-hero h1{font-family:var(--display);font-weight:400;font-size:clamp(52px,10vw,132px);line-height:.92;letter-spacing:-.01em}
.coll-hero .sub{margin-top:22px;max-width:540px;color:rgba(255,255,255,.88);font-size:15px}
.coll-hero .facts{display:flex;flex-wrap:wrap;gap:26px;margin-top:34px}
.coll-hero .facts div{font-size:11px;letter-spacing:.18em;text-transform:uppercase;opacity:.9}
.coll-hero .facts b{display:block;font-family:var(--display);font-size:26px;font-weight:400;letter-spacing:0;margin-bottom:2px}

.fronts{position:sticky;top:71px;z-index:40;background:rgba(255,255,255,.93);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border-bottom:1px solid var(--line)}
.fronts::after{content:"";position:absolute;right:0;top:0;bottom:0;width:46px;background:linear-gradient(90deg,rgba(255,255,255,0),rgba(255,255,255,.96));pointer-events:none}
.fronts .row{display:flex;gap:10px;overflow-x:auto;padding:15px 0;scrollbar-width:none}
.fronts .row::-webkit-scrollbar{display:none}
.chip{white-space:nowrap;font:inherit;font-size:11px;letter-spacing:.16em;text-transform:uppercase;padding:9px 16px;border:1px solid var(--line);border-radius:999px;background:none;color:#3a3a3a;cursor:pointer;transition:.25s var(--ease)}
.chip:hover{border-color:#b7b7b7}
.chip.on{background:var(--fg);color:#fff;border-color:var(--fg)}

.pgrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(252px,1fr));gap:36px 26px}
.prod .ph{aspect-ratio:1/1;overflow:hidden;background:var(--soft)}
.prod .ph img{width:100%;height:100%;object-fit:cover;transition:transform .65s var(--ease)}
.prod:hover .ph img{transform:scale(1.045)}
.prod .meta{padding:15px 2px 0}
.prod .code{font-size:10.5px;letter-spacing:.2em;color:var(--red);text-transform:uppercase}
.prod .nm{font-family:var(--display);font-size:19px;line-height:1.22;margin:6px 0 10px}
.prod .specs{font-size:11.5px;color:var(--muted);letter-spacing:.03em;display:flex;flex-wrap:wrap;gap:4px 12px}
.prod .specs b{color:#2a2a2a;font-weight:500}
.prod .cols{font-size:11px;color:var(--muted);margin-top:9px;line-height:1.7;word-break:break-word}
.prod .cols span{display:inline-block;border:1px solid var(--line);border-radius:4px;padding:1px 7px;margin:0 5px 5px 0;letter-spacing:.02em}

.editorial{display:grid;grid-template-columns:1.1fr .9fr;gap:0;background:var(--soft)}
.editorial figure{overflow:hidden}
.editorial img{width:100%;height:100%;object-fit:cover;min-height:340px}
.editorial .cap{padding:56px 6vw;display:flex;flex-direction:column;justify-content:center;gap:18px}
.editorial .cap .display{font-size:clamp(26px,3.4vw,42px)}

@media(max-width:860px){
  .editorial{grid-template-columns:1fr}
  .pgrid{grid-template-columns:repeat(auto-fill,minmax(155px,1fr));gap:26px 16px}
  .prod .nm{font-size:16px}
  .coll-hero h1{font-size:clamp(46px,15vw,80px)}
}

/* ---------- SS27 colour swatches ---------- */
.prod .cols span{display:inline-flex;align-items:center;gap:6px;border:1px solid var(--line);border-radius:999px;padding:3px 10px 3px 6px;margin:0 5px 5px 0;letter-spacing:.02em}
.prod .cols i{width:11px;height:11px;border-radius:50%;flex:0 0 auto;box-shadow:inset 0 0 0 1px rgba(0,0,0,.16)}
.palette{display:grid;grid-template-columns:repeat(auto-fill,minmax(148px,1fr));gap:16px}
.sw{border:1px solid var(--line);border-radius:10px;overflow:hidden;background:#fff}
.sw .cc{height:86px}
.sw .nm{padding:10px 12px}
.sw .nm b{display:block;font-size:12.5px;font-weight:500;letter-spacing:.02em}
.sw .nm span{font-size:10.5px;color:var(--muted);letter-spacing:.08em;text-transform:uppercase}
.sw.wide{grid-column:span 2}
@media(max-width:860px){.palette{grid-template-columns:repeat(auto-fill,minmax(118px,1fr));gap:12px}.sw .cc{height:66px}}

/* ---------- Typographic hero (no imagery) ---------- */
.hero.type{background:#0d0d0d;color:#fff}
.hero.type .bg{position:absolute;inset:0;background-size:cover;background-position:center 30%;transform:scale(1.05);animation:kenburns 20s var(--ease) forwards;filter:brightness(.82) contrast(1.05) saturate(.95)}
.hero.type .veil{position:absolute;inset:0;background:linear-gradient(180deg,rgba(0,0,0,.30) 0%,rgba(0,0,0,.10) 30%,rgba(0,0,0,.55) 68%,rgba(0,0,0,.92) 100%)}
.hero.type::before{content:"";position:absolute;inset:0;background:
  radial-gradient(130% 80% at 50% -10%,rgba(255,255,255,.06),transparent 62%),
  repeating-linear-gradient(90deg,rgba(255,255,255,.03) 0 1px,transparent 1px 25%);
  opacity:.7;pointer-events:none;z-index:1}
.hero.type::after{content:"";position:absolute;left:0;right:0;bottom:0;height:1px;background:rgba(255,255,255,.14)}
.hero.type h1{font-family:var(--display);font-size:clamp(104px,25vw,420px);line-height:.78;letter-spacing:-.035em;font-weight:400;margin:0}
.hero.type .tag{letter-spacing:.34em;opacity:.8}
.hero-line{display:flex;flex-wrap:wrap;gap:10px 30px;align-items:center;margin-top:26px;font-size:11.5px;letter-spacing:.36em;text-transform:uppercase;color:rgba(255,255,255,.88)}
.hero-line span{display:inline-flex;align-items:center;gap:10px}
.hero-line i{width:5px;height:5px;border-radius:50%;background:var(--red);display:inline-block;font-style:normal}
.hero-lede{margin-top:30px;max-width:540px;color:rgba(255,255,255,.74);font-size:15px;line-height:1.7}
.hero.type .inner{padding-top:150px}
.hero.type .cta{margin-top:40px}
@media(max-width:860px){
  .hero.type .inner{padding-top:120px;padding-bottom:64px}
  .hero-line{letter-spacing:.24em;font-size:10.5px}
}

/* ---------- Collection typographic hero ---------- */
.coll-hero.type{background:#0d0d0d;min-height:74vh}
.coll-hero.type::before{content:"";position:absolute;inset:0;background:
  radial-gradient(120% 70% at 78% 0%,rgba(255,255,255,.08),transparent 60%),
  repeating-linear-gradient(90deg,rgba(255,255,255,.042) 0 1px,transparent 1px 25%);
  pointer-events:none}
.coll-hero.type .inner{padding:170px 32px 66px}
.coll-hero.type h1{font-size:clamp(72px,15vw,300px);line-height:.8;letter-spacing:-.03em}
.coll-hero.type .facts b{color:#fff}
.coll-hero.type .facts div{color:rgba(255,255,255,.72)}
@media(max-width:860px){.coll-hero.type .inner{padding:130px 32px 56px}}

/* ---------- Language switch (link-based) ---------- */
.lang a{color:var(--muted);text-decoration:none;padding:2px 3px;font:inherit}
.lang a:hover{color:var(--fg)}
.lang a.on{color:var(--fg);font-weight:700}
.lang a:not(:last-child)::after{content:"";}
.sr-only{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}

/* ============================================================
   2026-09-28 · 首页 & News 头图由深色改为浅色 + 产品照（hermes）
   ============================================================ */
.hero.light{
  background:var(--soft);color:var(--fg);
  height:auto;min-height:0;
  display:flex;align-items:center;overflow:hidden;position:relative;
  padding:108px 0 96px;border-bottom:1px solid var(--line);
}
.hero.light .inner{color:var(--fg);padding-bottom:0;position:relative;z-index:2;width:100%;display:grid;grid-template-columns:.89fr 1.11fr;gap:56px;align-items:center}
.hero.light .copy{min-width:0}
.hero.light h1{font-family:var(--display);font-weight:400;font-size:clamp(56px,10.8vw,152px);line-height:.84;letter-spacing:-.022em;margin:0;color:var(--fg);text-shadow:none}
.hero.light .wordmark{display:block;width:100%;max-width:500px;height:auto;margin:0}
.hero.light .tag{color:var(--muted);font-size:10.5px;letter-spacing:.2em;margin-top:0}
.hero.light .hero-line{color:#3a3a3a;margin-top:24px}
.hero.light .hero-lede{color:#555;margin-top:26px}
.hero.light .cta{margin-top:34px;gap:12px}
.hero.light .btn{padding:15px 18px;font-size:11px;letter-spacing:.14em}
.hero.light .shot{position:relative;overflow:hidden;background:#fff;border:1px solid var(--line);min-width:0;max-width:880px;margin-left:auto}
.hero.light .shot img{width:100%;height:auto;display:block}
.hero.light .shot .cap{position:absolute;left:20px;bottom:18px;background:none;border:0;padding:0;font-size:10.5px;letter-spacing:.2em;text-transform:uppercase;color:#1a1a1a;text-shadow:0 1px 12px rgba(255,255,255,.9),0 1px 4px rgba(255,255,255,.75);z-index:2}
@media(max-width:960px){
  .hero.light{padding:104px 0 48px}
  .hero.light .inner{grid-template-columns:1fr;gap:30px}
  .hero.light h1{font-size:clamp(58px,15vw,112px)}
  .hero.light .tag{font-size:10px;letter-spacing:.18em}
  .hero.light .cta{gap:10px}
  .hero.light .btn{padding:14px 16px;font-size:10.5px}
  .hero.light .shot{max-width:none;margin-left:0}
}

/* News 头图转浅色 */
.ph-news{background:var(--soft);color:var(--fg)}
.ph-news .bg{filter:brightness(1.06) contrast(1.02) saturate(1.04);background-position:center 45%}
.ph-news .veil{background:linear-gradient(100deg,rgba(244,243,241,.97) 0%,rgba(244,243,241,.90) 38%,rgba(244,243,241,.40) 100%)}
.ph-news .copy .eyebrow{color:var(--muted)}
.ph-news .copy h1{color:var(--fg)}
.ph-news .copy p{color:#3f3f3f}
.ph-news .row .stat{border-top:1px solid #d9d6d1}
.ph-news .row .stat b{color:var(--fg)}
.ph-news .row .stat span{color:var(--muted)}
