/* ============================================================
 SAMA AVIATION — Kuwait
 Layout, palette and type system modelled on calaironline.com
 at the client's direction. Copy and imagery are Sama's own.

 Palette pulled from CalAir's theme CSS:
   #ffffff / #f8f8f8 grounds, #1a1a1c ink, #dec085 champagne
   gold accent, #737373 + #808080 secondary greys.
 Type: Red Hat Display (headings), Poppins (body).
 ============================================================ */

/* ---------- reset ----------
   This stylesheet was authored inside a host that injected its own reset.
   Standalone it needs one, or UA defaults apply: figure gets
   margin: 1em 40px (which un-centres the full-bleed banners), body gets
   8px, and every heading/list carries margins the flex/grid gaps already
   handle. Layout here is gap-driven, so zeroing margins is the intent. */

*,
*::before,
*::after {
  box-sizing: border-box;
}
body,
figure,
h1,
h2,
h3,
h4,
h5,
h6,
p,
dl,
dd,
ul,
ol,
blockquote {
  margin: 0;
}
ul,
ol {
  padding-left: 0;
  list-style: none;
}
img,
video {
  display: block;
  max-width: 100%;
}
button,
input,
select,
textarea {
  font-family: inherit;
  font-size: inherit;
  color: inherit;
}

/* SpaceX — the display face for the SAMA wordmark. Embedded as a
   base64 data URI (23KB) so it travels inside this one file: no
   extra request, no CDN, works offline and in previews that block
   external fonts. Source copy also kept at fonts/spacex.ttf. */
@font-face {
  font-family: "SpaceX";
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url(data:font/ttf;base64,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CUIAzwNgAM8IGP/1CZAAzwiDAM8KdQDPCUIAzwjoAJ4I3ADPCUEAngjhAM8IowB6CHYAcwknAMUIbgAuC/IALgjPAEQIkQApCI4AaQKcAFACngC0ApwAUBqMALQCnABQApwAUAKcAFACnABQApwAUAKcAFACnABQApwAUAKcAFACnABQApwAUAKcAFACnABQApwAUAYLALQCnABQApwAUAKcAFACnABQApwAUAKcAFACnABQApwAUAKcAFACnABQApwAUAKcAFACnABQApwAUAKcAFACnABQApwAUAKcAFACnABQApwAUAKcAFACnABQApwAUAKcAFACnABQApwAUAKcAFACnABQApwAUAKcAFACnABQApwAUAKcAFACnABQApwAUAKcAFACnABQApwAUAKcAFACnABQApwAUAKcAFACnABQApwAUAKcAFACnABQApwAUAKcAFACnABQApwAUAKcAFACnABQApwAUAKcAFACnABQApwAUAKcAFACnABQApwAUAKcAFACnABQApwAUAKcAFACnABQApwAUAKcAFACnABQApwAUAKcAFACnABQApwAUAKcAFACnABQApwAUAKcAFACnABQApwAUAKcAFACnABQApwAUAKcAFACnABQApwAUAKcAFACnABQApwAUAKcAFACnABQApwAUAKcAFAESwC0BEsAtAL+ALQC/gC0ApwAUAToALQE6AC0ApwAUAKcAFACnABQApwAUAKcAFACnABQApwAUAOC/7ICnABQApwAUAKcAFACnABQApwAUAKcAFACnABQApwAUAKcAFACnABQBEsAtAKcAFAAUABQAFAAUABQAFAAUAAAAAAE6AToBRQFRgWmBiIGlAcKByoHWAeIB7wH7AgOCCoIRAhcCJoIuAkOCVoJngnuClAKggr6C1wLhgu4C9AL/AwUDIIM9g1ADZ4N7g4yDngOrg8IDzgPWA+gD+oQFBBWEIgQ0hESEV4RrBIGEjISaBKeEvgTThOiE/IUIBQ6FGgUiBSoFKgUzBUsFXAVqBXgFgwWVBaAFpoW1BcGFygXYBeOF8wYEBhSGJYY8BkYGUQZaBmsGeIaChpMGkwaahpqHYIdgh2CHYIdgh2CHYIdgh2CHYIdgh2CHYIdgh2CHcQdxB3EHcQdxB3EHcQdxB3EHcQdxB3EHcQdxB3EHcQdxB3EHcQdxB3E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)
    format("truetype");
}

