:root {
  color-scheme: light;
  --navy: #17233b;
  --amber: #f4a629;
  --cream: #f8f6f0;
  --muted: #536073;
}
* { box-sizing: border-box; }
html { font-size: 100%; }
body { margin: 0; background: var(--cream); color: var(--navy); font-family: Arial, Helvetica, sans-serif; -webkit-font-smoothing: antialiased; }
::selection { background: var(--amber); color: var(--navy); }
img { display: block; max-width: 100%; height: auto; }
.holding-page { display: grid; grid-template-columns: minmax(0, 1.25fr) minmax(0, 1fr); min-height: 100vh; min-height: 100svh; }
.intro { padding: clamp(1.5rem, 4vw, 4.5rem); display: flex; flex-direction: column; }
.brand-header { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 1.5rem; }
.brand-logo { width: clamp(10rem, 15vw, 13.5rem); }
.launch-label { font-size: .875rem; white-space: nowrap; border: 1px solid #c9cccb; padding: .7rem 1rem; border-radius: 2rem; }
.intro-copy { padding: clamp(3.5rem, 7vh, 6rem) 0; margin-block: auto; }
.eyebrow { font-size: .8125rem; font-weight: 700; letter-spacing: .13em; text-transform: uppercase; margin: 0 0 1.5rem; line-height: 1.6; }
h1 { font-size: clamp(2.6rem, 5.25vw, 5.5rem); line-height: 1.04; letter-spacing: -.055em; margin: 0; font-weight: 800; overflow-wrap: anywhere; }
h1 span { display: inline; background: linear-gradient(transparent 83%, var(--amber) 83%, var(--amber) 96%, transparent 96%); }
.announcement { margin-top: 2.5rem; max-width: 31rem; }
.announcement h2 { margin: 0 0 .75rem; font-size: 1.1875rem; line-height: 1.4; letter-spacing: -.02em; }
.announcement p { margin: 0; font-size: 1.0625rem; line-height: 1.75; color: var(--muted); }
.intro-footer { display: flex; flex-wrap: wrap; justify-content: space-between; gap: .75rem 1.5rem; border-top: 1px solid #d9dcd9; padding-top: 1.25rem; font-size: .8125rem; line-height: 1.5; color: var(--muted); }
.brand-panel { background: var(--navy); color: var(--cream); padding: clamp(1.75rem, 4vw, 4rem); border-top: .5rem solid var(--amber); display: flex; flex-direction: column; align-items: center; justify-content: space-between; gap: 2.5rem; position: relative; overflow: hidden; }
.brand-panel::after { content: ''; width: 25rem; height: 25rem; border: 1px solid #ffffff0c; transform: rotate(28deg); position: absolute; right: -18rem; top: 25%; pointer-events: none; }
.panel-top { display: flex; flex-wrap: wrap; justify-content: space-between; gap: .5rem 1rem; width: 100%; font-size: .8125rem; line-height: 1.5; color: #d3d8e2; }
.giraffe-mark { width: min(100%, 21rem); max-height: 48vh; object-fit: contain; margin-block: auto; }
.panel-bottom { width: 100%; }
.panel-heading { margin: 0 0 1.5rem; font-size: clamp(1.75rem, 2.8vw, 2.75rem); font-weight: 700; letter-spacing: -.035em; line-height: 1.15; }
.sectors { list-style: none; padding: 0; margin: 0; display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: .75rem 1rem; font-size: .9375rem; line-height: 1.5; }
.sectors li { display: flex; align-items: center; gap: .6rem; min-width: 0; overflow-wrap: anywhere; }
.sectors li::before { content: ''; width: .375rem; height: .375rem; background: var(--amber); flex-shrink: 0; }
.location { border-top: 1px solid #ffffff25; padding-top: 1.25rem; margin: 1.75rem 0 0; color: #d3d8e2; font-size: .8125rem; line-height: 1.5; }
@media (min-width: 1800px) { .intro { padding-inline: max(4.5rem, calc((100vw - 1540px) / 2)); } }
@media (max-width: 1000px) and (min-width: 761px) { .brand-header { align-items: flex-start; flex-direction: column; gap: 1rem; } .brand-panel { padding-inline: 1.75rem; } }
@media (max-width: 760px) {
  .holding-page { grid-template-columns: minmax(0, 1fr); }
  .intro { padding: 1.5rem; }
  .brand-logo { width: 10rem; }
  .launch-label { padding: .6rem .8rem; font-size: .8125rem; }
  .intro-copy { padding-block: 3.5rem; }
  h1 { font-size: clamp(2.5rem, 8.5vw, 4.75rem); }
  .eyebrow { font-size: .75rem; letter-spacing: .09em; }
  .announcement { margin-top: 2rem; }
  .brand-panel { margin-top: 1rem; padding: 1.75rem 1.5rem 2rem; gap: 2rem; }
  .giraffe-mark { width: 13rem; max-height: none; margin-block: .5rem; }
  .panel-heading { font-size: 2rem; }
}
@media (max-width: 360px) { .intro { padding-inline: 1.125rem; } .brand-header { gap: .75rem; } .brand-logo { width: 8.5rem; } .sectors { grid-template-columns: 1fr; } }
@media (prefers-reduced-motion: reduce) { *, *::before, *::after { scroll-behavior: auto !important; } }
@media print { .holding-page { display: block; } .brand-panel { break-inside: avoid; print-color-adjust: exact; } .intro-copy { padding-block: 2rem; } }
