/* Madhi Studio — service shared core (dark only) */
:root{--bg: var(--brand-aqua);
  --text: var(--brand-deep);
  --muted: color-mix(in srgb, var(--brand-deep) 58%, transparent);
  --soft-muted: color-mix(in srgb, var(--brand-deep) 45%, transparent);

  --accent: var(--brand-gold);

  --gold: var(--brand-gold);
  --gold-soft: color-mix(in srgb, var(--brand-gold) 18%, transparent);
  --gold-medium: color-mix(in srgb, var(--brand-gold) 45%, transparent);
  --gold-shadow: color-mix(in srgb, var(--brand-gold) 12%, transparent);
  --gold-bg: var(--brand-aqua);

  --card: var(--brand-cyan);
  --border: color-mix(in srgb, var(--brand-deep) 5%, transparent);
  --warm: var(--brand-gold);

  --hero-gap: 50px;
  --section-gap: 100px;
  --component-gap: 15px;

  --madhi-scroll-track-width: 13px;
  --madhi-scroll-thumb-width: 6px;
  --madhi-scroll-thumb-height: 31vh;
  --madhi-scroll-thumb-min-height: 90px;
  --madhi-scroll-thumb-max-height: 230px;
  --madhi-scroll-thumb-offset: 3.5px;}
*{margin: 0;
  padding: 0;
  box-sizing: border-box;
  font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Arial;}
html{scroll-behavior: smooth;
  scrollbar-width: auto;
  scrollbar-color: var(--accent) color-mix(in srgb, var(--brand-gold) 18%, transparent);}
html::-webkit-scrollbar{width: 14px;}
html::-webkit-scrollbar-track{background: color-mix(in srgb, var(--brand-gold) 18%, transparent);}
html::-webkit-scrollbar-thumb{background: var(--accent);
  border-radius: 999px;}
body{background: var(--bg);
  color: var(--text);
  line-height: 1.5;
  min-height: 100vh;
  display: flex;
  flex-direction: column;}
main{flex: 1 0 auto;}
a{text-decoration: none;
  color: inherit;}
.container{max-width: 1540px;
  margin: 0 auto;
  padding: 0 24px;}
.page-section{padding: 51px 0 40px;}
.page-section .page-title{margin: 0 0 18px;
  font-weight: 600;}
footer{padding: 18px 32px;
  min-height: 58px;
  text-align: center;
  font-size: 13px;
  color: var(--muted);
  border-top: 1px solid var(--border);}
footer a{color: inherit;}
footer a:hover{color: var(--brand-deep);}
.footer-inner{display: flex;
  flex-direction: column;
  align-items: center;
  gap: 10px;
  color: var(--muted);}
.footer-main{color: var(--muted);}
.footer-main a{color: inherit;}
.footer-site-links{display: flex;
  align-items: center;
  justify-content: center;
  flex-wrap: wrap;
  gap: 0;
  color: var(--muted);
  font-size: 13px;}
.footer-site-link{width: 210px;
  min-width: 210px;
  max-width: 210px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  color: inherit;
  text-align: center;
  white-space: nowrap;}
.footer-site-link:hover{color: var(--brand-deep);}
.footer-divider{width: 1px;
  height: 14px;
  background: currentColor;
  opacity: 0.45;
  margin: 0 10px;}
#site-footer{position: relative;
  z-index: 20;
  margin-top: auto;}
#site-footer footer, #site-footer .footer-inner, #site-footer .footer-site-links, #site-footer a{position: relative;
  z-index: 30;}
#site-footer a{pointer-events: auto;}
#site-footer::before, #site-footer::after, footer::before, footer::after{pointer-events: none;}
html{scrollbar-width: auto !important;
  scrollbar-color: var(--accent) color-mix(in srgb, var(--brand-gold) 18%, transparent);}
html::-webkit-scrollbar{width: 14px !important;}
html::-webkit-scrollbar-track{background: color-mix(in srgb, var(--brand-gold) 18%, transparent);}
html::-webkit-scrollbar-thumb{background: var(--accent);
  border-radius: 999px !important;}
.nav-item:hover > a[href="aviation.html"]{font-style: italic;
  font-weight: 400;}
.nav-item{position: relative;}
.nav-item::after{content: "";
  position: absolute;
  left: -16px;
  right: -16px;
  top: 100%;
  height: 24px;
  z-index: 1;}
.dropdown{position: absolute;
  top: 100%;
  left: 0;
  transform: translateY(14px);
  width: max-content;
  min-width: auto;
  background: color-mix(in srgb, var(--brand-aqua) 96%, transparent);
  backdrop-filter: blur(16px);
  border: 1px solid var(--border);
  border-radius: 14px;
  padding: 8px 6px;
  box-shadow: 0 20px 40px color-mix(in srgb, var(--brand-deep) 8%, transparent);
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
  z-index: 2;
  transition:
    opacity 0.22s ease 0.12s,
    transform 0.22s ease 0.12s,
    visibility 0s linear 0.28s;}
.nav-item:hover .dropdown{opacity: 1;
  visibility: visible;
  pointer-events: auto;
  transform: translateY(8px);
  transition-delay: 0s;}
.dropdown a{display: flex;
  align-items: center;
  justify-content: flex-start;
  width: fit-content;
  margin: 0;
  padding: 6px 10px;
  border-radius: 999px;
  border: 2px solid transparent;
  font-size: 13px;
  line-height: 1.25;
  color: var(--muted);
  white-space: nowrap;
  text-align: left;
  position: relative;}
.dropdown-section-label{display: flex;
  align-items: center;
  width: fit-content;
  margin: 0;
  padding: 6px 10px;
  color: var(--brand-deep);
  font-size: 13px;
  line-height: 1.25;
  font-style: italic;
  font-weight: 400;
  white-space: nowrap;}
.about-dropdown{left: 0;
  right: auto;}
.about-dropdown a{justify-content: flex-start;
  text-align: left;
  margin-left: 0;}
.about-dropdown .about-divider{width: 82%;
  margin: 4px auto;}
.about-dropdown .partnerships-link{font-style: italic;}
.kids-dropdown{left: auto;
  right: 0;}
.kids-dropdown a, .kids-dropdown .dropdown-section-label{justify-content: flex-end;
  text-align: right;
  margin-left: auto;}
.kids-dropdown .kids-divider{width: 82%;
  margin: 4px 0 4px auto;}
.dropdown a + a{margin-top: 0;}
.dropdown a:hover{background: transparent;
  border-color: transparent;
  color: var(--brand-deep);}
.dropdown a::after{content: "";
  position: absolute;
  left: 8px;
  right: 8px;
  bottom: 2px;
  height: 2px;
  background: var(--accent);
  opacity: 0;
  transform: none;
  transition: opacity 0.14s ease;}
.dropdown a:hover::after{opacity: 1;
  transform: none;}
.aviation-dropdown a::after{background: var(--gold);}
.aviation-dropdown a.aviation-section-link::after{background: var(--gold);}
.dropdown-divider{display: block;
  width: 82%;
  height: 1px;
  background: var(--border);
  margin: 6px auto;}
.photos-dropdown, .content-dropdown, .design-dropdown, .workshop-dropdown, .shop-dropdown, .kids-dropdown{min-width: max-content;}
.about-dropdown{min-width: max-content;}
.nav-item > a[href="aviation.html"]{color: var(--muted);
  font-style: italic;
  font-weight: 400;}
.nav-item > a[href="aviation.html"]:hover{font-style: italic;
  font-weight: 400;}
