html,body{margin:0;background:#F7F6F2}body{color:#2A384C}

#airline-role-project {
  --page-paper:#F7F6F2; --page-ink:#2A384C; --page-soft:#6E7783;
  background:var(--page-paper); color:var(--page-ink); color-scheme:light;
  font-family:'Notebook Hand','Segoe Print',cursive; font-weight:400;
  font-synthesis:none; font-feature-settings:'liga' 1,'calt' 1,'kern' 1,'dlig' 0;
  font-kerning:normal; line-height:1.45;
}
#airline-role-project :where(header,nav,main,section,article,div,span,a,h1,h2,h3,p,button,footer) { font-family:inherit; font-synthesis:none; }
#airline-role-project * { box-sizing:border-box; }
#airline-role-project a { color:inherit; text-decoration:none; }
#airline-role-project a:hover { text-decoration:underline; text-underline-offset:5px; text-decoration-thickness:1px; }
#airline-role-project .project-main { width:calc(100% - 80px); max-width:1056px; margin:0 auto; padding-top:32px; }
#airline-role-project .project-opening { border-top:1px solid var(--page-ink); padding:35px 0 58px; display:grid; grid-template-columns:minmax(0,.72fr) minmax(0,1.28fr); gap:48px; }
#airline-role-project .project-title { margin:0 0 25px; font-size:62px; font-weight:400; line-height:1.15; letter-spacing:-.8px; }
#airline-role-project .project-intro { margin:0; font-size:21px; line-height:1.55; max-width:365px; }
#airline-role-project .project-follow { display:inline-block; margin-top:37px; font-size:17px; text-decoration:underline; text-underline-offset:6px; text-decoration-thickness:1px; }
#airline-role-project .problem-copy { padding-top:3px; min-width:0; }
#airline-role-project .problem-copy h2 { margin:0; font-size:35px; line-height:1.25; font-weight:400; text-wrap:balance; -webkit-text-stroke:.25px currentColor; }
#airline-role-project .section-visual { grid-column:1 / -1; width:100%; min-width:0; }
#airline-role-project .department-visual { max-width:720px; margin:0 auto; }
#airline-role-project .employee-pool { --pool-ink:#242424; max-width:640px; margin:0 auto; }
#airline-role-project .pool-cloud { position:relative; width:100%; aspect-ratio:2; }
#airline-role-project .pool-dot { position:absolute; left:var(--pool-x); top:var(--pool-y); width:var(--pool-size); aspect-ratio:var(--pool-shape); background:var(--pool-ink); border-radius:43% 55% 48% 51% / 49% 44% 56% 51%; transform:translate(-50%,-50%) rotate(var(--pool-turn)); }
#airline-role-project .pool-dot:nth-child(3n) { border-radius:52% 41% 54% 43% / 43% 56% 45% 54%; }
#airline-role-project .pool-dot:nth-child(4n) { border-radius:47% 54% 43% 55% / 54% 45% 53% 44%; }
#airline-role-project .pool-caption { margin:16px 0 0; text-align:center; color:var(--page-soft); font-size:16px; }
#airline-role-project #airline-department-grid .airline-preview { padding:0; }
#airline-role-project #airline-department-grid .airline-paper { width:100%; padding:0; background-image:none; border-radius:0; }
#airline-role-project #airline-department-grid h2 { font-size:35px; line-height:1.25; -webkit-text-stroke:.25px currentColor; }
#airline-role-project #airline-department-grid .airline-head { margin-bottom:20px; }
#airline-role-project #airline-department-grid .department-grid { margin-top:30px; gap:28px 9px; }
#airline-role-project #airline-department-grid .department-name { font-size:16px; }
#airline-role-project #airline-department-grid .airline-foot { margin-top:28px; gap:8px 18px; }
#airline-role-project #airline-department-grid .foot-actions { gap:14px; }
#airline-role-project .project-context { display:grid; grid-template-columns:minmax(0,.72fr) minmax(0,1.28fr); gap:48px; border-top:1px solid color-mix(in srgb,var(--page-ink) 32%,transparent); padding:33px 0 54px; scroll-margin-top:25px; }
#airline-role-project .project-section-title { margin:0; font-size:30px; line-height:1.35; font-weight:400; }
#airline-role-project .context-copy { max-width:620px; }
#airline-role-project .context-copy p { margin:0; font-size:20px; line-height:1.55; }
#airline-role-project .context-copy p + p { margin-top:20px; }
#airline-role-project .role-formation { --role-coral:#B97870; --role-blue:#6D8EA5; margin:0; }
#airline-role-project .role-flow { display:grid; grid-template-columns:minmax(240px,1.2fr) 80px minmax(140px,.7fr) 70px minmax(150px,.7fr); align-items:start; column-gap:16px; }
#airline-role-project .role-inputs { grid-column:1; grid-row:1; display:grid; gap:18px; }
#airline-role-project .role-department { min-width:0; width:100%; max-width:300px; }
#airline-role-project .role-department h3 { margin:0; text-align:center; font-size:22px; line-height:1.4; font-weight:400; }
#airline-role-project .role-avatar { display:grid; place-items:center; width:45px; height:45px; margin:0 auto 12px; border-radius:45% 53% 46% 51%; background:color-mix(in srgb,var(--dot-color) 27%,var(--page-paper)); color:var(--page-ink); transform:rotate(-3deg); }
#airline-role-project .role-avatar .lucide { width:25px !important; height:25px !important; stroke-width:1.35; filter:url(#airline-pen-line); overflow:visible; }
#airline-role-project .role-department[data-department='inflight'] .lucide { transform:rotate(2deg) translateX(-.2px); }
#airline-role-project .role-department[data-department='flight-ops'] .role-avatar { border-radius:52% 45% 54% 46%; transform:rotate(4deg); }
#airline-role-project .role-department[data-department='flight-ops'] .lucide { transform:rotate(-5deg) translateY(-.3px); }
#airline-role-project .role-cluster { display:block; width:100%; max-width:300px; height:auto; overflow:visible; color:var(--page-ink); }
#airline-role-project .role-cluster text { fill:currentColor; font-family:inherit; font-size:22px; font-weight:400; }
#airline-role-project .role-cluster .job-boundary, #airline-role-project .role-cluster .job-leader { fill:none; stroke:currentColor; stroke-width:1.5; stroke-linecap:round; stroke-linejoin:round; }
#airline-role-project .role-cluster .job-boundary { stroke-width:1.8; }
#airline-role-project .role-cluster .department-dots { fill:var(--dot-color); }
#airline-role-project .flow-arrow { display:block; width:100%; height:35px; color:var(--page-ink); fill:none; stroke:currentColor; stroke-width:1.7; stroke-linecap:round; stroke-linejoin:round; }
#airline-role-project .input-role-arrow { grid-column:2; grid-row:1; margin-top:159px; }
#airline-role-project .role-result { grid-column:3; grid-row:1; margin-top:145px; text-align:center; }
#airline-role-project .role-label { display:inline-block; margin:0; padding:0 2px 7px; font-size:36px; line-height:1.2; border-bottom:1.5px solid var(--page-ink); transform:rotate(-1deg); }
#airline-role-project .role-rule { display:block; margin-top:14px; font-size:15px; color:var(--page-soft); }
#airline-role-project .role-permission-arrow { grid-column:4; grid-row:1; margin-top:159px; }
#airline-role-project .role-permissions { grid-column:5; grid-row:1; margin-top:110px; }
#airline-role-project .role-permissions h3 { margin:0 0 22px; font-size:20px; line-height:1.3; font-weight:400; }
#airline-role-project .permission-branches { position:relative; display:grid; gap:29px; padding-left:35px; font-size:25px; line-height:1.2; }
#airline-role-project .permission-branches::before { content:''; position:absolute; left:0; top:15px; bottom:15px; width:20px; border-left:1.5px solid var(--page-ink); border-top:1.5px solid var(--page-ink); border-bottom:1.5px solid var(--page-ink); border-radius:3px 0 0 3px; }
#airline-role-project .permission-branches span { position:relative; }
#airline-role-project .permission-branches span::before { content:''; position:absolute; left:-19px; top:11px; width:7px; height:7px; border-radius:44% 54% 48% 51%; background:var(--page-ink); }
#airline-role-project .role-exceptions { grid-column:3 / -1; grid-row:1; align-self:end; display:flex; align-items:center; gap:22px; padding-bottom:60px; }
#airline-role-project .exception-connectors { flex:0 1 180px; width:180px; height:auto; overflow:visible; color:var(--page-ink); }
#airline-role-project .exception-connectors path { fill:none; stroke:currentColor; stroke-width:1.5; stroke-dasharray:6 7; stroke-linecap:round; }
#airline-role-project .exception-connectors .arrow-tip { stroke-dasharray:none; }
#airline-role-project .exception-dot { fill:currentColor; }
#airline-role-project .exception-label { font-size:25px; white-space:nowrap; }
#airline-role-project .exception-owner { display:block; max-width:170px; margin-top:7px; color:var(--page-soft); font-size:15px; line-height:1.4; white-space:normal; }
#airline-role-project .role-caption { margin-top:22px; text-align:center; color:var(--page-soft); font-size:15px; }
@media(max-width:820px) {
  #airline-role-project .role-flow { grid-template-columns:1fr; gap:20px; justify-items:center; }
  #airline-role-project .role-inputs { grid-column:1; grid-row:auto; grid-template-columns:repeat(2,minmax(0,1fr)); width:100%; gap:15px; }
  #airline-role-project .role-department h3 { font-size:20px; }
  #airline-role-project .flow-arrow { width:56px; height:35px; transform:rotate(90deg); }
  #airline-role-project .input-role-arrow, #airline-role-project .role-result, #airline-role-project .role-permission-arrow, #airline-role-project .role-permissions, #airline-role-project .role-exceptions { grid-column:1; grid-row:auto; margin-top:0; }
  #airline-role-project .role-rule { margin-top:10px; }
  #airline-role-project .role-permissions { text-align:center; }
  #airline-role-project .permission-branches { text-align:left; }
  #airline-role-project .role-exceptions { justify-content:center; width:100%; padding:18px 0 0; gap:12px; }
  #airline-role-project .exception-connectors { max-width:150px; }
  #airline-role-project .exception-label { font-size:22px; }
}
#airline-role-project .project-footer { border-top:1px solid color-mix(in srgb,var(--page-ink) 32%,transparent); padding:23px 0 29px; display:flex; justify-content:space-between; flex-wrap:wrap; gap:14px; font-size:16px; }
@media(max-width:1050px) and (min-width:861px) {
  #airline-role-project .project-main { width:calc(100% - 64px); }
  #airline-role-project .project-opening, #airline-role-project .project-context { grid-template-columns:minmax(0,.68fr) minmax(0,1.32fr); gap:35px; }
  #airline-role-project .project-title { font-size:54px; }
  #airline-role-project .problem-copy h2 { font-size:32px; }
  #airline-role-project .project-intro { font-size:20px; }
  #airline-role-project #airline-department-grid h2 { font-size:32px; }
  #airline-role-project #airline-department-grid .department-name { font-size:15px; }
}
@media(max-width:860px) {
  #airline-role-project .project-main { width:calc(100% - 48px); }
  #airline-role-project .project-opening, #airline-role-project .project-context { grid-template-columns:1fr; gap:42px; }
  #airline-role-project .project-opening { padding-top:29px; }
  #airline-role-project .project-title { font-size:54px; }
  #airline-role-project .project-intro { max-width:580px; }
  #airline-role-project .project-follow { margin-top:22px; }
  #airline-role-project .project-context { gap:23px; }
}
@media(max-width:620px) {
  #airline-role-project .project-nav { grid-template-columns:60px 110px 60px; gap:26px; }
  #airline-role-project .project-main { width:calc(100% - 36px); }
  #airline-role-project .project-title { font-size:48px; }
  #airline-role-project .problem-copy h2 { font-size:32px; }
  #airline-role-project #airline-department-grid h2 { font-size:32px; }
  #airline-role-project #airline-department-grid .department-grid { gap:28px 17px; }
  #airline-role-project .project-intro, #airline-role-project .context-copy p { font-size:19px; }
  #airline-role-project .project-section-title { font-size:28px; }
}
@media(max-width:410px) {
  #airline-role-project .project-nav { grid-template-columns:42px 110px 42px; gap:24px; }
  #airline-role-project .project-main { width:calc(100% - 30px); }
  #airline-role-project .project-title { font-size:43px; }
  #airline-role-project .problem-copy h2 { font-size:29px; }
  #airline-role-project #airline-department-grid h2 { font-size:29px; }
}



