/* The Book page's own passages, in page order. Served on /book only, after styles.css (which holds the fact lists). */

/* ---------- the ask (data-section="opening") ---------- */
.bk-open{padding-block:clamp(32px, 5vw, 72px) clamp(48px, 6vw, 100px)}
.bk-open h1{font-size:clamp(34px, 9vw, 42px);line-height:1.06;letter-spacing:-.018em}
.bk-open-head .lede{margin-top:14px}
.bk-open .ways-live{margin-top:clamp(26px, 3vw, 44px)}
.bk-jump{display:flex;flex-wrap:wrap;column-gap:28px;margin-top:20px}
@media (min-width:900px){
  .bk-open-head{display:grid;grid-template-columns:repeat(12,1fr);column-gap:var(--gap);align-items:end}
  .bk-open h1{grid-column:1 / 7;font-size:clamp(42px, 20px + 2.3vw, 60px);line-height:1.02}
  .bk-open-head .lede{grid-column:8 / 13;margin:0;justify-self:end}
}

/* ---------- the whole house through the year (data-section="seasons") ---------- */
.bk-seasons{background:var(--pool);padding-block:clamp(56px, 7vw, 120px)}
.bk-seasons-grid{display:grid;gap:26px}
.bk-seasons-words .lede{margin-top:14px}
/* The whole stay's price, fees in, leads the nightly rates (US and UK law want the total most prominent). */
.bk-total{margin-top:18px;font-size:16px;color:var(--mist)}
.bk-total b{display:block;margin:2px 0;font-family:var(--display);font-weight:400;font-size:clamp(34px, 28px + 1.2vw, 46px);line-height:1.05;color:var(--velvet)}
.bk-table{width:100%;border-collapse:collapse;font-size:16px}
.bk-table th,.bk-table td{padding:14px 0;border-top:1px solid var(--line);text-align:left;vertical-align:baseline;font-weight:400}
.bk-table thead th{font-size:14px;font-weight:600;color:var(--mist);border-top:0;padding-top:0}
.bk-table tbody th b{display:block;font-weight:600}
.bk-table tbody th span{display:block;font-size:15px;color:var(--mist)}
.bk-table .bk-p{text-align:right;font-weight:600;white-space:nowrap}
.bk-table thead .bk-p{font-weight:600}
.bk-sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}
.bk-all{margin-top:8px}
.bk-all>summary{display:inline-flex;align-items:center;gap:10px;min-height:44px;font-weight:600;cursor:pointer;list-style:none;text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:5px}
.bk-all>summary::-webkit-details-marker{display:none}
.bk-all>summary::after{content:"+";font-weight:400;font-size:22px;line-height:1;text-decoration:none}
.bk-all[open]>summary::after{content:"\2013"}
@media (min-width:900px){
  .bk-seasons-grid{grid-template-columns:repeat(12,1fr);column-gap:var(--gap);align-items:start}
  .bk-seasons-words{grid-column:1 / 5}
  .bk-rates{grid-column:6 / 13}
}

/* ---------- before you book, and the ask ---------- */
.bk-before{padding-block:clamp(56px, 7vw, 120px)}
.bk-end{padding-block:clamp(56px, 7vw, 120px) clamp(72px, 9vw, 150px);border-top:1px solid var(--line)}
.bk-end-ask .lede{margin-top:12px}
.bk-end-do{display:flex;flex-wrap:wrap;align-items:center;gap:12px 24px;margin-top:22px}
@media (min-width:900px){
  .bk-end-grid{display:grid;grid-template-columns:repeat(12,1fr);column-gap:var(--gap);align-items:end}
  .bk-end h2{grid-column:1 / 6}
  .bk-end-ask{grid-column:7 / 13}
  .bk-end-ask .lede{margin:0}
}

/* The small print line in Before you book: the platform's own legal links (the booking terms, privacy), as .more links in a row. */
.bk-docs{display:flex;flex-wrap:wrap;gap:4px 24px}
.bk-docs a{display:inline-flex;align-items:center;min-height:44px;font-weight:600;text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:5px}