.nav-item > a[href="aviation.html"].active{font-size: 14px;
  font-style: italic;
  font-weight: 400;
  padding: 4px 8px;
  border-radius: 999px;}
.nav-item > a[href="aviation.html"].active:hover{font-style: italic;
  font-weight: 400;}
.aviation-dropdown{min-width: max-content;
  width: max-content;
  display: grid;
  grid-template-columns: repeat(4, max-content);
  column-gap: 10px;
  row-gap: 0;
  padding: 8px 6px;}
.aviation-column{display: flex;
  flex-direction: column;
  gap: 0;
  width: max-content;}
.aviation-dropdown a.aviation-section-link{color: var(--gold);
  font-style: italic;
  font-weight: 400;
  border-color: transparent;
  background: transparent;
  margin-bottom: 0;}
.aviation-dropdown a.aviation-section-link:hover{color: var(--gold);
  font-style: italic;
  font-weight: 400;
  background: transparent;
  border-color: transparent;}
.aviation-dropdown a{width: fit-content;
  border-width: 2px;
  justify-content: flex-start;
  text-align: left;}
.aviation-dropdown .dropdown-divider, .aviation-dropdown .gold-divider{width: 100%;
  margin: 3px 0;
  background: color-mix(in srgb, var(--brand-gold) 45%, transparent);}
.cart-link{display: flex;
  align-items: center;
  justify-content: center;
  padding: 4px 8px;}
.cart-link svg{width: 24px;
  height: 24px;}
@media (max-width: 768px){.dropdown{left: auto;
    right: 0;
    transform: translateY(14px);
    max-width: calc(100vw - 32px);}
.nav-item:hover .dropdown{transform: translateY(8px);}
.aviation-dropdown{grid-template-columns: 1fr;
    width: max-content;
    min-width: max-content;
    max-width: calc(100vw - 32px);}
.aviation-column{width: max-content;}
.about-dropdown a, .about-dropdown .dropdown-section-label{justify-content: flex-end;
    text-align: right;
    margin-left: auto;}}
:root{--madhi-header-height: 119px;
  --madhi-header-divider: color-mix(in srgb, var(--brand-deep) 10%, transparent);}
