/* ===== SITE B — Éditorial chaleureux ===== */
.sb { min-height:100vh; display:flex; flex-direction:column; background:var(--st-paper); }
.sb .wrap { width:100%; max-width:1280px; margin:0 auto; padding-inline:56px; }
.sb main { flex:1; }

/* header */
.sb-promo { background:var(--st-orange); color:#fff; text-align:center; font-size:12.5px; letter-spacing:.05em; padding:9px 0; }
.sb-head { position:sticky; top:0; z-index:40; background:rgba(255,255,255,.9); backdrop-filter:saturate(1.4) blur(10px); border-bottom:1px solid var(--line-1); }
.sb-head .bar { height:78px; display:flex; align-items:center; justify-content:space-between; }
.sb-nav { display:flex; align-items:center; gap:30px; }
.sb-nav button { background:none; border:none; font:var(--text-small); color:var(--fg-1); padding:6px 0; position:relative; }
.sb-nav button.active, .sb-nav button:hover { color:var(--st-orange); }
.sb-acts { display:flex; gap:6px; }

/* hero full-bleed */
.sb-hero { position:relative; }
.sb-hero .bg { width:100%; height:600px; }
.sb-hero .overlay { position:absolute; inset:0; }
.sb-hero .overlay .wrap { height:100%; display:flex; align-items:center; }
.sb-herocard { background:rgba(255,255,255,.94); border-radius:var(--r-lg); padding:40px 42px; max-width:560px; box-shadow:var(--shadow-md); }
.sb-herocard h1 { font:var(--text-display); font-size:clamp(40px,4.6vw,62px); letter-spacing:var(--tracking-tight); margin:14px 0 16px; }

/* section */
.sb-sec { padding:52px 0; }
.sb-sec.tight { padding:38px 0; }

/* manifesto */
.sb-mani { display:grid; grid-template-columns:0.95fr 1.05fr; gap:72px; align-items:start; }
.sb-mani .big { font:var(--text-h1); font-size:clamp(30px,3.3vw,44px); line-height:1.08; }
.sb-mani p { color:var(--fg-2); line-height:1.75; font-size:16.5px; }
.sb-pills { display:flex; gap:26px; margin-top:26px; flex-wrap:wrap; }
.sb-pill { display:flex; align-items:center; gap:9px; font-weight:500; font-size:14px; }

/* featured editorial rows */
.sb-band { background:var(--st-orange-soft); border-top:1px solid #f0d8cc; border-bottom:1px solid #f0d8cc; }
.sb-feat { display:grid; grid-template-columns:1fr 1fr; gap:52px; align-items:center; }
.sb-feat + .sb-feat { margin-top:42px; }
.sb-feat .img { border-radius:var(--r-lg); overflow:hidden; height:380px; background:var(--st-blue-soft); }
.sb-feat .img img { width:100%; height:100%; object-fit:cover; }
.sb-feat h3 { font:var(--text-h2); margin:10px 0 14px; }
.sb-feat p { color:var(--fg-2); line-height:1.7; margin:0 0 22px; }
.sb-feat .price { font:var(--text-h3); }

/* ritual storytelling */
.sb-rit { display:grid; grid-template-columns:repeat(3,1fr); gap:38px; }
.sb-rit .c .img { height:260px; border-radius:var(--r-lg); overflow:hidden; margin-bottom:18px; }
.sb-rit h4 { display:flex; align-items:baseline; gap:12px; margin:0 0 12px; }
.sb-rit h4 .n { font:var(--text-h3); color:var(--st-orange); }
.sb-rit h4 .t { font:var(--text-h3); }
.sb-rit p { color:var(--fg-2); line-height:1.7; margin:0; }

/* testimonial */
.sb-testi { display:grid; grid-template-columns:0.8fr 1.2fr; gap:50px; align-items:center; }
.sb-testi .img { height:340px; border-radius:var(--r-lg); overflow:hidden; }
.sb-testi blockquote { font:var(--text-h2); line-height:1.15; margin:14px 0 20px; }
.sb-stars { color:var(--st-orange); letter-spacing:3px; font-size:18px; }

/* cta full bleed */
.sb-cta { position:relative; }
.sb-cta .bg { width:100%; height:340px; }
.sb-cta .ov { position:absolute; inset:0; display:flex; flex-direction:column; align-items:center; justify-content:center; text-align:center; background:rgba(17,17,17,.32); }
.sb-cta h2 { font:var(--text-display); font-size:clamp(34px,4vw,52px); color:#fff; margin:0 0 20px; }

/* product card (editorial) */
.sb-pcard { cursor:pointer; }
.sb-pcard .img { height:300px; border-radius:var(--r-lg); overflow:hidden; background:var(--st-blue-soft); }
.sb-pcard .img img { width:100%; height:100%; object-fit:cover; transition:transform .4s; }
.sb-pcard:hover .img img { transform:scale(1.04); }
.sb-pcard h3 { font:var(--text-h3); font-size:24px; margin:14px 0 6px; }
.sb-pcard .row { display:flex; align-items:center; justify-content:space-between; margin-top:8px; }
.sb-pcard .price { font-size:18px; font-weight:500; }

/* shop layout */
.sb-shop { display:grid; grid-template-columns:230px 1fr; gap:48px; align-items:start; }
.sb-side h5 { font-size:14px; font-weight:600; margin:0 0 12px; }
.sb-side .grp { margin-bottom:26px; }
.sb-side button { display:block; background:none; border:none; color:var(--fg-2); font-size:14.5px; padding:7px 0; text-align:left; }
.sb-side button.on, .sb-side button:hover { color:var(--st-orange); }
.sb-prods { display:grid; grid-template-columns:repeat(3,1fr); gap:30px; }

/* PDP */
.sb-pdp { display:grid; grid-template-columns:1.15fr 0.85fr; gap:56px; align-items:start; }
.sb-pdp .main { height:540px; border-radius:var(--r-lg); overflow:hidden; background:var(--st-blue-soft); }
.sb-pdp .main img { width:100%; height:100%; object-fit:cover; }
.sb-pdp .thumbs { display:grid; grid-template-columns:repeat(3,1fr); gap:14px; margin-top:14px; }
.sb-pdp .thumbs .t { height:120px; border-radius:var(--r-sm); overflow:hidden; }
.sb-pdp .thumbs .t img { width:100%; height:100%; object-fit:cover; }
.sb-info { position:sticky; top:96px; }
.sb-blocks { margin-top:24px; display:flex; flex-direction:column; gap:14px; }
.sb-blk { border:1px solid var(--line-1); border-radius:var(--r-md); padding:18px 20px; }
.sb-blk h4 { margin:0 0 10px; font-size:15px; font-weight:600; }
.sb-blk p, .sb-blk li { color:var(--fg-2); font-size:14.5px; line-height:1.6; }
.sb-qty { display:inline-flex; align-items:center; gap:14px; border:1px solid var(--line-2); border-radius:var(--r-pill); padding:6px 14px; }

/* about */
.sb-abouthero { position:relative; }
.sb-abouthero .bg { width:100%; height:520px; }
.sb-abouthero .lbl { position:absolute; left:56px; bottom:48px; max-width:640px; color:#fff; }
.sb-abouthero h1 { font:var(--text-display); font-size:clamp(42px,5vw,68px); margin:8px 0 0; color:#fff; }
.sb-chap { display:grid; grid-template-columns:1fr 1fr; gap:50px; align-items:center; }
.sb-chap + .sb-chap { margin-top:42px; }
.sb-chap .img { height:300px; border-radius:var(--r-lg); overflow:hidden; }
.sb-chap h3 { font:var(--text-h2); margin:0 0 16px; }
.sb-chap p { color:var(--fg-2); line-height:1.75; }

/* contact */
.sb-csplit { display:grid; grid-template-columns:1fr 1fr; min-height:560px; }
.sb-csplit .ph { min-height:560px; }
.sb-cform { padding:64px 56px; }
.sb-cform h1 { font:var(--text-h1); font-size:46px; margin:12px 0 8px; }
.sb-cform .f { margin-bottom:18px; }
.sb-cform label { display:block; font-size:13px; font-weight:500; margin:0 0 7px; }
.sb-input { width:100%; border:1px solid var(--line-2); border-radius:var(--r-sm); padding:12px 14px; font:var(--text-body); outline:none; }
.sb-input:focus { border-color:var(--st-orange); }
.sb-cinfo { display:grid; grid-template-columns:repeat(3,1fr); gap:30px; }
.sb-cinfo .it { display:flex; gap:12px; }
.sb-cinfo h4 { margin:0 0 3px; font-size:15px; }
.sb-cinfo p { margin:0; color:var(--fg-2); font-size:14px; }

/* footer dark */
.sb-foot { background:var(--st-black); color:rgba(255,255,255,.78); padding:60px 0 30px; }
.sb-foot .cols { display:flex; justify-content:space-between; gap:40px; flex-wrap:wrap; }
.sb-foot h5 { color:#fff; font-size:14px; margin:0 0 12px; font-weight:500; }
.sb-foot a, .sb-foot button { color:rgba(255,255,255,.7); font-size:14px; display:block; padding:5px 0; background:none; border:none; text-align:left; }
.sb-foot a:hover, .sb-foot button:hover { color:#fff; }
.sb-foot .bot { display:flex; justify-content:space-between; border-top:1px solid var(--line-on-dark); margin-top:32px; padding-top:16px; font-size:12.5px; color:rgba(255,255,255,.5); }

@media (max-width:920px){
  .sb-mani,.sb-feat,.sb-rit,.sb-testi,.sb-shop,.sb-pdp,.sb-chap,.sb-csplit,.sb-prods,.sb-cinfo{grid-template-columns:1fr;}
  .sb-nav{display:none;}
}
