/* REDCOWEB homepage / Aegean marble direction v14
   Scoped to the homepage canvas. Header and footer intentionally remain untouched. */
.rg14-aegean {
  --rg14-navy: #102d52;
  --rg14-ink: #173654;
  --rg14-body: #61758b;
  --rg14-blue: #326ea8;
  --rg14-blue-deep: #173f69;
  --rg14-sky: #eaf5ff;
  --rg14-ice: #f5faff;
  --rg14-paper: #ffffff;
  --rg14-line: #d9e7f2;
  --rg14-shadow: 0 24px 70px -50px rgba(30, 73, 111, .48);
  --rg14-architecture: url('/media/redcoweb/home-v14/aegean-marble.webp');
  overflow: clip;
  color: var(--rg14-ink);
  background: #fff;
}

.rg14-aegean :is(h1, h2, h3, p) { color: inherit; }
.rg14-aegean h1 { font-size: clamp(30px, 3vw, 44px) !important; }
.rg14-aegean h2 { font-size: clamp(21px, 1.85vw, 29px) !important; line-height: 1.62 !important; }
.rg14-aegean h3 { font-size: clamp(14px, 1.08vw, 18px) !important; }
.rg14-aegean p { color: var(--rg14-body); }
.rg14-aegean :is(.rd27-overline, .rd27-kicker, .rv9-eyebrow) { color: var(--rg14-blue) !important; }

