.page-guide-stocks-allotements-voyage .editorial-hero picture img, .page-guide-rooming-list-voyages-groupe .editorial-hero picture img { object-position: 70% 18%; }
.inventory-waterfall { margin: 24px 0; padding: clamp(18px, 3vw, 30px); border: 1px solid #b7cec3; border-radius: 14px; background: #fff; }
.inventory-waterfall h3 { margin-top: 0; font-size: 24px; line-height: 1.3; }
.inventory-waterfall ol { padding: 0; margin: 24px 0 0; list-style: none; display: grid; gap: 18px; }
.inventory-waterfall li { display: grid; grid-template-columns: minmax(180px, 1.3fr) minmax(75px, 1fr) 34px; align-items: center; gap: 16px; }
.inventory-waterfall li strong, .inventory-waterfall li span { display: block; }
.inventory-waterfall li span { font-size: 14px; color: #4e645b; line-height: 1.5; margin-top: 4px; }
.inventory-waterfall li b { font-size: 23px; text-align: right; }
.inventory-waterfall meter { display: block; width: 100%; min-width: 0; height: 25px; accent-color: #215d48; }
.inventory-waterfall meter::-webkit-meter-bar { background: #e1ebe4; border: 0; border-radius: 4px; }
.inventory-waterfall meter::-webkit-meter-optimum-value { background: #215d48; border-radius: 4px; }
.inventory-waterfall meter::-moz-meter-bar { background: #215d48; }
.inventory-ledger { margin-block: 26px; padding: clamp(18px, 3vw, 28px); border: 1px solid #bbcec3; border-radius: 14px; background: #fff; }
.inventory-ledger h3 { margin-top: 0; font-size: 24px; line-height: 1.3; }
.inventory-ledger__choices { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; margin-block: 24px; }
.inventory-ledger__choices button { min-height: 58px; padding: 14px 18px; border: 1px solid #98b4a6; border-radius: 9px; background: #f3f7f3; color: #224a3c; font: inherit; font-size: 15px; line-height: 1.4; text-align: left; cursor: pointer; }
.inventory-ledger__choices button[aria-pressed="true"] { color: #fff; background: #245c49; border-color: #245c49; }
.inventory-ledger__choices button:disabled { cursor: default; }
.inventory-ledger__choices button:focus-visible { outline: 3px solid #9b4a20; outline-offset: 4px; }
.inventory-ledger__result { min-height: 190px; padding: 22px; border: 1px solid #c3d4ca; border-radius: 10px; background: #f1f7f1; }
.inventory-ledger__count { margin-top: 0; font-size: clamp(23px, 2.6vw, 31px); font-weight: 700; line-height: 1.3; }
.inventory-ledger__result p:last-child { margin-bottom: 0; }
.rooming-comparison { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 22px; margin-block: 26px; }
.rooming-comparison figure { margin: 0; padding: 22px; border: 1px solid #b5cbbf; border-radius: 14px; background: #fff; min-width: 0; }
.rooming-comparison h3 { font-size: 23px; line-height: 1.3; margin-top: 0; }
.rooming-comparison figcaption p { font-size: 15px; line-height: 1.6; }
.rooming-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); list-style: none; padding: 0; gap: 10px; margin: 22px 0; }
.rooming-cell { min-width: 0; border: 1px solid #aec7b9; border-radius: 10px; padding: 12px 8px; background: #edf6ee; text-align: center; }
.rooming-cell--empty { border-style: dashed; background: #f4f3ef; }
.rooming-cell > span, .rooming-cell strong { display: block; font-size: 12px; line-height: 1.5; }
.rooming-beds { display: flex; gap: 6px; justify-content: center; margin-block: 14px; }
.rooming-beds i { display: block; width: 16px; height: 29px; border: 2px solid #61766a; border-radius: 9px 9px 4px 4px; background: #fff; }
.rooming-cell[data-people="2"] .rooming-beds i, .rooming-cell[data-people="1"] .rooming-beds i:first-child { background: #215c45; border-color: #215c45; }
.rooming-comparison__total { padding-top: 18px; border-top: 1px solid #c8d8ce; margin-bottom: 0; line-height: 1.6; }
.inventory-visual :is(p, td, li) { overflow-wrap: anywhere; }
@media (max-width: 1000px) { .rooming-comparison { grid-template-columns: minmax(0, 1fr); } }
@media (max-width: 620px) { .inventory-waterfall li { grid-template-columns: minmax(0, 1fr) 34px; gap: 10px; } .inventory-waterfall li > div { grid-column: 1 / -1; } .inventory-ledger__choices { grid-template-columns: minmax(0, 1fr); } .inventory-ledger__result { min-height: 240px; } .rooming-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
