/* GroundSchool order / shared order include, 2 November 2026, Revision 5.
   All selectors are local to these components; global includes are unchanged. */
.gso-store, .gso-store *, .gso-page, .gso-page * { box-sizing:border-box; }
.gso-store { color:#203c52; font:400 15px/1.5 -apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif; text-align:left; }
.gso-store :is(h2,h3), html.gs-family .gso-page :is(h2,h3) { color:#123f66; font-family:inherit; text-align:left; background:transparent; }
.gso-store h2 { margin:0 0 10px; font-size:27px; line-height:1.2; letter-spacing:-.02em; }
.gso-store h3 { margin:0 0 10px; font-size:19px; line-height:1.25; letter-spacing:-.01em; }
.gso-store p { margin:0 0 12px; }
.gso-store a { color:#075b91; text-underline-offset:3px; }
.gso-store a:hover { color:#003c66; }
.gso-store :is(a,summary):focus-visible { outline:3px solid #a45500; outline-offset:4px; }
.gso-store [id] { scroll-margin-top:20px; }
html.gs-family .gso-page { padding-top:23px; }
html.gs-family .gso-page > .gsc-jump { order:0; }
html.gs-family .gso-intro { max-width:980px; }
html.gs-family .gso-page .gso-eyebrow, .gso-store .gso-eyebrow { margin:0 0 7px; color:#426d89; font-size:12px; font-weight:800; line-height:1.3; letter-spacing:.075em; text-transform:uppercase; }
html.gs-family .gso-page .gso-lead { margin:13px 0 10px; color:#315b7b; font-size:clamp(20px,2vw,25px); font-weight:600; line-height:1.3; }
html.gs-family .gso-page .gso-platform-section { margin:21px 0 0; padding:18px; }
.gso-platform-grid { display:grid; grid-template-columns:repeat(5,minmax(0,1fr)); gap:9px; }
.gso-platform { display:flex; flex-direction:column; align-items:flex-start; min-width:0; padding:16px 12px 13px; border:1px solid #234f70; border-radius:6px; background:#123f66; color:#fff; }
.gso-platform svg { display:block; width:28px; height:28px; margin-bottom:8px; fill:currentColor; color:#fff; }
html.gs-family .gso-page .gso-platform h3 { margin:0 0 5px; color:#fff; font-size:17px; letter-spacing:0; }
html.gs-family .gso-page .gso-platform p { margin:0 0 14px; color:#e5edf4; font-size:12px; line-height:1.4; }
.gso-platform-mac { background:#2d4256; border-color:#2d4256; }
.gso-platform-android { background:#36672a; border-color:#36672a; }
.gso-platform-controls { display:flex; flex-wrap:wrap; align-items:center; gap:8px; margin-top:auto; }
html.gs-family .gso-page a.gso-action, html.gs-family .gso-page a.gso-action:visited { display:inline-flex; justify-content:center; align-items:center; min-height:35px; padding:7px 9px; border:1px solid #9fb7c9; border-radius:4px; background:#f1f6fa; color:#123f66; font-size:12px; font-weight:700; line-height:1.25; text-decoration:none; }
html.gs-family .gso-page a.gso-action:hover { background:#fff; border-color:#fff; }
html.gs-family .gso-page a.gso-demo, html.gs-family .gso-page a.gso-demo:visited { display:inline-flex; min-height:30px; align-items:center; color:#fff; font-size:12px; font-weight:650; }
html.gs-family .gso-page .gso-platform-note { margin:11px 0 0; color:#4a6275; font-size:13px; }
.gso-order-section { margin:30px 0 0; }
.gso-section-heading { margin-bottom:12px; }
.gso-test-banks { margin:15px 0 22px; border:1px solid #c8d9e6; border-radius:5px; background:#f3f7fa; }
.gso-test-banks > summary { padding:11px 13px; color:#164a70; font-weight:700; cursor:pointer; }
.gso-test-banks > ul { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:7px 28px; margin:0; padding:0 20px 16px 33px; font-size:13px; }
.gso-test-banks li { margin:0; padding:0; }
.gso-group-heading { display:flex; align-items:baseline; justify-content:space-between; gap:12px 24px; flex-wrap:wrap; margin:24px 0 11px; padding-bottom:10px; border-bottom:1px solid #d4e1eb; }
.gso-group-heading h3 { margin:0; font-size:20px; }
.gso-group-heading p { margin:0; color:#597084; font-size:13px; }
.gso-package-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:13px; align-items:stretch; }
.gso-package-grid.gso-flexible { grid-template-columns:repeat(3,minmax(0,1fr)); }
.gso-package { display:flex; flex-direction:column; min-width:0; padding:17px; border:1px solid #c9dbe7; border-radius:7px; background:#fff; box-shadow:0 2px 7px #153e5b06; }
.gso-package-copy { flex:1; }
html.gs-family .gso-page .gso-package h3 { margin:0 0 10px; font-size:19px; line-height:1.25; }
.gso-package p, html.gs-family .gso-page .gso-package p { margin:0 0 11px; font-size:14px; line-height:1.5; }
.gso-package ul { margin:6px 0 13px; padding-left:19px; color:#2a4b63; font-size:14px; }
.gso-package li { margin:4px 0; padding:0; }
.gso-price { display:flex; flex-wrap:wrap; align-items:center; gap:4px 11px; margin-top:6px; padding-top:13px; border-top:1px solid #d9e4ec; }
.gso-price > strong { display:block; color:#123f66; font-size:23px; line-height:1.25; font-weight:750; }
.gso-price > small { color:#5a7183; font-size:11px; line-height:1.35; }
.gso-price .gso-checkout { margin-left:auto; }
.gso-store .gso-checkout a.cssbutton, .gso-store .gso-checkout a.cssbutton:visited { display:inline-flex!important; align-items:center; justify-content:center; width:auto!important; min-width:91px; min-height:36px; height:auto!important; margin:0; padding:8px 12px!important; border:1px solid #174e75!important; border-radius:4px; background:#174e75!important; box-shadow:none!important; color:#fff!important; font:700 13px/1.25 -apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif!important; text-decoration:none!important; text-shadow:none!important; text-transform:capitalize; }
.gso-store .gso-checkout a.cssbutton:hover { background:#25658f!important; border-color:#25658f!important; }
.gso-store .gso-checkout a.cssbutton::before, .gso-store .gso-checkout a.cssbutton::after { display:none!important; }
.gso-store .gso-checkout a.cssbutton .text { display:block!important; height:auto!important; min-height:0!important; margin:0!important; padding:0!important; background:none!important; color:inherit!important; font:inherit!important; }
.gso-sport-pilot { color:#087e7b; font-weight:700; }
.gso-sport-instructor { color:#9b3b7f; font-weight:700; }
.gso-package .gso-alternatives, html.gs-family .gso-page .gso-package .gso-alternatives { padding-top:3px; font-size:13px; }
.gso-military { background:#e7ebed; border-color:#bac5ca; }
.gso-roundel { display:inline-block; max-width:38px; vertical-align:-3px; margin-right:8px; }
.gso-military .gso-price { border-color:#c3cdd2; }
.gso-schools { display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1fr); gap:15px 25px; align-items:center; margin:28px 0 0; padding:19px; border:1px solid #c2d4e2; border-radius:7px; background:#edf4f9; }
.gso-schools h2 { font-size:23px; }
.gso-schools p { margin:0; font-size:14px; }
.gso-schools-links { min-width:0; }
.gso-schools-links .dx-b2b-menu { margin:0; width:auto; max-width:100%; }
.gso-help-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:18px; margin-top:15px; }
.gso-help-grid > div { min-width:0; padding:16px; border-top:3px solid #40799f; background:#f3f7fa; }
html.gs-family .gso-page .gso-help-grid h3 { margin:0 0 9px; font-size:17px; }
html.gs-family .gso-page .gso-help-grid p, .gso-help-grid a { font-size:14px; }
.gso-faq-list { margin-top:15px; }
.gso-faq-item { border-top:1px solid #cfdee8; }
.gso-faq-item:last-child { border-bottom:1px solid #cfdee8; }
.gso-faq-item > summary { padding:13px 4px; color:#164a70; font-size:16px; font-weight:700; line-height:1.4; cursor:pointer; }
.gso-faq-item > summary:hover { color:#086d9f; background:#f5f9fc; }
.gso-faq-answer { padding:0 5px 15px; color:#2e4c61; font-size:14px; }
.gso-faq-answer :is(font,p,ul,li,center) { color:inherit; font:inherit; }
.gso-faq-answer img { max-width:100%; height:auto; width:auto; }
.gso-faq-answer img[src*="registrationprocess"] { width:573px; max-width:100%; height:auto; }
.gso-faq-answer li { margin-bottom:9px; }
.gso-faq-answer ul { padding-left:23px; }
.gso-welcome { margin:30px 0 0; padding:20px; border-radius:6px; background:#f3f7fa; }
html.gs-family .gso-page .gso-welcome h2 { margin-bottom:11px; font-size:23px; }
html.gs-family .gso-page .gso-welcome p { margin-bottom:9px; font-size:14px; }
@media (max-width:1000px) {
 .gso-platform-grid { grid-template-columns:repeat(3,minmax(0,1fr)); }
 .gso-package-grid.gso-flexible { grid-template-columns:repeat(2,minmax(0,1fr)); }
 .gso-package-grid.gso-flexible > :last-child { grid-column:1/-1; }
 .gso-help-grid { grid-template-columns:1fr; gap:12px; }
}
@media (max-width:700px) {
 html.gs-family .gso-page { padding-top:19px; }
 html.gs-family .gso-page .gso-platform-section { padding:13px; }
 .gso-platform-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
 .gso-platform { padding:13px 10px 11px; }
 .gso-platform-grid > :last-child { grid-column:1/-1; }
 .gso-test-banks > ul { grid-template-columns:repeat(2,minmax(0,1fr)); gap:8px 20px; }
 .gso-package-grid, .gso-package-grid.gso-flexible { grid-template-columns:1fr; }
 .gso-package-grid.gso-flexible > :last-child { grid-column:auto; }
 .gso-package { padding:15px; }
 .gso-schools { grid-template-columns:1fr; padding:15px; }
 .gso-price > strong { font-size:22px; }
 .gso-order-section { margin-top:25px; }
 .gso-group-heading { margin-top:23px; }
}
@media (max-width:360px) {
 .gso-platform-grid, .gso-test-banks > ul { grid-template-columns:1fr; }
 .gso-platform-grid > :last-child { grid-column:auto; }
 .gso-price .gso-checkout { margin-left:0; }
}

/* Order-only repair for the shared Purchase & Support component.
   Applies to the visible school panel, download panel and purchase FAQ.
   The .gso-store scope also follows orderinclude.asp when it is reused. */
:is(.gso-page,.gso-store) .dx-b2b-menu {
  background:#123f66!important;
  color:#fff!important;
  border-color:#446e90;
  border-top-color:#edc755;
}
:is(.gso-page,.gso-store) .dx-b2b-menu__heading {
  color:#fff!important;
  background:transparent!important;
}
:is(.gso-page,.gso-store) .dx-b2b-menu__eyebrow {
  color:#cce0ef!important;
  background:transparent!important;
}
:is(.gso-page,.gso-store) .dx-b2b-menu__title {
  color:#fff!important;
  background:transparent!important;
}
:is(.gso-page,.gso-store) .dx-b2b-menu a.dx-b2b-action,
:is(.gso-page,.gso-store) .dx-b2b-menu a.dx-b2b-action:link,
:is(.gso-page,.gso-store) .dx-b2b-menu a.dx-b2b-action:visited {
  --gso-support-bg:#dcecf8;
  --gso-support-ink:#133d5c;
  background:var(--gso-support-bg)!important;
  color:var(--gso-support-ink)!important;
  border:1px solid #b6d0e2!important;
  border-radius:5px;
  min-height:44px;
  padding:10px 12px;
  font-weight:700;
  line-height:1.35;
  text-decoration:none!important;
  text-shadow:none!important;
  box-shadow:none;
  transform:none;
}
:is(.gso-page,.gso-store) .dx-b2b-menu a.dx-b2b-action[href*="sitelicense.asp"] {
  --gso-support-bg:#d8eee7;
  --gso-support-ink:#174b41;
}
:is(.gso-page,.gso-store) .dx-b2b-menu a.dx-b2b-action[href*="gift.asp"] {
  --gso-support-bg:#ffe1a0;
  --gso-support-ink:#533b13;
}
:is(.gso-page,.gso-store) .dx-b2b-menu a.dx-b2b-action[href="/FAQ"] {
  --gso-support-bg:#e5e9f1;
  --gso-support-ink:#283f59;
}
/* Defeat legacy link, font and icon colors inside the retained component. */
:is(.gso-page,.gso-store) .dx-b2b-menu a.dx-b2b-action *,
:is(.gso-page,.gso-store) .dx-b2b-menu a.dx-b2b-action::before,
:is(.gso-page,.gso-store) .dx-b2b-menu a.dx-b2b-action::after {
  color:inherit!important;
  background-color:transparent!important;
  text-shadow:none!important;
}
:is(.gso-page,.gso-store) .dx-b2b-menu a.dx-b2b-action svg {
  fill:currentColor;
}
:is(.gso-page,.gso-store) .dx-b2b-menu a.dx-b2b-action:is(:hover,:focus) {
  background:#fff!important;
  color:#123f66!important;
  border-color:#fff!important;
  text-decoration:none!important;
  box-shadow:none;
  transform:none;
}
:is(.gso-page,.gso-store) .dx-b2b-menu a.dx-b2b-action:focus-visible {
  outline:3px solid #ffca58;
  outline-offset:3px;
}
:is(.gso-page,.gso-store) .dx-b2b-menu a.dx-b2b-action:active {
  background:#c4dff1!important;
  color:#123f66!important;
  border-color:#c4dff1!important;
  transform:none;
}

/* Original character icons and selector-colored test-bank badges. */
.gso-package-heading { display:flex;align-items:center;gap:12px;margin-bottom:13px;min-width:0; }
.gso-store .gso-package-heading h3,
html.gs-family .gso-page .gso-package-heading h3 { margin:0;flex:1;min-width:0; }
.gso-personas { display:flex;align-items:center;gap:3px;flex:none; }
.gso-personas img { display:block;width:48px;height:48px;max-width:48px;flex:none; }
.gso-personas-multiple { gap:1px; }
.gso-personas-multiple img { width:36px;height:36px;max-width:36px; }
.gso-bank-strip { margin:0 0 14px; }
.gso-store .gso-bank-strip .gso-bank-caption { margin:0 0 7px;font-size:11px;font-weight:650;line-height:1.3;color:#587083; }
.gso-bank-badges { display:flex;flex-wrap:wrap;align-items:center;gap:6px; }
.gso-store a.gso-bank-chip,
html.gs-family .gso-store a.gso-bank-chip { display:inline-flex;align-items:center;justify-content:center;min-height:29px;padding:5px 10px;border:1px solid #123858;border-radius:4px;background:linear-gradient(#285581,#1b436d);box-shadow:inset 0 1px 0 #ffffff35,0 1px 2px #173f6012;color:#fff!important;font-size:12px;font-weight:750;line-height:1.35;text-decoration:none!important;text-align:center; }
.gso-store a.gso-chip-airline,
html.gs-family .gso-store a.gso-chip-airline { background:linear-gradient(#214e7b,#123b6b);border-color:#0c3159; }
.gso-store a.gso-chip-mechanic,
html.gs-family .gso-store a.gso-chip-mechanic { background:linear-gradient(155deg,#fafcfd 0%,#d8e0e7 43%,#f0f3f6 58%,#cdd6de 100%);border-color:#a8b6c2;color:#314451!important;box-shadow:inset 0 1px 0 #fff,0 1px 2px #173f6012; }
.gso-store a.gso-chip-drone,
html.gs-family .gso-store a.gso-chip-drone { background:linear-gradient(#8b6146,#765039);border-color:#61402c; }
.gso-store a.gso-chip-rigger,
html.gs-family .gso-store a.gso-chip-rigger { background:linear-gradient(#92354e,#77243f);border-color:#651c32; }
.gso-store a.gso-chip-sport,
html.gs-family .gso-store a.gso-chip-sport { background:linear-gradient(#087d80,#086f74);border-color:#075c62; }
.gso-store a.gso-chip-sport-instructor,
html.gs-family .gso-store a.gso-chip-sport-instructor { background:linear-gradient(#a53b82,#942b72);border-color:#7b205e; }
.gso-store a.gso-chip-military,
html.gs-family .gso-store a.gso-chip-military { background:linear-gradient(#eff2f4,#d8e0e4);border-color:#a0afb8;color:#2f4553!important; }
.gso-store a.gso-bank-chip:hover,
html.gs-family .gso-store a.gso-bank-chip:hover { filter:brightness(1.12);box-shadow:inset 0 1px 0 #ffffff55,0 1px 3px #173f6033;text-decoration:none!important; }
.gso-store a.gso-bank-chip:focus-visible { outline:3px solid #a45500;outline-offset:3px; }
.gso-any-badges { gap:7px; }
.gso-any-token { display:inline-flex;align-items:center;justify-content:center;min-width:57px;min-height:31px;padding:4px 10px;border:2px dashed #6b879c;border-radius:4px;background:#f8fbfd;color:#183e5b;font-size:13px;font-weight:800;line-height:1.2;letter-spacing:.03em; }
.gso-choice-plus { color:#6a8396;font-size:20px;font-weight:500;line-height:1; }
.gso-bank-directory { display:flex;flex-wrap:wrap;gap:8px;padding:0 14px 15px; }

/* Every package checkout visibly identifies Windows, including the dual price. */
.gso-windows-heading { display:flex;align-items:center;gap:8px; }
.gso-windows-heading img { width:24px;height:24px; }
.gso-price { gap:11px; }
.gso-price-amount { min-width:0; }
.gso-price-amount > strong { display:block;color:#123f66;font-size:23px;line-height:1.25;font-weight:750; }
.gso-price-amount > small { display:block;margin-top:4px;color:#5a7183;font-size:11px;line-height:1.35; }
.gso-store .gso-checkout a.cssbutton.gso-windows-buy { gap:9px;min-height:46px;min-width:147px;padding:8px 11px!important;text-transform:none; }
.gso-store .gso-checkout a.cssbutton.gso-windows-buy::before { content:"";display:block!important;position:static;width:25px;height:25px;flex:0 0 25px;margin:0;border:0;border-radius:3px;background:#f1f7fb url('order-r5/windows-pc.svg') center/22px 22px no-repeat!important; }
.gso-store .gso-checkout a.cssbutton.gso-windows-buy .text { flex:0 0 auto;width:auto!important;min-width:max-content;max-width:none;white-space:nowrap;text-align:left; }
.gso-store .gso-checkout a.cssbutton.gso-windows-buy .text sub { display:inline-block;position:static;vertical-align:baseline;font-size:11px;font-weight:550;line-height:1.2;color:#e1eef8!important; }
@media(max-width:700px) {
 .gso-personas-multiple img { width:40px;height:40px;max-width:40px; }
 .gso-price-amount > strong { font-size:22px; }
}
@media(max-width:380px) {
 .gso-personas-multiple img { width:32px;height:32px;max-width:32px; }
 .gso-store .gso-checkout { margin-left:0; }
}
