/* airform-palette.css */
/* Layer 1: Air Form core. Load this before every component stylesheet.
   Component rules consume these tokens; project colours never redefine them. */
@layer core, components, projects;
@layer core {
  :root {
    --af-action: #2E2E2E;
    --af-action-hover: #454D52;
    --af-white: #FFFFFF;
    --af-ink: #2E2E2E;
    --af-body: #41484C;
    --af-text: #5C6469;
    --af-meta: #5C6469;
    --af-bg: #F7F7F5;
    --af-bg-soft: #F0F3F4;
    --af-border: #D9DFE2;
    --af-blue: #A8C7DC;
    --af-blue-soft: #E8F0F5;
    --af-blue-hover: #405E72;
    --af-ink-hover: #41484C;
    --af-toolbar: #F7F7F5;
    --af-shadow: 0 4px 18px rgb(17 21 22 / .045);
    --af-hero-wash: linear-gradient(90deg, rgb(255 255 255 / .82) 0%, rgb(255 255 255 / .72) 30%, rgb(255 255 255 / .20) 52%, transparent 74%);
    --airform-header-height: 80px;
    --airform-ink: var(--af-ink);
    --airform-blue: var(--af-blue);
    --airform-blue-soft: var(--af-blue-soft);
    --airform-sans: "Helvetica Neue", Helvetica, Arial, sans-serif;
    --airform-serif: "Iowan Old Style", Baskerville, Georgia, serif;
  }
  html { color-scheme: light; background: var(--af-bg); }
  body { margin: 0; background: var(--af-bg); color: var(--af-ink); }
  @media (max-width: 760px) {
    :root {
      --airform-header-height: 68px;
      --af-hero-wash: linear-gradient(180deg, rgb(255 255 255 / .86) 0%, rgb(255 255 255 / .78) 48%, rgb(255 255 255 / .30) 72%, transparent 90%);
    }
  }
}