:root {
  --white: #ffffff;
  --off: #f8f8f8;
  --ink: #1a1a1c;
  --ink-2: #231f20;
  --grey: #737373;
  --grey-2: #808080;
  --line: #e0e0e0;
  --gold: #dec085;
  --gold-d: #c9a865;

  --head:
    "Red Hat Display", "Poppins", "Avenir Next", "Segoe UI", system-ui,
    sans-serif;
  --body:
    "Poppins", "Century Gothic", "Avenir Next", "Segoe UI", system-ui,
    sans-serif;

  --gutter: clamp(1.25rem, 5vw, 4rem);
  --maxw: 1240px;
  --mark: "SpaceX", "Red Hat Display", system-ui, sans-serif;
}

/* Light only — CalAir has no dark mode and neither does this. */

body {
  background: var(--white);
  color: var(--ink);
  font-family: var(--body);
  font-size: 1rem;
  font-weight: 400;
  line-height: 1.75;
  -webkit-font-smoothing: antialiased;
  overflow-x: hidden;
}

h1,
h2,
h3,
h4 {
  font-family: var(--head);
  font-weight: 800;
  line-height: 1.12;
  letter-spacing: -0.02em;
  text-wrap: balance;
  color: var(--ink);
}

p {
  color: var(--grey);
}
a {
  color: inherit;
}

:focus-visible {
  outline: 2px solid var(--gold-d);
  outline-offset: 3px;
}

.skip {
  position: absolute;
  left: -9999px;
  top: 0;
  z-index: 300;
  background: var(--ink);
  color: #fff;
  padding: 0.8rem 1.3rem;
  font-size: 0.8rem;
  font-weight: 600;
}
.skip:focus {
  left: 0;
}

.wrap {
  max-width: var(--maxw);
  margin-inline: auto;
  padding-inline: var(--gutter);
}

/* ---------- buttons ---------- */

.btn {
  display: inline-block;
  font-family: var(--body);
  font-size: 0.78rem;
  font-weight: 600;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  text-decoration: none;
  padding: 1rem 2.1rem;
  border: 2px solid transparent;
  cursor: pointer;
  transition:
    background 0.22s,
    color 0.22s,
    border-color 0.22s;
  text-align: center;
}
.btn-gold {
  background: var(--gold);
  color: var(--ink);
  border-color: var(--gold);
}
.btn-gold:hover {
  background: var(--gold-d);
  border-color: var(--gold-d);
}
.btn-dark {
  background: var(--ink);
  color: #fff;
  border-color: var(--ink);
}
.btn-dark:hover {
  background: var(--gold);
  color: var(--ink);
  border-color: var(--gold);
}
.btn-out {
  background: transparent;
  color: var(--ink);
  border-color: var(--ink);
}
.btn-out:hover {
  background: var(--ink);
  color: #fff;
}
.btn-light {
  background: transparent;
  color: #fff;
  border-color: #fff;
}
.btn-light:hover {
  background: #fff;
  color: var(--ink);
}

/* ---------- header / nav ---------- */

.header {
  position: sticky;
  top: 0;
  z-index: 200;
  background: var(--white);
  border-bottom: 1px solid var(--line);
}
.header-inner {
  max-width: var(--maxw);
  margin-inline: auto;
  padding-inline: var(--gutter);
  min-height: 84px;
  display: flex;
  align-items: center;
  gap: 2rem;
}

/* Stacked wordmark: SAMA in SpaceX over Aviation in the body face.
   line-height 1 on both so the two lines lock together tightly —
   default leading would float them apart. */
.brand {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 0.28rem;
  text-decoration: none;
  margin-right: auto;
  line-height: 1;
}
.brand strong {
  font-family: var(--mark);
  font-weight: 400;
  font-size: 1.95rem;
  letter-spacing: 0.03em;
  color: var(--ink);
  line-height: 1;
}
.brand span {
  font-family: var(--body);
  font-size: 0.6rem;
  font-weight: 600;
  letter-spacing: 0.34em;
  text-transform: uppercase;
  color: var(--grey);
  line-height: 1;
  /* nudge right so the tracked-out caps optically align with the S above */
  padding-left: 0.12em;
}

