/* =========================================================================
   FRAMEKNOLL — design system unique (gallery-lookbook / duotone crème+charbon)
   Préfixe de classe : .fm-  •  Type all-caps-mono  •  Formes arrondi-doux
   ========================================================================= */
:root{
  --fm-ink:#141410;
  --fm-charcoal:#20211d;
  --fm-cream:#f0ece2;
  --fm-paper:#f7f4ec;
  --fm-paper-2:#efe9dd;
  --fm-sienna:#c68b5c;
  --fm-sienna-deep:#a9713f;
  --fm-line:rgba(20,20,16,.14);
  --fm-line-soft:rgba(20,20,16,.08);
  --fm-muted:#6d6a5f;
  --fm-white:#fbf9f4;
  --fm-shadow:0 18px 44px -24px rgba(20,20,16,.45);
  --fm-shadow-sm:0 8px 22px -16px rgba(20,20,16,.4);
  --fm-radius:14px;
  --fm-radius-lg:22px;
  --fm-radius-sm:9px;
  --fm-serif:"Bespoke Serif",Georgia,"Times New Roman",serif;
  --fm-sans:"DM Sans",-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
  --fm-mono:"DM Mono","SFMono-Regular",Menlo,monospace;
  --fm-wrap:1240px;
  --fm-header-h:70px;
}
*{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{
  margin:0;background:var(--fm-cream);color:var(--fm-ink);
  font-family:var(--fm-sans);font-size:16px;line-height:1.6;
  -webkit-font-smoothing:antialiased;overflow-x:hidden;
}
img{max-width:100%;display:block}
a{color:inherit;text-decoration:none}
button{font-family:inherit;cursor:pointer}
h1,h2,h3,h4{font-family:var(--fm-serif);font-weight:500;line-height:1.05;margin:0}
p{margin:0 0 1em}
.fm-wrap{max-width:var(--fm-wrap);margin:0 auto;padding:0 28px;width:100%}
.fm-mono{font-family:var(--fm-mono);text-transform:uppercase;letter-spacing:.14em;font-size:.72rem}
.fm-eyebrow{font-family:var(--fm-mono);text-transform:uppercase;letter-spacing:.22em;font-size:.7rem;color:var(--fm-sienna-deep);display:inline-flex;align-items:center;gap:.5em}
.fm-eyebrow::before{content:"";width:26px;height:1px;background:var(--fm-sienna)}
.fm-sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}
.fm-ico{width:20px;height:20px;stroke:currentColor;stroke-width:1.4;fill:none;stroke-linecap:round;stroke-linejoin:round;flex:none}
section{scroll-margin-top:120px}

/* ---------- Announce bar ---------- */
.fm-announce{background:var(--fm-charcoal);color:var(--fm-cream)}
.fm-announce .fm-wrap{display:flex;align-items:center;justify-content:center;gap:2.4rem;min-height:38px;padding-top:8px;padding-bottom:8px}
.fm-announce span{font-family:var(--fm-mono);text-transform:uppercase;letter-spacing:.16em;font-size:.66rem;display:inline-flex;align-items:center;gap:.55em}
.fm-announce svg{width:15px;height:15px;stroke:var(--fm-sienna);stroke-width:1.5;fill:none}
.fm-announce .fm-hide-sm{}

