:root {
  --platform-navy: #0b2d35;
  --platform-green: #0f766e;
  --platform-mint: #dff6f0;
  --platform-blue: #eaf3ff;
  --platform-orange: #fff2dc;
  --platform-line: #d7e6e2;
  --platform-ink: #102a32;
}

/* Legacy sections retained only for rollback must never become visible through component display rules. */
.home-legacy[hidden] { display:none !important; }
.quote-print-root:not(.is-visible) .quote-paper,
.quote-print-root:not(.is-visible) .quote-product-page { display:none !important; }
.lang-switch { min-width:48px; padding-left:14px !important; padding-right:14px !important; color:var(--platform-green) !important; border-color:#acd7ce !important; }

@media (min-width:1101px) {
  body.evos-site header nav { gap:14px; }
  body.evos-site header nav a { font-size:13px; white-space:nowrap; }
}

.platform-page { background:#f7faf9; color:var(--platform-ink); }
.platform-page .section { padding:72px 0; }
.platform-hero { padding:72px 0 56px; background:linear-gradient(135deg,#eef8f5 0%,#f8fbff 52%,#edf3ff 100%); border-bottom:1px solid var(--platform-line); }
.platform-hero__grid { display:grid; grid-template-columns:minmax(0,1.08fr) minmax(360px,.92fr); gap:48px; align-items:center; }
.platform-hero h1 { margin:12px 0 20px; font-size:clamp(38px,5vw,66px); line-height:1.08; letter-spacing:-.045em; color:var(--platform-navy); }
.platform-hero h1 span { color:var(--platform-green); }
.platform-hero__lead { max-width:720px; font-size:19px; line-height:1.75; color:#3c585f; }
.platform-kicker { display:inline-flex; align-items:center; gap:8px; padding:8px 13px; border:1px solid #b8ddd5; border-radius:999px; background:#fff; color:var(--platform-green); font-size:13px; font-weight:800; letter-spacing:.04em; }
.platform-hero__actions { display:flex; flex-wrap:wrap; gap:10px; margin-top:28px; }

.platform-core { position:relative; min-height:430px; display:grid; place-items:center; }
.platform-core::before { content:""; position:absolute; inset:50%; width:280px; height:280px; transform:translate(-50%,-50%); border:1px dashed #9ccbc1; border-radius:50%; }
.platform-core__center { position:relative; z-index:2; width:220px; height:220px; display:flex; flex-direction:column; align-items:center; justify-content:center; padding:26px; text-align:center; border-radius:50%; color:#fff; background:linear-gradient(145deg,#123e47,#0f766e); box-shadow:0 24px 60px rgba(15,83,82,.25); }
.platform-core__center strong { font-size:27px; letter-spacing:-.03em; }
.platform-core__center span { margin-top:8px; font-size:14px; line-height:1.45; color:#d8f3ed; }
.platform-core__chip { position:absolute; z-index:3; min-width:142px; padding:13px 16px; border:1px solid var(--platform-line); border-radius:14px; background:#fff; box-shadow:0 12px 30px rgba(22,54,60,.09); font-size:14px; font-weight:800; text-align:center; }
.platform-core__chip:nth-of-type(2) { top:12px; left:50%; transform:translateX(-50%); }
.platform-core__chip:nth-of-type(3) { top:118px; right:0; }
.platform-core__chip:nth-of-type(4) { right:28px; bottom:40px; }
.platform-core__chip:nth-of-type(5) { left:28px; bottom:40px; }
.platform-core__chip:nth-of-type(6) { top:118px; left:0; }

.platform-section-head { max-width:820px; margin-bottom:30px; }
.platform-section-head.center { margin-left:auto; margin-right:auto; text-align:center; }
.platform-section-head .small { color:var(--platform-green); font-size:13px; font-weight:900; letter-spacing:.12em; text-transform:uppercase; }
.platform-section-head h2 { margin:8px 0 12px; font-size:clamp(30px,4vw,46px); line-height:1.2; letter-spacing:-.04em; color:var(--platform-navy); }
.platform-section-head p { margin:0; color:#587077; font-size:17px; line-height:1.7; }

.problem-grid,.value-grid,.service-grid,.stakeholder-grid,.system-layer-grid { display:grid; gap:18px; }
.problem-grid { grid-template-columns:repeat(5,minmax(0,1fr)); }
.value-grid { grid-template-columns:repeat(3,minmax(0,1fr)); }
.service-grid { grid-template-columns:repeat(5,minmax(0,1fr)); }
.stakeholder-grid { grid-template-columns:repeat(5,minmax(0,1fr)); }
.system-layer-grid { grid-template-columns:repeat(4,minmax(0,1fr)); }

.platform-card { min-width:0; padding:24px; border:1px solid var(--platform-line); border-radius:18px; background:#fff; box-shadow:0 10px 28px rgba(16,42,50,.055); }
.platform-card__num { display:inline-grid; place-items:center; width:34px; height:34px; margin-bottom:15px; border-radius:10px; background:var(--platform-mint); color:var(--platform-green); font-size:13px; font-weight:900; }
.platform-card h3 { margin:0 0 10px; font-size:20px; line-height:1.35; color:var(--platform-navy); }
.platform-card p { margin:0; color:#5a7177; line-height:1.65; }
.platform-card ul { margin:14px 0 0; padding-left:18px; color:#435c63; line-height:1.8; }
.platform-card--question { padding:20px; border-top:4px solid var(--platform-green); }
.platform-card--question .platform-card__audience { display:block; margin-bottom:10px; color:var(--platform-green); font-size:14px; font-weight:900; }
.platform-card--question strong { display:block; min-height:64px; font-size:17px; line-height:1.5; color:var(--platform-navy); }
.platform-card--question ol { margin:15px 0 0; padding-left:20px; color:#4e676e; line-height:1.75; }
.platform-card--service { position:relative; overflow:hidden; padding-top:74px; }
.platform-card--service::before { content:attr(data-code); position:absolute; top:20px; left:22px; font-size:26px; font-weight:900; letter-spacing:-.04em; color:var(--platform-green); }
.platform-card--service[data-status]::after { content:attr(data-status); position:absolute; top:22px; right:18px; padding:5px 8px; border-radius:999px; background:#eef4f2; color:#5a716c; font-size:11px; font-weight:800; }
.platform-card--service a { display:inline-flex; margin-top:18px; color:var(--platform-green); font-weight:800; text-decoration:none; }

.platform-data-strip { display:grid; grid-template-columns:repeat(5,1fr); gap:0; border:1px solid var(--platform-line); border-radius:20px; overflow:hidden; background:#fff; }
.platform-data-strip__item { position:relative; padding:24px 18px; text-align:center; }
.platform-data-strip__item + .platform-data-strip__item { border-left:1px solid var(--platform-line); }
.platform-data-strip__item strong { display:block; color:var(--platform-navy); font-size:18px; }
.platform-data-strip__item span { display:block; margin-top:7px; color:#668087; font-size:13px; }

.system-flow { display:grid; grid-template-columns:repeat(6,minmax(0,1fr)); gap:14px; align-items:stretch; }
.system-flow__step { position:relative; min-height:150px; padding:22px 18px; border:1px solid var(--platform-line); border-radius:17px; background:#fff; }
.system-flow__step:not(:last-child)::after { content:"→"; position:absolute; z-index:2; top:50%; right:-18px; transform:translateY(-50%); width:22px; color:var(--platform-green); font-size:23px; font-weight:900; text-align:center; }
.system-flow__step span { display:block; color:var(--platform-green); font-size:12px; font-weight:900; letter-spacing:.08em; }
.system-flow__step strong { display:block; margin:10px 0 7px; font-size:17px; line-height:1.35; color:var(--platform-navy); }
.system-flow__step p { margin:0; color:#60787e; font-size:13px; line-height:1.55; }

.platform-proof { padding:34px; border-radius:22px; background:var(--platform-navy); color:#fff; }
.platform-proof h2 { margin:0 0 12px; font-size:32px; color:#fff; }
.platform-proof p { max-width:880px; margin:0; color:#d4e5e2; font-size:17px; line-height:1.75; }
.platform-proof__route { margin-top:24px; display:flex; flex-wrap:wrap; gap:8px; align-items:center; }
.platform-proof__route span { padding:9px 12px; border:1px solid rgba(255,255,255,.18); border-radius:10px; background:rgba(255,255,255,.07); font-size:13px; font-weight:800; }
.platform-proof__route i { color:#76d7c7; font-style:normal; font-weight:900; }

.platform-cta { padding:54px 0; background:linear-gradient(135deg,#0b3038,#0f766e); color:#fff; }
.platform-cta__inner { display:flex; justify-content:space-between; gap:30px; align-items:center; }
.platform-cta h2 { margin:0 0 10px; color:#fff; font-size:34px; letter-spacing:-.04em; }
.platform-cta p { margin:0; color:#d5ede8; font-size:17px; }
.platform-cta .btn-line { border-color:rgba(255,255,255,.65); color:#fff; background:transparent; }
.platform-cta .btn-dark { background:#fff; color:var(--platform-navy); }

.status-table { width:100%; border-collapse:separate; border-spacing:0; overflow:hidden; border:1px solid var(--platform-line); border-radius:18px; background:#fff; }
.status-table th,.status-table td { padding:17px 18px; border-bottom:1px solid var(--platform-line); text-align:left; vertical-align:top; }
.status-table th { width:22%; color:var(--platform-navy); background:#f3f8f6; font-weight:900; }
.status-table tr:last-child th,.status-table tr:last-child td { border-bottom:0; }
.status-pill { display:inline-flex; padding:5px 9px; margin-right:8px; border-radius:999px; background:var(--platform-mint); color:var(--platform-green); font-size:12px; font-weight:900; }
.status-pill--future { background:var(--platform-orange); color:#9a5c00; }

@media (max-width:1100px) {
  .platform-hero__grid { grid-template-columns:1fr; }
  .platform-core { max-width:650px; width:100%; margin:auto; }
  .problem-grid,.stakeholder-grid,.service-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .system-flow { grid-template-columns:repeat(3,minmax(0,1fr)); }
  .system-flow__step:nth-child(3)::after { display:none; }
  .system-layer-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
}

@media (max-width:720px) {
  body.evos-site .head-actions .lang-switch { flex:0 0 48px; }
  .platform-page .section { padding:52px 0; }
  .platform-hero { padding:48px 0 40px; }
  .platform-hero__grid { gap:26px; }
  .platform-hero h1 { font-size:39px; }
  .platform-hero__lead { font-size:16px; }
  .platform-core { min-height:auto; display:flex; flex-direction:column; gap:10px; }
  .platform-core::before { display:none; }
  .platform-core__center { width:190px; height:190px; margin-bottom:8px; }
  .platform-core__chip { position:static; transform:none !important; width:100%; }
  .problem-grid,.value-grid,.service-grid,.stakeholder-grid,.system-layer-grid,.system-flow { grid-template-columns:1fr; }
  .platform-data-strip { grid-template-columns:1fr 1fr; }
  .platform-data-strip__item + .platform-data-strip__item { border-left:0; border-top:1px solid var(--platform-line); }
  .system-flow__step::after { display:none !important; }
  .platform-cta__inner { display:block; }
  .platform-cta__inner .platform-hero__actions { margin-top:22px; }
  .status-table,.status-table tbody,.status-table tr,.status-table th,.status-table td { display:block; width:100%; }
  .status-table th { border-bottom:0; padding-bottom:7px; }
  .status-table td { padding-top:7px; }
}

/* EVLINKNET main landing page */
.home-landing { padding:54px 0 0; overflow:hidden; background:linear-gradient(135deg,#f4fbf9 0%,#f8fbff 55%,#edf4ff 100%); border-bottom:1px solid var(--platform-line); }
.home-landing__hero { display:grid; grid-template-columns:minmax(0,1.05fr) minmax(420px,.95fr); gap:54px; align-items:center; }
.home-landing__kicker { display:inline-flex; padding:7px 12px; border:1px solid #badfd6; border-radius:999px; background:#fff; color:var(--platform-green); font-size:12px; font-weight:900; letter-spacing:.1em; }
.home-landing__copy h1 { margin:17px 0 20px; color:var(--platform-navy); font-size:clamp(38px,4.3vw,60px); line-height:1.09; letter-spacing:-.055em; }
.home-landing__copy h1 strong { color:var(--platform-green); font-weight:900; }
.home-landing__copy > p { max-width:720px; margin:0; color:#4b646b; font-size:18px; line-height:1.72; }
.home-landing__actions { display:flex; flex-wrap:wrap; gap:10px; margin-top:27px; }
.home-command { overflow:hidden; border:1px solid #cfe2de; border-radius:25px; background:#fff; box-shadow:0 26px 70px rgba(15,62,70,.13); }
.home-command__top { padding:27px 28px 23px; color:#fff; background:linear-gradient(135deg,#0b3038,#0f766e); }
.home-command__top span,.home-command__top em { display:block; }
.home-command__top span { font-size:28px; font-weight:900; letter-spacing:-.035em; }
.home-command__top em { margin-top:5px; color:#ccebe5; font-size:14px; font-style:normal; }
.home-command__metrics { display:grid; grid-template-columns:repeat(3,1fr); padding:22px; gap:10px; }
.home-command__metrics div { min-width:0; padding:17px 12px; border:1px solid #dcebe7; border-radius:15px; background:#f7fbfa; text-align:center; }
.home-command__metrics b,.home-command__metrics span { display:block; }
.home-command__metrics b { margin-bottom:7px; color:var(--platform-green); font-size:15px; }
.home-command__metrics span { color:#536a70; font-size:13px; line-height:1.5; }
.home-command__flow { display:flex; justify-content:center; align-items:center; gap:8px; padding:0 18px 23px; color:#38555c; font-size:12px; font-weight:800; }
.home-command__flow span { padding:7px 9px; border-radius:8px; background:#eaf5f2; }
.home-command__flow i { color:var(--platform-green); font-style:normal; }
.home-audience { display:grid; grid-template-columns:repeat(4,1fr); margin-top:48px; border-top:1px solid #d6e8e4; }
.home-audience span { padding:17px 12px; color:#526c72; font-size:13px; font-weight:800; text-align:center; }
.home-audience span + span { border-left:1px solid #d6e8e4; }

.home-section { padding:78px 0; background:#fff; }
.home-section--problem,.home-section--services { background:#f5f9f8; }
.home-section__head { display:flex; justify-content:space-between; gap:60px; align-items:end; margin-bottom:31px; }
.home-section__head > div { max-width:730px; }
.home-section__head > p { max-width:420px; margin:0 0 4px; color:#60777d; line-height:1.7; }
.home-section__head span { color:var(--platform-green); font-size:12px; font-weight:900; letter-spacing:.13em; }
.home-section__head h2 { margin:8px 0 0; color:var(--platform-navy); font-size:clamp(30px,3.5vw,46px); line-height:1.22; letter-spacing:-.045em; }
.home-section__head--center { display:block; text-align:center; }
.home-section__head--center > div { margin:auto; }
.home-problem-grid,.home-business-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:18px; }
.home-problem-grid article { padding:27px; border:1px solid #dbe8e5; border-top:4px solid var(--platform-green); border-radius:18px; background:#fff; }
.home-problem-grid b { color:var(--platform-green); font-size:13px; }
.home-problem-grid h3 { margin:14px 0 18px; color:var(--platform-navy); font-size:21px; line-height:1.45; }
.home-problem-grid p { margin:0; padding-top:17px; border-top:1px solid #e3ecea; color:#61787e; font-size:14px; line-height:1.6; }
.home-business-card { position:relative; min-height:300px; padding:30px; overflow:hidden; border:1px solid #d8e6e3; border-radius:20px; color:inherit; background:#fff; text-decoration:none; transition:transform .18s ease,box-shadow .18s ease; }
.home-business-card:hover { transform:translateY(-4px); box-shadow:0 18px 45px rgba(14,61,69,.12); }
.home-business-card small { color:var(--platform-green); font-size:11px; font-weight:900; letter-spacing:.12em; }
.home-business-card h3 { margin:45px 0 15px; color:var(--platform-navy); font-size:25px; line-height:1.35; }
.home-business-card p { margin:0; color:#5d747a; line-height:1.7; }
.home-business-card strong { position:absolute; left:30px; bottom:27px; color:var(--platform-green); font-size:14px; }
.home-business-card--platform { color:#fff; border-color:#0e5f5c; background:linear-gradient(145deg,#0b3038,#0f766e); }
.home-business-card--platform small,.home-business-card--platform h3,.home-business-card--platform strong { color:#fff; }
.home-business-card--platform p { color:#d3e9e5; }
.home-service-grid { display:grid; grid-template-columns:repeat(4,1fr); gap:15px; }
.home-service-card { min-width:0; padding:24px; border:1px solid #dbe8e5; border-radius:17px; color:inherit; background:#fff; text-decoration:none; }
.home-service-card small { color:var(--platform-green); font-size:12px; font-weight:800; }
.home-service-card h3 { margin:9px 0 12px; color:var(--platform-navy); font-size:23px; }
.home-service-card p { min-height:70px; margin:0; color:#60767c; font-size:14px; line-height:1.65; }
.home-service-card span { display:block; margin-top:18px; color:var(--platform-green); font-size:13px; font-weight:900; }
.home-system-route { display:flex; justify-content:center; align-items:center; flex-wrap:wrap; gap:10px; margin-top:24px; padding:17px 20px; border-radius:15px; color:#36525a; background:#e6f2ef; font-size:13px; font-weight:800; }
.home-system-route i { color:var(--platform-green); font-style:normal; font-weight:900; }
.home-cta { padding:61px 0; color:#fff; background:linear-gradient(135deg,#092b33,#0d6e68); }
.home-cta__inner { display:flex; justify-content:space-between; align-items:center; gap:45px; }
.home-cta span { color:#7ed9c9; font-size:11px; font-weight:900; letter-spacing:.13em; }
.home-cta h2 { margin:8px 0 10px; color:#fff; font-size:36px; line-height:1.25; letter-spacing:-.04em; }
.home-cta p { margin:0; color:#d1e8e4; line-height:1.7; }
.home-cta .home-landing__actions { flex:none; margin-top:0; }
.home-cta .btn-dark { background:#fff; color:var(--platform-navy); }
.home-cta .btn-line { border-color:rgba(255,255,255,.6); color:#fff; background:transparent; }

@media (max-width:1000px) {
  .home-landing__hero { grid-template-columns:1fr; }
  .home-command { max-width:680px; }
  .home-service-grid { grid-template-columns:repeat(2,1fr); }
  .home-section__head { display:block; }
  .home-section__head > p { max-width:760px; margin-top:16px; }
  .home-cta__inner { display:block; }
  .home-cta .home-landing__actions { margin-top:24px; }
}

@media (max-width:720px) {
  .home-landing { padding-top:39px; }
  .home-landing__hero { gap:30px; }
  .home-landing__copy h1 { font-size:38px; }
  .home-landing__copy > p { font-size:16px; }
  .home-command__metrics { grid-template-columns:1fr; }
  .home-command__flow { flex-direction:column; }
  .home-command__flow i { transform:rotate(90deg); }
  .home-audience { grid-template-columns:1fr 1fr; margin-top:35px; }
  .home-audience span:nth-child(3) { border-left:0; border-top:1px solid #d6e8e4; }
  .home-audience span:nth-child(4) { border-top:1px solid #d6e8e4; }
  .home-section { padding:56px 0; }
  .home-section__head { margin-bottom:24px; }
  .home-problem-grid,.home-business-grid,.home-service-grid { grid-template-columns:1fr; }
  .home-business-card { min-height:280px; }
  .home-service-card p { min-height:0; }
  .home-system-route { align-items:stretch; flex-direction:column; }
  .home-system-route i { align-self:center; transform:rotate(90deg); }
  .home-cta h2 { font-size:31px; }
}