.menu {
  display: flex;
  align-items: center;
  gap: 2rem;
  list-style: none;
}
.menu a {
  text-decoration: none;
  font-size: 0.86rem;
  font-weight: 500;
  color: var(--ink);
  padding-block: 0.3rem;
  border-bottom: 2px solid transparent;
  transition:
    color 0.2s,
    border-color 0.2s;
}
.menu a:hover {
  color: var(--gold-d);
  border-bottom-color: var(--gold);
}
/* marks which page you're on — set on the Planes link in fleet.html */
.menu a.is-current {
  color: var(--gold-d);
  border-bottom-color: var(--gold);
}

.burger {
  display: none;
  background: none;
  border: 1px solid var(--line);
  padding: 0.5rem 0.8rem;
  font-family: var(--body);
  font-size: 0.75rem;
  font-weight: 600;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  cursor: pointer;
}

@media (max-width: 980px) {
  .menu {
    display: none;
    position: absolute;
    top: 100%;
    left: 0;
    right: 0;
    flex-direction: column;
    align-items: stretch;
    gap: 0;
    background: #fff;
    border-bottom: 1px solid var(--line);
    padding: 0.5rem var(--gutter) 1.25rem;
  }
  .menu.open {
    display: flex;
  }
  .menu li a {
    display: block;
    padding-block: 0.8rem;
    border-bottom: 1px solid var(--line);
  }
  .menu .btn {
    margin-top: 1rem;
  }
  .burger {
    display: block;
  }
}

/* ---------- hero ---------- */

.hero {
  position: relative;
  /* Short banner hero, capped at 375px. Falls back to full screen below
     the top bar (34px) + nav (84px) on short viewports. svh (second
     declaration) keeps mobile browser chrome off the CTAs.
     620px is the single number to change if this needs resizing. */
  min-height: min(calc(100vh - 84px), 620px);
  min-height: min(calc(100svh - 84px), 620px);
  display: grid;
  align-items: center;
  isolation: isolate;
  background: linear-gradient(160deg, #2b2b30 0%, #1a1a1c 55%, #101012 100%);
  overflow: hidden;
}
/* Placeholder stands in for CalAir's background video. Swap the whole
 .hero-media block for <video autoplay muted loop playsinline> when the
 footage exists. */
.hero-media {
  position: absolute;
  inset: 0;
  z-index: 0;
  background:
    radial-gradient(
      120% 90% at 78% 18%,
      rgba(222, 192, 133, 0.2) 0%,
      transparent 58%
    ),
    radial-gradient(
      90% 70% at 12% 92%,
      rgba(222, 192, 133, 0.1) 0%,
      transparent 62%
    );
}
.hero-media::after {
  content: "01-hero.jpg  ·  2400×1400 landscape";
  position: absolute;
  right: var(--gutter);
  bottom: 1.5rem;
  font-size: 0.64rem;
  font-weight: 600;
  letter-spacing: 0.18em;
  color: rgba(222, 192, 133, 0.65);
  border: 1px dashed rgba(222, 192, 133, 0.4);
  padding: 0.45rem 0.8rem;
}

.hero-inner {
  position: relative;
  z-index: 1;
  max-width: var(--maxw);
  margin-inline: auto;
  width: 100%;
  /* trimmed to match the shorter hero — tall padding here would force the
     band back past its 620px cap */
  padding: clamp(1.75rem, 4vw, 2.5rem) var(--gutter);
}
/* Headline only, centred, forced onto one line. The size is driven by
   vw so it shrinks with the window instead of wrapping; the rem value
   caps it on wide screens. Phones can't hold 46 characters on one line
   at a readable size, so under 800px it wraps normally — see below. */
.hero h1 {
  color: #fff;
  font-size: min(2.15rem, 2.45vw);
  font-weight: 600;
  white-space: nowrap;
  text-align: center;
  letter-spacing: 0;
  text-shadow:
    0 2px 4px rgba(0, 0, 0, 0.5),
    0 4px 26px rgba(0, 0, 0, 0.55);
}

@media (max-width: 800px) {
  .hero h1 {
    white-space: normal;
    font-size: clamp(1.3rem, 4.4vw, 1.75rem);
  }
}

/* ---------- intro band (below the hero) ---------- */

.intro {
  padding-block: clamp(3rem, 6vw, 5rem);
  background: var(--white);
}
.intro-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: clamp(2rem, 5vw, 4rem);
  align-items: center;
}
@media (max-width: 900px) {
  .intro-grid {
    grid-template-columns: 1fr;
  }
}
.intro-media {
  aspect-ratio: 16 / 10;
  overflow: hidden;
  border: 1px solid var(--line);
}
.intro-media img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.intro-copy {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 1.1rem;
  text-align: left;
}
.intro h2 {
  font-size: clamp(2rem, 4.4vw, 3.2rem);
}
.intro p {
  font-size: 1.06rem;
  max-width: 46rem;
}
.intro-btns {
  display: flex;
  flex-wrap: wrap;
  gap: 0.9rem;
  margin-top: 0.5rem;
}