:root{--site-header-divider: #3b3b3b;}
.section:first-of-type{margin-top: var(--section-gap);}
.section:last-of-type{margin-bottom: var(--section-gap);}
.section{padding: var(--hero-gap) 0;}
.section-title{margin-bottom: 32px;
  font-size: 46px;}
.section .btn{display: block;
  width: fit-content;
  margin: 0 auto;}
.feature-layout{display: flex;
  justify-content: center;
  margin-bottom: 14px;}
.feature-card{position: relative;
  width: 100%;
  display: block;
  background: var(--card);
  border: 0.5px solid var(--brand-aqua);
  border-radius: 14px;
  overflow: hidden;
  transition: border-color 0.25s ease;}
.feature-card:hover{border-color: var(--brand-aqua);}
.feature-card img{position: absolute;
  left: 50%;
  bottom: 100px;
  transform: translateX(-50%);
  height: auto;
  display: block;}
.grid-3{display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 50px;}
.grid-4{display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 50px;}
.hub-section{padding: 16px 0 var(--hero-gap);}
.hub-shell{max-width: 1540px;
  margin: 0 auto;
  padding: 0 24px;}
.hub-grid{display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 50px;}
.hub-card{position: relative;
  min-height: 100%;
  padding: 10px;
  border: 1px solid color-mix(in srgb, var(--brand-deep) 2%, transparent);
  border-radius: 26px;
  background: var(--card);
  overflow: hidden;
  transition: border-color 0.25s ease, box-shadow 0.25s ease;}
.hub-card:hover{border-color: var(--border);
  box-shadow: 0 18px 40px color-mix(in srgb, var(--brand-deep) 6%, transparent);}
.hub-card-content, .card-content{height: 100%;
  display: flex;
  flex-direction: column;}
.hub-card-top, .card-top{display: flex;
  justify-content: space-between;
  align-items: flex-start;
  gap: 12px;
  margin-bottom: 14px;}
.hub-card h1, .hub-card h2{font-size: clamp(25px, 3vw, 35px);
  font-weight: 500;
  letter-spacing: -2px;
  line-height: 1.02;
  
  max-width: 75%;
  overflow-wrap: break-word;}
.hub-number, .card-number{width: 40px;
  height: 40px;
  border-radius: 999px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  background: var(--brand-aqua);
  border: 1px solid var(--border);
  color: var(--brand-teal);
  font-size: 18px;
  font-weight: 600;}
.hub-card p{color: var(--muted);
  font-size: 13px;
  line-height: 1.55;
  min-height: 86px;
  margin-bottom: 16px;}
.hub-main-link, .card-main-link{align-self: center;
  margin-top: auto;
  margin-bottom: 14px;
  padding: 9px 16px;
  border-radius: 999px;
  background: transparent;
  border: 2px solid var(--accent);
  color: var(--brand-deep);
  font-size: 13px;
  font-weight: 600;
  transition: 0.2s ease;}
.hub-main-link:hover, .card-main-link:hover, .hub-main-link:focus-visible, .card-main-link:focus-visible{background: var(--accent);
  color: var(--brand-aqua);
  border-color: transparent;}
.hub-links, .card-links{display: grid;
  gap: 8px;}
.hub-links a, .card-links a{min-height: 32px;
  padding: 6px 10px;
  border-radius: 14px;
  background: var(--brand-aqua);
  color: var(--muted);
  font-size: 12.5px;
  display: flex;
  justify-content: space-between;
  align-items: center;}
.hub-links a:hover, .card-links a:hover{color: var(--brand-deep);
  outline: 2px solid var(--accent);}
.card-links a::after{content: "→";}
.hub-links a span, .card-links a span{margin-left: auto;}
@media (max-width: 980px){.grid-3, .grid-4, .hub-grid{grid-template-columns: repeat(2, 1fr);}}
@media (max-width: 620px){.grid-3, .grid-4, .hub-grid{grid-template-columns: 1fr;
    gap: 22px;}}
.photos-card{aspect-ratio: 4 / 3;
  max-width: 700px;}
.photos-card img{width: 84%;
  max-height: 70%;
  object-fit: contain;}
.content-card{aspect-ratio: 1 / 1;
  max-width: 700px;}
.content-card img{width: 78%;
  max-height: 72%;
  object-fit: contain;}
.design-card{aspect-ratio: 16 / 9;
  max-width: 1400px;}
.design-card img{width: 90%;
  max-height: 90%;
  object-fit: contain;}
.pill{position: absolute;
  top: 18px;
  left: 18px;
  background: color-mix(in srgb, var(--brand-aqua) 88%, transparent);
  color: var(--brand-deep);
  padding: 7px 13px;
  border: 2px solid var(--accent);
  border-color: var(--accent);
  border-radius: 999px;
  font-size: 13px;
  font-weight: 600;
  z-index: 5;}
.dog-ear{position: absolute;
  top: 0;
  right: 0;
  background: var(--accent);
  color: var(--brand-aqua);
  padding: 10px 32px;
  font-size: 16.1px;
  font-weight: 500;
  z-index: 6;
  border-bottom-left-radius: 18px;}
.card-caption{position: absolute;
  left: 0;
  right: 0;
  bottom: 0;
  background: color-mix(in srgb, var(--brand-aqua) 75%, transparent);
  backdrop-filter: blur(12px);
  border-top: 1px solid color-mix(in srgb, var(--brand-deep) 8%, transparent);
  transition: border-color 0.2s ease;
  padding: 10px 14px;
  z-index: 4;}
.feature-card:hover .card-caption, .mini-card:hover .card-caption{border-top: 2px solid var(--brand-aqua);}
.card-caption h3{font-size: 17px;
  margin-bottom: 4px;}
.card-caption p{font-size: 13px;
  color: var(--muted);}
.aviation-card, .special-card.sitemap-card{position: relative;
  min-height: 100%;
  padding: 10px;
  border: 1px solid var(--gold-soft);
  border-radius: 26px;
  background: var(--gold-bg);
  overflow: hidden;
  transition: border-color 0.25s ease, box-shadow 0.25s ease;}
.aviation-card:hover, .special-card.sitemap-card:hover{border-color: var(--brand-gold);
  box-shadow: 0 18px 40px var(--gold-shadow);}
.aviation-card-content, .special-card .sitemap-card-content{position: relative;
  z-index: 1;
  height: 100%;
  display: flex;
  flex-direction: column;}
.aviation-card-top, .special-card .sitemap-card-top{display: flex;
  justify-content: space-between;
  align-items: flex-start;
  gap: 12px;
  margin-bottom: 14px;}
.aviation-card-top h1, .special-card .sitemap-card-top h1{flex: 0 1 75%;
  width: 75%;
  max-width: 75%;
  min-width: 0;}
.aviation-card h1, .special-card .sitemap-card-top h1{font-size: clamp(22px, 2.4vw, 30px);
  font-weight: 500;
  letter-spacing: -1.5px;
  line-height: 1.02;
  white-space: normal;
  overflow-wrap: break-word;}
.aviation-card p, .special-card.sitemap-card p{color: var(--muted);
  font-size: 13px;
  line-height: 1.55;
  margin-bottom: 16px;
  position: relative;}
.aviation-number, .special-card .sitemap-number{flex: 0 0 auto;
  width: 40px;
  height: 40px;
  border-radius: 999px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  background: var(--brand-aqua);
  border: 1px solid color-mix(in srgb, var(--brand-gold) 45%, transparent);
  color: var(--brand-gold);
  font-size: 18px;
  font-weight: 600;}
.aviation-main-link, .special-card .sitemap-main-link{position: relative;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  align-self: center;
  margin-top: auto;
  margin-bottom: 14px;
  padding: 9px 16px;
  border-radius: 999px;
  background: var(--brand-gold);
  border: 2px solid transparent;
  color: var(--brand-aqua);
  font-size: 13px;
  font-weight: 500;
  text-decoration: none;
  transition: font-weight 0.2s ease, transform 0.2s ease;}
.aviation-main-link:hover, .special-card .sitemap-main-link:hover{background: var(--brand-gold);
  border-color: transparent;
  color: var(--brand-aqua);
  font-weight: 600;}
.aviation-links, .special-card .sitemap-links{display: grid;
  grid-template-rows: repeat(5, 32px);
  gap: 8px;}
.aviation-links a, .special-card .sitemap-links a{display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  height: 32px;
  padding: 6px 10px;
  border-radius: 14px;
  background: var(--brand-aqua);
  border: 2px solid color-mix(in srgb, var(--brand-gold) 18%, transparent);
  color: var(--muted);
  font-size: 12.5px;
  text-decoration: none;
  transition: color 0.2s ease, border-color 0.2s ease, transform 0.2s ease;}
.aviation-links a::after, .special-card .sitemap-links a::after{display: none;
  content: "";}
.aviation-links a:hover, .special-card .sitemap-links a:hover{color: var(--brand-deep);
  border-color: var(--brand-gold);
  transform: translateX(2px);}
@media (max-width: 620px){.aviation-card, .special-card.sitemap-card{border-radius: 24px;}
.aviation-card h1, .special-card .sitemap-card-top h1{font-size: clamp(24px, 9vw, 34px);}}
.btn, .btn.primary{padding: 9px 16px;
  border-radius: 999px;
  background: transparent;
  color: var(--brand-deep);
  border: 2px solid var(--accent);
  display: inline-block;
  font-size: 14px;
  font-weight: 500;
  transition: background 0.18s ease, color 0.18s ease, border-color 0.18s ease;}
.btn{will-change: background, border-color, color;}
.btn:hover, .btn.primary:hover, .btn:focus-visible, .btn.primary:focus-visible{background: var(--accent);
  color: var(--brand-aqua);
  border-color: transparent;}
html[data-theme="dark"]{color-scheme: dark;}
.site-preferences{position: fixed;
  right: 24px;
  bottom: 16px;
  z-index: 1400;
  display: flex;
  flex-direction: row-reverse;
  gap: 8px;
  align-items: center;}
.preference-toggle{width: 44px;
  height: 44px;
  border: 1px solid color-mix(in srgb, var(--brand-deep) 22%, transparent);
  border-radius: 999px;
  background: color-mix(in srgb, var(--brand-aqua) 96%, transparent);
  color: var(--brand-deep);
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 0;
  cursor: pointer;
  box-shadow: 0 8px 24px color-mix(in srgb, var(--brand-deep) 12%, transparent);
  backdrop-filter: blur(12px);
  -webkit-backdrop-filter: blur(12px);}
.preference-toggle:hover, .preference-toggle:focus-visible{border-color: var(--brand-gold);
  outline: none;
  transform: translateY(-1px);}
.preference-toggle[aria-pressed="true"]{background: var(--brand-gold);
  border-color: var(--brand-gold);
  color: var(--brand-aqua);}
#backToTop, html[data-theme="dark"] #backToTop{position: relative !important;
  display: none !important;
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
  transition: background-color .18s ease, color .18s ease, border-color .18s ease;
  width: 42px !important;
  height: 42px !important;
  min-width: 42px !important;
  min-height: 42px !important;
  padding: 0 !important;
  border: 0;
  border-radius: 999px !important;
  overflow: visible !important;
  transform: none !important;}
#backToTop.is-attention{display: inline-flex !important;
  opacity: 1;
  visibility: visible;
  pointer-events: auto;}
#backToTop:is(:hover, :focus-visible), html[data-theme="dark"] #backToTop:is(:hover, :focus-visible){border: 0;
  transform: none !important;}
#backToTop .back-to-top-arrow{position: relative !important;
  display: block !important;
  width: 30px !important;
  height: 20px !important;
  margin: 0 auto !important;
  top: -2px !important;
  font-size: 0 !important;
  line-height: 1 !important;
  background: none;
  transform: none !important;
  opacity: 1 !important;}
#backToTop .back-to-top-arrow::before{content: "" !important;
  position: absolute !important;
  left: 50% !important;
  top: 50% !important;
  width: 28px !important;
  height: 17px !important;
  background: var(--accent);
  clip-path: polygon(0 100%, 50% 0, 100% 100%, 80% 100%, 50% 38%, 20% 100%) !important;
  transform: translate(-50%, -50%) !important;}
#backToTop:is(:hover, :focus-visible) .back-to-top-arrow::before{background: var(--brand-aqua);}
#backToTop .back-to-top-label{position: absolute !important;
  right: calc(100% + 10px) !important;
  top: 50% !important;
  transform: translateY(-50%) !important;
  display: block !important;
  width: max-content !important;
  padding: 0 !important;
  background: transparent;
  border: 0;
  color: var(--brand-deep);
  font-family: "Inter", Arial, sans-serif !important;
  font-size: 11px !important;
  font-weight: 500 !important;
  line-height: 1.2 !important;
  letter-spacing: 0 !important;
  white-space: nowrap !important;
  opacity: 0 !important;
  visibility: hidden !important;
  pointer-events: none !important;
  transition: opacity .16s ease, visibility .16s ease !important;}
