:root { --ink:#101915; --paper:#f5f5ef; --line:rgba(16,25,21,.15); --lime:#d9f27c; --orange:#f28a5b; }
* { box-sizing:border-box; }
html { scroll-behavior:smooth; }
body { margin:0; background:var(--paper); color:var(--ink); font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif; font-size:16px; line-height:1.55; }
a { color:inherit; text-decoration:none; }
.page-wrap { width:min(calc(100% - 40px),1180px); margin:0 auto; }
.page-topline { background:var(--ink); color:#dce7dd; font-size:.75rem; letter-spacing:.09em; text-transform:uppercase; }
.page-topline .page-wrap { display:flex; justify-content:space-between; gap:16px; padding:10px 0; }
.page-header { border-bottom:1px solid var(--line); background:rgba(245,245,239,.94); backdrop-filter:blur(16px); }
.page-nav { min-height:78px; display:flex; align-items:center; justify-content:space-between; gap:28px; }
.page-brand { display:inline-flex; align-items:center; gap:10px; font-weight:800; letter-spacing:-.03em; font-size:1.14rem; }
.page-brand svg { width:35px; height:35px; flex:0 0 auto; }
.page-brand > span { display:inline-flex; flex-direction:column; align-items:flex-start; gap:2px; line-height:.86; }
.page-brand em { color:#2f3b35; font-size:.56em; font-style:normal; font-weight:850; letter-spacing:.16em; }
.page-links { display:flex; align-items:center; gap:24px; color:#2f3b35; font-size:.92rem; }
.page-links a:hover { color:var(--ink); }
.page-cta { display:inline-flex; align-items:center; justify-content:center; border:1px solid var(--ink); border-radius:999px; padding:10px 16px; background:var(--ink); color:var(--paper); font-weight:750; }
.page-menu-toggle { display:none; place-items:center; width:44px; height:44px; border:1px solid var(--line); border-radius:13px; background:#fffdf8; color:var(--ink); font-size:1.45rem; cursor:pointer; }
.page-main { padding:74px 0 94px; }
.page-hero { display:grid; grid-template-columns:1.06fr .94fr; gap:72px; align-items:end; padding-bottom:72px; border-bottom:1px solid var(--line); }
.page-eyebrow { display:inline-flex; align-items:center; gap:8px; margin:0 0 21px; color:#2f3b35; font-size:.79rem; font-weight:800; letter-spacing:.14em; text-transform:uppercase; }
.page-eyebrow::before { content:""; width:8px; height:8px; border-radius:50%; background:var(--orange); }
h1,h2,h3,p { margin-top:0; }
h1 { max-width:760px; margin-bottom:22px; font-size:clamp(3.2rem,7vw,6.6rem); line-height:.96; letter-spacing:-.04em; word-spacing:.02em; font-weight:800; }
.page-lede { max-width:600px; margin:0; color:#2f3b35; font-size:1.18rem; }
.page-mark { min-height:300px; padding:28px; border-radius:24px; background:#20382f; color:var(--paper); display:flex; flex-direction:column; justify-content:flex-end; box-shadow:18px 18px 0 var(--lime); }
.page-mark.lime { background:var(--lime); color:var(--ink); }
.page-mark small { margin-bottom:auto; color:var(--lime); font-weight:800; letter-spacing:.12em; text-transform:uppercase; }
.page-mark.lime small { color:#2f3b35; }
.page-mark strong { max-width:360px; font-size:clamp(2rem,4vw,3.4rem); line-height:1; letter-spacing:-.03em; word-spacing:.02em; }
.page-content { display:grid; grid-template-columns:.78fr 1.22fr; gap:72px; padding:72px 0; }
.owner-model { border-top:1px solid var(--line); }
.page-content h2 { margin:0; font-size:clamp(2.2rem,4vw,4rem); line-height:1; letter-spacing:-.035em; word-spacing:.02em; }
.page-copy { max-width:600px; }
.page-copy p { margin-bottom:20px; color:#2f3b35; font-size:1.05rem; }
.page-list { display:grid; gap:12px; margin:26px 0 0; padding:0; list-style:none; }
.page-list li { padding:18px 0 18px 31px; border-top:1px solid var(--line); position:relative; font-weight:750; }
.page-list li::before { content:""; position:absolute; left:0; top:25px; width:10px; height:10px; border-radius:50%; background:var(--lime); }
.page-steps { display:grid; grid-template-columns:repeat(3,1fr); gap:1px; background:rgba(16,25,21,.18); border:1px solid rgba(16,25,21,.18); }
.page-step { min-height:225px; padding:24px; background:var(--paper); }
.page-step span { color:#2f3b35; font-size:.78rem; font-weight:850; letter-spacing:.12em; }
.page-step h3 { margin:47px 0 9px; font-size:1.25rem; letter-spacing:-.02em; word-spacing:.01em; }
.page-step p { margin:0; color:#2f3b35; font-size:.95rem; }
.responsibility-grid { display:grid; grid-template-columns:1fr 1fr; gap:12px; }
.responsibility-card { padding:24px; border:1px solid var(--line); border-radius:18px; background:var(--paper); }
.responsibility-card > span { display:block; margin-bottom:2px; color:#2f3b35; font-size:.78rem; font-weight:850; letter-spacing:.12em; text-transform:uppercase; }
.responsibility-card .page-list { margin-top:12px; }
.responsibility-card .page-list li { font-weight:650; }
.pilot-note { background:#20382f; color:var(--paper); border-radius:24px; padding:58px 48px; margin:0 0 72px; border:0; }
.pilot-note h2 { color:var(--paper); }
.pilot-note .page-copy p { color:#c2cec5; }
.pilot-note .page-cta { margin-top:10px; background:var(--lime); border-color:var(--lime); color:var(--ink); }
.owner-enquiry { border-top:1px solid var(--line); }
.page-form { padding:28px; border:1px solid var(--line); border-radius:20px; background:#fffdf8; }
.page-form .form-row { display:grid; grid-template-columns:1fr 1fr; gap:14px; }
.page-form label { display:block; margin-bottom:17px; font-size:.82rem; font-weight:750; }
.page-form input, .page-form select, .page-form textarea { width:100%; margin-top:7px; padding:13px 14px; border:1px solid var(--line); border-radius:9px; background:#fff; color:var(--ink); outline:none; }
.page-form input:focus, .page-form select:focus, .page-form textarea:focus { border-color:var(--ink); box-shadow:0 0 0 3px rgba(217,242,124,.65); }
.page-form textarea { min-height:110px; resize:vertical; }
.page-form .form-note { margin:14px 0 0; color:#2f3b35; font-size:.8rem; }
.page-form .form-note a { text-decoration:underline; font-weight:750; }
.page-form .success { display:none; margin-top:13px; padding:12px 14px; border-radius:9px; background:var(--lime); color:var(--ink); font-size:.87rem; font-weight:700; }
.availability-card { padding:28px; border-radius:20px; background:var(--lime); color:var(--ink); }
.availability-card > span { font-size:.78rem; font-weight:850; letter-spacing:.12em; text-transform:uppercase; }
.availability-card h3 { max-width:450px; margin:32px 0 10px; font-size:clamp(1.8rem,3vw,2.8rem); line-height:1; letter-spacing:-.025em; word-spacing:.015em; }
.availability-card p { max-width:520px; margin:0; color:#2f3b35; }
.availability-actions { display:flex; flex-wrap:wrap; gap:10px; margin-top:24px; }
.availability-actions .page-cta { background:var(--ink); border-color:var(--ink); color:var(--paper); }
.page-outline { display:inline-flex; align-items:center; justify-content:center; padding:10px 16px; border:1px solid var(--ink); border-radius:999px; font-weight:750; }
.footer-legal { margin-top:24px; color:#8e9d92; font-size:.74rem; }
.footer-registration { color:#c2cec5; font-weight:700; }
.page-bottom { padding:58px 0; background:var(--ink); color:var(--paper); }
.page-bottom-inner { display:flex; align-items:end; justify-content:space-between; gap:30px; }
.page-bottom h2 { max-width:630px; margin:0; font-size:clamp(2.3rem,4.5vw,4.6rem); line-height:.98; letter-spacing:-.04em; word-spacing:.02em; }
.page-bottom p { max-width:370px; margin:0; color:#c2cec5; }
.page-bottom .page-cta { margin-top:22px; background:var(--lime); border-color:var(--lime); color:var(--ink); }
.page-footer { padding:28px 0 38px; background:var(--ink); color:var(--paper); border-top:1px solid rgba(245,245,239,.15); }
.page-footer-row { display:flex; justify-content:space-between; gap:20px; align-items:end; }
.page-footer small { color:#aab8ae; }
.page-footer-links { display:flex; gap:20px; color:#d7e2d9; font-size:.86rem; }
@media (max-width:760px) {
  .page-wrap { width:min(calc(100% - 28px),1180px); }
  .page-topline .page-wrap { display:block; text-align:center; }
  .page-topline span:last-child { display:none; }
  .page-nav { position:relative; min-height:68px; align-items:center; padding:12px 0; }
  .page-menu-toggle { display:grid; }
  .page-links { display:none; position:absolute; z-index:20; top:calc(100% + 10px); left:0; right:0; flex-direction:column; align-items:stretch; gap:0; padding:10px; border:1px solid rgba(245,245,239,.16); border-radius:18px; background:var(--ink); box-shadow:0 20px 40px rgba(16,25,21,.22); }
  .page-links.mobile-open { display:flex; }
  .page-links.mobile-open a:not(.page-cta) { padding:13px; border-radius:10px; color:var(--paper); font-size:1rem; }
  .page-links.mobile-open a:not(.page-cta):hover { color:var(--lime); background:rgba(245,245,239,.08); }
  .page-links.mobile-open .page-cta { margin-top:8px; padding:12px 13px; background:var(--lime); border-color:var(--lime); color:var(--ink); }
  .page-main { padding-top:52px; }
  .page-hero, .page-content { grid-template-columns:1fr; gap:42px; }
  .page-hero { padding-bottom:58px; }
  .page-mark { min-height:250px; box-shadow:11px 12px 0 var(--lime); }
  .page-content { padding:58px 0; }
  .page-steps { grid-template-columns:1fr; }
  .page-step { min-height:180px; }
  .page-step h3 { margin-top:30px; }
  .responsibility-grid, .page-form .form-row { grid-template-columns:1fr; }
  .pilot-note { padding:38px 24px; margin-bottom:58px; }
  .page-form { padding:21px; }
  .page-bottom-inner { display:block; }
  .page-bottom p { margin-top:20px; }
  .page-footer-row { display:block; }
  .page-footer-links { margin-top:18px; flex-wrap:wrap; }
}