/* Existing project slider, retained and visually integrated. */
.rg14-aegean .rd27-hero {
  position: relative;
  isolation: isolate;
  background:
    linear-gradient(90deg, rgba(255,255,255,.96) 0 37%, rgba(246,251,255,.84) 54%, rgba(233,246,255,.74)),
    var(--rg14-architecture) center / cover no-repeat !important;
}
.rg14-aegean .rd27-hero::before {
  content: "";
  position: absolute;
  inset: 0;
  z-index: -1;
  background: linear-gradient(180deg, rgba(255,255,255,.06), rgba(255,255,255,.82) 96%);
  pointer-events: none;
}
.rg14-aegean .rd27-architecture { opacity: .2; filter: saturate(0) brightness(1.35); }
.rg14-aegean .rd27-hero-copy > p { max-width: 630px; color: #4f6981 !important; }
.rg14-aegean .rd27-hero-copy h1 span { color: var(--rg14-blue) !important; }
.rg14-aegean .rd27-btn-primary,
.rg14-aegean .rv9-home-link {
  color: #fff !important;
  border-color: var(--rg14-navy) !important;
  background: linear-gradient(135deg, #235b91, #102d52) !important;
  box-shadow: 0 16px 34px -22px rgba(16,45,82,.78) !important;
}
.rg14-aegean .rd27-btn-outline { color: var(--rg14-navy) !important; border-color: #b9cfdf !important; background: rgba(255,255,255,.82) !important; }
.rg14-aegean .rv6-hero-project-label,
.rg14-aegean .rv6-hero-controls { border-color: rgba(194,216,232,.9) !important; background: rgba(255,255,255,.88) !important; backdrop-filter: blur(14px); }

/* Slow seamless brand ribbon: never pauses on hover/focus. */
.rg14-aegean .rdv4-clients { border-block: 1px solid var(--rg14-line); background: rgba(247,251,255,.96) !important; }
.rg14-aegean .rdv4-clients-inner { min-height: 108px; }
.rg14-aegean .rv13-brand-track {
  animation: rw13BrandMarquee 52s linear infinite !important;
  animation-play-state: running !important;
}
.rg14-aegean .rv13-brand-window:is(:hover, :focus-within) .rv13-brand-track { animation-play-state: running !important; }
.rg14-aegean .rv13-brand-set .rdv4-client-name { color: #55728d !important; font-weight: 820; }
.rg14-aegean .rv13-brand-set .rdv4-client-name::before { background: #82b6de !important; }

/* Existing company video, retained as a premium cinema panel. */
.rg14-aegean .rv6-teaser {
  position: relative;
  isolation: isolate;
  background: linear-gradient(120deg, rgba(239,248,255,.98), rgba(255,255,255,.95)) !important;
}
.rg14-aegean .rv6-teaser::before {
  content: "";
  position: absolute;
  inset: 0;
  z-index: -1;
  opacity: .14;
  background: var(--rg14-architecture) center 58% / cover no-repeat;
  filter: saturate(.7);
}
.rg14-aegean .rv6-teaser::after { border-color: rgba(50,110,168,.22) !important; box-shadow: 0 0 0 44px rgba(50,110,168,.035), 0 0 0 88px rgba(50,110,168,.02) !important; }
.rg14-aegean .rv13-showreel-frame { border-radius: 28px !important; background: rgba(255,255,255,.82) !important; box-shadow: 0 36px 90px -54px rgba(16,45,82,.62) !important; }
.rg14-aegean .rv13-showreel-frame::before { border-radius: 34px !important; background: linear-gradient(145deg, rgba(96,161,211,.3), rgba(255,255,255,.06) 52%, rgba(25,67,106,.16)) !important; }
.rg14-aegean .rv13-showreel-frame video { border-radius: 22px !important; }
.rg14-aegean .rv13-showreel-orbit { background: radial-gradient(circle at 34% 28%, #fff, #cde8fb 42%, #4e8abd 78%) !important; }
.rg14-aegean .rv13-showreel-play { background: rgba(16,45,82,.86) !important; }

/* Shared Aegean section language. */
.rg14-aegean :is(.rd27-services, .rd27-method, .rv6-trust, .rv11-capabilities, .rv10-impact, .rv9-home-insights, .rdv4-faq) {
  position: relative;
  isolation: isolate;
  background: #fff !important;
}
.rg14-aegean :is(.rd27-services, .rv6-trust, .rv11-capabilities, .rv9-home-insights, .rdv4-faq)::before {
  content: "";
  position: absolute;
  inset: 0;
  z-index: -1;
  opacity: .09;
  background: var(--rg14-architecture) center / cover no-repeat;
  pointer-events: none;
}
.rg14-aegean :is(.rd27-heading, .rv9-home-heading, .rv6-trust-head) { max-width: 740px; }
.rg14-aegean :is(.rd27-heading h2, .rv9-home-heading h2, .rv6-trust-head h2) { color: var(--rg14-navy) !important; }

.rg14-aegean :is(.rd27-service-card, .rd27-step, .rv6-trust-card, .rv11-cap-card, .rdv4-faq-list details) {
  border: 1px solid rgba(204,222,235,.94) !important;
  background: rgba(255,255,255,.9) !important;
  box-shadow: var(--rg14-shadow) !important;
  backdrop-filter: blur(10px);
}
.rg14-aegean :is(.rd27-service-card, .rv6-trust-card, .rv11-cap-card) { border-radius: 18px !important; }
.rg14-aegean :is(.rd27-service-card, .rv6-trust-card, .rv11-cap-card):hover { transform: translateY(-5px); border-color: #91b9d7 !important; }
.rg14-aegean :is(.rd27-card-icon, .rv6-trust-icon, .rv9-cap-symbol, .rv10-canvas-node i) { color: var(--rg14-blue) !important; border-color: #c9dfef !important; background: #eef7ff !important; }
.rg14-aegean .rv6-service-featured,
.rg14-aegean .rv11-cap-card.is-active { border-color: #75a8ce !important; background: linear-gradient(145deg, #eaf6ff, #fff) !important; }

/* Portfolio gallery: larger images, quieter chrome. */
.rg14-aegean .rv6-home-portfolio { background: linear-gradient(180deg, #fff, #f1f8fd 52%, #fff) !important; }
.rg14-aegean .rv6-portfolio-intro h2 { color: var(--rg14-navy) !important; }
.rg14-aegean .rv6-project-slide { border-color: #d5e5f0 !important; border-radius: 18px !important; box-shadow: 0 28px 65px -48px rgba(16,45,82,.56) !important; }
.rg14-aegean .rv6-project-image { background: #edf5fb; }
.rg14-aegean .rv6-project-caption { background: rgba(255,255,255,.92) !important; }
.rg14-aegean .rv6-portfolio-filters button { color: #5f7589 !important; border-color: #d0e1ed !important; background: #fff !important; }
.rg14-aegean .rv6-portfolio-filters button.is-active { color: #fff !important; border-color: var(--rg14-navy) !important; background: var(--rg14-navy) !important; }

/* Process and metrics. */
.rg14-aegean .rd27-method { background: linear-gradient(180deg, #fff, #f3f9fd) !important; }
.rg14-aegean .rd27-step { position: relative; overflow: hidden; }
.rg14-aegean .rd27-step::after { content: ""; position: absolute; width: 90px; height: 90px; inset: auto auto -48px -38px; border: 1px solid rgba(80,136,180,.16); border-radius: 50%; box-shadow: 0 0 0 18px rgba(80,136,180,.025); }
.rg14-aegean .rd27-step > span { color: #77a9cd !important; }
.rg14-aegean .rdv4-confidence { border-block: 1px solid #d6e6f1; background: #eef7fd !important; }
.rg14-aegean .rdv4-confidence strong { color: var(--rg14-navy) !important; }

/* Industries and interactive demo. */
.rg14-aegean .rv9-home-industries { background: #fff !important; }
.rg14-aegean .rv9-industry-card { border: 1px solid #d5e4ef !important; border-radius: 17px !important; box-shadow: var(--rg14-shadow) !important; }
.rg14-aegean .rv9-industry-card img { filter: saturate(.86) contrast(.98); }
.rg14-aegean .rv9-home-demo { background: linear-gradient(135deg, #edf7ff, #fff 62%) !important; }
.rg14-aegean .rv9-demo-cards a { border: 1px solid #cfe1ee !important; border-radius: 18px !important; box-shadow: var(--rg14-shadow) !important; }

/* Capability command center. */
.rg14-aegean .rv11-capabilities { background: linear-gradient(180deg, #fff, #eef7fd) !important; }
.rg14-aegean .rv11-cap-status { border-color: #d3e4ef !important; background: rgba(255,255,255,.88) !important; }
.rg14-aegean .rv11-cap-status i { background: #6199c4 !important; box-shadow: 0 0 0 5px rgba(97,153,196,.13) !important; }
.rg14-aegean .rv11-cap-stage {
  color: #fff;
  border: 1px solid rgba(255,255,255,.3) !important;
  border-radius: 26px !important;
  background: radial-gradient(circle at 22% 18%, rgba(121,184,227,.42), transparent 34%), linear-gradient(145deg, #0e2848, #1e5583 58%, #4f8ebc) !important;
  box-shadow: 0 34px 80px -48px rgba(16,45,82,.82) !important;
}
.rg14-aegean .rv11-cap-stage h3 { color: #fff !important; }
.rg14-aegean .rv11-cap-stage :is(p, small) { color: #e4f2fc !important; }
.rg14-aegean .rv11-stage-meter i { background: linear-gradient(90deg, #fff, #8fc7eb) !important; }

/* Outcome and engineering sections. */
.rg14-aegean .rv10-impact { background: #fff !important; }
.rg14-aegean .rv10-impact-canvas path { stroke: #6ca3cc !important; }
.rg14-aegean .rv10-canvas-halo { background: radial-gradient(circle, rgba(108,163,204,.3), rgba(108,163,204,.07) 55%, transparent 72%) !important; }
.rg14-aegean .rv10-canvas-core { color: #fff; border-color: #76acd1 !important; background: linear-gradient(145deg, #285f8e, #102d52) !important; }
.rg14-aegean .rv10-stack {
  position: relative;
  isolation: isolate;
  background: linear-gradient(120deg, #0d2847, #153f67 58%, #235f90) !important;
}
.rg14-aegean .rv10-stack::before { content: ""; position: absolute; inset: 0; z-index: -1; opacity: .13; background: var(--rg14-architecture) center / cover no-repeat; mix-blend-mode: screen; }
.rg14-aegean .rv10-orbit-ring { border-color: rgba(140,198,235,.42) !important; }
.rg14-aegean .rv10-stack-center { color: #214e75 !important; background: linear-gradient(145deg, #fff, #dcedf8) !important; }
.rg14-aegean .rv10-stack-chip { color: #f7fbff !important; border-color: #5e8fb4 !important; background: #1a4b73 !important; }

/* Editorial, CTA and FAQ. */
.rg14-aegean .rv9-home-insights { background: linear-gradient(180deg, #f3f9fd, #fff) !important; }
.rg14-aegean .rv9-insights-grid > a { border: 1px solid #d4e4ef !important; border-radius: 18px !important; background: #fff !important; box-shadow: var(--rg14-shadow) !important; }
.rg14-aegean .rd27-cta { background: #fff; }
.rg14-aegean .rd27-cta-shell { color: #fff; border: 1px solid #416f93 !important; background: linear-gradient(125deg, #102d52, #245f8f 62%, #5d9cc8) !important; box-shadow: 0 30px 75px -44px rgba(16,45,82,.75) !important; }
.rg14-aegean .rd27-cta-shell :is(h2, p, .rd27-overline) { color: #fff !important; }
.rg14-aegean .rdv4-faq { background: #f7fbfe !important; }
.rg14-aegean .rdv4-faq-list summary { color: var(--rg14-ink) !important; }

@media (max-width: 1000px) {
  .rg14-aegean .rd27-hero { background-position: 58% center !important; }
  .rg14-aegean .rd27-hero::before { background: rgba(255,255,255,.68); }
  .rg14-aegean .rdv4-clients-inner { min-height: auto; }
}

@media (max-width: 680px) {
  .rg14-aegean h1 { font-size: clamp(27px, 7vw, 35px) !important; }
  .rg14-aegean h2 { font-size: clamp(20px, 5.3vw, 25px) !important; }
  .rg14-aegean .rd27-hero { background: linear-gradient(rgba(255,255,255,.84), rgba(255,255,255,.93)), var(--rg14-architecture) 55% center / cover no-repeat !important; }
  .rg14-aegean .rv13-brand-track { animation-duration: 42s !important; }
  .rg14-aegean .rv13-showreel-frame,
  .rg14-aegean .rv13-showreel-frame video { border-radius: 18px !important; }
}

@media (prefers-reduced-motion: reduce) {
  .rg14-aegean .rv13-brand-track { animation: none !important; transform: none !important; }
}
