:root {
  --bg: #061820;
  --bg-soft: #0a2530;
  --panel: #0d2934;
  --panel-light: #123845;
  --ink: #f7fbf8;
  --muted: #9fb6bd;
  --line: rgba(155, 226, 224, 0.17);
  --orange: #c9ff5d;
  --orange-bright: #71efff;
  --cyan: #4de1d0;
  --green: #c9ff5d;
  --danger: #ff8e87;
  --shell: 1180px;
  --radius: 22px;
  --mono: "Space Mono", monospace;
  --sans: "Manrope", sans-serif;
}

* { box-sizing: border-box; }
html { width: 100%; max-width: 100%; scroll-behavior: smooth; overflow-x: hidden; }
body {
  width: 100%;
  max-width: 100%;
  margin: 0;
  background: var(--bg);
  color: var(--ink);
  font-family: var(--sans);
  line-height: 1.65;
  overflow-x: hidden;
}
main, section, .site-header, .site-footer { min-width: 0; max-width: 100%; }
body::selection { background: var(--orange); color: #080b0e; }
a { color: inherit; }
button, input, select, textarea { font: inherit; }
img { display: block; max-width: 100%; }
.shell { margin: 0 auto; max-width: var(--shell); padding-left: 28px; padding-right: 28px; width: 100%; }
.sr-only { height: 1px; margin: -1px; overflow: hidden; padding: 0; position: absolute; width: 1px; clip: rect(0, 0, 0, 0); }
.skip-link { background: var(--cyan); color: #06100f; font-weight: 800; left: 16px; padding: 10px 14px; position: fixed; top: -100px; z-index: 9999; }
.skip-link:focus { top: 16px; }

.site-header { backdrop-filter: blur(12px); background: rgba(4, 22, 30, 0.82); border-bottom: 1px solid rgba(113, 239, 255, .16); box-shadow: 0 8px 28px rgba(0, 0, 0, .16); left: 0; position: fixed; right: 0; top: 0; transition: .25s ease; z-index: 1000; }
.site-header.is-scrolled { backdrop-filter: blur(20px); background: rgba(5, 25, 34, 0.93); border-color: var(--line); }
.header-inner { align-items: center; display: flex; height: 84px; justify-content: space-between; }
.brand { align-items: center; display: inline-flex; gap: 12px; text-decoration: none; }
.brand-logo-frame { align-items: center; display: inline-flex; flex: 0 0 auto; height: 56px; justify-content: center; width: 56px; }
.brand-logo { display: block; filter: drop-shadow(0 0 1px rgba(255,242,127,.98)) drop-shadow(0 0 4px rgba(255,242,127,.62)) drop-shadow(0 0 9px rgba(255,242,127,.28)); height: 100%; object-fit: contain; width: 100%; }
.brand-copy { display: flex; flex-direction: column; line-height: 1; }
.brand-copy strong { font-size: 18px; font-weight: 800; letter-spacing: -.04em; }
.brand-copy small { color: var(--orange-bright); font: 700 9px/1.3 var(--mono); letter-spacing: .2em; margin-top: 5px; }
.site-menu { align-items: center; display: flex; gap: 30px; }
.site-menu a { color: #c9d0d4; font-size: 13px; font-weight: 700; text-decoration: none; }
.site-menu a:hover { color: var(--ink); }
.site-menu .nav-cta, .nav-cta { border: 1px solid rgba(113, 239, 255, .5); border-radius: 999px; color: var(--ink); padding: 10px 17px; }
.site-menu .nav-cta:hover, .nav-cta:hover { background: var(--orange); color: #111; }
.menu-toggle { background: transparent; border: 0; display: none; height: 44px; padding: 10px; width: 44px; }
.menu-toggle span { background: var(--ink); display: block; height: 2px; margin: 5px 0; transition: .2s ease; width: 24px; }

.hero { align-items: center; background-image: linear-gradient(90deg, rgba(3,17,24,.86) 0%, rgba(3,20,29,.62) 40%, rgba(2,24,34,.14) 72%, rgba(2,19,28,.03) 100%), linear-gradient(0deg, rgba(4,22,29,.28), transparent 55%), url('assets/elliot-lake-creative-future-hero-shoreline.webp'); background-position: center; background-size: cover; display: flex; min-height: 860px; overflow: hidden; padding: 150px 0 85px; position: relative; }
.hero-grid { background-image: linear-gradient(rgba(113,239,255,.045) 1px, transparent 1px), linear-gradient(90deg, rgba(113,239,255,.045) 1px, transparent 1px); background-size: 54px 54px; inset: 0; mask-image: linear-gradient(to bottom, black, transparent 92%); position: absolute; }
.hero-orbit { border: 1px solid rgba(22, 224, 208, .13); border-radius: 50%; position: absolute; }
.orbit-one { height: 480px; right: -210px; top: 110px; width: 480px; }
.orbit-two { border-color: rgba(113, 239, 255, .14); height: 250px; left: -140px; top: 330px; width: 250px; }
.hero-layout { align-items: center; display: grid; gap: 72px; grid-template-columns: minmax(0, 1.08fr) minmax(390px, .92fr); position: relative; z-index: 1; }
.eyebrow { align-items: center; color: var(--orange-bright); display: flex; font: 700 11px/1.4 var(--mono); gap: 10px; letter-spacing: .11em; margin: 0 0 20px; text-transform: uppercase; }
.eyebrow span { background: var(--cyan); border-radius: 50%; box-shadow: 0 0 16px rgba(22, 224, 208, .7); display: inline-block; height: 7px; width: 7px; }
.hero h1 { font-size: clamp(44px, 5vw, 72px); letter-spacing: -.06em; line-height: .99; margin: 0; max-width: 720px; }
.hero h1 em { color: var(--orange); display: block; font-style: normal; text-shadow: 0 0 36px rgba(201,255,93,.12); }
.hero-lead { color: #b3bec4; font-size: 18px; margin: 27px 0 0; max-width: 650px; }
.hero-actions { display: flex; flex-wrap: wrap; gap: 13px; margin-top: 34px; }
.button { align-items: center; border: 1px solid transparent; border-radius: 12px; display: inline-flex; font-size: 13px; font-weight: 800; gap: 20px; justify-content: center; padding: 14px 19px; text-decoration: none; transition: transform .18s ease, background .18s ease, border-color .18s ease; }
.button:hover { transform: translateY(-2px); }
.button-primary { background: linear-gradient(135deg, var(--orange), #8fffc8); color: #06232a; box-shadow: 0 12px 35px rgba(77,225,208,.16); }
.button-primary:hover { background: linear-gradient(135deg, #dcff85, var(--cyan)); }
.button-ghost { border-color: var(--line); color: #d9dfe2; }
.button-ghost:hover { border-color: rgba(22,224,208,.45); }
.hero-trust { display: flex; flex-wrap: wrap; gap: 19px; list-style: none; margin: 30px 0 0; padding: 0; }
.hero-trust li { color: #8f9da5; font-size: 11px; font-weight: 700; }
.hero-trust i { color: var(--cyan); font-style: normal; margin-right: 5px; }

.hero-board { backdrop-filter: blur(16px); background: linear-gradient(145deg, rgba(8,42,53,.8), rgba(4,24,33,.9)); border: 1px solid rgba(113,239,255,.25); border-radius: 27px; box-shadow: 0 36px 80px rgba(0,0,0,.42); padding: 18px; position: relative; transform: rotate(1.5deg); }
.hero-board::before { border: 1px solid rgba(201,255,93,.3); border-radius: 27px; content: ""; inset: 8px -8px -8px 8px; pointer-events: none; position: absolute; z-index: -1; }
.board-topline { align-items: center; color: #849198; display: flex; font: 700 8px/1 var(--mono); justify-content: space-between; letter-spacing: .14em; padding: 4px 4px 17px; }
.board-topline b { color: var(--cyan); }
.board-display { background: #050809; border: 1px solid rgba(22,224,208,.18); border-radius: 15px; min-height: 180px; overflow: hidden; padding: 26px; position: relative; }
.board-display::after { background: linear-gradient(90deg, transparent, rgba(22,224,208,.05), transparent); content: ""; inset: 0; position: absolute; transform: translateX(-100%); animation: boardScan 4s infinite; }
@keyframes boardScan { 55%,100% { transform: translateX(100%); } }
.display-label { color: #78878e; font: 700 9px/1 var(--mono); letter-spacing: .14em; }
.display-word { color: var(--ink); font: 700 clamp(30px, 4vw, 46px)/1 var(--mono); letter-spacing: -.07em; margin-top: 35px; min-height: 48px; }
.display-word::after { animation: blink .9s steps(2) infinite; color: var(--orange); content: "_"; }
@keyframes blink { 50% { opacity: 0; } }
.display-rule { background: #182328; bottom: 20px; height: 4px; left: 26px; position: absolute; right: 26px; }
.display-rule i { background: linear-gradient(90deg, var(--orange), var(--cyan)); display: block; height: 100%; width: 68%; }
.board-cards { display: grid; gap: 8px; grid-template-columns: repeat(3, 1fr); margin-top: 8px; }
.board-cards article { background: #10171b; border: 1px solid var(--line); border-radius: 13px; min-width: 0; padding: 14px 12px; }
.service-number { color: var(--orange); display: block; font: 700 8px/1 var(--mono); }
.board-cards strong { display: block; font-size: 17px; margin: 10px 0 2px; }
.board-cards small { color: #748188; display: block; font-size: 8px; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.board-status { align-items: center; color: #829098; display: flex; font: 700 8px/1 var(--mono); gap: 7px; padding: 16px 4px 2px; text-transform: uppercase; }
.board-status span { animation: statusPulse 1.8s infinite; background: var(--green); border-radius: 50%; height: 7px; width: 7px; }
@keyframes statusPulse { 50% { box-shadow: 0 0 0 7px rgba(116,237,157,0); } 0% { box-shadow: 0 0 0 0 rgba(116,237,157,.4); } }

.signal-strip { background: #eff6f1; border-bottom: 1px solid #cddcd8; color: #0a3540; max-width: 100%; overflow: hidden; padding: 14px 0; transform: rotate(-.25deg); }
.signal-track { align-items: center; animation: marquee 26s linear infinite; display: flex; font: 700 10px/1 var(--mono); gap: 20px; letter-spacing: .12em; text-transform: uppercase; white-space: nowrap; width: max-content; }
.signal-track i { color: #0fb6b4; font-style: normal; }
@keyframes marquee { to { transform: translateX(-50%); } }

.homepage-incubator { background: #edf3e7; border-bottom: 1px solid #cbd8d1; color: #082a33; overflow: hidden; padding: 76px 0 86px; position: relative; }
.homepage-incubator::before { background: var(--orange); content: ""; height: 260px; position: absolute; right: -125px; top: -145px; transform: rotate(18deg); width: 340px; }
.homepage-incubator-label { align-items: center; border-bottom: 1px solid rgba(8,42,51,.22); display: grid; font: 700 8px/1 var(--mono); grid-template-columns: 1fr auto auto; letter-spacing: .12em; padding-bottom: 15px; }
.homepage-incubator-label span { color: #087b83; }
.homepage-incubator-label b { background: #082a33; color: #fff; padding: 8px 11px; }
.homepage-incubator-label i { color: #648087; font-style: normal; margin-left: 22px; }
.homepage-incubator-layout { align-items: stretch; display: grid; gap: 70px; grid-template-columns: 1.15fr .85fr; padding-top: 48px; position: relative; }
.homepage-incubator-copy { display: flex; flex-direction: column; }
.homepage-incubator-copy > p { color: #07858b; font: 700 9px/1 var(--mono); letter-spacing: .15em; margin: 0 0 24px; }
.homepage-incubator-copy h2 { font-size: clamp(43px, 5.4vw, 71px); letter-spacing: -.069em; line-height: .98; margin: 0; max-width: 760px; }
.homepage-incubator-copy h2 em { color: #0a9794; font-style: normal; }
.homepage-incubator-summary { align-items: end; display: grid; gap: 36px; grid-template-columns: 1fr auto; margin-top: auto; padding-top: 45px; }
.homepage-incubator-summary p { color: #5d7479; font-size: 13px; line-height: 1.72; margin: 0; max-width: 590px; }
.homepage-incubator-summary a { align-items: center; border-bottom: 2px solid #082a33; color: #082a33; display: inline-flex; font-size: 11px; font-weight: 800; gap: 18px; padding: 0 0 8px; text-decoration: none; white-space: nowrap; }
.homepage-incubator-summary a span { color: #0a9794; }
.homepage-incubator-ticket { background: #082a33; box-shadow: 13px 13px 0 var(--orange); color: #fff; display: flex; flex-direction: column; min-height: 390px; padding: 26px; }
.homepage-ticket-title { align-items: center; border-bottom: 1px solid rgba(255,255,255,.15); display: flex; font: 700 8px/1 var(--mono); justify-content: space-between; letter-spacing: .1em; padding-bottom: 17px; }
.homepage-ticket-title span { color: var(--cyan); }
.homepage-ticket-title b { color: var(--orange); }
.homepage-ticket-stats { display: grid; grid-template-columns: repeat(3, 1fr); }
.homepage-ticket-stats div { border-right: 1px solid rgba(255,255,255,.13); display: flex; flex-direction: column; padding: 25px 14px 22px 0; }
.homepage-ticket-stats div:not(:first-child) { padding-left: 16px; }
.homepage-ticket-stats div:last-child { border-right: 0; }
.homepage-ticket-stats strong { font-size: 31px; letter-spacing: -.06em; }
.homepage-ticket-stats small { color: #829ca3; font: 700 7px/1.35 var(--mono); margin-top: 5px; }
.homepage-incubator-ticket ol { border-bottom: 1px solid rgba(255,255,255,.14); border-top: 1px solid rgba(255,255,255,.14); display: grid; grid-template-columns: repeat(4, 1fr); list-style: none; margin: 0; padding: 17px 0; }
.homepage-incubator-ticket li { color: #b5c6ca; font: 700 7px/1.4 var(--mono); padding: 0 8px; }
.homepage-incubator-ticket li:first-child { padding-left: 0; }
.homepage-incubator-ticket li span { color: var(--orange); display: block; margin-bottom: 8px; }
.homepage-incubator-ticket > a { align-items: center; background: var(--orange); color: #082a33; display: flex; font: 800 9px/1 var(--mono); justify-content: space-between; margin-top: auto; padding: 15px 17px; text-decoration: none; }

.section { padding: 112px 0; }
.services { background: linear-gradient(135deg, #f7faf6, #e9f4f1); color: #082a33; }
.services .section-heading > p { color: #536d73; }
.services .eyebrow { color: #0b7180; }
.services .eyebrow span { background: #0bb9b2; }
.section-heading { align-items: end; display: grid; gap: 80px; grid-template-columns: 1fr .65fr; margin-bottom: 45px; }
.section-heading h2, .process h2, .community h2, .quote h2 { font-size: clamp(34px, 4vw, 54px); letter-spacing: -.055em; line-height: 1.05; margin: 0; }
.section-heading > p, .process-intro > p:not(.eyebrow), .quote-copy > p { color: var(--muted); margin: 0; }
.service-grid { display: grid; gap: 16px; grid-template-columns: repeat(2, 1fr); }
.service-card { background: rgba(255,255,255,.82); border: 1px solid rgba(8,62,71,.13); border-radius: var(--radius); box-shadow: 0 18px 45px rgba(5,49,57,.06); min-height: 460px; overflow: hidden; padding: 34px; position: relative; transition: border-color .2s ease, transform .2s ease; }
.service-card:hover { border-color: rgba(22,224,208,.34); transform: translateY(-4px); }
.service-card::after { background: radial-gradient(circle, rgba(22,224,208,.08), transparent 68%); content: ""; height: 260px; position: absolute; right: -90px; top: -110px; width: 260px; }
.service-featured::after { background: radial-gradient(circle, rgba(201,255,93,.18), transparent 68%); }
.service-project { grid-column: 1 / -1; min-height: 0; }
.service-help { background: linear-gradient(145deg, #e4f7f3, #f4f9ed); }
.service-icon { align-items: center; border: 1px solid rgba(7,88,98,.2); border-radius: 14px; color: #0a9f9c; display: flex; font: 700 14px/1 var(--mono); height: 48px; justify-content: center; margin-bottom: 32px; position: relative; width: 48px; z-index: 1; }
.icon-print { color: var(--orange); }
.icon-print span { border: 2px solid currentColor; height: 17px; width: 20px; }
.icon-print span::before { border: 2px solid currentColor; content: ""; height: 9px; left: 14px; position: absolute; top: 10px; width: 16px; }
.icon-brand span { font-size: 23px; }
.icon-help { border-radius: 50%; color: var(--green); }
.card-kicker { color: #087483; font: 700 9px/1 var(--mono); letter-spacing: .14em; margin: 0 0 12px; }
.service-card h3 { font-size: 27px; letter-spacing: -.04em; line-height: 1.15; margin: 0; max-width: 420px; }
.service-card > p:not(.card-kicker) { color: #587076; font-size: 14px; margin: 16px 0; max-width: 480px; }
.service-card ul { border-top: 1px solid var(--line); list-style: none; margin: 22px 0 0; padding: 18px 0 10px; }
.service-card li { color: #324f56; font-size: 13px; margin: 8px 0; padding-left: 17px; position: relative; }
.service-card li::before { color: var(--cyan); content: "+"; left: 0; position: absolute; }
.service-card > a { color: #082a33; display: inline-flex; font-size: 12px; font-weight: 800; gap: 12px; margin-top: 7px; text-decoration: none; }
.service-card > a span { color: var(--orange); }
.service-note { border-left: 2px solid #0bb9b2; color: #62777c; font-size: 12px; margin: 24px 0 0; padding: 5px 0 5px 15px; }
.service-note strong { color: #163b43; }

.portfolio { background: radial-gradient(circle at 85% 10%, rgba(77,225,208,.11), transparent 25%), #061c25; border-top: 1px solid var(--line); }
.portfolio-heading { margin-bottom: 52px; }
.portfolio-grid { display: grid; gap: 16px; grid-template-columns: repeat(2, minmax(0, 1fr)); }
.portfolio-item { background: var(--panel); border: 1px solid var(--line); border-radius: var(--radius); overflow: hidden; }
.portfolio-wide { display: grid; grid-column: 1 / -1; grid-template-columns: 1.12fr .88fr; }
.portfolio-visual { align-items: center; background: #0a0e11; display: flex; height: 300px; justify-content: center; overflow: hidden; padding: 30px; position: relative; }
.portfolio-wide .portfolio-visual { height: auto; min-height: 390px; }
.portfolio-visual::before { background-image: linear-gradient(rgba(255,255,255,.035) 1px, transparent 1px), linear-gradient(90deg, rgba(255,255,255,.035) 1px, transparent 1px); background-size: 28px 28px; content: ""; inset: 0; position: absolute; }
.portfolio-info { padding: 30px; }
.portfolio-wide .portfolio-info { align-self: center; padding: 42px; }
.portfolio-meta { align-items: center; display: flex; flex-wrap: wrap; gap: 9px; }
.portfolio-meta span, .portfolio-meta b { font: 700 8px/1 var(--mono); letter-spacing: .12em; padding: 7px 9px; text-transform: uppercase; }
.portfolio-meta span { background: rgba(22,224,208,.1); border: 1px solid rgba(22,224,208,.22); border-radius: 5px; color: var(--cyan); }
.portfolio-meta b { color: #77858c; }
.portfolio-info h3 { font-size: 26px; letter-spacing: -.04em; line-height: 1.15; margin: 18px 0 10px; }
.portfolio-info > p { color: var(--muted); font-size: 13px; margin: 0; }
.portfolio-info ul { display: flex; flex-wrap: wrap; gap: 8px 18px; list-style: none; margin: 21px 0 0; padding: 18px 0 0; border-top: 1px solid var(--line); }
.portfolio-info li { color: #b6c0c5; font-size: 10px; padding-left: 12px; position: relative; }
.portfolio-info li::before { color: var(--orange); content: "/"; left: 0; position: absolute; }
.portfolio-demo-visual { padding: 22px; }
.portfolio-demo-preview { border: 7px solid #20292e; border-radius: 13px; box-shadow: 0 25px 50px rgba(0,0,0,.4); display: block; max-width: 620px; overflow: hidden; position: relative; transform: rotate(-1.5deg); width: 94%; z-index: 1; }
.portfolio-demo-preview img { display: block; height: auto; width: 100%; }
.portfolio-card-preview { height: 100%; max-width: none; transform: none; width: 100%; }
.portfolio-card-preview img { height: 100%; object-fit: cover; object-position: top center; }
.portfolio-demo-preview > span { background: var(--orange); bottom: 12px; color: #101619; font: 800 9px/1 var(--mono); letter-spacing: .08em; padding: 10px 12px; position: absolute; right: 12px; text-transform: uppercase; }
.portfolio-demo-preview > span b { margin-left: 8px; }
.portfolio-demo-link { align-items: center; color: var(--cyan); display: inline-flex; font-size: 11px; font-weight: 800; gap: 12px; margin-top: 24px; text-decoration: none; }
.portfolio-demo-link:hover { color: #fff; }

.product-gallery-visual { background: radial-gradient(circle at 18% 20%, rgba(255,242,127,.12), transparent 35%), #090d0f; padding: 14px 14px 52px; }
.brand-gallery-visual { background: radial-gradient(circle at 82% 18%, rgba(182,116,70,.14), transparent 38%), #090d0f; padding: 14px 14px 52px; }
.brand-gallery-visual::before { opacity: .5; }
.brand-carousel .product-slides { background: #d9d1c5; }
.brand-carousel .product-slide { --product-bg: #d9d1c5; }
.brand-carousel .product-zoom-button img { object-fit: cover; }
.product-carousel { height: 100%; min-height: 234px; outline: none; position: relative; touch-action: pan-y; width: 100%; z-index: 1; }
.product-carousel:focus-visible { border-radius: 12px; box-shadow: 0 0 0 2px var(--cyan); }
.product-slides { background: #fefefe; border-radius: 10px; height: 100%; overflow: hidden; position: relative; width: 100%; }
.product-slide { --product-bg: #fefefe; align-items: center; background: var(--product-bg); display: flex; inset: 0; justify-content: center; margin: 0; opacity: 0; position: absolute; transition: opacity .28s ease; visibility: hidden; }
.product-slide:nth-child(1) { --product-bg: #fdfdfd; }
.product-slide:nth-child(7) { --product-bg: #f6f6f6; }
.product-slide:nth-child(n+8) { --product-bg: #f6f6f6; }
.product-slide.is-active { opacity: 1; visibility: visible; }
.product-zoom-button { background: var(--product-bg); border: 0; cursor: zoom-in; height: 100%; margin: 0; padding: 0; width: 100%; }
.product-zoom-button:focus-visible { box-shadow: inset 0 0 0 3px #087483; outline: none; }
.product-zoom-button img { background: var(--product-bg); display: block; height: 100%; object-fit: contain; width: 100%; }
.product-slide figcaption { background: rgba(4,22,30,.86); border: 1px solid rgba(255,255,255,.12); border-radius: 6px; bottom: 8px; color: #edf4f3; font: 700 8px/1 var(--mono); left: 8px; letter-spacing: .08em; padding: 7px 8px; position: absolute; text-transform: uppercase; }
.product-carousel-controls { align-items: center; bottom: -42px; display: flex; gap: 12px; justify-content: center; left: 0; position: absolute; right: 0; }
.product-carousel-controls button { align-items: center; background: #12272f; border: 1px solid rgba(77,225,208,.28); border-radius: 50%; color: var(--cyan); cursor: pointer; display: inline-flex; font-size: 16px; height: 30px; justify-content: center; transition: .2s ease; width: 30px; }
.product-carousel-controls button:hover, .product-carousel-controls button:focus-visible { background: var(--cyan); color: #061c25; outline: none; transform: translateY(-1px); }
.product-carousel-controls span { color: #d5dfe1; font: 700 9px/1 var(--mono); letter-spacing: .12em; min-width: 48px; text-align: center; }
.product-lightbox { background: transparent; border: 0; height: 100%; margin: auto; max-height: none; max-width: none; padding: 20px; width: 100%; }
.product-lightbox::backdrop { backdrop-filter: blur(8px); background: rgba(2,12,17,.88); }
.product-lightbox-panel { --product-bg: #fefefe; align-items: center; background: var(--product-bg); border: 1px solid rgba(255,255,255,.2); border-radius: 16px; box-shadow: 0 30px 80px rgba(0,0,0,.65); display: flex; flex-direction: column; height: calc(100vh - 40px); justify-content: center; margin: auto; max-width: 1100px; overflow: hidden; padding: 48px 18px 18px; position: relative; }
.product-lightbox-panel img { background: var(--product-bg); display: block; height: calc(100% - 42px); max-width: 100%; object-fit: contain; width: 100%; }
.product-lightbox-panel p { color: #163b43; font: 700 10px/1.3 var(--mono); letter-spacing: .1em; margin: 14px 0 0; text-align: center; text-transform: uppercase; }
.product-lightbox-close { align-items: center; background: #082a33; border: 0; border-radius: 50%; color: #fff; cursor: pointer; display: flex; font-size: 27px; height: 38px; justify-content: center; line-height: 1; position: absolute; right: 12px; top: 10px; width: 38px; z-index: 2; }
.product-lightbox-close:hover, .product-lightbox-close:focus-visible { background: #087483; outline: 2px solid var(--cyan); outline-offset: 2px; }
body.has-lightbox { overflow: hidden; }

.mock-browser { background: #e9ecee; border: 7px solid #20292e; border-radius: 13px; box-shadow: 0 25px 50px rgba(0,0,0,.4); max-width: 520px; overflow: hidden; position: relative; transform: rotate(-2deg); width: 90%; }
.mock-browser-top { align-items: center; background: #20292e; color: #78858b; display: flex; font: 400 6px/1 var(--mono); gap: 5px; height: 22px; padding: 0 8px; }
.mock-browser-top i { background: #4f5d64; border-radius: 50%; height: 5px; width: 5px; }
.mock-browser-top i:first-child { background: var(--orange); }
.mock-browser-top span { margin-left: auto; margin-right: auto; }
.mock-site { display: grid; grid-template-columns: 1.1fr .9fr; min-height: 240px; }
.mock-site-copy { background: #f1eee8; color: #101619; display: flex; flex-direction: column; padding: 28px; }
.mock-site-copy b { font-size: 27px; letter-spacing: -.07em; line-height: .95; }
.mock-site-copy > span { background: #b6bdbe; height: 5px; margin-top: 16px; width: 70%; }
.mock-site-copy > span + span { margin-top: 6px; width: 48%; }
.mock-site-copy em { align-self: flex-start; background: var(--orange); font: 700 6px/1 var(--mono); margin-top: auto; padding: 8px 10px; }
.mock-site-art { align-items: end; background: #102b2b; display: flex; gap: 8px; justify-content: center; padding: 24px; }
.mock-site-art i { background: linear-gradient(var(--cyan), #117d79); border-radius: 30px 30px 0 0; height: 45%; width: 20%; }
.mock-site-art i:nth-child(2) { background: linear-gradient(var(--orange), #4e8f50); height: 72%; }
.mock-site-art i:nth-child(3) { height: 90%; }

.visual-apparel { background: radial-gradient(circle at 25% 30%, rgba(201,255,93,.16), transparent 34%), #0a0e11; gap: 30px; }
.shirt { align-items: center; background: #e8e4da; clip-path: polygon(25% 5%, 39% 0, 44% 12%, 56% 12%, 61% 0, 75% 5%, 100% 24%, 83% 42%, 73% 32%, 76% 100%, 24% 100%, 27% 32%, 17% 42%, 0 24%); color: #111; display: flex; font: 800 26px/1 var(--mono); height: 190px; justify-content: center; position: relative; transform: rotate(-4deg); width: 180px; z-index: 1; }
.shirt span { background: var(--orange); padding: 11px 9px; transform: rotate(4deg); }
.mug { align-items: center; background: #f5f3ed; border-radius: 5px 5px 24px 24px; color: #111; display: flex; font: 700 9px/1.2 var(--mono); height: 115px; justify-content: center; position: relative; text-align: center; transform: rotate(5deg); width: 100px; z-index: 1; }
.mug::after { border: 11px solid #f5f3ed; border-left: 0; border-radius: 0 50% 50% 0; content: ""; height: 48px; position: absolute; right: -27px; top: 17px; width: 20px; }
.mug span { color: var(--orange); }
.swatches { bottom: 28px; display: flex; gap: 5px; left: 34px; position: absolute; z-index: 2; }
.swatches i { background: var(--orange); border-radius: 50%; height: 12px; width: 12px; }
.swatches i:nth-child(2) { background: var(--cyan); }.swatches i:nth-child(3) { background: #eee; }

.visual-brand { background: radial-gradient(circle at 80% 20%, rgba(22,224,208,.12), transparent 35%), #0a0e11; }
.brand-sheet { background: #eee9df; box-shadow: 0 20px 35px rgba(0,0,0,.35); color: #101619; height: 205px; padding: 23px; position: relative; transform: rotate(-5deg); width: 250px; z-index: 1; }
.brand-sheet strong { font-size: 31px; letter-spacing: -.08em; line-height: .82; }
.brand-sheet div { display: flex; gap: 6px; margin-top: 30px; }
.brand-sheet i { background: #111; display: block; height: 22px; width: 22px; }.brand-sheet i:nth-child(2) { background: var(--orange); }.brand-sheet i:nth-child(3) { background: var(--cyan); }.brand-sheet i:nth-child(4) { background: #b9b2a5; }
.brand-sheet span { bottom: 18px; font: 700 5px/1 var(--mono); left: 23px; letter-spacing: .12em; position: absolute; }
.brand-card { background: var(--orange); bottom: 34px; color: #121212; display: flex; flex-direction: column; height: 112px; justify-content: space-between; padding: 15px; position: absolute; right: 35px; transform: rotate(7deg); width: 175px; z-index: 2; }
.brand-card b { font: 700 21px/1 var(--mono); }.brand-card span { font: 700 8px/1.2 var(--mono); }

.visual-software { background: radial-gradient(circle at 50% 100%, rgba(22,224,208,.1), transparent 50%), #080c0e; }
.dashboard { background: #12191d; border: 1px solid #39464d; border-radius: 9px; box-shadow: 0 25px 45px rgba(0,0,0,.45); display: grid; grid-template-columns: 45px 1fr; height: 205px; max-width: 430px; overflow: hidden; position: relative; transform: perspective(900px) rotateX(3deg) rotateY(-6deg); width: 90%; z-index: 1; }
.dashboard aside { align-items: center; background: #0b1013; display: flex; flex-direction: column; gap: 18px; padding: 12px 0; }.dashboard aside b { color: var(--orange); font: 700 9px/1 var(--mono); }.dashboard aside i { background: #3e4a50; border-radius: 50%; height: 8px; width: 8px; }.dashboard aside i:nth-of-type(2) { background: var(--cyan); }
.dash-main { padding: 18px; }.dash-main > span { color: #89969c; font: 700 6px/1 var(--mono); letter-spacing: .13em; }
.dash-metrics { display: grid; gap: 8px; grid-template-columns: repeat(3,1fr); margin-top: 15px; }.dash-metrics i { background: linear-gradient(135deg,#1c272d,#182126); border: 1px solid #2b383e; border-radius: 5px; height: 45px; }.dash-metrics i:nth-child(2) { border-top-color: var(--orange); }.dash-metrics i:nth-child(3) { border-top-color: var(--cyan); }
.dash-chart { align-items: end; border-bottom: 1px solid #324148; display: flex; gap: 9px; height: 83px; padding: 10px; }.dash-chart b { background: #435259; height: 30%; width: 9%; }.dash-chart b:nth-child(2) { height: 65%; }.dash-chart b:nth-child(3) { background: var(--orange); height: 47%; }.dash-chart b:nth-child(4) { height: 80%; }.dash-chart b:nth-child(5) { background: var(--cyan); height: 90%; }.dash-chart b:nth-child(6) { height: 58%; }

.visual-campaign { background: radial-gradient(circle at 40% 45%, rgba(113,239,255,.16), transparent 40%), #090c0e; }
.campaign-poster { background: var(--orange); color: #111; display: flex; flex-direction: column; height: 215px; justify-content: space-between; padding: 22px; position: relative; transform: rotate(-5deg); width: 155px; z-index: 1; }.campaign-poster span { font-size: 31px; font-weight: 800; letter-spacing: -.08em; line-height: .82; }.campaign-poster b { border-top: 2px solid #111; font: 700 6px/1 var(--mono); padding-top: 9px; }
.campaign-phone { background: #20292d; border: 3px solid #323d42; border-radius: 23px; height: 235px; margin-left: 25px; padding: 8px; position: relative; transform: rotate(7deg); width: 120px; z-index: 2; }.campaign-phone::before { background: #050708; border-radius: 10px; content: ""; height: 5px; left: 42px; position: absolute; top: 4px; width: 34px; }.campaign-phone > div { background: #d9f8f2; border-radius: 15px; color: #0c1718; display: flex; flex-direction: column; height: 100%; padding: 22px 12px; }.campaign-phone small { font: 700 5px/1 var(--mono); }.campaign-phone strong { font-size: 19px; letter-spacing: -.08em; line-height: .83; margin-top: 24px; }.campaign-phone i { background: var(--cyan); border-radius: 50% 50% 0 0; display: block; height: 60px; margin-top: auto; }

.portfolio-training .portfolio-visual { background: radial-gradient(circle at 70% 40%, rgba(116,237,157,.12), transparent 38%), #0a0e11; }
.training-device { background: #eae8df; border: 7px solid #242c30; border-radius: 18px; box-shadow: 0 24px 45px rgba(0,0,0,.4); display: grid; gap: 8px; grid-template-columns: 52px 1fr; padding: 20px; position: relative; transform: rotate(-3deg); width: 250px; z-index: 1; }.training-device span { align-items: center; background: var(--cyan); border-radius: 50%; color: #081110; display: flex; font: 700 17px/1 var(--mono); grid-row: span 3; justify-content: center; }.training-device i { background: #aab0ac; display: block; height: 8px; }.training-device i:nth-of-type(2) { width: 70%; }.training-device i:nth-of-type(3) { background: var(--orange); width: 42%; }
.training-steps { display: flex; flex-direction: column; gap: 8px; margin-left: 20px; position: relative; z-index: 1; }.training-steps span { align-items: center; background: #172126; border: 1px solid var(--line); border-radius: 8px; color: #aeb8bd; display: flex; font-size: 8px; gap: 8px; min-width: 150px; padding: 9px; }.training-steps b { align-items: center; background: var(--orange); border-radius: 50%; color: #111; display: flex; font: 700 7px/1 var(--mono); height: 18px; justify-content: center; width: 18px; }
.portfolio-cta { align-items: center; background: linear-gradient(90deg, #142027, #101719); border: 1px solid var(--line); border-radius: 16px; display: flex; justify-content: space-between; margin-top: 20px; padding: 26px 30px; }
.portfolio-cta > div { display: flex; flex-direction: column; }.portfolio-cta > div span { color: var(--cyan); font: 700 8px/1 var(--mono); letter-spacing: .12em; }.portfolio-cta > div strong { font-size: 20px; letter-spacing: -.03em; margin-top: 8px; }

.local-help { background: radial-gradient(circle at 92% 8%, rgba(201,255,93,.11), transparent 24%), radial-gradient(circle at 6% 70%, rgba(77,225,208,.1), transparent 26%), #071f27; border-bottom: 1px solid var(--line); border-top: 1px solid var(--line); scroll-margin-top: 85px; }
.local-help-heading { align-items: end; display: grid; gap: 80px; grid-template-columns: 1.15fr .65fr; margin-bottom: 46px; }
.local-help-heading h2 { font-size: clamp(38px, 4.8vw, 66px); letter-spacing: -.06em; line-height: .98; margin: 0; max-width: 830px; }
.local-help-heading > p { color: #a6bcc1; margin: 0; }
.help-topic-grid { background: rgba(142,223,215,.17); border: 1px solid rgba(142,223,215,.17); border-radius: var(--radius); display: grid; gap: 1px; grid-template-columns: repeat(3, 1fr); overflow: hidden; }
.help-topic { background: rgba(7,31,39,.96); display: grid; gap: 22px; grid-template-columns: 36px 1fr; min-height: 300px; padding: 30px 28px; position: relative; transition: background .2s ease; }
.help-topic:hover { background: #0a2b34; z-index: 1; }
.help-topic-number { color: var(--orange); font: 700 9px/1 var(--mono); padding-top: 6px; }
.help-topic > div > p { color: var(--cyan); font: 700 8px/1.2 var(--mono); letter-spacing: .12em; margin: 0 0 12px; }
.help-topic h3 { font-size: 22px; letter-spacing: -.035em; line-height: 1.15; margin: 0; }
.help-topic ul { color: #91aab0; font-size: 12px; list-style: none; margin: 22px 0 0; padding: 0; }
.help-topic li { border-top: 1px solid rgba(142,223,215,.12); padding: 8px 0; }
.help-topic li::before { color: var(--orange); content: "›"; margin-right: 8px; }
.help-delivery { align-items: start; display: grid; gap: 70px; grid-template-columns: .9fr 1.1fr; padding: 90px 0 70px; }
.help-delivery-copy { position: sticky; top: 120px; }
.help-delivery-copy h3 { font-size: clamp(32px, 4vw, 50px); letter-spacing: -.055em; line-height: 1.03; margin: 0; }
.help-delivery-copy > p:not(.eyebrow) { color: #9fb6bd; margin: 24px 0; }
.help-audience { display: flex; flex-wrap: wrap; gap: 8px; }
.help-audience span { border: 1px solid rgba(77,225,208,.2); border-radius: 999px; color: #b7cbcf; font: 700 8px/1 var(--mono); padding: 10px 12px; text-transform: uppercase; }
.help-formats { display: grid; gap: 12px; grid-template-columns: repeat(2, 1fr); }
.help-formats article { background: linear-gradient(145deg, rgba(18,56,69,.95), rgba(11,41,51,.95)); border: 1px solid rgba(142,223,215,.16); border-radius: 16px; min-height: 220px; padding: 27px; }
.help-formats article:nth-child(1) { border-top-color: var(--orange); }
.help-formats article:nth-child(2) { border-top-color: var(--cyan); }
.help-formats article:nth-child(3) { border-top-color: #71efff; }
.help-formats article:nth-child(4) { border-top-color: #f2d47d; }
.help-formats article:nth-child(5) { border-top-color: var(--orange); }
.help-formats .help-format-visit { align-items: center; display: grid; gap: 0 22px; grid-column: 1 / -1; grid-template-columns: 150px 210px 1fr; min-height: 0; }
.help-formats .help-format-visit span { grid-column: 1; grid-row: 1; }
.help-formats .help-format-visit h4 { grid-column: 2; grid-row: 1; margin: 0; }
.help-formats .help-format-visit p { grid-column: 3; grid-row: 1; }
.help-formats span { color: var(--cyan); font: 700 8px/1 var(--mono); letter-spacing: .12em; }
.help-formats h4 { font-size: 20px; letter-spacing: -.03em; margin: 16px 0 8px; }
.help-formats p { color: #91aab0; font-size: 12px; margin: 0; }
.help-cta { align-items: center; background: linear-gradient(110deg, #d7ff77, #61e7d8); border-radius: var(--radius); color: #06232b; display: flex; gap: 35px; justify-content: space-between; overflow: hidden; padding: 30px 34px; position: relative; }
.help-cta::after { border: 1px solid rgba(4,45,52,.16); border-radius: 50%; content: ""; height: 240px; position: absolute; right: 26%; top: -150px; width: 240px; }
.help-cta > div:first-child { display: flex; flex-direction: column; max-width: 560px; position: relative; z-index: 1; }
.help-cta > div:first-child span { font: 700 8px/1.3 var(--mono); letter-spacing: .11em; margin-bottom: 8px; }
.help-cta strong { font-size: 21px; letter-spacing: -.03em; line-height: 1.25; }
.help-cta-actions { display: flex; flex-shrink: 0; gap: 9px; position: relative; z-index: 1; }
.help-cta .button-secondary { background: rgba(255,255,255,.35); border-color: rgba(6,35,43,.25); color: #06232b; }
.help-cta .button-primary { background: #06232b; color: #fff; }
.help-boundary { border-left: 2px solid var(--cyan); color: #7f999f; font-size: 10px; margin: 24px 0 0; padding: 0 0 0 14px; }
.help-boundary strong { color: #b4c8cc; }

.packages { background: #eef5f1; color: #092c35; scroll-margin-top: 85px; }
.packages .eyebrow { color: #087483; }
.packages-heading { align-items: end; display: grid; gap: 80px; grid-template-columns: 1.1fr .7fr; margin-bottom: 34px; }
.packages-heading h2 { font-size: clamp(38px, 4.6vw, 62px); letter-spacing: -.06em; line-height: 1; margin: 0; }
.packages-heading > p { color: #587176; margin: 0; }
.launch-rate-banner { align-items: center; background: #d7ff77; border: 1px solid rgba(8,58,66,.14); border-radius: 14px; color: #0a3139; display: grid; gap: 30px; grid-template-columns: 180px 1fr; margin-bottom: 18px; padding: 20px 24px; }
.launch-rate-banner > span { font: 700 9px/1.25 var(--mono); letter-spacing: .12em; }
.launch-rate-banner p { border-left: 1px solid rgba(8,58,66,.18); font-size: 12px; margin: 0; padding-left: 30px; }
.package-grid { display: grid; gap: 14px; grid-template-columns: repeat(4, minmax(0, 1fr)); }
.package-web { order: 1; }
.package-brand { order: 2; }
.package-print { order: 3; }
.package-help { order: 4; }
.package-card { background: rgba(255,255,255,.88); border: 1px solid rgba(8,62,71,.13); border-radius: 18px; box-shadow: 0 18px 42px rgba(6,45,52,.06); display: flex; flex-direction: column; min-height: 570px; overflow: hidden; padding: 28px 25px 25px; position: relative; }
.package-featured { background: #0b303a; border-color: #0b303a; color: #f7fbf8; transform: translateY(-5px); }
.package-ribbon { background: var(--orange); color: #082c34; font: 700 7px/1 var(--mono); letter-spacing: .11em; padding: 8px 12px; position: absolute; right: 0; top: 0; }
.package-topline { align-items: center; border-bottom: 1px solid rgba(8,62,71,.13); display: flex; justify-content: space-between; padding-bottom: 18px; }
.package-featured .package-topline { border-color: rgba(255,255,255,.12); padding-top: 18px; }
.package-topline span { color: #087483; font: 700 8px/1 var(--mono); letter-spacing: .12em; }
.package-featured .package-topline span { color: var(--cyan); }
.package-topline b { color: #8ca0a3; font: 700 8px/1 var(--mono); }
.package-card h3 { font-size: 25px; letter-spacing: -.04em; line-height: 1.08; margin: 25px 0 0; min-height: 55px; }
.package-price { align-items: baseline; display: flex; flex-wrap: wrap; gap: 5px 8px; margin: 20px 0 14px; }
.package-price small { color: #087483; font: 700 8px/1 var(--mono); }
.package-featured .package-price small { color: var(--cyan); }
.package-price strong { font-size: 42px; letter-spacing: -.06em; line-height: 1; }
.package-price span { color: #71878b; font-size: 10px; }
.package-featured .package-price span { color: #9fb5ba; }
.package-card > p:not(.package-price):not(.package-alternative) { color: #60787d; font-size: 12px; margin: 0; }
.package-featured > p:not(.package-price):not(.package-alternative) { color: #a5b9bd; }
.package-card ul { color: #48656a; font-size: 11px; list-style: none; margin: 24px 0; padding: 0; }
.package-featured ul { color: #c0ced1; }
.package-card li { border-top: 1px solid rgba(8,62,71,.11); padding: 9px 0; }
.package-featured li { border-color: rgba(255,255,255,.1); }
.package-card li::before { color: #0aa79f; content: "✓"; font-weight: 800; margin-right: 8px; }
.visit-rate { background: #e8f4ee; border-left: 2px solid #0aa79f; display: grid; gap: 4px; margin: -10px 0 20px; padding: 10px 12px; }
.visit-rate > span { color: #087483; font: 700 7px/1 var(--mono); letter-spacing: .1em; }
.visit-rate strong { color: #193f46; font-size: 16px; }
.visit-rate strong small { color: #60787d; font-size: 9px; font-weight: 600; }
.visit-rate em { color: #087b7b; font-size: 9px; font-style: normal; font-weight: 800; }
.package-card > a { color: #087b7b; font-size: 11px; font-weight: 800; margin-top: auto; text-decoration: none; }
.package-card > a span { margin-left: 7px; }
.package-featured > a { color: var(--orange); }
.package-alternative { background: rgba(201,255,93,.1); border-left: 2px solid var(--orange); color: #cddbdc; font-size: 9px; margin: -10px 0 20px; padding: 8px 10px; }
.package-custom { align-items: center; background: #dbe9e4; border: 1px solid rgba(8,62,71,.12); border-radius: 15px; display: flex; gap: 35px; justify-content: space-between; margin-top: 16px; padding: 25px 28px; }
.package-custom > div { display: flex; flex-direction: column; max-width: 760px; }
.package-custom span { color: #087483; font: 700 8px/1 var(--mono); letter-spacing: .12em; margin-bottom: 7px; }
.package-custom strong { font-size: 17px; line-height: 1.35; }
.button-dark { background: #092f38; color: #fff; flex-shrink: 0; }
.button-dark:hover { background: #0e4651; }
.package-note { border-left: 2px solid #0aa79f; color: #60787d; font-size: 10px; margin: 22px 0 0; padding-left: 14px; }
.package-note strong { color: #193f46; }

.process { background: linear-gradient(135deg, #dcefeb, #f3f7ef); border-bottom: 1px solid #bfd7d2; border-top: 1px solid #bfd7d2; color: #092c35; }
.process .eyebrow { color: #087483; }
.process-intro > p:not(.eyebrow), .process-steps p { color: #546e74; }
.process-steps li { border-color: rgba(8,56,65,.16); }
.process-steps li:last-child { border-color: rgba(8,56,65,.16); }
.process-steps h3 { color: #092c35; }
.process-layout { display: grid; gap: 100px; grid-template-columns: .75fr 1.25fr; }
.process-intro { position: sticky; top: 130px; }
.process-intro > p:not(.eyebrow) { margin: 24px 0; }
.text-link { color: var(--orange-bright); font: 700 11px/1 var(--mono); text-decoration: none; text-transform: uppercase; }
.text-link span { margin-left: 9px; }
.process-steps { counter-reset: steps; list-style: none; margin: 0; padding: 0; }
.process-steps li { align-items: start; border-top: 1px solid var(--line); display: grid; gap: 28px; grid-template-columns: 54px 1fr; padding: 29px 0; }
.process-steps li:last-child { border-bottom: 1px solid var(--line); }
.process-steps > li > span { color: var(--cyan); font: 700 10px/1 var(--mono); padding-top: 8px; }
.process-steps h3 { font-size: 21px; letter-spacing: -.03em; margin: 0 0 6px; }
.process-steps p { color: var(--muted); font-size: 13px; margin: 0; }

.community { background: #f8faf7; color: #092c35; }
.community-card { align-items: stretch; display: grid; gap: 70px; grid-template-columns: 1.1fr .9fr; }
.community-copy { padding: 22px 0; }
.community-copy > p:not(.eyebrow) { color: #5a7176; max-width: 650px; }
.community-tags { display: flex; flex-wrap: wrap; gap: 9px; margin-top: 28px; }
.community-tags span { border: 1px solid rgba(8,56,65,.16); border-radius: 999px; color: #47636a; font: 700 9px/1 var(--mono); padding: 10px 14px; text-transform: uppercase; }
.opening-card { background: linear-gradient(145deg, #70eadc, #d3ff77); border-radius: var(--radius); box-shadow: 0 24px 55px rgba(18,128,126,.15); color: #082c32; display: flex; flex-direction: column; justify-content: center; min-height: 350px; overflow: hidden; padding: 40px; position: relative; }
.opening-card::after { border: 1px solid rgba(0,0,0,.16); border-radius: 50%; content: ""; height: 260px; position: absolute; right: -130px; top: -90px; width: 260px; }
.opening-card > p { font: 700 9px/1 var(--mono); letter-spacing: .16em; margin: 0 0 28px; }
.opening-card > strong { font-size: 34px; letter-spacing: -.05em; line-height: 1.05; }
.opening-card > span { font-size: 13px; margin: 17px 0 30px; max-width: 380px; }
.opening-card > a { align-items: center; border-top: 1px solid rgba(0,0,0,.2); display: flex; font-size: 12px; font-weight: 800; justify-content: space-between; padding-top: 17px; text-decoration: none; }

.quote { background: radial-gradient(circle at 15% 55%, rgba(77,225,208,.12), transparent 30%), radial-gradient(circle at 85% 20%, rgba(113,239,255,.08), transparent 25%), #061820; border-top: 1px solid var(--line); }
.quote-layout { align-items: start; display: grid; gap: 90px; grid-template-columns: .8fr 1.2fr; }
.quote-copy { position: sticky; top: 125px; }
.quote-copy > p:not(.eyebrow) { margin: 22px 0 34px; }
.contact-points { border-top: 1px solid var(--line); }
.contact-points > div { align-items: center; border-bottom: 1px solid var(--line); display: flex; gap: 15px; padding: 16px 0; }
.contact-points > div > span { align-items: center; border: 1px solid var(--line); border-radius: 50%; color: var(--cyan); display: flex; height: 38px; justify-content: center; width: 38px; }
.contact-points p { display: flex; flex-direction: column; line-height: 1.4; margin: 0; }
.contact-points strong { font-size: 12px; }
.contact-points small { color: var(--muted); font-size: 10px; }
.form-panel { background: var(--panel); border: 1px solid var(--line); border-radius: var(--radius); padding: 35px; }
.form-alert { border: 1px solid; border-radius: 10px; font-size: 12px; margin-bottom: 20px; padding: 12px 14px; }
.form-alert-success { background: rgba(116,237,157,.08); border-color: rgba(116,237,157,.35); color: #afffc9; }
.form-alert-error { background: rgba(255,142,135,.08); border-color: rgba(255,142,135,.35); color: #ffb3ae; }
.field-row { display: grid; gap: 14px; grid-template-columns: repeat(2, 1fr); }
.form-panel label { color: #c5cdd1; display: block; font-size: 11px; font-weight: 700; margin-bottom: 15px; }
.form-panel label > span { color: #76838a; font-weight: 500; }
.form-panel input, .form-panel select, .form-panel textarea { background: #090d10; border: 1px solid rgba(255,255,255,.14); border-radius: 9px; color: var(--ink); display: block; margin-top: 7px; outline: none; padding: 12px 13px; transition: border-color .18s ease, box-shadow .18s ease; width: 100%; }
.form-panel textarea { min-height: 145px; resize: vertical; }
.form-panel input:focus, .form-panel select:focus, .form-panel textarea:focus { border-color: var(--cyan); box-shadow: 0 0 0 3px rgba(22,224,208,.08); }
.form-panel input::placeholder, .form-panel textarea::placeholder { color: #566168; }
.consent { align-items: flex-start; display: flex !important; gap: 10px; line-height: 1.5; }
.consent input { accent-color: var(--orange); flex: 0 0 auto; margin: 3px 0 0; width: auto; }
.consent a { color: var(--cyan); }
.form-submit { border: 0; cursor: pointer; margin-top: 8px; width: 100%; }
.form-footnote { color: #68757c; font-size: 9px; margin: 10px 0 0; text-align: center; }
.honeypot { height: 0; left: -9999px; overflow: hidden; position: absolute; width: 0; }

.site-footer { background: #04131a; border-top: 1px solid var(--line); }
.footer-top { align-items: center; display: grid; gap: 45px; grid-template-columns: 1fr 1fr 1fr; padding-bottom: 52px; padding-top: 52px; }
.brand-footer { justify-self: start; }
.footer-top > p { color: #7d8990; font-size: 12px; line-height: 1.65; margin: 0; }
.footer-top nav { display: flex; flex-wrap: wrap; gap: 9px 18px; justify-content: flex-end; }
.footer-top nav a { color: #919da4; font-size: 11px; text-decoration: none; }
.footer-top nav a:hover { color: var(--orange); }
.footer-bottom { border-top: 1px solid var(--line); color: #5f6b71; display: flex; font: 400 8px/1.4 var(--mono); justify-content: space-between; padding-bottom: 20px; padding-top: 20px; text-transform: uppercase; }

.reveal { opacity: 0; transform: translateY(18px); transition: opacity .6s ease, transform .6s ease; }
.reveal.is-visible { opacity: 1; transform: translateY(0); }

.legal-page { background: #0a0e11; }
.legal-main { min-height: 80vh; padding: 145px 0 90px; }
.legal-card { max-width: 840px; }
.legal-card h1 { font-size: clamp(42px, 6vw, 70px); letter-spacing: -.06em; line-height: 1; margin: 0; }
.legal-card h2 { font-size: 21px; letter-spacing: -.03em; margin: 40px 0 8px; }
.legal-card p { color: var(--muted); }
.legal-updated { border-bottom: 1px solid var(--line); font: 400 9px/1.4 var(--mono); padding-bottom: 28px; text-transform: uppercase; }
.legal-back { font-size: 11px; text-decoration: none; }
.legal-footer a { color: var(--cyan); }

@media (max-width: 980px) {
  .site-menu { gap: 18px; }
  .homepage-incubator-layout { gap: 42px; grid-template-columns: 1fr 1fr; }
  .homepage-incubator-summary { align-items: start; grid-template-columns: 1fr; }
  .homepage-incubator-ticket ol { grid-template-columns: 1fr 1fr; row-gap: 16px; }
  .hero { min-height: 0; }
  .hero-layout { gap: 50px; grid-template-columns: 1fr; }
  .hero-copy { max-width: 760px; }
  .hero-board { margin: 0 auto; max-width: 610px; width: 100%; }
  .section-heading { gap: 35px; grid-template-columns: 1fr; }
  .local-help-heading { gap: 30px; grid-template-columns: 1fr; }
  .help-topic-grid { grid-template-columns: repeat(2, 1fr); }
  .help-delivery { gap: 45px; grid-template-columns: 1fr; }
  .help-delivery-copy { position: static; }
  .help-cta { align-items: flex-start; flex-direction: column; }
  .packages-heading { gap: 30px; grid-template-columns: 1fr; }
  .package-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .package-featured { transform: none; }
  .process-layout, .quote-layout { gap: 60px; grid-template-columns: 1fr; }
  .process-intro, .quote-copy { position: static; }
  .community-card { gap: 35px; }
}

@media (max-width: 760px) {
  .shell { padding-left: 20px; padding-right: 20px; }
  .header-inner { height: 72px; }
  .menu-toggle { display: block; }
  .site-menu { align-items: stretch; background: rgba(8,11,14,.98); border-bottom: 1px solid var(--line); display: none; flex-direction: column; gap: 0; left: 0; padding: 18px 20px 26px; position: absolute; right: 0; top: 72px; }
  .site-menu.is-open { display: flex; }
  .site-menu a { border-bottom: 1px solid var(--line); padding: 14px 4px; }
  .site-menu .nav-cta { border-radius: 9px; margin-top: 13px; text-align: center; }
  .homepage-incubator { padding: 82px 0; }
  .homepage-incubator-layout { grid-template-columns: 1fr; }
  .homepage-incubator-ticket { min-height: 360px; }
  .menu-toggle[aria-expanded="true"] span:nth-child(1) { transform: translateY(7px) rotate(45deg); }
  .menu-toggle[aria-expanded="true"] span:nth-child(2) { opacity: 0; }
  .menu-toggle[aria-expanded="true"] span:nth-child(3) { transform: translateY(-7px) rotate(-45deg); }
  .hero { padding: 125px 0 75px; }
  .hero h1 { font-size: clamp(39px, 12vw, 59px); }
  .hero-lead { font-size: 16px; }
  .hero-board { transform: none; }
  .hero-trust { align-items: flex-start; flex-direction: column; gap: 8px; }
  .section { padding: 78px 0; }
  .service-grid { grid-template-columns: 1fr; }
  .help-topic-grid { grid-template-columns: 1fr; }
  .help-topic { min-height: 0; }
  .help-delivery { padding: 65px 0 55px; }
  .help-cta-actions { width: 100%; }
  .help-cta-actions .button { flex: 1; }
  .launch-rate-banner { gap: 12px; grid-template-columns: 1fr; }
  .launch-rate-banner p { border-left: 0; border-top: 1px solid rgba(8,58,66,.18); padding-left: 0; padding-top: 12px; }
  .package-custom { align-items: flex-start; flex-direction: column; }
  .portfolio-wide { grid-template-columns: 1fr; }
  .portfolio-wide .portfolio-visual { min-height: 330px; }
  .service-card { min-height: 0; padding: 28px; }
  .process-layout { gap: 40px; }
  .community-card { grid-template-columns: 1fr; }
  .opening-card { min-height: 300px; }
  .quote-layout { gap: 42px; }
  .footer-top { gap: 25px; grid-template-columns: 1fr; }
  .footer-top nav { justify-content: flex-start; }
  .footer-bottom { flex-direction: column; gap: 9px; }
}

@media (max-width: 520px) {
  .site-header, .header-inner, .hero, .hero-layout, .hero-copy, .hero-board, .section, .portfolio-grid, .portfolio-item, .community-card, .quote-layout, .site-footer { min-width: 0; max-width: 100%; }
  .brand { gap: 9px; }
  .brand-logo-frame { height: 50px; width: 50px; }
  .brand-copy strong { font-size: 16px; }
  .homepage-incubator-copy h2 { font-size: clamp(44px, 14vw, 62px); }
  .homepage-incubator-label { gap: 10px; grid-template-columns: 1fr auto; }
  .homepage-incubator-label i { display: none; }
  .homepage-incubator-summary a { width: fit-content; }
  .homepage-ticket-title { align-items: flex-start; flex-direction: column; gap: 8px; }
  .homepage-ticket-stats { grid-template-columns: 1fr; }
  .homepage-ticket-stats div, .homepage-ticket-stats div:not(:first-child) { border-bottom: 1px solid rgba(255,255,255,.13); border-right: 0; padding: 16px 0; }
  .homepage-ticket-stats div:last-child { border-bottom: 0; }
  .homepage-incubator-ticket ol { grid-template-columns: 1fr 1fr; }
  .hero-actions { align-items: stretch; flex-direction: column; }
  .button { width: 100%; }
  .board-display { min-height: 160px; padding: 21px; }
  .display-word { font-size: 27px; }
  .board-cards { grid-template-columns: 1fr; }
  .board-cards small { white-space: normal; }
  .section-heading h2, .process h2, .community h2, .quote h2, .local-help-heading h2, .packages-heading h2 { font-size: 36px; }
  .help-topic { gap: 13px; grid-template-columns: 27px 1fr; padding: 25px 20px; }
  .help-topic h3 { font-size: 21px; }
  .help-formats { grid-template-columns: 1fr; }
  .help-formats article { min-height: 0; }
  .help-formats .help-format-visit { display: block; grid-column: auto; }
  .help-formats .help-format-visit h4 { margin: 16px 0 8px; }
  .help-cta { padding: 26px 22px; }
  .help-cta-actions { flex-direction: column; }
  .help-cta-actions .button { width: 100%; }
  .package-grid { grid-template-columns: 1fr; }
  .package-card { min-height: 0; }
  .package-card h3 { min-height: 0; }
  .package-custom .button { width: 100%; }
  .service-card h3 { font-size: 24px; }
  .field-row { grid-template-columns: 1fr; }
  .portfolio-grid { grid-template-columns: 1fr; }
  .portfolio-wide { grid-column: auto; }
  .portfolio-visual { height: 270px; padding: 18px; }
  .product-gallery-visual { padding: 12px 12px 50px; }
  .product-carousel { min-height: 208px; }
  .product-lightbox { padding: 8px; }
  .product-lightbox-panel { border-radius: 12px; height: calc(100vh - 16px); padding: 46px 8px 12px; }
  .portfolio-wide .portfolio-visual { min-height: 300px; }
  .portfolio-wide .portfolio-info, .portfolio-info { padding: 25px; }
  .portfolio-cta { align-items: stretch; flex-direction: column; gap: 20px; }
  .portfolio-cta .button { width: 100%; }
  .training-device { width: 190px; }
  .training-steps { margin-left: -20px; }
  .form-panel { padding: 24px 20px; }
  .opening-card { padding: 30px; }
  .opening-card > strong { font-size: 30px; }
  .legal-back { display: none; }
}

@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
  *, *::before, *::after { animation-duration: .01ms !important; animation-iteration-count: 1 !important; transition-duration: .01ms !important; }
  .reveal { opacity: 1; transform: none; }
}