#backToTop:is(:hover, :focus-visible) .back-to-top-label{opacity: 1 !important;
  visibility: visible !important;}
#backToTop.is-attention:not(:hover):not(:focus-visible) .back-to-top-arrow{animation: madhiBackTopBlink 1.15s ease-in-out infinite !important;}
@keyframes madhiBackTopBlink{0%, 42%, 100%{opacity: 1;}
58%, 84%{opacity: 0;}}
html[data-motion="off"] #backToTop .back-to-top-arrow{animation: none !important;}
.preference-glyph{font-family: Arial, sans-serif !important;
  font-size: 20px;
  line-height: 1;
  font-weight: 700;}
#motionToggle .preference-glyph::before{content: "▶"; font-size: 15px;}
html[data-motion="off"] #motionToggle .preference-glyph::before{content: "Ⅱ"; font-size: 16px;}
html[data-motion="off"]{scroll-behavior: auto !important;}
html[data-motion="off"] *, html[data-motion="off"] *::before, html[data-motion="off"] *::after{animation-duration: .001ms !important;
  animation-delay: 0ms !important;
  animation-iteration-count: 1 !important;
  transition-duration: .001ms !important;
  transition-delay: 0ms !important;
  scroll-behavior: auto !important;}
@media (max-width: 1100px){html[data-page] body.mobile-menu-open{overflow: hidden !important;}}
@media (max-width: 700px){:root{--madhi-scroll-track-width:6.5px;
  --madhi-scroll-thumb-width:3px;
  --madhi-scroll-thumb-height:15.5vh;
  --madhi-scroll-thumb-min-height:45px;
  --madhi-scroll-thumb-max-height:115px;
  --madhi-scroll-thumb-offset:1.75px;}
.site-preferences{right: 16px; bottom: 10px; gap: 6px;}
.preference-toggle{width: 40px; height: 40px;}}
:root{--madhi-alt-header-bg: var(--surface-header);
  --madhi-alt-header-green: var(--accent);
  --madhi-alt-header-white: var(--text-on-header);
  --madhi-alt-header-divider: var(--divider-color);}
html[data-header-style="alt"] body > main, html[data-header-style="alt"] body > main > :first-child{border-top: 0 !important;
  box-shadow: none;
  outline: none;}
.branding-system-collage.logo-system-six{display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  grid-template-rows: repeat(3, minmax(0, 1fr)) !important;
  gap: 12px !important;
  background: var(--brand-deep);}
.branding-system-collage.logo-system-six .branding-system-item{position: relative !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  min-width: 0 !important;
  min-height: 0 !important;
  padding: 30px 14px 14px !important;
  background: transparent;
  border: 0;
  border-radius: 0 !important;
  box-shadow: none;}
.branding-system-collage.logo-system-six .branding-system-label{top: 10px !important;
  left: 12px !important;
  font-size: 11px !important;
  font-weight: 700 !important;
  line-height: 1.1 !important;
  letter-spacing: .03em !important;
  color: color-mix(in srgb, var(--brand-aqua) 82%, transparent);}
.branding-system-collage.logo-system-six .branding-system-item img{position: static !important;
  width: 78% !important;
  height: 68% !important;
  max-width: 78% !important;
  max-height: 68% !important;
  object-fit: contain !important;
  object-position: center !important;
  transform: none !important;
  background: transparent;}
.branding-system-collage.logo-system-six .layout-primary{grid-column: 1 !important; grid-row: 1 !important;}
.branding-system-collage.logo-system-six .layout-inverse{grid-column: 1 !important; grid-row: 2 !important;}
.branding-system-collage.logo-system-six .layout-mono{grid-column: 1 !important; grid-row: 3 !important; display: flex !important;}
.branding-system-collage.logo-system-six .layout-stacked{grid-column: 2 !important; grid-row: 1 !important;}
.branding-system-collage.logo-system-six .layout-icon{grid-column: 2 !important; grid-row: 2 !important;}
.branding-system-collage.logo-system-six .layout-wordmark{grid-column: 2 !important; grid-row: 3 !important;}
@media (max-width: 620px){.branding-system-collage.logo-system-six{gap: 8px !important;}
.branding-system-collage.logo-system-six .branding-system-item{padding: 27px 8px 8px !important;}
.branding-system-collage.logo-system-six .branding-system-label{top: 8px !important;
    left: 8px !important;
    font-size: 9px !important;}
.branding-system-collage.logo-system-six .branding-system-item img{width: 84% !important;
    height: 70% !important;
    max-width: 84% !important;
    max-height: 70% !important;}}
html[data-header-style="alt"] #branding-logos .branding-system-collage.logo-system-six{grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  grid-template-rows: repeat(3, minmax(0, 1fr)) !important;
  gap: 0 !important;
  padding: 20px 26px !important;
  background: var(--brand-deep);}
html[data-header-style="alt"] #branding-logos .branding-system-collage.logo-system-six .branding-system-item{padding: 8px 20px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  overflow: hidden !important;}
html[data-header-style="alt"] #branding-logos .branding-system-collage.logo-system-six .branding-system-label{display: none !important;}
html[data-header-style="alt"] #branding-logos .branding-system-collage.logo-system-six .branding-system-item img{position: static !important;
  width: auto !important;
  height: auto !important;
  max-width: 100% !important;
  max-height: 100% !important;
  object-fit: contain !important;
  object-position: center !important;
  transform: none !important;}
html[data-header-style="alt"] #branding-logos .branding-system-collage.logo-system-six .layout-primary{grid-column: 1 !important; grid-row: 1 !important;}
html[data-header-style="alt"] #branding-logos .branding-system-collage.logo-system-six .layout-inverse{grid-column: 1 !important; grid-row: 2 !important;}
html[data-header-style="alt"] #branding-logos .branding-system-collage.logo-system-six .layout-mono{grid-column: 1 !important; grid-row: 3 !important;}
html[data-header-style="alt"] #branding-logos .branding-system-collage.logo-system-six .layout-icon{grid-column: 2 !important; grid-row: 1 !important;}
html[data-header-style="alt"] #branding-logos .branding-system-collage.logo-system-six .layout-wordmark{grid-column: 2 !important; grid-row: 2 !important;}
html[data-header-style="alt"] #branding-logos .branding-system-collage.logo-system-six .layout-stacked{grid-column: 2 !important; grid-row: 3 !important;}
html[data-header-style="alt"] #branding-logos .branding-system-collage.logo-system-six .layout-primary img, html[data-header-style="alt"] #branding-logos .branding-system-collage.logo-system-six .layout-inverse img, html[data-header-style="alt"] #branding-logos .branding-system-collage.logo-system-six .layout-mono img{width: 78% !important;
  max-width: 78% !important;
  max-height: 74% !important;}
html[data-header-style="alt"] #branding-logos .branding-system-collage.logo-system-six .layout-icon img{width: 24% !important;
  max-width: 24% !important;
  max-height: 72% !important;}
html[data-header-style="alt"] #branding-logos .branding-system-collage.logo-system-six .layout-wordmark img{width: 62% !important;
  max-width: 62% !important;
  max-height: 48% !important;}
html[data-header-style="alt"] #branding-logos .branding-system-collage.logo-system-six .layout-stacked img{width: 32% !important;
  max-width: 32% !important;
  max-height: 78% !important;}
