/* Black canvas, electric red accents; white remains the reading colour. */
:root {
  --bg:#050505; --surface:#101010; --surface2:#181818;
  --white:#fafafa; --muted:#b6b6bd; --red:#ff3947; --blue:#ff525c;
  --line:rgba(255,255,255,.13); --accent:#ec162c; --accent-light:#ff5b64;
}
html {scrollbar-color:#63212a #050505;}
body {background:#050505;color:#fafafa;}
::selection {background:#db0d25;color:white;}
:is(a,button,summary,input,textarea,select):focus-visible {outline-color:#ff5966;}
.eyebrow,.eyebrow.light {color:#ff6670;}
.soft-text {color:#99999f;}
.q-logo img {width:165px;height:55px;filter:drop-shadow(0 0 13px #ff17221f);object-position:center;}
.q-header {background:#050505de;border-color:#ffffff09;}
.q-header.scrolled {background:#070707f5;border-color:#ffffff13;}
.q-header .main-nav a {color:#d0d0d4;}
.q-header .main-nav a:hover,.q-header .main-nav a.active {color:#fff;}
.q-header .main-nav a.active:after {background:#ff2638;}
.q-console {color:#fff;border-color:#5c252a;}
.q-console > span {background:#ff2638;color:white;box-shadow:0 0 19px #ff102b38;}
.q-console:hover {border-color:#ff3a4a;}
.intelligence-hero {background:transparent;}
.hero-ghost {color:#fff;opacity:.025;}
.hero-kicker {color:#ededed;}
.hero-kicker i {background:#ff2a3d;box-shadow:0 0 18px #ff152eb3;}
.hero-center h1 {color:#fff;text-shadow:0 3px 35px #000;}
.hero-center h1 em {color:#ff3747;text-shadow:0 0 45px #ff122c40;}
.hero-center-line {background:linear-gradient(90deg,transparent,#ff2638aa,transparent);}
.hero-description p {color:#b7b7bd;}
.hero-capabilities {border-color:#ffffff21;}
.hero-capabilities a b {color:#f5f5f5;}
.hero-capabilities a:hover b {color:#ff5964;}
.hero-capabilities span {color:#99999f;}
.scroll-cue {color:#aaa;}
.scroll-cue > span {border-color:#ffffff39;}
.scroll-cue > span:before {background:#ff2638;box-shadow:0 0 12px #ff2638;}
.q-button {background:#e5192e;border-color:#f52b40;color:#fff;box-shadow:0 4px 32px #ff001b20;}
.q-button > span {background:#ffffff17;color:#fff;}
.q-button:hover {background:#fa2036;box-shadow:0 4px 36px #ff001b40;}
.q-button.secondary {background:#111;border-color:#754047;color:#fff;box-shadow:none;}
.q-button.secondary > span {background:#ed182f;color:#fff;}
.q-button.secondary:hover {border-color:#ff3d4b;background:#1b0a0c;}
.text-link,.workflow-link a {color:#eee;}
.text-link:hover {color:#ff5864;}
.q-section-head h2 span,.film-copy h2 span,.faq-section h2 span {color:#99999f;}
.q-section-head > p,.service-carousel .q-section-head > p {color:#b5b5bb;}
.red-period,.service-story-intro .red-period {color:#ff2638;}
.service-carousel {background:transparent;}
.service-carousel .chapter-card {
  background:radial-gradient(ellipse at 100% 0%,#ff12291c,transparent 64%),linear-gradient(135deg,#171112,#0c0c0c 75%);
  border:1px solid #a52a3759;box-shadow:0 15px 60px #0005,inset 0 1px 0 #ff3c4a18;
}
.service-carousel .chapter-number {color:#ff6873;}
.service-carousel .chapter-card h3 {color:white;}
.service-carousel .chapter-card .chapter-lead {color:#efefef;}
.service-carousel .chapter-card > p:not(.chapter-lead) {color:#b8b8bf;}
.service-carousel .chapter-card li {color:#d3d3d7;border-color:#ffffff12;}
.service-carousel .chapter-card li:before {color:#ff4354;}
.service-carousel-controls button {color:white;background:#141414;border-color:#552a2e;}
.service-carousel-controls button:hover {background:#70101c;border-color:#ff5260;}
.service-carousel-controls button:disabled {background:#101010;border-color:#353535;}
.carousel-hint,.service-swipe-hint,#service-slide-counter {color:#aaaab1;}
.service-carousel-viewport:focus-visible {outline-color:#ff5260;}
.service-carousel .particle-service-caption {color:#aaaab1;}
.particle-service-caption:before {background:#ff2638;box-shadow:0 0 12px #ff2638;}
.particle-progress {background:#ffffff1a;}
.particle-progress span {background:#ff2638;box-shadow:0 0 10px #ff263899;}
.service-slide-picker {scrollbar-color:#6a2630 transparent;}
.service-picker {background:#0d0d0d;color:#bfbfc5;border-color:#333;}
.service-picker:hover {background:#1b0b0d;color:#fff;border-color:#a73a45;}
.service-picker[aria-pressed=true] {background:#9d1020;color:white;border-color:#ff4556;box-shadow:0 0 25px #ff001622;}
.service-story-end p {color:#b6b6bd;}
.particle-page .workflow-section,.workflow-section {background:linear-gradient(#0c0c0c,#080808);border-block:1px solid #ffffff0c;}
.journey-step {border-color:#ffffff1f;}
.journey-top > span,.journey-top svg {color:#ff4e5c;}
.journey-top small {color:#85858c;}
.journey-step p,.workflow-link {color:#b1b1b8;}
.journey-arrow {background:#111;color:#d6d6d9;border-color:#393939;}
.usecase {background:linear-gradient(145deg,#171112,#0d0d0d);border-color:#ffffff16;}
.usecase:hover {border-color:#c3283b7a;}
.usecase > small {color:#9999a0;}
.usecase > span {color:#f5f5f5;}
.work-card {background:#121212;}
.work-card small {color:#a8a8ae;}
.work-card svg {color:#ff4b5b;}
.work-card .work-image {background:#ededed;}
.brand-film {background:#111;}
.film-label {background:#060606bf;color:#e0e0e0;}
.client-logo {background:#f4f4f4;border-color:#ffffff1a;}
.faq-list summary > span {color:#ff5360;}
.closing-section:before {background:radial-gradient(ellipse at 20% 50%,#ff00171c,transparent 65%);}
.closing-section h2 em {color:#ff3547;}
.q-footer {background:#030303;border-top:1px solid #ffffff12;}
.footer-topline p,.footer-topline > div > a:not(.q-logo) {color:#aaaab1;}
.footer-topline .eyebrow {color:#e7616d;}
.footer-word {color:#1e080b;}
.q-footer-bottom {color:#92929a;}
.footer-social a {color:#ddd;}
.page-header {background:radial-gradient(ellipse at 80% 0%,#ff001615,transparent 68%);}
.page-header p,.breadcrumbs {color:#aaaab1;}
.breadcrumbs span:last-child {color:#e6e6e9;}
.ai-card {background:radial-gradient(ellipse at 100% 0%,#ff172719,transparent 67%),#101010;border-color:#ffffff1c;}
.ai-card:hover {border-color:#f52b456b;box-shadow:0 0 35px #fc00100c;}
.ai-card-top > span {background:#23090c;border-color:#ff22353a;}
.ai-card-top svg {color:#ff4052;}
.ai-card-top small {color:#aaaab1;}
.ai-card p {color:#bcbcc2;}
.card-link {color:#f7f7f8;}
.ai-card-grid .ai-card:first-child {grid-column:1/-1;}
.ai-card-grid .ai-card:first-child h3 {font-size:clamp(27px,3.5vw,43px);}
.mini-cta {background:#121212;border:1px solid #ffffff14;}
.service-card,.blog-card,.testimonial-card,.detail-item,.related-link,.career-value {background:#101010;border-color:#ffffff14;}
.service-card:hover,.blog-card:hover,.related-link:hover {border-color:#e52a4555;}
.service-art {background:radial-gradient(ellipse at 70% 10%,#52101a,#0c0c0c 80%);}
.service-art:before {border-color:#ff26382b;}
.service-art .service-symbol {color:#ff5464;}
.service-content p,.original-copy p,.article-body p,.detail-item p,.career-value p {color:#bcbcc2;}
.service-number,.service-art .card-category,.ai-feature-grid span {color:#ff6570;}
.service-hero,.original-video {background:#111;}
.service-hero.ai-art {background:radial-gradient(ellipse,#52101a,#0d0d0d);}
.story-lead {color:#f7f7f8!important;}
.detail-item:before {color:#ff5764;}
.btn-red {background:#df162a;color:#fff;}
.btn-red:hover {background:#fb2237;}
.btn-white {background:#f4f4f4;color:#111;}
.btn-white:hover {background:#fff;}
.btn-ghost {border-color:#6b353c;color:#fff;}
.btn-ghost:hover {background:#25090e;border-color:#fc4c5b;}
.form-card {background:#101010;border-color:#ffffff17;}
.form-card > p,.field small,.form-switch,.form-intro p {color:#aaaab1;}
.field input,.field textarea,.field select {background:#080808;border-color:#3b3b40;color:#f8f8f8;}
.field label {color:#ededed;}
.field input::placeholder,.field textarea::placeholder {color:#8f8f98;}
.field select option {background:#111;}
.field input:focus,.field textarea:focus,.field select:focus {border-color:#ff5361;}
.field input[type=file]::file-selector-button {background:#491019;color:#fff;}
.form-intro .form-visual {background:radial-gradient(ellipse,#ff001a25,transparent 68%);}
.form-visual .big-q {color:#ff2638;text-shadow:8px 10px #520713;}
.form-visual p,.password-toggle {color:#b4b4bb;}
.form-status {background:#1d1d22;color:#e9e9ef;}
.form-status.error {background:#360a12;color:#ffd6da;}
.form-switch a,.form-note a,.form-intro .text-link {color:#ff6975;}
.form-note,.public-preview-note {color:#a6a6b0;}
.consult-inline {background:#0c0c0c;}
.cta-banner {background:radial-gradient(ellipse at 100% 50%,#55101c,#101010 65%);}
.portfolio-item,.portfolio-project {background:#111;}
.portfolio-project:hover {color:#ff6570;}
.filter-tabs a {color:#ccc;border-color:#383838;}
.filter-tabs a.active,.filter-tabs a:hover {color:white;background:#8e0d1e;border-color:#f03b50;}
.image-unavailable {background:#191919;}
.gallery-note,.service-subnav a,.testimonial-card small {color:#a5a5ad;}
.testimonial-card cite,.process-details summary,.all-testimonials summary {color:#eee;}
.loading-view {background:radial-gradient(ellipse,#370910,transparent 65%);}
.original-video figcaption {color:#b9b9c1;}
.case-table th {background:#221014;}
dialog {background:#0c0c0c;border-color:#71303b;}
/* Service detail art is code-native, not a fake portfolio result. */
.service-visual {min-height:370px;position:relative;isolation:isolate;overflow:hidden;border:1px solid #ff263839;border-radius:12px;background:radial-gradient(circle at 50% 45%,#73071955,transparent 65%),#0b0b0b;}
.visual-index,.visual-corner {position:absolute;left:26px;font-size:9px;letter-spacing:.16em;color:#a0a0aa;}
.visual-index {top:25px;}
.visual-corner {bottom:25px;}
.visual-orbit {position:absolute;left:50%;top:45%;width:205px;height:205px;border:1px solid #ff263835;border-radius:50%;transform:translate(-50%,-50%);box-shadow:0 0 60px #ff102b18,inset 0 0 45px #ff102b15;}
.visual-orbit:before,.visual-orbit:after {content:'';position:absolute;inset:17px;border:1px dashed #ff26382a;border-radius:50%;}
.visual-orbit:after {inset:-20px;border-style:solid;border-color:#ff263812;}
.visual-symbol {position:absolute;inset:0;display:grid;place-items:center;padding-bottom:30px;color:#ff2b3e;}
.visual-symbol svg {width:95px;height:95px;filter:drop-shadow(0 0 18px #ff102b66);}
.visual-caption {position:absolute;bottom:69px;inset-inline:15px;text-align:center;font-size:12px;letter-spacing:.16em;color:#fafafa;}
.service-visual-film .visual-orbit {border-radius:22px;transform:translate(-50%,-50%) rotate(-8deg);}
.service-visual-web .visual-orbit {border-radius:20px;width:270px;height:190px;}
.service-visual-brand .visual-orbit {border-radius:35%;transform:translate(-50%,-50%) rotate(45deg);}
.offering-grid {display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;}
.offering {padding:29px;border:1px solid #ffffff17;border-radius:10px;background:linear-gradient(135deg,#151112,#0d0d0d);}
.offering > span {font-size:11px;color:#ff5a69;letter-spacing:.15em;}
.offering h3 {font-size:22px;line-height:1.25;margin:19px 0 12px;font-weight:500;letter-spacing:-.025em;}
.offering p {color:#b7b7c0;line-height:1.8;font-size:14px;margin:0;}
.service-process {border-top:1px solid #ffffff18;}
.service-process h2 {font-size:clamp(30px,4vw,46px);font-weight:500;letter-spacing:-.035em;}
.service-process ol {list-style:none;counter-reset:process;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));padding:0;gap:22px;margin:35px 0;}
.service-process li {counter-increment:process;border-top:1px solid #88303a;padding-top:22px;font-size:15px;line-height:1.5;}
.service-process li:before {content:'0' counter(process);display:block;color:#ff5d6b;font-size:11px;margin-bottom:14px;}
.example-note {color:#9999a3;font-size:12px;line-height:1.8;}
.service-subnav {flex-wrap:wrap;}
@media(min-width:801px) {.service-slide-picker {flex-wrap:wrap;justify-content:center;}}
@media(max-width:800px) {
  .q-header .main-nav {background:#080808f7;border-color:#ffffff1f;}
  .q-header .q-logo img {width:145px;height:49px;}
  .service-visual {min-height:340px;}
  .service-process ol {grid-template-columns:repeat(2,minmax(0,1fr));}
}
@media(max-width:540px) {
  .q-header .q-logo img {width:132px;height:45px;}
  .offering-grid {grid-template-columns:1fr;}
  .offering {padding:25px;}
  .service-visual {min-height:320px;}
  .visual-orbit {width:180px;height:180px;}
  .service-visual-web .visual-orbit {width:230px;height:175px;}
  .visual-symbol svg {width:80px;height:80px;}
  .visual-caption {font-size:10px;}
  .visual-index,.visual-corner {font-size:8px;}
}
@media(prefers-reduced-motion:reduce) {.q-logo img {transition:none;}}
.secure-console {align-items:center;}
.console-access-note {display:flex;gap:16px;max-width:420px;margin-top:38px;padding-top:25px;border-top:1px solid #ffffff17;}
.console-access-note > svg {width:25px;height:25px;flex-shrink:0;color:#ff6670;margin-top:3px;}
.console-access-note p {margin:0;font-size:13px;line-height:1.8;}
.secure-console-card {background:radial-gradient(ellipse at 100% 0%,#ff12291a,transparent 65%),#101010;}
.console-security-icon {display:grid;place-items:center;width:50px;height:50px;margin-bottom:24px;border:1px solid #ff405437;border-radius:14px;background:#ff162b0d;color:#ff6670;}
.console-security-icon svg {width:25px;height:25px;}
.console-steps {list-style:none;margin:26px 0;padding:0;display:grid;gap:16px;color:#dddde3;font-size:13px;}
.console-steps li {display:flex;align-items:center;gap:13px;}
.console-steps li > span {font-size:10px;color:#ff7480;letter-spacing:.1em;flex-shrink:0;}
.client-login-form {margin-top:24px;}
.google-login-wrap {display:flex;justify-content:center;min-height:44px;margin:26px 0 12px;overflow:hidden;border-radius:22px;}
.google-login-wrap > div {max-width:100%;}
.google-login-status {text-align:center;margin:12px 0 0;}
.client-login-form .field {margin:16px 0;}
.client-login-form .password-wrap {position:relative;}
.client-login-form .password-wrap input {padding-right:72px;}
.client-login-form .password-toggle {position:absolute;right:8px;top:8px;border:0;border-radius:7px;background:#201013;padding:8px 10px;}
.console-sign-in {width:100%;justify-content:space-between;gap:12px;}
.secure-console-card .console-privacy-note {font-size:11px;line-height:1.8;margin:17px 0 28px;color:#a6a6b0;}
.secure-console-card .form-switch {line-height:1.8;}
.secure-console-card .form-switch svg {width:14px;height:14px;vertical-align:middle;}
.console-back {display:inline-block;font-size:12px;color:#b8b8c0;margin-top:22px;}
.console-back:hover {color:white;}
@media(max-width:540px) {
  .secure-console .display {font-size:48px;}
  .secure-console .form-intro > p {font-size:15px;}
  .secure-console .console-access-note {display:none;}
  .secure-console-card {padding:26px 22px;}
  .console-sign-in {font-size:12px;padding-left:15px;}
}