/* ---------- Header / méga-menu ---------- */
.fm-header{position:sticky;top:0;z-index:60;background:rgba(240,236,226,.9);backdrop-filter:blur(12px);border-bottom:1px solid var(--fm-line)}
.fm-header .fm-wrap{display:flex;align-items:center;gap:20px;min-height:var(--fm-header-h)}
.fm-logo{display:flex;align-items:center;flex:none}
.fm-logo img{height:34px;width:auto}
.fm-nav{display:flex;align-items:center;gap:6px;margin-left:8px}
.fm-nav>a,.fm-navbtn{font-family:var(--fm-mono);text-transform:uppercase;letter-spacing:.13em;font-size:.72rem;color:var(--fm-charcoal);padding:10px 13px;border-radius:var(--fm-radius-sm);background:none;border:none;display:inline-flex;align-items:center;gap:.4em;line-height:1}
.fm-nav>a:hover,.fm-navbtn:hover{background:var(--fm-paper-2)}
.fm-navbtn svg{width:13px;height:13px;stroke:currentColor;stroke-width:1.6;fill:none;transition:transform .2s}
.fm-hasmega{position:relative}
.fm-hasmega[aria-expanded="true"] .fm-navbtn svg{transform:rotate(180deg)}
.fm-spacer{flex:1}
.fm-tools{display:flex;align-items:center;gap:6px;flex:none}
.fm-iconbtn{width:42px;height:42px;border-radius:var(--fm-radius-sm);border:1px solid transparent;background:none;color:var(--fm-charcoal);display:inline-grid;place-items:center;position:relative}
.fm-iconbtn:hover{background:var(--fm-paper-2)}
.fm-iconbtn .fm-ico{width:21px;height:21px}
.fm-cartcount{position:absolute;top:4px;right:4px;min-width:17px;height:17px;padding:0 4px;border-radius:9px;background:var(--fm-sienna);color:#fff;font-family:var(--fm-mono);font-size:.6rem;display:grid;place-items:center;line-height:1;font-weight:500}
.fm-burger{display:none}

/* mega-menu panel */
.fm-mega{position:absolute;top:calc(100% + 1px);left:0;width:100%;background:var(--fm-paper);border-top:1px solid var(--fm-line);border-bottom:1px solid var(--fm-line);box-shadow:var(--fm-shadow);opacity:0;visibility:hidden;transform:translateY(-8px);transition:opacity .18s,transform .18s,visibility .18s;z-index:59}
.fm-mega[data-open="true"]{opacity:1;visibility:visible;transform:none}
.fm-mega-inner{display:grid;grid-template-columns:1.4fr 1fr 1fr 1.3fr;gap:34px;padding:34px 0 40px}
.fm-mega h4{font-family:var(--fm-mono);text-transform:uppercase;letter-spacing:.16em;font-size:.66rem;color:var(--fm-sienna-deep);margin-bottom:14px;font-weight:500}
.fm-mega ul{list-style:none;margin:0;padding:0;display:grid;gap:9px}
.fm-mega ul a{font-family:var(--fm-serif);font-size:1.12rem;color:var(--fm-charcoal)}
.fm-mega ul a:hover{color:var(--fm-sienna-deep)}
.fm-mega-feat{background:var(--fm-charcoal);color:var(--fm-cream);border-radius:var(--fm-radius);overflow:hidden;display:flex;flex-direction:column}
.fm-mega-feat img{height:130px;width:100%;object-fit:cover}
.fm-mega-feat .fm-mf-b{padding:16px 18px}
.fm-mega-feat h5{font-family:var(--fm-serif);font-size:1.2rem;margin:0 0 4px}
.fm-mega-feat p{font-size:.82rem;color:rgba(240,236,226,.7);margin:0 0 10px}
.fm-mega-feat a{font-family:var(--fm-mono);text-transform:uppercase;letter-spacing:.14em;font-size:.66rem;color:var(--fm-sienna)}

/* mobile menu */
.fm-mobile{position:fixed;inset:0;background:var(--fm-cream);z-index:200;transform:translateX(100%);transition:transform .28s ease;display:flex;flex-direction:column;overflow-y:auto}
.fm-mobile[data-open="true"]{transform:none}
.fm-mobile-top{display:flex;align-items:center;justify-content:space-between;padding:16px 22px;border-bottom:1px solid var(--fm-line)}
.fm-mobile nav{padding:14px 22px;display:flex;flex-direction:column}
.fm-mobile nav a{font-family:var(--fm-serif);font-size:1.7rem;padding:13px 0;border-bottom:1px solid var(--fm-line-soft)}
.fm-mobile .fm-m-sub{font-family:var(--fm-mono);text-transform:uppercase;letter-spacing:.15em;font-size:.64rem;color:var(--fm-sienna-deep);margin:20px 0 4px}

/* ---------- Buttons ---------- */
.fm-btn{font-family:var(--fm-mono);text-transform:uppercase;letter-spacing:.14em;font-size:.72rem;padding:15px 26px;border-radius:var(--fm-radius-sm);border:1px solid var(--fm-charcoal);background:var(--fm-charcoal);color:var(--fm-cream);display:inline-flex;align-items:center;justify-content:center;gap:.6em;line-height:1;transition:background .18s,color .18s}
.fm-btn:hover{background:var(--fm-sienna-deep);border-color:var(--fm-sienna-deep)}
.fm-btn--ghost{background:none;color:var(--fm-charcoal)}
.fm-btn--ghost:hover{background:var(--fm-charcoal);color:var(--fm-cream)}
.fm-btn--sienna{background:var(--fm-sienna);border-color:var(--fm-sienna);color:#241505}
.fm-btn--sienna:hover{background:var(--fm-sienna-deep);border-color:var(--fm-sienna-deep);color:#fff}
.fm-btn--block{width:100%}
.fm-btn--lg{padding:18px 34px;font-size:.78rem}

/* ---------- Badges & stars ---------- */
.fm-badges{display:flex;gap:6px;flex-wrap:wrap}
.fm-badge{font-family:var(--fm-mono);text-transform:uppercase;letter-spacing:.1em;font-size:.6rem;padding:4px 8px;border-radius:6px;background:var(--fm-charcoal);color:var(--fm-cream);line-height:1}
.fm-badge--sienna{background:var(--fm-sienna);color:#241505}
.fm-badge--out{background:none;color:var(--fm-charcoal);border:1px solid var(--fm-line)}
.fm-stars{display:inline-flex;align-items:center;gap:2px}
.fm-stars svg{width:14px;height:14px;fill:var(--fm-sienna);stroke:none}
.fm-stars .fm-star-o{fill:var(--fm-line)}
.fm-rate{font-family:var(--fm-mono);font-size:.66rem;letter-spacing:.06em;color:var(--fm-muted)}

/* ---------- Price ---------- */
.fm-price{font-family:var(--fm-mono);font-size:1rem;letter-spacing:.02em;font-weight:500;color:var(--fm-ink)}
.fm-price s{color:var(--fm-muted);font-weight:400;margin-left:.4em;font-size:.82em;text-decoration-thickness:1px}

/* ---------- Polaroïd card ---------- */
.fm-card{background:var(--fm-white);border:1px solid var(--fm-line);border-radius:var(--fm-radius);padding:12px 12px 16px;box-shadow:var(--fm-shadow-sm);display:flex;flex-direction:column;position:relative;transition:box-shadow .2s,transform .2s}
.fm-card:hover{box-shadow:var(--fm-shadow);transform:translateY(-3px)}
.fm-card-media{position:relative;border-radius:var(--fm-radius-sm);overflow:hidden;background:var(--fm-paper-2);aspect-ratio:4/5}
.fm-card-media img{width:100%;height:100%;object-fit:cover}
.fm-card .fm-badges{position:absolute;top:10px;left:10px;z-index:2}
.fm-card-fav{position:absolute;top:9px;right:9px;z-index:2;width:34px;height:34px;border-radius:50%;background:rgba(251,249,244,.9);border:1px solid var(--fm-line);display:grid;place-items:center;color:var(--fm-charcoal)}
.fm-card-fav .fm-ico{width:16px;height:16px}
.fm-card-cap{padding:14px 6px 2px;display:flex;flex-direction:column;gap:8px;flex:1}
.fm-card-cat{font-family:var(--fm-mono);text-transform:uppercase;letter-spacing:.13em;font-size:.6rem;color:var(--fm-sienna-deep)}
.fm-card-name{font-family:var(--fm-serif);font-size:1.28rem;line-height:1.12;color:var(--fm-charcoal)}
.fm-card-row{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-top:auto;padding-top:8px}
.fm-card-add{width:40px;height:40px;border-radius:var(--fm-radius-sm);border:1px solid var(--fm-charcoal);background:none;color:var(--fm-charcoal);display:grid;place-items:center;flex:none;transition:background .16s,color .16s}
.fm-card-add:hover{background:var(--fm-charcoal);color:var(--fm-cream)}
.fm-card-add .fm-ico{width:18px;height:18px}
.fm-card-out{position:absolute;inset:0;background:rgba(240,236,226,.55);display:grid;place-items:center;border-radius:var(--fm-radius-sm);font-family:var(--fm-mono);text-transform:uppercase;letter-spacing:.14em;font-size:.66rem;color:var(--fm-charcoal)}

/* ---------- Section scaffolding ---------- */
.fm-sec{padding:78px 0}
.fm-sec--tight{padding:54px 0}
.fm-sec-head{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;margin-bottom:34px;flex-wrap:wrap}
.fm-sec-head h2{font-size:clamp(1.9rem,3.4vw,2.9rem);max-width:16ch}
.fm-sec-head p{color:var(--fm-muted);max-width:44ch;margin:0}
.fm-link{font-family:var(--fm-mono);text-transform:uppercase;letter-spacing:.14em;font-size:.68rem;color:var(--fm-charcoal);display:inline-flex;align-items:center;gap:.5em;border-bottom:1px solid var(--fm-charcoal);padding-bottom:3px}
.fm-link:hover{color:var(--fm-sienna-deep);border-color:var(--fm-sienna-deep)}
.fm-grid{display:grid;gap:22px}
.fm-grid--4{grid-template-columns:repeat(4,1fr)}
.fm-grid--3{grid-template-columns:repeat(3,1fr)}
.fm-grid--2{grid-template-columns:repeat(2,1fr)}

/* ---------- Hero typo-poster ---------- */
.fm-hero{padding:64px 0 54px;border-bottom:1px solid var(--fm-line);position:relative;overflow:hidden}
.fm-hero .fm-wrap{position:relative;z-index:2}
.fm-hero-top{display:flex;justify-content:space-between;gap:20px;flex-wrap:wrap;margin-bottom:30px}
.fm-hero-top .fm-mono{color:var(--fm-muted)}
.fm-hero h1{font-size:clamp(3.4rem,12vw,10.5rem);letter-spacing:-.02em;line-height:.86;color:var(--fm-charcoal)}
.fm-hero h1 em{font-style:italic;color:var(--fm-sienna-deep)}
.fm-hero-sub{display:flex;justify-content:space-between;align-items:flex-end;gap:30px;margin-top:34px;flex-wrap:wrap}
.fm-hero-sub p{max-width:40ch;color:var(--fm-charcoal);font-size:1.05rem;margin:0}
.fm-hero-cta{display:flex;gap:12px;flex-wrap:wrap}
.fm-hero-strip{display:flex;gap:30px;flex-wrap:wrap;margin-top:40px;padding-top:24px;border-top:1px solid var(--fm-line)}
.fm-hero-strip div{display:flex;flex-direction:column;gap:3px}
.fm-hero-strip b{font-family:var(--fm-serif);font-size:1.7rem;color:var(--fm-charcoal);font-weight:500}
.fm-hero-strip span{font-family:var(--fm-mono);text-transform:uppercase;letter-spacing:.12em;font-size:.6rem;color:var(--fm-muted)}

/* ---------- Reassurance strip ---------- */
.fm-reassure{background:var(--fm-charcoal);color:var(--fm-cream)}
.fm-reassure .fm-wrap{display:grid;grid-template-columns:repeat(4,1fr);gap:20px;padding-top:22px;padding-bottom:22px}
.fm-reassure div{display:flex;align-items:center;gap:12px}
.fm-reassure svg{width:24px;height:24px;stroke:var(--fm-sienna);stroke-width:1.4;fill:none;flex:none}
.fm-reassure b{display:block;font-family:var(--fm-mono);text-transform:uppercase;letter-spacing:.1em;font-size:.66rem;margin-bottom:2px}
.fm-reassure small{color:rgba(240,236,226,.62);font-size:.74rem}

/* ---------- Quiz-finder ---------- */
.fm-quiz{background:var(--fm-paper);border:1px solid var(--fm-line);border-radius:var(--fm-radius-lg);padding:40px}
.fm-quiz-grid{display:grid;grid-template-columns:1fr 1.3fr;gap:40px;align-items:center}
.fm-quiz-q{margin-bottom:26px}
.fm-quiz-q>span{font-family:var(--fm-mono);text-transform:uppercase;letter-spacing:.14em;font-size:.64rem;color:var(--fm-sienna-deep);display:block;margin-bottom:12px}
.fm-chips{display:flex;flex-wrap:wrap;gap:9px}
.fm-chip{font-family:var(--fm-mono);text-transform:uppercase;letter-spacing:.08em;font-size:.66rem;padding:9px 14px;border-radius:30px;border:1px solid var(--fm-line);background:var(--fm-white);color:var(--fm-charcoal)}
.fm-chip[aria-pressed="true"]{background:var(--fm-charcoal);color:var(--fm-cream);border-color:var(--fm-charcoal)}
.fm-quiz-res{background:var(--fm-charcoal);color:var(--fm-cream);border-radius:var(--fm-radius);padding:28px}
.fm-quiz-res .fm-eyebrow{color:var(--fm-sienna)}
.fm-quiz-res h3{font-size:1.9rem;margin:10px 0 6px}
.fm-quiz-res p{color:rgba(240,236,226,.72);font-size:.9rem}

/* ---------- Lookbook éditorial ---------- */
.fm-lookbook{display:grid;grid-template-columns:1fr 1fr;gap:22px}
.fm-look{position:relative;border-radius:var(--fm-radius-lg);overflow:hidden;min-height:420px;display:flex;align-items:flex-end;color:var(--fm-cream)}
.fm-look img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:0}
.fm-look::after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,rgba(20,20,16,.7),rgba(20,20,16,.05) 60%);z-index:1}
.fm-look-b{position:relative;z-index:2;padding:30px}
.fm-look-b .fm-eyebrow{color:var(--fm-sienna)}
.fm-look-b h3{font-size:2rem;margin:10px 0 8px}
.fm-look-b p{color:rgba(240,236,226,.8);max-width:34ch;font-size:.92rem;margin:0 0 14px}
.fm-look--tall{grid-row:span 2;min-height:600px}
.fm-lookbook--asym{grid-template-columns:1.15fr .85fr}

/* ---------- Journal ---------- */
.fm-journal{display:grid;grid-template-columns:repeat(3,1fr);gap:26px}
.fm-jcard{display:flex;flex-direction:column}
.fm-jcard-media{border-radius:var(--fm-radius);overflow:hidden;aspect-ratio:4/3;background:var(--fm-paper-2);margin-bottom:16px}
.fm-jcard-media img{width:100%;height:100%;object-fit:cover;transition:transform .4s}
.fm-jcard:hover .fm-jcard-media img{transform:scale(1.04)}
.fm-jcard time{font-family:var(--fm-mono);text-transform:uppercase;letter-spacing:.12em;font-size:.6rem;color:var(--fm-sienna-deep)}
.fm-jcard h3{font-size:1.4rem;margin:8px 0 8px}
.fm-jcard p{color:var(--fm-muted);font-size:.9rem;margin:0}

/* ---------- FAQ ---------- */
.fm-faq{max-width:820px}
.fm-faq details{border-bottom:1px solid var(--fm-line);padding:6px 0}
.fm-faq summary{list-style:none;cursor:pointer;padding:18px 4px;display:flex;align-items:center;justify-content:space-between;gap:16px;font-family:var(--fm-serif);font-size:1.25rem;color:var(--fm-charcoal)}
.fm-faq summary::-webkit-details-marker{display:none}
.fm-faq summary::after{content:"+";font-family:var(--fm-mono);font-size:1.4rem;color:var(--fm-sienna-deep);transition:transform .2s}
.fm-faq details[open] summary::after{transform:rotate(45deg)}
.fm-faq p{padding:0 4px 20px;color:var(--fm-muted);margin:0;max-width:70ch}

/* ---------- Garanties / sceaux ---------- */
.fm-seals{display:grid;grid-template-columns:repeat(4,1fr);gap:22px}
.fm-seal{text-align:center;padding:32px 20px;border:1px solid var(--fm-line);border-radius:var(--fm-radius);background:var(--fm-white)}
.fm-seal-ring{width:66px;height:66px;border-radius:50%;border:1px solid var(--fm-sienna);display:grid;place-items:center;margin:0 auto 16px;color:var(--fm-sienna-deep)}
.fm-seal-ring svg{width:28px;height:28px;stroke:currentColor;stroke-width:1.3;fill:none}
.fm-seal h3{font-size:1.15rem;margin-bottom:6px}
.fm-seal p{font-size:.82rem;color:var(--fm-muted);margin:0}

/* ---------- Comparatif matrice ---------- */
.fm-matrix{width:100%;border-collapse:collapse;background:var(--fm-white);border:1px solid var(--fm-line);border-radius:var(--fm-radius);overflow:hidden}
.fm-matrix th,.fm-matrix td{padding:16px 18px;text-align:left;border-bottom:1px solid var(--fm-line-soft);font-size:.9rem;vertical-align:middle}
.fm-matrix thead th{font-family:var(--fm-mono);text-transform:uppercase;letter-spacing:.1em;font-size:.64rem;color:var(--fm-charcoal);background:var(--fm-paper)}
.fm-matrix thead th.fm-hl{background:var(--fm-charcoal);color:var(--fm-cream)}
.fm-matrix td.fm-hl{background:rgba(198,139,92,.08)}
.fm-matrix tbody th{font-family:var(--fm-sans);font-weight:500;font-size:.9rem}
.fm-matrix svg{width:18px;height:18px;stroke-width:1.6;fill:none}
.fm-yes{stroke:var(--fm-sienna-deep)}
.fm-no{stroke:var(--fm-line)}
.fm-matrix-scroll{overflow-x:auto}

/* ---------- Ticker ---------- */
.fm-ticker{background:var(--fm-sienna);color:#241505;border-top:1px solid var(--fm-sienna-deep);border-bottom:1px solid var(--fm-sienna-deep);overflow:hidden;padding:14px 0}
.fm-ticker-row{display:flex;gap:0;white-space:nowrap;width:max-content}
.fm-ticker span{font-family:var(--fm-serif);font-size:1.5rem;padding:0 26px;display:inline-flex;align-items:center;gap:26px}
.fm-ticker span::after{content:"✦";font-size:.9rem}
@media (prefers-reduced-motion:no-preference){
  .fm-ticker-row{animation:fm-marquee 34s linear infinite}
}
@keyframes fm-marquee{from{transform:translateX(0)}to{transform:translateX(-50%)}}

/* ---------- Par besoin ---------- */
.fm-needs{display:grid;grid-template-columns:repeat(4,1fr);gap:20px}
.fm-need{position:relative;border-radius:var(--fm-radius);overflow:hidden;min-height:260px;display:flex;align-items:flex-end;color:var(--fm-cream);border:1px solid var(--fm-line)}
.fm-need img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:0}
.fm-need::after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,rgba(20,20,16,.78),rgba(20,20,16,.1));z-index:1}
.fm-need-b{position:relative;z-index:2;padding:20px}
.fm-need-b span{font-family:var(--fm-mono);text-transform:uppercase;letter-spacing:.12em;font-size:.58rem;color:var(--fm-sienna)}
.fm-need-b h3{font-size:1.4rem;margin:6px 0 0}
.fm-need--plain{background:var(--fm-charcoal);color:var(--fm-cream)}
.fm-need--plain::after{display:none}
.fm-need--plain .fm-need-b{padding:26px}
.fm-need--plain p{color:rgba(240,236,226,.72);font-size:.85rem;margin:8px 0 0}