/* concept-demos.css */
@layer projects{
:where(:is(.theme-morrow,.theme-offbeat)) *:not(:where(.airvo-header,.airvo-header *,.site-footer,.site-footer *)){box-sizing:border-box;}
html:has(body:is(.theme-morrow,.theme-offbeat)){scroll-behavior:smooth;}
body:where(:is(.theme-morrow,.theme-offbeat)):not(:where(.airvo-header,.airvo-header *,.site-footer,.site-footer *)){margin:0;font:16px/1.6 Arial,sans-serif;background:var(--paper);color:var(--ink);}
:where(:is(.theme-morrow,.theme-offbeat)) a:not(:where(.airvo-header,.airvo-header *,.site-footer,.site-footer *)){color:inherit;text-decoration:none;}
:where(:is(.theme-morrow,.theme-offbeat)) button:not(:where(.airvo-header,.airvo-header *,.site-footer,.site-footer *)),:where(:is(.theme-morrow,.theme-offbeat)) input:not(:where(.airvo-header,.airvo-header *,.site-footer,.site-footer *)),:where(:is(.theme-morrow,.theme-offbeat)) select:not(:where(.airvo-header,.airvo-header *,.site-footer,.site-footer *)){font:inherit;}
:where(:is(.theme-morrow,.theme-offbeat)) button:not(:where(.airvo-header,.airvo-header *,.site-footer,.site-footer *)){cursor:pointer;}
:where(:is(.theme-morrow,.theme-offbeat)) button:focus-visible:not(:where(.airvo-header,.airvo-header *,.site-footer,.site-footer *)),:where(:is(.theme-morrow,.theme-offbeat)) a:focus-visible:not(:where(.airvo-header,.airvo-header *,.site-footer,.site-footer *)),:where(:is(.theme-morrow,.theme-offbeat)) input:focus-visible:not(:where(.airvo-header,.airvo-header *,.site-footer,.site-footer *)),:where(:is(.theme-morrow,.theme-offbeat)) select:focus-visible:not(:where(.airvo-header,.airvo-header *,.site-footer,.site-footer *)){outline:3px solid currentColor;outline-offset:4px;}
:where(:is(.theme-morrow,.theme-offbeat)) .demo-banner:not(:where(.airvo-header,.airvo-header *,.site-footer,.site-footer *)){display:flex;justify-content:space-between;gap:20px;padding:10px 5%;font-size:12px;background:var(--ink);color:var(--paper);}
:where(:is(.theme-morrow,.theme-offbeat)) .demo-banner a:not(:where(.airvo-header,.airvo-header *,.site-footer,.site-footer *)){text-decoration:underline;white-space:nowrap;}
:where(:is(.theme-morrow,.theme-offbeat)) header:not(:where(.airvo-header,.airvo-header *,.site-footer,.site-footer *)){display:flex;justify-content:space-between;gap:20px;align-items:center;padding:25px 5%;border-bottom:1px solid color-mix(in srgb,var(--ink) 25%,transparent);}
:where(:is(.theme-morrow,.theme-offbeat)) header nav:not(:where(.airvo-header,.airvo-header *,.site-footer,.site-footer *)){display:flex;gap:25px;align-items:center;font-size:14px;}
:where(:is(.theme-morrow,.theme-offbeat)) .morrow-logo:not(:where(.airvo-header,.airvo-header *,.site-footer,.site-footer *)){font-size:42px;letter-spacing:-3px;font-weight:500;line-height:1;}
:where(:is(.theme-morrow,.theme-offbeat)) .morrow-logo span:not(:where(.airvo-header,.airvo-header *,.site-footer,.site-footer *)){font-size:12px;vertical-align:top;letter-spacing:0;}
:where(:is(.theme-morrow,.theme-offbeat)) .offbeat-logo:not(:where(.airvo-header,.airvo-header *,.site-footer,.site-footer *)){font-size:34px;font-weight:900;letter-spacing:-2px;}
:where(:is(.theme-morrow,.theme-offbeat)) .demo-button:not(:where(.airvo-header,.airvo-header *,.site-footer,.site-footer *)){display:inline-block;padding:13px 20px;border:1px solid var(--ink);background:var(--ink);color:var(--paper);border-radius:5px;font-weight:500;font-size:14px;line-height:1.5;min-height:46px;}
:where(:is(.theme-morrow,.theme-offbeat)) .demo-button:hover:not(:where(.airvo-header,.airvo-header *,.site-footer,.site-footer *)){filter:brightness(.9);}
:where(:is(.theme-morrow,.theme-offbeat)) .demo-hero:not(:where(.airvo-header,.airvo-header *,.site-footer,.site-footer *)){display:grid;grid-template-columns:1fr 1fr;align-items:center;}
:where(:is(.theme-morrow,.theme-offbeat)) .demo-hero>div:not(:where(.airvo-header,.airvo-header *,.site-footer,.site-footer *)){padding:60px 10%;}
:where(:is(.theme-morrow,.theme-offbeat)) .demo-hero img:not(:where(.airvo-header,.airvo-header *,.site-footer,.site-footer *)){width:100%;height:auto;display:block;}
:where(:is(.theme-morrow,.theme-offbeat)) .eyebrow:not(:where(.airvo-header,.airvo-header *,.site-footer,.site-footer *)){font-size:11px;letter-spacing:1.6px;}
:where(:is(.theme-morrow,.theme-offbeat)) h1:not(:where(.airvo-header,.airvo-header *,.site-footer,.site-footer *)){font-size:clamp(52px,6.5vw,100px);letter-spacing:-5px;line-height:1;margin:25px 0;}
:where(:is(.theme-morrow,.theme-offbeat)) h2:not(:where(.airvo-header,.airvo-header *,.site-footer,.site-footer *)){font-size:clamp(32px,4vw,60px);line-height:1.07;letter-spacing:-2px;margin:20px 0;}
:where(:is(.theme-morrow,.theme-offbeat)) p:not(:where(.airvo-header,.airvo-header *,.site-footer,.site-footer *)){line-height:1.7;}
:where(:is(.theme-morrow,.theme-offbeat)) .demo-hero p:not(:where(.airvo-header,.airvo-header *,.site-footer,.site-footer *)){font-size:18px;margin:25px 0;}
:where(:is(.theme-morrow,.theme-offbeat)) .demo-section:not(:where(.airvo-header,.airvo-header *,.site-footer,.site-footer *)){padding:70px 6%;scroll-margin-top:20px;}
:where(:is(.theme-morrow,.theme-offbeat)) .section-heading:not(:where(.airvo-header,.airvo-header *,.site-footer,.site-footer *)){display:flex;gap:50px;justify-content:space-between;align-items:end;margin-bottom:30px;}
:where(:is(.theme-morrow,.theme-offbeat)) .section-heading>p:not(:where(.airvo-header,.airvo-header *,.site-footer,.site-footer *)){max-width:420px;}
:where(:is(.theme-morrow,.theme-offbeat)) .identity-workbench:not(:where(.airvo-header,.airvo-header *,.site-footer,.site-footer *)){display:grid;grid-template-columns:.8fr 1.2fr;gap:60px;border-top:1px solid var(--project-art-23);padding-top:35px;}
:where(:is(.theme-morrow,.theme-offbeat)) .identity-controls fieldset:not(:where(.airvo-header,.airvo-header *,.site-footer,.site-footer *)){border:0;padding:0;margin:0 0 30px;}
:where(:is(.theme-morrow,.theme-offbeat)) .identity-controls legend:not(:where(.airvo-header,.airvo-header *,.site-footer,.site-footer *)),:where(:is(.theme-morrow,.theme-offbeat)) .identity-controls>label:not(:where(.airvo-header,.airvo-header *,.site-footer,.site-footer *)){font-size:14px;font-weight:bold;margin-bottom:15px;}
:where(:is(.theme-morrow,.theme-offbeat)) .palette-options:not(:where(.airvo-header,.airvo-header *,.site-footer,.site-footer *)),:where(:is(.theme-morrow,.theme-offbeat)) .application-options:not(:where(.airvo-header,.airvo-header *,.site-footer,.site-footer *)){display:flex;flex-wrap:wrap;gap:10px;}
:where(:is(.theme-morrow,.theme-offbeat)) .palette-options button:not(:where(.airvo-header,.airvo-header *,.site-footer,.site-footer *)),:where(:is(.theme-morrow,.theme-offbeat)) .application-options button:not(:where(.airvo-header,.airvo-header *,.site-footer,.site-footer *)){background:transparent;color:inherit;border:1px solid var(--project-art-24);border-radius:22px;padding:10px 14px;font-size:13px;display:flex;align-items:center;gap:8px;}
:where(:is(.theme-morrow,.theme-offbeat)) .palette-options button[aria-pressed=true]:not(:where(.airvo-header,.airvo-header *,.site-footer,.site-footer *)),:where(:is(.theme-morrow,.theme-offbeat)) .application-options button[aria-pressed=true]:not(:where(.airvo-header,.airvo-header *,.site-footer,.site-footer *)){background:var(--project-art-19);color:var(--project-art-5);}
:where(:is(.theme-morrow,.theme-offbeat)) .palette-options button span:not(:where(.airvo-header,.airvo-header *,.site-footer,.site-footer *)){width:18px;height:18px;border-radius:50%;border:1px solid var(--project-art-25);}
:where(:is(.theme-morrow,.theme-offbeat)) .identity-controls input:not(:where(.airvo-header,.airvo-header *,.site-footer,.site-footer *)){width:100%;padding:13px;border:1px solid var(--project-art-24);border-radius:4px;background:var(--project-art-26);color:inherit;margin-top:12px;}
:where(:is(.theme-morrow,.theme-offbeat)) .identity-controls #message-help:not(:where(.airvo-header,.airvo-header *,.site-footer,.site-footer *)),:where(:is(.theme-morrow,.theme-offbeat)) .fine-print:not(:where(.airvo-header,.airvo-header *,.site-footer,.site-footer *)){font-size:12px;}
:where(:is(.theme-morrow,.theme-offbeat)) .text-button:not(:where(.airvo-header,.airvo-header *,.site-footer,.site-footer *)){padding:10px 0;background:transparent;color:inherit;border:0;border-bottom:1px solid;font-size:14px;}
:where(:is(.theme-morrow,.theme-offbeat)) .identity-preview-wrap:not(:where(.airvo-header,.airvo-header *,.site-footer,.site-footer *)){text-align:center;min-width:0;}
:where(:is(.theme-morrow,.theme-offbeat)) .identity-preview:not(:where(.airvo-header,.airvo-header *,.site-footer,.site-footer *)){background:var(--card-bg);color:var(--card-ink);min-height:340px;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:35px;gap:20px;box-shadow:0 18px 40px var(--project-art-27);transition:background .2s,color .2s;margin:auto;max-width:100%;overflow-wrap:anywhere;}
:where(:is(.theme-morrow,.theme-offbeat)) .identity-preview .morrow-logo:not(:where(.airvo-header,.airvo-header *,.site-footer,.site-footer *)){font-size:clamp(42px,6vw,75px);font-weight:500;}
:where(:is(.theme-morrow,.theme-offbeat)) .sun-mark:not(:where(.airvo-header,.airvo-header *,.site-footer,.site-footer *)){display:block;width:72px;height:72px;border-radius:50%;background:var(--card-accent);clip-path:polygon(0 0,100% 0,100% 58%,0 58%,0 66%,100% 66%,100% 74%,0 74%,0 82%,100% 82%,100% 90%,0 90%,0 96%,100% 96%,100% 100%,0 100%);}
:where(:is(.theme-morrow,.theme-offbeat)) .identity-preview p:not(:where(.airvo-header,.airvo-header *,.site-footer,.site-footer *)){font-size:20px;margin:0;max-width:330px;}
:where(:is(.theme-morrow,.theme-offbeat)) .identity-preview small:not(:where(.airvo-header,.airvo-header *,.site-footer,.site-footer *)){font-size:10px;letter-spacing:2px;}
:where(:is(.theme-morrow,.theme-offbeat)) .identity-preview.poster:not(:where(.airvo-header,.airvo-header *,.site-footer,.site-footer *)){width:340px;min-height:430px;justify-content:space-around;}
:where(:is(.theme-morrow,.theme-offbeat)) .identity-preview.poster p:not(:where(.airvo-header,.airvo-header *,.site-footer,.site-footer *)){font-size:30px;font-weight:bold;line-height:1.15;}
:where(:is(.theme-morrow,.theme-offbeat)) #identity-status:not(:where(.airvo-header,.airvo-header *,.site-footer,.site-footer *)){font-size:13px;}
:where(:is(.theme-morrow,.theme-offbeat)) .brand-story:not(:where(.airvo-header,.airvo-header *,.site-footer,.site-footer *)){text-align:center;background:var(--project-art-28);}
:where(:is(.theme-morrow,.theme-offbeat)) .brand-story p:not(:where(.airvo-header,.airvo-header *,.site-footer,.site-footer *)),:where(:is(.theme-morrow,.theme-offbeat)) .event-note p:not(:where(.airvo-header,.airvo-header *,.site-footer,.site-footer *)){max-width:680px;margin:25px auto;}
.theme-offbeat h1:not(:where(.airvo-header,.airvo-header *,.site-footer,.site-footer *)),.theme-offbeat h2:not(:where(.airvo-header,.airvo-header *,.site-footer,.site-footer *)){text-transform:uppercase;font-weight:900;}
.theme-offbeat .demo-hero:not(:where(.airvo-header,.airvo-header *,.site-footer,.site-footer *)){background:var(--project-art-22);color:var(--project-art-21);}
.theme-offbeat .demo-hero .demo-button:not(:where(.airvo-header,.airvo-header *,.site-footer,.site-footer *)){background:var(--project-art-21);color:var(--project-art-22);border-color:var(--project-art-21);}
.theme-offbeat .demo-hero h1:not(:where(.airvo-header,.airvo-header *,.site-footer,.site-footer *)){font-size:clamp(52px,6.4vw,100px);}
:where(:is(.theme-morrow,.theme-offbeat)) .stage-filters:not(:where(.airvo-header,.airvo-header *,.site-footer,.site-footer *)){display:flex;gap:12px;flex-wrap:wrap;}
:where(:is(.theme-morrow,.theme-offbeat)) .stage-filters button:not(:where(.airvo-header,.airvo-header *,.site-footer,.site-footer *)){background:transparent;border:1px solid var(--project-art-29);color:var(--project-art-22);padding:10px 18px;border-radius:4px;font-size:14px;}
:where(:is(.theme-morrow,.theme-offbeat)) .stage-filters button[aria-pressed=true]:not(:where(.airvo-header,.airvo-header *,.site-footer,.site-footer *)){background:var(--project-art-22);color:var(--project-art-21);}
:where(:is(.theme-morrow,.theme-offbeat)) #lineup-status:not(:where(.airvo-header,.airvo-header *,.site-footer,.site-footer *)){font-size:13px;}
:where(:is(.theme-morrow,.theme-offbeat)) .lineup-grid:not(:where(.airvo-header,.airvo-header *,.site-footer,.site-footer *)){display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;}
:where(:is(.theme-morrow,.theme-offbeat)) .act-card:not(:where(.airvo-header,.airvo-header *,.site-footer,.site-footer *)){border:1px solid var(--project-art-30);padding:25px;background:var(--project-art-31);}
:where(:is(.theme-morrow,.theme-offbeat)) .act-card small:not(:where(.airvo-header,.airvo-header *,.site-footer,.site-footer *)){font-size:11px;letter-spacing:1px;}
:where(:is(.theme-morrow,.theme-offbeat)) .act-card h3:not(:where(.airvo-header,.airvo-header *,.site-footer,.site-footer *)){font-size:30px;letter-spacing:-1px;margin:25px 0 5px;line-height:1.15;}
:where(:is(.theme-morrow,.theme-offbeat)) .act-card p:not(:where(.airvo-header,.airvo-header *,.site-footer,.site-footer *)){color:var(--project-art-32);font-size:14px;}
:where(:is(.theme-morrow,.theme-offbeat)) .act-card button:not(:where(.airvo-header,.airvo-header *,.site-footer,.site-footer *)){background:transparent;border:1px solid var(--project-art-22);color:var(--project-art-22);padding:10px 15px;border-radius:3px;font-size:13px;}
:where(:is(.theme-morrow,.theme-offbeat)) .act-card button[aria-pressed=true]:not(:where(.airvo-header,.airvo-header *,.site-footer,.site-footer *)){background:var(--project-art-22);color:var(--project-art-21);}
:where(:is(.theme-morrow,.theme-offbeat)) .plan-section:not(:where(.airvo-header,.airvo-header *,.site-footer,.site-footer *)){background:var(--project-art-33);}
:where(:is(.theme-morrow,.theme-offbeat)) .plan-row:not(:where(.airvo-header,.airvo-header *,.site-footer,.site-footer *)){display:flex;justify-content:space-between;gap:20px;align-items:center;border-top:1px solid var(--project-art-30);padding:20px 0;}
:where(:is(.theme-morrow,.theme-offbeat)) .plan-row h3:not(:where(.airvo-header,.airvo-header *,.site-footer,.site-footer *)){margin:0;font-size:22px;}
:where(:is(.theme-morrow,.theme-offbeat)) .plan-row p:not(:where(.airvo-header,.airvo-header *,.site-footer,.site-footer *)){margin:5px 0;font-size:14px;color:var(--project-art-32);}
:where(:is(.theme-morrow,.theme-offbeat)) .plan-row button:not(:where(.airvo-header,.airvo-header *,.site-footer,.site-footer *)){background:none;border:0;border-bottom:1px solid;color:inherit;font-size:14px;padding:10px;}
:where(:is(.theme-morrow,.theme-offbeat)) .event-note:not(:where(.airvo-header,.airvo-header *,.site-footer,.site-footer *)){text-align:center;}
:where(:is(.theme-morrow,.theme-offbeat)) footer:not(:where(.airvo-header,.airvo-header *,.site-footer,.site-footer *)){display:flex;justify-content:space-between;align-items:center;gap:25px;padding:35px 5%;border-top:1px solid color-mix(in srgb,var(--ink) 25%,transparent);font-size:13px;}
:where(:is(.theme-morrow,.theme-offbeat)) dialog:not(:where(.airvo-header,.airvo-header *,.site-footer,.site-footer *)){background:var(--project-art-22);color:var(--project-art-21);border:0;border-radius:5px;width:520px;max-width:calc(100% - 30px);max-height:90svh;overflow:auto;padding:30px;}
:where(:is(.theme-morrow,.theme-offbeat)) dialog:not(:where(.airvo-header,.airvo-header *,.site-footer,.site-footer *))::backdrop{background:var(--project-art-34);backdrop-filter:blur(3px);}
:where(:is(.theme-morrow,.theme-offbeat)) dialog h2:not(:where(.airvo-header,.airvo-header *,.site-footer,.site-footer *)){font-size:40px;}
:where(:is(.theme-morrow,.theme-offbeat)) .dialog-close:not(:where(.airvo-header,.airvo-header *,.site-footer,.site-footer *)){display:block;margin-left:auto;background:none;border:1px solid var(--project-art-21);border-radius:50%;width:42px;height:42px;font-size:25px;}
:where(:is(.theme-morrow,.theme-offbeat)) #ticket-form:not(:where(.airvo-header,.airvo-header *,.site-footer,.site-footer *)){display:grid;gap:12px;}
:where(:is(.theme-morrow,.theme-offbeat)) #ticket-form label:not(:where(.airvo-header,.airvo-header *,.site-footer,.site-footer *)){font-size:14px;}
:where(:is(.theme-morrow,.theme-offbeat)) #ticket-form select:not(:where(.airvo-header,.airvo-header *,.site-footer,.site-footer *)){padding:12px;background:var(--project-art-35);border:1px solid var(--project-art-21);border-radius:3px;color:var(--project-art-21);}
:where(:is(.theme-morrow,.theme-offbeat)) #ticket-form .demo-button:not(:where(.airvo-header,.airvo-header *,.site-footer,.site-footer *)){background:var(--project-art-21);color:var(--project-art-22);}
:where(:is(.theme-morrow,.theme-offbeat)) .ticket-total:not(:where(.airvo-header,.airvo-header *,.site-footer,.site-footer *)){display:flex;justify-content:space-between;gap:20px;}
:where(:is(.theme-morrow,.theme-offbeat)) #ticket-result:not(:where(.airvo-header,.airvo-header *,.site-footer,.site-footer *)){font-size:14px;}
:where(:is(.theme-morrow,.theme-offbeat)) [hidden]:not(:where(.airvo-header,.airvo-header *,.site-footer,.site-footer *)){display:none!important;}
@media (max-width:800px){
:where(:is(.theme-morrow,.theme-offbeat)) .identity-workbench:not(:where(.airvo-header,.airvo-header *,.site-footer,.site-footer *)){gap:30px;}
:where(:is(.theme-morrow,.theme-offbeat)) .lineup-grid:not(:where(.airvo-header,.airvo-header *,.site-footer,.site-footer *)){grid-template-columns:1fr 1fr;}
:where(:is(.theme-morrow,.theme-offbeat)) header nav:not(:where(.airvo-header,.airvo-header *,.site-footer,.site-footer *)){gap:15px;}
:where(:is(.theme-morrow,.theme-offbeat)) .demo-hero>div:not(:where(.airvo-header,.airvo-header *,.site-footer,.site-footer *)){padding:45px 8%;}
:where(:is(.theme-morrow,.theme-offbeat)) .section-heading:not(:where(.airvo-header,.airvo-header *,.site-footer,.site-footer *)){gap:25px;}
}
@media (max-width:600px){
:where(:is(.theme-morrow,.theme-offbeat)) .demo-banner:not(:where(.airvo-header,.airvo-header *,.site-footer,.site-footer *)){font-size:10px;gap:10px;}
:where(:is(.theme-morrow,.theme-offbeat)) header:not(:where(.airvo-header,.airvo-header *,.site-footer,.site-footer *)){padding:20px 5%;align-items:start;}
:where(:is(.theme-morrow,.theme-offbeat)) header nav:not(:where(.airvo-header,.airvo-header *,.site-footer,.site-footer *)){font-size:12px;flex-wrap:wrap;justify-content:flex-end;gap:12px;}
:where(:is(.theme-morrow,.theme-offbeat)) header .demo-button:not(:where(.airvo-header,.airvo-header *,.site-footer,.site-footer *)){font-size:11px;padding:9px 12px;min-height:36px;}
:where(:is(.theme-morrow,.theme-offbeat)) .morrow-logo:not(:where(.airvo-header,.airvo-header *,.site-footer,.site-footer *)){font-size:34px;}
:where(:is(.theme-morrow,.theme-offbeat)) .offbeat-logo:not(:where(.airvo-header,.airvo-header *,.site-footer,.site-footer *)){font-size:28px;}
:where(:is(.theme-morrow,.theme-offbeat)) .demo-hero:not(:where(.airvo-header,.airvo-header *,.site-footer,.site-footer *)),:where(:is(.theme-morrow,.theme-offbeat)) .identity-workbench:not(:where(.airvo-header,.airvo-header *,.site-footer,.site-footer *)){grid-template-columns:1fr;}
:where(:is(.theme-morrow,.theme-offbeat)) .demo-hero>div:not(:where(.airvo-header,.airvo-header *,.site-footer,.site-footer *)){padding:45px 6%;}
:where(:is(.theme-morrow,.theme-offbeat)) .demo-hero img:not(:where(.airvo-header,.airvo-header *,.site-footer,.site-footer *)){max-height:400px;object-fit:cover;}
:where(:is(.theme-morrow,.theme-offbeat)) h1:not(:where(.airvo-header,.airvo-header *,.site-footer,.site-footer *)){font-size:64px;letter-spacing:-3px;}
:where(:is(.theme-morrow,.theme-offbeat)) .demo-section:not(:where(.airvo-header,.airvo-header *,.site-footer,.site-footer *)){padding:50px 6%;}
:where(:is(.theme-morrow,.theme-offbeat)) .section-heading:not(:where(.airvo-header,.airvo-header *,.site-footer,.site-footer *)){display:block;}
:where(:is(.theme-morrow,.theme-offbeat)) .section-heading>p:not(:where(.airvo-header,.airvo-header *,.site-footer,.site-footer *)){max-width:none;}
:where(:is(.theme-morrow,.theme-offbeat)) .identity-workbench:not(:where(.airvo-header,.airvo-header *,.site-footer,.site-footer *)){gap:35px;}
:where(:is(.theme-morrow,.theme-offbeat)) .identity-preview:not(:where(.airvo-header,.airvo-header *,.site-footer,.site-footer *)){padding:25px;}
:where(:is(.theme-morrow,.theme-offbeat)) .lineup-grid:not(:where(.airvo-header,.airvo-header *,.site-footer,.site-footer *)){grid-template-columns:1fr;}
:where(:is(.theme-morrow,.theme-offbeat)) .act-card:not(:where(.airvo-header,.airvo-header *,.site-footer,.site-footer *)){padding:22px;}
:where(:is(.theme-morrow,.theme-offbeat)) .act-card h3:not(:where(.airvo-header,.airvo-header *,.site-footer,.site-footer *)){margin-top:18px;}
:where(:is(.theme-morrow,.theme-offbeat)) .plan-row:not(:where(.airvo-header,.airvo-header *,.site-footer,.site-footer *)){gap:12px;}
:where(:is(.theme-morrow,.theme-offbeat)) .plan-row h3:not(:where(.airvo-header,.airvo-header *,.site-footer,.site-footer *)){font-size:20px;}
:where(:is(.theme-morrow,.theme-offbeat)) footer:not(:where(.airvo-header,.airvo-header *,.site-footer,.site-footer *)){flex-wrap:wrap;}
.theme-offbeat .demo-hero h1:not(:where(.airvo-header,.airvo-header *,.site-footer,.site-footer *)){font-size:clamp(44px,11.5vw,72px);}
}
@media (prefers-reduced-motion:reduce){
html:has(body:is(.theme-morrow,.theme-offbeat)){scroll-behavior:auto;}
:where(:is(.theme-morrow,.theme-offbeat)) *:not(:where(.airvo-header,.airvo-header *,.site-footer,.site-footer *)){transition:none!important;}
}
:where(:is(.theme-morrow,.theme-offbeat)) .demo-depth-grid:not(:where(.airvo-header,.airvo-header *,.site-footer,.site-footer *)){display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border-block:1px solid color-mix(in srgb,var(--ink) 25%,transparent);}
:where(:is(.theme-morrow,.theme-offbeat)) .demo-depth-grid article:not(:where(.airvo-header,.airvo-header *,.site-footer,.site-footer *)){padding:25px 22px;border-right:1px solid color-mix(in srgb,var(--ink) 25%,transparent);}
:where(:is(.theme-morrow,.theme-offbeat)) .demo-depth-grid article:first-child:not(:where(.airvo-header,.airvo-header *,.site-footer,.site-footer *)){padding-left:0;}
:where(:is(.theme-morrow,.theme-offbeat)) .demo-depth-grid article:last-child:not(:where(.airvo-header,.airvo-header *,.site-footer,.site-footer *)){border-right:0;}
:where(:is(.theme-morrow,.theme-offbeat)) .demo-depth-grid span:not(:where(.airvo-header,.airvo-header *,.site-footer,.site-footer *)){font-size:11px;letter-spacing:1.2px;}
:where(:is(.theme-morrow,.theme-offbeat)) .demo-depth-grid h3:not(:where(.airvo-header,.airvo-header *,.site-footer,.site-footer *)){font-size:24px;line-height:1.2;margin:42px 0 12px;}
:where(:is(.theme-morrow,.theme-offbeat)) .demo-depth-grid p:not(:where(.airvo-header,.airvo-header *,.site-footer,.site-footer *)){font-size:14px;}
@media (max-width:600px){
:where(:is(.theme-morrow,.theme-offbeat)) .demo-depth-grid:not(:where(.airvo-header,.airvo-header *,.site-footer,.site-footer *)){grid-template-columns:1fr;}
:where(:is(.theme-morrow,.theme-offbeat)) .demo-depth-grid article:not(:where(.airvo-header,.airvo-header *,.site-footer,.site-footer *)),:where(:is(.theme-morrow,.theme-offbeat)) .demo-depth-grid article:first-child:not(:where(.airvo-header,.airvo-header *,.site-footer,.site-footer *)){padding:20px 0;border-right:0;border-bottom:1px solid color-mix(in srgb,var(--ink) 25%,transparent);}
:where(:is(.theme-morrow,.theme-offbeat)) .demo-depth-grid article:last-child:not(:where(.airvo-header,.airvo-header *,.site-footer,.site-footer *)){border-bottom:0;}
}
:where(:is(.theme-morrow,.theme-offbeat)) .identity-preview.label:not(:where(.airvo-header,.airvo-header *,.site-footer,.site-footer *)){width:280px;min-height:360px;padding:38px 20px 28px;gap:16px;border-radius:80px 80px 10px 10px;justify-content:space-between;}
:where(:is(.theme-morrow,.theme-offbeat)) .identity-preview.label .morrow-logo:not(:where(.airvo-header,.airvo-header *,.site-footer,.site-footer *)){padding-left:0;font-size:clamp(40px,4.3vw,56px);line-height:1;white-space:nowrap;}
:where(:is(.theme-morrow,.theme-offbeat)) .identity-preview.label .morrow-logo:not(:where(.airvo-header,.airvo-header *,.site-footer,.site-footer *)):before{left:50%;top:-43px;width:44px;height:30px;translate:-50% 0;}
:where(:is(.theme-morrow,.theme-offbeat)) .identity-preview.label p:not(:where(.airvo-header,.airvo-header *,.site-footer,.site-footer *)){max-width:210px;font-size:20px;line-height:1.55;}
:where(:is(.theme-morrow,.theme-offbeat)) .identity-preview.label small:not(:where(.airvo-header,.airvo-header *,.site-footer,.site-footer *)){font-size:9px;letter-spacing:1.7px;white-space:nowrap;}
:where(:is(.theme-morrow,.theme-offbeat)) .identity-preview.label p:not(:where(.airvo-header,.airvo-header *,.site-footer,.site-footer *)){max-height:62px;overflow:hidden;}
}

