/* AGI SEO: dark blue, cyan light, original logo and locally served type. */
:root {
  color-scheme: dark;
  --ink: #edf4ff;
  --muted: #a9b9d0;
  --green: #71dcf5;
  --deep: #0b1527;
  --paper: #080f1d;
  --warm: #0d182b;
  --line: #273950;
  --lime: #a5edff;
  --white: #ffffff;
  --surface: #101e32;
  --surface-raised: #14253c;
  --cyan: #71dcf5;
  --blue: #80b7ff;
  --red: #ff6a7e;
  --quiet: #8fa5c2;
  --radius: 20px;
}

html { background: #070d18; }
body { background: #070d18; color: var(--ink); }
::selection { background: #71dcf5; color: #071321; }
h1, h2, h3 { color: var(--ink); }
a:focus-visible, button:focus-visible, input:focus-visible,
textarea:focus-visible, select:focus-visible, summary:focus-visible,
[tabindex]:focus-visible {
  outline: 2px solid var(--cyan);
  outline-offset: 5px;
}
.skip-link { background: var(--cyan); color: #071321; }
.eyebrow, .mini-eyebrow { color: var(--cyan); }
.tiny-square {
  background: var(--cyan);
  border-radius: 2px;
  box-shadow: 0 0 14px #71dcf550;
}
.serif-accent { color: var(--cyan); }
.text-link { color: var(--ink); }
.text-link:after { background: #71dcf570; }
.text-link:hover, .text-link .icon { color: var(--cyan); }
.button, .button-lime {
  border: 1px solid #ff6a7e80;
  border-radius: 11px;
  background: linear-gradient(115deg, #d5203e, #c91636);
  color: #ffffff;
  box-shadow: 0 5px 24px #d5203e20, inset 0 1px 0 #ffffff20;
  transition: background .2s, border-color .2s, transform .2s, box-shadow .2s;
}
.button:hover, .button-lime:hover {
  background: linear-gradient(115deg, #be1935, #ac1430);
  border-color: #ff8b9b;
  box-shadow: 0 8px 30px #d5203e38;
}
.button-outline {
  background: #71dcf507;
  border-color: #71dcf555;
  color: var(--cyan);
  box-shadow: none;
}
.button-outline:hover {
  background: #71dcf513;
  border-color: var(--cyan);
  box-shadow: 0 5px 24px #71dcf512;
}

/* Navigation and hero: fine grid, ambient light, a floating search console. */
.site-header {
  background: #070d18eb;
  border-bottom: 1px solid #71dcf524;
  backdrop-filter: blur(18px);
  -webkit-backdrop-filter: blur(18px);
  box-shadow: 0 8px 28px #02071130;
}
.brand-image {
  border-radius: 11px;
  border: 1px solid #ffffffb3;
  box-shadow: 0 0 24px #71dcf512;
}
.brand-name { color: #a5d5ff; }
.brand-name>span, .brand-dot { color: var(--red); }
.brand-name>small { color: var(--muted); }
.primary-nav>a:not(.button) { color: #c0cee2; transition: color .2s; }
.primary-nav>a:not(.button):hover { color: var(--cyan); }
.menu-toggle { border-color: #71dcf550; color: var(--cyan); background: #101e32; }
.hero {
  background:
    radial-gradient(ellipse at 84% 28%, #10427465, transparent 48%),
    radial-gradient(ellipse at 8% 3%, #102c5950, transparent 45%),
    linear-gradient(155deg, #080f1d, #080f1d 65%, #0b1727);
  border-bottom: 1px solid #71dcf520;
}
.hero-grain {
  background-image:
    linear-gradient(#71dcf509 1px, transparent 1px),
    linear-gradient(90deg, #71dcf509 1px, transparent 1px);
  background-size: 48px 48px;
  mask-image: linear-gradient(to bottom, #000, transparent 95%);
  -webkit-mask-image: linear-gradient(to bottom, #000, transparent 95%);
}
.hero-grid { padding-top: 86px; padding-bottom: 72px; }
.hero h1 { font-size: clamp(36px, 3.75vw, 54px); line-height: 1.28; }
.hero h1 .serif-accent { color: var(--cyan); }
@supports (background-clip: text) {
  .hero h1 .serif-accent {
    background: linear-gradient(100deg, #a5edff, #71dcf5 42%, #80b7ff);
    background-clip: text;
    -webkit-background-clip: text;
    color: transparent;
  }
}
.hero-description { max-width: 490px; color: var(--muted); }
.hero-description strong { color: #e0ecfc; }
.hero-actions { gap: 25px; }
.hero-points { color: #b6c8df; }
.hero-points .icon { color: var(--cyan); }
.visual-orbit { border-color: #71dcf529; }
.orbit-one {
  border-style: dashed;
  box-shadow: 0 0 75px #2286ce0f, inset 0 0 65px #2286ce08;
}
.orbit-two {
  border-color: #71dcf53d;
  background: radial-gradient(circle at 30% 30%, #2aa6d41c, #146ab710 60%, transparent);
}
.visual-star { color: #80b7ff; text-shadow: 0 0 28px #80b7ff40; }
.search-window {
  background: linear-gradient(150deg, #16283ded, #0b1627f5);
  border-color: #71dcf54d;
  border-radius: 18px;
  box-shadow: 0 25px 65px #02071180, 0 0 40px #289dd615, inset 0 1px 0 #ffffff14;
}
.window-top { background: #0b1527; border-color: #71dcf525; color: var(--quiet); }
.window-dots i { background: #5487ae; }
.window-dots i:first-child { background: #ff6a7e; }
.window-dots i:nth-child(2) { background: #efc078; }
.window-dots i:last-child { background: #71dcf5; }
.search-brand { color: #edf4ff; }
.search-bar { background: #071321; border-color: #355576; color: #d5e5f9; box-shadow: inset 0 2px 9px #02071140; }
.search-bar .icon { color: var(--cyan); }
.search-cursor { border-color: var(--cyan); }
.search-tabs { color: #97aecb; border-color: #273950; }
.search-tabs .active, .result-title { color: #a5d5ff; }
.search-tabs .active:after { background: var(--cyan); }
.result-logo { background: #71dcf518; color: var(--cyan); }
.result-site strong { color: #d8e6fa; }
.result-site small { color: #97aecb; }
.search-result p { color: #a9b9d0; }
.result-chips span { border-color: #355576; background: #14253c; color: #a5d5ff; }
.search-bottom { border-color: #273950; color: #a9b9d0; }
.green-dot { background: #71dcf5; box-shadow: 0 0 9px #71dcf550; }
.floating-label {
  background: linear-gradient(130deg, #1a3048f5, #101e32f5);
  border-color: #71dcf555;
  box-shadow: 0 12px 28px #02071160, inset 0 1px 0 #ffffff12;
  border-radius: 13px;
}
.floating-label small { color: #a9b9d0; }
.floating-label strong { color: #e5f1ff; }
.mini-circle { background: #71dcf51a; color: var(--cyan); border: 1px solid #71dcf529; }
.badge-arrow { color: var(--cyan); }
.demo-selector>span, .visual-caption { color: #a0b3cd; }
.demo-query { background: #0e1b2d; color: #bdcde1; border-color: #355576; }
.demo-query.active { background: #15364b; color: #a5edff; border-color: #71dcf57a; }
.demo-query:hover { border-color: var(--cyan); color: #e0f6ff; }
.foundation-strip { border-color: #71dcf530; }
.foundation-strip>p { color: #a0b3cd; }
.foundation-strip>span { color: #d3e2f6; }
.strip-dot { color: #71dcf5; text-shadow: 0 0 12px #71dcf540; }

/* Project slides: a dark browser frame with the authentic project image. */
.projects {
  background: radial-gradient(ellipse at 7% 28%, #15385838, transparent 55%), #080f1d;
  border-top: 0;
  border-bottom: 1px solid #273950;
}
.projects-heading .serif-accent { color: var(--cyan); }
.project-card {
  border-color: #3b5878;
  border-radius: 22px;
  background: linear-gradient(135deg, #122137, #0c1728);
  box-shadow: inset 0 1px 0 #ffffff0d;
}
.project-visual {
  background: radial-gradient(ellipse at 45% 40%, #1a4b6766, transparent 75%), #0c1728;
  border-color: #273950;
}
.project-browser {
  background: #14253c;
  border-color: #355576;
  color: #b7cbe4;
  border-radius: 12px 12px 0 0;
}
.project-browser-dots i:first-child { background: #ff6a7e; }
.project-browser-dots i:nth-child(2) { background: #efc078; }
.project-browser-dots i:last-child { background: #71dcf5; }
.project-image-link { border-color: #355576; border-radius: 0 0 12px 12px; box-shadow: 0 18px 38px #02071150; }
.project-image-action {
  background: #0b1627f5;
  color: #b6eaff;
  border-color: #71dcf566;
  border-radius: 8px;
  box-shadow: 0 4px 15px #02071150;
}
.project-visual figcaption { color: #a0b3cd; }
.project-live { color: #9be5c9; }
.project-live>span { background: #9be5c9; box-shadow: 0 0 8px #9be5c930; }
.project-kicker { color: var(--cyan); }
.project-title-row>img { background: #ffffff; border-color: #ffffff80; border-radius: 10px; }
.project-title-row h3 { color: #edf4ff; }
.project-subtitle { color: #d5e5f9; }
.project-meta { border-color: #273950; }
.project-meta dt { color: #a0b3cd; }
.project-meta dd { color: #d5e5f9; }
.project-meta dd a:hover { color: var(--cyan); }
.project-tags span { background: #71dcf509; color: #a5d5ff; border-color: #355576; border-radius: 6px; }
.project-highlight { border-color: var(--cyan); background: #71dcf50a; color: #bdcfe6; border-radius: 0 9px 9px 0; }
.project-highlight .icon { color: var(--cyan); }
.project-results { border-color: #355576; background: linear-gradient(95deg, #132a3c, #0e1d31); }
.project-results-label { color: #a9c5df; }
.project-metrics>div { border-color: #355576; }
.project-metrics dt { color: #afc3de; }
.project-metrics dd { color: #a5edff; text-shadow: 0 0 20px #71dcf514; }
.project-measurement-note { color: #a0b3cd; }
.project-details { background: #0c1728; border-color: #273950; }
.project-details>summary { color: #c6ddf8; }
.project-details>summary:hover { background: #14253c; }
.project-details>summary .icon { color: var(--cyan); }
.project-table-wrap { border-color: #355576; border-radius: 11px; }
.project-table th, .project-table td { border-color: #273950; }
.project-table thead th { background: #14253c; color: #a5d5ff; }
.project-table tbody th { color: #d5e5f9; }
.project-table td:last-child { color: #b6eaff; }
.project-slider-track:focus-visible { outline-color: var(--cyan); border-radius: 22px; }
.project-slider-count { color: #a0b3cd; }
.project-slider-count strong { color: #e0f6ff; }
.project-slider-separator { color: #8fa5c2; }
.project-slider-dot>span { background: #526f93; }
.project-slider-dot.is-active>span { background: var(--cyan); box-shadow: 0 0 14px #71dcf540; }
.project-slider-dot:hover>span { background: #a5edff; }
.project-slider-arrows button { background: #101e32; border-color: #355576; border-radius: 11px; color: var(--cyan); }
.project-slider-arrows button:hover:not(:disabled) { background: #15364b; border-color: #71dcf5; }

/* Content, proof, services and packages share the same surface system. */
.outcome-grid { gap: 22px; }
.outcome {
  padding: 26px;
  background: linear-gradient(145deg, #122137, #0b1627);
  border: 1px solid #273950;
  border-radius: 18px;
  box-shadow: inset 0 1px 0 #ffffff08;
}
.section-number { color: #9bb8d5; }
.outcome-icon { color: var(--cyan); }
.proof {
  background: #070d18;
  border-color: #273950;
}
.proof-description { color: var(--muted); }
.proof-benefits { color: #c6d8ef; }
.proof-benefits .icon { color: var(--cyan); }
.proof-disclosure { color: #a0b3cd; }
.report-preview {
  background: linear-gradient(145deg, #14253c, #0c1728);
  border-color: #3b5878;
  border-radius: 20px;
  box-shadow: 0 18px 55px #02071150, inset 0 1px 0 #ffffff10;
}
.report-header { background: #101e32; border-color: #273950; }
.report-logo { color: #a5d5ff; }
.report-logo>span { color: var(--red); }
.report-badge { color: #a9c5df; }
.report-tabs { border-color: #355576; }
.report-tab { color: #a0b3cd; }
.report-tab.active { color: var(--cyan); }
.report-tab.active:after { background: var(--cyan); box-shadow: 0 0 10px #71dcf540; }
.report-kicker { color: #a9c5df; }
.report-preview h3 { color: #e0ecfc; }
.report-table th { border-color: #355576; color: #a5d5ff; }
.report-table td { border-color: #273950; color: #a9b9d0; }
.report-table td:first-child { color: #d5e5f9; }
.report-foot, .report-foot .icon { color: var(--cyan); }
.services {
  background: radial-gradient(ellipse at 90% 5%, #12487538, transparent 52%), #0b1527;
  border-bottom: 1px solid #273950;
}
.services .eyebrow, .services .serif-accent { color: var(--cyan); }
.services .split-heading>p { color: var(--muted); }
.services-grid { gap: 20px; }
.service-item {
  padding: 26px;
  background: linear-gradient(135deg, #16283c, #101e32);
  border: 1px solid #2a415d;
  border-radius: 18px;
  transition: border-color .2s, box-shadow .2s;
}
.service-item:hover { border-color: #71dcf570; box-shadow: 0 10px 32px #02071140; }
.service-icon { background: #71dcf50a; border-color: #71dcf54d; color: var(--cyan); border-radius: 12px; }
.service-subtitle { color: #a5d5ff; }
.service-item h3 { color: #edf4ff; }
.service-item p { color: #a9b9d0; }
.service-tags { color: #a5d5ff; }
.solution-picker { background: #0c1728; border-color: #3b5878; border-radius: 18px; }
.solution-tabs { border-color: #355576; }
.solution-tab { color: #a9b9d0; }
.solution-tab.active { color: #a5edff; }
.solution-tab.active:after { background: var(--cyan); }
.solution-panel .mini-eyebrow { color: var(--cyan); }
.solution-panel p { color: #a9b9d0; }
.solution-panel ul { color: #d5e5f9; }
.solution-panel li .icon { color: var(--cyan); }
.plan { background: linear-gradient(150deg, #122137, #0c1728); border-color: #355576; border-radius: 20px; box-shadow: inset 0 1px 0 #ffffff0d; }
.plan-label { color: #a5d5ff; }
.plan-price { border-color: #355576; }
.plan-price>span, .plan-details dd { color: #a9b9d0; }
.plan-details dt { color: #b6d4f5; }
.plan li .icon { color: var(--cyan); }
.featured {
  background: radial-gradient(ellipse at 40% 0%, #15517960, transparent 65%), #102033;
  border-color: #71dcf59e;
  box-shadow: 0 0 35px #71dcf50c, inset 0 1px 0 #a5edff35;
}
.featured-label { background: #a5edff; color: #092233; border-radius: 7px; box-shadow: 0 4px 20px #71dcf520; }
.featured .plan-label, .featured .plan-details dt { color: #a5edff; }
.featured .plan-description, .featured .plan-price>span, .featured .plan-details dd { color: #bdcfe6; }
.featured .plan-price { border-color: #3b5878; }
.featured li .icon { color: #a5edff; }
.plans-note { color: #a0b3cd; }
.process { background: #0b1527; border-block: 1px solid #273950; }
.process-note { background: #14253c; border: 1px solid #355576; border-radius: 13px; }
.process-note .icon { color: var(--cyan); }
.process-note p { color: #afc3de; }
.process-step { border-color: #273950; }
.step-no {
  display: grid;
  place-items: center;
  width: 46px;
  height: 46px;
  background: #71dcf50a;
  border: 1px solid #71dcf54d;
  border-radius: 12px;
  font-size: 19px;
  font-weight: 600;
  letter-spacing: -.02em;
  color: var(--cyan);
}
.deliverable { color: #a5d5ff; }
.measurement { background: linear-gradient(100deg, #102337, #0b1727); border-bottom: 1px solid #273950; }
.measurement-list>div { border-color: #355576; }
.measurement-list span { color: var(--cyan); }
.measurement-list p { color: #afc3de; }
.faq-list details { background: #ffffff02; }
.faq-list details[open] { background: #71dcf504; }
.faq-list summary { color: #e0ecfc; }
.faq-plus { color: var(--cyan); }
.faq-answer { color: #a9b9d0; }
.faq-answer a { color: var(--cyan); }

/* Contact, inputs and dialogs remain clear at every interaction state. */
.contact {
  background:
    radial-gradient(ellipse at 5% 70%, #12487550, transparent 45%),
    linear-gradient(140deg, #0b1727, #0d1c30);
  border-block: 1px solid #273950;
}
.contact-copy>p:not(.eyebrow) { color: var(--muted); }
.contact-checks { color: #bdcfe6; }
.contact-checks .icon { color: var(--cyan); }
.contact-spark { color: #71dcf52e; }
.contact-direct { background: #101e32b3; border-color: #355576; border-radius: 17px; }
.contact-direct>h3 { color: #e0ecfc; }
.contact-direct-item { color: #d5e5f9; border-color: #273950; }
.contact-direct-item>.icon { color: var(--cyan); }
.contact-direct-label { color: #a0b3cd; }
.contact-direct-phone .contact-direct-value, .contact-map-hint { color: #a5edff; }
.consultation-form {
  background: linear-gradient(145deg, #16283c, #101e32);
  border-color: #3b5878;
  border-radius: 22px;
  box-shadow: 0 24px 65px #02071150, inset 0 1px 0 #ffffff18;
}
.form-intro { color: #a9b9d0; }
.selected-service { background: #71dcf50a; border: 1px solid #355576; border-radius: 9px; color: #afc3de; }
.selected-service strong, .selected-service a { color: var(--cyan); }
.field label { color: #d5e5f9; }
.field label span { color: var(--cyan); }
.field input, .field select, .field textarea {
  color: #e5f1ff;
  background: #0a1525;
  border-color: #3b5878;
  border-radius: 9px;
  min-height: 46px;
  box-shadow: inset 0 2px 8px #02071130;
}
.field input::placeholder, .field textarea::placeholder { color: #91a7c3; }
.field input:focus, .field select:focus, .field textarea:focus { border-color: #71dcf5; }
.field-error { color: #ffacb8; }
.field input[aria-invalid="true"], .field select[aria-invalid="true"], .field textarea[aria-invalid="true"] { border-color: #ff879b; }
.consent, .form-note { color: #afc3de; }
.consent>input { accent-color: #71dcf5; }
.privacy-link, .form-note .icon { color: var(--cyan); }
#form-status { background: #3b1b2a; color: #ffc1cc; border-color: #a64f65; border-radius: 9px; }
#form-status[data-state=success] { background: #133b3b; color: #b0f3e2; border-color: #4d9790; }
.footer { background: #070d18; }
.footer-top>p { color: #a9b9d0; }
.footer-back, .footer-back .icon { color: #a5d5ff; }
.footer-bottom, .footer-contact-label { color: #a0b3cd; }
.footer-contact-item>.icon { color: var(--cyan); }
.footer-contact-item a { color: #d5e5f9; }
.footer-contact-item a:hover { color: var(--cyan); }
.request-dialog {
  background: linear-gradient(145deg, #16283c, #0b1727);
  color: #edf4ff;
  border-color: #71dcf56b;
  border-radius: 22px;
  box-shadow: 0 30px 100px #020711cc;
}
.request-dialog::backdrop { background: #020711cc; backdrop-filter: blur(6px); }
.dialog-check { background: #71dcf518; color: var(--cyan); }
.dialog-close { color: #a5d5ff; border-radius: 8px; }
.dialog-close:hover { background: #71dcf518; }
.request-dialog pre, .success-next { background: #0b1727; color: #bdcfe6; border-color: #355576; border-radius: 11px; }
.request-dialog .copy-status { color: #9be5c9; }
.request-dialog a[href^="mailto:"], .request-dialog a[href^="tel:"] { color: var(--cyan); }

/* Preserve existing carousel mechanics and responsive content structure. */
@media (max-width: 1100px) {
  .hero-grid { padding-top: 64px; padding-bottom: 52px; }
  .hero h1 { font-size: 42px; }
  .hero-actions { gap: 18px; }
  .service-item { padding: 23px 20px; }
  .service-icon { width: 40px; height: 40px; }
}
@media (max-width: 800px) {
  .primary-nav { background: #0b1527fa; border-color: #355576; box-shadow: 0 18px 28px #02071160; }
  .primary-nav>a:not(.button) { border-color: #273950; }
  .hero-grid { padding-top: 52px; padding-bottom: 30px; }
  .hero h1 { font-size: clamp(34px, 5.9vw, 46px); }
  .hero-actions { gap: 22px; }
  .outcome-grid { grid-template-columns: 1fr; gap: 16px; }
  .outcome { padding: 24px; }
  .outcome-icon { margin-top: 18px; margin-bottom: 15px; }
  .outcome p { max-width: 100%; }
  .services-grid { grid-template-columns: 1fr; gap: 16px; }
  .service-item { padding: 24px; }
  .service-icon { width: 44px; height: 44px; }
  .contact-spark { display: none; }
}
@media (max-width: 480px) {
  .hero-grid { padding-top: 40px; }
  .hero h1 { font-size: clamp(25px, 7.8vw, 37px); line-height: 1.3; }
  .hero-actions { gap: 18px; }
  .hero .eyebrow { letter-spacing: .06em; }
  .hero-grain { background-size: 36px 36px; }
  .hero-actions>.button { width: 100%; justify-content: space-between; }
  .floating-label { border-radius: 10px; }
  .foundation-strip>p { font-size: 8px; }
  .outcome { padding: 22px; }
  .outcome-icon { margin: 3px 0 0; }
  .service-item { padding: 22px 18px; gap: 15px; }
  .service-icon { width: 39px; height: 39px; border-radius: 10px; }
  .solution-tabs { border-color: #355576; }
  .project-card { border-radius: 16px; }
  .project-title-row h3 { font-size: 29px; }
  .project-slider-arrows button { border-radius: 9px; }
  .plan, .consultation-form { border-radius: 18px; }
  .step-no { width: 39px; height: 39px; font-size: 17px; border-radius: 10px; }
  .field input, .field select, .field textarea { font-size: 16px; }
  .mobile-cta { border-radius: 11px; box-shadow: 0 6px 30px #020711b3, 0 0 0 5px #070d18a6; }
  .request-dialog { border-radius: 18px; }
}
@media (prefers-reduced-motion: reduce) {
  .button:hover, .button-lime:hover { transform: none; }
  .text-link:hover .icon { transform: none; }
}
@media (forced-colors: active) {
  .hero h1 .serif-accent { background: none; color: CanvasText; }
  .project-slider-dot>span { background: ButtonText; }
  .project-slider-dot.is-active>span { background: Highlight; }
  .service-item, .plan, .project-card, .consultation-form { border-color: CanvasText; }
}
