/* 29 August 2026 content-and-design refresh. Kept separate from the base
   bundle so the audit work remains easy to inspect and roll back. */

.desktop-nav ul { gap: clamp(.7rem, 1.25vw, 1.45rem); }
.desktop-nav a { white-space: nowrap; }

.home-hero--bright .home-hero__shade,
.editorial-hero--bright .editorial-hero__shade {
  background: linear-gradient(90deg, rgba(3, 44, 51, .74) 0%, rgba(3, 44, 51, .45) 48%, rgba(3, 44, 51, .08) 82%);
}
.home-hero--bright .home-hero__content { max-width: 760px; }
.home-hero--bright .home-hero__content > p:not(.eyebrow) { max-width: 700px; font-size: clamp(1.05rem, 1.6vw, 1.28rem); }
.hero-utility-link { display: inline-block; margin-top: 1.05rem; color: #fff; font-weight: 700; text-underline-offset: .24em; }

.live-utility { background: #fff7e9; border-bottom: 1px solid rgba(6, 72, 82, .14); }
.live-utility__grid { display: grid; grid-template-columns: repeat(3, 1fr); }
.live-utility article { display: grid; grid-template-columns: auto 1fr; gap: .25rem .75rem; align-content: center; min-height: 106px; padding: 1rem 1.3rem; border-right: 1px solid rgba(6, 72, 82, .14); }
.live-utility article:last-child { border-right: 0; }
.live-utility article > div { display: grid; }
.live-utility strong { color: #053e47; }
.live-utility small { margin-top: .15rem; color: #54686a; }
.live-utility a { grid-column: 2; color: #b54431; font-size: .9rem; font-weight: 750; }

.task-section { padding-top: clamp(3.5rem, 7vw, 6.5rem); }
.task-card-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 1rem; }
.task-card { display: flex; min-height: 280px; flex-direction: column; padding: 1.6rem; border: 1px solid rgba(6, 72, 82, .16); border-radius: 18px; background: #fff; box-shadow: 0 12px 35px rgba(6, 72, 82, .06); color: #153f43; text-decoration: none; transition: transform .2s ease, box-shadow .2s ease; }
.task-card:hover { transform: translateY(-4px); box-shadow: 0 18px 42px rgba(6, 72, 82, .12); }
.task-card > span { color: #c4533d; font-size: .82rem; font-weight: 800; letter-spacing: .08em; }
.task-card h3 { margin: auto 0 .7rem; font: 700 clamp(1.55rem, 2vw, 2rem)/1.08 var(--font-display, Georgia, serif); }
.task-card p { margin: 0 0 1.2rem; color: #516669; }
.task-card strong { color: #0b5964; }
.task-card--warm { background: #ffead7; }

.current-panel { padding: clamp(3.5rem, 7vw, 6rem) 0; background: #e6f3ef; }
.current-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 1rem; }
.current-grid article { padding: 1.55rem; border-radius: 16px; background: #fff; }
.current-grid article > span { color: #bd4c37; font-size: .78rem; font-weight: 800; letter-spacing: .08em; text-transform: uppercase; }
.current-grid h3 { margin: .65rem 0; font: 700 1.45rem/1.15 var(--font-display, Georgia, serif); color: #064852; }
.current-grid p { color: #53696b; }
.current-grid a { color: #a63d2d; font-weight: 750; }

.geography-section { display: grid; grid-template-columns: minmax(260px, .75fr) minmax(520px, 1.25fr); gap: clamp(2.4rem, 6vw, 6rem); align-items: center; }
.geography-copy h2 { max-width: 560px; }
.bay-map { position: relative; overflow: hidden; min-height: 330px; padding: 3.6rem 1.1rem 1.2rem; border-radius: 28px; background: linear-gradient(180deg, #8ed6d4 0 42%, #ecd8b3 42% 53%, #dce5cf 53%); box-shadow: inset 0 0 0 1px rgba(6, 72, 82, .12); }
.bay-map__water { position: absolute; top: 1.15rem; right: 1.35rem; color: rgba(2, 67, 79, .72); font: italic 600 1.2rem var(--font-display, Georgia, serif); }
.bay-map ol { display: grid; grid-template-columns: repeat(6, 1fr); gap: .45rem; align-items: end; min-height: 235px; margin: 0; padding: 0; list-style: none; }
.bay-map li { position: relative; padding: .85rem .55rem; border: 1px solid rgba(6, 72, 82, .16); border-radius: 12px; background: rgba(255, 255, 255, .9); text-align: center; }
.bay-map li::before { content: ""; position: absolute; top: -1.2rem; left: 50%; width: .7rem; height: .7rem; border: 3px solid #fff; border-radius: 50%; background: #c8533e; transform: translateX(-50%); }
.bay-map li:nth-child(even) { margin-bottom: 1.8rem; }
.bay-map li strong, .bay-map li span { display: block; }
.bay-map li strong { color: #064852; font-size: .85rem; }
.bay-map li span { margin-top: .25rem; color: #5d6c6d; font-size: .72rem; }

.decision-section { padding: clamp(3.5rem, 7vw, 6rem) 0; background: #f3eadc; }
.beyond-grid { display: grid; grid-template-columns: 1.25fr .75fr; grid-template-rows: repeat(2, minmax(245px, 1fr)); gap: 1rem; }
.beyond-card { position: relative; overflow: hidden; min-height: 245px; padding: 1.35rem; border-radius: 20px; color: #fff; text-decoration: none; display: flex; flex-direction: column; justify-content: flex-end; isolation: isolate; }
.beyond-card::after { content: ""; position: absolute; inset: 0; z-index: -1; background: linear-gradient(0deg, rgba(1, 38, 45, .84), rgba(1, 38, 45, .02) 75%); }
.beyond-card img { position: absolute; inset: 0; z-index: -2; width: 100%; height: 100%; object-fit: cover; transition: transform .4s ease; }
.beyond-card:hover img { transform: scale(1.025); }
.beyond-card--wide { grid-row: 1 / 3; }
.beyond-card span { font-size: .78rem; font-weight: 800; letter-spacing: .08em; text-transform: uppercase; }
.beyond-card h3 { max-width: 620px; margin: .45rem 0 0; color: inherit; font: 700 clamp(1.45rem, 2.3vw, 2.35rem)/1.06 var(--font-display, Georgia, serif); }

.trust-return-section { padding: clamp(3.5rem, 7vw, 6rem) 0; background: #073f48; color: #fff; }
.trust-return-grid { display: grid; grid-template-columns: 1.08fr .92fr; gap: 1rem; }
.trust-card, .return-card { padding: clamp(1.6rem, 4vw, 3rem); border-radius: 22px; }
.trust-card { background: #0b5964; }
.return-card { background: #fff8eb; color: #153f43; }
.trust-card h2, .return-card h2 { margin: .45rem 0 1rem; color: inherit; font: 700 clamp(1.8rem, 3vw, 2.8rem)/1.06 var(--font-display, Georgia, serif); }
.trust-card > strong { display: block; margin-top: 1.4rem; color: #ffcfb1; }
.trust-links { display: flex; flex-wrap: wrap; gap: 1.2rem; margin-top: 1.4rem; }
.trust-links a { color: #fff; font-weight: 750; }

.need-links { display: flex; flex-wrap: wrap; gap: .6rem; margin: 1.5rem 0 0; }
.need-links a { padding: .65rem .9rem; border: 1px solid rgba(6, 72, 82, .22); border-radius: 999px; color: #07505a; font-weight: 700; text-decoration: none; }
.time-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 1rem; }
.time-card { padding: 1.6rem; border: 1px solid rgba(6, 72, 82, .14); border-radius: 18px; background: #fff; }
.time-card > span { color: #c24d38; font-size: .8rem; font-weight: 800; letter-spacing: .08em; text-transform: uppercase; }
.time-card h3 { color: #064852; font: 700 1.5rem/1.12 var(--font-display, Georgia, serif); }
.time-card ul { padding-left: 1.2rem; }
.time-card li + li { margin-top: .65rem; }
.time-card a { color: #075966; }
.time-card--deep { background: #064852; color: #fff; }
.time-card--deep h3, .time-card--deep a { color: #fff; }
.split-feature { display: grid; grid-template-columns: 1fr 1fr; gap: clamp(2rem, 6vw, 5rem); align-items: center; }
.split-feature figure { margin: 0; }
.split-feature img { display: block; width: 100%; border-radius: 20px; }
.split-feature figcaption { padding-top: .55rem; color: #52696b; font-size: .8rem; }
.travel-chain-card { margin: 0; padding: clamp(1.5rem, 3vw, 2.25rem); border: 1px solid rgba(6, 72, 82, .16); border-radius: 20px; background: #fff; box-shadow: 0 18px 42px rgba(6, 72, 82, .10); }
.travel-chain-card h3 { margin: .35rem 0 1rem; color: #064852; font-size: clamp(1.35rem, 2.5vw, 1.8rem); }
.travel-chain-card ul { margin: 0; padding-left: 1.2rem; }
.travel-chain-card li + li { margin-top: .65rem; }
.travel-chain-card li::marker { color: #c4533d; }
.checked-note { color: #5d6b6c; font-size: .88rem; }
.lead-answer { font-size: 1.18rem; }

.research-label { display: inline-flex; align-items: center; gap: .35rem; padding: .28rem .55rem; border: 1px solid rgba(255, 255, 255, .44); border-radius: 999px; font-size: .78rem; }
.research-label::before { content: "✓"; font-weight: 800; }
.occasion-links { display: flex; flex-wrap: wrap; gap: .6rem; margin: 1.2rem 0 2rem; padding: 1rem; border-radius: 14px; background: #eef6f3; }
.occasion-links strong { width: 100%; color: #064852; }
.occasion-links a { padding: .45rem .7rem; border-radius: 999px; background: #fff; color: #075966; font-weight: 700; text-decoration: none; }

.completion-layer { margin-top: clamp(2.5rem, 5vw, 4.5rem); margin-bottom: clamp(2.5rem, 5vw, 4.5rem); padding: clamp(1.5rem, 4vw, 2.7rem); border: 1px solid rgba(6, 72, 82, .16); border-radius: 20px; background: #fff8eb; }
.completion-layer h2 { margin: .35rem 0 .7rem; color: #064852; font: 700 clamp(1.55rem, 2.5vw, 2.15rem)/1.1 var(--font-display, Georgia, serif); }
.completion-actions { display: flex; flex-wrap: wrap; gap: .65rem; margin-top: 1.25rem; }
.completion-actions button, .completion-actions a { appearance: none; padding: .7rem .9rem; border: 1px solid #0a5964; border-radius: 999px; background: #fff; color: #07505a; font: inherit; font-weight: 750; text-decoration: none; cursor: pointer; }
.completion-actions button:hover, .completion-actions a:hover { background: #e4f2ef; }
.action-status { min-height: 1.35em; margin: .8rem 0 0; color: #52686a; font-size: .86rem; }

@media (max-width: 1120px) {
  .desktop-nav ul { gap: .6rem; }
  .desktop-nav a { font-size: .88rem; }
  .task-card-grid { grid-template-columns: repeat(2, 1fr); }
  .task-card { min-height: 230px; }
  .geography-section { grid-template-columns: 1fr; }
}

@media (max-width: 820px) {
  .live-utility__grid, .current-grid, .time-grid, .trust-return-grid, .split-feature { grid-template-columns: 1fr; }
  .live-utility article { border-right: 0; border-bottom: 1px solid rgba(6, 72, 82, .14); }
  .live-utility article:last-child { border-bottom: 0; }
  .beyond-grid { grid-template-columns: 1fr; grid-template-rows: none; }
  .beyond-card--wide { grid-row: auto; }
  .beyond-card { min-height: 290px; }
  .bay-map { overflow: visible; min-height: 0; }
  .bay-map ol { width: auto; min-height: 0; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 1.65rem .65rem; }
  .bay-map li:nth-child(even) { margin-bottom: 0; }
}

@media (max-width: 560px) {
  .task-card-grid { grid-template-columns: 1fr; }
  .task-card { min-height: 210px; }
  .bay-map ol { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .home-hero--bright .home-hero__shade,
  .editorial-hero--bright .editorial-hero__shade { background: linear-gradient(0deg, rgba(3, 44, 51, .78), rgba(3, 44, 51, .18)); }
}

@media print {
  .site-header, .site-footer, .live-utility, .completion-actions, .cookie-banner { display: none !important; }
  .completion-layer { border: 1px solid #777; }
}