/* ---------- Bandeau immersif ---------- */
.fm-immersive{position:relative;border-radius:var(--fm-radius-lg);overflow:hidden;color:var(--fm-cream);min-height:440px;display:flex;align-items:center}
.fm-immersive img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:0}
.fm-immersive::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(20,20,16,.82),rgba(20,20,16,.25));z-index:1}
.fm-immersive-b{position:relative;z-index:2;padding:56px;max-width:620px}
.fm-immersive-b h2{font-size:clamp(2rem,4vw,3.2rem);margin:14px 0 14px}
.fm-immersive-b p{color:rgba(240,236,226,.82);margin:0 0 22px}

/* ---------- Newsletter / capture ---------- */
.fm-news{background:var(--fm-charcoal);color:var(--fm-cream);border-radius:var(--fm-radius-lg);padding:52px;text-align:center}
.fm-news .fm-eyebrow{color:var(--fm-sienna);justify-content:center}
.fm-news h2{font-size:clamp(1.9rem,3.4vw,2.7rem);margin:14px auto 12px;max-width:20ch}
.fm-news p{color:rgba(240,236,226,.72);max-width:46ch;margin:0 auto 26px}
.fm-news form{display:flex;gap:10px;max-width:480px;margin:0 auto;flex-wrap:wrap}
.fm-news input{flex:1;min-width:200px;padding:15px 18px;border-radius:var(--fm-radius-sm);border:1px solid rgba(240,236,226,.24);background:rgba(240,236,226,.06);color:var(--fm-cream);font-family:var(--fm-sans)}
.fm-news input::placeholder{color:rgba(240,236,226,.5)}
.fm-news small{display:block;margin-top:14px;font-family:var(--fm-mono);text-transform:uppercase;letter-spacing:.1em;font-size:.58rem;color:rgba(240,236,226,.5)}