/* ---------- shared section furniture ---------- */

.section {
  padding-block: clamp(4rem, 8vw, 7rem);
}
.section-off {
  background: var(--off);
}

.section-title {
  font-size: clamp(2rem, 4.4vw, 3.2rem);
  text-align: center;
  margin-bottom: 0.8rem;
}
.section-sub {
  text-align: center;
  max-width: 46rem;
  margin: 0 auto clamp(2.5rem, 5vw, 4rem);
  font-size: 1.05rem;
}

/* ---------- alternating feature rows ---------- */

.feature {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: clamp(2rem, 6vw, 5rem);
  align-items: center;
  padding-block: clamp(3rem, 6vw, 5rem);
}
.feature + .feature {
  border-top: 1px solid var(--line);
}
.feature.flip .feature-media {
  order: 2;
}

@media (max-width: 900px) {
  .feature {
    grid-template-columns: 1fr;
    gap: 2rem;
  }
  .feature.flip .feature-media {
    order: 0;
  }
}

.feature-media {
  /* 16:10 rather than 4:3 — the supplied photography is landscape and
     a 4:3 box would crop the wingtips off. */
  aspect-ratio: 16 / 10;
  background: linear-gradient(155deg, #ededed 0%, #dcdcdc 50%, #cfcfcf 100%);
  display: grid;
  place-items: center;
  border: 1px solid var(--line);
  position: relative;
}
.feature-media span {
  font-size: 0.68rem;
  font-weight: 600;
  letter-spacing: 0.18em;
  text-transform: uppercase;
  color: var(--grey);
  border: 1px dashed #b8b8b8;
  background: rgba(255, 255, 255, 0.75);
  padding: 0.6rem 1rem;
  text-align: center;
  line-height: 1.7;
}

.feature-body {
  display: flex;
  flex-direction: column;
  gap: 1.1rem;
  align-items: flex-start;
}

/* CalAir sets these as "Eyebrow | Title" in one heading. Same here. */
.feature-body h3 {
  font-size: clamp(1.7rem, 3.4vw, 2.6rem);
}
.feature-body h3 .eyebrow {
  display: block;
  font-family: var(--body);
  font-size: 0.78rem;
  font-weight: 600;
  letter-spacing: 0.22em;
  text-transform: uppercase;
  color: var(--gold-d);
  margin-bottom: 0.85rem;
  letter-spacing: 0.22em;
}
.feature-body p {
  font-size: 1.02rem;
}

.feature-note {
  font-family: var(--head);
  font-size: 1.08rem;
  font-weight: 700;
  color: var(--ink);
}
.feature-note .ph {
  font-weight: 700;
}

.feature-list {
  list-style: none;
  display: grid;
  gap: 0.7rem;
}
.feature-list li {
  position: relative;
  padding-left: 1.9rem;
  color: var(--grey);
  font-size: 0.98rem;
  line-height: 1.6;
}
.feature-list li::before {
  content: "";
  position: absolute;
  left: 0;
  top: 0.52em;
  width: 10px;
  height: 10px;
  background: var(--gold);
  transform: rotate(45deg);
}

/* ---------- full-bleed banner ---------- */

.bleed {
  width: 100%;
  overflow: hidden;
  line-height: 0;
}
.bleed img {
  display: block;
  width: 100%;
  height: auto;
}

/* ---------- fleet ----------
   One full-width panel per tail: photo + identity/equipment across the
   top, full spec sheet underneath in four grouped columns. */

.fleet-grid {
  display: grid;
  gap: clamp(2rem, 4vw, 3rem);
}
.plane {
  background: #fff;
  border: 1px solid var(--line);
  padding: clamp(1.5rem, 3vw, 2.25rem);
  display: flex;
  flex-direction: column;
  gap: clamp(1.75rem, 3vw, 2.5rem);
}

.plane-top {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: clamp(1.5rem, 3vw, 2.5rem);
  align-items: start;
}
@media (max-width: 860px) {
  .plane-top {
    grid-template-columns: 1fr;
  }
}

.plane-media {
  aspect-ratio: 16 / 10;
  background: linear-gradient(155deg, #ededed 0%, #dcdcdc 55%, #cfcfcf 100%);
  border: 1px solid var(--line);
  display: grid;
  place-items: center;
  position: relative;
  overflow: hidden;
}
.plane-media img {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  z-index: 2;
}
.plane-media span {
  font-size: 0.64rem;
  font-weight: 600;
  letter-spacing: 0.16em;
  text-transform: uppercase;
  color: var(--grey);
  border: 1px dashed #b8b8b8;
  background: rgba(255, 255, 255, 0.75);
  padding: 0.5rem 0.85rem;
  text-align: center;
  line-height: 1.7;
}
.plane-media.loaded span {
  display: none;
}

.plane-id {
  display: flex;
  flex-direction: column;
  gap: 0.9rem;
  align-items: flex-start;
}
.plane-id h3 {
  font-size: 1.7rem;
}
.plane-sub {
  font-size: 0.95rem;
  color: var(--gold-d);
  font-weight: 600;
  margin-top: -0.55rem;
}

/* headline figures — the three things a renter checks first */
.plane-headline {
  display: grid;
  width: 100%;
  border-top: 1px solid var(--line);
}
.plane-headline > div {
  display: flex;
  justify-content: space-between;
  align-items: baseline;
  gap: 1rem;
  padding-block: 0.6rem;
  border-bottom: 1px solid var(--line);
}
.plane-headline dt {
  font-size: 0.72rem;
  font-weight: 600;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  color: var(--grey-2);
}
.plane-headline dd {
  font-family: var(--head);
  font-size: 1.05rem;
  font-weight: 700;
  color: var(--ink);
  font-variant-numeric: tabular-nums;
  text-align: right;
}

.plane-key {
  font-family: var(--head);
  font-size: 1rem;
  font-weight: 800;
  color: var(--ink);
}
.plane .btn {
  margin-top: 0.4rem;
}

.plane-specs-wrap {
  border-top: 1px solid var(--line);
  padding-top: clamp(1.5rem, 3vw, 2rem);
  display: grid;
  gap: 1.25rem;
}
.spec-groups {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(215px, 1fr));
  gap: clamp(1.5rem, 3vw, 2.5rem);
}
.spec-group h4 {
  font-size: 0.72rem;
  font-weight: 700;
  letter-spacing: 0.16em;
  text-transform: uppercase;
  color: var(--gold-d);
  font-family: var(--body);
  padding-bottom: 0.6rem;
  border-bottom: 2px solid var(--gold);
  margin-bottom: 0.9rem;
}
/* label above value: some labels run long ("Cabin payload — 3 hr trip
   fuel + 45 min reserve") and would crush a two-column row */
.spec-group dl {
  display: grid;
  gap: 0.85rem;
}
.spec-group dt {
  font-size: 0.8rem;
  color: var(--grey);
  line-height: 1.45;
}
.spec-group dd {
  font-family: var(--head);
  font-size: 1.02rem;
  font-weight: 700;
  color: var(--ink);
  font-variant-numeric: tabular-nums;
  line-height: 1.3;
}
.spec-group dd em {
  font-style: normal;
  font-family: var(--body);
  font-size: 0.82rem;
  font-weight: 400;
  color: var(--grey-2);
}

/* ---------- ratings & endorsements ----------
   One card per programme. Kind label (Certificate / Rating / Endorsement /
   Currency) sits above the title so the grid can be scanned by type as
   well as read. */

.rating-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(295px, 1fr));
  gap: clamp(1.25rem, 2.5vw, 2rem);
}
.rating {
  background: #fff;
  border: 1px solid var(--line);
  display: flex;
  flex-direction: column;
  transition:
    box-shadow 0.25s,
    transform 0.25s;
}
.rating:hover {
  transform: translateY(-5px);
  box-shadow: 0 18px 44px rgba(26, 26, 28, 0.11);
}
.rating-media {
  aspect-ratio: 16 / 9;
  background: linear-gradient(155deg, #ededed 0%, #dcdcdc 55%, #cfcfcf 100%);
  border-bottom: 1px solid var(--line);
  display: grid;
  place-items: center;
  position: relative;
  overflow: hidden;
}
.rating-media img {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  z-index: 2;
}
.rating-media span {
  font-size: 0.6rem;
  font-weight: 600;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  color: var(--grey);
  border: 1px dashed #b8b8b8;
  background: rgba(255, 255, 255, 0.75);
  padding: 0.45rem 0.7rem;
  text-align: center;
}
.rating-media.loaded span {
  display: none;
}
/* tailwheel.jpg is 3.1:1 against a 16:9 box, so cover has to trim ~8% of
   the aeroplane. Biasing left keeps the tail and tailwheel — the actual
   subject of that card — and sacrifices a little of the spinner instead. */
.rating-media img.pos-tail {
  object-position: 38% center;
}
.rating-body {
  padding: 1.6rem 1.5rem 1.9rem;
  display: flex;
  flex-direction: column;
  gap: 0.55rem;
  flex: 1;
}
.rating-kind {
  font-size: 0.66rem;
  font-weight: 700;
  letter-spacing: 0.18em;
  text-transform: uppercase;
  color: var(--gold-d);
}
.rating-body h3 {
  font-size: 1.3rem;
  line-height: 1.2;
}
.rating-body p {
  font-size: 0.93rem;
  line-height: 1.6;
}

/* ---------- services cards ---------- */

.svc-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(310px, 1fr));
  gap: clamp(1.5rem, 3vw, 2.25rem);
  align-items: stretch;
}