@media (max-width: 620px){html[data-header-style="alt"] #branding-logos .branding-system-collage.logo-system-six{padding: 12px 10px !important;}
html[data-header-style="alt"] #branding-logos .branding-system-collage.logo-system-six .branding-system-item{padding: 5px 8px !important;}
html[data-header-style="alt"] #branding-logos .branding-system-collage.logo-system-six .layout-primary img, html[data-header-style="alt"] #branding-logos .branding-system-collage.logo-system-six .layout-inverse img, html[data-header-style="alt"] #branding-logos .branding-system-collage.logo-system-six .layout-mono img{width: 88% !important; max-width: 88% !important;}
html[data-header-style="alt"] #branding-logos .branding-system-collage.logo-system-six .layout-icon img{width: 34% !important; max-width: 34% !important;}
html[data-header-style="alt"] #branding-logos .branding-system-collage.logo-system-six .layout-wordmark img{width: 78% !important; max-width: 78% !important;}
html[data-header-style="alt"] #branding-logos .branding-system-collage.logo-system-six .layout-stacked img{width: 44% !important; max-width: 44% !important;}}
#motionToggle{display: none !important;}
.sitemap-number, .hub-number, .card-number{font-family: "Playfair Display", Georgia, serif !important;
  font-weight: 400 !important;}
.preview-popout, .popout-action, .preview-popout svg, .popout-action svg, .preview-popout .btn-arrow, .popout-action .btn-arrow{color: var(--brand-deep);}
.preview-popout:hover, .preview-popout:focus-visible, .popout-action:hover, .popout-action:focus-visible, .preview-popout:hover svg, .preview-popout:focus-visible svg, .popout-action:hover svg, .popout-action:focus-visible svg{color: var(--brand-aqua);}
#motionToggle{display: none !important;}
.sitemap-card-top .sitemap-number, .hub-card-top .hub-number, .card-top .card-number{font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Arial, sans-serif !important;
  font-size: 24px !important;
  font-weight: 500 !important;
  line-height: 1 !important;
  text-align: center !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  padding: 0 !important;}
.caption, .landing-feature-info .caption, .info-panel .caption{font-size: 14.4px !important;
  font-weight: 700 !important;
  color: var(--accent);}
.sitemap-card-top .sitemap-number, .hub-card-top .hub-number, .card-top .card-number{font-family: inherit !important;
  font-size: 24px !important;
  font-weight: 500 !important;
  line-height: 1 !important;
  color: var(--brand-deep);
  text-align: center !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  padding: 0 0 2px !important;}
.contact-field .field-check{opacity: 0 !important;}
.contact-field.is-valid .field-check{opacity: 1 !important;
  transform: scale(1) !important;}
#branding-logos .branding-system-feature-card .branding-system-collage.logo-system-three{display: grid !important;
  grid-template-columns: 1fr !important;
  grid-template-rows: repeat(3, minmax(0, 1fr)) !important;
  gap: 0 !important;
  padding: 22px 28px !important;
  background: var(--brand-deep);}
#branding-logos .branding-system-feature-card .branding-system-collage.logo-system-three .branding-system-item{grid-column: 1 !important;
  padding: 8px 28px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  min-width: 0 !important;
  min-height: 0 !important;
  background: transparent;
  border: 0;}
#branding-logos .branding-system-feature-card .branding-system-collage.logo-system-three .layout-primary{grid-row: 1 !important;}
#branding-logos .branding-system-feature-card .branding-system-collage.logo-system-three .layout-inverse{grid-row: 2 !important;}
#branding-logos .branding-system-feature-card .branding-system-collage.logo-system-three .layout-mono{grid-row: 3 !important;}
#branding-logos .branding-system-feature-card .branding-system-collage.logo-system-three .branding-system-label{display: none !important;}
#branding-logos .branding-system-feature-card .branding-system-collage.logo-system-three .branding-system-item img{position: static !important;
  width: 88% !important;
  height: auto !important;
  max-width: 88% !important;
  max-height: 86% !important;
  object-fit: contain !important;
  object-position: center !important;
  transform: none !important;}
.svg-artwork, .svg-artwork > object[type="image/svg+xml"], .svg-artwork > img[src$=".svg"], .image-card object[type="image/svg+xml"], .image-card img[src$=".svg"], .branding-system-item, .branding-system-item img[src$=".svg"]{background: transparent;
  background-color: transparent;}
.aoe-logo-row .svg-artwork img, .aoi-logo-row .svg-artwork img, .wanderports-logo-row .svg-artwork img{display: block;
  background: transparent;
  background-color: transparent;
  object-fit: contain;
  object-position: center center;}
.aoe-learning-row .aoe-learning-artwork, .aoe-learning-row .aoe-learning-artwork object, .aoe-learning-row #aoeLearningObject{background: transparent;
  background-color: transparent;}
.aoe-learning-row .aoe-learning-artwork img, .camera-row .svg-artwork img.motion-svg-object{background: transparent;
  background-color: transparent;}
.preview-popout, .landing-preview-popout, .popout-action, html[data-theme="dark"] .preview-popout, html[data-theme="dark"] .landing-preview-popout, html[data-theme="dark"] .popout-action{border: 2px solid transparent;
  transform: none !important;
  translate: none !important;
  transition: background-color .18s ease, color .18s ease, box-shadow .18s ease !important;}
.preview-popout:hover, .preview-popout:focus-visible, .landing-preview-popout:hover, .landing-preview-popout:focus-visible, .popout-action:hover, .popout-action:focus-visible, html[data-theme="dark"] .preview-popout:hover, html[data-theme="dark"] .preview-popout:focus-visible, html[data-theme="dark"] .landing-preview-popout:hover, html[data-theme="dark"] .landing-preview-popout:focus-visible, html[data-theme="dark"] .popout-action:hover, html[data-theme="dark"] .popout-action:focus-visible{transform: none !important;
  translate: none !important;}
.preview-popout svg, .landing-preview-popout svg, .popout-action svg, .preview-popout:hover svg, .landing-preview-popout:hover svg, .popout-action:hover svg{transform: none !important;}
html :is(.preview-popout, .landing-preview-popout, .popout-action), html[data-theme="dark"] :is(.preview-popout, .landing-preview-popout, .popout-action){border: 0;
  transform: none !important;
  translate: none !important;
  box-sizing: border-box !important;}
html :is(.preview-popout, .landing-preview-popout, .popout-action):is(:hover, :focus-visible), html[data-theme="dark"] :is(.preview-popout, .landing-preview-popout, .popout-action):is(:hover, :focus-visible){transform: none !important;
  translate: none !important;}
html :is(.preview-popout, .landing-preview-popout, .popout-action) svg, html :is(.preview-popout, .landing-preview-popout, .popout-action) .btn-arrow{color: inherit;
  stroke: currentColor;}
.aoe-learning-row .image-card{background: var(--brand-aqua);
  background-color: var(--brand-aqua);}
.aoe-learning-replay, html[data-theme="dark"] .aoe-learning-replay{border: 0;}
.camera-row .svg-artwork .motion-svg-object{width: 56.25% !important;
  height: 56.25% !important;}
html body .preview-popout svg, html body .landing-preview-popout svg{width: 23px !important;
  height: 23px !important;}
html body .popout-action .btn-arrow, html body .popout-action .btn-arrow svg{width: 23px !important;
  height: 23px !important;}
.contact-email-note a{color: var(--accent);
  text-decoration: underline !important;
  text-decoration-color: currentColor;
  text-underline-offset: .14em !important;}