/* demo-alignment.css */
@layer projects{
.project-theme:not(:where(.airvo-header,.airvo-header *,.site-footer,.site-footer *)){--demo-rule:color-mix(in srgb,currentColor 18%,transparent);}
body:where(.project-theme):not(:where(.airvo-header,.airvo-header *,.site-footer,.site-footer *)){text-rendering:optimizeLegibility;}
:where(.project-theme) .demo-banner:not(:where(.airvo-header,.airvo-header *,.site-footer,.site-footer *)){position:relative;z-index:40;letter-spacing:.35px;}
body:where(.project-theme)>header:not(:where(.airvo-header,.airvo-header *,.site-footer,.site-footer *)){position:sticky;top:0;z-index:35;background:color-mix(in srgb,var(--paper,var(--project-art-1)) 92%,transparent);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);}
:where(.project-theme) .forme-logo:not(:where(.airvo-header,.airvo-header *,.site-footer,.site-footer *)),:where(.project-theme) .morrow-logo:not(:where(.airvo-header,.airvo-header *,.site-footer,.site-footer *)),:where(.project-theme) .offbeat-logo:not(:where(.airvo-header,.airvo-header *,.site-footer,.site-footer *)),:where(.project-theme) .logo:not(:where(.airvo-header,.airvo-header *,.site-footer,.site-footer *)){text-wrap:nowrap;}
body:where(.project-theme)>header nav a:not(:where(.airvo-header,.airvo-header *,.site-footer,.site-footer *)){position:relative;}
body:where(.project-theme)>header nav a:not(.button):not(:where(.airvo-header,.airvo-header *,.site-footer,.site-footer *)):after{content:"";position:absolute;left:0;right:100%;bottom:-5px;height:1px;background:currentColor;transition:right .2s ease;}
body:where(.project-theme)>header nav a:not(.button):hover:not(:where(.airvo-header,.airvo-header *,.site-footer,.site-footer *)):after,body:where(.project-theme)>header nav a:not(.button):focus-visible:not(:where(.airvo-header,.airvo-header *,.site-footer,.site-footer *)):after{right:0;}
:where(.project-theme) .forme-hero:not(:where(.airvo-header,.airvo-header *,.site-footer,.site-footer *)),:where(.project-theme) .demo-hero:not(:where(.airvo-header,.airvo-header *,.site-footer,.site-footer *)),:where(.project-theme) .hero:not(:where(.airvo-header,.airvo-header *,.site-footer,.site-footer *)){min-height:min(760px,calc(100svh - 120px));border-bottom:1px solid var(--demo-rule);}
:where(.project-theme) .forme-hero>img:not(:where(.airvo-header,.airvo-header *,.site-footer,.site-footer *)),:where(.project-theme) .demo-hero>img:not(:where(.airvo-header,.airvo-header *,.site-footer,.site-footer *)),:where(.project-theme) .hero>.hero-visual:not(:where(.airvo-header,.airvo-header *,.site-footer,.site-footer *)){display:block;width:100%;height:100%;min-height:620px;object-fit:cover;object-position:center;}
.theme-harbour .hero>.hero-visual:not(:where(.airvo-header,.airvo-header *,.site-footer,.site-footer *)){object-position:56% center;}
:where(.project-theme) .forme-hero>div:not(:where(.airvo-header,.airvo-header *,.site-footer,.site-footer *)),:where(.project-theme) .demo-hero>div:not(:where(.airvo-header,.airvo-header *,.site-footer,.site-footer *)),:where(.project-theme) .hero-copy:not(:where(.airvo-header,.airvo-header *,.site-footer,.site-footer *)){position:relative;z-index:1;}
:where(.project-theme) .forme-hero .forme-button:not(:where(.airvo-header,.airvo-header *,.site-footer,.site-footer *)),:where(.project-theme) .demo-hero .demo-button:not(:where(.airvo-header,.airvo-header *,.site-footer,.site-footer *)),:where(.project-theme) .hero .button:not(:where(.airvo-header,.airvo-header *,.site-footer,.site-footer *)){margin-top:8px;}
:where(.project-theme) .collection:not(:where(.airvo-header,.airvo-header *,.site-footer,.site-footer *)),:where(.project-theme) .demo-section:not(:where(.airvo-header,.airvo-header *,.site-footer,.site-footer *)),:where(.project-theme) .section:not(:where(.airvo-header,.airvo-header *,.site-footer,.site-footer *)),:where(.project-theme) .forme-depth:not(:where(.airvo-header,.airvo-header *,.site-footer,.site-footer *)){border-bottom:1px solid var(--demo-rule);}
:where(.project-theme) .product-card:not(:where(.airvo-header,.airvo-header *,.site-footer,.site-footer *)),:where(.project-theme) .identity-preview:not(:where(.airvo-header,.airvo-header *,.site-footer,.site-footer *)),:where(.project-theme) .act-card:not(:where(.airvo-header,.airvo-header *,.site-footer,.site-footer *)),:where(.project-theme) .panel:not(:where(.airvo-header,.airvo-header *,.site-footer,.site-footer *)),:where(.project-theme) .feature-card:not(:where(.airvo-header,.airvo-header *,.site-footer,.site-footer *)),:where(.project-theme) .resource:not(:where(.airvo-header,.airvo-header *,.site-footer,.site-footer *)){transition:transform .22s ease,box-shadow .22s ease,border-color .22s ease;}
:where(.project-theme) .product-card:hover:not(:where(.airvo-header,.airvo-header *,.site-footer,.site-footer *)),:where(.project-theme) .identity-preview:hover:not(:where(.airvo-header,.airvo-header *,.site-footer,.site-footer *)),:where(.project-theme) .act-card:hover:not(:where(.airvo-header,.airvo-header *,.site-footer,.site-footer *)),:where(.project-theme) .panel:hover:not(:where(.airvo-header,.airvo-header *,.site-footer,.site-footer *)),:where(.project-theme) .feature-card:hover:not(:where(.airvo-header,.airvo-header *,.site-footer,.site-footer *)),:where(.project-theme) .resource:hover:not(:where(.airvo-header,.airvo-header *,.site-footer,.site-footer *)){transform:translateY(-3px);box-shadow:0 18px 44px color-mix(in srgb,currentColor 10%,transparent);}
:where(.project-theme) .section-heading>p:not(:where(.airvo-header,.airvo-header *,.site-footer,.site-footer *)),:where(.project-theme) .section-title>p:not(:where(.airvo-header,.airvo-header *,.site-footer,.site-footer *)){font-size:16px;line-height:1.7;}
:where(.project-theme) .demo-depth-grid article:not(:where(.airvo-header,.airvo-header *,.site-footer,.site-footer *)),:where(.project-theme) .forme-depth-grid article:not(:where(.airvo-header,.airvo-header *,.site-footer,.site-footer *)),:where(.project-theme) .feature-card:not(:where(.airvo-header,.airvo-header *,.site-footer,.site-footer *)){position:relative;}
:where(.project-theme) .demo-depth-grid article:not(:where(.airvo-header,.airvo-header *,.site-footer,.site-footer *)):before,:where(.project-theme) .forme-depth-grid article:not(:where(.airvo-header,.airvo-header *,.site-footer,.site-footer *)):before,:where(.project-theme) .feature-card:not(:where(.airvo-header,.airvo-header *,.site-footer,.site-footer *)):before{content:"";position:absolute;top:-1px;left:0;width:34px;height:2px;background:currentColor;}
.theme-harbour .logo:not(:where(.airvo-header,.airvo-header *,.site-footer,.site-footer *)){font:500 25px/1 Georgia,serif;letter-spacing:2px;text-transform:uppercase;}
.theme-harbour .hero h1:not(:where(.airvo-header,.airvo-header *,.site-footer,.site-footer *)){font-family:Georgia,serif;font-weight:400;letter-spacing:-3.5px;}
.theme-meridian .logo:not(:where(.airvo-header,.airvo-header *,.site-footer,.site-footer *)){font-weight:500;letter-spacing:4px;}
.theme-meridian .hero h1:not(:where(.airvo-header,.airvo-header *,.site-footer,.site-footer *)){font-weight:300;letter-spacing:-4px;}
.theme-meridian .hero h1 em:not(:where(.airvo-header,.airvo-header *,.site-footer,.site-footer *)){font-style:normal;color:var(--project-art-49);}
.theme-keystone .logo:not(:where(.airvo-header,.airvo-header *,.site-footer,.site-footer *)){font-weight:500;letter-spacing:5px;}
.theme-keystone .hero h1:not(:where(.airvo-header,.airvo-header *,.site-footer,.site-footer *)){font-family:Georgia,serif;font-weight:400;letter-spacing:-3px;}
.theme-morrow .morrow-logo:not(:where(.airvo-header,.airvo-header *,.site-footer,.site-footer *)){position:relative;padding-left:38px;}
.theme-morrow .morrow-logo:not(:where(.airvo-header,.airvo-header *,.site-footer,.site-footer *)):before{content:"";position:absolute;left:0;top:50%;width:27px;height:18px;translate:0 -50%;border-radius:50% 50% 5px 5px;background:var(--project-art-67);box-shadow:inset 0 -3px var(--project-art-19),inset 0 -7px var(--project-art-67),inset 0 -9px var(--project-art-19);}
.theme-offbeat .offbeat-logo:not(:where(.airvo-header,.airvo-header *,.site-footer,.site-footer *)){font-family:Impact,"Arial Narrow",sans-serif;letter-spacing:-1px;}
@media (max-width:760px){
body:where(.project-theme)>header:not(:where(.airvo-header,.airvo-header *,.site-footer,.site-footer *)){position:relative;}
:where(.project-theme) .forme-hero:not(:where(.airvo-header,.airvo-header *,.site-footer,.site-footer *)),:where(.project-theme) .demo-hero:not(:where(.airvo-header,.airvo-header *,.site-footer,.site-footer *)),:where(.project-theme) .hero:not(:where(.airvo-header,.airvo-header *,.site-footer,.site-footer *)){min-height:0;}
:where(.project-theme) .forme-hero>img:not(:where(.airvo-header,.airvo-header *,.site-footer,.site-footer *)),:where(.project-theme) .demo-hero>img:not(:where(.airvo-header,.airvo-header *,.site-footer,.site-footer *)),:where(.project-theme) .hero>.hero-visual:not(:where(.airvo-header,.airvo-header *,.site-footer,.site-footer *)){min-height:360px;max-height:500px;}
:where(.project-theme) .product-card:hover:not(:where(.airvo-header,.airvo-header *,.site-footer,.site-footer *)),:where(.project-theme) .identity-preview:hover:not(:where(.airvo-header,.airvo-header *,.site-footer,.site-footer *)),:where(.project-theme) .act-card:hover:not(:where(.airvo-header,.airvo-header *,.site-footer,.site-footer *)),:where(.project-theme) .panel:hover:not(:where(.airvo-header,.airvo-header *,.site-footer,.site-footer *)),:where(.project-theme) .feature-card:hover:not(:where(.airvo-header,.airvo-header *,.site-footer,.site-footer *)),:where(.project-theme) .resource:hover:not(:where(.airvo-header,.airvo-header *,.site-footer,.site-footer *)){transform:none;}
.theme-morrow .morrow-logo:not(:where(.airvo-header,.airvo-header *,.site-footer,.site-footer *)){padding-left:31px;}
.theme-morrow .morrow-logo:not(:where(.airvo-header,.airvo-header *,.site-footer,.site-footer *)):before{width:23px;height:15px;}
.theme-keystone .logo:not(:where(.airvo-header,.airvo-header *,.site-footer,.site-footer *)),.theme-meridian .logo:not(:where(.airvo-header,.airvo-header *,.site-footer,.site-footer *)){letter-spacing:2px;}
}
@media (prefers-reduced-motion:reduce){
body:where(.project-theme)>header nav a:not(:where(.airvo-header,.airvo-header *,.site-footer,.site-footer *)):after,:where(.project-theme) .product-card:not(:where(.airvo-header,.airvo-header *,.site-footer,.site-footer *)),:where(.project-theme) .identity-preview:not(:where(.airvo-header,.airvo-header *,.site-footer,.site-footer *)),:where(.project-theme) .act-card:not(:where(.airvo-header,.airvo-header *,.site-footer,.site-footer *)),:where(.project-theme) .panel:not(:where(.airvo-header,.airvo-header *,.site-footer,.site-footer *)),:where(.project-theme) .feature-card:not(:where(.airvo-header,.airvo-header *,.site-footer,.site-footer *)),:where(.project-theme) .resource:not(:where(.airvo-header,.airvo-header *,.site-footer,.site-footer *)){transition:none;}
}
}

