
:root{color-scheme:dark;font-family:Arial,Helvetica,sans-serif;background:#080807;color:#f7f2e8}
*{box-sizing:border-box}
html{min-width:320px;scroll-behavior:smooth}
body{margin:0;min-height:100vh;background:radial-gradient(circle at 76% 18%,#22190d 0,#0e0c09 35%,#080807 69%);color:#f7f2e8}
a{color:inherit}
a:focus-visible{outline:2px solid #f5ca6c;outline-offset:5px}
.page{max-width:1440px;min-height:100vh;margin:auto;padding:28px clamp(24px,5vw,82px) 24px;display:flex;flex-direction:column}
.topbar{display:flex;align-items:center;justify-content:space-between;gap:30px;border-bottom:1px solid #4a3920;padding-bottom:19px}
.wordmark{text-decoration:none;color:#f1d28d;text-transform:uppercase;font-size:1rem;font-weight:700;letter-spacing:.23em;white-space:nowrap}
.nav{display:flex;flex-wrap:wrap;align-items:center;justify-content:flex-end;gap:6px 20px}
.nav a{text-decoration:none;color:#d6c8ad;font-size:.9375rem;padding:9px 1px;border-bottom:1px solid transparent;white-space:nowrap}
.nav a:hover,.nav a[aria-current=page]{color:#f1d28d;border-color:#c69a48}
main{flex:1}
.hero{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,.9fr);align-items:center;gap:clamp(26px,4vw,70px);min-height:620px;padding:40px 0 50px}
.hero-logo{display:flex;justify-content:center;align-items:center;min-width:0}
.hero-logo img{display:block;width:min(100%,540px);height:auto;mix-blend-mode:screen}
.hero-copy{max-width:560px}
.kicker{color:#d5ad57;font-size:.8125rem;font-weight:700;letter-spacing:.2em;text-transform:uppercase;margin:0 0 20px}
.kicker:before{content:"";display:inline-block;width:35px;height:1px;margin:0 14px 4px 0;background:#d5ad57}
h1,h2,h3{font-family:Georgia,'Times New Roman',serif;font-weight:400;letter-spacing:-.035em}
h1{font-size:clamp(3.1rem,5.5vw,6rem);line-height:1.03;margin:0 0 26px}
h1 span{color:#ddb660}
.lead{color:#d7d0c1;font-size:clamp(1.0625rem,1.4vw,1.25rem);line-height:1.65;max-width:43ch;margin:0}
.rule{height:1px;background:linear-gradient(90deg,#a97d32,transparent);margin-top:40px}
.section{border-top:1px solid #4a3920;padding:58px 0 70px}
.section-title{font-size:clamp(2.2rem,3.8vw,3.8rem);line-height:1.12;margin:0 0 15px}
.section-intro{max-width:62ch;font-size:1.0625rem;line-height:1.65;color:#d7d0c1;margin:0 0 30px}
.feature-grid,.service-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.feature,.service{display:flex;flex-direction:column;align-items:flex-start;min-height:220px;background:linear-gradient(140deg,#21190f,#100e0a);border:1px solid #6c532e;border-radius:4px;padding:25px;text-decoration:none}
.feature:hover{border-color:#d5ad57;background:linear-gradient(140deg,#2b2113,#15100a)}
.feature .index{font-size:.8rem;letter-spacing:.12em;color:#c4984a}
.feature h3,.service h3{font-size:clamp(1.55rem,2.1vw,2rem);margin:auto 0 13px;color:#f4e3bd}
.feature p,.service p{font-size:1rem;line-height:1.55;color:#d7d0c1;margin:0}
.feature .action{font-size:.9rem;color:#e9c478;margin-top:20px;text-decoration:underline;text-underline-offset:5px}
.page-head{padding:85px 0 65px;max-width:850px}
.page-head h1{font-size:clamp(3.25rem,7vw,6.5rem);margin-bottom:20px}
.destination-grid{list-style:none;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin:0;padding:0}
.destination-grid li{min-height:145px;display:flex;flex-direction:column;justify-content:space-between;padding:20px;background:linear-gradient(140deg,#18130d,#0c0b09);border:1px solid #5d4929;border-radius:4px}
.destination-grid .number{font-size:.8rem;color:#ae8744;letter-spacing:.12em}
.destination-grid .name{font-family:Georgia,'Times New Roman',serif;font-size:clamp(1.25rem,2vw,1.8rem);line-height:1.2;color:#f4e3bd}
.photo{margin:0}
.photo img{display:block;width:100%;height:auto;aspect-ratio:16/9;object-fit:cover;border:1px solid #72572f;border-radius:4px;background:#17130e}
.photo figcaption{font-size:.875rem;line-height:1.5;color:#bcae93;margin-top:11px}
.split{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(20px,4vw,60px);align-items:center}
.split h2{font-size:clamp(2rem,3.1vw,3.2rem);line-height:1.12;margin:0 0 20px}
.split p{font-size:1.0625rem;line-height:1.7;color:#d7d0c1;max-width:45ch;margin:0 0 22px}
.text-link{color:#f1d28d;text-decoration-thickness:1px;text-underline-offset:5px}
.contact-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px}
.contact-block{border-top:1px solid #72572f;padding-top:18px;min-width:0}
.contact-label{color:#d5ad57;font-size:.8rem;font-weight:700;letter-spacing:.16em;text-transform:uppercase;margin:0 0 15px}
.contact-value{font-size:1.0625rem;line-height:1.7;color:#f3e7cf;font-style:normal;margin:0;overflow-wrap:anywhere}
.contact-value a{color:#f3d58d;text-decoration-thickness:1px;text-underline-offset:4px}
.contact-value a:hover{color:#fff1c7}
footer{display:flex;justify-content:space-between;gap:16px;align-items:center;border-top:1px solid #4a3920;padding-top:22px;color:#aa9e86;font-size:.875rem;letter-spacing:.04em}
footer strong{color:#cfad66;font-weight:500}
@media(max-width:900px){
 .topbar{align-items:flex-start;flex-direction:column;gap:13px}
 .nav{justify-content:flex-start}
 .hero{grid-template-columns:1fr;text-align:center;min-height:0;padding:25px 0 55px;gap:0;justify-items:center}
 .hero-logo img{width:min(78vw,420px)}
 .hero-copy{margin:auto}
 .kicker:before{display:none}
 .lead{margin:auto}
 .feature-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
 .destination-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
 .contact-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:620px){
 .page{padding:18px 18px 22px}
 .nav{gap:2px 18px}
 .nav a{font-size:.875rem;padding:8px 0}
 .hero-logo img{width:min(90vw,350px)}
 .hero{padding:13px 0 45px}
 h1{font-size:clamp(2.9rem,12vw,4.4rem)}
 .page-head{padding:56px 0 48px}
 .page-head h1{font-size:clamp(3rem,11vw,4.5rem)}
 .section{padding:43px 0 52px}
 .feature-grid,.service-grid,.split,.contact-grid{grid-template-columns:1fr;gap:13px}
 .feature,.service{min-height:185px}
 .destination-grid{gap:10px}
 .destination-grid li{min-height:112px;padding:14px}
 .split{gap:25px}
 footer{font-size:.75rem;line-height:1.5;flex-wrap:wrap}
}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}

.gallery-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}
.gallery-grid figure{margin:0;min-width:0}
.gallery-grid img{display:block;width:100%;height:auto;aspect-ratio:2/1;object-fit:cover;
  border:1px solid #72572f;border-radius:4px;background:#17130e}
.gallery-grid figcaption{font-size:.875rem;line-height:1.5;color:#c8bca5;margin-top:12px}
.empty-media{border:1px solid #6c532e;border-radius:4px;background:linear-gradient(140deg,#21190f,#100e0a);
  padding:clamp(30px,5vw,70px);max-width:850px}
.empty-media h2{font-size:clamp(2rem,3.5vw,3.4rem);line-height:1.12;margin:0 0 16px}
.empty-media p{font-size:1.0625rem;line-height:1.65;color:#d7d0c1;margin:0;max-width:48ch}
@media(max-width:620px){.gallery-grid{grid-template-columns:1fr;gap:28px}}

/* Ubuntu Air aircraft backdrop, shared by every language and page. */
body{position:relative;isolation:isolate;background:#080807}
body::before{content:"";position:absolute;z-index:-1;pointer-events:none;top:0;left:0;width:100%;height:1050px;background-image:linear-gradient(180deg,rgba(8,8,7,.88) 0%,rgba(8,8,7,.58) 26%,rgba(8,8,7,.66) 58%,#080807 100%),linear-gradient(90deg,rgba(8,8,7,.24),rgba(8,8,7,.16)),url("images/ubuntu-air-background.webp");background-position:center,center,center 35%;background-size:cover;background-repeat:no-repeat}
.hero-copy{padding:28px;background:rgba(8,8,7,.66);border:1px solid rgba(213,173,87,.28);border-radius:8px}
.page-head{max-width:900px;margin:38px 0;padding:40px 32px;background:rgba(8,8,7,.78);border:1px solid rgba(213,173,87,.28);border-radius:8px}
.section{position:relative;background:rgba(8,8,7,.9)}
@media(max-width:900px){body::before{height:1150px;background-position:center,center,58% center}.hero-copy{width:100%;padding:28px 22px}}
@media(max-width:620px){body::before{height:950px;background-position:center,center,62% center}.page-head{margin:28px 0;padding:30px 20px}.hero-copy{padding:25px 18px}}

/* Brighter presentation: ivory surfaces, navy text and warm gold accents. */
:root{color-scheme:light;background:#f4f6f8;color:#22374e}
body{background:#f4f6f8;color:#22374e}
body::before{background-image:linear-gradient(180deg,rgba(244,246,248,.72) 0%,rgba(244,246,248,.28) 28%,rgba(244,246,248,.46) 58%,#f4f6f8 100%),url("images/ubuntu-air-background.webp");background-position:center,center 35%;background-size:cover}
.topbar{background:rgba(255,255,255,.94);border-color:#d9dde2;border-radius:8px;padding:18px 22px;box-shadow:0 6px 22px rgba(25,45,65,.06)}
.wordmark{color:#775017}
.nav a{color:#30465c}
.nav a:hover,.nav a[aria-current=page]{color:#775017;border-color:#a97624}
.language-switch a{background:rgba(255,255,255,.96);border-color:#cbd2db;color:#30465c}
.language-switch a:hover,.language-switch a[aria-current=true]{background:#f1dfb9;color:#50350c;border-color:#a97624}
.hero-logo{background:linear-gradient(145deg,#20374e,#102235);border:1px solid #b99b65;border-radius:12px;box-shadow:0 12px 36px rgba(25,45,65,.15)}
.hero-logo img{border-radius:12px}
.hero-copy,.page-head{background:rgba(255,255,255,.94);border-color:#d6dce3;box-shadow:0 12px 36px rgba(25,45,65,.1)}
h1,h2,h3{color:#20374e}
h1 span{color:#886019}
.kicker{color:#775017}
.kicker:before{background:#a97624}
.lead,.section-intro{color:#405368}
.rule{background:linear-gradient(90deg,#b58436,transparent)}
.section{background:rgba(255,255,255,.94);border-color:#d6dce3;border-radius:8px;padding-left:28px;padding-right:28px;margin-bottom:24px}
.feature,.service{background:linear-gradient(140deg,#fff,#f6f0e5);border-color:#d9c9aa}
.feature:hover{background:linear-gradient(140deg,#fff,#efe3cc);border-color:#a97624}
.feature .index,.destination-grid .number{color:#775017}
.feature h3,.service h3,.destination-grid .name{color:#20374e}
.feature p,.service p,.split p{color:#405368}
.feature .action,.text-link{color:#775017}
.split .kicker{color:#775017}
.destination-grid li{background:linear-gradient(140deg,#fff,#f6f0e5);border-color:#d9c9aa}
.photo img,.gallery-grid img{border-color:#c9cfd7}
.photo figcaption,.gallery-grid figcaption{color:#526275}
.contact-block{border-color:#d4c09a}
.contact-label{color:#775017}
.contact-value{color:#30465c}
.contact-value a{color:#775017}
.contact-value a:hover{color:#20374e}
.empty-media{background:linear-gradient(140deg,#fff,#f6f0e5);border-color:#d9c9aa}
.empty-media p{color:#405368}
.empty-media .kicker{color:#775017}
footer{border-color:#cbd2db;color:#526275}
footer strong{color:#775017}
a:focus-visible{outline-color:#886019}
@media(max-width:900px){body::before{background-position:center,58% center}}
@media(max-width:620px){.topbar{padding:16px}.section{padding-left:18px;padding-right:18px}body::before{background-position:center,62% center}}

.offers-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}
.offers-grid .service{padding:30px;min-width:0}
.offers-grid .index{color:#775017;letter-spacing:.12em;font-size:.85rem;margin-bottom:18px}
.offers-grid h3{margin:0 0 16px;font-size:clamp(1.7rem,2.8vw,2.6rem)}
.offer-list{padding-left:20px;margin:24px 0;color:#405368;line-height:1.75}
.offer-list li{margin-bottom:10px}
.offers-grid .text-link{margin-top:auto}
.request-steps{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:30px;padding-left:24px;margin:25px 0 32px;color:#775017}
.request-steps h3{font-size:1.5rem;margin:0 0 12px;letter-spacing:-.02em}
.request-steps p{line-height:1.7;color:#405368;margin:0}
.offer-note{padding:18px 22px;border-left:3px solid #a97624;background:#f6f0e5;color:#405368;line-height:1.7}
.offer-actions{display:flex;flex-wrap:wrap;gap:14px;margin-bottom:24px}
.quote-button{display:inline-block;padding:14px 22px;border:1px solid #20374e;border-radius:6px;background:#20374e;color:#fff;text-decoration:none;font-weight:600;line-height:1.5}
.quote-button:hover{background:#304f6f}
.quote-button.secondary{background:#fff;color:#20374e}
.quote-button.secondary:hover{background:#edf1f5}
@media(max-width:900px){.offers-grid,.request-steps{grid-template-columns:1fr}.request-steps{gap:22px}}
@media(max-width:620px){.offers-grid .service{padding:22px}.quote-button{width:100%;text-align:center}}

.training-grid{list-style:none;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;padding:0;margin:28px 0 30px}
.training-grid li{display:flex;align-items:center;min-height:96px;padding:20px;background:linear-gradient(140deg,#fff,#f6f0e5);border:1px solid #d9c9aa;border-radius:6px;color:#20374e;font-weight:600;font-size:1.0625rem;line-height:1.55;overflow-wrap:anywhere}
.training-offer .section-title{max-width:24ch}
@media(max-width:900px){.training-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:620px){.training-grid{grid-template-columns:1fr}.training-grid li{min-height:72px;padding:18px}}

/* Gold lettering for the public website header. */
.topbar .wordmark,.topbar .nav a{color:#966718;font-weight:600}
.topbar .wordmark{font-weight:700}
.topbar .nav a:hover,.topbar .nav a[aria-current=page]{color:#785016;border-color:#b58436}

.booking-home-actions{margin-top:26px}
.booking-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px;border:0;padding:0;margin:26px 0;min-width:0}
.booking-grid[hidden]{display:none}
.booking-grid legend{font-family:Georgia,'Times New Roman',serif;font-size:1.8rem;color:#20374e;padding:20px 0 12px}
.booking-field{min-width:0}
.booking-field label{display:block;color:#20374e;font-weight:600;line-height:1.5;margin-bottom:8px}
.booking-field input,.booking-field select,.booking-field textarea{display:block;width:100%;padding:13px;border:1px solid #b7c1cf;border-radius:6px;background:#fff;color:#20374e;font:inherit;min-height:48px}
.booking-field input:focus,.booking-field select:focus,.booking-field textarea:focus{outline:2px solid #a97624;outline-offset:2px}
.booking-field textarea{min-height:150px;resize:vertical}
.booking-wide{grid-column:1/-1}
.booking-hint{font-size:.95rem;line-height:1.6;color:#526275}
.booking-status{font-size:1rem;line-height:1.7;color:#205d38}
button.quote-button{font:inherit;font-weight:600;cursor:pointer}
@media(max-width:620px){.booking-grid{grid-template-columns:1fr;gap:18px}}

.language-switch{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:8px;padding:14px 0 0}.language-switch a{padding:8px 13px;border:1px solid #6c532e;border-radius:4px;color:#d6c8ad;text-decoration:none;font-size:.875rem}.language-switch a:hover,.language-switch a[aria-current=true]{background:#e0b455;color:#080807;border-color:#e0b455}.page-head h1,.hero h1{overflow-wrap:break-word}@media(max-width:620px){.language-switch{justify-content:flex-start}.page-head h1{font-size:clamp(2.4rem,9vw,4.5rem)}}