.landing-airport-network-card, .wanderports-ui-row .image-card{position: relative !important;}
.map-fullscreen-control{position: absolute !important;
  top: 10px !important;
  right: 10px !important;
  z-index: 30 !important;
  width: 42px !important;
  height: 42px !important;
  min-width: 42px !important;
  min-height: 42px !important;
  padding: 0 !important;
  border: 0;
  border-radius: 50% !important;
  display: grid !important;
  place-items: center !important;
  background: var(--brand-aqua);
  color: var(--brand-deep);
  cursor: pointer !important;
  box-shadow: 0 8px 22px color-mix(in srgb, var(--brand-deep) 10%, transparent);
  transition: background-color .18s ease, color .18s ease !important;}
.map-fullscreen-control-under-dogear{top: 58px !important;}
.map-fullscreen-control svg{width: 20px !important;
  height: 20px !important;
  display: block !important;}
.map-fullscreen-control:hover, .map-fullscreen-control:focus-visible, html[data-theme="dark"] .map-fullscreen-control:hover, html[data-theme="dark"] .map-fullscreen-control:focus-visible{transform: none !important;}
.landing-airport-network-card:fullscreen, .wanderports-ui-row .image-card:fullscreen{width: 100vw !important;
  max-width: none !important;
  height: 100vh !important;
  min-height: 100vh !important;
  margin: 0 !important;
  border-radius: 0 !important;
  background: var(--brand-deep);}
.landing-airport-network-card:fullscreen .landing-airport-network-wrap, .wanderports-ui-row .image-card:fullscreen .wanderports-map-frame{width: 100% !important;
  height: 100% !important;
  min-height: 100% !important;
  inset: 0 !important;}
.landing-airport-network-card:fullscreen .map-fullscreen-control-under-dogear{top: 58px !important;}
#services .sitemap-number{font-family: "Shadows Into Light", cursive !important;
  font-weight: 400 !important;}
html[data-header-style="alt"] #services .sitemap-service-copy{display: grid !important;
  grid-template-rows: 96px auto !important;
  row-gap: 0 !important;}
html[data-header-style="alt"] #services .sitemap-summary{min-height: 96px !important;}
html[data-header-style="alt"] #services .sitemap-includes-block{margin-top: 0 !important;
  padding-bottom: 22px !important;}
@media (min-width: 1101px){html[data-header-style="alt"] .approach-viewport .studio-info-card:not(:last-child)::after{width: 38px !important;
    height: 18px !important;
    clip-path: polygon(0 34%, 54% 34%, 54% 0, 100% 50%, 54% 100%, 54% 66%, 0 66%) !important;}}
@media (max-width: 1100px){html[data-header-style="alt"] .approach-viewport .studio-info-card:not(:last-child)::after{width: 30px !important;
    height: 16px !important;
    clip-path: polygon(0 34%, 54% 34%, 54% 0, 100% 50%, 54% 100%, 54% 66%, 0 66%) !important;}}
html{scrollbar-width: none !important;}
html::-webkit-scrollbar{width: 0 !important;
  height: 0 !important;}
#madhiScrollTrack{position: fixed;
  z-index: 2000;
  top: 10px;
  right: 4px;
  bottom: 10px;
  width: var(--madhi-scroll-track-width);
  border-radius: 999px;
  background: color-mix(in srgb, var(--brand-gold) 15%, transparent);
  pointer-events: auto;}
#madhiScrollThumb{position: absolute;
  top: 0;
  left: var(--madhi-scroll-thumb-offset);
  width: var(--madhi-scroll-thumb-width);
  height: var(--madhi-scroll-thumb-height);
  min-height: var(--madhi-scroll-thumb-min-height);
  max-height: var(--madhi-scroll-thumb-max-height);
  border-radius: 999px;
  background: var(--brand-jade);
  cursor: grab;
  touch-action: none;
  will-change: transform;}
#madhiScrollThumb:active{cursor: grabbing;}
.map-fullscreen-control, html[data-theme="dark"] .map-fullscreen-control{border: 0;}
.attachment-browse{color: var(--accent);
  text-decoration: underline !important;
  text-decoration-color: currentColor;
  text-underline-offset: .15em !important;}
.contact-field-label{font-size: 14.5px !important;}
#services .sitemap-number, .sitemap-card-top .sitemap-number{font-family: inherit !important;
  font-weight: 500 !important;}
.map-fullscreen-control, html[data-theme="dark"] .map-fullscreen-control{border: 0;}
.aerowordsmith-fullscreen, .aoe-learning-replay, html[data-theme="dark"] .aerowordsmith-fullscreen, html[data-theme="dark"] .aoe-learning-replay{border: 0;}
.landing-airport-network-card:fullscreen, .wanderports-ui-row .image-card:fullscreen{display: grid !important;
  place-items: center !important;
  width: 100vw !important;
  height: 100vh !important;
  min-height: 100vh !important;
  padding: 0 !important;
  background: var(--brand-deep);
  overflow: hidden !important;}
.landing-airport-network-card:fullscreen .landing-airport-network-wrap, .wanderports-ui-row .image-card:fullscreen .wanderports-map-frame{width: min(100vw, 177.7778vh) !important;
  height: min(100vh, 56.25vw) !important;
  min-height: 0 !important;
  max-width: 100vw !important;
  max-height: 100vh !important;
  aspect-ratio: 16 / 9 !important;
  inset: auto !important;
  margin: auto !important;
  object-fit: contain !important;}
.landing-airport-network-card:fullscreen .landing-airport-network-frame{width: 100% !important;
  height: 100% !important;
  display: block !important;}
.splitflap-row .city-demo, .splitflap-row .city-demo-controls-only{border: 1px solid var(--border);}
#services .sitemap-number, .sitemap-card-top .sitemap-number, .hub-card-top .hub-number, .card-top .card-number{font-weight: 700 !important;}
.attachment-browse{font-weight: 400 !important;}
.branding-feature-row .branding-system-collage.logo-system-three .branding-system-item{display: flex !important;
  align-items: center !important;
  justify-content: center !important;}
.branding-feature-row .branding-system-collage.logo-system-three .branding-system-item img{width: 94% !important;
  height: 100% !important;
  max-width: 94% !important;
  max-height: 100% !important;
  margin: 0 auto !important;
  object-fit: contain !important;
  object-position: center center !important;
  transform: none !important;}
html :is(.preview-popout, .landing-preview-popout, .popout-action) svg path, html[data-theme="dark"] :is(.preview-popout, .landing-preview-popout, .popout-action) svg path{stroke-width: 2.1 !important;}
#services .sitemap-number, .sitemap-card-top .sitemap-number, .hub-card-top .hub-number, .card-top .card-number{font-weight: 600 !important;}
.approach-viewport .studio-info-card h3, .client-viewport .studio-info-card h3, .approach-viewport .studio-card-title-main, .client-viewport .studio-card-title-main{font-weight: 500 !important;}
#services .sitemap-card h2, #services .sitemap-card h2 > span{font-family: "Inter", Arial, sans-serif !important;
  font-weight: 500 !important;
  line-height: 1.02 !important;
  letter-spacing: -2px !important;}
html[data-header-style="alt"] body.section-green #services .sitemap-card h2, html[data-header-style="alt"] body.section-green #services .sitemap-card h2 > span{font-weight: 400 !important;}
html[data-header-style="alt"] body.section-green .approach-viewport .studio-info-card h3, html[data-header-style="alt"] body.section-green .client-viewport .studio-info-card h3, html[data-header-style="alt"] body.section-green .approach-viewport .studio-card-title-main, html[data-header-style="alt"] body.section-green .client-viewport .studio-card-title-main{font-weight: 600 !important;}
html[data-header-style="alt"] body.section-green .approach-viewport .studio-card-title-detail, html[data-header-style="alt"] body.section-green .client-viewport .studio-card-title-detail{font-weight: 400 !important;}
@media (min-width: 1101px){html[data-header-style="alt"] #services .sitemap-card-top h2{flex: 1 1 auto !important;
    width: auto !important;
    max-width: 100% !important;
    min-width: 0 !important;
    font-size: clamp(20px, 1.8vw, 28px) !important;
    line-height: 1.02 !important;
    letter-spacing: -2px !important;
    text-wrap: balance;}}