/* ---------- Footer carte/ticket ---------- */
.fm-footer{padding:70px 0 40px}
.fm-ticket{background:var(--fm-charcoal);color:var(--fm-cream);border-radius:var(--fm-radius-lg);position:relative;padding:46px 46px 34px;-webkit-mask:radial-gradient(11px at 11px 50%,transparent 98%,#000) -11px 0/100% 22px repeat-y,radial-gradient(11px at calc(100% - 11px) 50%,transparent 98%,#000) 11px 0/100% 22px repeat-y;mask:radial-gradient(11px at 11px 50%,transparent 98%,#000) -11px 0/100% 22px repeat-y,radial-gradient(11px at calc(100% - 11px) 50%,transparent 98%,#000) 11px 0/100% 22px repeat-y}
.fm-ticket-top{display:grid;grid-template-columns:1.5fr 1fr 1fr 1fr;gap:34px;padding-bottom:32px;border-bottom:1px dashed rgba(240,236,226,.28)}
.fm-ticket-brand h3{font-family:var(--fm-serif);font-size:2rem;letter-spacing:.02em;margin-bottom:12px}
.fm-ticket-brand p{color:rgba(240,236,226,.66);font-size:.88rem;max-width:32ch;margin:0 0 18px}
.fm-ticket-stamp{display:inline-grid;place-items:center;text-align:center;width:104px;height:104px;border-radius:50%;border:2px solid var(--fm-sienna);color:var(--fm-sienna);font-family:var(--fm-mono);text-transform:uppercase;letter-spacing:.14em;font-size:.56rem;line-height:1.5;transform:rotate(-8deg)}
.fm-fcol h4{font-family:var(--fm-mono);text-transform:uppercase;letter-spacing:.15em;font-size:.62rem;color:var(--fm-sienna);margin-bottom:14px;font-weight:500}
.fm-fcol ul{list-style:none;margin:0;padding:0;display:grid;gap:10px}
.fm-fcol a{font-size:.9rem;color:rgba(240,236,226,.82)}
.fm-fcol a:hover{color:var(--fm-sienna)}
.fm-ticket-mid{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:26px 0;border-bottom:1px dashed rgba(240,236,226,.28);flex-wrap:wrap}
.fm-ticket-mid .fm-pay{display:flex;align-items:center;gap:10px;flex-wrap:wrap}
.fm-pay svg{height:26px;width:auto;display:block}
.fm-ticket-social{display:flex;gap:10px}
.fm-ticket-social a{width:38px;height:38px;border-radius:50%;border:1px solid rgba(240,236,226,.24);display:grid;place-items:center;color:var(--fm-cream)}
.fm-ticket-social a:hover{border-color:var(--fm-sienna);color:var(--fm-sienna)}
.fm-ticket-social svg{width:17px;height:17px;stroke:currentColor;stroke-width:1.5;fill:none}
.fm-ticket-bot{display:flex;align-items:center;justify-content:space-between;gap:20px;padding-top:24px;flex-wrap:wrap}
.fm-ticket-bot p{font-family:var(--fm-mono);text-transform:uppercase;letter-spacing:.08em;font-size:.58rem;color:rgba(240,236,226,.5);margin:0}
.fm-ticket-bot .fm-legal-links{display:flex;gap:16px;flex-wrap:wrap}
.fm-ticket-bot .fm-legal-links a{font-family:var(--fm-mono);text-transform:uppercase;letter-spacing:.08em;font-size:.58rem;color:rgba(240,236,226,.6)}
.fm-ticket-bot .fm-legal-links a:hover{color:var(--fm-sienna)}
.fm-lang{display:inline-flex;gap:2px;background:rgba(240,236,226,.08);border-radius:20px;padding:3px}
.fm-lang a{font-family:var(--fm-mono);text-transform:uppercase;font-size:.58rem;letter-spacing:.06em;padding:5px 9px;border-radius:16px;color:rgba(240,236,226,.7)}
.fm-lang a.is-active{background:var(--fm-sienna);color:#241505}

/* ---------- Cart drawer ---------- */
.fm-overlay{position:fixed;inset:0;background:rgba(20,20,16,.5);opacity:0;visibility:hidden;transition:opacity .25s,visibility .25s;z-index:120}
.fm-overlay[data-open="true"]{opacity:1;visibility:visible}
.fm-drawer{position:fixed;top:0;right:0;height:100%;width:min(420px,100%);background:var(--fm-cream);z-index:130;transform:translateX(100%);transition:transform .3s ease;display:flex;flex-direction:column;box-shadow:var(--fm-shadow)}
.fm-drawer[data-open="true"]{transform:none}
.fm-drawer-head{display:flex;align-items:center;justify-content:space-between;padding:20px 22px;border-bottom:1px solid var(--fm-line)}
.fm-drawer-head h3{font-size:1.4rem}
.fm-drawer-ship{padding:16px 22px;border-bottom:1px solid var(--fm-line);background:var(--fm-paper)}
.fm-drawer-ship p{font-family:var(--fm-mono);text-transform:uppercase;letter-spacing:.08em;font-size:.6rem;color:var(--fm-charcoal);margin:0 0 8px}
.fm-progress{height:6px;border-radius:4px;background:var(--fm-paper-2);overflow:hidden}
.fm-progress i{display:block;height:100%;background:var(--fm-sienna);width:0;transition:width .3s}
.fm-drawer-items{flex:1;overflow-y:auto;padding:8px 22px}
.fm-ci{display:flex;gap:14px;padding:16px 0;border-bottom:1px solid var(--fm-line-soft)}
.fm-ci img{width:66px;height:82px;object-fit:cover;border-radius:8px;background:var(--fm-paper-2);flex:none}
.fm-ci-b{flex:1;min-width:0}
.fm-ci-b h4{font-family:var(--fm-serif);font-size:1.05rem;margin:0 0 3px}
.fm-ci-meta{font-family:var(--fm-mono);font-size:.58rem;text-transform:uppercase;letter-spacing:.08em;color:var(--fm-muted);margin-bottom:8px}
.fm-qty{display:inline-flex;align-items:center;border:1px solid var(--fm-line);border-radius:7px;overflow:hidden}
.fm-qty button{width:28px;height:28px;background:none;border:none;color:var(--fm-charcoal);display:grid;place-items:center;font-family:var(--fm-mono)}
.fm-qty button:hover{background:var(--fm-paper-2)}
.fm-qty span{min-width:28px;text-align:center;font-family:var(--fm-mono);font-size:.8rem}
.fm-ci-rm{background:none;border:none;color:var(--fm-muted);font-family:var(--fm-mono);text-transform:uppercase;font-size:.56rem;letter-spacing:.08em;padding:0;margin-top:6px}
.fm-ci-rm:hover{color:var(--fm-sienna-deep)}
.fm-ci-price{font-family:var(--fm-mono);font-size:.85rem;text-align:right}
.fm-drawer-foot{padding:20px 22px;border-top:1px solid var(--fm-line)}
.fm-drawer-foot .fm-row{display:flex;justify-content:space-between;align-items:baseline;margin-bottom:14px}
.fm-drawer-foot .fm-row b{font-family:var(--fm-serif);font-size:1.5rem}
.fm-empty{text-align:center;color:var(--fm-muted);padding:60px 20px;font-size:.9rem}

/* ---------- Shop / table-specs ---------- */
.fm-shop-hero{background:var(--fm-charcoal);color:var(--fm-cream);padding:52px 0}
.fm-shop-hero h1{font-size:clamp(2.4rem,5vw,4rem);margin:12px 0 10px}
.fm-shop-hero p{color:rgba(240,236,226,.72);max-width:52ch;margin:0}
.fm-shop-hero .fm-eyebrow{color:var(--fm-sienna)}
.fm-toolbar{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:20px 0;border-bottom:1px solid var(--fm-line);flex-wrap:wrap;position:sticky;top:var(--fm-header-h);background:var(--fm-cream);z-index:40}
.fm-filters{display:flex;gap:8px;flex-wrap:wrap}
.fm-sort{display:flex;align-items:center;gap:10px}
.fm-sort select{font-family:var(--fm-mono);text-transform:uppercase;letter-spacing:.08em;font-size:.66rem;padding:10px 14px;border-radius:var(--fm-radius-sm);border:1px solid var(--fm-line);background:var(--fm-white);color:var(--fm-charcoal)}
.fm-count{font-family:var(--fm-mono);text-transform:uppercase;letter-spacing:.1em;font-size:.62rem;color:var(--fm-muted)}

/* specs table listing */
.fm-table{width:100%;border-collapse:collapse}
.fm-table thead th{font-family:var(--fm-mono);text-transform:uppercase;letter-spacing:.1em;font-size:.6rem;color:var(--fm-muted);text-align:left;padding:16px 14px;border-bottom:1px solid var(--fm-line);font-weight:400}
.fm-table thead th.fm-ta-r{text-align:right}
.fm-row-prod{border-bottom:1px solid var(--fm-line-soft);transition:background .16s}
.fm-row-prod:hover{background:var(--fm-white)}
.fm-row-prod td{padding:16px 14px;vertical-align:middle}
.fm-rp-media{width:118px}
.fm-rp-media a{display:block;width:88px;height:104px;border-radius:9px;overflow:hidden;background:var(--fm-paper-2);position:relative}
.fm-rp-media img{width:100%;height:100%;object-fit:cover}
.fm-rp-name{min-width:190px}
.fm-rp-name .fm-card-cat{margin-bottom:4px}
.fm-rp-name h3{font-family:var(--fm-serif);font-size:1.32rem;line-height:1.1;color:var(--fm-charcoal)}
.fm-rp-name .fm-badges{margin-top:8px}
.fm-rp-spec{font-family:var(--fm-mono);font-size:.66rem;letter-spacing:.04em;color:var(--fm-muted);text-transform:uppercase}
.fm-rp-price{text-align:right;white-space:nowrap}
.fm-rp-cta{text-align:right;width:150px}
.fm-rp-cta .fm-btn{padding:12px 18px}
.fm-shop-empty{padding:60px 0;text-align:center;color:var(--fm-muted);display:none}

/* ---------- PDP ---------- */
.fm-pdp{padding:34px 0 20px}
.fm-crumb{font-family:var(--fm-mono);text-transform:uppercase;letter-spacing:.1em;font-size:.62rem;color:var(--fm-muted);margin-bottom:22px;display:flex;gap:8px;flex-wrap:wrap}
.fm-crumb a:hover{color:var(--fm-sienna-deep)}
.fm-pdp-grid{display:grid;grid-template-columns:1.05fr .95fr;gap:48px;align-items:start}
.fm-gallery{position:sticky;top:calc(var(--fm-header-h) + 20px)}
.fm-gallery-main{border-radius:var(--fm-radius);overflow:hidden;background:var(--fm-paper-2);aspect-ratio:4/5;margin-bottom:14px;border:1px solid var(--fm-line)}
.fm-gallery-main img{width:100%;height:100%;object-fit:cover}
.fm-thumbs{display:flex;gap:12px}
.fm-thumbs button{width:82px;height:98px;border-radius:9px;overflow:hidden;border:1px solid var(--fm-line);background:var(--fm-paper-2);padding:0}
.fm-thumbs button[aria-current="true"]{border-color:var(--fm-charcoal);border-width:2px}
.fm-thumbs img{width:100%;height:100%;object-fit:cover}
.fm-pdp-info .fm-card-cat{margin-bottom:8px}
.fm-pdp-info h1{font-size:clamp(2rem,3.6vw,2.9rem);margin-bottom:12px;color:var(--fm-charcoal)}
.fm-pdp-rating{display:flex;align-items:center;gap:10px;margin-bottom:18px}
.fm-pdp-price{display:flex;align-items:baseline;gap:12px;margin-bottom:20px}
.fm-pdp-price .fm-price{font-size:1.7rem}
.fm-pdp-price .fm-badge{align-self:center}
.fm-pdp-short{font-size:1.05rem;color:var(--fm-charcoal);margin-bottom:24px;max-width:46ch}
.fm-opt{margin-bottom:22px}
.fm-opt>span{font-family:var(--fm-mono);text-transform:uppercase;letter-spacing:.12em;font-size:.62rem;color:var(--fm-muted);display:block;margin-bottom:10px}
.fm-opt-row{display:flex;gap:9px;flex-wrap:wrap}
.fm-opt-row button{font-family:var(--fm-mono);text-transform:uppercase;letter-spacing:.06em;font-size:.66rem;padding:11px 16px;border-radius:var(--fm-radius-sm);border:1px solid var(--fm-line);background:var(--fm-white);color:var(--fm-charcoal)}
.fm-opt-row button[aria-pressed="true"]{background:var(--fm-charcoal);color:var(--fm-cream);border-color:var(--fm-charcoal)}
.fm-buy{display:flex;gap:12px;align-items:stretch;margin-bottom:16px}
.fm-buy .fm-qty{border-radius:var(--fm-radius-sm)}
.fm-buy .fm-qty button{width:46px;height:100%}
.fm-buy .fm-btn{flex:1}
.fm-stock{display:inline-flex;align-items:center;gap:8px;font-family:var(--fm-mono);text-transform:uppercase;letter-spacing:.1em;font-size:.62rem;color:var(--fm-sienna-deep);margin-bottom:20px}
.fm-stock i{width:8px;height:8px;border-radius:50%;background:var(--fm-sienna);display:block}
.fm-stock--out{color:var(--fm-muted)}
.fm-stock--out i{background:var(--fm-muted)}
.fm-pdp-reassure{display:grid;grid-template-columns:1fr 1fr;gap:14px;padding:20px 0;border-top:1px solid var(--fm-line);border-bottom:1px solid var(--fm-line);margin-bottom:24px}
.fm-pdp-reassure div{display:flex;align-items:center;gap:10px;font-size:.82rem;color:var(--fm-charcoal)}
.fm-pdp-reassure svg{width:20px;height:20px;stroke:var(--fm-sienna-deep);stroke-width:1.4;fill:none;flex:none}
.fm-bullets{list-style:none;margin:0 0 24px;padding:0;display:grid;gap:10px}
.fm-bullets li{display:flex;gap:11px;align-items:flex-start;font-size:.92rem}
.fm-bullets svg{width:18px;height:18px;stroke:var(--fm-sienna-deep);stroke-width:1.6;fill:none;flex:none;margin-top:3px}
.fm-pdp-block{padding:44px 0;border-top:1px solid var(--fm-line)}
.fm-pdp-block h2{font-size:1.7rem;margin-bottom:20px}
.fm-specs{width:100%;border-collapse:collapse}
.fm-specs th,.fm-specs td{text-align:left;padding:13px 4px;border-bottom:1px solid var(--fm-line-soft);font-size:.9rem}
.fm-specs th{font-family:var(--fm-mono);text-transform:uppercase;letter-spacing:.08em;font-size:.62rem;color:var(--fm-muted);font-weight:400;width:40%}
.fm-longtext{max-width:70ch;color:var(--fm-charcoal)}
.fm-review-sum{display:flex;gap:40px;align-items:center;margin-bottom:28px;flex-wrap:wrap}
.fm-review-big{text-align:center}
.fm-review-big b{font-family:var(--fm-serif);font-size:3.4rem;display:block;line-height:1;color:var(--fm-charcoal)}
.fm-review-list{display:grid;gap:18px}
.fm-review{border:1px solid var(--fm-line);border-radius:var(--fm-radius);padding:20px;background:var(--fm-white)}
.fm-review-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:8px;gap:12px}
.fm-review-head b{font-size:.95rem}
.fm-review-head time{font-family:var(--fm-mono);font-size:.58rem;letter-spacing:.06em;color:var(--fm-muted);text-transform:uppercase}
.fm-review p{font-size:.9rem;color:var(--fm-charcoal);margin:6px 0 0}
.fm-verified{font-family:var(--fm-mono);font-size:.55rem;text-transform:uppercase;letter-spacing:.08em;color:var(--fm-sienna-deep);display:inline-flex;align-items:center;gap:5px;margin-top:8px}

/* sticky mobile ATC */
.fm-sticky-atc{display:none;position:fixed;bottom:0;left:0;right:0;z-index:90;background:var(--fm-cream);border-top:1px solid var(--fm-line);padding:12px 16px;gap:12px;align-items:center;box-shadow:0 -8px 24px -18px rgba(20,20,16,.5)}
.fm-sticky-atc .fm-price{font-size:1rem}
.fm-sticky-atc .fm-btn{flex:1}

/* ---------- Cart page ---------- */
.fm-cartpage{display:grid;grid-template-columns:1.5fr .9fr;gap:40px;align-items:start;padding:40px 0 70px}
.fm-cart-line{display:flex;gap:18px;padding:22px 0;border-bottom:1px solid var(--fm-line)}
.fm-cart-line img{width:92px;height:112px;object-fit:cover;border-radius:9px;background:var(--fm-paper-2);flex:none}
.fm-cart-line .fm-ci-b h4{font-size:1.2rem}
.fm-summary{background:var(--fm-white);border:1px solid var(--fm-line);border-radius:var(--fm-radius);padding:28px;position:sticky;top:calc(var(--fm-header-h) + 20px)}
.fm-summary h3{font-size:1.5rem;margin-bottom:18px}
.fm-summary .fm-row{display:flex;justify-content:space-between;padding:9px 0;font-size:.92rem}
.fm-summary .fm-row--total{border-top:1px solid var(--fm-line);margin-top:8px;padding-top:16px;font-family:var(--fm-serif);font-size:1.4rem}

/* ---------- About / Contact ---------- */
.fm-page-hero{padding:60px 0 40px;border-bottom:1px solid var(--fm-line)}
.fm-page-hero h1{font-size:clamp(2.4rem,5.5vw,4.4rem);margin:14px 0 16px;max-width:16ch;color:var(--fm-charcoal)}
.fm-page-hero p{max-width:56ch;color:var(--fm-charcoal);font-size:1.08rem;margin:0}
.fm-prose{max-width:760px}
.fm-prose h2{font-size:1.9rem;margin:40px 0 14px}
.fm-prose h3{font-size:1.3rem;margin:26px 0 8px}
.fm-prose p{color:var(--fm-charcoal)}
.fm-prose ul{color:var(--fm-charcoal);padding-left:20px}
.fm-prose li{margin-bottom:8px}
.fm-values{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;margin:30px 0}
.fm-about-media{border-radius:var(--fm-radius-lg);overflow:hidden;aspect-ratio:16/9;margin:30px 0;border:1px solid var(--fm-line)}
.fm-about-media img{width:100%;height:100%;object-fit:cover}
.fm-contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:44px;padding:44px 0 70px;align-items:start}
.fm-field{margin-bottom:18px}
.fm-field label{font-family:var(--fm-mono);text-transform:uppercase;letter-spacing:.1em;font-size:.62rem;color:var(--fm-muted);display:block;margin-bottom:7px}
.fm-field input,.fm-field textarea{width:100%;padding:14px 16px;border-radius:var(--fm-radius-sm);border:1px solid var(--fm-line);background:var(--fm-white);color:var(--fm-ink);font-family:var(--fm-sans);font-size:.95rem}
.fm-field textarea{min-height:140px;resize:vertical}
.fm-contact-info{background:var(--fm-charcoal);color:var(--fm-cream);border-radius:var(--fm-radius-lg);padding:36px}
.fm-contact-info h3{font-size:1.5rem;margin-bottom:20px}
.fm-contact-info .fm-ci-line{display:flex;gap:13px;align-items:flex-start;margin-bottom:18px}
.fm-contact-info svg{width:20px;height:20px;stroke:var(--fm-sienna);stroke-width:1.4;fill:none;flex:none;margin-top:2px}
.fm-contact-info b{display:block;font-family:var(--fm-mono);text-transform:uppercase;letter-spacing:.1em;font-size:.62rem;margin-bottom:3px}
.fm-contact-info span{color:rgba(240,236,226,.72);font-size:.9rem}

/* legal */
.fm-legal{max-width:820px;padding:50px 0 70px}
.fm-legal h1{font-size:clamp(2rem,4vw,3rem);margin-bottom:8px}
.fm-legal .fm-updated{font-family:var(--fm-mono);text-transform:uppercase;letter-spacing:.1em;font-size:.62rem;color:var(--fm-muted);margin-bottom:30px}
.fm-legal h2{font-size:1.4rem;margin:34px 0 10px}
.fm-legal p,.fm-legal li{color:var(--fm-charcoal);font-size:.95rem}
.fm-legal ul{padding-left:20px}

/* related */
.fm-related{padding:50px 0 70px;border-top:1px solid var(--fm-line)}

/* toast */
.fm-toast{position:fixed;bottom:24px;left:50%;transform:translateX(-50%) translateY(20px);background:var(--fm-charcoal);color:var(--fm-cream);padding:14px 22px;border-radius:var(--fm-radius-sm);font-family:var(--fm-mono);text-transform:uppercase;letter-spacing:.1em;font-size:.66rem;z-index:300;opacity:0;visibility:hidden;transition:opacity .25s,transform .25s;box-shadow:var(--fm-shadow);display:flex;align-items:center;gap:10px}
.fm-toast svg{width:18px;height:18px;stroke:var(--fm-sienna);stroke-width:1.6;fill:none}
.fm-toast[data-show="true"]{opacity:1;visibility:visible;transform:translateX(-50%)}

.fm-hide{display:none!important}

/* ---------- Responsive ---------- */
@media (max-width:1024px){
  .fm-mega-inner{grid-template-columns:1fr 1fr}
  .fm-grid--4{grid-template-columns:repeat(3,1fr)}
  .fm-seals{grid-template-columns:repeat(2,1fr)}
  .fm-needs{grid-template-columns:repeat(2,1fr)}
  .fm-reassure .fm-wrap{grid-template-columns:repeat(2,1fr);gap:18px}
  .fm-pdp-grid{grid-template-columns:1fr;gap:30px}
  .fm-gallery{position:static}
  .fm-cartpage{grid-template-columns:1fr}
  .fm-summary{position:static}
  .fm-quiz-grid{grid-template-columns:1fr;gap:28px}
}
@media (max-width:820px){
  .fm-nav{display:none}
  .fm-burger{display:inline-grid}
  .fm-logo img{height:28px}
  .fm-hero h1{font-size:clamp(3rem,17vw,6rem)}
  .fm-lookbook,.fm-lookbook--asym{grid-template-columns:1fr}
  .fm-look--tall{grid-row:auto;min-height:360px}
  .fm-journal{grid-template-columns:1fr;gap:32px}
  .fm-ticket-top{grid-template-columns:1fr 1fr;gap:26px}
  .fm-contact-grid{grid-template-columns:1fr;gap:30px}
  .fm-values{grid-template-columns:1fr}
  .fm-grid--3{grid-template-columns:repeat(2,1fr)}
}
@media (max-width:640px){
  .fm-wrap{padding:0 16px}
  .fm-logo img{height:23px}
  .fm-header .fm-wrap{gap:8px}
  .fm-iconbtn{width:40px;height:40px}
  .fm-sec{padding:52px 0}
  .fm-hide-sm{display:none}
  .fm-grid--4,.fm-grid--3,.fm-grid--2{grid-template-columns:repeat(2,1fr);gap:14px}
  .fm-reassure .fm-wrap{grid-template-columns:1fr 1fr}
  .fm-seals{grid-template-columns:1fr 1fr}
  .fm-needs{grid-template-columns:1fr}
  .fm-quiz,.fm-news,.fm-immersive-b{padding:26px}
  .fm-ticket{padding:32px 22px 26px}
  .fm-ticket-top{grid-template-columns:1fr;gap:22px}
  .fm-card-name{font-size:1.12rem}
  .fm-sec-head{margin-bottom:24px}
  /* table-specs -> stacked cards on mobile */
  .fm-table thead{display:none}
  .fm-table,.fm-table tbody,.fm-row-prod,.fm-row-prod td{display:block;width:auto}
  .fm-row-prod{border:1px solid var(--fm-line);border-radius:var(--fm-radius);background:var(--fm-white);margin-bottom:14px;padding:14px;position:relative;display:grid;grid-template-columns:88px 1fr;gap:14px}
  .fm-row-prod td{padding:0;border:none}
  .fm-rp-media{grid-row:span 4;width:auto}
  .fm-rp-media a{width:88px;height:110px}
  .fm-rp-spec{grid-column:2}
  .fm-rp-price{text-align:left}
  .fm-rp-cta{text-align:left;width:auto}
  .fm-rp-cta .fm-btn{width:100%}
  .fm-sticky-atc{display:flex}
  .fm-pdp{padding-bottom:90px}
  .fm-pdp-reassure{grid-template-columns:1fr}
  .fm-cartpage{padding-bottom:40px}
  .fm-review-sum{gap:20px}
  .fm-hero-strip{gap:22px}
  .fm-hero-strip b{font-size:1.4rem}
}