/* site-shell.css */
@layer components{
body{padding-top:0!important;}
img[src*="airvo-horizontal-"],img[src*="airvo-wordmark"],img[src*="airvo-mark-"],img[src*="airform-wordmark"],img[src*="airform-mark"]{background:transparent;mix-blend-mode:multiply;}
body>footer.site-footer>a:first-child,.personal-mark,.screen-view-bar{background:transparent;}
[hidden]{display:none!important;}
body>footer.site-footer{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:32px 5%;border-top:1px solid var(--af-border);background:var(--af-bg-soft);color:var(--af-text);font:13px/1.4 Arial,sans-serif;}
body>footer.site-footer>a:first-child{display:block;width:130px;max-width:130px;flex:0 0 130px;overflow:visible;}
body>footer.site-footer>a:first-child img{display:block;width:130px!important;max-width:130px!important;height:auto!important;transform:none!important;object-fit:contain;}
body>footer.site-footer>a{color:inherit;text-decoration:none;}
.detail-page .case-studies{display:block;}
.work-page #work-heading,.contact-page #contact-title{font:400 clamp(38px,5vw,72px)/1.08 var(--airform-serif);letter-spacing:-2px;margin:20px 0;color:var(--af-ink);}
.contact-page #contact{display:grid;grid-template-columns:minmax(230px,.8fr) minmax(0,1.2fr);gap:50px;margin:0;padding:55px 5%;align-items:start;}
.contact-page .business-form{min-width:0;}
.contact-page .business-form input[type=checkbox]{width:18px;height:18px;min-height:18px;padding:0;flex:0 0 18px;}
.contact-page .business-form .consultation-details input,.contact-page .business-form .consultation-details select{width:100%;min-height:44px;box-sizing:border-box;}
@media (max-width:800px){
.contact-page #contact{grid-template-columns:1fr;gap:24px;}
body>footer.site-footer{align-items:flex-start;flex-direction:column;}
}
body.home-page .mountain-hero{isolation:isolate;}
.hero-services{position:absolute;z-index:1;top:29%;right:clamp(28px,7vw,112px);display:grid;gap:7px;text-align:left;font:500 9px/1.2 Arial,Helvetica,sans-serif;letter-spacing:.24em;}
.hero-location{position:absolute;z-index:1;right:clamp(28px,5vw,84px);bottom:42px;padding-left:13px;border-left:1px solid var(--af-ink);color:var(--af-ink);font:500 8px/1.65 Arial,Helvetica,sans-serif;letter-spacing:.22em;}
@media (max-width:700px){
.hero-services{top:auto;right:auto;bottom:76px;left:7%;grid-template-columns:1fr 1fr;font-size:8px;gap:7px 16px;}
.hero-location{right:7%;bottom:28px;}
}
body.home-page .hero-services{position:static;display:grid;gap:7px;margin-top:27px;font:500 10px/1.2 Arial,Helvetica,sans-serif;letter-spacing:.24em;text-align:left;}
body.home-page .hero-location{right:clamp(28px,5vw,84px);bottom:42px;}
body.home-page .video-device .screen,body.home-page .video-device .screen-view-content{overscroll-behavior:auto!important;}
body.home-page .video-scroll-stage{overflow:visible;}
@media (max-width:700px){
html{scroll-padding-top:82px;}
body.home-page .hero-services{grid-template-columns:1fr 1fr;gap:8px 18px;margin-top:22px;font-size:9px;}
body.home-page #explore>.brief{top:94px!important;}
}
html{scroll-padding-top:var(--airform-header-height);}
body.home-page main>section{scroll-margin-top:var(--airform-header-height);}
body.home-page .video-scroll-stage{isolation:isolate;}
body.home-page #explore>.brief{z-index:5!important;}
body.home-page .video-device{z-index:2;}
@media (max-width:700px){
body.home-page #explore>.brief{top:106px!important;}
}
body.home-page #explore>.brief{top:122px!important;}
@media (max-width:700px){
body.home-page #explore>.brief{top:96px!important;}
}
body.home-page .brief-cta{padding:34px 5.5% 42px;border-bottom:1px solid var(--af-border);}
body.home-page .brief-cta .brief{display:flex;align-items:center;justify-content:center;gap:16px;width:min(700px,100%);min-height:68px;margin:0 auto;padding:15px 22px;border:1px solid var(--af-border);border-radius:999px;background:var(--af-bg-soft);box-shadow:0 12px 30px color-mix(in srgb,var(--af-ink) 5.098%,transparent);cursor:pointer;transition:background .2s ease,border-color .2s ease,transform .2s ease;}
body.home-page .brief-cta .brief:hover,body.home-page .brief-cta .brief:focus-visible{background:var(--af-bg-soft);border-color:var(--af-ink);transform:translateY(-2px);}
body.home-page .brief-cta .brief-label{flex:0 0 auto;margin:0;border:0;padding:0;color:var(--af-text);font-size:10px;letter-spacing:.16em;}
body.home-page .brief-cta .brief p{min-width:0;margin:0;color:var(--af-body);font-size:15px;text-align:center;}
body.home-page .brief-cta .caret{color:var(--af-text);}
body.home-page .brief-cta-arrow{font-size:19px;color:var(--af-text);}
@media (max-width:700px){
body.home-page .brief-cta{padding:22px 6% 28px;}
body.home-page .brief-cta .brief{gap:10px;min-height:60px;padding:13px 16px;border-radius:16px;}
body.home-page .brief-cta .brief-label{font-size:8px;}
body.home-page .brief-cta .brief p{font-size:13px;text-align:left;}
.brief-cta-arrow{font-size:16px!important;}
}
body.home-page #explore>.brief-cta{position:absolute;z-index:4;top:78.5%;left:50%;width:min(480px,42vw);margin:0;padding:0;translate:-50% 0;border:0;opacity:0;pointer-events:none;transition:opacity .32s ease;}
body.video-handoff #explore>.brief-cta{opacity:1;pointer-events:auto;}
body.home-page #explore>.brief-cta .brief{min-height:46px;padding:9px 16px;box-shadow:0 10px 24px rgb(17 21 22 / .14);}
.hero-up-arrow{display:inline-flex;white-space:nowrap;}
.hero-up-arrow svg{display:block;width:100%;height:100%;fill:none;stroke:currentColor;stroke-linecap:square;stroke-linejoin:miter;}
@media (max-width:700px){
body.home-page #explore>.brief-cta{top:74%;width:min(82%,330px);}
body.home-page #explore>.brief-cta .brief{min-height:44px;padding:8px 10px;}
}
.hero-up-arrow{width:.86em;height:.86em;margin-left:.08em;vertical-align:-.06em;}
.hero-up-arrow svg{stroke-width:3.15;}
body.home-page .brief-cta{padding:28px 5.5% 34px!important;background:var(--af-bg-soft);}
body.home-page .brief-cta .brief{width:min(760px,100%)!important;min-height:62px!important;}
body.home-page .brief-cta .brief p{font-size:14px!important;}
.menu-toggle{display:none;}
@media (max-width:760px){
.menu-toggle{display:inline-flex;align-items:center;gap:8px;min-height:36px;padding:7px 0;border:0;background:transparent;color:var(--af-ink);font:600 10px/1 Arial,Helvetica,sans-serif;letter-spacing:.14em;text-transform:uppercase;}
.menu-toggle i,.menu-toggle i:before{display:block;width:15px;height:1px;background:currentColor;content:"";transition:transform .2s ease;}
.menu-toggle i:before{transform:translateY(-5px);}
body.home-page .hero-services{bottom:54px!important;gap:6px 16px!important;}
body.home-page .brief-cta .brief{align-items:flex-start;border-radius:14px!important;}
}
.brief-panel{z-index:1200!important;}
.brief-modal-shade{z-index:1190!important;}
body.home-page #explore>.brief-cta{display:block!important;width:min(560px,48vw)!important;margin:0!important;padding:0!important;background:transparent;border:0!important;}
body.home-page #explore>.brief-cta .brief{display:grid!important;grid-template-columns:max-content minmax(0,1fr) max-content!important;align-items:center!important;gap:14px!important;width:100%!important;min-width:0!important;min-height:52px!important;margin:0!important;padding:10px 18px!important;box-sizing:border-box!important;border-radius:999px!important;background:color-mix(in srgb,var(--af-bg-soft) 94.902%,transparent);}
body.home-page #explore>.brief-cta .brief-label{white-space:nowrap!important;}
body.home-page #explore>.brief-cta .brief p{width:auto!important;min-width:0!important;margin:0!important;font-size:14px!important;line-height:1.25!important;text-align:center!important;overflow-wrap:normal!important;}
body.home-page .home-proof-head{padding-bottom:28px!important;}
body.home-page .home-proof-head h2{max-width:600px!important;}
body.home-page .home-proof-head p{max-width:430px!important;font-size:17px!important;line-height:1.48!important;}
@media (max-width:700px){
body.home-page #explore>.brief-cta{width:min(88%,360px)!important;}
body.home-page #explore>.brief-cta .brief{gap:9px!important;padding:9px 12px!important;}
body.home-page #explore>.brief-cta .brief-label{font-size:8px!important;}
body.home-page #explore>.brief-cta .brief p{font-size:12px!important;text-align:left!important;}
}
body.agency-site{font-family:var(--airform-sans);}
body.agency-site ::selection{background:var(--airform-blue);color:var(--af-bg);}
body.agency-site main a:focus-visible,body.agency-site main button:focus-visible{outline-color:var(--airform-blue);}
body.agency-site .page-hero .eyebrow,body.agency-site .work-intro .eyebrow,body.agency-site .business-heading>.eyebrow,body.agency-site .home-commercial>.eyebrow,body.agency-site .airvo-trust>div>.eyebrow{display:inline-flex;align-items:center;gap:10px;}
body.agency-site .page-hero .eyebrow::before,body.agency-site .work-intro .eyebrow::before,body.agency-site .business-heading>.eyebrow::before,body.agency-site .home-commercial>.eyebrow::before,body.agency-site .airvo-trust>div>.eyebrow::before{content:"";width:24px;height:2px;flex:0 0 24px;background:var(--airform-blue);}
body.agency-site .brand-strip span{position:relative;padding-left:18px;}
body.agency-site .brand-strip span::before{content:"";position:absolute;left:0;top:50%;width:9px;height:2px;background:var(--airform-blue);}
@keyframes airform-crossbar-in{
from{opacity:0;transform:scaleX(.15);}
to{opacity:1;transform:scaleX(1);}
}
@keyframes airform-wordmark-in{
from{opacity:0;transform:translateY(-4px);}
to{opacity:1;transform:none;}
}
}

/* world-class.css */
@layer components{
html{scroll-behavior:smooth;}
body{font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;}
img{max-width:100%;}
.skip-link{position:fixed;left:16px;top:12px;z-index:9999;padding:12px 16px;background:var(--af-ink);color:var(--af-bg);transform:translateY(-180%);transition:transform 0.2s;}
.skip-link:focus{transform:none;}
main:focus{outline:none;}
.home-proof{padding:clamp(80px, 9vw, 130px) 5%;border-top:1px solid var(--af-border);background:var(--af-bg);}
.home-proof-head{display:grid;grid-template-columns:1.05fr 0.95fr;gap:7vw;align-items:end;max-width:1400px;margin:auto;}
.home-proof-head h2{margin:18px 0 0;font:400 clamp(46px, 6vw, 82px)/1 Georgia,
    serif;letter-spacing:-3px;color:var(--af-ink);}
.home-proof-head > p{max-width:580px;margin:0;color:var(--af-body);font-size:18px;line-height:1.65;}
.home-proof-grid{display:grid;grid-template-columns:repeat(3, minmax(0, 1fr));align-items:start;gap:18px;max-width:1400px;margin:56px auto 0;}
.home-proof-grid > a{display:flex;min-width:0;flex-direction:column;overflow:hidden;color:var(--af-ink);text-decoration:none;border:0;background:transparent;transition:transform 0.22s ease,
    border-color 0.22s ease;}
.home-proof-grid > a:hover{transform:translateY(-4px);}
.home-proof-grid img{width:100%;aspect-ratio:3 / 2;object-fit:cover;object-position:center;}
.home-proof-grid span,.home-proof-grid h3,.home-proof-grid p,.home-proof-grid b{margin-inline:22px;}
.home-proof-grid span{margin-top:22px;font-size:10px;letter-spacing:1.15px;color:var(--af-meta);}
.home-proof-grid h3{margin-top:16px;margin-bottom:8px;font:400 30px/1.05 Georgia,
    serif;}
.home-proof-grid p{margin-top:0;color:var(--af-body);font-size:15px;line-height:1.55;}
.home-proof-grid b{margin-top:auto;padding:18px 0 22px;border-top:1px solid var(--af-border);font-size:13px;font-weight:500;}
.home-page .home-proof-grid p,.home-page .home-proof-grid b{display:none;}
.home-page .home-proof-grid > a{position:relative;aspect-ratio:16 / 9;background:var(--af-ink);}
.home-page .home-proof-grid > a::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg, transparent 45%, rgb(17 21 22 / .82));pointer-events:none;}
.home-page .home-proof-grid img{position:absolute;inset:0;height:100%;aspect-ratio:auto;transition:transform 0.45s ease;}
.home-page .home-proof-grid > a:hover img{transform:scale(1.025);}
.home-page .home-proof-grid span,.home-page .home-proof-grid h3{position:absolute;z-index:1;left:22px;right:22px;margin:0;color:var(--af-bg);}
.home-page .home-proof-grid span{bottom:57px;font-size:10px;letter-spacing:1.25px;}
.home-page .home-proof-grid h3{bottom:20px;font:400 27px/1 Georgia, serif;letter-spacing:-0.7px;}
.home-proof-all{display:block;width:max-content;margin:30px auto 0;color:var(--af-ink);font-size:14px;text-decoration:none;border-bottom:1px solid var(--af-border);padding-bottom:5px;}
.work-page .work-intro{max-width:1400px;margin-inline:auto;}
.work-page .case-story h4{font-size:clamp(24px, 2vw, 32px);}
.work-page .case-story p{font-size:16px;line-height:1.7;}
.work-page .concept-label{display:inline-flex;padding:7px 10px;border:1px solid currentColor;border-radius:999px;}
.case-engagement{display:grid;grid-template-columns:repeat(3, minmax(0, 1fr));margin:26px 0 22px;border-top:1px solid var(--af-border);border-bottom:1px solid var(--af-border);}
.case-engagement > div{min-height:132px;padding:22px;border-right:1px solid var(--af-border);}
.case-engagement > div:last-child{border-right:0;}
.case-engagement span,.case-engagement strong{display:block;}
.case-engagement span{margin-bottom:18px;color:var(--af-meta);font-size:10px;letter-spacing:1.2px;text-transform:uppercase;}
.case-engagement strong{font-size:15px;line-height:1.55;font-weight:500;}
.work-page .demo-launch{min-height:46px;}
.site-footer{min-height:104px;}
.site-footer a{min-height:44px;display:inline-flex;align-items:center;}
.legal-note{max-width:720px;color:var(--af-meta);font-size:13px;line-height:1.6;}
.privacy-page .page-content{max-width:900px;}
.privacy-page h2{margin:48px 0 12px;font:400 32px/1.15 Georgia,
    serif;}
.privacy-page p,.privacy-page li{color:var(--af-body);font-size:16px;line-height:1.7;}
.privacy-page ul{padding-left:20px;}
@media (max-width: 900px){
.home-proof-grid{grid-template-columns:1fr 1fr;}
.home-proof-head{grid-template-columns:1fr;gap:24px;}
}
@media (max-width: 620px){
.case-engagement{grid-template-columns:1fr;}
.case-engagement > div{min-height:auto;border-right:0;border-bottom:1px solid var(--af-border);}
.case-engagement > div:last-child{border-bottom:0;}
.home-proof-grid{grid-template-columns:1fr;}
.home-proof-head h2{letter-spacing:-2px;}
.home-proof{padding-inline:6%;}
}
@media (prefers-reduced-motion: reduce){
html{scroll-behavior:auto;}
*,*::before,*::after{animation-duration:0.01ms!important;animation-iteration-count:1!important;transition-duration:0.01ms!important;scroll-behavior:auto!important;}
}
.work-page .work-intro{align-items:start;}
.work-page .work-intro > p{margin-top:40px;}
@media (max-width: 800px){
.work-page .work-intro > p{margin-top:0;}
}
}

/* conversion.css */
@layer components{
.airvo-trust,.case-assurance{max-width:1400px;margin:0 auto;padding:80px clamp(22px,6vw,90px);display:grid;grid-template-columns:1fr 1.15fr;gap:56px;color:var(--af-text);background:var(--af-bg);}
.airvo-trust h2,.case-assurance h2{font:400 clamp(34px,4.2vw,62px)/1.05 Georgia,serif;letter-spacing:-2px;margin:16px 0;}
.airvo-trust>div>p,.case-assurance>p{font-size:17px;line-height:1.7;margin:0;max-width:650px;}
.trust-list{display:grid;gap:0;border-top:1px solid var(--af-border);}
.trust-list article{display:grid;grid-template-columns:52px 1fr;column-gap:16px;padding:20px 0;border-bottom:1px solid var(--af-border);}
.trust-list article>span{grid-row:span 2;font-size:12px;letter-spacing:1.5px;color:var(--af-text);}
.trust-list h3{margin:0;font-size:19px;font-weight:500;}
.trust-list p{grid-column:2;margin:7px 0 0;line-height:1.55;}
.airvo-trust .commercial-actions{grid-column:1/-1;}
.case-assurance{padding-block:50px;margin-top:0;background:var(--af-bg-soft);}
.case-assurance h2{font-size:clamp(28px,3.3vw,46px);}
.qualification-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;grid-column:1/-1;}
.qualification-grid label{font-size:14px;}
.qualification-grid select{display:block;width:100%;min-height:50px;margin-top:7px;padding:10px 12px;border:1px solid var(--af-border);border-radius:3px;background:var(--af-bg);color:var(--af-text);font:16px/1.4 Arial,sans-serif;}
.longform{max-width:1080px;}
.process-timeline{border-top:1px solid var(--af-border);}
.process-timeline article{display:grid;grid-template-columns:170px 1fr 1.2fr;gap:24px;border-bottom:1px solid var(--af-border);padding:30px 0;}
.process-timeline span{font-size:12px;letter-spacing:1.2px;color:var(--af-text);}
.process-timeline h2{font:400 29px/1.15 Georgia,serif;margin:0;}
.process-timeline p{margin:0;line-height:1.7;}
.standards-grid article{min-height:210px;}
@media (max-width:800px){
.airvo-trust,.case-assurance{grid-template-columns:1fr;padding:52px 22px;gap:26px;}
.qualification-grid{grid-template-columns:1fr;}
.process-timeline article{grid-template-columns:1fr;gap:10px;padding:24px 0;}
.process-timeline h2{font-size:27px;}
.standards-grid article{min-height:0;}
}
.service-faq{max-width:900px;margin:56px 0 12px;border-top:1px solid var(--af-border);}
.service-faq details{border-bottom:1px solid var(--af-border);padding:19px 0;}
.service-faq summary{cursor:pointer;font-size:17px;line-height:1.45;}
.service-faq p{max-width:720px;margin:13px 0 3px;line-height:1.7;}
@media (max-width:800px){
.service-faq{margin-top:38px;}
}
}

