/* ==== lhl ~ tideline.css : skin of littlehamptonlifeboat.org.uk (reference: The Atlantic) ==== */

/* ---- lhl ~ tokens ---- */
:root {
  --lh-paper: #fbf9f4;
  --lh-ink: #151515;
  --lh-ink2: #4b4a46;
  --lh-ink3: #6d6a63;
  --lh-rule: #d9d3c5;
  --lh-flare: #b8321a;
  --lh-flare-hi: #d9492b;
  --lh-deep: #10343f;
  --lh-deep2: #0b2630;
  --lh-sand: #f1ebdd;
  --lh-foam: #e4edee;
  --lh-disp: "Libre Caslon Display", "Iowan Old Style", Georgia, serif;
  --lh-text: "Brygada 1918", Georgia, "Times New Roman", serif;
  --lh-sans: "Helvetica Neue", Helvetica, Arial, sans-serif;
  --lh-max: 1240px;
  --lh-gut: 24px;
}
/* ---- lhl ~ /tokens ---- */

/* ---- lhl ~ base ---- */
*, *::before, *::after { box-sizing: border-box; }
html { -webkit-text-size-adjust: 100%; }
body.lh { margin: 0; background: var(--lh-paper); color: var(--lh-ink); font: 400 18px/1.55 var(--lh-text); }
body.lh img { max-width: 100%; height: auto; display: block; }
body.lh a { color: inherit; text-decoration: none; }
body.lh a:hover { color: var(--lh-flare); }
body.lh a:focus-visible, .lh-navbtn:focus-visible { outline: 2px solid var(--lh-flare); outline-offset: 2px; }
.lh-i { width: 1em; height: 1em; flex: none; fill: none; stroke: currentColor; stroke-width: 1.7; stroke-linecap: round; stroke-linejoin: round; vertical-align: -.14em; }
.lh-skip { position: absolute; left: 8px; top: -80px; background: var(--lh-ink); color: #fff !important; padding: 10px 16px; z-index: 9; }
.lh-skip:focus { top: 8px; }
.lh-vh { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; }
.lh-row { max-width: var(--lh-max); margin: 0 auto; padding: 0 var(--lh-gut); }
.lh-row--wide { max-width: 1088px; }
.lh-col { max-width: 748px; }
main section { margin: 44px 0; }
/* ---- lhl ~ /base ---- */

/* ---- lhl ~ masthead ---- */
.lh-mast { background: var(--lh-paper); border-bottom: 1px solid var(--lh-ink); }
.lh-navbox { position: absolute; opacity: 0; pointer-events: none; }
.lh-mast-util { display: flex; justify-content: space-between; align-items: center; gap: 16px; padding-top: 10px; padding-bottom: 10px;
  font: 400 12.5px/1.3 var(--lh-sans); color: var(--lh-ink2); border-bottom: 1px solid var(--lh-rule); }
.lh-when { display: inline-flex; align-items: center; gap: 6px; }
.lh-util-links { display: flex; gap: 20px; }
.lh-util-links a { display: inline-flex; align-items: center; gap: 6px; text-transform: uppercase; letter-spacing: .1em; font-weight: 700; font-size: 11.5px; }
.lh-mast-main { display: flex; flex-direction: column; align-items: center; padding-top: 22px; padding-bottom: 16px; position: relative; }
.lh-wm { display: inline-flex; align-items: center; gap: 14px; }
.lh-sign { width: 50px; height: 50px; flex: none; }
.lh-wm-t { font: 400 46px/1 var(--lh-disp); letter-spacing: -.01em; white-space: nowrap; }
.lh-wm-a::after { content: " "; }
.lh-wm-b { font-style: italic; }
.lh-mast-tag { margin-top: 8px; font: italic 400 15.5px/1.3 var(--lh-text); color: var(--lh-ink2); }
.lh-navbtn { display: none; }
.lh-nav { border-top: 1px solid var(--lh-rule); }
.lh-nav ul { list-style: none; display: flex; justify-content: center; flex-wrap: wrap; gap: 0 4px; padding-top: 0; padding-bottom: 0; margin-top: 0; margin-bottom: 0; }
.lh-nav a { display: block; padding: 14px 14px 12px; font: 700 12px/1.2 var(--lh-sans); text-transform: uppercase; letter-spacing: .13em;
  border-bottom: 3px solid transparent; }
.lh-nav a[aria-current="page"] { border-bottom-color: var(--lh-flare); }
/* ---- lhl ~ /masthead ---- */

/* ---- lhl ~ cards ---- */
.lh-kick { display: inline-flex; align-items: center; gap: 5px; font: 700 11.5px/1.2 var(--lh-sans); text-transform: uppercase; letter-spacing: .12em; color: var(--lh-flare); }
body.lh a.lh-kick:hover { color: var(--lh-ink); }
.lh-kick--arch { color: var(--lh-deep); }
.lh-by { margin: 10px 0 0; font: 700 11px/1.3 var(--lh-sans); text-transform: uppercase; letter-spacing: .1em; color: var(--lh-ink); }
.lh-by span { color: var(--lh-ink3); font-weight: 400; margin-left: 10px; }
.lh-card { display: flex; flex-direction: column; min-width: 0; }
.lh-card-pic { display: block; overflow: hidden; aspect-ratio: 3 / 2; background: var(--lh-foam); margin-bottom: 14px; }
.lh-card-pic img { width: 100%; height: 100%; object-fit: cover; transition: transform .4s ease; }
.lh-card:hover .lh-card-pic img { transform: scale(1.03); }
.lh-card h3 { margin: 8px 0 0; font: 400 24px/1.12 var(--lh-disp); letter-spacing: -.005em; }
.lh-card-dek { margin: 8px 0 0; font-size: 16.5px; line-height: 1.45; color: var(--lh-ink2); }
.lh-card--text { border-top: 1px solid var(--lh-rule); padding-top: 16px; }
.lh-card--text h3 { font-size: 27px; }
.lh-card--row { display: grid; grid-template-columns: minmax(0, 1fr) 150px; gap: 18px; align-items: start; border-top: 1px solid var(--lh-rule); padding-top: 16px; }
.lh-card--row .lh-card-pic { order: 2; margin: 0; }
.lh-card--row .lh-card-body { order: 1; }
.lh-card--row h3 { font-size: 21px; }
.lh-card--arch .lh-card-pic { aspect-ratio: 16 / 10; }
.lh-card--arch h3 { font-size: 21px; }
/* ---- lhl ~ /cards ---- */

/* ---- lhl ~ front ---- */
.lh-front { margin-top: 30px; }
.lh-front-grid { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 2.15fr) minmax(0, 1fr); gap: 0; }
.lh-front-grid > * { padding: 0 26px; }
.lh-front-grid > *:first-child { padding-left: 0; }
.lh-front-grid > *:last-child { padding-right: 0; }
.lh-front-grid > * + * { border-left: 1px solid var(--lh-rule); }
.lh-front-side { display: flex; flex-direction: column; gap: 26px; }
.lh-front-side .lh-card--text:first-child { border-top: 0; padding-top: 0; }
.lh-lead-pic { display: block; aspect-ratio: 3 / 2; overflow: hidden; background: var(--lh-foam); }
.lh-lead-pic img { width: 100%; height: 100%; object-fit: cover; }
.lh-lead-body { padding-top: 18px; text-align: center; }
.lh-lead h2 { margin: 10px 0 0; font: 400 50px/1.02 var(--lh-disp); letter-spacing: -.012em; }
.lh-lead-dek { margin: 12px auto 0; max-width: 560px; font-size: 19.5px; line-height: 1.45; color: var(--lh-ink2); }
.lh-pop h2 { margin: 0 0 6px; padding-top: 10px; border-top: 3px solid var(--lh-ink); font: 700 12.5px/1.2 var(--lh-sans); text-transform: uppercase; letter-spacing: .14em; }
.lh-pop ol { list-style: none; counter-reset: lhpop; margin: 0; padding: 0; }
.lh-pop li { counter-increment: lhpop; border-bottom: 1px solid var(--lh-rule); }
.lh-pop li:last-child { border-bottom: 0; }
.lh-pop a { display: grid; grid-template-columns: 38px minmax(0, 1fr); column-gap: 8px; padding: 14px 0; font: 400 19px/1.18 var(--lh-disp); }
.lh-pop a::before { content: counter(lhpop); grid-row: 1 / span 2; font: 400 36px/.9 var(--lh-disp); color: var(--lh-flare); }
.lh-pop-k { display: block; margin-bottom: 4px; font: 700 10.5px/1.2 var(--lh-sans); text-transform: uppercase; letter-spacing: .12em; color: var(--lh-ink3); }
.lh-rule { display: flex; justify-content: space-between; align-items: baseline; gap: 16px; border-top: 1px solid var(--lh-ink); padding-top: 12px; margin-bottom: 22px; }
.lh-rule h2 { margin: 0; display: inline-flex; align-items: center; gap: 8px; font: 700 13px/1.2 var(--lh-sans); text-transform: uppercase; letter-spacing: .15em; }
.lh-rule h2 .lh-i { color: var(--lh-flare); width: 1.25em; height: 1.25em; }
.lh-rule-more { display: inline-flex; align-items: center; gap: 6px; font: 700 12px/1.2 var(--lh-sans); text-transform: uppercase; letter-spacing: .1em; color: var(--lh-ink2) !important; white-space: nowrap; }
body.lh .lh-rule-more:hover { color: var(--lh-flare) !important; }
.lh-grid-3, .lh-grid-4 { display: grid; gap: 30px 26px; }
.lh-grid-3 { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.lh-grid-4 { grid-template-columns: repeat(4, minmax(0, 1fr)); }
.lh-gap-top { margin-top: 34px; }
.lh-split { display: grid; grid-template-columns: minmax(0, 1.6fr) minmax(0, 1fr); gap: 34px; }
.lh-split .lh-lead-body { text-align: left; }
.lh-split .lh-lead h2 { font-size: 40px; }
.lh-split .lh-lead-dek { margin-left: 0; }
.lh-stack { display: flex; flex-direction: column; gap: 20px; }
.lh-stack > .lh-card--row:first-child { border-top: 0; padding-top: 0; }
.lh-night { background: var(--lh-deep); color: #f4f1ea; padding: 38px 0 44px; }
.lh-night .lh-rule { border-top-color: rgba(244, 241, 234, .55); }
.lh-night .lh-rule h2 .lh-i, .lh-night .lh-kick { color: #f0a58f; }
.lh-night .lh-rule-more { color: #d6e3e5 !important; }
.lh-night-grid { display: grid; grid-template-columns: minmax(0, 1.5fr) minmax(0, 1fr); gap: 34px; }
.lh-night-side { display: flex; flex-direction: column; gap: 22px; }
.lh-night .lh-card--text { border-top-color: rgba(244, 241, 234, .25); }
.lh-night .lh-card--text:first-child { border-top: 0; padding-top: 0; }
.lh-card--night h3 { font-size: 36px; line-height: 1.06; }
.lh-night .lh-card-dek { color: #cfdcdf; }
.lh-night .lh-by { color: #f4f1ea; }
.lh-night .lh-by span { color: #aebfc3; }
body.lh .lh-night a:hover { color: #f0a58f; }
.lh-archline { margin: 10px 0 40px; }
.lh-archline a { display: flex; align-items: center; gap: 14px; background: var(--lh-sand); border-left: 4px solid var(--lh-deep); padding: 18px 22px; font-size: 17px; line-height: 1.45; }
.lh-archline .lh-i { width: 26px; height: 26px; color: var(--lh-deep); }
.lh-partners { border: 1px solid var(--lh-rule); background: #fff; padding: 22px 24px 20px; margin: 10px 0 46px; }
.lh-partners h2 { margin: 0 0 14px; display: flex; align-items: center; gap: 8px; font: 700 12.5px/1.2 var(--lh-sans); text-transform: uppercase; letter-spacing: .14em; }
.lh-partners-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 14px; }
.lh-partner { display: flex; align-items: center; gap: 16px; border: 1px solid var(--lh-rule); background: var(--lh-paper); padding: 14px 16px; font: 400 14px/1.4 var(--lh-sans); color: var(--lh-ink2) !important; }
.lh-partner img { width: 90px; height: auto; background: #fff; padding: 6px; border: 1px solid var(--lh-rule); box-sizing: content-box; }
.lh-partner b { display: block; color: var(--lh-ink); font-size: 15px; }
.lh-partners-note { margin: 16px 0 0; font-size: 15px; line-height: 1.55; color: var(--lh-ink2); }
/* ---- lhl ~ /front ---- */

/* ---- lhl ~ hubs ---- */
.lh-hubhead { border-bottom: 1px solid var(--lh-rule); padding: 26px 0 30px; }
.lh-hubhead h1 { margin: 14px 0 0; font: 400 62px/1 var(--lh-disp); letter-spacing: -.015em; }
.lh-hubhead-dek { max-width: 760px; margin: 14px 0 0; font-size: 19px; line-height: 1.5; color: var(--lh-ink2); }
.lh-hubhead-dek a { text-decoration: underline; text-decoration-color: var(--lh-rule); text-underline-offset: 3px; }
.lh-hubbody { padding-top: 34px; padding-bottom: 12px; }
.lh-hubbody > section:first-child { margin-top: 0; }
.lh-crumbs { display: flex; flex-wrap: wrap; align-items: center; gap: 4px 6px; font: 400 12.5px/1.4 var(--lh-sans); color: var(--lh-ink3); }
.lh-crumbs a { text-decoration: underline; text-decoration-color: var(--lh-rule); text-underline-offset: 3px; }
.lh-crumbs .lh-i { width: .8em; height: .8em; }
.lh-pager { display: flex; gap: 8px; margin: 30px 0 0; font: 700 14px/1 var(--lh-sans); }
.lh-pager a { display: inline-flex; min-width: 44px; min-height: 44px; align-items: center; justify-content: center; border: 1px solid var(--lh-rule); background: #fff; }
.lh-pager a[aria-current="page"] { background: var(--lh-ink); border-color: var(--lh-ink); color: #fff; }
.lh-empty { margin: 0 0 22px; font-style: italic; color: var(--lh-ink2); }
.lh-chips { display: flex; flex-wrap: wrap; gap: 8px; margin: 22px 0 0; }
.lh-chips a { display: inline-flex; align-items: center; gap: 6px; min-height: 36px; padding: 6px 14px; border: 1px solid var(--lh-rule); background: #fff; border-radius: 999px; font: 400 14px/1.2 var(--lh-sans); }
.lh-crewlist { list-style: none; margin: 0; padding: 0; display: grid; grid-template-columns: repeat(auto-fill, minmax(230px, 1fr)); gap: 10px; }
.lh-crewlist a { display: flex; align-items: center; gap: 12px; min-height: 58px; padding: 10px 14px; background: #fff; border: 1px solid var(--lh-rule); }
.lh-crewlist .lh-i { width: 24px; height: 24px; color: var(--lh-deep); }
.lh-crewlist b { display: block; font: 400 19px/1.15 var(--lh-disp); }
.lh-crewlist span span { display: block; font: 400 12px/1.3 var(--lh-sans); color: var(--lh-ink3); margin-top: 2px; }
.lh-twocol { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: 34px; }
.lh-robot:empty { display: none; }
.lh-robot { margin-top: 0; }
.lh-robot h2, .lh-robot h3 { font: 400 26px/1.15 var(--lh-disp); margin: 18px 0 6px; }
.lh-robot p { margin: 0 0 12px; color: var(--lh-ink2); }
.lh-robot img { margin: 10px 0; }
.lh-robot a { text-decoration: underline; text-decoration-color: var(--lh-rule); }
.lh-robot li { list-style: none; border-top: 1px solid var(--lh-rule); padding: 14px 0; }
.lh-robot ul { padding: 0; margin: 0; }
.lh-stack--feed { gap: 22px; }
/* ---- lhl ~ /hubs ---- */

/* ---- lhl ~ story ---- */
.lh-storyhead { max-width: 860px; margin: 0 auto; padding: 30px 0 26px; text-align: center; }
.lh-storyhead .lh-crumbs { justify-content: center; }
.lh-storykick { display: flex; justify-content: center; align-items: center; gap: 12px; margin: 22px 0 0; font: 700 12px/1.2 var(--lh-sans); text-transform: uppercase; letter-spacing: .13em; color: var(--lh-flare); }
.lh-storykick a { display: inline-flex; align-items: center; gap: 6px; }
.lh-storykick span { color: var(--lh-ink3); }
.lh-storyhead h1 { margin: 16px 0 0; font: 400 60px/1.02 var(--lh-disp); letter-spacing: -.015em; }
.lh-standfirst { margin: 16px auto 0; max-width: 700px; font: italic 400 21px/1.45 var(--lh-text); color: var(--lh-ink2); }
.lh-meta { display: flex; flex-wrap: wrap; justify-content: center; gap: 8px 22px; margin-top: 20px; font: 400 12.5px/1.3 var(--lh-sans); color: var(--lh-ink2); text-transform: uppercase; letter-spacing: .08em; }
.lh-meta span { display: inline-flex; align-items: center; gap: 6px; }
.lh-figure { margin: 0 0 30px; }
.lh-figure img { width: 100%; aspect-ratio: 3 / 2; object-fit: cover; background: var(--lh-foam); }
.lh-figure figcaption { margin-top: 8px; font: 400 12.5px/1.45 var(--lh-sans); color: var(--lh-ink3); }
.lh-figure figcaption a { text-decoration: underline; }
.lh-figure--arch img { aspect-ratio: 21 / 9; }
.lh-prose { font-size: 19.5px; line-height: 1.66; }
.lh-prose p { margin: 0 0 1.05em; }
.lh-prose h2 { margin: 1.6em 0 .5em; font: 400 33px/1.12 var(--lh-disp); letter-spacing: -.01em; }
.lh-prose h3 { margin: 1.4em 0 .45em; font: 700 21px/1.25 var(--lh-text); }
.lh-prose h4 { margin: 1.2em 0 .4em; font: 700 13px/1.3 var(--lh-sans); text-transform: uppercase; letter-spacing: .1em; }
.lh-prose ul, .lh-prose ol { margin: 0 0 1.1em; padding-left: 1.25em; }
.lh-prose li { margin: 0 0 .45em; }
.lh-prose li::marker { color: var(--lh-flare); }
.lh-prose a { text-decoration: underline; text-decoration-color: var(--lh-flare); text-underline-offset: 3px; }
.lh-prose blockquote { margin: 1.4em 0; padding: 4px 0 4px 22px; border-left: 3px solid var(--lh-flare); color: var(--lh-ink2); }
.lh-prose--drop > p:first-child::first-letter { float: left; font: 400 5.1em/.78 var(--lh-disp); margin: .06em .1em 0 0; color: var(--lh-flare); }
.lh-table { overflow-x: auto; margin: 0 0 1.3em; border-top: 2px solid var(--lh-ink); }
.lh-table table { width: 100%; border-collapse: collapse; font: 400 15.5px/1.45 var(--lh-sans); }
.lh-table th { text-align: left; font-weight: 700; padding: 10px 12px; border-bottom: 1px solid var(--lh-ink); white-space: nowrap; }
.lh-table td { padding: 10px 12px; border-bottom: 1px solid var(--lh-rule); vertical-align: top; }
.lh-table tbody tr:nth-child(even) td { background: #f6f2e9; }
.lh-sources { margin: 34px 0 10px; padding-top: 14px; border-top: 1px solid var(--lh-ink); }
.lh-sources h2 { display: flex; align-items: center; gap: 8px; margin: 0 0 10px; font: 700 12.5px/1.2 var(--lh-sans); text-transform: uppercase; letter-spacing: .14em; }
.lh-sources ol { margin: 0; padding-left: 1.3em; font: 400 14.5px/1.5 var(--lh-sans); color: var(--lh-ink2); }
.lh-sources a { text-decoration: underline; text-decoration-color: var(--lh-rule); overflow-wrap: anywhere; }
.lh-sos { display: flex; gap: 14px; align-items: flex-start; background: var(--lh-foam); border-left: 4px solid var(--lh-flare); padding: 16px 20px; margin: 26px 0; font: 400 15.5px/1.5 var(--lh-sans); }
.lh-sos p { margin: 0; }
.lh-sos .lh-i { width: 22px; height: 22px; color: var(--lh-flare); margin-top: 2px; }
.lh-note { display: flex; gap: 14px; align-items: flex-start; background: var(--lh-sand); padding: 16px 20px; margin: 0 0 28px; font: 400 15px/1.5 var(--lh-sans); color: var(--lh-ink2); }
.lh-note p { margin: 0; }
.lh-note .lh-i { width: 22px; height: 22px; color: var(--lh-deep); margin-top: 2px; }
.lh-note a { text-decoration: underline; }
.lh-film { display: flex; align-items: center; gap: 14px; background: var(--lh-deep); color: #f4f1ea !important; padding: 16px 20px; margin: 22px 0; font: 400 14px/1.4 var(--lh-sans); }
.lh-film .lh-i { width: 34px; height: 34px; }
.lh-film b { display: block; font-size: 16px; }
.lh-more { border-top: 0; }
.lh-more-grid { display: grid; grid-template-columns: minmax(0, 3fr) minmax(0, 1fr); gap: 34px; }
.lh-boxes { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 16px; margin-bottom: 20px; }
.lh-box { background: #fff; border: 1px solid var(--lh-rule); padding: 18px 20px; font-size: 16px; }
.lh-box h2 { display: flex; align-items: center; gap: 8px; margin: 0 0 8px !important; font: 700 13px/1.2 var(--lh-sans) !important; text-transform: uppercase; letter-spacing: .12em; }
.lh-box p { margin: 0 0 8px; }
.lh-credits { display: grid; grid-template-columns: repeat(auto-fill, minmax(230px, 1fr)); gap: 22px; margin: 10px 0 50px; }
.lh-credits figure { margin: 0; }
.lh-credits img { aspect-ratio: 3 / 2; object-fit: cover; width: 100%; }
.lh-credits figcaption { margin-top: 6px; font: 400 12px/1.4 var(--lh-sans); color: var(--lh-ink3); }
.lh-credits figcaption a { text-decoration: underline; }
/* ---- lhl ~ /story ---- */

/* ---- lhl ~ footer ---- */
.lh-foot { background: #121517; color: #d9dcdb; margin-top: 56px; padding: 46px 0 30px; font: 400 14.5px/1.5 var(--lh-sans); }
.lh-foot-grid { display: grid; grid-template-columns: minmax(0, 1.5fr) repeat(3, minmax(0, 1fr)); gap: 34px; }
.lh-foot .lh-wm { color: #fff; }
.lh-foot .lh-wm--sm .lh-sign { width: 38px; height: 38px; }
.lh-foot .lh-wm--sm .lh-wm-t { font-size: 27px; white-space: normal; }
.lh-foot-about p { margin: 14px 0 0; }
.lh-foot-sos { display: flex; gap: 10px; align-items: flex-start; border-top: 1px solid #33393b; padding-top: 12px; }
.lh-foot-sos .lh-i { width: 20px; height: 20px; color: #f0a58f; }
.lh-foot h2 { margin: 4px 0 12px; font: 700 12px/1.2 var(--lh-sans); text-transform: uppercase; letter-spacing: .14em; color: #fff; }
.lh-foot ul { list-style: none; margin: 0; padding: 0; }
.lh-foot li a { display: flex; align-items: center; gap: 8px; padding: 6px 0; min-height: 36px; }
.lh-foot li .lh-i { color: #f0a58f; }
body.lh .lh-foot a:hover { color: #fff; }
.lh-foot-legal { margin-top: 32px; border-top: 1px solid #33393b; padding-top: 18px; font-size: 13px; color: #a9afae; }
.lh-foot-legal p { margin: 0 0 8px; }
.lh-foot-legal a { text-decoration: underline; }
/* ---- lhl ~ /footer ---- */

/* ---- lhl ~ responsive ---- */
@media (max-width: 1100px) {
  .lh-front-grid { grid-template-columns: minmax(0, 2fr) minmax(0, 1fr); }
  .lh-front-grid > .lh-lead { grid-column: 1 / -1; grid-row: 1; padding: 0 0 26px; border-left: 0; border-bottom: 1px solid var(--lh-rule); margin-bottom: 26px; }
  .lh-front-grid > .lh-front-side { padding-left: 0; border-left: 0; }
  .lh-grid-4 { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .lh-foot-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 900px) {
  :root { --lh-gut: 16px; }
  body.lh { font-size: 17px; }
  .lh-mast { position: relative; }
  .lh-mast-util { font-size: 11.5px; }
  .lh-when { display: none; }
  .lh-util-links { margin-left: auto; }
  .lh-mast-main { flex-direction: row; justify-content: center; padding-top: 12px; padding-bottom: 12px; min-height: 68px; }
  .lh-mast-tag { display: none; }
  .lh-sign { width: 36px; height: 36px; }
  .lh-wm { gap: 10px; }
  .lh-wm-t { font-size: 25px; }
  .lh-navbtn { display: inline-flex; position: absolute; left: var(--lh-gut); top: 50%; transform: translateY(-50%); flex-direction: column; align-items: center;
    justify-content: center; gap: 2px; width: 48px; height: 48px; cursor: pointer; font: 700 9px/1 var(--lh-sans); text-transform: uppercase; letter-spacing: .08em; }
  .lh-navbtn .lh-i { width: 24px; height: 24px; }
  .lh-navbtn-c { display: none; }
  .lh-navbox:checked ~ .lh-mast-main .lh-navbtn-o { display: none; }
  .lh-navbox:checked ~ .lh-mast-main .lh-navbtn-c { display: block; }
  .lh-navbox:focus-visible ~ .lh-mast-main .lh-navbtn { outline: 2px solid var(--lh-flare); }
  .lh-nav { display: none; border-top: 1px solid var(--lh-ink); }
  .lh-navbox:checked ~ .lh-nav { display: block; }
  .lh-nav ul { flex-direction: column; flex-wrap: nowrap; gap: 0; }
  .lh-nav li + li { border-top: 1px solid var(--lh-rule); }
  .lh-nav a { padding: 16px 0; min-height: 50px; border-bottom: 0; border-left: 3px solid transparent; }
  .lh-nav a[aria-current="page"] { border-left-color: var(--lh-flare); padding-left: 10px; }
  .lh-front-grid { grid-template-columns: minmax(0, 1fr); }
  .lh-front-grid > * { padding: 0 !important; border-left: 0 !important; }
  .lh-front-grid > .lh-pop { margin-top: 30px; }
  .lh-lead h2 { font-size: 36px; }
  .lh-lead-body { text-align: left; }
  .lh-lead-dek { margin-left: 0; font-size: 18px; }
  .lh-split, .lh-night-grid, .lh-more-grid, .lh-twocol { grid-template-columns: minmax(0, 1fr); }
  .lh-grid-3 { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .lh-hubhead h1 { font-size: 44px; }
  .lh-storyhead h1 { font-size: 42px; }
  .lh-standfirst { font-size: 19px; }
  .lh-prose { font-size: 18px; }
  .lh-prose h2 { font-size: 28px; }
  .lh-card--night h3 { font-size: 30px; }
  main section { margin: 36px 0; }
}
@media (max-width: 600px) {
  .lh-grid-3, .lh-grid-4, .lh-boxes, .lh-partners-grid, .lh-foot-grid { grid-template-columns: minmax(0, 1fr); }
  .lh-card--row { grid-template-columns: minmax(0, 1fr) 112px; gap: 14px; }
  .lh-card--row h3 { font-size: 19px; }
  .lh-wm-t { font-size: 21px; }
  .lh-sign { width: 32px; height: 32px; }
  .lh-mast-main { padding-left: 56px; padding-right: 8px; }
  .lh-hubhead h1 { font-size: 38px; }
  .lh-storyhead { text-align: left; }
  .lh-storyhead .lh-crumbs, .lh-storykick, .lh-meta { justify-content: flex-start; }
  .lh-storyhead h1 { font-size: 36px; }
  .lh-lead h2 { font-size: 31px; }
  .lh-partner { flex-direction: column; align-items: flex-start; }
  .lh-prose--drop > p:first-child::first-letter { font-size: 4.2em; }
}
/* ---- lhl ~ /responsive ---- */

/* ---- lhl ~ front-balance ---- */
.lh-front .lh-lead-pic { aspect-ratio: 4 / 3; }
.lh-card--night .lh-card-pic { aspect-ratio: 16 / 10; }
.lh-night-side .lh-card--text h3 { font-size: 29px; }
/* ---- lhl ~ /front-balance ---- */

/* ---- lhl ~ fill-frames ---- */
body.lh .lh-card-pic img, body.lh .lh-lead-pic img { height: 100%; }
/* ---- lhl ~ /fill-frames ---- */