.contact-form-viewport .contact-content-grid-form-only, .contact-form-viewport .contact-content-grid.contact-content-grid-form-only{display: block !important;
  width: 100% !important;}
.contact-form-viewport .contact-content-grid-form-only .contact-brief-form{grid-column: auto !important;
  width: 100% !important;
  max-width: none !important;}
.contact-form-viewport .contact-form-grid{grid-template-columns: repeat(3, minmax(0, 1fr)) !important;}
.contact-form-viewport .contact-field-timeline{grid-column: 2 !important;
  grid-row: 3 !important;}
.contact-form-viewport .contact-field-message{grid-column: 1 / span 2 !important;
  grid-row: 4 !important;}
.contact-form-viewport .contact-attachment-field{grid-column: 3 !important;
  grid-row: 4 !important;}
.contact-form-viewport .contact-field-message .contact-input-shell, .contact-form-viewport .contact-field-message textarea, .contact-form-viewport .contact-attachment-field .attachment-dropzone{height: 100% !important;}
.contact-form-viewport .contact-field-message textarea, .contact-form-viewport .contact-attachment-field .attachment-dropzone{min-height: 138px !important;}
.contact-recommended{color: var(--accent);
  font-weight: 600 !important;}
.contact-email-note-below-submit{margin: 4px 0 0 !important;
  color: var(--muted);
  font-size: 13px !important;
  line-height: 1.45 !important;
  text-align: center !important;}
#contact-message .cta-static-message{align-items: center !important;
  justify-content: center !important;
  text-align: center !important;}
#contact-message .cta-static-title, #contact-message .cta-static-title > span{width: 100% !important;
  max-width: none !important;
  margin-left: auto !important;
  margin-right: auto !important;
  text-align: center !important;}
#contact-message .cta-static-byline{width: 100% !important;
  max-width: 980px !important;
  margin-left: auto !important;
  margin-right: auto !important;
  text-align: center !important;}
.orientation-note{display: none !important;}
@media (max-width: 1100px){.orientation-note{display: block !important;
    margin: 9px 0 0 !important;
    color: #FFBF00;
    font-size: 12.5px !important;
    line-height: 1.4 !important;
    font-style: italic !important;}
.contact-form-viewport .contact-form-grid{grid-template-columns: repeat(2, minmax(0, 1fr)) !important;}
.contact-form-viewport .contact-field-timeline, .contact-form-viewport .contact-field-message, .contact-form-viewport .contact-attachment-field{grid-column: auto !important;
    grid-row: auto !important;}
.contact-form-viewport .contact-field-message, .contact-form-viewport .contact-attachment-field{grid-column: 1 / -1 !important;}
#ui-icons .landing-airport-network-wrap, #motion-graphics .landing-turntable-artwork, #web-design .landing-web-preview-wrap{width: 100% !important;
    height: auto !important;
    min-height: 0 !important;
    aspect-ratio: 16 / 9 !important;}
#ui-icons .landing-airport-network-frame, #web-design .landing-web-preview-shell, #web-design .landing-web-preview, #motion-graphics .landing-turntable-inline{width: 100% !important;
    height: 100% !important;
    max-width: none !important;
    max-height: none !important;}
.landing-airport-network-card:fullscreen .landing-airport-network-wrap, .landing-airport-network-card:-webkit-full-screen .landing-airport-network-wrap{aspect-ratio: auto !important;
    height: 100% !important;}
.approach-viewport .studio-info-card, .client-viewport .studio-info-card{height: auto !important;
    min-height: 0 !important;
    padding: 18px !important;}
.approach-viewport .studio-info-card-content, .client-viewport .studio-info-card-content{height: auto !important;
    min-height: 0 !important;}}
@media (max-width: 700px){
html[data-page="service"]{scroll-snap-type:none !important;}
html[data-page="service"] .collection{padding:6px 20px 56px !important;}
html[data-page="service"] .print-list{display:grid !important;gap:88px !important;padding-left:0 !important;padding-right:0 !important;}
html[data-page="service"] .print-row, html[data-page="service"] .print-row:first-child, html[data-page="service"] .print-row:last-child{display:grid !important;grid-template-columns:1fr !important;gap:10px !important;padding:0 !important;margin:0 !important;}
html[data-page="service"] .info-panel{padding:0 !important;margin:0 !important;display:flex !important;flex-direction:column !important;gap:6px !important;}
html[data-page="service"] .info-panel .caption{display:none !important;}
html[data-page="service"] .info-panel h2{margin:0 !important;}
html[data-page="service"] .info-panel p, html[data-page="service"] .feature-description, html[data-page="service"] .motion-description{margin:0 !important;line-height:1.45 !important;}
html[data-page="service"] .image-card{width:100% !important;height:auto !important;min-height:0 !important;aspect-ratio:4/3 !important;overflow:hidden !important;}
html[data-page="service"] :is(.svg-artwork,.aoe-learning-artwork){width:100% !important;height:100% !important;display:flex !important;align-items:center !important;justify-content:center !important;padding:2px !important;}
html[data-page="service"] :is(.svg-artwork img,.svg-artwork object,.motion-svg-object,.aoe-learning-artwork img){width:auto !important;height:auto !important;max-width:94% !important;max-height:90% !important;object-fit:contain !important;object-position:center !important;}
html[data-page="service"] .turntable-row .svg-artwork{padding:0 !important;}
html[data-page="service"] .turntable-row .motion-inline-svg{width:100% !important;height:100% !important;display:flex !important;align-items:center !important;justify-content:center !important;}
html[data-page="service"] .turntable-row .turntableSvg{width:100% !important;height:100% !important;max-width:100% !important;max-height:100% !important;}
html[data-page="service"] .a380-row .svg-artwork img{max-width:94% !important;max-height:88% !important;}
html[data-page="service"] :is(.aoe-logo-row,.aoi-logo-row,.wanderports-logo-row) .image-card{aspect-ratio:16/10 !important;}
html[data-page="service"] :is(.aoe-logo-row,.aoi-logo-row,.wanderports-logo-row) .svg-artwork{padding:2px !important;}
html[data-page="service"] :is(.aoe-logo-row,.aoi-logo-row,.wanderports-logo-row) .svg-artwork img{max-width:98% !important;max-height:98% !important;}
html[data-page="service"] .branding-feature-row .branding-system-collage.logo-system-three{height:100% !important;padding:4px !important;}
html[data-page="service"] .branding-feature-row .branding-system-collage.logo-system-three .branding-system-item img{max-width:96% !important;max-height:96% !important;}
html[data-page="service"] .wanderports-ui-row .image-card{aspect-ratio:16/10 !important;}
html[data-page="service"] .wanderports-ui-row .wanderports-map-frame{width:100% !important;height:100% !important;object-fit:contain !important;}
html[data-page="service"] .mobile-orientation-hint{display:block;margin:0 0 6px;color:#FFBF00;font-size:12px;line-height:1.25;}
html[data-page="service"] .aerowordsmith-row .image-card{aspect-ratio:auto !important;height:560px !important;}
html[data-page="service"] .aerowordsmith-row .aerowordsmith-frame{width:100% !important;height:100% !important;}
html[data-page="service"] .web-preview-card{aspect-ratio:4/3 !important;}
html[data-page="service"] .web-preview-stage, html[data-page="service"] .web-preview-shell{width:100% !important;height:100% !important;}
html[data-page="service"] .web-preview-frame{width:300% !important;height:300% !important;max-width:none !important;max-height:none !important;transform:scale(.333333) !important;transform-origin:top left !important;}
.landing-feature-info .landing-feature-explore, .work-section .section-action.landing-feature-explore{width: fit-content !important;
    max-width: 100% !important;
    align-self: flex-start !important;
    padding-left: 18px !important;
    padding-right: 18px !important;}
.contact-form-viewport .contact-form-grid{grid-template-columns: 1fr !important;}
.contact-form-viewport .contact-field-message, .contact-form-viewport .contact-attachment-field{grid-column: auto !important;}
.contact-form-viewport .contact-brief-form{padding: 20px 18px !important;}
#contact-message .cta-static-title{font-size: clamp(46px, 12vw, 64px) !important;}}
@media (max-width:700px) and (orientation:landscape){html[data-page="service"] .mobile-orientation-hint{display:none !important;} html[data-page="service"] .wanderports-ui-row .image-card, html[data-page="service"] .turntable-row .image-card{aspect-ratio:16/9 !important;} html[data-page="service"] .aerowordsmith-row .image-card{height:min(88vh,620px) !important;}}
.contact-field-label{padding-inline-start: 16px !important;
  text-transform: uppercase !important;}
.contact-field-label .contact-recommended{text-transform: none !important;
  color: inherit;}
#contact-message .cta-static-message{width: 100% !important;
  max-width: none !important;
  margin-left: auto !important;
  margin-right: auto !important;
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  justify-content: center !important;
  text-align: center !important;}
#contact-message .cta-static-title, #contact-message .cta-static-title > span, #contact-message .cta-static-byline{margin-left: auto !important;
  margin-right: auto !important;
  text-align: center !important;}