#airline-department-grid { color-scheme: light; }
#airline-department-grid .airline-preview { padding: 24px 12px; }
#airline-department-grid .airline-paper {
  --air-paper: #F7F6F2;
  --air-ink: #2A384C;
  --air-soft: #6E7783;
  --air-if: #B97870;
  --air-fo: #6D8EA5;
  --air-noc: #7D927A;
  --air-go: #BE9A5A;
  --air-hq: #9481AA;
  width: min(100%,700px);
  margin: 0 auto;
  padding: 31px 30px 26px;
  box-sizing: border-box;
  background-color: var(--air-paper);
  background-image: radial-gradient(color-mix(in srgb,var(--air-ink) 8%,transparent) .6px,transparent .6px);
  background-size: 20px 20px;
  color: var(--air-ink);
  font-family: 'Notebook Hand', 'Segoe Print', cursive;
  font-synthesis: none;
  font-feature-settings: 'liga' 1, 'calt' 1, 'kern' 1, 'dlig' 0;
  font-kerning: normal;
  font-variant-ligatures: common-ligatures contextual;
  font-weight: 400;
  line-height: 1.45;
  border-radius: 2px 5px 3px 1px;
}
#airline-department-grid .airline-paper :where(div,span,h2,h3,p,button) { font-family: inherit; font-weight: 400; font-synthesis: none; }
#airline-department-grid .airline-head { margin-bottom:19px; }
#airline-department-grid h2 { margin:0; font-size:42px; line-height:1.25; color:var(--air-ink); text-wrap:balance; -webkit-text-stroke:.35px currentColor; }
#airline-department-grid .airline-subtitle { font-size:16px; color:var(--air-soft); }
#airline-department-grid .department-grid { display:grid; grid-template-columns:repeat(5,minmax(0,1fr)); gap:28px 10px; margin-top:35px; }
#airline-department-grid .department { min-width:0; text-align:center; }
#airline-department-grid .department-select {
  display:flex; flex-direction:column; align-items:center; gap:12px;
  width:100%; padding:0 2px 9px; border:none; background:transparent;
  color:var(--air-ink); font:inherit;
}
#airline-department-grid .department-avatar {
  display:grid; place-items:center; width:45px; height:45px;
  border-radius:45% 53% 46% 51%;
  background:color-mix(in srgb,var(--dept-colour) 27%,var(--air-paper));
  color:var(--air-ink); font-size:18px; transform:rotate(-3deg);
}
#airline-department-grid .department-avatar .lucide {
  width:25px !important; height:25px !important; stroke-width:1.35;
  filter:url(#airline-pen-line);
  overflow:visible;
}
#airline-department-grid .department[data-department='inflight'] .lucide { transform:rotate(2deg) translateX(-.2px); }
#airline-department-grid .department[data-department='flight-ops'] .lucide { transform:rotate(-5deg) translateY(-.3px); }
#airline-department-grid .department[data-department='noc'] .lucide { transform:rotate(3deg); }
#airline-department-grid .department[data-department='ground-ops'] .lucide { transform:rotate(-3deg) translateX(.3px); }
#airline-department-grid .department[data-department='hq'] .lucide { transform:rotate(2.5deg); }
#airline-department-grid .pen-filter { position:absolute; width:0; height:0; overflow:hidden; }
#airline-department-grid .department:nth-child(2n) .department-avatar { border-radius:52% 45% 54% 46%; transform:rotate(4deg); }
#airline-department-grid .department-name { display:flex; align-items:flex-start; justify-content:center; min-height:46px; font-size:17px; line-height:1.3; }
#airline-department-grid .department-select[aria-pressed='true'] .department-name { text-decoration:underline; text-decoration-thickness:1px; text-underline-offset:5px; }
#airline-department-grid .people-grid { display:grid; grid-template-columns:repeat(4,16px); grid-auto-rows:16px; gap:7px; justify-content:center; align-content:start; min-height:156px; margin:12px 0 0; }
#airline-department-grid .dot-cell { display:grid; place-items:center; width:16px; height:16px; }
#airline-department-grid .is-preparing .dot-cell { visibility:hidden; }
#airline-department-grid .person-dot { display:block; width:14px; height:14px; background:var(--dept-colour); border-radius:43% 55% 48% 51% / 49% 44% 56% 51%; transform:translate(.5px,.2px) rotate(-4deg); }
#airline-department-grid .dot-cell:nth-child(2n) .person-dot { width:13.5px; height:14.5px; border-radius:53% 46% 55% 44% / 45% 53% 47% 55%; transform:translate(-1.3px,.7px) rotate(9deg); }
#airline-department-grid .dot-cell:nth-child(3n) .person-dot { border-radius:52% 41% 54% 43% / 43% 56% 45% 54%; transform:translate(1.5px,-.6px) rotate(15deg); }
#airline-department-grid .dot-cell:nth-child(4n) .person-dot { width:14.5px; height:13.5px; border-radius:47% 54% 43% 55% / 54% 45% 53% 44%; transform:translate(-.8px,-1.2px) rotate(-11deg); }
#airline-department-grid .dot-cell:nth-child(5n) .person-dot { border-radius:56% 43% 51% 46% / 47% 55% 44% 52%; transform:translate(.4px,1.1px) rotate(22deg); }
#airline-department-grid .dot-cell:nth-child(7n) .person-dot { width:14px; height:14px; border-radius:44% 54% 46% 57% / 55% 43% 54% 45%; transform:translate(-1.6px,.4px) rotate(-19deg); }
#airline-department-grid .department-total { margin-top:9px; font-size:16px; color:var(--air-soft); }
#airline-department-grid .airline-foot { display:flex; justify-content:space-between; flex-wrap:wrap; gap:12px; margin-top:35px; color:var(--air-soft); font-size:13px; }
#airline-department-grid .foot-actions { display:flex; align-items:baseline; flex-wrap:wrap; gap:17px; }
#airline-department-grid .replay-dots { font:inherit; color:var(--air-ink); background:none; border:0; padding:3px 0; text-decoration:underline; text-decoration-thickness:1px; text-underline-offset:4px; }
#airline-department-grid .department[data-active='false'] .person-dot { opacity:.24; }
#airline-department-grid .person-dot { transition:opacity .15s ease; }
@media(max-width:620px) {
  #airline-department-grid .department-grid { grid-template-columns:repeat(3,minmax(0,1fr)); gap:31px 12px; }
  #airline-department-grid .airline-paper { padding:28px 24px 25px; }
  #airline-department-grid h2 { font-size:36px; }
}
@media(max-width:410px) {
  #airline-department-grid .airline-preview { padding:16px 6px; }
  #airline-department-grid .airline-paper { padding:25px 20px; }
  #airline-department-grid h2 { font-size:32px; }
  #airline-department-grid .department-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
  #airline-department-grid .airline-foot { flex-direction:column; gap:6px; }
}
@media(prefers-reduced-motion:reduce) { #airline-department-grid .person-dot { transition:none; } #airline-department-grid .is-preparing .dot-cell { visibility:visible; } }

#airline-role-project .direction-nav{background:var(--page-paper);color:var(--page-ink)}
