/* Heroes immersifs : exclusivement mobile et tablette portrait. */
@media (max-width:768px) {
  :is(.q-hero,.t-hero,.c-hero,.m-hero,.a-hero,.cl-hero,.tr-hero,.fd-hero,.pp-hero,.sg-hero) {
    --hero-focus:75% 0%;
    position:relative;isolation:isolate;display:flex;flex-direction:column;justify-content:flex-end;
    min-height:720px;background:#F8F5EF;overflow:hidden;
  }
  :is(.q-hero-image,.t-hero-image,.c-hero-image,.m-hero-image,.a-hero-image,.cl-hero-image,.tr-hero-image,.fd-hero-image,.pp-hero-image,.sg-hero-image) {
    position:absolute;inset:0;z-index:-2;width:100%;max-width:none;height:82%;aspect-ratio:auto;
    object-fit:cover;object-position:var(--hero-focus);mask-image:linear-gradient(180deg,#000 0%,#000 65%,transparent 100%);
  }
  :is(.q-hero-shade,.t-hero-shade,.c-hero-shade,.m-hero-shade,.a-hero-shade,.cl-hero-shade,.tr-hero-shade,.fd-hero-shade,.pp-hero-shade,.sg-hero-shade) {
    display:block;position:absolute;inset:0;z-index:-1;
    background:linear-gradient(180deg,rgba(248,245,239,0) 0%,rgba(248,245,239,.08) 18%,rgba(248,245,239,.64) 30%,rgba(248,245,239,.90) 43%,rgba(248,245,239,.96) 67%,#F8F5EF 100%);
  }
  :is(.q-hero,.t-hero,.c-hero,.m-hero,.a-hero,.cl-hero,.tr-hero,.fd-hero,.pp-hero,.sg-hero)>.q-container {width:100%;padding-inline:24px;margin:0;order:1}
  :is(.q-hero-copy,.t-hero-copy,.c-hero-copy,.m-hero-copy,.a-hero-copy,.cl-hero-copy,.tr-hero-copy,.fd-hero-copy,.pp-hero-copy,.sg-hero-copy) {width:100%;max-width:650px;padding:220px 0 30px;color:#0D1B2A}
  :is(.q-hero,.t-hero,.c-hero,.m-hero,.a-hero,.cl-hero,.tr-hero,.fd-hero,.pp-hero,.sg-hero) h1 {font-size:clamp(36px,9.7vw,42px);line-height:1.08;letter-spacing:-.035em;color:#0D1B2A;margin:0 0 20px;max-width:650px;text-wrap:pretty}
  :is(.q-hero,.t-hero,.c-hero,.m-hero,.a-hero,.cl-hero,.tr-hero,.fd-hero,.pp-hero,.sg-hero) h1 span+span {margin-top:8px}
  :is(.q-hero,.t-hero,.c-hero,.m-hero,.a-hero,.cl-hero,.tr-hero,.fd-hero,.pp-hero,.sg-hero) .q-kicker {color:#614B24;font-size:10px;line-height:1.65;margin:0 0 16px;letter-spacing:.12em;max-width:none}
  :is(.q-hero-copy,.t-hero-copy,.c-hero-copy,.m-hero-copy,.a-hero-copy,.cl-hero-copy,.tr-hero-copy,.fd-hero-copy,.pp-hero-copy,.sg-hero-copy)>p:not(.q-kicker) {font-size:14px;line-height:1.7;color:#39434B;margin:0 0 22px;max-width:590px}
  :is(.cl-hero-facts,.tr-hero-facts,.fd-hero-facts,.pp-hero-facts,.sg-hero-facts) {color:#614B24;border-color:#614B2440;padding:13px 0;margin:0 0 13px;font-size:12px}
  :is(.q-hero,.t-hero,.c-hero,.m-hero,.a-hero,.cl-hero,.tr-hero,.fd-hero,.pp-hero,.sg-hero) :is(.q-actions,.t-actions,.c-actions,.m-actions,.a-actions,.cl-actions,.tr-actions,.fd-actions,.pp-actions,.sg-actions) {display:flex;flex-direction:column;align-items:flex-start;gap:8px}
  :is(.q-hero,.t-hero,.c-hero,.m-hero,.a-hero,.cl-hero,.tr-hero,.fd-hero,.pp-hero,.sg-hero) .q-button {width:auto;min-height:48px;padding:12px 21px;font-size:13px}
  :is(.q-hero,.t-hero,.c-hero,.m-hero,.a-hero,.cl-hero,.tr-hero,.fd-hero,.pp-hero,.sg-hero) :is(.q-link,.q-button-clear) {color:#0D1B2A;min-height:44px;display:inline-flex;align-items:center;border-color:#614B2466;font-size:13px;padding:8px 0}
  :is(.q-hero,.t-hero,.c-hero,.m-hero,.a-hero,.cl-hero,.tr-hero,.fd-hero,.pp-hero,.sg-hero) :focus-visible {outline-color:#614B24}
  .q-hero{--hero-focus:47% 0%}
  .t-hero{--hero-focus:72% 0%}
  .c-hero{--hero-focus:74% 0%}
  .m-hero{--hero-focus:75% 0%}
  .m-hero-copy{padding-top:250px}
  .m-hero-shade{background:linear-gradient(180deg,#F8F5EF00 15%,#F8F5EF30 28%,#F8F5EFD9 43%,#F8F5EFF5 67%,#F8F5EF),linear-gradient(90deg,#F8F5EF99,transparent 70%)}
  .a-hero{--hero-focus:64% 0%}
  .a-hero-copy{padding-top:240px}
  .cl-hero{--hero-focus:77% 0%}
  .tr-hero{--hero-focus:76% 0%}
  .fd-hero{--hero-focus:91% 0%}
  .pp-hero{--hero-focus:77% 0%}
  .sg-hero{--hero-focus:79% 24%}
  :is(.tr-hero,.fd-hero,.sg-hero) h1{font-size:clamp(35px,9.25vw,40px)}
  .sg-hero h1{font-size:clamp(32px,8.5vw,38px)}
  .sg-hero-copy{padding-top:185px}
  .sg-hero-shade{background:linear-gradient(180deg,#F8F5EF00 0%,#F8F5EF14 12%,#F8F5EFD1 25%,#F8F5EFF0 55%,#F8F5EF 100%)}
  /* Pas d'image ajoutée à Réserver : une introduction éditoriale ivoire. */
  .r-hero{background:linear-gradient(145deg,#FFFDFA,#F8F5EF 72%);color:#39434B;border:0}
  .r-hero-inner{width:100%;padding:66px 24px 40px;min-height:520px;align-items:center}
  .r-hero h1{font-size:clamp(36px,9.7vw,42px);line-height:1.1;color:#0D1B2A;margin-bottom:22px}
  .r-hero .q-kicker{color:#614B24}.r-hero .q-link{color:#0D1B2A}
  .r-hero .q-actions{align-items:flex-start}.r-hero .q-button{width:auto;padding-inline:22px}
  /* Le portrait existant devient le fond du Hero, sans nouvel asset. */
  .ct-hero{position:relative;isolation:isolate;overflow:hidden;background:#F8F5EF;color:#39434B;padding:0}
  .ct-hero h1{color:#0D1B2A;font-size:clamp(36px,9.7vw,42px);line-height:1.1}
  .ct-hero .q-kicker{color:#614B24}.ct-hero .q-link{color:#0D1B2A}
  .ct-hero .q-container{position:static;width:100%;padding:280px 24px 32px}
  .ct-hero .q-actions{align-items:flex-start}.ct-hero .q-button{width:auto;padding-inline:22px}
  .ct-portrait-frame{position:absolute;inset:0;z-index:-2;width:100%;height:82%;margin:0;border:0;border-radius:0;box-shadow:none;mask-image:linear-gradient(#000 65%,transparent)}
  .ct-hero-portrait{transform:none;object-position:50% 40%}
  .ct-hero::before{content:'';position:absolute;inset:0;z-index:-1;background:linear-gradient(180deg,#F8F5EF00 15%,#F8F5EF33 30%,#F8F5EFE6 45%,#F8F5EFF2 55%,#F8F5EF 100%),linear-gradient(90deg,#F8F5EF70,transparent 65%)}
  .ct-hero :is(h1,p:not(.q-kicker)){max-width:650px}
}
@media (min-width:601px) and (max-width:768px) {
  :is(.q-hero,.t-hero,.c-hero,.m-hero,.a-hero,.cl-hero,.tr-hero,.fd-hero,.pp-hero,.sg-hero){min-height:730px}
  :is(.q-hero,.t-hero,.c-hero,.m-hero,.a-hero,.cl-hero,.tr-hero,.fd-hero,.pp-hero,.sg-hero)>.q-container{padding-inline:36px}
  :is(.q-hero-copy,.t-hero-copy,.c-hero-copy,.m-hero-copy,.a-hero-copy,.cl-hero-copy,.tr-hero-copy,.fd-hero-copy,.pp-hero-copy,.sg-hero-copy){padding-top:260px;padding-bottom:38px}
  :is(.q-hero,.t-hero,.c-hero,.m-hero,.a-hero,.cl-hero,.tr-hero,.fd-hero,.pp-hero,.sg-hero) :is(.q-actions,.t-actions,.c-actions,.m-actions,.a-actions,.cl-actions,.tr-actions,.fd-actions,.pp-actions,.sg-actions){flex-direction:row;align-items:center;gap:24px}
}