.svc {
  background: #fff;
  border: 1px solid var(--line);
  display: flex;
  flex-direction: column;
  transition:
    box-shadow 0.25s,
    transform 0.25s;
}
.svc:hover {
  transform: translateY(-5px);
  box-shadow: 0 18px 44px rgba(26, 26, 28, 0.11);
}

.svc-media {
  aspect-ratio: 16 / 10;
  background: linear-gradient(155deg, #ededed 0%, #dcdcdc 55%, #cfcfcf 100%);
  border-bottom: 1px solid var(--line);
  display: grid;
  place-items: center;
}
.svc-media span {
  font-size: 0.64rem;
  font-weight: 600;
  letter-spacing: 0.16em;
  text-transform: uppercase;
  color: var(--grey);
  border: 1px dashed #b8b8b8;
  background: rgba(255, 255, 255, 0.75);
  padding: 0.5rem 0.85rem;
}

.svc-body {
  padding: 2rem 1.75rem 2.25rem;
  display: flex;
  flex-direction: column;
  gap: 1rem;
  flex: 1;
}
.svc-body h4 {
  font-size: 1.4rem;
}
.svc-body > p {
  font-size: 0.97rem;
}

.svc-key {
  font-family: var(--head);
  font-size: 1rem;
  font-weight: 800;
  margin-top: 0.3rem;
}
.svc-list {
  list-style: none;
  display: grid;
  gap: 0.65rem;
}
.svc-list li {
  position: relative;
  padding-left: 1.7rem;
  font-size: 0.93rem;
  color: var(--grey);
  line-height: 1.6;
}
.svc-list li::before {
  content: "";
  position: absolute;
  left: 0;
  top: 0.48em;
  width: 9px;
  height: 9px;
  background: var(--gold);
  transform: rotate(45deg);
}

.svc-price {
  margin-top: auto;
  padding-top: 1.5rem;
  border-top: 1px solid var(--line);
  display: grid;
  gap: 0.3rem;
}
.svc-price .lbl {
  font-size: 0.72rem;
  font-weight: 600;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  color: var(--grey-2);
}
.svc-price .amt {
  font-family: var(--head);
  font-size: 1.3rem;
  font-weight: 800;
  color: var(--ink);
  line-height: 1.3;
}
/* unit sits quieter than the figure it qualifies */
.svc-price .amt small {
  font-family: var(--body);
  font-size: 0.88rem;
  font-weight: 500;
  color: var(--grey);
}
.svc-btns {
  display: flex;
  flex-wrap: wrap;
  gap: 0.65rem;
  margin-top: 1.1rem;
}
.svc-btns .btn {
  flex: 1;
  min-width: 130px;
  padding: 0.85rem 1.1rem;
  font-size: 0.72rem;
}

/* ---------- instructors ---------- */

.crew-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(260px, 1fr));
  gap: clamp(1.5rem, 3vw, 2.5rem);
}
.crew {
  display: flex;
  flex-direction: column;
  gap: 1.1rem;
}
.crew-media {
  aspect-ratio: 4 / 5;
  background: linear-gradient(155deg, #ededed 0%, #dcdcdc 55%, #cfcfcf 100%);
  border: 1px solid var(--line);
  display: grid;
  place-items: center;
}
.crew-media span {
  font-size: 0.64rem;
  font-weight: 600;
  letter-spacing: 0.16em;
  text-transform: uppercase;
  color: var(--grey);
  border: 1px dashed #b8b8b8;
  background: rgba(255, 255, 255, 0.75);
  padding: 0.5rem 0.85rem;
}
.crew h4 {
  font-size: 1.35rem;
}
.crew .role {
  font-size: 0.74rem;
  font-weight: 600;
  letter-spacing: 0.16em;
  text-transform: uppercase;
  color: var(--gold-d);
  margin-top: 0.3rem;
  display: block;
}
.crew p {
  font-size: 0.95rem;
  margin-top: 0.7rem;
}

/* ---------- contact ---------- */

.contact-grid {
  display: grid;
  grid-template-columns: 0.8fr 1.2fr;
  gap: clamp(2rem, 6vw, 5rem);
  align-items: start;
}
@media (max-width: 900px) {
  .contact-grid {
    grid-template-columns: 1fr;
  }
}

.contact-list {
  display: grid;
  gap: 1.5rem;
}
.contact-list .lbl {
  font-size: 0.72rem;
  font-weight: 600;
  letter-spacing: 0.16em;
  text-transform: uppercase;
  color: var(--gold-d);
  display: block;
  margin-bottom: 0.3rem;
}
.contact-list .val {
  font-size: 1.02rem;
  color: var(--ink);
}

.form {
  display: grid;
  gap: 1.15rem;
}
.row {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 1.15rem;
}
@media (max-width: 640px) {
  .row {
    grid-template-columns: 1fr;
  }
}

.field {
  display: grid;
  gap: 0.45rem;
}
.field label {
  font-size: 0.72rem;
  font-weight: 600;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  color: var(--grey);
}
.field input,
.field select,
.field textarea {
  font-family: var(--body);
  font-size: 0.98rem;
  color: var(--ink);
  background: #fff;
  border: 1px solid var(--line);
  border-radius: 0;
  padding: 0.85rem 0.95rem;
  width: 100%;
  transition: border-color 0.2s;
}
.field input:focus,
.field select:focus,
.field textarea:focus {
  border-color: var(--gold-d);
}
.field textarea {
  resize: vertical;
  min-height: 135px;
}

.status {
  font-size: 0.88rem;
  line-height: 1.6;
  color: var(--ink);
  border-left: 3px solid var(--gold);
  padding-left: 0.95rem;
  display: none;
}
.status.show {
  display: block;
}

/* ---------- credentials strip ----------
   Sits on white, not on the dark footer: sr-series.png has a baked-in
   white background (RGB, no alpha) so it would show as a white slab on
   dark, and the Cirrus badge is black artwork that would lose its edges
   against #1a1a1c. Light ground solves both. */

.creds {
  background: var(--white);
  border-top: 1px solid var(--line);
  padding-block: clamp(2rem, 4vw, 3rem);
}
.creds-inner {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
  gap: clamp(2rem, 5vw, 4.5rem);
}
.creds img {
  display: block;
  height: 56px;
  width: auto;
}
@media (max-width: 560px) {
  .creds img {
    height: 40px;
  }
}

/* ---------- footer ---------- */

.footer {
  background: var(--ink);
  color: #fff;
  padding-block: clamp(3.5rem, 7vw, 5.5rem) 2rem;
}
.footer-grid {
  display: grid;
  grid-template-columns: 1.5fr 1fr 1fr 1fr;
  gap: clamp(2rem, 4vw, 3.5rem);
  padding-bottom: 3rem;
}
@media (max-width: 900px) {
  .footer-grid {
    grid-template-columns: 1fr 1fr;
  }
}
@media (max-width: 560px) {
  .footer-grid {
    grid-template-columns: 1fr;
  }
}

.footer-brand {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 0.3rem;
  line-height: 1;
}
.footer-brand strong {
  font-family: var(--mark);
  font-weight: 400;
  font-size: 2.45rem;
  letter-spacing: 0.03em;
  color: #fff;
  line-height: 1;
}
.footer-brand span {
  font-family: var(--body);
  font-size: 0.64rem;
  font-weight: 600;
  letter-spacing: 0.34em;
  text-transform: uppercase;
  color: var(--gold);
  line-height: 1;
  padding-left: 0.12em;
}
.footer-ar {
  direction: rtl;
  color: var(--gold);
  font-size: 1.1rem;
  margin-top: 0.4rem;
}
.footer p {
  color: rgba(255, 255, 255, 0.62);
  font-size: 0.93rem;
  margin-top: 1rem;
  max-width: 32ch;
}
.footer h3 {
  color: #fff;
  font-size: 0.78rem;
  font-weight: 700;
  letter-spacing: 0.18em;
  text-transform: uppercase;
  margin-bottom: 1.15rem;
  font-family: var(--body);
}
.footer ul {
  list-style: none;
  display: grid;
  gap: 0.7rem;
}
.footer li,
.footer a {
  color: rgba(255, 255, 255, 0.68);
  font-size: 0.93rem;
  text-decoration: none;
}
.footer a:hover {
  color: var(--gold);
}

.footer-base {
  border-top: 1px solid rgba(255, 255, 255, 0.14);
  padding-top: 1.75rem;
  display: flex;
  flex-wrap: wrap;
  gap: 1rem;
  justify-content: space-between;
  font-size: 0.8rem;
  color: rgba(255, 255, 255, 0.55);
}

/* ---------- drop-in photos ----------
   Every image slot holds an <img> sitting on top of a labelled grey
   placeholder. The label IS the filename you need to use. If the file
   isn't in /images yet, onerror removes the <img> and the label stays
   visible — so the page never shows a broken-image icon and fills in
   one photo at a time as you add them. */

.feature-media,
.svc-media,
.crew-media {
  position: relative;
  overflow: hidden;
}
.feature-media img,
.svc-media img,
.crew-media img {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  z-index: 2;
}

.hero-media img,
.hero-media video {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  z-index: 0;
}
/* keeps the white headline readable over any photo you drop in */
.hero-media::before {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 1;
  /* Centred scrim, to match the centred headline: softly shades the
     middle of the frame and releases toward the edges, so the footage
     stays clear where nothing sits on top of it. Legibility comes
     mostly from text-shadow on the type, not from dimming the video. */
  background: radial-gradient(
    78% 62% at 50% 50%,
    rgba(16, 16, 18, 0.52) 0%,
    rgba(16, 16, 18, 0.3) 55%,
    rgba(16, 16, 18, 0.12) 100%
  );
}

/* Phones stack the copy across the full width, so the left-weighted
   scrim doesn't help there — swap in a gentle bottom-up one. */
@media (max-width: 760px) {
  .hero-media::before {
    background: radial-gradient(
      95% 68% at 50% 50%,
      rgba(16, 16, 18, 0.62) 0%,
      rgba(16, 16, 18, 0.42) 60%,
      rgba(16, 16, 18, 0.25) 100%
    );
  }
}
.hero-media::after {
  z-index: 2;
}

/* once a real photo loads, its placeholder label gets out of the way */
.hero-media.loaded::after,
.feature-media.loaded span,
.svc-media.loaded span,
.crew-media.loaded span {
  display: none;
}
/* The supplied portraits are 3:2 landscape in a 4:5 portrait card, so
   cover shows only the middle ~53% of their width. Both subjects sit
   right of centre, so bias the crop that way rather than clipping them. */
.crew-media img.pos-right {
  object-position: 62% center;
}
/* Henry sits closer to the middle of his frame than the other two, so he
   needs less bias or his head drifts left in the card. */
.crew-media img.pos-mid {
  object-position: 55% center;
}

/* ---------- placeholders ---------- */

.ph {
  color: var(--gold-d);
  font-weight: 600;
  border-bottom: 1px dashed var(--gold-d);
  white-space: nowrap;
}
.footer .ph {
  color: var(--gold);
  border-bottom-color: rgba(222, 192, 133, 0.5);
}

/* ---------- reveal ---------- */

.reveal {
  opacity: 0;
  transform: translateY(18px);
}
.reveal.in {
  opacity: 1;
  transform: none;
  transition:
    opacity 0.65s ease,
    transform 0.65s cubic-bezier(0.16, 1, 0.3, 1);
}

@media (prefers-reduced-motion: reduce) {
  *,
  *::before,
  *::after {
    animation-duration: 0.001ms !important;
    transition-duration: 0.001ms !important;
  }
  .reveal {
    opacity: 1;
    transform: none;
  }
}