/* agency-demo.css */
@layer projects{
:where(.project-theme) .demo-project-bar:not(:where(.airvo-header,.airvo-header *,.site-footer,.site-footer *)){display:grid;grid-template-columns:minmax(180px,.8fr) minmax(250px,1fr) auto;align-items:center;gap:28px;padding:18px 5%;border-bottom:1px solid color-mix(in srgb,var(--ink,var(--project-art-68)) 20%,transparent);background:color-mix(in srgb,var(--paper,var(--project-art-5)) 94%,var(--ink,var(--project-art-68)));color:var(--ink,var(--project-art-68));}
:where(.project-theme) .demo-project-intro span:not(:where(.airvo-header,.airvo-header *,.site-footer,.site-footer *)){display:block;font-size:10px;letter-spacing:1.5px;opacity:.72;}
:where(.project-theme) .demo-project-intro strong:not(:where(.airvo-header,.airvo-header *,.site-footer,.site-footer *)){display:block;margin-top:5px;font-size:15px;letter-spacing:.4px;}
:where(.project-theme) .demo-project-signals:not(:where(.airvo-header,.airvo-header *,.site-footer,.site-footer *)){display:flex;flex-wrap:wrap;gap:8px;}
:where(.project-theme) .demo-project-signals span:not(:where(.airvo-header,.airvo-header *,.site-footer,.site-footer *)){padding:6px 9px;border:1px solid color-mix(in srgb,currentColor 22%,transparent);border-radius:999px;font-size:11px;line-height:1.3;}
:where(.project-theme) .demo-project-bar nav:not(:where(.airvo-header,.airvo-header *,.site-footer,.site-footer *)){display:flex;flex-wrap:wrap;justify-content:flex-end;gap:6px;}
:where(.project-theme) .demo-project-bar nav a:not(:where(.airvo-header,.airvo-header *,.site-footer,.site-footer *)){display:inline-flex;align-items:center;gap:8px;padding:9px 10px;border:1px solid transparent;border-radius:4px;font-size:12px;line-height:1.3;}
:where(.project-theme) .demo-project-bar nav a:hover:not(:where(.airvo-header,.airvo-header *,.site-footer,.site-footer *)),:where(.project-theme) .demo-project-bar nav a.is-active:not(:where(.airvo-header,.airvo-header *,.site-footer,.site-footer *)){border-color:color-mix(in srgb,currentColor 38%,transparent);background:color-mix(in srgb,currentColor 9%,transparent);}
:where(.project-theme) .demo-project-bar nav span:not(:where(.airvo-header,.airvo-header *,.site-footer,.site-footer *)){font-size:12px;}
:where(.project-theme) .forme-hero:not(:where(.airvo-header,.airvo-header *,.site-footer,.site-footer *)),:where(.project-theme) .demo-hero:not(:where(.airvo-header,.airvo-header *,.site-footer,.site-footer *)),:where(.project-theme) .hero:not(:where(.airvo-header,.airvo-header *,.site-footer,.site-footer *)){position:relative;}
:where(.project-theme) .forme-hero:not(:where(.airvo-header,.airvo-header *,.site-footer,.site-footer *)):after,:where(.project-theme) .demo-hero:not(:where(.airvo-header,.airvo-header *,.site-footer,.site-footer *)):after,:where(.project-theme) .hero:not(:where(.airvo-header,.airvo-header *,.site-footer,.site-footer *)):after{content:"";position:absolute;inset:auto 5% 0;width:90%;height:1px;background:color-mix(in srgb,currentColor 18%,transparent);}
:where(.project-theme) .demo-banner:not(:where(.airvo-header,.airvo-header *,.site-footer,.site-footer *)){padding-block:11px;}
.theme-morrow .demo-project-bar:not(:where(.airvo-header,.airvo-header *,.site-footer,.site-footer *)){background:var(--project-art-69);}
.theme-offbeat .demo-project-bar:not(:where(.airvo-header,.airvo-header *,.site-footer,.site-footer *)){background:var(--project-art-31);color:var(--project-art-22);}
.theme-harbour .demo-project-bar:not(:where(.airvo-header,.airvo-header *,.site-footer,.site-footer *)){background:var(--project-art-70);}
.theme-meridian .demo-project-bar:not(:where(.airvo-header,.airvo-header *,.site-footer,.site-footer *)){background:var(--project-art-71);color:var(--project-art-72);}
.theme-keystone .demo-project-bar:not(:where(.airvo-header,.airvo-header *,.site-footer,.site-footer *)){background:var(--project-art-73);}
@media (max-width:920px){
:where(.project-theme) .demo-project-bar:not(:where(.airvo-header,.airvo-header *,.site-footer,.site-footer *)){grid-template-columns:1fr;gap:12px;}
:where(.project-theme) .demo-project-bar nav:not(:where(.airvo-header,.airvo-header *,.site-footer,.site-footer *)){justify-content:flex-start;}
}
@media (max-width:580px){
:where(.project-theme) .demo-project-bar:not(:where(.airvo-header,.airvo-header *,.site-footer,.site-footer *)){padding:15px 5%;}
:where(.project-theme) .demo-project-signals:not(:where(.airvo-header,.airvo-header *,.site-footer,.site-footer *)){display:none;}
:where(.project-theme) .demo-project-bar nav:not(:where(.airvo-header,.airvo-header *,.site-footer,.site-footer *)){display:grid;grid-template-columns:1fr 1fr;width:100%;}
:where(.project-theme) .demo-project-bar nav a:not(:where(.airvo-header,.airvo-header *,.site-footer,.site-footer *)){justify-content:space-between;font-size:11px;padding:9px;}
:where(.project-theme) .demo-project-bar nav a:last-child:nth-child(odd):not(:where(.airvo-header,.airvo-header *,.site-footer,.site-footer *)){grid-column:1/-1;}
}
@media (prefers-reduced-motion:reduce){
:where(.project-theme) .demo-project-bar nav a:not(:where(.airvo-header,.airvo-header *,.site-footer,.site-footer *)){transition:none;}
}
}

/* airform-components.css */
/* Layer 2: shared Air Form components. Project content is deliberately excluded. */
@layer components {
  html { scroll-padding-top: var(--airform-header-height); }
  body.theme-airform { background: var(--af-bg); color: var(--af-ink); }
  body > header.airvo-header {
    box-sizing: border-box; position: sticky; inset: auto; top: 0; z-index: 350;
    isolation: isolate; display: flex; align-items: center; justify-content: space-between;
    gap: 24px; width: 100%; height: auto; min-height: 76px; margin: 0;
    padding: 11px clamp(24px, 4.5vw, 72px); background: var(--af-toolbar);
    color: var(--af-text); border: 0; border-bottom: 1px solid var(--af-border);
    box-shadow: var(--af-shadow); backdrop-filter: blur(8px);
    font-family: var(--airform-sans);
  }
  body > header.airvo-header .brand-logo { display: block; width: 192px; height: 49px; flex: 0 0 auto; overflow: visible; background: transparent; }
  body > header.airvo-header .brand-logo img { display: block; width: 100%; max-width: 100%; height: 100%; object-fit: contain; transform: none; mix-blend-mode: normal; animation: none; }
  body > header.airvo-header nav { display: flex; position: static; align-items: center; justify-content: flex-end; flex-wrap: wrap; gap: 3px; max-width: none; transform: none; }
  body > header.airvo-header nav > a {
    display: inline-flex; align-items: center; justify-content: center; min-height: 36px;
    width: auto; max-width: none; margin: 0; padding: 8px 11px;
    border: 1px solid transparent; border-radius: 4px; background: transparent;
    color: var(--af-text); font: 600 12px/1 var(--airform-sans); letter-spacing: .13em;
    text-transform: uppercase; text-decoration: none; white-space: nowrap;
    text-shadow: none; box-shadow: none; backdrop-filter: none;
  }
  body > header.airvo-header nav > a:hover { background: var(--af-bg-soft); color: var(--af-ink); border-color: var(--af-border); }
  body > header.airvo-header nav > a[aria-current="page"] { background: var(--af-blue-soft); color: var(--af-blue-hover); border-color: var(--af-border); }
  body > header.airvo-header nav > a.airvo-contact-link { margin-left: 8px; padding-inline: 13px; background: var(--af-action); border-color: var(--af-action); color: var(--af-white); }
  body > header.airvo-header nav > a.airvo-contact-link:hover { background: var(--af-action-hover); border-color: var(--af-action-hover); }
  body > header.airvo-header::after { content: ""; position: absolute; left: clamp(24px, 4.5vw, 72px); bottom: -1px; width: 46px; height: 2px; background: var(--af-blue); animation: airform-crossbar-in .7s ease both; transform-origin: left center; }
  body > header.airvo-header nav > a::after { content: none; }
  body > header.airvo-header .menu-toggle { display: none; font:500 13px/1 var(--airform-sans); text-transform:none; letter-spacing:0; border-radius:0; }
  body > header.airvo-header a:focus-visible,
  body > header.airvo-header button:focus-visible,
  body.theme-airform :where(a,button,input,select,textarea,summary,[tabindex]):focus-visible,
  body > footer.site-footer a:focus-visible { outline: 2px solid var(--af-blue-hover); outline-offset: 3px; }
  body.theme-airform :where(h1,h2,h3,h4,h5,h6) { color: var(--af-ink); }
  body.theme-airform :where(main > section > p, .page-hero p, .business-heading > p, .case-story p, .airvo-trust > div > p) { color: var(--af-body); }
  body.theme-airform :where(.commercial-grid p, .trust-list p, .home-proof-head p, .package-card p, .scope-notes p, .platform-note) { color: var(--af-text); }
  body.theme-airform :where(.eyebrow,.brief-label,.demo-caption,.meta,.kicker,.concept-label,.case-discipline,.story-number) { color: var(--af-meta); }
  body.theme-airform :where(.commercial-actions a,.home-proof-all,.home-proof-grid > a > b,.text-link,.full-case-link) { color: var(--af-blue-hover); }
  body.theme-airform :where(.commercial-actions a,.home-proof-all,.home-proof-grid > a > b,.text-link,.full-case-link):hover { color: var(--af-blue-hover); }
  body.theme-airform .caret { color: var(--af-blue); }
  body.theme-airform :where(.commercial-section,.airvo-trust,.brief-cta) { background: var(--af-bg-soft); border-color: var(--af-border); }
  body.theme-airform :where(.home-proof,.studio,.business-section,.contact-section) { background: var(--af-bg); border-color: var(--af-border); }
  body.home-page .mountain-hero:after { background: var(--af-hero-wash); }
  body.home-page .mountain-copy,
  body.home-page .mountain-copy h1,
  body.home-page .mountain-copy h1 em,
  body.home-page .mountain-copy p,
  body.home-page .hero-services { color: var(--af-ink); text-shadow: none; }
  .hero-project-button { background: var(--af-ink); color: var(--af-bg); border-color: var(--af-ink); }
  .hero-project-button:hover,.hero-project-button:focus-visible { background: var(--af-action-hover); border-color: var(--af-action-hover); }
  body.home-page .brief-cta .brief,
  body.home-page #explore > .brief-cta .brief { background: var(--af-bg); border-color: var(--af-border); box-shadow: var(--af-shadow); }
  body.home-page .brief-cta .brief:hover { background: var(--af-bg-soft); border-color: var(--af-border); }
  body.home-page .brief-cta .brief-label,
  body.home-page .brief-cta .brief p,
  body.home-page .brief-cta-arrow { color: var(--af-text); }
  body > footer.site-footer { background: var(--af-bg-soft); color: var(--af-text); border-top-color: var(--af-border); }
  @media (max-width: 1000px) and (min-width: 761px) {
    body > header.airvo-header { gap: 12px; padding-inline: 3%; }
    body > header.airvo-header .brand-logo { width: 190px; }
    body > header.airvo-header nav > a { padding-inline: 8px; font-size: 10px; }
  }
  @media (max-width: 760px) {
    body > header.airvo-header { min-height: 68px; padding: 8px 6%; gap: 8px; flex-wrap: wrap; }
    body > header.airvo-header .brand-logo { width: 162px; height: 42px; }
    body > header.airvo-header nav { width: 100%; justify-content: flex-start; }
    body > header.airvo-header nav > a { min-height: 44px; padding: 8px; font-size: 10px; }
    body > header.airvo-header:has(.menu-toggle) nav { display: none; }
    body > header.airvo-header .menu-toggle { display: inline-flex; color: var(--af-ink); }
    body > header.airvo-header.menu-open nav { display: flex; flex-direction: column; align-items: stretch; gap: 4px; padding-block: 8px; background: var(--af-bg); }
    body > header.airvo-header.menu-open nav > a { justify-content: flex-start; min-height: 44px; padding: 12px; }
    body > header.airvo-header.menu-open nav > a.airvo-contact-link { margin-left: 0; }
    body > header.airvo-header::after { left: 6%; width: 34px; }
  }
  @media (prefers-reduced-motion: reduce) {
    body > header.airvo-header::after,
    body > header.airvo-header .brand-logo img { animation: none; }
  }

  body.theme-airform { font-family: var(--airform-sans); }
  body.theme-airform main :is(h1,h2), body.theme-airform .brand-promise strong { font-family: var(--airform-serif); font-weight:400; }
  body.theme-airform main :is(h1,h2) { letter-spacing: -.045em; }
  body.theme-airform :is(.business-button,.demo-launch) { border-radius:4px; background:var(--af-action); border-color:var(--af-action); color:var(--af-white); text-decoration:none; }
  body.theme-airform :is(.business-button,.demo-launch):hover { background:var(--af-action-hover); border-color:var(--af-action-hover); }
  body.theme-airform .commercial-actions a { border:0; border-radius:0; padding:10px 0; text-decoration:underline; text-underline-offset:5px; background:transparent; }
  body.theme-airform :is(.commercial-grid article,.trust-list article,.package-card,.business-form) { border-radius:4px; box-shadow:none; }
  body > footer.site-footer { display:flex; flex-wrap:wrap; align-items:center; justify-content:space-between; gap:20px; padding:32px 5%; border-top:1px solid var(--af-border); font:13px/1.5 var(--airform-sans); }
  body > footer.site-footer img { width:145px; height:auto; }
  body > footer.site-footer a { color:var(--af-ink); text-decoration:none; min-height:44px; display:inline-flex; align-items:center; }
  .menu-toggle { align-items:center; gap:10px; min-height:44px; padding:10px 12px; border:1px solid var(--af-border); background:var(--af-bg); font:14px/1 var(--airform-sans); }
  body.theme-airform .work-intro { padding-bottom:24px; }
  .af-project-index { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:24px; margin:32px 0 52px; }
  .af-project-index a { color:var(--af-ink); text-decoration:none; }
  .af-project-index img { width:100%; height:auto; aspect-ratio:3/2; object-fit:cover; display:block; margin-bottom:14px; }
  .af-project-index span { display:block; margin-top:5px; color:var(--af-text); font-size:13px; }
  @media(max-width:760px) { .af-project-index { grid-template-columns:1fr 1fr; gap:20px 14px; } }
  @media(max-width:480px) { .af-project-index { grid-template-columns:1fr; } }
}
@layer components {
.af-service-introduction { padding:clamp(60px,8vw,100px) 6% 30px; max-width:1500px; margin:auto; }
.af-service-introduction h1 { font:400 clamp(45px,6vw,84px)/1.06 var(--airform-sans); margin:24px 0; }
.af-service-introduction > p { max-width:720px; font-size:20px; line-height:1.6; }
.af-service-intro-grid { display:grid; grid-template-columns:1fr 1fr; gap:60px; margin-top:50px; }
.af-service-intro-grid article { border-top:1px solid var(--af-border); padding-top:24px; }
.af-service-intro-grid h2 { font-size:34px; margin:0 0 20px; }
.af-service-intro-grid p { font-size:17px; line-height:1.7; color:var(--af-text); }
@media(max-width:760px) { .af-service-intro-grid { grid-template-columns:1fr; gap:40px; } }
}

/* project-themes.css */
/* Layer 3: isolated project worlds. No Air Form core token is overridden. */
@layer projects {
.theme-forme {
  --project-paper: #f7f6ef;
  --project-ink: #283429;
  --project-surface: #e9ecdf;
  --project-line: #d4d7cc;
  --project-focus: #587a50;
  --project-text: #52644e;
  --project-muted: #62705e;
  --project-hover: #41563d;
  --paper: var(--project-paper);
  --ink: var(--project-ink);
  --surface: var(--project-surface);
  --line: var(--project-line);
  --focus: var(--project-focus);
}
.theme-morrow {
  --project-paper: #f6f0fb;
  --project-ink: #4a246b;
  --project-accent: #c5b0ed;
  --project-surface: #e7d9f5;
  --project-focus: #4a246b;
  --paper: var(--project-paper);
  --ink: var(--project-ink);
  --surface: var(--project-surface);
  --focus: var(--project-focus);
  --accent: var(--project-accent);
}
.theme-offbeat {
  --project-paper: #181818;
  --project-ink: #f3ff77;
  --project-accent: #f3ff77;
  --project-surface: #222222;
  --project-text: #e6e6c4;
  --project-focus: #f3ff77;
  --paper: var(--project-paper);
  --ink: var(--project-ink);
  --surface: var(--project-surface);
  --focus: var(--project-focus);
  --accent: var(--project-accent);
}
.theme-harbour {
  --project-paper: #f5f0e6;
  --project-surface: #fbf8f1;
  --project-ink: #173b36;
  --project-line: #bfc8bb;
  --project-focus: #bd5a3f;
  --project-accent: #e7b25e;
  --paper: var(--project-paper);
  --ink: var(--project-ink);
  --surface: var(--project-surface);
  --line: var(--project-line);
  --focus: var(--project-focus);
  --accent: var(--project-accent);
}
.theme-meridian {
  --project-paper: #eff1f5;
  --project-surface: #ffffff;
  --project-ink: #101b35;
  --project-line: #c8cfdd;
  --project-focus: #315bd6;
  --project-accent: #8ff0cf;
  --paper: var(--project-paper);
  --ink: var(--project-ink);
  --surface: var(--project-surface);
  --line: var(--project-line);
  --focus: var(--project-focus);
  --accent: var(--project-accent);
}
.theme-keystone {
  --project-paper: #f3f5f7;
  --project-surface: #ffffff;
  --project-ink: #25364d;
  --project-line: #cbd4dc;
  --project-focus: #d8613f;
  --project-accent: #d8613f;
  --paper: var(--project-paper);
  --ink: var(--project-ink);
  --surface: var(--project-surface);
  --line: var(--project-line);
  --focus: var(--project-focus);
  --accent: var(--project-accent);
}
.project-theme {
  --demo-rule: color-mix(in srgb,currentColor 18%,transparent);
  --project-art-1: #f7f6ef;
  --project-art-2: #283429;
  --project-art-3: #587a50;
  --project-art-4: #29372d;
  --project-art-5: #ffffff;
  --project-art-6: #d4d7cc;
  --project-art-7: #84927c;
  --project-art-8: #e9ecdf;
  --project-art-9: #41563d;
  --project-art-10: #62705e;
  --project-art-11: #b1baa7;
  --project-art-12: #edece4;
  --project-art-13: #e6eadf;
  --project-art-14: #52644e;
  --project-art-15: #15201799;
  --project-art-16: #a7b09d;
  --project-art-17: #bfc7b8;
  --project-art-18: #f6f0fb;
  --project-art-19: #4a246b;
  --project-art-20: #c5b0ed;
  --project-art-21: #181818;
  --project-art-22: #f3ff77;
  --project-art-23: #c7b1d8;
  --project-art-24: #b59ccb;
  --project-art-25: #ffffff80;
  --project-art-26: #ffffff99;
  --project-art-27: #40215b18;
  --project-art-28: #e7d9f5;
  --project-art-29: #f3ff7770;
  --project-art-30: #f3ff7740;
  --project-art-31: #222222;
  --project-art-32: #e6e6c4;
  --project-art-33: #242424;
  --project-art-34: #000000aa;
  --project-art-35: #ffffff77;
  --project-art-36: #f5f0e6;
  --project-art-37: #fbf8f1;
  --project-art-38: #173b36;
  --project-art-39: #bfc8bb;
  --project-art-40: #bd5a3f;
  --project-art-41: #bf5d44;
  --project-art-42: #e7b25e;
  --project-art-43: #8aa29a;
  --project-art-44: #eff1f5;
  --project-art-45: #101b35;
  --project-art-46: #c8cfdd;
  --project-art-47: #315bd6;
  --project-art-48: #f7f9ff;
  --project-art-49: #7aa8ff;
  --project-art-50: #9bf3d0;
  --project-art-51: #1d3163;
  --project-art-52: #7599e0;
  --project-art-53: #6fe0bd;
  --project-art-54: #dce7ff;
  --project-art-55: #8ff0cf;
  --project-art-56: #f3f5f7;
  --project-art-57: #25364d;
  --project-art-58: #cbd4dc;
  --project-art-59: #d8613f;
  --project-art-60: #dfe6eb;
  --project-art-61: #9cacb7;
  --project-art-62: #73889a;
  --project-art-63: #ffffff88;
  --project-art-64: #ffffff44;
  --project-art-65: #e4e5e6;
  --project-art-66: #3f454b;
  --project-art-67: #f2d778;
  --project-art-68: #263039;
  --project-art-69: #f8f2fc;
  --project-art-70: #f8f1e9;
  --project-art-71: #172434;
  --project-art-72: #eef5ff;
  --project-art-73: #edf2f4;
}
}

