:root {
  --paper: #f7f2e8;
  --charcoal: #20211f;
  --black: #151614;
  --orange: #e85d20;
  --orange-dark: #bf4715;
  --sand: #ded7ca;
  --line: #c9c0b2;
  --muted: #625f57;
  --cream: #fbf7ef;
  --display: "Barlow Condensed", Impact, sans-serif;
  --body: "DM Sans", Arial, sans-serif;
}
* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body { margin: 0; overflow-x: hidden; background: var(--paper); color: var(--charcoal); font-family: var(--body); }
.preview-ribbon { background: var(--orange); color: var(--black); font-size: .72rem; font-weight: 700; letter-spacing: .12em; padding: .7rem 1.2rem; text-align: center; text-transform: uppercase; }
.site-header { align-items: center; background: rgba(247,242,232,.97); border-bottom: 1px solid #d9d1c3; display: flex; justify-content: space-between; padding: 1rem clamp(1.25rem, 4vw, 4.5rem); position: sticky; top: 0; z-index: 10; }
.brand { align-items: center; color: inherit; display: inline-flex; gap: .75rem; text-decoration: none; }
.brand img { height: 2.75rem; object-fit: contain; width: 2.75rem; }
.brand-lockup { display: grid; line-height: .9; }
.brand strong, .footer-brand > span { font-family: var(--display); font-size: 1.65rem; font-weight: 800; letter-spacing: -.035em; text-transform: uppercase; }
.brand em, .footer-brand em { color: var(--orange); font-size: .68rem; font-style: normal; font-weight: 700; letter-spacing: .13em; padding-top: .3rem; text-transform: uppercase; }
nav { display: flex; gap: clamp(1rem, 2vw, 2rem); }
nav a { color: var(--charcoal); font-size: .84rem; font-weight: 700; text-decoration: none; }
nav a:hover { color: var(--orange); }
.status-label { border: 1px solid var(--charcoal); color: var(--charcoal); font-size: .7rem; font-weight: 700; letter-spacing: .12em; padding: .55rem .7rem; text-decoration: none; text-transform: uppercase; }
.status-label:hover { background: var(--charcoal); color: var(--cream); }
.hero { background: var(--charcoal); color: var(--cream); min-height: min(720px, calc(100vh - 110px)); overflow: hidden; padding: clamp(3.5rem, 9vw, 8rem) clamp(1.25rem, 7vw, 9rem) clamp(4rem, 8vw, 7rem); position: relative; }
.hero-image, .hero-shade { height: 100%; inset: 0; position: absolute; width: 100%; }
.hero-image { object-fit: cover; object-position: 65% center; opacity: .5; }
.hero-shade { background: linear-gradient(90deg, #20211f 7%, rgba(32,33,31,.88) 43%, rgba(32,33,31,.20) 100%); }
.hero-content { max-width: 48rem; position: relative; z-index: 1; }
.eyebrow { color: #f1af79; font-size: .73rem; font-weight: 700; letter-spacing: .14em; margin: 0 0 1.2rem; text-transform: uppercase; }
.eyebrow.orange { color: var(--orange-dark); }
.eyebrow.warm { color: #f1af79; }
h1, h2 { font-family: var(--display); font-weight: 800; letter-spacing: -.045em; line-height: .84; margin: 0; text-transform: uppercase; }
h1 { font-size: clamp(4.3rem, 10vw, 9.6rem); }
h1 span, h2 span { color: var(--orange); }
.hero-copy { color: #e4ddd0; font-size: clamp(1rem, 1.5vw, 1.22rem); line-height: 1.65; margin: 2.1rem 0; max-width: 39rem; }
.launch-note { align-items: flex-start; background: rgba(21,22,20,.54); border-left: 2px solid var(--orange); display: flex; font-size: .9rem; gap: .85rem; line-height: 1.55; max-width: 35rem; padding: 1rem 1.1rem; }
.launch-note a { color: var(--cream); font-weight: 700; text-decoration-color: var(--orange); text-underline-offset: .18em; }
.dot { background: var(--orange); border-radius: 50%; box-shadow: 0 0 0 5px rgba(232,93,32,.18); flex: 0 0 auto; height: .5rem; margin-top: .35rem; width: .5rem; }
.hero-side-note { border-left: 1px solid var(--orange); bottom: 3rem; max-width: 13rem; padding-left: 1rem; position: absolute; right: clamp(1.25rem, 5vw, 6rem); z-index: 1; }
.hero-side-note span { color: #f1af79; font-family: var(--display); font-size: 1.25rem; font-weight: 700; }
.hero-side-note p { color: #e4ddd0; font-size: .87rem; line-height: 1.55; margin: .35rem 0 0; }
.word-strip { align-items: center; background: var(--sand); color: #514d45; display: flex; font-size: .73rem; font-weight: 700; gap: .9rem; letter-spacing: .08em; max-width: 100%; overflow-x: auto; padding: 1rem clamp(1.25rem, 7vw, 9rem); text-transform: uppercase; white-space: nowrap; }
.word-strip i { color: #9b9386; font-style: normal; }
.section { display: grid; gap: clamp(3rem, 8vw, 10rem); grid-template-columns: minmax(0, .9fr) minmax(0, 1.1fr); padding: clamp(5rem, 11vw, 10rem) clamp(1.25rem, 7vw, 9rem); }
h2 { font-size: clamp(3.4rem, 6vw, 6.3rem); }
.service-copy { max-width: 42rem; }
.service-copy p { color: var(--muted); line-height: 1.75; }
.service-copy .large { color: var(--charcoal); font-size: clamp(1.25rem, 2vw, 1.65rem); line-height: 1.48; margin-top: 0; }
.service-list { border-top: 1px solid var(--line); margin-top: 2.4rem; }
.service-list div { align-items: center; border-bottom: 1px solid var(--line); display: flex; gap: 1.1rem; padding: .85rem 0; }
.service-list span { color: var(--orange); font-family: var(--display); font-size: 1.2rem; font-weight: 700; }
.coverage-section { background: var(--cream); display: grid; grid-template-columns: minmax(0, 1.05fr) minmax(0, .95fr); }
.coverage-image-wrap { min-height: 38rem; overflow: hidden; position: relative; }
.coverage-image-wrap:after { background: linear-gradient(0deg, rgba(21,22,20,.88), transparent 62%); content: ""; inset: 0; position: absolute; }
.coverage-image-wrap img { height: 100%; object-fit: cover; position: absolute; width: 100%; }
.photo-caption { bottom: 0; color: var(--cream); left: 0; padding: 2.5rem; position: absolute; z-index: 1; }
.photo-caption strong { display: block; font-family: var(--display); font-size: clamp(2.8rem, 5vw, 4.8rem); letter-spacing: -.04em; line-height: .86; text-transform: uppercase; }
.coverage-copy { align-self: center; padding: clamp(4rem, 9vw, 9rem) clamp(1.25rem, 7vw, 8rem); }
.coverage-copy > p:not(.eyebrow):not(.coverage-fine) { color: var(--muted); line-height: 1.7; margin: 1.6rem 0; max-width: 32rem; }
.coverage-groups { display: grid; gap: 1rem; grid-template-columns: repeat(2, minmax(0, 1fr)); margin-top: 2rem; }
.coverage-groups section { border-top: 1px solid var(--line); padding-top: .75rem; }
.coverage-groups h3 { font-size: .79rem; letter-spacing: .08em; margin: 0; text-transform: uppercase; }
.coverage-groups h3:before { color: var(--orange); content: "•"; padding-right: .42rem; }
.coverage-groups p { color: var(--muted); font-size: .77rem; line-height: 1.55; margin: .42rem 0 0; }
.coverage-fine { color: #7b7469; font-size: .72rem; line-height: 1.45; margin-top: 1.5rem; }
.booking-note { border-left: 2px solid var(--orange); color: var(--charcoal) !important; font-size: .9rem !important; padding-left: 1rem; }
.launch-section { background: var(--charcoal); color: var(--cream); padding: clamp(5rem, 10vw, 9rem) clamp(1.25rem, 7vw, 9rem); }
.launch-grid { display: grid; gap: clamp(3rem, 10vw, 12rem); grid-template-columns: .9fr 1.1fr; margin: auto; max-width: 1200px; }
.launch-detail { border-left: 2px solid var(--orange); padding-left: clamp(1.4rem, 4vw, 3rem); }
.launch-detail > p { color: #e4ddd0; font-size: clamp(1.1rem, 1.8vw, 1.45rem); line-height: 1.65; margin-top: 0; }
.launch-steps { margin-top: 2rem; }
.launch-steps div { border-top: 1px solid rgba(247,242,232,.25); display: flex; gap: 1rem; padding: 1rem 0; }
.launch-steps span { color: #f1af79; font-size: .75rem; font-weight: 700; letter-spacing: .1em; min-width: 4rem; text-transform: uppercase; }
.ready-section { align-items: center; display: grid; gap: 4rem; grid-template-columns: 1fr 1fr; padding: clamp(5rem, 10vw, 9rem) clamp(1.25rem, 7vw, 9rem); }
.ready-section > p { color: var(--muted); font-size: 1.1rem; line-height: 1.75; max-width: 33rem; }
.ready-section a { color: var(--charcoal); font-weight: 700; text-decoration-color: var(--orange); text-underline-offset: .18em; }
footer a { color: var(--cream); text-decoration-color: var(--orange); text-underline-offset: .18em; }
footer { align-items: center; background: var(--black); color: #c4bcaf; display: flex; font-size: .8rem; justify-content: space-between; padding: 1.8rem clamp(1.25rem, 7vw, 9rem); }
.footer-brand { align-items: baseline; gap: .5rem; }
.footer-brand > span { color: var(--cream); }
.footer-brand em { padding: 0; }
footer p { margin: 0; }
@media (max-width: 760px) { nav, .status-label, .hero-side-note { display: none; } .site-header { padding: .85rem 1.1rem; } .word-strip { flex-wrap: wrap; justify-content: center; gap: .45rem .75rem; overflow-x: hidden; padding: .8rem 1rem; white-space: normal; } .coverage-groups { grid-template-columns: 1fr; } .hero { min-height: 600px; padding: 4.5rem 1.3rem 3.4rem; } .hero-shade { background: linear-gradient(90deg, rgba(32,33,31,.94), rgba(32,33,31,.45)); } .section, .coverage-section, .launch-grid, .ready-section { grid-template-columns: 1fr; } .section { gap: 2rem; padding: 4.4rem 1.3rem; } .coverage-image-wrap { min-height: 23rem; } .coverage-copy { padding: 4.4rem 1.3rem; } .launch-section { padding: 4.5rem 1.3rem; } .ready-section { gap: 1.7rem; padding: 4.5rem 1.3rem; } footer { align-items: flex-start; flex-direction: column; gap: 1rem; padding: 1.7rem 1.3rem; } }
