/* Cities, studios, countries, interviews, blog and editorial pages (2026 design) */
.p-hero .wrap{grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr)}
.p-hero:not(.has-side) .wrap{grid-template-columns:minmax(0,1fr);max-width:960px}
.p-hero:not(.has-side){text-align:left}
.p-hero-img{border-radius:24px;overflow:hidden;aspect-ratio:4/3;box-shadow:0 30px 70px -30px rgba(18,17,24,.35)}
.p-hero-img img{width:100%;height:100%;object-fit:cover}
.portrait-img{aspect-ratio:4/5;max-width:420px;justify-self:end;width:100%}
.post-hero h1{font-size:clamp(34px,4.2vw,54px)}
.chips-row{display:flex;flex-wrap:wrap;gap:10px;margin:0 0 30px}
.chip{display:inline-flex;align-items:center;gap:6px;padding:9px 14px;border-radius:999px;border:1px solid var(--line-2);background:#fff;font-size:14px;color:var(--text);transition:background .2s,border-color .2s}
.chip:hover{background:var(--bg-2)}
.chip.on{background:var(--text);border-color:var(--text);color:#fff}
.p-hero .chips-row{margin:22px 0 0}
/* studios */
.scards{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
.scard{display:flex;flex-direction:column;border-radius:18px;overflow:hidden;background:#fff;border:1px solid var(--line);transition:transform .3s,box-shadow .3s}
.scard:hover{transform:translateY(-3px);box-shadow:0 20px 40px -24px rgba(18,17,24,.35)}
.scard-img{aspect-ratio:16/10;overflow:hidden;background:var(--bg-2)}
.scard-img img{width:100%;height:100%;object-fit:cover}
.scard-body{display:flex;flex-direction:column;gap:6px;padding:18px 20px}
.scard-body b{font:700 19px/1.2 var(--display);letter-spacing:-.01em}
.scard-body small{color:var(--muted);font-size:14px}
.more{display:flex;align-items:center;justify-content:space-between;font-weight:600;font-size:14px;margin-top:8px}
.more i{width:30px;height:30px;border-radius:50%;background:var(--bg-2);display:grid;place-items:center;font-style:normal;transition:background .3s,color .3s}
a:hover .more i{background:var(--pink);color:#fff}
/* cities */
.cities{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}
.city{position:relative;display:block;aspect-ratio:4/3;border-radius:18px;overflow:hidden;color:#fff;isolation:isolate}
.city img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:-2;transition:transform .6s}
.city::after{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(180deg,transparent 35%,rgba(9,9,11,.85))}
.city:hover img{transform:scale(1.06)}
.city span{position:absolute;left:16px;right:16px;bottom:14px}
.city b{display:block;font:700 22px/1.1 var(--display)}
.city small{font-size:13px;color:#E9E8EE}
/* people */
.people{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin-bottom:10px}
.person{background:#fff;border:1px solid var(--line);border-radius:18px;padding:14px 14px 18px}
.person img{width:100%;aspect-ratio:1;object-fit:cover;border-radius:12px;margin-bottom:12px;background:var(--bg-2)}
.person b{display:block;font:700 18px/1.2 var(--display)}
.person small{display:block;color:#B3123D;font-size:13px;font-weight:600;margin:4px 0 8px}
.person p{color:var(--muted);font-size:14px;line-height:1.55}
/* interview cards */
.pcards{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}
.pcard{display:flex;flex-direction:column;background:#fff;border:1px solid var(--line);border-radius:18px;overflow:hidden;transition:transform .3s,box-shadow .3s}
.pcard:hover{transform:translateY(-3px);box-shadow:0 20px 40px -24px rgba(18,17,24,.35)}
.pcard-img{aspect-ratio:1;overflow:hidden;background:var(--bg-2)}
.pcard-img img{width:100%;height:100%;object-fit:cover}
.pcard-body{display:flex;flex-direction:column;gap:6px;padding:16px 18px;flex:1}
.pcard-body b{font:700 18px/1.2 var(--display)}
.pcard-body small{color:var(--muted);font-size:13px;line-height:1.45;flex:1}
/* blog */
.bgrid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.bcard{display:flex;flex-direction:column;background:#fff;border:1px solid var(--line);border-radius:18px;overflow:hidden;transition:transform .3s,box-shadow .3s}
.bcard:hover{transform:translateY(-3px);box-shadow:0 20px 40px -24px rgba(18,17,24,.35)}
.bcard-img{aspect-ratio:16/10;overflow:hidden;background:var(--bg-2)}
.bcard-img img{width:100%;height:100%;object-fit:cover}
.bcard-body{display:flex;flex-direction:column;gap:8px;padding:16px 18px 20px}
.bcard-body small{color:#B3123D;font-size:12px;font-weight:600;letter-spacing:.02em}
.bcard-body b{font:700 18px/1.3 var(--display);letter-spacing:-.01em}
.bcard-body span{color:var(--muted);font-size:15px}
.bcard.big{grid-column:1/-1;flex-direction:row}
.bcard.big .bcard-img{flex:1.2;aspect-ratio:auto;min-height:320px}
.bcard.big .bcard-body{flex:1;justify-content:center;padding:32px}
.bcard.big b{font-size:30px;line-height:1.15}
/* long texts */
.prose{max-width:760px;font-size:17px;line-height:1.75;color:#2A2933}
.prose h2{font:700 30px/1.2 var(--display);letter-spacing:-.02em;margin:44px 0 14px;color:var(--text)}
.prose h3{font:700 23px/1.25 var(--display);letter-spacing:-.01em;margin:34px 0 12px;color:var(--text)}
.prose h4,.prose h5{font:700 19px/1.3 var(--display);margin:26px 0 10px}
.prose p{margin:0 0 16px}
.prose ul,.prose ol{margin:0 0 18px;padding-left:22px}
.prose li{margin:6px 0}
.prose a{color:#D11E4C;text-decoration:underline;text-underline-offset:3px}
.prose blockquote{margin:22px 0;padding:16px 20px;border-left:3px solid var(--pink);background:var(--bg-2);border-radius:0 12px 12px 0;font-style:italic}
.prose figure{margin:26px 0}
.prose img{border-radius:16px;width:100%;height:auto}
.prose figcaption{color:var(--soft);font-size:14px;text-align:center;margin-top:8px}
.prose strong{color:var(--text)}
.legal{max-width:880px;font-size:15px;line-height:1.7}
.legal p strong:only-child{display:block;font:700 19px/1.3 var(--display);color:var(--text);margin-top:18px}
.post-layout{display:grid;grid-template-columns:minmax(0,1fr) 320px;gap:56px;align-items:start}
.post-aside{position:sticky;top:120px}
.lead-mini{border-radius:20px;padding:24px;background:#fff;border:1px solid var(--line);box-shadow:0 24px 50px -30px rgba(18,17,24,.35);display:grid;gap:12px}
.lead-mini b{font:700 20px/1.2 var(--display)}
.lead-mini p{color:var(--muted);font-size:14px}
.lead-mini .btn{width:100%}
/* editorial blocks */
.ti{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:56px;align-items:center}
.f-sec:nth-of-type(even) .ti{direction:rtl}.f-sec:nth-of-type(even) .ti>*{direction:ltr}
.ti-img{border-radius:24px;overflow:hidden;aspect-ratio:4/5}
.ti-img img{width:100%;height:100%;object-fit:cover}
.ti-txt h2{font-size:clamp(30px,3.6vw,44px);margin:12px 0 20px}
.encadre{max-width:900px;margin:0 auto;border-radius:24px;padding:44px;background:var(--bg-2);border:1px solid var(--line)}
.encadre h2{font-size:clamp(28px,3.4vw,40px);margin:12px 0 18px}
.p-btn{margin-top:24px}
.logos{display:flex;flex-wrap:wrap;gap:26px;align-items:center}
.logos img{height:64px;width:auto;object-fit:contain;filter:saturate(.9)}
.embed{border-radius:24px;overflow:hidden;background:#fff;border:1px solid var(--line);min-height:400px}
.linkcard{display:flex;flex-direction:column;transition:transform .3s,box-shadow .3s}
.linkcard:hover{transform:translateY(-3px);box-shadow:0 20px 40px -24px rgba(18,17,24,.35)}
.linkcard p{flex:1}
.f-sec .proof{padding:0}
@media (max-width:1080px){
  .cities,.people,.pcards{grid-template-columns:repeat(3,1fr)}
  .post-layout{grid-template-columns:1fr}
  .post-aside{position:static}
}
@media (max-width:900px){
  .p-hero .wrap{grid-template-columns:1fr}
  .portrait-img{justify-self:start;max-width:360px}
  .scards,.bgrid{grid-template-columns:repeat(2,1fr)}
  .cities,.people,.pcards{grid-template-columns:repeat(2,1fr)}
  .ti{grid-template-columns:1fr;gap:28px}
  .f-sec:nth-of-type(even) .ti{direction:ltr}
  .ti-img{aspect-ratio:16/10}
  .bcard.big{flex-direction:column}
  .bcard.big .bcard-img{min-height:220px}
  .bcard.big b{font-size:24px}
}
@media (max-width:640px){
  .scards,.bgrid{grid-template-columns:1fr}
  .cities,.pcards{grid-template-columns:repeat(2,1fr)}
  .people{grid-template-columns:1fr 1fr}
  .city b{font-size:18px}
  .encadre{padding:26px}
  .prose{font-size:16px}
  .prose h2{font-size:25px}
  .logos img{height:44px}
}