/* alpine.css */
@layer components {
  body.theme-airform main :is(h1,h2) { letter-spacing:-.035em; }
  .af-studio .af-button { background:var(--af-action); border-color:var(--af-action); color:var(--af-white); }
  .af-studio .af-button:hover { background:var(--af-action-hover); border-color:var(--af-action-hover); }
  .af-studio .af-number,.af-studio .af-text-link,.af-studio .af-process-grid span { color:var(--af-blue-hover); }
  body.alpine-home .mountain-copy { top:27%; left:6%; width:65%; max-width:790px; }
  body.alpine-home .mountain-copy h1 { white-space:nowrap; }
  .alpine-kicker { display:block; max-width:560px; margin-bottom:24px; font:500 12px/1.5 var(--airform-sans); letter-spacing:.18em; color:var(--af-ink); }
  body.alpine-home .hero-actions { display:flex; flex-wrap:wrap; align-items:center; gap:18px; }
  body.alpine-home .hero-project-button { background:var(--af-action); border-color:var(--af-action); color:var(--af-white); }
  body.alpine-home .mountain-copy p { font-weight:400; }
  body.alpine-home main > .af-wrap { order:3; }
  body.alpine-home main > .af-editorial { order:3; }
  body.alpine-home main > .af-invitation { order:4; }
  body.alpine-home #animation-case-source { display:none; }
  body.alpine-home .af-intro > div { min-width:0; }
  body.alpine-home .mountain-copy p { max-width:460px; }
  body.alpine-home .video-device .screen-view h3 { font-family:var(--airform-serif); }
  .af-editorial { background:var(--af-bg-soft); }
  @media(max-width:760px) {
    body.alpine-home .mountain-copy { left:6%; top:20%; width:88%; max-width:none; }
    body.alpine-home .mountain-copy h1 { white-space:normal; }
    .alpine-kicker { font-size:12px; letter-spacing:.1em; max-width:280px; }
  }
}

@layer components {
 body > header.airvo-header .brand-logo { width:172px; height:58px; }
 body > header.airvo-header .brand-logo img { object-fit:contain; }
 body > footer.site-footer img { width:145px; }
 .af-logo-display img { width:450px; }
 @media(max-width:760px) { body > header.airvo-header .brand-logo { width:142px; height:48px; } }
}

@layer components {
 body.alpine-home .hero-actions a { text-decoration:none; }
 body.alpine-home .hero-actions .hero-project-button { display:inline-flex; align-items:center; padding:15px 22px; border-radius:3px; font:500 15px/1.3 var(--airform-sans); }
 body.alpine-home .hero-enquiry-link { color:var(--af-ink); font-size:15px; }
 body.alpine-home .hero-film-link { flex-basis:100%; width:fit-content; font-size:14px; }
 body.alpine-home .mountain-copy p { font-size:clamp(19px,2vw,25px); max-width:570px; line-height:1.45; }
 .af-projects small { font-size:12px; } .af-projects p { font-size:16px; }
 .featured-breakdown { padding:32px 0; border-top:1px solid var(--af-border); }
 .featured-breakdown > h3 { margin:16px 0 28px; font-size:clamp(26px,3vw,40px); }
 .featured-breakdown-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:30px; }
 .featured-breakdown-grid span,.concept-caption { font-size:12px; color:var(--af-meta); }
 .featured-breakdown-grid h4 { margin:12px 0; font-size:20px; }
 .featured-breakdown-grid p { font-size:16px; line-height:1.7; }
 .featured-breakdown-grid a { color:var(--af-blue-hover); font-size:14px; }
 .concept-caption { margin-top:26px; }
 .enquiry-extras { grid-column:1/-1; padding:18px 0; border-top:1px solid var(--af-border); border-bottom:1px solid var(--af-border); }
 .enquiry-extras summary { cursor:pointer; font-size:16px; padding:8px 0; }
 .enquiry-extras[open] summary { margin-bottom:20px; }
 .enquiry-extras .qualification-grid { margin-top:20px; }
 .business-form > label:has(textarea) { grid-column:1/-1; }
 @media(max-width:760px) { .featured-breakdown-grid { grid-template-columns:1fr; } }
}

@layer components {
 .visual-journal { max-width:1280px; margin:0 auto; padding:clamp(36px,5vw,76px) 6%; }
 .visual-journal h2 { font-size:clamp(30px,3.7vw,52px); line-height:1.1; margin:14px 0 32px; }
 .visual-journal-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:26px; }
 .visual-journal-grid > a { display:block; text-decoration:none; color:var(--af-ink); }
 .brand-image { margin:0; min-width:0; }
 .brand-image img { display:block; width:100%; height:auto; aspect-ratio:3/2; object-fit:cover; }
 .brand-image figcaption { font:400 13px/1.6 var(--airform-sans); color:var(--af-meta); margin:12px 0 24px; }
 .case-study > .brand-image { margin-top:28px; }
 .case-method { margin:28px 0; padding:20px 0; border-block:1px solid var(--af-border); }
 .case-method summary { cursor:pointer; font:500 16px/1.5 var(--airform-sans); }
 .case-method[open] summary { margin-bottom:24px; }
 body.alpine-home .hero-enquiry-link { background:none; border:0; padding:12px 0; cursor:pointer; font-family:var(--airform-sans); }
 .concept-brand-spread { display:grid; grid-template-columns:.75fr 1.25fr; gap:48px; align-items:center; padding:clamp(35px,6vw,90px) 6%; max-width:1500px; margin:auto; }
 .concept-brand-spread h2 { font-size:clamp(30px,3.8vw,54px); line-height:1.08; margin:20px 0; }
 .concept-brand-spread p { font-size:16px; line-height:1.7; max-width:440px; }
 .concept-brand-spread a { color:inherit; font-size:15px; }
 @media(max-width:760px){.visual-journal-grid,.concept-brand-spread{grid-template-columns:1fr;}.concept-brand-spread{gap:24px;}.visual-journal{padding-inline:6%;}}
}

@layer components {
 .customer-journey { padding:clamp(40px,6vw,90px) 6%; max-width:1500px; margin:auto; }
 .journey-heading { max-width:780px; } .journey-heading h2 { font-size:clamp(32px,4vw,58px); line-height:1.06; margin:18px 0; }
 .journey-heading p,.journey-detail p { font-size:17px; line-height:1.7; }
 .journey-tools { display:flex; align-items:end; flex-wrap:wrap; gap:24px; margin:30px 0; }
 .journey-tools label { display:grid; gap:8px; font-size:14px; }
 .journey-tools input { background:transparent; color:inherit; border:1px solid currentColor; padding:13px 16px; border-radius:3px; min-width:240px; font:inherit; }
 .journey-filters { display:flex; flex-wrap:wrap; gap:9px; }
 .customer-journey button { font:500 14px/1.4 var(--airform-sans); min-height:44px; cursor:pointer; color:inherit; background:transparent; border:1px solid currentColor; border-radius:3px; padding:10px 15px; }
 .journey-filters button[aria-pressed="true"],.journey-card button[aria-pressed="true"] { background:var(--af-ink); color:var(--af-white); border-color:var(--af-ink); }
 .journey-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:24px; }
 .journey-card { padding:26px; border:1px solid currentColor; border-radius:4px; display:flex; flex-direction:column; min-width:0; }
 .journey-card img { width:100%; height:auto; aspect-ratio:1; object-fit:cover; margin-bottom:22px; }
 .journey-card > span { font-size:12px; text-transform:uppercase; letter-spacing:.08em; }
 .journey-card h3 { font-size:25px; margin:16px 0 12px; line-height:1.15; }
 .journey-card p { font-size:16px; line-height:1.6; flex:1; } .journey-card > div { display:flex; gap:12px; flex-wrap:wrap; margin-top:20px; }
 .journey-status,.journey-note { font-size:13px; line-height:1.6; } .journey-note { margin-top:26px; }
 .journey-dialog { background:var(--af-bg); color:var(--af-ink); border:0; padding:32px; border-radius:8px; width:min(680px,90vw); max-height:85vh; overflow:auto; }
 .journey-dialog::backdrop { background:rgb(0 0 0/.5); } .journey-dialog > button { display:block; margin-left:auto; }
 .journey-detail h2 { font-size:clamp(28px,4vw,40px); margin:20px 0; line-height:1.1; }
 @media(max-width:900px){.journey-grid{grid-template-columns:repeat(2,minmax(0,1fr));}}
 @media(max-width:600px){.journey-grid{grid-template-columns:1fr;}.journey-tools input{min-width:0;width:100%;}.journey-tools label{width:100%;}}
}

@layer components {
 @media(max-width:760px){
  body.alpine-home .video-scroll-stage,body.alpine-home .video-viewport { height:auto!important; min-height:0; position:relative; overflow:visible; }
  body.alpine-home .video-viewport .mountain-hero { position:relative; inset:auto; height:auto; min-height:0; padding:0; background:var(--af-bg); pointer-events:auto; }
  body.alpine-home .mountain-hero::before { content:""; display:block; position:relative; inset:auto; width:100%; height:220px; background:url('second-scene-mountains-1024.webp') center 46%/cover; opacity:1; }
  body.alpine-home .mountain-hero::after,body.alpine-home .hero-video,body.alpine-home #explore,body.alpine-home .skip-intro { display:none!important; }
  body.alpine-home .mountain-copy { position:relative!important; top:auto!important; left:auto!important; width:auto!important; max-width:none; padding:32px 6% 40px; visibility:visible!important; opacity:1!important; pointer-events:auto!important; transform:none!important; }
  body.alpine-home .mountain-copy h1 { font-size:clamp(40px,10vw,58px)!important; line-height:1.06!important; white-space:normal; }
  body.alpine-home .mountain-copy p { font-size:19px!important; text-transform:none!important; letter-spacing:0!important; margin:20px 0; line-height:1.5!important; }
  body.alpine-home .alpine-kicker { font-size:12px; margin-bottom:18px; }
  body.alpine-home .hero-actions { display:grid; grid-template-columns:1fr; gap:9px; }
  body.alpine-home .hero-actions .hero-project-button { justify-content:center; min-height:48px; }
  body.alpine-home .hero-enquiry-link { min-height:48px; text-align:center; border:1px solid var(--af-border); border-radius:3px; }
  body.alpine-home .hero-film-link,body.alpine-home .hero-services { display:none!important; }
  .demo-project-bar { display:none!important; }
  body.project-theme > header:not(.airvo-header) { flex-wrap:wrap; gap:15px; padding:22px 6%; }
  body.project-theme > header:not(.airvo-header) nav { display:flex; flex-wrap:wrap; gap:14px; }
  body.project-theme main h1 { font-size:clamp(38px,10vw,56px); line-height:1.05; overflow-wrap:break-word; }
  .brand-image figcaption { font-size:12px; }
  .business-form input,.business-form textarea,.business-form select { font-size:16px; }
  .brief-panel.open { max-height:calc(100dvh - 24px); overflow-y:auto; }
  .brief-options span { font-size:13px; } .brief-choice-row label>span { font-size:14px; min-height:44px; }
 }
}

