/* Homepage only: original footage, three brand colors, compact editorial rhythm. */
body.hc-ui.hc-world.hc-home-refined {
    --hc-bg:#080808; --hc-surface:#141414; --hc-raised:#222;
    --hc-accent:#f2c94c; --hc-text:#fff; --hc-muted:#bdbdbd; --hc-ink:#080808;
    --flight-paper:#fff; --flight-amber:#f2c94c;
    background:#080808; color:#fff;
}
body.hc-ui.hc-home-refined .hc-site-header { background:#080808f5; }
.hc-home-refined .flight-sticky { background:radial-gradient(ellipse at 73% 44%,#ffffff08,transparent 60%),#080808; }
.hc-home-refined .flight-topline,.hc-home-refined .flight-description,.hc-home-refined .flight-model-note,
.hc-home-refined .flight-intro p:not(.flight-kicker),.hc-home-refined .flight-belief>div p { color:#bdbdbd; }
body.hc-ui.hc-home-refined .flight-chapters button { color:#bdbdbd; }
.hc-home-refined .flight-button { color:#080808!important; }
.hc-home-refined .flight-button:hover { background:#fff; border-color:#fff; }
.hc-home-refined .hive-loom { background:#080808; height:54px; }
.hc-home-refined .hive-loom span { color:#fff; }
.hc-home-refined .hive-loom b { color:var(--flight-amber); }
body.hc-ui.hc-home-refined .hc-explore-dialog { background:var(--flight-amber); }
body.hc-ui.hc-home-refined .hc-explore-toggle:hover { background:var(--flight-amber); color:#080808; }
/* The original footage is a decorative, control-free background. */
.home-opening { position:relative; isolation:isolate; min-height:560px; height:calc(100svh - var(--flight-header,82px)); display:flex; align-items:center; padding:55px 6.4vw 65px; overflow:hidden; background:#080808; }
.home-background-video { position:absolute; inset:0; width:100%; height:100%; max-width:none; object-fit:cover; object-position:center; border:0; border-radius:0; }
.home-opening::after { content:''; position:absolute; inset:0; z-index:1; background:linear-gradient(90deg,#000b 0%,#0005 55%,#0002 100%),linear-gradient(0deg,#0005,transparent 35%); pointer-events:none; }
.home-opening-copy { position:relative; z-index:2; pointer-events:none; max-width:800px; }
.home-opening-copy a { pointer-events:auto; }
.hc-home-refined .home-opening h1 { font-size:clamp(4rem,8.5vw,8.5rem); line-height:.96; font-weight:450; letter-spacing:-.065em; margin:25px 0; color:#fff; }
.home-opening h1 em { color:var(--flight-amber); font-family:Georgia,serif; font-style:italic; }
.home-opening-copy>p:not(.flight-kicker) { color:#fff; font-size:clamp(13px,1.1vw,16px); line-height:1.65; margin-bottom:26px; }
.home-opening .flight-link { color:#fff; border-color:#ffffff80; }
.home-opening-next { position:absolute; right:6.4vw; bottom:65px; z-index:2; display:flex; align-items:center; gap:22px; min-height:44px; font:10px var(--hc-mono); letter-spacing:.12em; color:#fff; }
.home-opening-next span { font-size:24px; color:var(--flight-amber); }
#flight-story { scroll-margin-top:var(--flight-header,82px); }
body.hc-ui.hc-home-refined.flight-ready:not(.flight-reduced) .flight-story { height:280svh; }
body.hc-ui.hc-home-refined .flight-section { padding-block:clamp(40px,4.5vw,64px); }
.hc-home-refined .flight-intro>div { margin-top:20px; gap:30px; }
.hc-home-refined .flight-service { color:#080808; background:var(--flight-amber); border-radius:0; }
.hc-home-refined .flight-service-content>div { max-width:none; }
.hc-home-refined .flight-main .flight-service h2 { font-size:clamp(3rem,6.1vw,6rem); }
.hc-home-refined .flight-service-power { background:var(--flight-amber); }
.hc-home-refined .flight-service :is(.flight-kicker,h2 em,figcaption),
.hc-home-refined .flight-service p:not(.flight-kicker) { color:#080808; }
.hc-home-refined .flight-service-heading,.hc-home-refined .flight-service-foot { border-color:#0003; }
.hc-home-refined .flight-service .flight-button-dark { background:#080808; border-color:#080808; color:#fff!important; }
.hc-home-refined .flight-service .flight-button-dark:hover { background:#fff; color:#080808!important; }
.hc-home-refined .flight-project-heading { margin-bottom:26px; gap:18px; }
body.hc-ui.hc-home-refined .flight-project { padding-bottom:24px; }
.hc-home-refined .flight-project-image { background:#080808; }
.hc-home-refined .flight-project-label { inset:auto 20px 20px; padding:12px 18px; background:#fffffff0; color:#080808; border-top:1px solid #0003; }
.hc-home-refined .flight-circle-arrow { border-color:#080808; }
.hc-home-refined .flight-project-image>img { filter:grayscale(1) brightness(.95); }
.hc-home-refined .flight-project-image:hover>img { filter:grayscale(1) brightness(1); }
.hc-home-refined .flight-hex-curtain i { background:#080808; opacity:.42; }
.hc-home-refined [data-word-reveal] span { color:#858585; }
.hc-home-refined [data-word-reveal] span.is-lit { color:#fff; }
body.hc-ui.hc-home-refined .flight-belief { padding-block:48px; }
.hc-home-refined .flight-belief h2 { margin:22px 0 26px; font-size:clamp(2.8rem,5.3vw,5.8rem); }
.hc-home-refined .flight-belief>div { margin-left:30%; gap:24px; }
/* A direct, recognisable contact action, with no orbit or rotating label. */
body.hc-ui.hc-home-refined .flight-contact { padding-block:44px; background:var(--flight-amber); color:#080808; gap:28px; }
.hc-home-refined .flight-contact .flight-kicker,.hc-home-refined .flight-contact h2 em { color:#080808; }
.hc-home-refined .flight-contact h2 { margin-top:18px; font-size:clamp(3rem,6vw,6rem); }
.hc-home-refined .flight-contact p:not(.flight-kicker) { margin-top:20px; font-size:14px; line-height:1.6; color:#080808; }
.hc-home-refined .home-contact-button { display:inline-flex; justify-content:space-between; align-items:center; gap:55px; min-height:64px; padding:16px 24px; border:1px solid #080808; background:#080808; color:#fff; font-size:17px; font-weight:500; transition:background .2s,color .2s; }
.home-contact-button>span:last-child { color:var(--flight-amber); font-size:28px; font-weight:400; }
.hc-home-refined .home-contact-button:hover { background:#fff; color:#080808; }
.home-contact-button:hover>span:last-child { color:#080808; }
/* Static homepage footer, including hover states. */
body.hc-ui.hc-home-refined .hc-site-footer { margin-top:0; background:#080808; color:#fff; }
.hc-home-refined .hc-site-footer * { animation:none!important; }

body.hc-ui.hc-home-refined .hc-footer-inner { padding-block:28px; }
body.hc-ui.hc-home-refined .hc-footer-bottom { padding-block:16px; }
@media(min-width:901px) { body.hc-ui.hc-home-refined.flight-ready:not(.flight-reduced) .flight-services { height:190svh; } }
@media(max-width:900px) {
    body.hc-ui.hc-home-refined.flight-ready:not(.flight-reduced) .flight-story { height:250svh; }
    .hc-home-refined .flight-belief>div { margin-left:0; }
    .home-opening-next { right:6vw; }
}
@media(max-width:600px) {
    .home-opening { min-height:560px; padding:42px 6vw 65px; }
    .home-background-video { object-position:60% center; }
    .home-opening::after { background:linear-gradient(90deg,#0009,#0003),linear-gradient(0deg,#0006,transparent 50%); }
    .hc-home-refined .home-opening h1 { font-size:clamp(3.2rem,14vw,5.3rem); margin:24px 0; }
    .home-opening .flight-kicker { font-size:8px; letter-spacing:.1em; }
    .home-opening-next { left:6vw; right:auto; bottom:62px; font-size:9px; }
    .hc-home-refined .flight-service-content { gap:22px; padding-block:24px; }
    .hc-home-refined .flight-main .flight-service h2 { margin-block:16px; font-size:clamp(2.3rem,11vw,4rem); }
    .hc-home-refined .flight-project-heading .flight-link { margin-top:12px; }
    .hc-home-refined .flight-belief h2 { font-size:12vw; }
    body.hc-ui.hc-home-refined .flight-contact { grid-template-columns:1fr; gap:24px; padding-block:36px; }
    .hc-home-refined .flight-contact h2 { font-size:13vw; }
    .hc-home-refined .home-contact-button { justify-self:start; min-height:58px; width:100%; }
}
@media(prefers-reduced-motion:reduce) { .hc-home-refined [data-word-reveal] span { color:#fff; } }
/* Clear labels and tactile, rectangular actions across the homepage. */
.home-background-video { pointer-events:none; }
.home-background-video::-webkit-media-controls { display:none!important; }
.hc-home-refined .flight-service-heading>span:last-child { font:10px/1.4 var(--hc-mono); }
.hc-home-refined .flight-service-content { padding-block:32px; }
.hc-home-refined .flight-service-heading { padding-bottom:20px; }
body.hc-home-refined .flight-bottomline { justify-content:flex-start; }
body.hc-home-refined .flight-belief h2 { margin-top:0; }
.hc-home-refined :is(.flight-button,.home-action,.home-contact-button),
.hc-home-refined .home-subscribe button {
    --action-bg:#f2c94c; --action-text:#080808; --action-hover:#fff; --action-hover-text:#080808;
    position:relative; isolation:isolate; overflow:hidden; display:inline-flex; justify-content:space-between; align-items:center;
    min-height:54px; padding:15px 20px; gap:28px; border:1px solid var(--action-bg); border-radius:0;
    background:var(--action-bg); color:var(--action-text)!important; font:600 12px/1.35 var(--hc-font,Arial,sans-serif);
    text-decoration:none; white-space:normal; box-shadow:none;
    transition:color .25s,border-color .25s,box-shadow .3s,transform .35s cubic-bezier(.2,.75,.2,1);
}
.hc-home-refined :is(.home-action-light) { --action-bg:#fff; --action-text:#080808; --action-hover:#f2c94c; }
.hc-home-refined :is(.flight-button-dark,.home-contact-button),.hc-home-refined .home-subscribe button { --action-bg:#080808; --action-text:#fff; --action-hover:#fff; --action-hover-text:#080808; }
.hc-home-refined :is(.flight-button,.home-action,.home-contact-button)::before,
.hc-home-refined .home-subscribe button::before {
    content:''; position:absolute; z-index:-1; inset:-1px; background:var(--action-hover);
    transform:translateX(-105%); transition:transform .4s cubic-bezier(.2,.75,.2,1);
}
.hc-home-refined :is(.flight-button,.home-action,.home-contact-button)>span:last-child,
.hc-home-refined .home-subscribe button>span:last-child { font-size:22px; line-height:1; color:inherit; transition:transform .4s cubic-bezier(.2,.75,.2,1); }
.hc-home-refined :is(.flight-button,.home-action,.home-contact-button):is(:hover,:focus-visible),
.hc-home-refined .home-subscribe button:is(:hover,:focus-visible) { background:var(--action-bg); color:var(--action-hover-text)!important; border-color:var(--action-hover); transform:translateY(-3px); box-shadow:0 6px 0 #ffffff25; }
.hc-home-refined :is(.flight-button,.home-action,.home-contact-button):is(:hover,:focus-visible)::before,
.hc-home-refined .home-subscribe button:is(:hover,:focus-visible)::before { transform:translateX(0); }
.hc-home-refined :is(.flight-button,.home-action,.home-contact-button):is(:hover,:focus-visible)>span:last-child,
.hc-home-refined .home-subscribe button:is(:hover,:focus-visible)>span:last-child { transform:translate(3px,-3px); }
.hc-home-refined :is(.flight-button,.home-action,.home-contact-button):active { transform:translateY(0); box-shadow:none; }
.hc-home-refined :is(.flight-button,.home-action,.home-contact-button):focus-visible,
.hc-home-refined .home-subscribe :is(input,button):focus-visible { outline:2px solid #fff; outline-offset:2px; box-shadow:0 0 0 4px #080808; }
.hc-home-refined .flight-main :is(.flight-button,.home-action,.home-contact-button) { animation:home-button-float 4.8s ease-in-out infinite; animation-play-state:paused; }
.hc-home-refined .flight-main .home-button-visible { animation-play-state:running; }
.hc-home-refined .flight-main :is(.flight-button,.home-action,.home-contact-button):is(:hover,:focus-visible) { animation-play-state:paused; }
@keyframes home-button-float { 0%,100% { translate:0 0; } 50% { translate:0 -3px; } }
.hc-home-refined .flight-actions { gap:14px; }
.hc-home-refined .flight-project-heading .home-action { align-self:end; }
.hc-home-refined .flight-belief>div .home-action { flex:none; align-self:end; }
.hc-home-refined .flight-project-label { inset:auto 0 0; padding:20px 24px; background:#080808; color:#fff; border:0; align-items:center; gap:20px; }
.flight-project-label strong { display:block; font:500 22px/1.2 var(--hc-font,Arial,sans-serif); letter-spacing:-.03em; }
.hc-home-refined .flight-project-label small { color:#bdbdbd; font-size:10px; letter-spacing:.04em; }
.home-project-action { flex:none; min-height:52px; padding:13px 18px; display:flex; align-items:center; gap:25px; background:#f2c94c; color:#080808; font:600 12px/1.3 var(--hc-font,Arial,sans-serif); letter-spacing:0; transition:background .3s,transform .3s; }
.home-project-action>span { font-size:23px; transition:transform .35s; }
.flight-project-image:is(:hover,:focus-visible) .home-project-action { background:#fff; transform:translateY(-2px); }
.flight-project-image:is(:hover,:focus-visible) .home-project-action>span { transform:translate(3px,-3px); }
/* A stationary footer: newsletter, social identities, then useful destinations. */
body.hc-ui.hc-home-refined .home-footer { padding:48px 6.4vw 0; border-top:1px solid #ffffff26; }
.home-footer-top { display:grid; grid-template-columns:1fr 1fr; gap:7vw; padding-bottom:38px; border-bottom:1px solid #ffffff26; }
.home-footer-brand>.hc-footer-brand { display:inline-block; }
.home-footer-brand>p { margin:14px 0 22px; color:#bdbdbd; font-size:15px; }
.home-socials { display:flex; align-items:stretch; gap:8px; flex-wrap:wrap; }
.home-socials>a,.home-social-pending { display:flex; align-items:center; gap:9px; border:1px solid #ffffff30; padding:10px 12px; min-height:50px; color:#fff; text-decoration:none; font-size:11px; }
.home-socials svg { width:20px; height:20px; flex:none; }
.home-socials a { transition:background .25s,color .25s,border-color .25s; }
.home-socials a:hover { color:#080808; background:#f2c94c; border-color:#f2c94c; }
.home-socials .home-social-pending { color:#999; border-style:dashed; }
.home-social-pending small { display:block; margin-top:2px; color:#999; font-size:9px; }
body.hc-home-refined .home-subscribe h2 { font-size:clamp(2rem,3vw,3rem); letter-spacing:-.05em; margin:0 0 10px; }
.home-subscribe>p { margin:0 0 20px; color:#bdbdbd; font-size:14px; }
.home-subscribe label { display:block; font-size:11px; margin-bottom:8px; color:#fff; }
.home-subscribe-row { display:flex; gap:0; border:1px solid #f2c94c; background:#141414; }
body.hc-ui .home-subscribe input { min-width:0; flex:1; width:100%; padding:16px; color:#fff; background:transparent; border:0; border-radius:0; box-shadow:none; font-size:14px; }
.home-subscribe input::placeholder { color:#999; }
body.hc-ui.hc-home-refined .home-subscribe button { --action-bg:#f2c94c; --action-text:#080808; min-height:58px; flex:none; }
.home-subscribe button:disabled { cursor:wait; opacity:.7; }
.home-subscribe #home-subscribe-note { margin:10px 0 0; color:#aaa; font-size:11px; line-height:1.6; }
.home-subscribe #home-subscribe-note a { color:#fff; text-decoration:underline; text-underline-offset:3px; }
.home-subscribe-status { margin:14px 0 0; padding:12px; border-left:2px solid #f2c94c; color:#fff; font-size:13px; background:#ffffff08; }
.home-footer-navigation { display:grid; grid-template-columns:1fr 1fr 1fr 1.1fr; gap:30px; padding:32px 0; }
body.hc-home-refined .home-footer-navigation h2 { color:#fff; font-size:13px; margin:0 0 14px; letter-spacing:0; }
.home-footer-navigation nav>a { display:flex; align-items:center; justify-content:space-between; gap:10px; max-width:180px; min-height:38px; padding:6px 0; color:#aaa; font-size:13px; text-decoration:none; border-bottom:1px solid transparent; transition:color .2s,border-color .2s; }
.home-footer-navigation nav>a>span { color:#f2c94c; opacity:0; transition:opacity .2s,transform .3s; }
.home-footer-navigation nav>a:is(:hover,:focus-visible) { color:#fff; border-color:#f2c94c; }
.home-footer-navigation nav>a:is(:hover,:focus-visible)>span { opacity:1; transform:translate(2px,-2px); }
.home-footer-signoff { align-self:center; justify-self:end; font-size:clamp(45px,6vw,82px); line-height:.86; font-weight:600; letter-spacing:-.07em; color:#fff; }
.home-footer-dot { color:#f2c94c; }
.home-footer-legal { display:flex; justify-content:space-between; align-items:center; flex-wrap:wrap; gap:14px 25px; padding:20px 0; border-top:1px solid #ffffff26; color:#aaa; font-size:11px; }
.home-footer-legal nav { display:flex; flex-wrap:wrap; gap:16px; }
.home-footer-legal a { color:#aaa; text-decoration:none; min-height:32px; display:inline-flex; align-items:center; }
.home-footer-legal a:hover { color:#f2c94c; }
@media(max-width:900px) {
    .home-footer-top { grid-template-columns:1fr; gap:30px; }
    .home-footer-navigation { grid-template-columns:repeat(3,1fr); }
    .home-footer-signoff { display:none; }
}
@media(max-width:600px) {
    .hc-home-refined :is(.flight-button,.home-action,.home-contact-button) { padding:12px 15px; min-height:50px; gap:18px; font-size:11px; }
    .hc-home-refined .flight-actions { gap:10px; }
    .hc-home-refined .flight-copy .flight-actions { align-items:stretch; }
    .hc-home-refined .flight-project-heading .home-action { margin-top:20px; }
    .hc-home-refined .flight-belief>div .home-action { flex:initial; }
    .hc-home-refined .flight-project-label { padding:14px; gap:10px; }
    .flight-project-label strong { font-size:19px; }
    .hc-home-refined .flight-project-label small { font-size:8px; letter-spacing:0; }
    .home-project-action { padding:12px; min-height:48px; gap:12px; font-size:10px; }
    body.hc-ui.hc-home-refined .home-footer { padding:32px 6vw 0; }
    .home-footer-navigation { grid-template-columns:1fr 1fr; gap:25px; padding-block:26px; }
    .home-footer-navigation nav:last-of-type { grid-column:1/-1; display:grid; grid-template-columns:1fr 1fr; column-gap:25px; }
    .home-footer-navigation nav:last-of-type h2 { grid-column:1/-1; }
    .home-footer-top { padding-bottom:26px; }
    .home-socials { gap:6px; }
    .home-socials>a,.home-social-pending { padding:8px; gap:6px; font-size:10px; }
    .home-socials svg { width:17px; height:17px; }
    .home-subscribe-row { flex-wrap:wrap; }
    body.hc-ui .home-subscribe input { flex-basis:100%; min-height:54px; }
    body.hc-ui.hc-home-refined .home-subscribe button { width:100%; min-height:50px; }
}
@media(prefers-reduced-motion:reduce) { .hc-home-refined .flight-main :is(.flight-button,.home-action,.home-contact-button) { animation:none; }.hc-home-refined :is(.flight-button,.home-action,.home-contact-button,.home-project-action),.hc-home-refined .home-subscribe button { transition:none; } }
