/* Meda atmosphere: restore warmth, depth and motion using the supplied palette.
   Copper shades are tints/shades of Meda orange; no competitor colour system. */
:root {
  --meda-copper: #a34c2a;
  --meda-copper-deep: #693a29;
  --meda-warm-paper: #fbf4eb;
  --meda-peach: #efd0c0;
}

/* Photography retains its colour and a slow opening movement. */
.hero-photo {
  transform: scale(1.045);
  animation: hero-settle 2.2s var(--ease) both;
}
.hero-shade {
  background: linear-gradient(90deg,#11181cd9 0%,#171d2080 43%,#cf653512 100%),
    linear-gradient(0deg,#171d20b8,transparent 50%);
}
.hero-content > .eyebrow,
.hero-content > h1,
.hero-content > p,
.hero-buttons { animation: meda-hero-enter 1s var(--ease) both; }
.hero-content > h1 { animation-delay: .08s; }
.hero-content > p { animation-delay: .16s; }
.hero-buttons { animation-delay: .24s; }
.nav-shell { box-shadow: 0 8px 35px #11181c13,0 1px 0 #fff9 inset; backdrop-filter: blur(18px); }
.button { transition: background .25s,box-shadow .25s,transform .3s var(--ease); }
.button.dark:hover { background: #914326; box-shadow: 0 8px 24px #cf653528; }
.button.white:hover { background: #fbebdf; box-shadow: 0 8px 30px #11181c2e; }
.text-link:hover { color: var(--meda-orange); }

/* The opening statement regains a warm, rounded colour field. */
.enterprise-intro {
  position: relative;
  isolation: isolate;
  margin-top: 68px;
  padding: 58px 54px;
  border: 1px solid #cf653529;
  border-radius: 24px;
  background: radial-gradient(ellipse at 85% 0%,#cf653532,transparent 65%),
    linear-gradient(125deg,#fbf6ee,#f3e1d6);
  box-shadow: 0 24px 60px #693a2910,0 1px 0 #fff9 inset;
}
.enterprise-intro > .eyebrow { color: #8b4429; }
.enterprise-intro h2 { color: #39271f; }
.enterprise-intro > p { color: #72564a; }
.platform-intro { border-color: #cf653538; }
.platform-art {
  border-radius: 16px;
  border-color: #a7b1b64d;
  box-shadow: 0 18px 38px #171d2017,0 1px 0 #ffffff1a inset;
  transition: transform .5s var(--ease),box-shadow .5s var(--ease),border-color .4s;
}
.edge-art {
  background: radial-gradient(ellipse at 90% 8%,#cf65354a,transparent 65%),
    linear-gradient(140deg,#344047,#171d20 80%);
}
.compute-art {
  background: radial-gradient(ellipse at 5% 0%,#a7b1b67a,transparent 76%),
    radial-gradient(ellipse at 95% 100%,#cf65352b,transparent 60%),#28343a;
}
.context-art {
  background: radial-gradient(ellipse at 95% 0%,#cf653585,transparent 75%),
    linear-gradient(145deg,#54362b,#211f20);
  border-color: #cf653569;
}
.platform-art::after { display: block; opacity: .055; }
.art-label { color: #f4f2ebc9; }
.edge-system-grid > span,.compute-registers > div,.context-mini {
  background: #f4f2eb0e;
  border-color: #f4f2eb45;
  border-radius: 8px;
  backdrop-filter: blur(8px);
  box-shadow: 0 8px 22px #11181c0d;
  transition: background .3s,border-color .3s,transform .3s var(--ease);
}
.edge-system-grid > span:hover { transform: translateY(-4px); background: #cf65352e; border-color: #cf6535bb; }
.edge-agent,.model-entity {
  border-radius: 9px;
  border-color: #cf653585;
  background: linear-gradient(145deg,#485052ed,#252d31f2);
  box-shadow: 0 12px 30px #11181c3b,0 0 24px #cf65351a;
}
.model-entity { background: linear-gradient(135deg,#626b6d,#344047); }
.edge-agent i { box-shadow: 0 0 12px #cf6535b3; animation: meda-status 3.6s ease-in-out infinite; }
.art-status { background: #f4f2eb0d; border-color: #f4f2eb45; box-shadow: 0 6px 20px #11181c12; }
.art-status::before { box-shadow: 0 0 12px #cf653578; }
.compute-wires { stroke: #e7aa89b3; stroke-dasharray: 16 4; animation: meda-compute-flow 8s linear infinite; }
.compute-registers i { background: #f4f2eb5e; }
.context-mini { box-shadow: 0 16px 35px #11181c29; }
.mini-query { background: #cf653517; }
.mini-answer > small,.mini-dependency,.mini-proof { color: #e3c8b8; }
.mini-dependency i { color: #f2ac83; }
.platform-card-copy > span { color: var(--meda-copper); }
.platform-card-copy h3 { color: #39271f; }

/* The industrial console keeps its technical contrast, with copper illumination. */
.operation-section {
  background: radial-gradient(ellipse at 0% 0%,#cf653529,transparent 60%),#171d20;
}
.operation-console {
  border-radius: 16px;
  border-color: #a7b1b64d;
  box-shadow: 0 32px 70px #11181c70,0 0 65px #cf65350c;
}
.console-top { background: linear-gradient(105deg,#34404773,#171d20); }
.console-tabs { background: #202a2f; }
.console-tabs > button[aria-selected=true] { background: #cf653512; }
.operation-map {
  background: radial-gradient(ellipse at 45% 55%,#cf653524,transparent 70%),
    radial-gradient(ellipse at 15% 0%,#34404780,transparent 65%),#11181c;
}
.operation-detail { background: linear-gradient(145deg,#34404780,#171d20); }
.detail-eyebrow { color: #e7986c; }
.plant-node { box-shadow: 0 7px 20px #11181c66; transition: background .25s,border-color .25s,box-shadow .25s; }
.plant-node.selected { background: #4d3529; box-shadow: 0 0 25px #cf65352b; }
.plant-node:hover { border-color: #eaa17b; }
.op-review-box { background: #cf65350b; border-color: #cf653552; border-radius: 8px; }
.op-action { background: #cf6535; color: #fff; border-color: #cf6535; transition: background .25s,box-shadow .25s; }
.op-action:hover { background: #b4532b; box-shadow: 0 5px 20px #cf65352b; }
.op-evidence:hover { color: #edac88; }
.mission-copy {
  background: radial-gradient(ellipse at 100% 100%,#cf65354a,transparent 80%),#171d20;
}
.mission-copy .eyebrow { color: #e8aa86; }
.mission-photo { position: relative; }
.mission-photo::after { content: ''; position: absolute; inset: 0; background: linear-gradient(90deg,transparent 60%,#171d2038); pointer-events: none; }

/* Warm light returns to the explorable models and answer cards. */
.graph-section { position: relative; isolation: isolate; }
.graph-section::before {
  content: ''; position: absolute; inset: 0 -52px -30px; z-index: -1; pointer-events: none;
  background: radial-gradient(ellipse at 15% 60%,#cf653514,transparent 65%);
}
.graph-app { border-radius: 16px; border-color: #cf653545; box-shadow: 0 22px 60px #693a2912; }
.graph-toolbar { background: linear-gradient(100deg,#fdfbf7,#f2e5dc); border-color: #cf653529; }
.graph-canvas { background-color: #f7f2e9; }
.graph-label { background: #f7f2e9f0; }
.graph-detail { background: linear-gradient(150deg,#f4e3d8,#eee9e0); border-color: #cf65352e; }
.graph-node { border-radius: 8px; background: #fffdf9; box-shadow: 0 5px 15px #693a290c; transition: border-color .25s,background .25s,box-shadow .25s; }
.graph-node:hover { border-color: #cf653585; box-shadow: 0 7px 22px #cf65351c; }
.graph-node.selected { background: #fbe5d4; border-color: #cf6535; box-shadow: 0 5px 22px #cf653529; }
.evidence-link { background: #fffaf4; border-color: #cf653536; border-radius: 9px; }
.evidence-link:hover { background: #fff2e6; border-color: #cf653578; }
.architecture-explorer { border-color: #cf653545; }
.architecture-flow > div {
  background: linear-gradient(145deg,#fffaf2,#f1e0d4);
  border-color: #cf65353d; border-radius: 12px; box-shadow: 0 10px 30px #693a2908;
  transition: box-shadow .3s,border-color .3s;
}
.architecture-flow > div:hover { border-color: #cf653582; box-shadow: 0 13px 30px #cf65351a; }
.architecture-flow h3 { color: #693a29; }
.architecture-flow p { color: #715d52; }
.case-tabs { border-color: #cf653538; }
.case-tabs button.selected { color: #a34c2a; }
.answer-demo { border-radius: 16px; border-color: #cf65354d; box-shadow: 0 24px 55px #693a2912; }
.answer-demo .app-toolbar { background: linear-gradient(105deg,#fdfbf7,#f3dfd1); border-color: #cf653529; }
.answer-inner { background: linear-gradient(145deg,#fffdf9,#fcf2e9); }
.question-bubble { background: #f5e6da; border-color: #cf65352e; color: #6d4531; }
.record-state.attention { color: #a34c2a; background: #f7ddc9; }

/* Reference restoration: a peach/copper halo, translucent cards, soft depth. */
.partners { position: relative; isolation: isolate; background: transparent; border: 0; animation: none; }
.partners::before {
  display: block; content: ''; position: absolute; z-index: -1; inset: -150px 0;
  background: radial-gradient(ellipse at 50% 50%,#edbca8c7 0%,#f1cfc19c 34%,#f5e5dd63 58%,transparent 78%);
  pointer-events: none; transform-origin: 50% 50%; animation: meda-partner-light 18s ease-in-out infinite;
}
.partners > .wrap { position: relative; z-index: 1; }
.partners .section-heading h2,.partners .eyebrow { color: #39271f; }
.partners .section-heading > p { color: #72564a; }
.partner-steps article {
  border: 1px solid #ffffffb3;
  border-radius: 18px;
  background: #fff9f0b8;
  box-shadow: 0 20px 50px #a34c2a14,0 1px 0 #fff9 inset;
  backdrop-filter: blur(12px);
  transition: transform .4s var(--ease),background .4s,box-shadow .4s var(--ease),border-color .4s;
}
.partner-steps h3 { color: #39271f; }
.partner-number { color: #a34c2a; }
.partner-steps p,.partner-contributions p { color: #79513e; }
.partner-contributions .small-label { color: #8f3f25; }
.faq-list details { border-color: #cf65352e; transition: background .3s,border-color .3s; }
.faq-list details[open] { background: #cf65350b; border-color: #cf65356b; }
.faq-list summary:hover { color: #a34c2a; }

/* Restore the copper photographic contact field, then a glowing graphite close. */
.contact {
  position: relative;
  background: linear-gradient(105deg,#f4e7dff2 0%,#eeb899e8 52%,#cf6535cf 100%),url(assets/meda-industrial-port.jpg);
  background-size: cover; background-position: center 50%;
  border-color: #cf65354d;
  animation: contact-image-drift 20s ease-in-out infinite;
}
.contact-copy .eyebrow,.contact-copy h2 { color: #39271f; }
.contact-copy > p { color: #734631; }
.contact-email { border-color: #a34c2a70; color: #794023; }
.contact-card {
  background: #fffaf2dd; border-color: #fff4e6b3; border-radius: 18px;
  box-shadow: 0 25px 65px #693a2924,0 1px 0 #fff9 inset; backdrop-filter: blur(14px);
}
.contact-card input,.contact-card textarea { background: #fffdf8cc; border-color: #cf653538; transition: box-shadow .25s,border-color .25s; }
.contact-card input:focus,.contact-card textarea:focus { border-color: #cf6535; outline: none; box-shadow: 0 0 0 3px #cf65351f; }
.contact-card label { color: #79513e; }
.contact-card pre { background: #f4e7d9; }
.newsletter { background: var(--meda-ivory); padding-top: 60px; }
.newsletter-card {
  border: 1px solid #cf653547; border-radius: 24px;
  background: radial-gradient(ellipse at 95% 100%,#cf65354f,transparent 65%),
    linear-gradient(130deg,#171d20,#344047);
  box-shadow: 0 20px 50px #171d2026,0 1px 0 #ffffff14 inset;
}
.newsletter-card::after {
  display: block; width: 390px; height: 390px; right: -150px; bottom: -260px;
  background: #cf65354d; filter: blur(40px); animation: meda-newsletter-light 14s ease-in-out infinite;
}
.newsletter-form input { background: #fffaf2; }
.newsletter-form input:focus { border-color: #cf6535; box-shadow: 0 0 0 3px #cf653529; }
.newsletter-form button { background: #cf6535; transition: background .25s,box-shadow .25s; }
.newsletter-form button:hover { background: #e38150; box-shadow: 0 5px 20px #cf653538; }
.newsletter-copy > p,.newsletter-note { color: #d1c6bc; }
.footer nav strong { color: #a34c2a; }
.footer-bottom { border-color: #cf653529; }

/* Entrances and hover effects return without moving clickable graph nodes. */
.motion-ready[data-motion=on] .reveal {
  opacity: 0; transform: translateY(32px) scale(.99); filter: blur(3px);
  transition: opacity .85s var(--ease),transform .85s var(--ease),filter .7s ease;
}
.motion-ready[data-motion=on] .reveal.in-view { opacity: 1; transform: none; filter: none; }
.platform-card:nth-child(2) { transition-delay: .08s; }
.platform-card:nth-child(3) { transition-delay: .16s; }
@media(hover:hover) {
  .platform-card:hover .platform-art { transform: translateY(-7px); border-color: #cf6535a6; box-shadow: 0 26px 55px #693a2929; }
  .partner-steps article:hover,
  .motion-ready[data-motion=on] .partner-steps article.reveal.in-view:hover {
    transform: translateY(-6px); background: #fffaf2eb; border-color: #fff;
    box-shadow: 0 30px 65px #a34c2a26,0 1px 0 #fff inset;
  }
}
@keyframes meda-hero-enter { from { opacity: 0; transform: translateY(18px); } to { opacity: 1; transform: none; } }
@keyframes meda-status { 50% { box-shadow: 0 0 18px #cf6535cc; } }
@keyframes meda-compute-flow { to { stroke-dashoffset: -120; } }
@keyframes meda-partner-light { 50% { transform: scaleY(1.08); opacity: .82; } }
@keyframes meda-newsletter-light { 50% { transform: translate(-40px,-20px); opacity: .65; } }
@media(max-width:1050px) {
  .graph-section::before { inset-inline: -36px; }
  .enterprise-intro { padding: 43px 34px; gap: 25px 35px; }
}
@media(max-width:760px) {
  .hero-shade { background: linear-gradient(0deg,#11181ce6 5%,#171d2085 60%,#cf653512); }
  .enterprise-intro { margin-top: 40px; padding: 32px 25px; border-radius: 18px; }
  .enterprise-intro h2 { font-size: 31px; }
  .enterprise-intro > p { font-size: 13px; }
  .graph-section::before { inset-inline: -20px; }
  .platform-art,.operation-console,.graph-app,.answer-demo { border-radius: 13px; }
  .partners::before { inset: -70px 0; }
  .partner-steps { display: grid; grid-template-columns: 1fr; gap: 18px; }
  .partner-steps article { padding: 25px 23px 25px 54px; border-radius: 16px; }
  .partner-number { left: 21px; top: 28px; }
  .partner-steps h3 { margin: 0 0 12px; font-size: 23px; }
  .partner-steps p { font-size: 13px; }
  .partner-contributions p { font-size: 12px; }
  .contact { background: linear-gradient(145deg,#f4e7dff2,#eeb899e8 55%,#cf6535c9),url(assets/meda-industrial-port.jpg) center/cover; }
  .contact-card { border-radius: 16px; }
  .newsletter { padding-top: 38px; }
  .newsletter-card { border-radius: 18px; }
  .motion-ready[data-motion=on] .reveal { transform: translateY(22px); filter: blur(2px); }
  .motion-ready[data-motion=on] .reveal.in-view { transform: none; filter: none; }
}
/* Accessibility preferences always win; visible content never relies on motion. */
body[data-motion=off] .reveal { opacity: 1; transform: none; filter: none; }
@media(prefers-reduced-motion:reduce) {
  .motion-ready[data-motion=on] .reveal { opacity: 1; transform: none; filter: none; }
  .hero-photo { transform: none; }
  .compute-wires { stroke-dasharray: none; }
}

/* Original logo drift, introductory light sweep and two-tone headings. */
.support-marquee {
  overflow: hidden;
  mask-image: linear-gradient(90deg,transparent,#000 5%,#000 95%,transparent);
  -webkit-mask-image: linear-gradient(90deg,transparent,#000 5%,#000 95%,transparent);
}
.support-track {
  display: flex; width: max-content; transform: translateX(0);
  animation: meda-support-drift 45s linear infinite; will-change: transform;
}
.support-brand-group { flex: 0 0 var(--support-group-width); width: var(--support-group-width); gap: 0; grid-template-columns: repeat(4,minmax(0,1fr)); }
.support-duplicate { display: grid; }
.support-brand { padding-inline: 20px; }
.support-band.is-paused .support-track,
.support-band.is-outside .support-track,
.support-marquee:hover .support-track { animation-play-state: paused; }
.support-pause { color: #6d777c; font-size: 10px; min-height: 32px; gap: 8px; padding-inline: 10px; border-radius: 5px; }
.support-pause:hover { color: #a34c2a; background: #cf65350b; }
.support-pause:focus-visible { outline: 2px solid var(--meda-orange); outline-offset: 3px; }
.support-pause[hidden] { display: none; }
.support-band.is-static .support-track { animation: none; transform: none; width: 100%; will-change: auto; }
.support-band.is-static .support-brand-group { flex-basis: 100%; width: 100%; }
.support-band.is-static .support-duplicate { display: none; }
.support-band.is-static .support-marquee { mask-image: none; -webkit-mask-image: none; }

.enterprise-intro { overflow: hidden; background-size: 180% 180%,100% 100%; animation: meda-intro-field 18s ease-in-out infinite; }
.enterprise-intro::before {
  content: ''; position: absolute; inset: 0; z-index: -1; pointer-events: none;
  background: linear-gradient(110deg,transparent 18%,#cf653521 48%,transparent 72%);
  transform: translateX(-120%);
}
.enterprise-intro.in-view::before { animation: meda-intro-sweep 12s .3s ease-in-out infinite; }
.enterprise-intro h2 .title-primary { color: #39271f; }
.enterprise-intro h2 .title-secondary { color: #916a58; }
.enterprise-intro h2 span { transition: color .5s var(--ease),text-shadow .5s var(--ease); }
#cases-title .title-primary { color: var(--meda-graphite); }
#cases-title .title-secondary { color: #81898d; }
#cases-title span { transition: color .45s var(--ease); }
@media(hover:hover) {
  .enterprise-intro h2:hover .title-primary { color: var(--meda-orange); text-shadow: 0 0 28px #cf65351a; }
  .enterprise-intro h2:hover .title-secondary { color: #79452e; }
}
@keyframes meda-intro-field { 0%,100% { background-position: 0 50%,0 0; } 50% { background-position: 100% 50%,0 0; } }
@keyframes meda-intro-sweep { 0% { transform: translateX(-120%); } 22%,100% { transform: translateX(120%); } }
@media(max-width:760px) {
  .support-heading { padding-right: 75px; }
  .support-pause { right: 0; font-size: 9px; }
  .support-band.is-static .support-brand-group { grid-template-columns: repeat(2,minmax(0,1fr)); gap: 25px 15px; }
}
@media(prefers-reduced-motion:reduce) {
  .support-track { animation: none; transform: none; width: 100%; will-change: auto; }
  .support-brand-group { flex-basis: 100%; width: 100%; }
  .support-duplicate { display: none; }
  .support-marquee { mask-image: none; -webkit-mask-image: none; }
  .enterprise-intro,.enterprise-intro::before { animation: none; }
}
@media(max-width:380px) { .graph-section::before { inset-inline: -16px; } }