#contact-message .cta-static-title, #contact-message .cta-static-title > span{width: 100% !important;
  max-width: none !important;}
#contact-message .cta-static-byline{width: min(100%, 980px) !important;}
#contact-message .cta-contact-button{align-self: center !important;
  margin-left: auto !important;
  margin-right: auto !important;}
html[data-theme="dark"] :is(
  #services .sitemap-card,
  .approach-viewport .studio-info-card,
  .client-viewport .studio-info-card,
  .contact-guide-card
){border: 0;}
html[data-theme="dark"] .contact-brief-form{border: 0;}
@media (min-width: 1101px){html[data-header-style="alt"] .approach-viewport .studio-info-card:not(:last-child)::after{width: 28px !important;
    height: 17px !important;
    background: var(--accent);
    clip-path: polygon(0 0, 38% 0, 100% 50%, 38% 100%, 0 100%, 62% 50%) !important;}}
@media (max-width: 1100px){html[data-header-style="alt"] .approach-viewport .studio-info-card:not(:last-child)::after{width: 28px !important;
    height: 17px !important;
    background: var(--accent);
    clip-path: polygon(0 0, 38% 0, 100% 50%, 38% 100%, 0 100%, 62% 50%) !important;}}
html[data-theme="dark"] .section-title, html[data-theme="dark"] .studio-info-title{font-weight: 700 !important;}
html[data-theme="dark"] .contact-brief-form .attachment-browse, html[data-theme="dark"] .contact-email-note-below-submit a{font-size: 13px !important;}
@media (min-width: 1101px){html[data-header-style="alt"] .approach-viewport .studio-info-card:not(:last-child)::after{width: 28px !important;
    height: 17px !important;
    background: var(--accent);
    clip-path: polygon(0 100%, 50% 0, 100% 100%, 80% 100%, 50% 38%, 20% 100%) !important;
    transform: translate(50%, -50%) rotate(90deg) !important;
    transform-origin: center !important;}}
#madhiScrollThumb{background: var(--brand-jade) !important;}
#madhiScrollTrack{background: color-mix(in srgb, var(--brand-jade) 14%, transparent) !important;}
html[data-header-style="alt"] .approach-viewport .studio-info-card:not(:last-child)::after{background: var(--brand-jade) !important;
  border: 0 !important;
  box-shadow: none !important;
  filter: none !important;}
.contact-input-shell :is(input, select, textarea){border-color: transparent !important;}
.contact-input-shell :is(input, select, textarea):is(:focus, :focus-visible){border-color: var(--brand-gold) !important;
  box-shadow: 0 0 0 2px color-mix(in srgb, var(--brand-gold) 30%, transparent) !important;}
@media (max-width: 1100px){.grid-4, .hub-grid, .sitemap-grid{grid-template-columns: repeat(2, minmax(0, 1fr));}}
@media (max-width: 760px){.dropdown{display: none;}
.grid-3, .grid-4, .hub-grid, .sitemap-grid, .special-focus-grid{grid-template-columns: 1fr !important; width: 100% !important;}
.container, .hub-shell, .sitemap-shell, .photos-shell{padding-left: 16px; padding-right: 16px;}
.hero{min-height: 72vh; padding: 70px 18px 45px;}
.hero h1{white-space: normal;}
.footer-site-links{flex-direction: column;
    gap: 6px;}
.footer-divider{display: none;}
.footer-site-link{width: 100%;
    min-width: 0;
    max-width: none;}}
@media (max-width: 520px){.page-section{padding-top: 70px;}}
:root{--service-header-divider: color-mix(in srgb, var(--brand-deep) 10%, transparent);}
footer{background: var(--brand-deep);
  color: var(--brand-aqua);
  border-top-color: var(--brand-deep);}
footer .footer-main, footer .footer-main a{color: var(--brand-aqua);}
footer .footer-site-links, footer .footer-site-link, footer .footer-site-links a{color: var(--brand-teal);}
footer .footer-divider{background: var(--brand-teal);
  opacity: 0.8 !important;}
footer .footer-main a:hover{color: var(--brand-aqua);
  opacity: 0.82;}
footer .footer-site-link:hover, footer .footer-site-links a:hover{color: var(--brand-aqua);}
:root{--madhi-light-panel: var(--brand-cyan);
  --madhi-light-line: color-mix(in srgb, var(--brand-deep) 5%, transparent);}
.vector-info-card, .city-demo, .evacuation-demo{background: var(--madhi-light-panel);}
.image-card, .section-divider, .city-controls input, .meta-list li{border-color: var(--madhi-light-line);}
.section-divider{background: var(--madhi-light-line);}
:root{--madhi-light-line: var(--service-header-divider);}
.image-card, .section-divider, .city-controls input, .meta-list li{border-color: var(--service-header-divider);}
.section-divider{background: var(--service-header-divider);}
#site-footer footer, footer{background: transparent;
  border: 0;
  box-shadow: none;
  color: color-mix(in srgb, var(--brand-deep) 68%, transparent);
  min-height: 0 !important;
  padding: 16px 24px 18px !important;}
#site-footer .footer-inner, footer .footer-inner{gap: 0 !important;}
#site-footer .footer-main, footer .footer-main{opacity:.5;}
#site-footer .footer-main, #site-footer .footer-main a, footer .footer-main, footer .footer-main a{color: color-mix(in srgb, var(--brand-deep) 68%, transparent);}
#site-footer .footer-site-links, #site-footer .footer-divider, footer .footer-site-links, footer .footer-divider{display: none !important;}
#site-footer .footer-main a:hover, footer .footer-main a:hover{color: var(--brand-deep);
  opacity: 1 !important;}