@layer components {
 .collection-controls { flex-wrap:wrap; gap:18px; } .collection-controls .filters { flex-wrap:wrap; }
 #product-search { font:inherit; background:transparent; padding:12px; border:1px solid currentColor; width:230px; }
 #checkout-dialog { padding:32px; width:min(560px,90vw); max-height:85vh; overflow:auto; color:var(--af-ink); background:var(--af-bg); border:0; border-radius:8px; }
 #checkout-dialog::backdrop { background:rgb(0 0 0/.5); } #checkout-dialog h2 { font-size:32px; margin:22px 0; } #checkout-dialog p { font-size:16px; line-height:1.6; }
 #checkout-dialog select { font:inherit; display:block; padding:12px; margin:14px 0; max-width:100%; } #checkout-demo { margin-top:20px; }
 @media(max-width:600px){.collection-controls{align-items:stretch;}.collection-controls label,#product-search{width:100%;}.product-card>div{flex-wrap:wrap;gap:12px;}}
}

@layer components {
 body.alpine-home .mountain-copy { position:absolute; z-index:2; top:25%; left:6%; width:55%; max-width:650px; padding:0; }
 body.alpine-home .mountain-copy h1 { font:400 clamp(50px,5.7vw,82px)/1.05 var(--airform-serif); letter-spacing:-.045em; margin:0 0 22px; }
 body.alpine-home .mountain-copy p { font:400 clamp(18px,1.75vw,23px)/1.5 var(--airform-sans); text-transform:none; letter-spacing:0; max-width:500px; margin:0 0 26px; }
 body.alpine-home .alpine-kicker { font:500 12px/1.5 var(--airform-sans); letter-spacing:.13em; margin-bottom:25px; max-width:none; }
 body.alpine-home .hero-actions { display:flex; flex-wrap:wrap; align-items:center; gap:12px; margin:0; }
 body.alpine-home .hero-actions .hero-project-button,body.alpine-home .hero-actions .hero-enquiry-link { display:inline-flex; align-items:center; justify-content:center; min-height:48px; padding:13px 20px; font:500 14px/1.4 var(--airform-sans); letter-spacing:0; text-transform:none; border:1px solid var(--af-ink); border-radius:4px; }
 body.alpine-home .hero-actions .hero-enquiry-link { background:rgb(247 247 245/.78); color:var(--af-ink); }
 body.alpine-home .hero-actions .hero-film-link { flex:0 0 100%; justify-content:flex-start; min-height:44px; padding:8px 0; margin-top:1px; border:0; background:none; color:var(--af-ink); font:400 14px/1.4 var(--airform-sans); border-radius:0; }
 body.alpine-home .hero-actions .hero-film-link:hover { text-decoration:underline; text-underline-offset:5px; }
 body.alpine-home .skip-intro { display:none; }
 @media(max-width:760px){body.alpine-home .mountain-copy{padding:32px 6% 40px;}body.alpine-home .hero-actions{display:grid;grid-template-columns:1fr;}body.alpine-home .alpine-kicker{font-size:11px;letter-spacing:.09em;}body.alpine-home .mountain-copy h1{margin-bottom:18px;}body.alpine-home .mountain-copy p{margin-bottom:24px;}}
 @media(prefers-reduced-motion:no-preference){
  .af-projects img,.visual-journal-grid img { transition:transform .35s ease; }
  .af-projects a:hover img,.visual-journal-grid a:hover img { transform:translateY(-4px); }
  .journey-card { transition:transform .2s ease; } .journey-card:hover { transform:translateY(-3px); }
 }
}

@layer components {
 .video-device .screen-view { padding:16px 22px; background:var(--af-bg); color:var(--af-ink); }
 .video-device .screen-view-bar { padding-bottom:10px; }
 .video-device .screen-view-bar a { color:var(--af-ink); font-size:13px; letter-spacing:0; }
 .video-device .screen-view-content { padding-top:14px; }
 .video-device .studio-selector h3 { font-size:clamp(22px,3.5cqw,34px); margin:8px 0 14px; letter-spacing:-.025em; }
 .studio-goals,.studio-project-rail { display:flex; flex-wrap:wrap; gap:7px; }
 .studio-goals button,.studio-project-rail button,.studio-next button { border:1px solid var(--af-border); background:transparent; color:var(--af-ink); border-radius:4px; font:500 12px/1.4 var(--airform-sans); padding:8px 12px; cursor:pointer; }
 .studio-goals button[aria-pressed="true"],.studio-project-rail button[aria-pressed="true"] { background:var(--af-blue-soft); border-color:var(--af-blue-hover); }
 .studio-live-preview { display:grid; grid-template-columns:1.35fr 1fr; gap:20px; align-items:center; margin:16px 0; }
 .studio-live-preview > img { width:100%; height:auto; aspect-ratio:3/2; object-fit:cover; border-radius:4px; }
 .studio-live-preview h4 { font:400 clamp(22px,3.4cqw,34px)/1.1 var(--airform-serif); margin:9px 0; }
 .video-device .studio-live-preview p { font-size:14px; line-height:1.5; margin:10px 0 16px; color:var(--af-body); }
 .studio-live-preview a,.studio-live-preview button { display:block; color:var(--af-ink); border:0; background:none; text-align:left; padding:7px 0; font:500 12px/1.4 var(--airform-sans); cursor:pointer; }
 .studio-live-preview .studio-launch { background:var(--af-ink); color:var(--af-white); padding:10px 13px; border-radius:4px; text-decoration:none; }
 .studio-next { display:flex; justify-content:space-between; align-items:center; gap:12px; border-top:1px solid var(--af-border); padding-top:12px; margin-top:14px; }
 .studio-next span { font-size:12px; color:var(--af-meta); } .studio-next button:last-child { background:var(--af-ink); color:var(--af-white); border-color:var(--af-ink); }
 @media(prefers-reduced-motion:no-preference){.studio-live-preview{animation:studio-preview-in .24s ease-out;}@keyframes studio-preview-in{from{opacity:.5;transform:translateY(5px)}to{opacity:1;transform:none}}}
 @container(max-width:650px){.studio-live-preview{grid-template-columns:1fr 1fr;gap:12px;}.video-device .studio-live-preview p{font-size:12px;}.studio-next{flex-wrap:wrap;}}
}
@layer components {
 @media(max-width:760px){
  body.alpine-home .mountain-hero::before { height:170px; }
  body.alpine-home .mountain-copy { padding:26px 6% 26px; }
  body.alpine-home .af-work { padding-top:32px; padding-bottom:38px; }
  body.alpine-home .af-section-head { gap:16px; }
  body.alpine-home .af-work .af-section-head h2 { font-size:34px; }
  body.alpine-home .af-work .af-section-head p { font-size:15px; line-height:1.6; }
  body.alpine-home .af-projects { margin-top:24px; gap:28px; }
  body.alpine-home .af-projects > a > div { padding-top:15px; }
  body.alpine-home .af-wrap { padding-top:42px; padding-bottom:42px; }
  body.alpine-home .af-work { padding-top:28px; }
 }
}
@layer components {
 .video-device .screen-view .monitor-brand { width:112px; height:40px; object-fit:contain; }
 .video-device .screen-view-bar { min-height:44px; padding-bottom:6px; }
 .video-device .screen-view-content { padding-top:8px; }
 .video-device .studio-selector-heading > .screen-view-kicker { font-size:10px; }
 .video-device .studio-selector h3 { font-size:26px; margin:6px 0 9px; }
 .studio-goals button,.studio-project-rail button { padding:6px 9px; }
 .studio-live-preview { margin:10px 0; gap:18px; }
 .studio-live-preview > img { height:145px; aspect-ratio:auto; object-fit:cover; }
 .video-device .studio-live-preview p { font-size:13px; margin:7px 0; }
 .studio-live-preview h4 { font-size:26px; margin:5px 0; }
 .studio-live-preview a,.studio-live-preview button { padding:5px 0; }
 .studio-live-preview .studio-launch { padding:8px 10px; }
 .studio-next { padding-top:9px; margin-top:9px; }
}
@layer projects {
 @media(max-width:760px){
  body.project-theme main :is(.hero,.demo-hero,.forme-hero) h1 { font-size:clamp(34px,9.6vw,46px); letter-spacing:-.035em; line-height:1.08; overflow-wrap:normal; word-break:normal; }
  body.project-theme .hero-copy { padding:36px 6%; }
  body.project-theme .customer-journey h2,body.project-theme .concept-brand-spread h2 { font-size:32px; line-height:1.1; letter-spacing:-.025em; }
  body.project-theme .journey-card h3 { font-size:24px; letter-spacing:-.02em; }
  body.project-theme .journey-dialog h2 { font-size:30px; letter-spacing:-.02em; }
  body.project-theme .customer-journey p { font-size:16px; line-height:1.6; }
 }
}

@layer projects {
 @media(max-width:760px){
  body.theme-keystone > header:not(.airvo-header) .logo { font-size:clamp(20px,6vw,25px); letter-spacing:.015em; max-width:100%; line-height:1.2; }
  body.project-theme > header:not(.airvo-header) { box-sizing:border-box; max-width:100%; }
  body.project-theme > header:not(.airvo-header) nav { min-width:0; max-width:100%; flex-wrap:wrap; }
 }
}

@layer projects {
 .demo-banner a { display:inline-flex; align-items:center; justify-content:center; min-height:40px; padding:8px 12px; border:1px solid currentColor; border-radius:4px; text-decoration:none; font-size:12px; line-height:1.3; }
 @media(max-width:760px){.demo-banner a{min-height:44px;flex:0 0 auto;max-width:135px;}}
}
@layer components {
 .video-device .screen-view-bar { flex:0 0 auto; }
 .video-device .screen-view-content { flex:1 1 auto; min-height:0; }
 .video-device .screen-view-content:has(.studio-selector) { overflow:hidden; }
 .studio-selector { height:100%; min-height:0; display:grid; grid-template-rows:auto auto minmax(0,1fr) auto auto; gap:7px; }
 .studio-selector .studio-live-preview { min-height:0; margin:0; overflow:hidden; }
 .studio-selector .studio-live-preview > img { height:100%; max-height:100%; min-height:0; object-fit:cover; }
 .studio-selector .studio-live-preview > div { min-height:0; }
 .studio-selector .studio-next { margin:0; padding-top:7px; }
 .studio-selector .studio-next span { display:none; }
 .studio-selector .studio-next { justify-content:flex-end; }
 .studio-selector .studio-selector-heading > .screen-view-kicker { font-size:9px; }
 .video-device .studio-selector h3 { font-size:clamp(20px,3cqw,26px); margin:4px 0; }
 .studio-selector .studio-project-rail button { font-size:11px; padding:5px 8px; }
 .studio-selector .studio-live-preview h4 { font-size:24px; }
 .studio-selector .studio-live-preview p { font-size:12px; line-height:1.4; margin:5px 0; }
 .studio-selector .studio-live-preview .screen-view-kicker { font-size:10px; }
}

@layer components {
 .video-device .screen-view-content { padding-top:10px; }
 .studio-selector { grid-template-columns:minmax(0,1fr) auto; grid-template-rows:auto minmax(0,1fr) auto; gap:12px; }
 .studio-selector-heading { grid-column:1; grid-row:1; align-self:center; }
 .studio-selector-heading > .screen-view-kicker { display:none; }
 .video-device .studio-selector h3 { font-size:22px; }
 .studio-selector .studio-goals { grid-column:2; grid-row:1; align-items:center; gap:4px; }
 .studio-selector .studio-goals button { padding:7px; font-size:11px; }
 .studio-selector .studio-live-preview { grid-column:1/-1; grid-row:2; grid-template-columns:minmax(0,1.15fr) minmax(0,1fr); gap:16px; background:#e5edf0; padding:12px; border-radius:8px; }
 .studio-selector .studio-live-preview > img { object-fit:cover; background:#d8e1e4; }
 .studio-selector .studio-live-preview > div { padding-right:8px; }
 .studio-selector .studio-live-preview h4 { font-size:28px; margin:9px 0; }
 .studio-selector .studio-live-preview p { font-size:13px; line-height:1.5; margin:10px 0 15px; }
 .studio-selector .studio-project-rail { grid-column:1; grid-row:3; align-content:center; gap:5px; }
 .studio-selector .studio-project-rail button { padding:6px 8px; }
 .studio-selector .studio-next { grid-column:2; grid-row:3; padding:0; border:0; align-self:center; }
 @container(max-width:650px) {
  .studio-selector { gap:8px; }
  .video-device .studio-selector h3 { font-size:18px; }
  .studio-selector .studio-goals button { font-size:10px; padding:5px; }
  .studio-selector .studio-live-preview { gap:12px; padding:9px; grid-template-columns:minmax(0,1.1fr) minmax(0,1fr); }
  .studio-selector .studio-live-preview h4 { font-size:23px; }
  .studio-selector .studio-live-preview p { font-size:11px; margin:6px 0; }
 }
}

@layer components { .consultation-choice { margin:4px 0 10px; padding:20px; border:1px solid var(--af-border); border-radius:8px; background:var(--af-blue-soft); } .consultation-choice legend { font-weight:600; padding:0 6px; } .consultation-choice legend span { font-weight:400; } .consultation-choice p { font-size:14px; line-height:1.6; margin:0 0 14px; } .consultation-choice #consultation-note { font-size:12px; margin:12px 0 0; } }

@layer components {
 [data-concept="forme"] { --concept-surface:#e5edf0; --concept-mat:#d8e1e4; --concept-accent:#394940; --concept-on-accent:#ffffff; }
 [data-concept="morrow"] { --concept-surface:#eee4f1; --concept-mat:#e5d5e9; --concept-accent:#48223e; --concept-on-accent:#ffffff; }
 [data-concept="offbeat"] { --concept-surface:#f0f2d5; --concept-mat:#e4e7be; --concept-accent:#24271d; --concept-on-accent:#f1ff76; }
 [data-concept="harbour-pine"] { --concept-surface:#e5ece4; --concept-mat:#d8e3d7; --concept-accent:#244b3f; --concept-on-accent:#ffffff; }
 [data-concept="meridian"] { --concept-surface:#e0efea; --concept-mat:#cfe5dd; --concept-accent:#173a49; --concept-on-accent:#ffffff; }
 [data-concept="keystone"] { --concept-surface:#eee4dc; --concept-mat:#e1d3c8; --concept-accent:#623f33; --concept-on-accent:#ffffff; }
 .studio-selector[data-concept] .studio-live-preview,.studio-case[data-concept] .studio-live-preview { background:var(--concept-surface); }
 .studio-selector[data-concept] .studio-live-preview > img { background:var(--concept-mat); }
 [data-concept] .studio-goals button[aria-pressed="true"],[data-concept] .studio-project-rail button[aria-pressed="true"] { background:var(--concept-surface); border-color:var(--concept-accent); color:var(--concept-accent); }
 [data-concept] .studio-live-preview .studio-launch,[data-concept] .studio-next button:last-child { background:var(--concept-accent); color:var(--concept-on-accent); border-color:var(--concept-accent); }
 .studio-case[data-concept] .studio-live-preview { padding:12px; border-radius:8px; }
}

@layer components {
 body.alpine-home .af-work { padding-bottom:36px; }
 body.alpine-home .af-intro { padding-top:36px; padding-bottom:52px; border-top:1px solid var(--af-border); }
 @media(max-width:760px) { body.alpine-home .af-work { padding-bottom:24px; } body.alpine-home .af-intro { padding-top:28px; padding-bottom:32px; gap:14px; } }
}
@layer components { .consultation-choice { min-width:0; scroll-margin-top:100px; } .consultation-choice select { display:block; width:100%; min-width:0; min-height:48px; padding:10px 12px; margin-top:8px; border:1px solid var(--af-border); border-radius:4px; background:var(--af-white); color:var(--af-ink); font:inherit; font-size:14px; } }

@layer components {
 .theme-airform .page-hero { padding-top:72px; padding-bottom:44px; }
 .theme-airform .page-content { padding-top:44px; padding-bottom:44px; }
 .theme-airform .commercial-section { padding-top:40px; padding-bottom:40px; }
 .services-page .af-service-introduction { padding-top:44px; padding-bottom:24px; }
 .services-page .af-service-intro-grid { gap:28px; margin-top:28px; }
 .services-page .af-service-intro-grid article { border:0; padding:0; }
 .service-example { display:block; width:100%; height:auto; aspect-ratio:3/2; object-fit:cover; margin:0 0 20px; border-radius:5px; }
 .services-page .capability-grid article { min-height:0; padding:24px; }
 .services-page .capability-grid h2 { margin:18px 0 12px; font-size:30px; }
 .services-page .page-content > .text-link { display:inline-block; margin-top:24px; }
 @media(max-width:760px){
  .theme-airform .page-hero { padding-top:36px; padding-bottom:28px; }
  .theme-airform .page-content,.theme-airform .commercial-section { padding-top:28px; padding-bottom:28px; }
  .services-page .af-service-introduction { padding-top:28px; }
  .services-page .af-service-intro-grid { gap:28px; }
  .services-page .capability-grid article { padding:20px 0; }
 }
}

@layer components {
 .contact-section .business-form > .consultation-choice { grid-column:1/-1; display:grid; grid-template-columns:1fr 1fr; gap:24px; margin:0; padding:20px; }
 .consultation-choice h3 { font:600 17px/1.35 var(--airform-sans); margin:0 0 8px; }
 .consultation-choice h3 span { font-size:13px; font-weight:400; }
 .consultation-choice p { margin:0; font-size:13px; line-height:1.5; }
 .contact-section .business-form > .business-button { margin-top:0; }
 @media(max-width:760px) { .contact-section .business-form > .consultation-choice { grid-template-columns:1fr; gap:14px; padding:18px; } }
}
@layer components {
 .video-device::after { content:""; position:absolute; inset:0; border:2px solid #171817; border-radius:3px; pointer-events:none; z-index:50; box-shadow:inset 0 0 2px #171817; }
 .contact-page .business-section { padding-top:44px; padding-bottom:44px; }
}

@layer components {
 body.alpine-home .af-invitation-art { display:grid; grid-template-columns:1fr 1.1fr; align-items:center; gap:48px; text-align:left; padding-top:56px; padding-bottom:56px; }
 .af-invitation-art .af-invitation-copy { min-width:0; }
 .af-invitation-art h2 { font-size:clamp(42px,5.2vw,76px); margin:20px 0 28px; }
 .af-invitation-art figure { min-width:0; margin:0; }
 .af-invitation-art img { display:block; width:100%; height:auto; border-radius:5px; }
 .af-invitation-art figcaption { font-size:12px; line-height:1.5; margin-top:10px; color:var(--af-meta); }
 @media(max-width:760px) { body.alpine-home .af-invitation-art { grid-template-columns:1fr; gap:24px; padding-top:28px; padding-bottom:32px; } .af-invitation-art figure { grid-row:1; } .af-invitation-art h2 { font-size:42px; margin:14px 0 22px; } }
}
@layer components { body > header.airvo-header::after { content:none; display:none; } }

@layer components {
 body.alpine-home .af-intro { grid-template-columns:1fr 1fr; gap:48px; align-items:start; }
 .af-intro-heading .af-eyebrow { display:block; margin-bottom:16px; }
 .af-intro-heading h2 { font-size:clamp(36px,4vw,58px); margin:0; }
 .case-action-row { display:grid; grid-template-columns:minmax(0,1fr) auto; gap:12px 24px; align-items:start; margin-top:24px; }
 .case-action-row .case-method { grid-column:1; grid-row:1; margin:0; }
 .case-action-row .demo-launch { grid-column:2; grid-row:1; margin:0; align-self:start; position:relative; z-index:1; }
 .case-action-row .case-method summary { min-height:48px; display:flex; align-items:center; }
 .case-action-row .case-method[open] { grid-column:1/-1; }
 .case-action-row .case-method[open] summary { padding-right:390px; }
 @media(max-width:760px) { body.alpine-home .af-intro { grid-template-columns:1fr; gap:22px; } .case-action-row { display:flex; flex-direction:column; gap:12px; } .case-action-row .case-method,.case-action-row .demo-launch { width:100%; } .case-action-row .case-method[open] summary { padding-right:0; } }
}
@layer components { .case-action-row .case-method { padding:0; border:0; } .af-invitation-art .af-email { text-align:left; margin-left:0; margin-right:0; } }

/* Open Form: primary mark at the left of the wordmark. */
body > header.airvo-header .brand-logo{width:230px;height:62px;flex-shrink:0}body > header.airvo-header .brand-logo img{width:100%;height:100%;object-fit:contain}.site-footer .brand-logo{max-width:230px}.site-footer .brand-logo img{width:100%;height:auto}@media(max-width:760px){body > header.airvo-header .brand-logo{width:180px;height:52px}}

@layer components {
 body.contact-page #main-content { display:block; }
 body.contact-page #contact { margin-top:0; padding-top:clamp(32px,5vw,64px); }
 .qualification-grid #budget-help { display:block; margin-top:8px; font-size:13px; font-weight:400; line-height:1.5; }
 .service-faq summary { min-height:48px; padding-block:16px; }
 .demo-banner a { min-height:44px; font-size:14px; }
 body.theme-airform :where(a,button,input,textarea,select,summary):focus-visible { outline:2px solid #375d72; outline-offset:4px; }
}

@layer components {
 .video-device .screen-view { padding:12px; }
 .video-device .screen-view-bar { min-height:30px; padding-bottom:5px; }
 .video-device .screen-view .monitor-brand { width:100px; height:28px; }
 .video-device .screen-view-content { padding-top:6px; }
 .studio-selector { gap:8px; }
 .studio-selector .studio-live-preview { padding:8px; align-items:stretch; }
 .studio-selector .studio-live-preview > img { display:block; width:100%; height:100%; object-fit:cover; object-position:center; }
 .studio-selector .studio-live-preview > div { display:flex; flex-direction:column; justify-content:center; padding:0; }
 .studio-selector .studio-live-preview h4 { font-size:22px; line-height:1.05; margin:4px 0; }
 .studio-selector .studio-live-preview p { font-size:11px; line-height:1.35; margin:4px 0 6px; }
 .studio-selector .studio-live-preview .screen-view-kicker { font-size:9px; }
 .studio-selector .studio-live-preview a,.studio-selector .studio-live-preview button { font-size:11px; line-height:1.25; padding:4px 0; }
 .studio-selector .studio-live-preview .studio-launch { padding:7px 8px; }
 .studio-selector .studio-project-rail { gap:4px; }
 .studio-selector .studio-project-rail button { padding:5px 6px; font-size:10px; }
}

@layer components {
.case-enquiry {display:flex;align-items:center;justify-content:space-between;gap:28px;padding:28px 0;border-top:1px solid #cbd0d2;margin-top:24px;}
.case-enquiry h4{font-size:24px;margin:10px 0;}
.case-enquiry p{max-width:540px;margin:0;font-size:16px;line-height:1.6;}
.case-enquiry .business-button{flex-shrink:0;max-width:100%;white-space:normal;}
.enquiry-context{grid-column:1/-1;padding:14px 18px;border-left:3px solid #a5c4d8;background:#eef3f6;margin:0;font-size:15px;line-height:1.5;}
.enquiry-context[hidden]{display:none;}
@media(max-width:760px){.case-enquiry{align-items:stretch;flex-direction:column;gap:18px}.case-enquiry .business-button{width:100%;text-align:center}}
}
@layer components {

}
@layer components {
.featured-intro{font-size:16px;line-height:1.6;max-width:760px;margin:24px 0;}
.af-walkthrough{padding-top:60px;padding-bottom:60px;border-top:1px solid #d6dadd;}
.walkthrough-tabs{display:flex;gap:10px;flex-wrap:wrap;margin:26px 0 18px;}
.walkthrough-tabs button{font:inherit;font-size:15px;padding:12px 18px;border:1px solid #aab4ba;background:transparent;border-radius:4px;cursor:pointer;color:#2e2e2e;}
.walkthrough-tabs button[aria-pressed=true]{background:#2e2e2e;color:white;border-color:#2e2e2e;}
.walkthrough-stage{background:#edf1f3;border:1px solid #c9d1d6;border-radius:8px;overflow:hidden;}
.walkthrough-cover{position:relative;display:grid;place-items:center;min-height:320px;text-decoration:none;}
.walkthrough-cover img{display:block;width:100%;height:450px;object-fit:cover;}
.walkthrough-cover .af-button{position:absolute;bottom:28px;box-shadow:0 3px 20px #0002;}
.walkthrough-stage [hidden]{display:none!important;}
.walkthrough-caption{display:flex;gap:32px;align-items:center;justify-content:space-between;padding:24px 0;}
.walkthrough-caption h3{font-size:24px;line-height:1.3;margin:12px 0;}.walkthrough-caption p{max-width:650px;margin:0;font-size:16px;line-height:1.6;}
.walkthrough-note{font-size:14px!important;color:#5c6469;}
.guided-prototype>header.airvo-header,.guided-prototype>.demo-project-bar,.guided-prototype>.demo-capability-note,.guided-prototype>.demo-experience-guide{display:none!important;}.guided-prototype{scroll-padding-top:80px;}
.delivery-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px;margin:30px 0;}.delivery-grid>article>h3{font-size:25px;line-height:1.2;margin:24px 0 12px;}.delivery-grid>article>p{font-size:16px;line-height:1.6;}.delivery-grid a{color:#405e72;font-size:15px;text-underline-offset:4px;}
.delivery-sample{padding:24px;background:#eef2f4;border:1px solid #ccd4d8;min-height:310px;color:#2e2e2e;}.delivery-sample>span{display:block;font-size:12px;letter-spacing:.1em;margin-bottom:25px;}.brand-guidelines>strong{display:block;font:500 46px/1.2 Arial,sans-serif;letter-spacing:-3px;margin-bottom:24px;}.guide-swatches{display:flex;}.guide-swatches span{flex:1;padding:18px 8px;font-size:12px;line-height:1.7;background:#2e2e2e;color:#fff;}.guide-swatches span:nth-child(2){background:#f7f7f5;color:#2e2e2e;}.guide-swatches span:nth-child(3){background:#a5c4d8;color:#2e2e2e;}.brand-guidelines p{font-size:15px;line-height:1.6;}
.page-map>strong{display:block;margin:16px auto;padding:12px;border:1px solid #91a5b2;background:#fff;text-align:center;font-size:17px;}.page-map>div{display:flex;justify-content:space-between;gap:6px;}.page-map>div>span{border:1px solid #b7c4cd;background:#f7f7f5;padding:9px 8px;font-size:14px;}.page-map small{display:block;font-size:13px;line-height:1.5;}.handover-sample h4{font-size:32px;margin:0 0 20px;}.handover-sample ul{padding-left:18px;font-size:15px;line-height:1.8;}
@media(max-width:900px){.delivery-grid{grid-template-columns:1fr}.delivery-sample{min-height:0;max-width:600px;}.walkthrough-caption{flex-direction:column;align-items:stretch}.walkthrough-cover img{height:320px;}}
@media(max-width:760px){.af-walkthrough{padding-top:32px;padding-bottom:32px}.walkthrough-tabs{gap:8px}.walkthrough-tabs button{flex:1;padding:10px 8px;font-size:14px}.walkthrough-cover .af-button{left:14px;right:14px;text-align:center;font-size:15px}.walkthrough-cover img{height:260px}.walkthrough-cover{min-height:260px}.walkthrough-caption{gap:18px}.delivery-grid{gap:32px}}
}

@layer components {
.buying-questions{max-width:1100px}.buying-questions details{border-top:1px solid #cdd3d6;padding:20px 0}.buying-questions summary{font-size:18px;font-weight:600;cursor:pointer;line-height:1.5}.buying-questions details p{max-width:760px;margin:14px 0 0;line-height:1.7}.buying-questions>.business-button{display:inline-flex;margin-top:24px}.enquiry-status:empty{display:none}.enquiry-recovery[hidden]{display:none}.enquiry-recovery{grid-column:1/-1;color:#2e2e2e;text-decoration:underline;padding:12px 0}.enquiry-privacy{grid-column:1/-1;font-size:14px}.enquiry-status:focus{outline:2px solid #527691;outline-offset:5px}.airvo-header nav a[aria-current="page"]{text-decoration:underline;text-underline-offset:6px;text-decoration-thickness:1px} .af-invitation-copy>p{max-width:30em;line-height:1.6}
}

/* Portfolio actions share geometry, with colours taken from each concept identity. */
@layer components {
.work-page .forme-case { --case-action:#283429; --case-action-ink:#f7f6ef; --case-hover:#41563d; }
.work-page .morrow-case { --case-action:#c5b0ed; --case-action-ink:#4a246b; --case-hover:#e7d9f5; }
.work-page .offbeat-case { --case-action:#f3ff77; --case-action-ink:#181818; --case-hover:#e1ed63; }
.work-page .harbour-case { --case-action:#173b36; --case-action-ink:#f5f0e6; --case-hover:#28534c; }
.work-page .meridian-case { --case-action:#101b35; --case-action-ink:#8ff0cf; --case-hover:#243653; }
.work-page .keystone-case { --case-action:#25364d; --case-action-ink:#f3f5f7; --case-hover:#3b506a; }
body.theme-airform.work-page .case-study .business-button {
  display:inline-flex; align-items:center; justify-content:center;
  width:360px; max-width:100%; min-height:52px; box-sizing:border-box;
  padding:14px 20px; border:1px solid var(--case-action); border-radius:4px;
  background:var(--case-action); color:var(--case-action-ink);
  font:500 14px/1.5 Arial,sans-serif; letter-spacing:0; text-align:center;
  white-space:normal; text-decoration:none; filter:none;
  transition:background-color .18s ease,border-color .18s ease;
}
body.theme-airform.work-page .case-study .business-button:hover {
  background:var(--case-hover); border-color:var(--case-hover); color:var(--case-action-ink); filter:none;
}
body.theme-airform.work-page .case-study .business-button:focus-visible {
  outline:2px solid var(--case-action); outline-offset:4px;
}
@media(max-width:760px) {
  body.theme-airform.work-page .case-study .business-button { width:100%; }
}
@media(prefers-reduced-motion:reduce) {
  body.theme-airform.work-page .case-study .business-button { transition:none; }
}
}

/* concept-depth.css */
.depth-section{padding:clamp(38px,6vw,84px) 6%;color:var(--ink,inherit);scroll-margin-top:110px}
.depth-intro{display:grid;grid-template-columns:1fr 1fr;gap:16px 50px;align-items:end;margin-bottom:34px}
.depth-intro>span{grid-column:1/-1;font-size:13px;letter-spacing:.1em}
.depth-intro h2{font-size:clamp(34px,4vw,60px);line-height:1.08;letter-spacing:-.035em;margin:0}
.depth-intro p{font-size:17px;line-height:1.65;margin:0;max-width:580px}
.depth-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}
.depth-cards>article{padding:28px 0;border-top:1px solid currentColor;min-width:0}
.depth-cards h3{font-size:27px;line-height:1.15;margin:18px 0}
.depth-cards p,.depth-cards dd,.depth-table p{font-size:16px;line-height:1.65}
.depth-cards>article>span{font-size:13px;letter-spacing:.09em}
.depth-cards dl{margin:24px 0}.depth-cards dt{font-size:13px;margin-top:14px;opacity:.8}.depth-cards dd{margin:3px 0}
.depth-cards summary,.depth-table summary{cursor:pointer;min-height:44px;padding:12px 0;font-size:16px;font-weight:600}
.depth-cards button,.depth-cards a,.depth-link{display:inline-block;padding:12px 16px;border:1px solid currentColor;color:inherit;background:transparent;font:inherit;text-decoration:none;cursor:pointer;margin-top:16px}
.depth-cards button:hover,.depth-cards a:hover,.depth-link:hover{background:color-mix(in srgb,currentColor 8%,transparent)}
.depth-note{font-size:13px;line-height:1.6;margin-top:24px}
.offbeat-spaces{background:#e0ef95;color:#20251d}.offbeat-spaces h2{max-width:800px}
.harbour-table{background:#e8ece2}.harbour-table h2,.forme-support h2{font-family:Georgia,serif;font-weight:400}
.harbour .menu-item h4{font:inherit;font-size:20px;margin:0;grid-column:1}.harbour .menu-item details{grid-column:1/-1}.harbour .menu-item details summary{font-size:14px;cursor:pointer;padding:8px 0}.harbour .menu-item details p{font-size:15px;max-width:600px}.harbour .menu-course{margin:28px 0 8px;font-family:Georgia,serif;font-size:27px}.harbour .menu-course:first-child{margin-top:0}
.meridian-workflow{background:#e8f0ed}.depth-table{border:1px solid #a7b9b2;margin:30px 0}.depth-table-head{display:flex;justify-content:space-between;gap:16px;padding:18px 24px;background:#193b40;color:white;font-size:14px}.depth-table details{padding:0 24px;border-bottom:1px solid #b9cac1}.depth-table details:last-child{border:0}.depth-table summary{display:flex;justify-content:space-between;gap:20px;padding:22px 0}.depth-table summary b{font-size:13px;font-weight:500}.depth-table details>div{max-width:800px;padding-bottom:20px}
.keystone-process{background:#eee6dc}.forme-support{background:#eeeee7}
.depth-art{display:block;width:100%;height:auto;aspect-ratio:3/2;object-fit:cover;margin:28px 0 38px;border-radius:3px}
@media(max-width:760px){.depth-intro,.depth-cards{grid-template-columns:1fr}.depth-intro{gap:20px}.depth-cards{gap:8px}.depth-cards>article{padding:23px 0}.depth-table summary{display:block}.depth-table summary b{display:block;margin-top:8px}.depth-table-head{display:block}.depth-table-head span{display:block}.depth-table details{padding:0 18px}.depth-section{padding-inline:6%}.depth-intro h2{font-size:38px}}

/* concept-chrome.css */
/* A quieter Air Form layer around each concept website. */
body.project-theme > .airvo-header {
  transition: transform .28s ease, box-shadow .28s ease;
  will-change: transform;
}

body.project-theme > .airvo-header.concept-header-hidden {
  transform: translateY(-105%);
  box-shadow: none;
}

/* The original project guide remains in the markup, while its useful first
   prompt becomes a compact contextual action inside the concept. */
body.project-theme > .demo-project-bar { display: none !important; }

.project-context {
  position: fixed;
  z-index: 90;
  left: max(18px, env(safe-area-inset-left));
  bottom: max(18px, env(safe-area-inset-bottom));
  display: flex;
  align-items: center;
  gap: 10px;
  max-width: calc(100vw - 36px);
  padding: 8px 8px 8px 13px;
  border: 1px solid color-mix(in srgb, var(--ink, #2e2e2e) 25%, transparent);
  border-radius: 999px;
  background: color-mix(in srgb, var(--paper, #f7f7f5) 92%, transparent);
  color: var(--ink, #2e2e2e);
  box-shadow: 0 12px 28px color-mix(in srgb, #000 18%, transparent);
  backdrop-filter: blur(12px);
  -webkit-backdrop-filter: blur(12px);
}

.project-context__label {
  max-width: 16ch;
  overflow: hidden;
  font: 600 10px/1.2 var(--airform-sans, Arial, sans-serif);
  letter-spacing: .1em;
  text-overflow: ellipsis;
  text-transform: uppercase;
  white-space: nowrap;
}

.project-context__action {
  display: inline-flex;
  align-items: center;
  min-height: 36px;
  padding: 9px 13px;
  border-radius: 999px;
  background: var(--ink, #2e2e2e);
  color: var(--paper, #f7f7f5);
  font: 600 12px/1.2 var(--airform-sans, Arial, sans-serif);
  text-decoration: none;
  white-space: nowrap;
}

.project-context__action:hover { filter: brightness(.9); }
.project-context__action:focus-visible { outline: 3px solid var(--focus, #527691); outline-offset: 3px; }

@media (max-width: 760px) {
  body.project-theme > .airvo-header.concept-header-hidden { transform: translateY(-110%); }
  .project-context { gap: 8px; padding: 7px 7px 7px 11px; }
  .project-context__label { max-width: 12ch; font-size: 9px; }
  .project-context__action { min-height: 34px; padding: 8px 11px; font-size: 11px; }
}

@media (prefers-reduced-motion: reduce) {
  body.project-theme > .airvo-header { transition: none; }
}
