﻿.card,
.services .card,
.clients .card,
.timeline-detail,
.about-focus-panel,
.about-difference .card {
  background: linear-gradient(160deg, rgba(18,42,68,0.92), rgba(10,24,40,0.96));
  border: 1px solid rgba(115,178,228,0.35);
  border-radius: 18px;
  box-shadow: 0 12px 32px rgba(2,8,20,0.18);
  transition: box-shadow 0.22s, border-color 0.22s, transform 0.22s;
}
.card:hover,
.services .card:hover,
.clients .card:hover,
.about-difference .card:hover {
  box-shadow: 0 24px 48px rgba(54,149,255,0.18);
  border-color: rgba(151,209,255,0.74);
  transform: translateY(-2px) scale(1.02);
}

input,
textarea,
select {
  background: linear-gradient(90deg, rgba(30,49,71,0.76) 0%, rgba(18,42,68,0.92) 100%);
  border: 1px solid rgba(141,180,216,0.36);
  color: #edf6ff;
  border-radius: 10px;
  padding: 10px 14px;
  font-size: 15px;
  transition: border-color 0.22s, box-shadow 0.22s;
}
input:focus,
textarea:focus,
select:focus {
  border-color: #36a9ff;
  box-shadow: 0 0 0 2px rgba(54,149,255,0.18);
}

.nav a {
  position: relative;
  transition: color 0.22s;
}
.nav a::after {
  content: '';
  position: absolute;
  left: 0;
  bottom: -2px;
  width: 100%;
  height: 2px;
  background: linear-gradient(90deg, #1aa9da 0%, #36a9ff 100%);
  opacity: 0;
  transition: opacity 0.22s, transform 0.22s;
  transform: scaleX(0.7);
}
.nav a:hover::after,
.nav a:focus::after {
  opacity: 1;
  transform: scaleX(1);
}
@import url('https://fonts.googleapis.com/css2?family=IBM+Plex+Sans:wght@400;500;600;700&family=Manrope:wght@400;500;600;700;800&family=Outfit:wght@500;600;700;800&family=Plus+Jakarta+Sans:wght@400;500;600;700;800&family=Space+Grotesk:wght@500;600;700&display=swap');

/* Global Reset */
*{box-sizing:border-box;}
html, body {margin:0; padding:0; width:100%; overflow-x:hidden; font-family:'Plus Jakarta Sans', 'Segoe UI', sans-serif; scroll-behavior:smooth; -webkit-text-size-adjust:100%;}
img {display:block; max-width:100%; height:auto;}
body {background:#0e1420; color:#e6e9ef; text-align:left; min-height:100vh;}
body.menu-open {overflow:hidden;}

/* Keep typography consistent across all native controls and text elements */
body, h1, h2, h3, h4, h5, h6, p, a, button, input, textarea, select, label, span, li {
  font-family:'Plus Jakarta Sans', 'Segoe UI', sans-serif;
}

h1, h2, h3, h4, p, li {
  overflow-wrap: break-word;
}

h1, h2, h3, h4 {
  font-family:'Outfit', 'Plus Jakarta Sans', 'Segoe UI', sans-serif;
}

:root { --bg: #1a3046; --text: #edf6ff; --panel: rgba(30,49,71,0.76); --panel-border: rgba(141,180,216,0.36); --link: #f3f9ff; --link-hover: #afe6ff; --accent: #1aa9da; --accent-2: #168ab4; }
body.light { --bg: #edf4fb; --text: #17314a; --panel: rgba(255,255,255,0.96); --panel-border: rgba(106,135,168,0.26); --link: #245d84; --link-hover: #1088b8; --accent: #1aa9da; --accent-2: #168ab4; }

:root {
  --round-lg: 18px;
  --round-md: 14px;
}

body {
  background:
    radial-gradient(circle at 0% 0%, rgba(88, 166, 223, 0.36), transparent 36%),
    radial-gradient(circle at 100% 12%, rgba(74, 187, 232, 0.28), transparent 34%),
    var(--bg);
  color: var(--text);
}
.site-header {background: rgba(15, 35, 56, 0.78);} 
body.light .site-header {background: rgba(255, 255, 255, 0.93);}

.nav a {color: var(--link);} 
.nav a:hover, .nav a:focus {color: var(--link-hover);}

.hero, .card, .footer-grid, .footer-social a {background: var(--panel);} 
.hero {box-shadow: 0 24px 52px rgba(2, 11, 22, 0.32);} 
.card {border-color: var(--panel-border);} 
.footer-social a {border-color: var(--panel-border);} 

/* Global rounded treatment */
:where(.footer-social a, .theme-toggle, .cta, .contact-form input, .contact-form textarea, #scrollTopBtn) {
  border-radius: var(--round-lg);
  box-shadow: none;
}

:where(.cta, .theme-toggle, .contact-form input, .contact-form textarea, .roadmap-step, .timeline-step, #scrollTopBtn) {
  border-radius: var(--round-md);
}

/* Layout Container */
.container, .mission, .services, .clients, footer {width:min(1140px,96%); margin:0 auto;}

/* Header */
.site-header {position:fixed; top:0; left:0; right:0; z-index:999; background:rgba(16,36,58,0.82); backdrop-filter:blur(10px); border-bottom:1px solid rgba(136,178,215,0.36);}
.site-header .container {display:flex; justify-content:flex-start; align-items:center; gap:16px; width:100%; margin:0; padding:12px 0;}
.logo {height:40px; width:auto; max-width:150px;}
.site-brand {display:inline-flex; align-items:center; line-height:0; text-decoration:none; flex-shrink:0;}
/* If the logo file includes a black matte background, this blend hides that matte on the dark header. */
.site-header .site-brand .logo {mix-blend-mode:screen;}
.nav {display:flex; gap:12px; align-items:center; margin-left:10px; flex-wrap:wrap;}
.nav-toggle {display:none; border:0; background:transparent; color:#f3f6ff; width:36px; height:32px; padding:0; border-radius:0; font-size:30px; font-weight:700; line-height:1; cursor:pointer; transition:opacity .2s ease, transform .2s ease;}
.nav-toggle:hover {opacity:0.82; transform:translateY(-1px);}
.nav-toggle:focus-visible {outline:2px solid rgba(41, 76, 191, 0.45); outline-offset:3px;}
.nav a {color:#f3f6ff; text-decoration:none; font-weight:600; font-size:13px; transition:.2s;}
.nav a:hover, .nav a:focus {color:var(--link-hover);}

.nav-linkedin {
  display:inline-flex;
  align-items:center;
  justify-content:center;
  width:40px;
  height:40px;
  padding:0;
  border:1px solid rgba(148,198,230,0.5);
  background:rgba(22,45,68,0.58);
  border-radius:10px;
  line-height:1;
}

.nav-linkedin:hover,
.nav-linkedin:focus {
  background:rgba(24,113,154,0.42);
  border-color:rgba(180,229,255,0.88);
}

.nav-linkedin-icon {
  width:24px;
  height:24px;
  display:block;
}

.about-profile {
  margin-top: 22px;
  display: grid;
  grid-template-columns: minmax(180px, 260px) minmax(0, 1fr);
  gap: 10px;
  align-items: center;
  text-align: left;
}

.about-profile-photo {
  width: 100%;
  max-width: 190px;
  border-radius: 0;
  border: 0;
  box-shadow: 0 8px 18px rgba(4, 14, 28, 0.22);
  opacity: 0.82;
  filter: saturate(0.9) contrast(0.96);
  clip-path: ellipse(39% 43% at 50% 48%);
}

.about-profile-copy h3 {
  margin: 0 0 6px;
}

.about-profile-heading {
  display: flex;
  flex-wrap: wrap;
  align-items: baseline;
  gap: 8px;
}

.about-profile-role {
  display: inline-flex;
  align-items: center;
  white-space: nowrap;
  font-size: 0.56em;
  font-weight: 700;
  color: #9ec4e2;
  letter-spacing: 0.05em;
  text-transform: uppercase;
  padding: 4px 10px;
  border-radius: 999px;
  border: 1px solid rgba(103,166,217,0.26);
  background: rgba(103,166,217,0.08);
}

.about-profile-copy p {
  margin: 0;
  max-width: 62ch;
}

.theme-toggle {margin-left: 16px; border: 1px solid rgba(255,255,255,.22); background: rgba(20,28,42,.65); border-radius:8px; color:#f5f8ff; padding: 8px 10px; cursor:pointer; font-size:14px; transition:.2s;}
.theme-toggle:hover {background: rgba(65,95,146,0.72);}

.footer-social {margin: 10px 0 18px; display:flex; gap: 18px; justify-content:center;}
.footer-social a {color:#d4e4ff; font-size:13px; text-decoration:none; border:1px solid rgba(255,255,255,.18); padding:8px 14px; border-radius:8px; backdrop-filter: blur(2px);}
.footer-social a:hover {background: rgba(79,110,170,.18); border-color: rgba(125,160,230,.4);}
.footer-social .nav-linkedin {width:56px; height:56px; padding:0; border-radius:14px;}
.footer-social .nav-linkedin-icon {width:32px; height:32px;}

/* Hero */
.hero {position:relative; padding:220px 20px 130px; margin-top:40px; min-height:calc(100vh - 70px); display:flex; align-items:center; justify-content:center; background-image:linear-gradient(180deg, rgba(18,42,68,0.42), rgba(10,24,40,0.72)), url('../images/datacenter.jpg'); background-size:cover; background-position:center; filter:brightness(1.08) contrast(1.03);}
.hero::after {content:''; position:absolute; inset:0; background:linear-gradient(180deg,rgba(0,0,0,0.32),rgba(0,0,0,0.56)); pointer-events:none;}
.hero-content {position:relative; z-index:2; max-width:760px; text-align:center; margin:0 auto;}
.hero-accents {position:absolute; inset:0; pointer-events:none; z-index:1;}
.hero-accents .accent-dot {position:absolute; width:10px; height:10px; border-radius:50%; background: linear-gradient(135deg, rgba(50,200,255,0.82), rgba(25,131,255,0.34)); box-shadow:0 0 10px rgba(53, 180, 255, 0.32); opacity:0.58; animation:dot-pulse 7.5s infinite ease-in-out;}
.hero-accents .dot-1 {left:18%; top:30%; animation-delay:0s;}
.hero-accents .dot-2 {left:72%; top:22%; animation-delay:1.25s;}
.hero-accents .dot-3 {left:55%; top:62%; animation-delay:2.1s;}
.hero-accents .accent-line {position:absolute; width: 63%; height:1px; background: rgba(83, 163, 255, 0.18); border-radius: 999px; box-shadow:0 0 6px rgba(75, 145, 255, 0.18); animation:line-scan 9s infinite linear;}
.hero-accents .line-1 {left:8%; top:45%; transform:rotate(1.3deg);}
.hero-accents .line-2 {right:12%; top:64%; transform:rotate(-0.9deg); animation-delay:2.3s;}
.hero-accents .accents-packets {position:absolute; inset:0;}
.hero-accents .packet-flow {position:absolute; height: 3px; border-radius: 999px; background-image: linear-gradient(90deg, rgba(93, 177, 255, 0.3), rgba(45, 107, 255, 0.04), rgba(93, 177, 255, 0.3)); box-shadow: 0 0 8px rgba(86, 175, 255, 0.3); opacity: 0.5; animation: packet-transfer 8s linear infinite;}
.hero-accents .pf-1 {width: 160px; top: 42%; left: -24%; animation-delay: 0s;}
.hero-accents .pf-2 {width: 120px; top: 55%; left: -24%; animation-delay: 1.2s;}
.hero-accents .pf-3 {width: 100px; top: 70%; left: -24%; animation-delay: 2.4s;}
.hero-logo {width:min(620px, 82vw); max-width:none; margin:0 auto 20px; display:block; opacity:0.84; filter:drop-shadow(0 0 40px rgba(60,107,255,.6)) saturate(1.15);}
.hero-content h1 {font-family: 'Outfit', 'Plus Jakarta Sans', sans-serif; font-weight:800; font-size:clamp(32px,5vw,62px); line-height:1.08; margin:0 0 14px; color:#f1f9ff; text-shadow:0 0 12px rgba(36,133,184,0.32);}
.hero-content .subtitle {font-family: 'Plus Jakarta Sans', sans-serif; color:#e0efff; opacity:0.95; font-size:clamp(16px,2.2vw,20px); margin:0 auto 22px; max-width:78%;}
.underline {width:110px; height:3px; background:var(--accent); border-radius:999px; margin:12px 0 18px;}
.hero-content .subtitle {font-size:clamp(14px,2.2vw,20px); opacity:.91; margin-bottom:24px; line-height:1.4;}
.hero-buttons {display:flex; flex-wrap:wrap; gap:12px; justify-content:center;}
.cta {padding:12px 28px; border-radius:8px; text-decoration:none; font-size:14px; font-weight:600; letter-spacing:.3px; transition:.2s; display:inline-flex; align-items:center; justify-content:center; background:var(--accent); color:#fff; border:1px solid rgba(125,160,230,0.55); box-shadow:0 10px 28px rgba(35,58,102,0.34);}
.cta:hover {background:var(--accent-2); transform:translateY(-2px);}
.cta.alt {background:rgba(255,255,255,0.1); border-color:rgba(125,160,230,0.4); color:#d9e3f7;}
.timeline-detail,
.roadmap-track,
.timeline-step,
.stat-card,
.capability-tile,
.testimonial-card,
.contact-intro-panel,
.contact-form-shell,
.feedback-panel,
.feedback-proof,
.feedback-feed-section,
.admin-panel,
.admin-data-panel {
  border-color: rgba(140, 158, 178, 0.22);
}

.contact-intro-panel,
.contact-form-shell {
  background: linear-gradient(180deg, rgba(24, 37, 51, 0.96), rgba(19, 30, 42, 0.95));
}

.footer-bottom {
  border-top: 1px solid rgba(136, 154, 176, 0.16);
  position: relative;
}

.footer-bottom::before {
  content: '';
  position: absolute;
  top: -1px;
  left: 50%;
  width: min(240px, 48vw);
  height: 1px;
  transform: translateX(-50%);
  background: linear-gradient(90deg, rgba(0,0,0,0), rgba(103, 166, 217, 0.32), rgba(214, 178, 119, 0.22), rgba(0,0,0,0));
}
.underline {width:110px; height:3px; background:var(--accent); border-radius:999px; margin:12px 0 18px;}
.hero-content .subtitle {font-size:clamp(14px,2.2vw,20px); opacity:.91; margin-bottom:24px; line-height:1.4;}
.hero-buttons {display:flex; flex-wrap:wrap; gap:12px; justify-content:center;}
.cta:hover {background:var(--accent-2); transform:translateY(-2px);}
.cta.alt {background:rgba(255,255,255,0.1); border-color:rgba(125,160,230,0.4); color:#d9e3f7;}

/* Keep the homepage tighter now that the mid-page sections were removed. */
.home-page .hero {padding:170px 20px 92px; min-height:72vh;}

/* Content sections */
.section-title {font-size:clamp(26px,3vw,32px); margin-bottom:20px;}
.mission, .services, .clients {padding:80px 0;}
.clients {text-align:left;}
.services {background: rgba(25,42,61,0.58); border:1px solid rgba(129,170,207,0.34); position:relative; text-align:left;}
.contact-section {background: rgba(20,37,56,0.68); margin-top:0; padding:90px 0; border:1px solid rgba(128,169,204,0.3); position:relative;}
.contact-section::before {display:none;}
.mission p, .services p, .card p {font-size:clamp(14px,2vw,18px); line-height:1.65; opacity:.92;}
.services-grid {display:grid; grid-template-columns:repeat(auto-fit,minmax(230px,1fr)); gap:24px; position:relative;}
.services::before, .services::after {display:none;}

#who-we-are-section .services-grid {
  margin-top: 34px;
}

.services > h2,
.clients > h2,
.timeline h2,
.contact-section h2 {
  margin-left: 0;
  margin-right: auto;
  max-width: 26ch;
  text-wrap: balance;
  text-align: left;
}

.services > p,
.clients > p,
.timeline > p,
.timeline-detail p,
.contact-form-intro,
.feedback-hero-copy > p,
.feedback-feed-header p {
  max-width: 72ch;
  margin-left: 0;
  margin-right: auto;
  text-align: left;
}

.timeline-detail h3,
.services .card h3,
.clients .card h3,
.feedback-panel-header h2,
.admin-panel-header h2,
.admin-data-header h2 {
  text-wrap: balance;
}

/* Timeline */
.timeline {padding:80px 0; text-align:center;}
.timeline-steps {display:flex; justify-content:center; gap:22px; margin-top:28px; flex-wrap:wrap;}
.timeline-step {cursor:pointer; display:flex; flex-direction:column; align-items:center; gap:10px; padding:16px; border-radius:16px; background:rgba(16,27,43,0.64); border:1px solid rgba(119,139,174,0.28); transition:transform .22s ease, border-color .22s ease; min-width:140px;}
.timeline-step.active {border-color:rgba(152,178,224,0.9); box-shadow:0 18px 44px rgba(37,59,102,0.35); transform:translateY(-4px);}
.step-dot {width:12px; height:12px; border-radius:50%; background:rgba(152,178,224,0.9); box-shadow:0 0 12px rgba(152,178,224,0.45);}
.timeline-detail {margin-top:24px; max-width:720px; margin-left:0; margin-right:auto; text-align:left;}
.timeline-roadmap-title {margin:28px 0 8px; text-align:center; color:#d2ddf3;}
.timeline-roadmap-copy {text-align:center; opacity:.86; margin:0 0 8px;}
.roadmap-track {position:relative; margin:28px auto 0; max-width:820px; padding:22px 20px 18px; border-radius:16px; background:rgba(16,27,43,0.7); border:1px solid rgba(119,139,174,0.3); display:flex; justify-content:space-between; align-items:center; gap:12px;}
.roadmap-step {flex:1; text-align:center; padding:12px; border-radius:12px; background:rgba(20,33,52,0.82); border:1px solid rgba(119,139,174,0.26); font-weight:600;}
.roadmap-dot {position:absolute; left:4%; top:50%; width:12px; height:12px; border-radius:50%; background:rgba(152,178,224,0.95); box-shadow:0 0 12px rgba(152,178,224,0.5); transform:translateY(-50%); animation:roadmap-dot 3.6s linear infinite;}
@keyframes roadmap-dot {0%{left:4%;}25%{left:32%;}50%{left:60%;}75%{left:86%;}100%{left:4%;}}

/* Stats + testimonials */
.stats {padding:80px 0; text-align:center; max-width:1025px; margin:0 auto;}
.stats-grid {display:grid; grid-template-columns:repeat(auto-fit,minmax(180px,1fr)); gap:20px; margin-top:30px;}
.stat-card {background:rgba(20,33,52,0.8); border:1px solid rgba(119,139,174,0.3); border-radius:14px; padding:22px 18px; text-align:center; backdrop-filter: blur(10px); transition:transform .24s ease, box-shadow .24s ease;}
.stat-card:hover {transform: translateY(-6px); box-shadow:0 18px 40px rgba(37,59,102,0.38);}
.stat-icon {display:inline-flex; align-items:center; justify-content:center; min-width:64px; height:32px; padding:0 10px; margin:0 auto 10px; border-radius:999px; border:1px solid rgba(142,170,220,0.5); background:linear-gradient(180deg, rgba(38,58,92,0.92), rgba(28,43,68,0.92)); color:#d9e6ff; font-size:11px; font-weight:700; letter-spacing:.8px;}
.stat-number {font-size:2.2rem; font-weight:800; margin-bottom:6px; color:#b9caf0;}
.stat-label {font-size:0.95rem; opacity:0.82;}

.stats-credentials {display:flex; flex-wrap:wrap; justify-content:center; gap:10px; margin:18px auto 0; max-width:980px;}
.credential-chip {display:inline-flex; align-items:center; padding:8px 14px; border-radius:999px; border:1px solid rgba(119,139,174,0.35); background:rgba(18,30,48,0.62); color:#d7e6ff; font-size:12px; letter-spacing:.2px;}

.capability-grid {display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:14px; margin:20px auto 0; max-width:900px;}
.capability-tile {background:linear-gradient(180deg, rgba(19,31,50,0.9), rgba(15,24,39,0.82)); border:1px solid rgba(119,139,174,0.3); border-radius:12px; padding:14px 12px; text-align:left; box-shadow:0 10px 24px rgba(0,0,0,0.25);}
.capability-tile h3 {margin:0 0 6px; font-size:14px; color:#d8e7ff;}
.capability-tile p {margin:0; font-size:12px; line-height:1.5; color:#b9c9e6;}

.testimonials {padding:80px 0 60px; text-align:center;}
.testimonial-card {max-width:720px; margin:30px auto 0; padding:26px 24px; border-radius:14px; background:rgba(16,27,43,0.78); border:1px solid rgba(119,139,174,0.26); box-shadow:0 16px 40px rgba(0,0,0,0.35); backdrop-filter: blur(10px);}
.testimonial-card p {font-size:1rem; line-height:1.7; margin:0 0 14px;}
.testimonial-author {font-weight:600; opacity:0.82;}

.card {background:rgba(12, 27, 52, 0.81); border:1px solid rgba(96, 147, 216, 0.32); border-radius:14px; padding:26px; box-shadow:0 16px 44px rgba(0,0,0,0.42); backdrop-filter: blur(10px); position:relative; z-index:2; overflow:hidden; transition: transform .34s ease, box-shadow .34s ease, opacity .34s ease, filter .34s ease; opacity:0; transform: translateY(18px); filter: blur(1px);
}
.card.visible {opacity:1; transform: translateY(0); filter: blur(0);}
.card:hover {transform: translateY(-6px); box-shadow:0 24px 68px rgba(0,0,0,0.42);}
.card::after {content:''; position:absolute; inset:0; background:linear-gradient(135deg, rgba(78,153,241,0.14), rgba(25,48,89,0.02)); mix-blend-mode:screen; opacity:0.88; pointer-events:none; border-radius:14px;}
.card h3 {margin-top:0; margin-bottom:10px; color:#c8defe; text-shadow: 0 1px 4px rgba(13,36,80,0.3);}
.card p {color:#c5dbf8; opacity:0.96;}

.services-grid .card,
.clients .card,
.timeline-detail,
.timeline-detail p,
.services .card p,
.clients .card p {
  text-align: left;
}

/* Unified page visual consistency */
.page-main,
.about-main {
  width: min(1140px, 96%);
  margin: 90px auto 0;
  padding-bottom: 30px;
}

.site-page:not(.home-page) .services,
.site-page:not(.home-page) .clients,
.site-page:not(.home-page) .contact-section {
  width: 100%;
  margin: 0;
  padding: 52px 0 0;
  background: transparent;
  border: 0;
}

.site-page:not(.home-page) .services:first-child,
.site-page:not(.home-page) .clients:first-child,
.site-page:not(.home-page) .contact-section:first-child {
  padding-top: 36px;
}

.site-page:not(.home-page) .services > h2,
.site-page:not(.home-page) .clients > h2,
.site-page:not(.home-page) .contact-section h2 {
  margin-bottom: 12px;
  color: #edf4ff;
}

.site-page:not(.home-page) .services > p,
.site-page:not(.home-page) .clients > p,
.site-page:not(.home-page) .contact-section-heading p {
  margin-bottom: 24px;
  color: #d3e1f4;
  max-width: 72ch;
}

.site-page:not(.home-page) .services-grid,
.site-page:not(.home-page) .client-grid {
  gap: 24px;
}

.site-page:not(.home-page) .card,
.site-page:not(.home-page) .client-logo,
.site-page:not(.home-page) .feedback-hero-copy,
.site-page:not(.home-page) .feedback-proof,
.site-page:not(.home-page) .feedback-panel,
.site-page:not(.home-page) .feedback-feed-section,
.site-page:not(.home-page) .feedback-highlight,
.site-page:not(.home-page) .feedback-entry-card,
.site-page:not(.home-page) .feedback-feed-empty,
.site-page:not(.home-page) .admin-panel,
.site-page:not(.home-page) .admin-data-panel,
.site-page:not(.home-page) .admin-summary-card,
.site-page:not(.home-page) .admin-record-card,
.site-page:not(.home-page) .form-column,
.site-page:not(.home-page) .feedback-column {
  background: rgba(12, 33, 66, 0.9);
  border: 1px solid rgba(67, 130, 194, 0.55);
  border-radius: 14px;
  box-shadow: 0 18px 38px rgba(2, 11, 24, 0.38);
}

.site-page:not(.home-page) .card h3,
.site-page:not(.home-page) .client-logo,
.site-page:not(.home-page) .feedback-panel-header h2,
.site-page:not(.home-page) .feedback-feed-header h2,
.site-page:not(.home-page) .admin-panel-header h2,
.site-page:not(.home-page) .admin-data-header h2,
.site-page:not(.home-page) .admin-record-title {
  color: #ccddf5;
}

.site-page:not(.home-page) .card p,
.site-page:not(.home-page) .feedback-proof li,
.site-page:not(.home-page) .feedback-feed-header p,
.site-page:not(.home-page) .feedback-entry-copy,
.site-page:not(.home-page) .admin-record-copy,
.site-page:not(.home-page) .admin-record-subtitle {
  color: #bbcee8;
}

.site-page:not(.home-page) .about-detail,
.site-page:not(.home-page) .about-detail-tight {
  margin-top: 26px;
}

.site-page:not(.home-page) .about-detail-tight {
  margin-top: 20px;
}

.site-page:not(.home-page) .about-detail h3 {
  margin: 0 0 8px;
  color: #edf4ff;
}

.site-page:not(.home-page) .about-profile {
  gap: 24px;
}

.site-page:not(.home-page) .about-profile-photo {
  border-radius: 14px;
}

.site-page:not(.home-page) .about-gain-grid {
  margin-top: 24px;
}

/* About page refinement: enterprise consulting style without content changes */
.about-page h1,
.about-page h2,
.about-page h3,
.about-page h4,
.about-page p,
.about-page li,
.about-page a,
.about-page span {
  font-family: 'IBM Plex Sans', 'Plus Jakarta Sans', 'Segoe UI', sans-serif;
}

.about-page .about-main {
  width: min(1120px, 94%);
  margin-top: 98px;
  padding-bottom: 56px;
}

.about-page .services,
.about-page .clients {
  padding: 34px 34px 30px;
  margin-top: 18px;
  background: #101f2e;
  border: 1px solid rgba(153, 167, 182, 0.28);
  border-radius: 6px;
  box-shadow: 0 8px 18px rgba(2, 10, 22, 0.16);
}

.about-page .services:first-child {
  margin-top: 0;
}

.about-page .services > h2,
.about-page .clients > h2 {
  margin-bottom: 12px;
  max-width: none;
  font-size: clamp(30px, 3.3vw, 38px);
  font-weight: 700;
  letter-spacing: 0;
  color: #edf2f7;
}

.about-page .services > p,
.about-page .clients > p {
  margin-bottom: 24px;
  max-width: 74ch;
  color: #c3ccd6;
  font-size: clamp(16px, 1.5vw, 18px);
  line-height: 1.62;
}

.about-page .services-grid {
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 16px;
}

.about-page .client-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px;
}

.about-page .card,
.about-page .client-logo,
.about-page .about-detail {
  border-radius: 6px;
  border: 1px solid rgba(151, 166, 181, 0.24);
  background: #152536;
  box-shadow: none;
}

.about-page .card {
  padding: 18px 16px;
  transition: none;
}

.about-page .card:hover,
.about-page .client-logo:hover {
  transform: none;
  box-shadow: none;
}

.about-page .card::after {
  display: none;
}

.about-page .card h3,
.about-page .about-detail h3 {
  color: #e5ebf2;
  text-shadow: none;
}

.about-page .card p,
.about-page .about-detail p,
.about-page .client-logo {
  color: #c0cad5;
}

.about-page .about-detail,
.about-page .about-detail-tight {
  margin-top: 16px;
  padding: 18px 20px;
}

.about-page .about-detail-tight {
  background: #16283b;
}

.about-page .about-profile {
  margin-top: 0;
  grid-template-columns: minmax(190px, 220px) minmax(0, 1fr);
  gap: 22px;
  align-items: center;
}

.about-page .about-profile-photo {
  max-width: 200px;
  border-radius: 6px;
  border: 1px solid rgba(150, 165, 181, 0.32);
  opacity: 1;
  filter: saturate(0.82) contrast(1.01);
  clip-path: none;
  box-shadow: none;
}

.about-page .about-profile-copy h3 {
  margin-bottom: 8px;
}

.about-page .about-profile-copy::before {
  content: 'THE FOUNDER';
  display: inline-block;
  margin-bottom: 10px;
  color: #9bb0c5;
  font-size: 10px;
  font-weight: 700;
  letter-spacing: 0.1em;
  text-transform: uppercase;
}

.about-page .about-profile-copy p {
  max-width: 68ch;
}

.about-page .about-profile-role {
  color: #9eb3c8;
}

.about-page .about-gain-grid {
  margin-top: 16px;
}

.about-ciso-inspired {
  width: min(1120px, 94%);
  margin-top: 96px;
}

.about-ciso-inspired .about-mission,
.about-ciso-inspired .about-difference,
.about-ciso-inspired .services,
.about-ciso-inspired .clients {
  background: #0f1d2d;
  border: 1px solid rgba(147, 166, 185, 0.26);
  border-radius: 8px;
  box-shadow: 0 8px 18px rgba(2, 10, 22, 0.16);
  padding: 32px;
  margin-top: 18px;
}

.about-ciso-inspired .about-mission {
  margin-top: 0;
}

.about-ciso-inspired .about-eyebrow {
  margin: 0 0 10px;
  color: #9fb5cc;
  font-size: 10px;
  font-weight: 700;
  letter-spacing: 0.1em;
  text-transform: uppercase;
}

.about-ciso-inspired h1 {
  margin: 0 0 12px;
  color: #edf3f9;
  font-size: clamp(31px, 3.4vw, 40px);
  font-weight: 700;
}

.about-ciso-inspired .about-lead {
  margin: 0;
  max-width: 74ch;
  color: #c2ccd7;
  font-size: clamp(16px, 1.5vw, 18px);
  line-height: 1.62;
}

.about-ciso-inspired .about-mission-grid {
  display: grid;
  grid-template-columns: 2fr 1fr;
  gap: 18px;
  margin-top: 22px;
}

.about-ciso-inspired .about-founder-panel,
.about-ciso-inspired .about-focus-panel {
  border: 1px solid rgba(146, 166, 186, 0.24);
  border-radius: 6px;
  background: #142535;
  padding: 18px;
}

.about-ciso-inspired .about-panel-label {
  margin: 0 0 8px;
  color: #9fb6cc;
  font-size: 10px;
  font-weight: 700;
  letter-spacing: 0.09em;
  text-transform: uppercase;
}

.about-ciso-inspired .about-focus-panel h2 {
  margin: 0 0 8px;
  color: #e8eff7;
  font-size: 28px;
  font-weight: 700;
}

.about-ciso-inspired .about-focus-panel p {
  margin: 0;
  color: #c1ccd8;
  line-height: 1.62;
}

.about-ciso-inspired .about-focus-panel .cta {
  margin-top: 16px;
}

.about-ciso-inspired .about-profile {
  margin-top: 0;
  gap: 20px;
  grid-template-columns: minmax(170px, 210px) minmax(0, 1fr);
}

.about-ciso-inspired .about-profile-copy::before {
  display: none;
}

.about-ciso-inspired .about-profile-copy h2 {
  margin: 0 0 8px;
  color: #e8eff7;
  font-size: clamp(26px, 2.3vw, 32px);
}

.about-ciso-inspired .about-profile-copy p {
  margin: 0;
  color: #c2ccd8;
  line-height: 1.62;
}

.about-ciso-inspired .about-difference .services-grid {
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 14px;
}

.about-ciso-inspired .about-difference .card,
.about-ciso-inspired .services .card,
.about-ciso-inspired .clients .card,
.about-ciso-inspired .client-logo,
.about-ciso-inspired .about-detail {
  border-radius: 6px;
  border: 1px solid rgba(150, 167, 184, 0.24);
  background: #152636;
  box-shadow: none;
}

.about-ciso-inspired .about-difference .card h3,
.about-ciso-inspired .services .card h3,
.about-ciso-inspired .clients .card h3,
.about-ciso-inspired .about-detail h3 {
  color: #e6edf5;
  text-shadow: none;
}

.about-ciso-inspired .about-difference .card p,
.about-ciso-inspired .services .card p,
.about-ciso-inspired .clients .card p,
.about-ciso-inspired .about-detail p,
.about-ciso-inspired .client-logo {
  color: #c0cad5;
}

.about-ciso-inspired .client-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px;
}

.about-ciso-inspired .client-logo {
  text-align: left;
  border-left: 3px solid rgba(138, 160, 181, 0.45);
  padding: 14px 14px 14px 16px;
  font-size: 15px;
  font-weight: 600;
}

.services-subsection-title {
  margin: 28px 0 0;
  padding-top: 16px;
  border-top: 1px solid rgba(145, 168, 190, 0.28);
  color: #dbe7f4;
  font-size: 20px;
  font-weight: 700;
  letter-spacing: 0.01em;
}

.about-page #what-we-do-section .services-grid {
  counter-reset: about-service;
}

/* Services page spacing: improve vertical rhythm between intro, grids, and CTA panel. */
.about-page #what-we-do-section > p {
  margin-bottom: 0;
}

.about-page #what-we-do-section > p + p {
  margin-top: 14px;
}

.about-page #what-we-do-section .services-grid {
  margin-top: 26px;
}

.about-page #what-we-do-section .services-grid-secondary {
  margin-top: 30px;
}

.about-page #what-we-do-section .services-separate-group {
  margin-top: 56px;
  padding-top: 24px;
  border-top: 1px solid rgba(145, 168, 190, 0.28);
}

.about-page #what-we-do-section .services-separate-group .services-subsection-title {
  margin-top: 0;
  padding-top: 0;
  border-top: 0;
}

.about-page #what-we-do-section .timeline-detail {
  margin-top: 30px;
}

.about-page #what-we-do-section .services-cta {
  margin-top: 16px;
}

.about-page #what-we-do-section .card {
  padding: 22px 20px;
}

.about-page #what-we-do-section .card h3 {
  margin-bottom: 12px;
}

.about-page #what-we-do-section .services-grid .card h3::before {
  counter-increment: about-service;
  content: counter(about-service) '  ';
  color: #9ab2c8;
  font-weight: 600;
  letter-spacing: 0.04em;
}

.about-page .client-logo {
  text-align: left;
  border-left: 3px solid rgba(140, 162, 184, 0.45);
  padding: 14px 14px 14px 16px;
  font-size: 15px;
  font-weight: 600;
}

/* Keep home feature sections aligned to the same clean card language */
.home-page .services,
.home-page .clients {
  background: transparent;
  border: 0;
  padding-top: 52px;
}

.home-page .services > h2,
.home-page .clients > h2 {
  margin-bottom: 12px;
  color: #edf4ff;
  max-width: none;
}

.home-page .services > p,
.home-page .clients > p {
  margin-bottom: 24px;
  color: #d3e1f4;
  max-width: 72ch;
}

.home-page .stats-credentials {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(180px, 1fr));
  gap: 12px;
  max-width: none;
  margin-top: 18px;
}

.home-page .credential-chip {
  width: 100%;
  min-height: 56px;
  align-items: flex-start;
  justify-content: flex-start;
  padding: 12px 14px;
  border: 1px solid rgba(96, 147, 216, 0.32);
  border-radius: 14px;
  background: rgba(12, 27, 52, 0.81);
  color: #c8defe;
  font-size: 13px;
  font-weight: 600;
  line-height: 1.35;
  letter-spacing: 0;
  box-shadow: 0 16px 44px rgba(0, 0, 0, 0.42);
  transition: transform .34s ease, box-shadow .34s ease;
}

.home-page .credential-chip:hover {
  transform: translateY(-6px);
  box-shadow: 0 24px 68px rgba(0, 0, 0, 0.42);
}

.home-page .stat-card,
.home-page .capability-tile,
.home-page .client-logo {
  border: 1px solid rgba(96, 147, 216, 0.32);
  border-radius: 14px;
  background: rgba(12, 27, 52, 0.81);
  box-shadow: 0 16px 44px rgba(0, 0, 0, 0.42);
  transition: transform .34s ease, box-shadow .34s ease;
}

.home-page .stat-card:hover,
.home-page .capability-tile:hover,
.home-page .client-logo:hover {
  transform: translateY(-6px);
  box-shadow: 0 24px 68px rgba(0, 0, 0, 0.42);
}

.home-page .capability-tile h3,
.home-page .stat-label,
.home-page .client-logo {
  color: #c8defe;
}

.home-page .capability-tile p {
  color: #c5dbf8;
}

/* Mixed light-dark refresh for interior pages */
body.site-page:not(.home-page) {
  background:
    radial-gradient(circle at 0% 0%, rgba(88, 166, 223, 0.2), transparent 30%),
    radial-gradient(circle at 100% 10%, rgba(255, 255, 255, 0.08), transparent 24%),
    linear-gradient(180deg, #13253a 0%, #182b42 36%, #1e324a 100%);
}

body.site-page:not(.home-page) .page-main,
body.site-page:not(.home-page) .about-main {
  padding-bottom: 44px;
}

body.site-page:not(.home-page) .services,
body.site-page:not(.home-page) .clients,
body.site-page:not(.home-page) .contact-section,
body.site-page.about-page .about-mission,
body.site-page.about-page .about-difference {
  background: linear-gradient(180deg, rgba(249, 252, 255, 0.98), rgba(238, 245, 251, 0.96));
  border: 1px solid rgba(162, 184, 209, 0.36);
  box-shadow: 0 22px 54px rgba(3, 13, 26, 0.18);
}

body.site-page:not(.home-page) .services,
body.site-page:not(.home-page) .clients,
body.site-page:not(.home-page) .contact-section {
  border-radius: 18px;
}

body.site-page.about-page .about-mission,
body.site-page.about-page .about-difference,
body.site-page.about-page .services,
body.site-page.about-page .clients {
  border-radius: 14px;
}

body.site-page:not(.home-page) .services > h2,
body.site-page:not(.home-page) .clients > h2,
body.site-page:not(.home-page) .contact-section h2,
body.site-page.about-page .about-mission h1,
body.site-page.about-page .about-focus-panel h2,
body.site-page.about-page .about-profile-copy h2,
body.site-page.about-page .services-subsection-title {
  color: #162b3f;
}

body.site-page:not(.home-page) .services > p,
body.site-page:not(.home-page) .clients > p,
body.site-page:not(.home-page) .contact-section p,
body.site-page.about-page .about-lead,
body.site-page.about-page .about-focus-panel p,
body.site-page.about-page .about-profile-copy p,
body.site-page.about-page .about-eyebrow,
body.site-page.about-page .about-panel-label,
body.site-page.about-page .about-profile-role,
body.site-page.about-page .timeline-detail p,
body.site-page.about-page .about-detail p,
body.site-page.about-page .client-logo {
  color: #49627b;
}

body.site-page:not(.home-page) .card,
body.site-page:not(.home-page) .client-logo,
body.site-page:not(.home-page) .timeline-detail,
body.site-page:not(.home-page) .contact-intro-panel,
body.site-page:not(.home-page) .contact-form-shell,
body.site-page.about-page .about-founder-panel,
body.site-page.about-page .about-focus-panel,
body.site-page.about-page .about-detail {
  background: #ffffff;
  border: 1px solid rgba(180, 198, 219, 0.5);
  box-shadow: 0 14px 34px rgba(14, 35, 58, 0.08);
}

body.site-page:not(.home-page) .card h3,
body.site-page:not(.home-page) .timeline-detail h3,
body.site-page:not(.home-page) .contact-form-shell .contact-section-heading h3,
body.site-page.about-page .about-detail h3,
body.site-page.about-page .about-founder-panel h2,
body.site-page.about-page .about-focus-panel h2,
body.site-page.about-page .client-logo {
  color: #19324a;
}

body.site-page:not(.home-page) .card p,
body.site-page:not(.home-page) .timeline-detail p,
body.site-page:not(.home-page) .contact-form-shell .contact-section-heading p,
body.site-page:not(.home-page) .contact-form-intro,
body.site-page:not(.home-page) .contact-trust-list,
body.site-page:not(.home-page) .contact-form label span,
body.site-page:not(.home-page) .contact-config-status,
body.site-page:not(.home-page) .contact-form .status {
  color: #4d6479;
}

body.site-page:not(.home-page) .contact-form input,
body.site-page:not(.home-page) .contact-form textarea,
body.site-page:not(.home-page) .contact-form select {
  background: #f7fafc;
  border-color: rgba(156, 178, 202, 0.52);
  color: #183147;
}

body.site-page:not(.home-page) .contact-form input::placeholder,
body.site-page:not(.home-page) .contact-form textarea::placeholder {
  color: rgba(73, 98, 123, 0.78);
}

body.site-page:not(.home-page) .contact-form input:focus,
body.site-page:not(.home-page) .contact-form textarea:focus,
body.site-page:not(.home-page) .contact-form select:focus {
  background: #ffffff;
  border-color: rgba(68, 125, 190, 0.72);
  box-shadow: 0 0 0 3px rgba(68, 125, 190, 0.12);
}

body.site-page:not(.home-page) .contact-intro-panel {
  background:
    radial-gradient(circle at 16% 10%, rgba(123, 188, 233, 0.22), transparent 34%),
    linear-gradient(180deg, rgba(246, 250, 254, 0.98), rgba(235, 242, 249, 0.98));
}

body.site-page:not(.home-page) .contact-eyebrow {
  color: #4c6e8c;
}

body.site-page:not(.home-page) .contact-intro-panel h2 {
  color: #162b3f;
}

body.site-page:not(.home-page) .cta.alt {
  background: rgba(22, 48, 74, 0.08);
  border-color: rgba(90, 128, 170, 0.28);
  color: #214868;
}

body.site-page:not(.home-page) .cta.alt:hover,
body.site-page:not(.home-page) .cta.alt:focus {
  background: rgba(26, 74, 109, 0.14);
  color: #173f5d;
}


.contact-section {padding:86px 0; text-align:center;}
.contact-feedback-layout {display:grid; grid-template-columns:repeat(2, minmax(0, 1fr)); gap:28px; justify-items:stretch; align-items:stretch; max-width:1220px; margin:0 auto;}
.feedback-column, .form-column {background:rgba(16,27,43,0.58); border:1px solid rgba(119,139,174,0.24); border-radius:14px; padding:28px; min-height:440px; display:flex; flex-direction:column;}
.form-column {order:1; width:100%; max-width:none;}
.feedback-column {order:2; width:100%; max-width:none;}
.contact-section h2{font-size:32px;margin-bottom:12px;}
.contact-section p{font-size:16px;opacity:.86; margin-bottom:22px;}
.feedback-column .testimonial-card {max-width:none; margin:12px 0 0; padding:22px 20px; flex:1; display:flex; flex-direction:column; justify-content:center;}
.feedback-column p {font-size:14px;}
.feedback-column .testimonial-card p {font-size:0.92rem; line-height:1.55;}
.feedback-column .testimonial-author {font-size:0.88rem;}
.contact-form{max-width:none;margin:0;display:flex;flex-direction:column;gap:12px;}
.contact-form .field-label,
.contact-form label span {
  display:block;
  margin-bottom:8px;
  color:#ecf4ff;
  font-size:12px;
  font-weight:700;
  letter-spacing:.08em;
  text-transform:uppercase;
}
.contact-form input,
.contact-form textarea,
.contact-form select {width:100%; background:rgba(20,30,46,.95); border:1px solid rgba(112,130,170,.45); border-radius:8px; color:#e2ecff; padding:13px 14px; font-size:15px; line-height:1.5; transition:border-color .2s ease, box-shadow .2s ease, background .2s ease;}
.contact-form input::placeholder,
.contact-form textarea::placeholder {color:rgba(226,236,255,.7);}
.contact-form input:focus,
.contact-form textarea:focus,
.contact-form select:focus {
  outline:none;
  border-color:rgba(166,194,244,0.75);
  box-shadow:0 0 0 3px rgba(99, 141, 210, 0.18);
  background:rgba(25,37,57,.98);
}
.contact-form .status {min-height:20px; margin-top:2px; font-size:13px; line-height:1.5;}
.contact-form button[type="submit"] {align-self:flex-start; min-width:180px;}

.contact-form-note,
.contact-form-intro {
  margin:0;
  color:#c1d0ea;
  font-size:13px;
  line-height:1.6;
}

.form-actions {
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  justify-content:flex-start;
  gap:14px;
}

.contact-form-card {
  max-width:none;
  margin:0;
  text-align:left;
}

.contact-layout-shell {
  display: grid;
  grid-template-columns: minmax(260px, 0.95fr) minmax(0, 1.35fr);
  gap: 20px;
  align-items: stretch;
}

.contact-intro-panel {
  padding: 34px 30px;
  border-radius: 18px;
  border: 1px solid rgba(112, 154, 204, 0.34);
  background:
    radial-gradient(circle at 14% 8%, rgba(91, 183, 234, 0.2), transparent 38%),
    linear-gradient(180deg, rgba(15, 31, 49, 0.95), rgba(12, 24, 39, 0.9));
  box-shadow: 0 20px 42px rgba(3, 10, 20, 0.34);
}

.contact-eyebrow {
  margin: 0 0 12px;
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  color: #9dc2e8;
}

.contact-intro-panel h2 {
  margin: 0 0 12px;
  font-size: clamp(28px, 2.8vw, 36px);
  line-height: 1.16;
  color: #edf6ff;
}

.contact-intro-panel .contact-form-intro {
  margin-bottom: 16px;
}

.contact-trust-list {
  margin: 0;
  padding-left: 20px;
  display: grid;
  gap: 10px;
  color: #c4d8ef;
  font-size: 14px;
  line-height: 1.55;
}

.contact-form-shell {
  max-width: none;
  margin: 0;
  min-height: 0;
  padding: 32px 30px;
  border-radius: 18px;
  border: 1px solid rgba(112, 154, 204, 0.34);
  background: linear-gradient(180deg, rgba(18, 35, 57, 0.9), rgba(13, 26, 43, 0.86));
  box-shadow: 0 20px 42px rgba(3, 10, 20, 0.34);
}

.contact-form-shell .contact-section-heading {
  text-align:left;
  margin-bottom:18px;
}

.contact-form-shell .contact-section-heading h3 {
  margin: 0 0 8px;
  font-size: clamp(24px, 2.4vw, 30px);
  line-height: 1.2;
  color: #edf6ff;
}

.contact-form-shell .contact-section-heading p {
  margin: 0;
  max-width: 62ch;
  color: #c1d0ea;
  font-size: 14px;
  line-height: 1.6;
}

.contact-field-row {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 14px;
}

.contact-schedule-cta {
  margin-top: 22px;
  width: 100%;
  justify-content: center;
  background: rgba(26, 48, 73, 0.92);
  border-color: rgba(123, 170, 220, 0.5);
  color: #dbebff;
}

.contact-schedule-cta:hover,
.contact-schedule-cta:focus {
  background: rgba(34, 67, 105, 0.94);
  color: #f0f7ff;
}

.contact-form select {
  appearance: none;
  background-image: linear-gradient(45deg, transparent 50%, rgba(226,236,255,.8) 50%), linear-gradient(135deg, rgba(226,236,255,.8) 50%, transparent 50%);
  background-position: calc(100% - 18px) calc(50% - 3px), calc(100% - 12px) calc(50% - 3px);
  background-size: 6px 6px, 6px 6px;
  background-repeat: no-repeat;
  padding-right: 36px;
}

.contact-form select option {color:#0e1420;}

.feedback-page {
  background:
    radial-gradient(circle at top left, rgba(89,148,217,0.34), transparent 34%),
    radial-gradient(circle at 85% 15%, rgba(126,211,255,0.2), transparent 30%),
    linear-gradient(180deg, #122338 0%, #1a3048 50%, #13253a 100%);
}

.feedback-shell {width:min(1180px,94%); margin:0 auto; padding:120px 0 72px;}

.feedback-hero {
  display:grid;
  grid-template-columns:minmax(0,1.35fr) minmax(300px,0.85fr);
  gap:26px;
  align-items:stretch;
}

.feedback-hero-copy,
.feedback-proof,
.feedback-panel {
  background:rgba(28,45,66,0.72);
  border:1px solid rgba(136,175,211,0.28);
  border-radius:22px;
  box-shadow: 0 18px 48px rgba(0,0,0,0.26);
}

.feedback-hero-copy {padding:34px;}

.feedback-eyebrow {
  display:inline-flex;
  margin-bottom:18px;
  padding:8px 14px;
  border-radius:999px;
  border:1px solid rgba(150,181,234,0.36);
  background:rgba(48,71,110,0.34);
  font-size:12px;
  font-weight:700;
  letter-spacing:.18em;
  text-transform:uppercase;
  color:#d8e7ff;
}

.feedback-hero-copy h1 {
  margin:0 0 16px;
  font-size:clamp(32px,4.4vw,58px);
  line-height:1.02;
  color:#edf4ff;
}

.feedback-hero-copy > p,
.feedback-panel-header p,
.feedback-proof li,
.feedback-form-note {color:#c1d0ea;}

.feedback-hero-copy > p {max-width:62ch; font-size:17px; line-height:1.72;}

.feedback-highlights {
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:14px;
  margin-top:28px;
}

.feedback-highlight {
  padding:18px 16px;
  border-radius:16px;
  border:1px solid rgba(119,139,174,0.22);
  background:linear-gradient(180deg, rgba(20,31,48,0.94), rgba(15,24,38,0.88));
}

.feedback-highlight strong,
.feedback-proof-label,
.feedback-panel-header h2,
.feedback-form label span,
.feedback-rating-group legend {color:#ecf4ff;}

.feedback-highlight strong {display:block; margin-bottom:8px; font-size:15px;}

.feedback-highlight span,
.feedback-proof-note span {font-size:13px; line-height:1.6; color:#bfd0ec;}

.feedback-proof {
  padding:30px 26px;
  display:flex;
  flex-direction:column;
  justify-content:flex-start;
}

.feedback-proof-label {
  display:block;
  margin-bottom:12px;
  font-size:14px;
  font-weight:700;
  letter-spacing:.08em;
  text-transform:uppercase;
}

.feedback-proof ul {margin:0; padding-left:20px;}

.feedback-proof li {margin-bottom:12px; line-height:1.6;}

.feedback-proof-note {
  margin-top:18px;
  padding:16px;
  border-radius:16px;
  border:1px solid rgba(151,177,221,0.22);
  background:rgba(17,29,46,0.85);
}

.feedback-proof-note strong {display:block; margin-bottom:6px; color:#f3f7ff;}

.feedback-panel {margin-top:26px; padding:34px;}

.feedback-panel-header {margin-bottom:24px;}

.feedback-panel-header h2 {margin:0 0 10px; font-size:clamp(28px,3.2vw,38px);}

.feedback-form {gap:18px;}

.feedback-grid {
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:16px;
}

.feedback-form label {display:flex; flex-direction:column; gap:8px;}

.feedback-form label span,
.feedback-rating-group legend {
  font-size:13px;
  font-weight:700;
  letter-spacing:.04em;
  text-transform:uppercase;
}

.feedback-form textarea {min-height:130px; resize:vertical;}

.feedback-rating-group {margin:0; padding:0; border:0;}

.rating-options {
  display:grid;
  grid-template-columns:repeat(5,minmax(0,1fr));
  gap:10px;
  margin-top:10px;
}

.rating-option {position:relative;}

.rating-option input {position:absolute; opacity:0; inset:0;}

.rating-option span {
  display:flex;
  align-items:center;
  justify-content:center;
  min-height:54px;
  padding:12px;
  border-radius:14px;
  border:1px solid rgba(120,145,188,0.34);
  background:rgba(17,29,46,0.9);
  color:#d7e5fb;
  font-size:13px;
  font-weight:600;
  text-align:center;
  transition:border-color .2s ease, transform .2s ease, background .2s ease;
}

.rating-option input:checked + span,
.rating-option input:focus-visible + span {
  border-color:rgba(173,205,255,0.94);
  background:linear-gradient(180deg, rgba(69,104,160,0.78), rgba(35,58,98,0.92));
  transform:translateY(-2px);
}

.feedback-consent {flex-direction:row; align-items:center; gap:10px; color:#d7e4fa;}

.feedback-consent input {width:18px; height:18px; margin:0;}

.feedback-actions {
  display:flex;
  flex-wrap:wrap;
  gap:14px;
  align-items:center;
  justify-content:space-between;
}

.feedback-form-note {margin:0; font-size:13px; max-width:52ch; line-height:1.5;}

.feedback-config-status,
.contact-config-status,
.feedback-feed-status {
  min-height: 22px;
  font-size: 14px;
  color: #bfd0ec;
}

.feedback-config-status.is-warning,
.contact-config-status.is-warning,
.feedback-feed-status.is-error {
  color: #ffd59a;
}

.feedback-config-status.is-ready,
.contact-config-status.is-ready {
  color: #a5f3c8;
}

.feedback-status {min-height:22px; font-size:14px;}
.feedback-status.is-success {color:#a5f3c8;}
.feedback-status.is-error {color:#ff9cad;}

.feedback-honeypot {position:absolute; left:-9999px;}

.feedback-feed-section {
  margin-top: 26px;
  padding: 34px;
  background: rgba(28,45,66,0.72);
  border: 1px solid rgba(136,175,211,0.28);
  border-radius: 22px;
  box-shadow: 0 18px 48px rgba(0,0,0,0.26);
}

.feedback-feed-header {
  display: flex;
  justify-content: space-between;
  gap: 18px;
  align-items: flex-end;
  margin-bottom: 20px;
}

.feedback-feed-header h2 {
  margin: 0;
  font-size: clamp(28px, 3vw, 36px);
  color: #edf4ff;
}

.feedback-feed-header p {
  margin: 0;
  max-width: 48ch;
  line-height: 1.6;
  color: #c1d0ea;
}

.feedback-feed-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 16px;
  margin-top: 18px;
}

.feedback-entry-card,
.feedback-feed-empty {
  padding: 20px 18px;
  border-radius: 18px;
  border: 1px solid rgba(119,139,174,0.24);
  background: linear-gradient(180deg, rgba(20,31,48,0.94), rgba(14,22,35,0.92));
  box-shadow: 0 12px 28px rgba(0,0,0,0.24);
}

.feedback-feed-empty {
  grid-column: 1 / -1;
  color: #c1d0ea;
}

.feedback-entry-meta,
.feedback-entry-footer {
  display: flex;
  justify-content: space-between;
  gap: 12px;
}

.feedback-entry-meta {
  margin-bottom: 14px;
  font-size: 12px;
  text-transform: uppercase;
  letter-spacing: .08em;
  color: #8fb4ef;
}

.feedback-entry-copy {
  margin: 0 0 16px;
  color: #edf4ff;
  line-height: 1.7;
  font-size: 15px;
}

.feedback-entry-footer {
  align-items: flex-end;
}

.feedback-entry-footer strong {
  display: block;
  color: #edf4ff;
}

.feedback-entry-footer span {
  color: #bfd0ec;
  font-size: 13px;
  text-align: right;
}

.admin-shell {padding-bottom: 72px;}

.admin-hero {
  display: grid;
  grid-template-columns: minmax(0, 1.3fr) minmax(280px, 0.7fr);
  gap: 26px;
}

.admin-panel,
.admin-data-panel {
  margin-top: 26px;
  padding: 34px;
  background: rgba(28,45,66,0.72);
  border: 1px solid rgba(136,175,211,0.28);
  border-radius: 22px;
  box-shadow: 0 18px 48px rgba(0,0,0,0.26);
}

.admin-panel-header,
.admin-data-header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 18px;
}

.admin-panel-header h2,
.admin-data-header h2 {
  margin: 0;
  color: #edf4ff;
  font-size: clamp(28px, 3vw, 36px);
}

.admin-signout {white-space: nowrap;}

.admin-dashboard[hidden] {display: none !important;}

.admin-summary-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 16px;
  margin-top: 26px;
}

.admin-summary-card {
  padding: 22px 20px;
  border-radius: 18px;
  background: linear-gradient(180deg, rgba(20,31,48,0.94), rgba(14,22,35,0.92));
  border: 1px solid rgba(119,139,174,0.24);
  box-shadow: 0 12px 28px rgba(0,0,0,0.24);
}

.admin-summary-label,
.admin-summary-meta,
.admin-inline-note,
.admin-record-subtitle,
.admin-record-meta span {color: #bfd0ec;}

.admin-summary-label {
  display: block;
  font-size: 12px;
  font-weight: 700;
  letter-spacing: .12em;
  text-transform: uppercase;
}

.admin-summary-card strong {
  display: block;
  margin: 12px 0 8px;
  color: #edf4ff;
  font-size: clamp(30px, 4vw, 46px);
  line-height: 1;
}

.admin-summary-meta {font-size: 13px;}

.admin-sections-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 20px;
}

.admin-record-list {
  display: grid;
  gap: 16px;
  margin-top: 18px;
}

.admin-record-card {
  padding: 20px 18px;
  border-radius: 18px;
  border: 1px solid rgba(119,139,174,0.24);
  background: linear-gradient(180deg, rgba(20,31,48,0.94), rgba(14,22,35,0.92));
  box-shadow: 0 12px 28px rgba(0,0,0,0.24);
}

.admin-record-top,
.admin-record-meta,
.admin-record-actions,
.admin-badges {
  display: flex;
  gap: 12px;
}

.admin-record-top,
.admin-record-actions {
  justify-content: space-between;
  align-items: flex-start;
}

.admin-badges,
.admin-record-meta {
  flex-wrap: wrap;
}

.admin-record-title {
  margin: 0;
  color: #edf4ff;
  font-size: 18px;
  font-weight: 700;
}

.admin-record-subtitle {
  margin: 6px 0 0;
  font-size: 13px;
}

.admin-badge {
  display: inline-flex;
  align-items: center;
  min-height: 32px;
  padding: 0 12px;
  border-radius: 999px;
  border: 1px solid rgba(120,145,188,0.34);
  color: #d7e5fb;
  font-size: 12px;
  font-weight: 700;
  background: rgba(17,29,46,0.9);
}

.admin-badge.is-approved {
  background: rgba(29, 84, 63, 0.7);
  border-color: rgba(107, 213, 165, 0.44);
}

.admin-badge.is-pending {
  background: rgba(110, 81, 20, 0.7);
  border-color: rgba(231, 194, 113, 0.44);
}

.admin-record-copy {
  margin: 16px 0 0;
  color: #edf4ff;
  line-height: 1.7;
}

.admin-record-meta {
  margin-top: 16px;
  font-size: 13px;
}

.admin-record-actions {
  margin-top: 18px;
}

.admin-toggle-btn {
  padding: 10px 14px;
  border-radius: 12px;
  border: 1px solid rgba(125,160,230,0.55);
  background: var(--accent);
  color: #fff;
  font-size: 13px;
  font-weight: 700;
  transition: transform .2s ease, background .2s ease;
}

.admin-toggle-btn:hover:not(:disabled) {
  background: var(--accent-2);
  transform: translateY(-1px);
}

.admin-toggle-btn:disabled {
  cursor: not-allowed;
  opacity: .55;
}

.admin-toggle-btn.is-live {
  background: rgba(29, 84, 63, 0.82);
  border-color: rgba(107, 213, 165, 0.44);
}

.clients .client-grid {display:grid; grid-template-columns:repeat(auto-fit,minmax(230px,1fr)); gap:24px; align-items:stretch; margin:24px 0 0; max-width:none;}
.client-logo {
  padding:26px;
  border:1px solid rgba(96, 147, 216, 0.32);
  border-radius:14px;
  background:rgba(12, 27, 52, 0.81);
  color:#c8defe;
  font-size:16px;
  font-weight:700;
  line-height:1.45;
  text-align:left;
  box-shadow:0 16px 44px rgba(0,0,0,0.42);
  transition: transform .34s ease, box-shadow .34s ease;
}

.client-logo:hover {
  transform: translateY(-6px);
  box-shadow:0 24px 68px rgba(0,0,0,0.42);
}

/* Footer */
footer {padding:70px 0 90px; position:relative; overflow:hidden;}
footer::before {content:''; position:absolute; left:0; right:0; bottom:-12px; height:48px; background: radial-gradient(circle at 50% 0%, rgba(60,120,255,0.4), transparent 65%); transform: translateY(10px); opacity:.9; pointer-events:none; z-index:0;}
footer::after {content:''; position:absolute; left:0; right:0; bottom:0; height:18px; background: linear-gradient(180deg, rgba(14,20,32,0), rgba(14,20,32,0.95) 65%, rgba(14,20,32,1)); pointer-events:none; z-index:0;}
.footer-grid {display:grid; grid-template-columns:repeat(auto-fit,minmax(220px,1fr)); gap:18px; margin-bottom:16px; position:relative; z-index:2;}
.footer-grid h3 {margin-bottom:8px; font-size:15px;}
.footer-grid p {margin:.2rem 0; color:#b4c7e8;}
.footer-bottom {opacity:.75; font-size:13px; position:relative; z-index:2; margin-top:34px; padding-top:14px; text-align:center;}
.footer-tagline {margin-top:8px; opacity:.88; color:#b4c7e8; font-size:13px;}
.footer-signature {margin:10px auto 0; max-width:420px; padding:10px 14px; border:1px solid rgba(112,150,210,0.34); border-radius:12px; background:rgba(15,30,49,0.45);}
.footer-signature p {margin:0;}
.footer-signature-label {font-size:11px; text-transform:uppercase; letter-spacing:.12em; color:#9ec6ec; opacity:.9;}
.footer-signature-name {margin-top:4px; font-size:16px; font-weight:700; color:#dbeeff; letter-spacing:.01em;}
.footer-signature-role {margin-top:3px; font-size:12px; color:#b7cee8;}
.home-page footer {padding:52px 0 58px;}
.home-page .footer-bottom {margin-top:14px; padding-top:8px;}
.home-page .footer-social {margin:6px 0 12px;}
.footer-tech {position:absolute; left:0; right:0; bottom:20px; height:7px; display:flex; justify-content:space-around; align-items:center; gap:30px; z-index:1;}
.footer-tech span {display:block; width:10px; height:2px; background:rgba(118, 187, 255, 0.9); border-radius:2px; transform-origin:left center; animation:tech-line 2s linear infinite;}
.footer-tech span:nth-child(1){animation-delay:0s; width:8px;}
.footer-tech span:nth-child(2){animation-delay:.16s; width:14px;}
.footer-tech span:nth-child(3){animation-delay:.34s; width:10px;}
.footer-tech span:nth-child(4){animation-delay:.46s; width:18px;}
.footer-tech span:nth-child(5){animation-delay:.62s; width:12px;}

.footer-tech::before, .footer-tech::after {content:''; position:absolute; height:2px; width:68%; left:50%; transform:translateX(-50%); background: linear-gradient(90deg, rgba(103, 161, 251, 0) 0%, rgba(103, 161, 251, 0.5) 45%, rgba(103, 161, 251, 0.4) 55%, rgba(103, 161, 251,0) 100%);}
.footer-tech::before {bottom: 8px;}
.footer-tech::after {bottom: -6px; opacity:.7;}

.footer-packets {position:absolute; left:10%; right:10%; bottom: 48px; height: 6px; border-radius: 3px; z-index:1; overflow:hidden;}
.footer-packets .packet {position:absolute; bottom: 0; width: 14px; height: 3px; background: rgba(112, 196, 255, 0.7); border-radius: 2px; opacity: 0.65; transform: translateX(-100%); animation: packet-run 5.2s linear infinite;}
.footer-packets .packet::after {content:''; position:absolute; right:-8px; top:50%; width:6px; height:6px; border-radius:50%; background:white; box-shadow:0 0 8px rgba(198, 246, 255,0.7); transform:translateY(-50%) scale(0.8); opacity:0.58; animation: packet-dot 5.2s linear infinite;}

.footer-packets .packet:nth-child(1){animation-delay:0s; height:2px; background: rgba(74, 237, 148, 0.94);}
.footer-packets .packet:nth-child(1)::after {background:rgba(120, 255, 192, 0.95);}
.footer-packets .packet:nth-child(2){animation-delay:0.6s; height:3px; background: rgba(255, 195, 79, 0.95);}
.footer-packets .packet:nth-child(2)::after {background:rgba(255, 220, 141, 0.95);}
.footer-packets .packet:nth-child(3){animation-delay:1.3s; height:2px; background: rgba(255, 90, 101, 0.88);}
.footer-packets .packet:nth-child(3)::after {background:rgba(255, 146, 163, 0.9);}

@keyframes packet-run {
  0% {transform: translateX(-15px); opacity:.05;}
  10% {opacity:.9;}
  50% {transform: translateX(100%); opacity:.9;}
  90% {opacity:.2;}
  100% {transform: translateX(110%); opacity:0;}
}

@keyframes packet-dot {
  0% {transform:translateY(-50%) scale(0.7); opacity:0.2;}
  18% {transform:translateY(-50%) scale(1.1); opacity:1;}
  50% {transform:translateY(-50%) scale(0.8); opacity:1;}
  100% {transform:translateY(-50%) scale(0.5); opacity:0;}
}

.earth-3d {position:absolute; left:50%; bottom:10px; transform:translateX(-50%) scale(1.08); width:120px; height:120px; perspective: 320px; z-index:0; opacity:0.35;}
.globe {width:100%; height:100%; border-radius:50%; background: radial-gradient(circle at 25% 20%, rgba(78,180,255,0.4), rgba(7,22,47,0.6) 55%, rgba(8,16,34,0.95)); box-shadow: inset 0 0 16px rgba(64,183,255,0.25), 0 0 28px rgba(49,146,227,0.55); transform-style: preserve-3d; animation: globe-spin 12s linear infinite; position:relative;
  border: 1px solid rgba(95, 145, 220, 0.52);
  overflow:hidden;
}
.globe::before {content:''; position:absolute; inset:0; border-radius:50%; background: radial-gradient(circle at 50% 35%, rgba(152, 221, 255, 0.28), transparent 52%); mix-blend-mode: screen;}
.globe::after {content:''; position:absolute; inset:0; border-radius:50%; background-image: linear-gradient(90deg, rgba(255,255,255,0.04) 2px, transparent 2px), linear-gradient(180deg, rgba(255,255,255,0.04) 2px, transparent 2px); background-size: 22px 22px; opacity:.8; transform: scale(1.04);}
.globe-ring {position:absolute; inset:-10px; border-radius:50%; border: 1px dotted rgba(160, 210, 255,0.5); box-shadow:0 0 18px rgba(61,154,243,0.32); transform: rotateX(70deg) rotate(10deg);}

.globe-network {content:''; position:absolute; inset:18px; border-radius:50%; background: radial-gradient(circle at 35% 20%, rgba(95,185,255,0.23), transparent 45%), radial-gradient(circle at 65% 75%, rgba(184,240,255,0.18), transparent 48%); mix-blend-mode:screen;}
@keyframes globe-spin {from {transform: rotateY(0deg);} to {transform: rotateY(360deg);} }

/* Canvas overlay */
#network {position:absolute; inset:0; width:100%; height:100%; z-index:1; opacity:.12; pointer-events:none;}

#globe3d-wrapper {position:relative; width:100%; max-width:220px; height:220px; margin: 28px auto 24px; z-index:2;}
#globe3d-wrapper canvas {border-radius:50%; box-shadow:0 12px 24px rgba(0,0,0,0.35);}
.home-page #globe3d-wrapper {max-width:170px; height:170px; margin:16px auto 14px;}

/* Animations */
@keyframes spin {to{transform:rotate(360deg);}}
@keyframes spin-reverse {to{transform:rotate(-360deg);}}
@keyframes float {0%,100%{transform:translate(-50%,0);}50%{transform:translate(-50%,-8px);}}
@keyframes dot-pulse {0%,100%{transform: scale(0.92); opacity:0.35;} 40%, 70% {transform: scale(1.12); opacity:0.7;}}
@keyframes line-scan {0% {transform: translateX(-6px); opacity:.12;} 50% {transform: translateX(6px); opacity:.45;} 100% {transform: translateX(-6px); opacity:.12;}}
@keyframes services-glow {0%,100% {opacity:0.3;} 50% {opacity:0.6;}}
@keyframes contact-wave {0%,100% {transform: translateX(0) scale(1);} 50% {transform: translateX(10px) scale(1.02);}}
@keyframes packet-transfer {0% {transform: translateX(-24%); opacity:0;} 10% {opacity:0.45;} 90% {opacity:0.45;} 100% {transform: translateX(124%); opacity:0;}}

/* misc fixes */
.hero, .mission, .services, .clients, footer {overflow:hidden;}

@media (max-width: 900px) {
  .container, .mission, .services, .clients, footer {width:94%;}
  .site-header {backdrop-filter:blur(8px);}
  .site-header .container {padding:10px 0; gap:8px; align-items:flex-start; flex-wrap:wrap;}
  .nav-toggle {display:inline-flex; align-items:center; justify-content:center; margin-left:auto;}
  .nav {display:none; width:100%; gap:8px; flex-direction:column; align-items:stretch; margin-top:8px; padding:12px; border:1px solid rgba(119,139,174,0.24); border-radius:16px; background:rgba(10,18,30,0.96); box-shadow:0 18px 40px rgba(0,0,0,0.3);}
  .nav.is-open, .site-header .container.menu-open .nav {display:flex;}
  .nav a {font-size:13px; padding:12px 14px; border:1px solid rgba(119,139,174,0.3); border-radius:10px; background:rgba(22,33,52,0.62); text-align:center;}
  .hero {padding:120px 14px 92px; min-height:calc(76vh - 56px);}
  .hero-content {text-align:center;}
  .hero-buttons {justify-content:center;}
  .footer-grid {grid-template-columns:1fr;}
  .hero-logo {width:min(460px, 82vw);}
  .hero-accents, .footer-tech, .footer-packets {display:none;}
  #globe3d-wrapper {height:150px; max-width:150px; margin:18px auto 18px;}
  .clients .client-grid {grid-template-columns:1fr; max-width:520px;}
  .contact-feedback-layout {grid-template-columns:1fr; justify-items:center;}
  .form-column, .feedback-column {max-width:720px; min-height:0;}
  .contact-layout-shell {grid-template-columns:1fr; gap:16px;}
  .contact-intro-panel,
  .contact-form-shell {padding:24px 20px;}
  .contact-field-row {grid-template-columns:1fr; gap:12px;}
  .capability-grid {grid-template-columns:repeat(2,minmax(0,1fr));}
  .feedback-shell {padding-top:104px;}
  .feedback-hero {grid-template-columns:1fr;}
  .admin-hero {grid-template-columns:1fr;}
  .feedback-highlights {grid-template-columns:1fr;}
  .feedback-panel {padding:24px 20px;}
  .feedback-hero-copy {padding:26px 22px;}
  .feedback-grid {grid-template-columns:1fr;}
  .rating-options {grid-template-columns:repeat(2,minmax(0,1fr));}
  .feedback-actions {align-items:flex-start; flex-direction:column;}
  .contact-form, .feedback-form {gap:16px;}
  .contact-form label span, .feedback-form label span, .feedback-rating-group legend {font-size:12px; letter-spacing:.03em; text-transform:none;}
  .contact-form input, .contact-form textarea, .contact-form select {min-height:50px; padding:14px 15px; font-size:16px; border-radius:12px;}
  .contact-form textarea, .feedback-form textarea {min-height:160px;}
  .feedback-panel-header p, .contact-form-intro, .feedback-form-note {max-width:none; font-size:14px; line-height:1.6;}
  .feedback-consent {align-items:flex-start; gap:12px;}
  .feedback-consent input {width:20px; height:20px; margin-top:2px;}
  .feedback-actions .cta, .form-actions .cta, .contact-form button[type="submit"] {width:100%; justify-content:center; min-height:50px;}
  .feedback-feed-section {padding:24px 20px;}
  .feedback-feed-header {flex-direction:column; align-items:flex-start;}
  .feedback-feed-grid {grid-template-columns:repeat(2,minmax(0,1fr));}
  .admin-panel, .admin-data-panel {padding:24px 20px;}
  .admin-summary-grid, .admin-sections-grid {grid-template-columns:1fr;}
  .admin-panel-header, .admin-data-header, .admin-record-top, .admin-record-actions {flex-direction:column; align-items:flex-start;}
  .form-actions {align-items:flex-start; flex-direction:column;}
  .contact-form button[type="submit"] {width:100%; justify-content:center;}

  .about-profile {
    grid-template-columns: 1fr;
    text-align: center;
  }

  .about-profile-photo {
    margin: 0 auto;
  }

  .page-main,
  .about-main {
    width: 94%;
    margin-top: 82px;
  }

  .site-page:not(.home-page) .services,
  .site-page:not(.home-page) .clients,
  .site-page:not(.home-page) .contact-section {
    padding-top: 40px;
  }

  .about-page .about-main {
    width: 94%;
    margin-top: 84px;
    padding-bottom: 34px;
  }

  .about-page .services,
  .about-page .clients {
    padding: 20px 16px 18px;
    margin-top: 16px;
    border-radius: 6px;
  }

  .about-page .services-grid,
  .about-page .client-grid {
    grid-template-columns: 1fr;
  }

  .about-page #what-we-do-section .services-grid {
    margin-top: 20px;
  }

  .about-page #what-we-do-section .services-grid-secondary,
  .about-page #what-we-do-section .timeline-detail {
    margin-top: 24px;
  }

  .about-page #what-we-do-section .services-separate-group {
    margin-top: 40px;
    padding-top: 20px;
  }

  .about-page #what-we-do-section .card {
    padding: 20px 16px;
  }

  .about-page .about-profile {
    grid-template-columns: 1fr;
    text-align: center;
  }

  .about-page .about-profile-photo {
    margin: 0 auto;
  }

  .about-page .about-profile-copy p {
    margin-left: auto;
    margin-right: auto;
  }

  .about-ciso-inspired {
    width: 94%;
    margin-top: 84px;
    padding-bottom: 34px;
  }

  .about-ciso-inspired .about-mission,
  .about-ciso-inspired .about-difference,
  .about-ciso-inspired .services,
  .about-ciso-inspired .clients {
    padding: 20px 16px 18px;
    margin-top: 16px;
  }

  .about-ciso-inspired .about-mission-grid,
  .about-ciso-inspired .about-difference .services-grid,
  .about-ciso-inspired .services-grid,
  .about-ciso-inspired .client-grid {
    grid-template-columns: 1fr;
  }

  .about-ciso-inspired .about-profile {
    grid-template-columns: 1fr;
    text-align: center;
  }

  .about-ciso-inspired .about-profile-photo {
    margin: 0 auto;
  }

  .about-ciso-inspired .about-focus-panel h2,
  .about-ciso-inspired .about-profile-copy h2 {
    font-size: 24px;
  }
}

@media (max-width: 550px) {
  .hero {padding:114px 10px 78px; min-height:58vh;}
  .hero-content h1 {font-size:24px;}
  .hero-content .subtitle {font-size:14px;}
  .hero-logo {width:min(340px, 78vw); margin-bottom:14px;}
  .site-header .container {padding:8px 0;}
  .nav {gap:6px;}
  .nav a {font-size:12px; padding:9px 10px;}
  .stats {padding:56px 0 42px;}
  .stats-grid {grid-template-columns:1fr; gap:12px; margin-top:20px;}
  .stat-card {padding:18px 14px;}
  .stats-credentials {gap:8px;}
  .credential-chip {font-size:11px; padding:7px 10px;}
  .capability-grid {gap:10px;}
  .testimonial-card {padding:18px 16px;}
  .cta {font-size:12px; padding:10px 18px;}
  .mission,.services,.clients {padding:60px 0;}
  .card {padding:16px;}
  .spinning-globe {width:44px;height:44px;bottom:6px;}
  #network {display:none;}
  .contact-feedback-layout {grid-template-columns:1fr;}
  .form-column {justify-self:stretch; max-width:none;}
  .capability-grid {grid-template-columns:1fr;}
  .feedback-shell {padding-top:96px; padding-bottom:54px;}
  .feedback-hero-copy h1 {font-size:30px;}
  .feedback-hero-copy > p {font-size:15px;}
  .feedback-panel, .feedback-proof, .feedback-hero-copy {padding:20px 16px;}
  .contact-section {padding:64px 0 52px;}
  .contact-form-card .contact-section-heading {margin-bottom:18px;}
  .contact-form-shell {padding:22px 16px; border-radius:14px;}
  .contact-intro-panel {padding:22px 16px; border-radius:14px;}
  .contact-intro-panel h2 {font-size: clamp(24px, 7vw, 30px);}
  .contact-form .status, .feedback-status, .feedback-config-status, .contact-config-status {font-size:13px; line-height:1.5;}
  .rating-options {grid-template-columns:1fr;}
  .rating-option span {min-height:48px; padding:10px 12px; font-size:14px;}
  .feedback-actions, .form-actions {gap:10px;}
  .feedback-feed-section {padding:20px 16px;}
  .feedback-feed-grid {grid-template-columns:1fr;}
  .feedback-entry-meta, .feedback-entry-footer {flex-direction:column; align-items:flex-start;}
  .feedback-entry-footer span {text-align:left;}
  .admin-panel, .admin-data-panel {padding:20px 16px;}
  .admin-badges, .admin-record-meta {flex-direction:column; align-items:flex-start;}

  .services > h2,
  .clients > h2,
  .timeline h2,
  .contact-section h2,
  .feedback-hero-copy h1,
  .feedback-panel-header h2,
  .admin-panel-header h2,
  .admin-data-header h2 {
    font-size: clamp(24px, 7vw, 32px);
    line-height: 1.22;
  }

  .services > p,
  .clients > p,
  .timeline > p,
  .timeline-detail p,
  .contact-form-intro,
  .feedback-hero-copy > p,
  .feedback-feed-header p,
  .card p,
  .client-logo,
  .feedback-entry-copy {
    font-size: 15px;
    line-height: 1.55;
  }

  .timeline-detail {
    text-align: left;
    padding-inline: 2px;
  }
}

@media (max-width: 460px) {
  .feedback-shell {padding-top:90px; padding-bottom:42px;}
  .contact-section {padding:52px 0 40px;}
  .contact-form-card .contact-section-heading {margin-bottom:14px;}
  .contact-form-card .contact-section-heading p {margin-bottom:14px; font-size:14px; line-height:1.5;}
  .form-column, .feedback-column {padding:18px 14px; border-radius:12px;}
  .contact-form-shell {padding:18px 14px;}
  .contact-intro-panel {padding:18px 14px;}
  .feedback-panel, .feedback-proof, .feedback-hero-copy, .admin-panel, .admin-data-panel {padding:16px 12px; border-radius:16px;}
  .feedback-panel {margin-top:18px;}
  .feedback-panel-header {margin-bottom:14px;}
  .feedback-panel-header h2, .contact-section h2 {margin-bottom:6px;}
  .feedback-form, .contact-form {gap:12px;}
  .feedback-grid {gap:12px;}
  .contact-form input, .contact-form textarea, .contact-form select {padding:12px 13px; min-height:46px;}
  .contact-form textarea, .feedback-form textarea {min-height:138px;}
  .feedback-actions, .form-actions {gap:8px;}
  .feedback-feed-section {padding:16px 12px; margin-top:18px;}
}

/* Debug overlay for alignment troubleshooting */
body.debug * {
  outline: 1px dashed rgba(255, 128, 0, 0.55);
}
body.debug .container, body.debug .mission, body.debug .services, body.debug .clients, body.debug footer {
  background: rgba(0, 102, 255, 0.08);
}

#scrollTopBtn {
  position: fixed;
  right: 18px;
  bottom: 18px;
  width: 44px;
  height: 44px;
  border-radius: 999px;
  border: 1px solid rgba(255, 255, 255, 0.18);
  background: rgba(31, 42, 70, 0.85);
  color: #eef7ff;
  display: flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  box-shadow: 0 14px 28px rgba(0, 0, 0, 0.35);
  opacity: 0;
  visibility: hidden;
  transform: translateY(12px);
  transition: opacity .24s ease, transform .24s ease, visibility .24s;
  z-index: 999;
}

#scrollTopBtn.visible {
  opacity: 1;
  visibility: visible;
  transform: translateY(0);
}

#scrollTopBtn:hover {
  transform: translateY(-2px);
}

/* Sitewide visual refresh */
:root {
  --surface-1: rgba(20, 30, 43, 0.92);
  --surface-2: rgba(25, 38, 54, 0.96);
  --line-soft: rgba(146, 163, 182, 0.18);
  --text-soft: #c1d0de;
  --text-heading-soft: #eef4fa;
  --accent-vivid: #67a6d9;
  --accent-vivid-2: #4f86b6;
  --accent-warm: #d6b277;
}

body {
  background:
    radial-gradient(circle at 10% -10%, rgba(103, 166, 217, 0.12), transparent 34%),
    radial-gradient(circle at 88% 0%, rgba(214, 178, 119, 0.08), transparent 26%),
    linear-gradient(180deg, #101824 0%, #14202d 46%, #111925 100%);
}

.site-header {
  background: rgba(15, 35, 56, 0.78);
  border-bottom-color: rgba(141, 160, 182, 0.18);
  backdrop-filter: blur(14px);
  box-shadow: 0 14px 30px rgba(4, 10, 18, 0.18);
}

.site-header::after {
  content: '';
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0;
  height: 1px;
  background: linear-gradient(90deg, rgba(0,0,0,0), rgba(103, 166, 217, 0.28), rgba(214, 178, 119, 0.2), rgba(0,0,0,0));
  pointer-events: none;
}

.site-header .container {
  padding: 11px 0;
  position: relative;
}

.nav {
  padding: 6px;
  border: 1px solid rgba(146, 163, 182, 0.12);
  border-radius: 999px;
  background: rgba(255, 255, 255, 0.04);
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.04);
}

.nav a {
  padding: 9px 16px;
  border-radius: 999px;
  border: 1px solid transparent;
  background: transparent;
  letter-spacing: 0.01em;
  color: #e7eef6;
}

.nav a:hover,
.nav a:focus {
  background: rgba(103, 166, 217, 0.1);
  border-color: rgba(103, 166, 217, 0.18);
  color: #f3f7fb;
}

.hero,
.services,
.clients,
.contact-section,
.feedback-panel,
.feedback-proof,
.feedback-feed-section,
.admin-panel,
.admin-data-panel {
  border-radius: 18px;
}

.services,
.clients,
.contact-section {
  background: linear-gradient(180deg, var(--surface-2), var(--surface-1));
  border: 1px solid var(--line-soft);
  box-shadow: 0 14px 28px rgba(2, 8, 16, 0.18);
}

.services > p,
.clients > p,
.timeline > p,
.timeline-detail p,
.card p,
.client-logo,
.contact-form-intro,
.feedback-hero-copy > p,
.feedback-feed-header p {
  color: var(--text-soft);
}

.card,
.client-logo,
.feedback-entry-card,
.admin-summary-card,
.admin-record-card {
  background: linear-gradient(180deg, rgba(25, 37, 51, 0.95), rgba(19, 29, 41, 0.95));
  border-color: rgba(132, 150, 172, 0.24);
  box-shadow: 0 10px 22px rgba(0, 0, 0, 0.2);
}

.card::after {
  background: linear-gradient(135deg, rgba(103, 166, 217, 0.08), rgba(214, 178, 119, 0.03) 42%, rgba(25, 48, 89, 0.01));
  opacity: 0.5;
}

.card h3,
.client-logo,
.feedback-panel-header h2,
.admin-panel-header h2,
.admin-data-header h2 {
  color: var(--text-heading-soft);
}

.cta {
  background: linear-gradient(180deg, var(--accent-vivid), var(--accent-vivid-2));
  border-color: rgba(151, 180, 208, 0.4);
  box-shadow: 0 10px 22px rgba(19, 44, 70, 0.22);
}

.cta:hover {
  background: linear-gradient(180deg, #75b3e2, #5a92c1);
}

.cta.alt {
  background: linear-gradient(180deg, rgba(255,255,255,0.08), rgba(255,255,255,0.04));
  border-color: rgba(214, 178, 119, 0.18);
  color: #edf3f9;
}

footer {
  padding-top: 60px;
}

.footer-bottom {
  border-top: 1px solid rgba(136, 154, 176, 0.16);
  position: relative;
}

.footer-bottom::before {
  content: '';
  position: absolute;
  top: -1px;
  left: 50%;
  width: min(240px, 48vw);
  height: 1px;
  transform: translateX(-50%);
  background: linear-gradient(90deg, rgba(0,0,0,0), rgba(103, 166, 217, 0.32), rgba(214, 178, 119, 0.22), rgba(0,0,0,0));
}

.hero {
  box-shadow: 0 24px 46px rgba(3, 10, 18, 0.2);
  background-image: linear-gradient(180deg, rgba(15, 26, 38, 0.34), rgba(13, 22, 32, 0.6)), url('../images/datacenter.jpg');
  filter: brightness(0.96) saturate(0.94) contrast(1);
}

.hero::after {
  background:
    radial-gradient(circle at 18% 18%, rgba(103, 166, 217, 0.12), transparent 26%),
    radial-gradient(circle at 82% 16%, rgba(214, 178, 119, 0.08), transparent 24%),
    linear-gradient(180deg, rgba(6, 10, 16, 0.14), rgba(8, 12, 19, 0.34));
}

/* globe, packets and hero accents restored */

.hero-logo {
  opacity: 0.76;
  filter: drop-shadow(0 0 22px rgba(74, 118, 163, 0.18)) saturate(0.96);
}

.hero-content h1,
.card h3 {
  text-shadow: none;
}

.hero-content h1 {
  color: #f3f6f9;
  letter-spacing: -0.03em;
}

.hero-content .subtitle {
  color: #d7e0ea;
  max-width: 68%;
  line-height: 1.58;
}

.underline {
  width: 118px;
  background: linear-gradient(90deg, rgba(103, 166, 217, 0.86), rgba(214, 178, 119, 0.62));
}

.card:hover,
.client-logo:hover,
.stat-card:hover,
.capability-tile:hover {
  transform: translateY(-3px);
  box-shadow: 0 14px 28px rgba(9, 18, 30, 0.18);
}

.testimonial-card,
.feedback-panel,
.feedback-proof,
.feedback-feed-section,
.admin-panel,
.admin-data-panel {
  box-shadow: 0 12px 26px rgba(3, 11, 20, 0.18);
}

.timeline-detail,
.roadmap-track,
.timeline-step,
.stat-card,
.capability-tile,
.testimonial-card,
.contact-intro-panel,
.contact-form-shell,
.feedback-panel,
.feedback-proof,
.feedback-feed-section,
.admin-panel,
.admin-data-panel {
  border-color: rgba(140, 158, 178, 0.22);
}

.contact-intro-panel,
.contact-form-shell {
  background: linear-gradient(180deg, rgba(24, 37, 51, 0.96), rgba(19, 30, 42, 0.95));
}

footer::before {
  opacity: 0.3;
}

#globe3d-wrapper {
  opacity: 1;
}

@media (max-width: 900px) {
  .nav {
    border-radius: 18px;
    padding: 12px;
    background: rgba(12, 20, 29, 0.94);
    border-color: rgba(141, 160, 182, 0.16);
    box-shadow: 0 18px 34px rgba(3, 10, 18, 0.22);
  }

  .nav a {
    background: rgba(255, 255, 255, 0.03);
    border-radius: 12px;
  }

  .hero,
  .services,
  .clients,
  .contact-section {
    border-radius: 14px;
  }
}

/* ============================================================
   HOMEPAGE BLING — Animated hero, React stats, service cards,
   trust strip, CTA banner, scroll-reveal cards
   ============================================================ */

/* Keyframes */
@keyframes glow-pulse-btn {
  0%,100% { box-shadow: 0 0 18px rgba(103,166,217,0.36), 0 8px 24px rgba(35,58,102,0.36); }
  50%      { box-shadow: 0 0 38px rgba(103,166,217,0.72), 0 12px 32px rgba(35,58,102,0.52); }
}
@keyframes float-orb {
  0%,100% { transform: translateY(0) scale(1); opacity: .7; }
  50%     { transform: translateY(-22px) scale(1.04); opacity: .9; }
}
@keyframes eyebrow-fade {
  from { opacity: 0; transform: translateY(-8px); }
  to   { opacity: 1; transform: translateY(0); }
}
@keyframes trust-row-fade {
  from { opacity: 0; }
  to   { opacity: 1; }
}

/* --- Hero upgrades --- */
.home-page .hero-content h1 {
  color: #ffffff;
  text-shadow: none;
  font-size: clamp(38px, 6vw, 72px);
  font-weight: 800;
  letter-spacing: -0.03em;
  line-height: 1.04;
}

.home-underline {
  width: 130px !important;
  height: 3px !important;
  background: #52acdf !important;
  opacity: 0.9;
  margin: 14px auto 20px !important;
}

.home-hero-eyebrow {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 0.16em;
  text-transform: uppercase;
  color: rgba(103,195,243,0.82);
  margin-bottom: 18px;
  animation: eyebrow-fade 0.8s ease both;
}

.hero-eyebrow-dot {
  display: inline-block;
  width: 7px; height: 7px;
  border-radius: 50%;
  background: #67c3f3;
  box-shadow: 0 0 8px rgba(103,195,243,0.8);
  animation: dot-pulse 2.5s infinite ease-in-out;
}

.hero-trust-row {
  display: flex;
  flex-wrap: wrap;
  gap: 8px 16px;
  justify-content: center;
  margin-top: 22px;
  animation: trust-row-fade 1.2s 0.6s both;
}
.hero-trust-item {
  font-size: 12px;
  color: rgba(170,200,228,0.72);
  font-weight: 500;
}
.hero-trust-sep { color: rgba(103,166,217,0.3); font-size: 14px; }

/* Floating orbs behind hero content */
.hero-orb {
  position: absolute;
  border-radius: 50%;
  pointer-events: none;
  filter: blur(72px);
  animation: float-orb 7s ease-in-out infinite;
  z-index: 1;
}
.hero-orb-1 {
  width: 340px; height: 340px;
  background: radial-gradient(circle, rgba(103,166,217,0.16), transparent 70%);
  top: 8%; left: 8%;
  animation-delay: 0s;
}
.hero-orb-2 {
  width: 260px; height: 260px;
  background: radial-gradient(circle, rgba(184,149,232,0.12), transparent 70%);
  top: 35%; right: 14%;
  animation-delay: 2.5s;
}
.hero-orb-3 {
  width: 200px; height: 200px;
  background: radial-gradient(circle, rgba(214,178,119,0.1), transparent 70%);
  bottom: 18%; left: 38%;
  animation-delay: 4.5s;
}

/* Primary CTA glow pulse */
.home-cta-primary {
  background: linear-gradient(135deg, #4f9fd6 0%, #3d74d9 100%) !important;
  animation: glow-pulse-btn 2.6s ease-in-out infinite;
  padding: 14px 32px !important;
  font-size: 15px !important;
  letter-spacing: 0.02em;
}
.home-cta-alt {
  padding: 14px 32px !important;
  font-size: 15px !important;
  border-color: rgba(103,166,217,0.32) !important;
}

/* --- Animated Stats Bar (React) --- */
.home-stats-section {
  background: rgba(8, 16, 28, 0.94);
  border-top: 1px solid rgba(103,166,217,0.14);
  border-bottom: 1px solid rgba(103,166,217,0.1);
}

.stats-bar-inner {
  display: flex;
  justify-content: space-around;
  flex-wrap: wrap;
  max-width: 1140px;
  margin: 0 auto;
  padding: 44px 24px;
}

.stat-item {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 7px;
  padding: 12px 36px;
  position: relative;
}

.stat-item::after {
  content: '';
  position: absolute;
  right: 0; top: 16%; height: 68%;
  width: 1px;
  background: rgba(103,166,217,0.14);
}
.stat-item:last-child::after { display: none; }

.stat-number-react {
  font-family: 'Outfit', sans-serif;
  font-size: clamp(40px, 4.5vw, 58px);
  font-weight: 800;
  color: #52acdf;
  line-height: 1;
  min-width: 3ch;
  text-align: center;
}

.stat-label-react {
  font-size: 11px;
  font-weight: 700;
  color: #6a8faa;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  text-align: center;
}

/* --- Home Services Grid --- */
.home-services-section {
  padding: 84px 0 72px;
  background: transparent;
}

.home-section-inner { text-align: center; }

.home-eyebrow {
  display: inline-block;
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 0.15em;
  text-transform: uppercase;
  color: #67a6d9;
  margin-bottom: 12px;
}

.home-section-title {
  font-family: 'Outfit', sans-serif;
  font-size: clamp(28px, 3.8vw, 46px);
  font-weight: 800;
  color: #eef4fa;
  margin-bottom: 12px;
  line-height: 1.1;
  letter-spacing: -0.02em;
}

.home-section-sub {
  font-size: clamp(14px, 1.7vw, 17px);
  color: #7a9ab8;
  max-width: 64ch;
  margin: 0 auto 52px;
  line-height: 1.65;
}

.home-services-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 22px;
  text-align: left;
}

/* Scroll-reveal animation for cards */
.reveal-card {
  opacity: 0;
  transform: translateY(30px);
  transition: opacity 0.6s ease var(--card-delay, 0s), transform 0.6s ease var(--card-delay, 0s);
}
.reveal-card.revealed {
  opacity: 1;
  transform: translateY(0);
}

.home-service-card {
  background: linear-gradient(160deg, rgba(18, 32, 50, 0.94), rgba(12, 22, 36, 0.96));
  border: 1px solid rgba(103, 166, 217, 0.18);
  border-radius: 18px;
  padding: 30px 26px 24px;
  position: relative;
  overflow: hidden;
  transition: transform 0.32s ease, border-color 0.32s ease, box-shadow 0.32s ease;
  cursor: default;
}

.home-service-card::before {
  content: '';
  position: absolute;
  inset: 0;
  background: radial-gradient(circle at 40% -10%, rgba(103,166,217,0.09), transparent 56%);
  pointer-events: none;
}

.home-service-card:hover {
  transform: translateY(-7px);
  border-color: rgba(103, 166, 217, 0.5);
  box-shadow: 0 24px 56px rgba(2, 10, 22, 0.38),
              0 0 0 1px rgba(103,166,217,0.14),
              0 0 36px rgba(103,166,217,0.1);
}

.svc-icon-box {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 46px; height: 46px;
  background: linear-gradient(135deg, rgba(103,166,217,0.14), rgba(79,134,182,0.06));
  border: 1px solid rgba(103,166,217,0.26);
  border-radius: 12px;
  margin-bottom: 18px;
  color: #67c3f3;
}

.home-service-card h3 {
  font-family: 'Outfit', sans-serif;
  font-size: 17px;
  font-weight: 700;
  color: #ddeeff;
  margin: 0 0 10px;
}

.home-service-card p {
  font-size: 14px;
  line-height: 1.68;
  color: #7a9ab8;
  margin: 0 0 20px;
}

.home-card-link {
  font-size: 13px;
  font-weight: 600;
  color: #67a6d9;
  text-decoration: none;
  letter-spacing: 0.02em;
  display: inline-flex;
  align-items: center;
  gap: 4px;
  transition: color 0.2s;
}
.home-card-link:hover { color: #9dcbec; }

/* --- Trust Strip --- */
.home-trust-strip {
  padding: 36px 0 32px;
  background: rgba(7, 13, 22, 0.72);
  border-top: 1px solid rgba(103,166,217,0.08);
  text-align: center;
}
.home-trust-inner { text-align: center; }
.home-trust-label {
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 0.13em;
  text-transform: uppercase;
  color: #3d5e78;
  margin-bottom: 16px;
}
.home-trust-badges {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  justify-content: center;
}
.trust-badge {
  display: inline-flex;
  align-items: center;
  padding: 7px 18px;
  border-radius: 999px;
  border: 1px solid rgba(103,166,217,0.2);
  background: rgba(103,166,217,0.05);
  color: #6e9ec0;
  font-size: 12px;
  font-weight: 600;
  letter-spacing: 0.03em;
  transition: border-color 0.22s, background 0.22s, color 0.22s;
}
.trust-badge:hover {
  border-color: rgba(103,166,217,0.46);
  background: rgba(103,166,217,0.11);
  color: #badcf4;
}

/* --- Bottom CTA Banner --- */
.home-cta-banner {
  padding: 80px 24px;
  background: linear-gradient(155deg, rgba(18, 38, 64, 0.98), rgba(10, 20, 36, 1));
  border-top: 1px solid rgba(103,166,217,0.16);
  text-align: center;
  position: relative;
  overflow: hidden;
}
.home-cta-banner-orb {
  position: absolute;
  top: -80px; left: 50%;
  transform: translateX(-50%);
  width: 700px; height: 380px;
  background: radial-gradient(ellipse, rgba(103,166,217,0.07), transparent 65%);
  pointer-events: none;
}
.home-cta-inner { position: relative; z-index: 2; }
.home-cta-headline {
  font-family: 'Outfit', sans-serif;
  font-size: clamp(24px, 3.2vw, 40px);
  font-weight: 800;
  color: #eef4fa;
  margin-bottom: 12px;
  line-height: 1.18;
  letter-spacing: -0.02em;
}
.home-cta-sub {
  font-size: clamp(14px, 1.6vw, 17px);
  color: #6a8faa;
  max-width: 58ch;
  margin: 0 auto 30px;
  line-height: 1.65;
}
.home-cta-glow {
  padding: 15px 40px !important;
  font-size: 15px !important;
  background: linear-gradient(135deg, #4f9fd6 0%, #3d74d9 100%) !important;
  border-color: rgba(103,166,217,0.3) !important;
  animation: glow-pulse-btn 2.6s ease-in-out infinite;
  letter-spacing: 0.03em !important;
}

/* Responsive */
@media (max-width: 860px) {
  .home-services-grid { grid-template-columns: 1fr; }
  .stats-bar-inner { padding: 32px 16px; gap: 8px; }
  .stat-item { padding: 10px 20px; }
  .stat-item::after { display: none; }
  .home-cta-banner { padding: 56px 20px; }
  .hero-trust-sep { display: none; }
  .hero-trust-row { flex-direction: column; align-items: center; gap: 6px; }
}

/* ============================================================
   INTERIOR PAGES BLING
   Page hero banners, animated stat counters, service icons,
   resource badge pills, client logo upgrades, contact trust list
   ============================================================ */

/* --- Page Hero Banner --- */
.page-hero-banner {
  position: relative;
  padding: 96px 40px 68px;
  overflow: hidden;
  background: linear-gradient(145deg, #050d16 0%, #0a1620 50%, #080f1a 100%);
  border-bottom: 1px solid rgba(103,166,217,0.14);
}
.page-hero-orb {
  position: absolute;
  border-radius: 50%;
  pointer-events: none;
  filter: blur(68px);
}
.page-hero-orb-1 {
  width: 540px; height: 540px;
  top: -220px; right: -80px;
  background: radial-gradient(circle, rgba(103,166,217,0.11), transparent 68%);
  animation: float-orb 9s ease-in-out infinite;
}
.page-hero-orb-2 {
  width: 380px; height: 380px;
  bottom: -170px; left: 3%;
  background: radial-gradient(circle, rgba(214,178,119,0.07), transparent 65%);
  animation: float-orb 12s ease-in-out infinite reverse;
}
.page-hero-inner {
  position: relative;
  z-index: 2;
  max-width: 860px;
}
.page-hero-eyebrow {
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 0.16em;
  text-transform: uppercase;
  color: #67a6d9;
  margin: 0 0 16px;
  display: flex;
  align-items: center;
  gap: 10px;
}
.page-hero-eyebrow::before {
  content: '';
  display: inline-block;
  width: 24px; height: 2px;
  background: #52acdf;
  border-radius: 2px;
  flex-shrink: 0;
}
.page-hero-h1 {
  font-family: 'Outfit', sans-serif;
  font-size: clamp(30px, 4.5vw, 54px);
  font-weight: 800;
  line-height: 1.1;
  letter-spacing: -0.025em;
  margin: 0 0 14px;
  background: linear-gradient(105deg, #eef4fa 25%, #a9ccec 75%);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text;
}
.page-hero-accent-line {
  width: 50px; height: 3px;
  background: #52acdf;
  border-radius: 999px;
  margin: 0 0 18px;
}
.page-hero-sub {
  font-size: clamp(14px, 1.6vw, 16px);
  color: #6a8faa;
  line-height: 1.65;
  max-width: 60ch;
  margin: 0;
}

.page-hero-centered {
  margin: 0 auto;
  text-align: center;
}

.page-hero-centered .page-hero-eyebrow {
  justify-content: center;
}

.page-hero-centered .page-hero-accent-line {
  margin: 0 auto 18px;
}

.page-hero-centered .page-hero-sub {
  margin: 0 auto;
}

.value-page .page-hero-inner {
  margin: 0 auto;
  text-align: center;
}

.value-page .page-hero-eyebrow {
  justify-content: center;
}

.value-page .page-hero-accent-line {
  margin: 0 auto 18px;
}

.value-page .page-hero-sub {
  margin: 0 auto;
}

.services-page .page-hero-inner {
  margin: 0 auto;
  text-align: center;
}

.services-page .page-hero-eyebrow {
  justify-content: center;
}

.services-page .page-hero-accent-line {
  margin: 0 auto 18px;
}

.services-page .page-hero-sub {
  margin: 0 auto;
}

.value-page .value-quick-points {
  margin: 20px 0 26px;
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
}

.value-page .value-quick-points span {
  display: inline-flex;
  align-items: center;
  padding: 7px 14px;
  border-radius: 999px;
  background: rgba(103,166,217,0.09);
  border: 1px solid rgba(103,166,217,0.22);
  color: #9fc2db;
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 0.05em;
  text-transform: uppercase;
}

.value-page .timeline-detail .services-cta {
  margin-top: 16px;
}

.who-page .page-hero-banner {
  padding: 76px 40px 52px;
}

.who-page .page-hero-inner {
  max-width: 980px;
  margin: 0 auto;
  text-align: center;
}

.who-page .page-hero-eyebrow {
  justify-content: center;
  margin-bottom: 14px;
}

.who-page .who-hero-title {
  margin: 0;
  font-family: 'Outfit', sans-serif;
  font-size: clamp(30px, 4.5vw, 54px);
  font-weight: 800;
  line-height: 1.1;
  letter-spacing: -0.025em;
  color: #deebf8;
}

.who-page .page-hero-accent-line {
  margin: 16px auto 18px;
}

.who-page .page-hero-sub {
  margin: 0 auto;
  font-size: clamp(14px, 1.6vw, 16px);
  color: #6a8faa;
  max-width: 60ch;
  line-height: 1.65;
}

.who-page .about-main {
  width: min(1160px, 95%);
}

.who-page .about-mission,
.who-page .about-difference {
  padding: 44px;
}

.who-page .about-lead {
  font-size: clamp(18px, 1.6vw, 22px);
  line-height: 1.68;
  color: #93b1ca;
}

.who-page .about-mission-grid {
  gap: 22px;
  margin-top: 26px;
}

.who-page .about-team-grid {
  margin-top: 20px;
}

.who-page .about-team-grid .about-founder-panel {
  width: 100%;
}

.who-page .about-difference .about-eyebrow {
  font-size: clamp(13px, 1.1vw, 16px);
  letter-spacing: 0.03em;
  margin-bottom: 16px;
}

.who-page .about-founder-panel,
.who-page .about-focus-panel,
.who-page .about-difference .card {
  padding: 24px;
}

.who-page .about-profile-copy h2,
.who-page .about-focus-panel h2,
.who-page .about-difference .card h3 {
  font-size: clamp(24px, 2vw, 30px);
  line-height: 1.24;
}

.who-page .about-profile-copy p,
.who-page .about-focus-panel p,
.who-page .about-difference .card p {
  font-size: 17px;
  line-height: 1.72;
  color: #97b5cc;
}

.who-page .who-focus-ctas {
  margin-top: 18px;
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
}

.who-page .who-focus-ctas .cta {
  margin-top: 0;
}

.who-page .ip-stats-row {
  max-width: 760px;
  margin-top: 30px;
}

.who-page .ip-stat {
  padding: 26px 20px;
}

.who-page .ip-stat-num {
  font-size: 40px;
}

.who-page .ip-stat-label {
  font-size: 11px;
  color: #7f9db5;
}

/* --- Stats Row (who-we-are) --- */
.ip-stats-row {
  display: flex;
  gap: 0;
  margin: 44px 0 0;
  border: 1px solid rgba(103,166,217,0.13);
  border-radius: 16px;
  background: rgba(10,18,30,0.60);
  backdrop-filter: blur(14px);
  overflow: hidden;
  max-width: 680px;
}
.ip-stat {
  flex: 1;
  padding: 24px 18px;
  text-align: center;
  position: relative;
}
.ip-stat + .ip-stat::before {
  content: '';
  position: absolute;
  left: 0; top: 18%; bottom: 18%;
  width: 1px;
  background: rgba(103,166,217,0.12);
}
.ip-stat-num {
  font-family: 'Outfit', sans-serif;
  font-size: 32px;
  font-weight: 800;
  letter-spacing: -0.02em;
  background: linear-gradient(135deg, #67a6d9, #d6b277);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text;
  display: block;
  line-height: 1;
  margin-bottom: 6px;
}
.ip-stat-label {
  font-size: 10px;
  font-weight: 700;
  color: #3e5e72;
  letter-spacing: 0.07em;
  text-transform: uppercase;
}

/* --- Service card icon boxes --- */
.svc-card-icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 40px; height: 40px;
  background: linear-gradient(135deg, rgba(103,166,217,0.10), rgba(79,134,182,0.03));
  border: 1px solid rgba(103,166,217,0.18);
  border-radius: 10px;
  margin-bottom: 12px;
  color: #67bcf3;
  flex-shrink: 0;
}
.svc-card-icon svg { display: block; }

/* --- Resource badge pills --- */
.resource-badge {
  display: inline-flex;
  align-items: center;
  padding: 3px 10px;
  border-radius: 999px;
  font-size: 10px;
  font-weight: 700;
  letter-spacing: 0.07em;
  text-transform: uppercase;
  margin-bottom: 8px;
}
.rb-template  { background: rgba(103,166,217,0.08); border: 1px solid rgba(103,166,217,0.24); color: #67a6d9; }
.rb-checklist { background: rgba(214,178,119,0.08); border: 1px solid rgba(214,178,119,0.24); color: #d6b277; }
.rb-guide     { background: rgba(119,214,178,0.07); border: 1px solid rgba(119,214,178,0.18); color: #7be0b8; }
.rb-planner   { background: rgba(166,119,214,0.08); border: 1px solid rgba(166,119,214,0.20); color: #b87fe0; }
.rb-scorecard { background: rgba(214,119,119,0.08); border: 1px solid rgba(214,119,119,0.20); color: #e07b7b; }

/* --- Client logo card glow upgrades --- */
.client-logo {
  background: rgba(10, 20, 34, 0.65) !important;
  border: 1px solid rgba(103, 166, 217, 0.12) !important;
  border-radius: 12px !important;
  transition: border-color 0.26s ease, background 0.26s ease,
              color 0.26s ease, transform 0.26s ease,
              box-shadow 0.26s ease !important;
}
.client-logo:hover {
  border-color: rgba(103, 166, 217, 0.36) !important;
  background: rgba(103, 166, 217, 0.06) !important;
  color: #c0daee !important;
  transform: translateY(-3px) !important;
  box-shadow: 0 8px 28px rgba(0,0,0,0.28) !important;
}

/* --- Contact trust list icon circles --- */
.contact-trust-list {
  list-style: none !important;
  padding-left: 0 !important;
}
.contact-trust-list li {
  display: flex !important;
  align-items: flex-start !important;
  gap: 10px !important;
  padding: 3px 0 !important;
}
.contact-trust-list li::before {
  content: '✓' !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 20px !important; height: 20px !important;
  flex-shrink: 0 !important;
  border-radius: 50% !important;
  background: rgba(103,166,217,0.10) !important;
  border: 1px solid rgba(103,166,217,0.26) !important;
  color: #67a6d9 !important;
  font-size: 10px !important;
  font-weight: 800 !important;
  margin-top: 1px !important;
}

/* Responsive */
@media (max-width: 760px) {
  .page-hero-banner { padding: 52px 20px 44px; }
  .value-page .value-quick-points {
    gap: 8px;
  }
  .who-page .page-hero-inner {
    max-width: 100%;
  }
  .who-page .who-hero-title {
    font-size: clamp(28px, 8vw, 40px);
  }
  .who-page .page-hero-sub {
    font-size: 16px;
    line-height: 1.62;
  }
  .who-page .about-mission,
  .who-page .about-difference {
    padding: 28px;
  }
  .who-page .about-lead,
  .who-page .about-profile-copy p,
  .who-page .about-focus-panel p,
  .who-page .about-difference .card p {
    font-size: 16px;
  }
  .who-page .about-profile-copy h2,
  .who-page .about-focus-panel h2,
  .who-page .about-difference .card h3 {
    font-size: clamp(22px, 6vw, 28px);
  }
  .who-page .who-focus-ctas {
    flex-direction: column;
  }
  .who-page .about-team-grid {
    margin-top: 16px;
  }
  .ip-stats-row { flex-direction: column; max-width: 100%; }
  .ip-stat + .ip-stat::before {
    top: 0; left: 16%; right: 16%;
    bottom: auto; width: auto; height: 1px;
  }
}

/* ============================================================
   INTERIOR DARK MODE FIX
   Overrides the "mixed light-dark refresh" block (line ~895)
   which turned section containers and cards white.
   Source order means these rules win over the earlier ones.
   ============================================================ */

/* --- Spacing: hero banner eliminates need for large main margin-top --- */
.page-hero-banner + .about-main,
.page-hero-banner + .page-main {
  margin-top: 24px;
}

/* --- Body / page background: premium dark with subtle light accents --- */
body.site-page:not(.home-page) {
  background:
    radial-gradient(circle at 0% 0%, rgba(103, 166, 217, 0.08), transparent 40%),
    radial-gradient(circle at 100% 0%, rgba(214, 178, 119, 0.04), transparent 32%),
    radial-gradient(circle at 50% 100%, rgba(103, 166, 217, 0.04), transparent 48%),
    linear-gradient(180deg, #0a1420 0%, #0f1a28 48%, #0a1220 100%);
}

/* --- Section containers: premium dark panels with light accent --- */
body.site-page:not(.home-page) .services,
body.site-page:not(.home-page) .clients,
body.site-page:not(.home-page) .contact-section,
body.site-page.about-page .about-mission,
body.site-page.about-page .about-difference {
  background: linear-gradient(165deg, rgba(8, 15, 26, 0.98), rgba(6, 12, 20, 1));
  border: 1px solid rgba(103, 166, 217, 0.16);
  box-shadow: 0 2px 12px rgba(0, 0, 0, 0.28), inset 0 1px 0 rgba(255, 255, 255, 0.04);
}

/* --- Section h2 headings --- */
body.site-page:not(.home-page) .services > h2,
body.site-page:not(.home-page) .clients > h2,
body.site-page:not(.home-page) .contact-section h2,
body.site-page.about-page .about-mission h1,
body.site-page.about-page .about-focus-panel h2,
body.site-page.about-page .about-profile-copy h2,
body.site-page.about-page .services-subsection-title {
  color: #eef4fa;
}

/* --- Section body text --- */
body.site-page:not(.home-page) .services > p,
body.site-page:not(.home-page) .clients > p,
body.site-page.about-page .about-lead,
body.site-page.about-page .about-focus-panel p,
body.site-page.about-page .about-profile-copy p,
body.site-page.about-page .about-eyebrow,
body.site-page.about-page .about-panel-label,
body.site-page.about-page .about-profile-role,
body.site-page.about-page .timeline-detail p,
body.site-page.about-page .about-detail p {
  color: #7a9ab8;
}

/* --- Cards: light elevated surfaces with premium shadows --- */
body.site-page:not(.home-page) .card,
body.site-page:not(.home-page) .timeline-detail,
body.site-page.about-page .about-founder-panel,
body.site-page.about-page .about-focus-panel,
body.site-page.about-page .about-detail {
  background: linear-gradient(168deg, rgba(22, 38, 58, 0.94), rgba(16, 28, 45, 0.96));
  border: 1px solid rgba(103, 166, 217, 0.18);
  box-shadow: 0 4px 16px rgba(0, 0, 0, 0.24), inset 0 1px 0 rgba(255, 255, 255, 0.08);
  transition: all 0.32s cubic-bezier(0.34, 1.56, 0.64, 1);
}

body.site-page:not(.home-page) .card:hover,
body.site-page.about-page .about-founder-panel:hover,
body.site-page.about-page .about-focus-panel:hover {
  transform: translateY(-8px);
  border-color: rgba(103, 166, 217, 0.42);
  box-shadow: 0 20px 56px rgba(0, 0, 0, 0.36), 0 0 24px rgba(103, 166, 217, 0.12), inset 0 1px 0 rgba(255, 255, 255, 0.12);
}

/* --- Card h3 / h2 headings --- */
body.site-page:not(.home-page) .card h3,
body.site-page:not(.home-page) .timeline-detail h3,
body.site-page.about-page .about-detail h3,
body.site-page.about-page .about-founder-panel h2,
body.site-page.about-page .about-focus-panel h2 {
  color: #e8f2fa;
  font-weight: 700;
  letter-spacing: -0.01em;
}

/* --- Card body text --- */
body.site-page:not(.home-page) .card p,
body.site-page:not(.home-page) .timeline-detail p {
  color: #8aacbe;
  line-height: 1.66;
}

/* --- Section dividers --- */
body.site-page.about-page .services-separate-group,
body.site-page.about-page .services-subsection-title {
  border-top-color: rgba(103, 166, 217, 0.14);
}

/* --- Client logos --- */
body.site-page.about-page .client-logo {
  background: linear-gradient(168deg, rgba(22, 38, 58, 0.94), rgba(16, 28, 45, 0.96));
  border: 1px solid rgba(103, 166, 217, 0.18);
  border-left: 3px solid rgba(103, 166, 217, 0.46);
  color: #92b5c7;
  transition: all 0.28s ease;
}
body.site-page.about-page .client-logo:hover {
  border-left-color: rgba(214, 178, 119, 0.56);
  transform: translateX(4px);
}

/* --- Contact page: dark panels --- */
body.site-page:not(.home-page) .contact-section {
  background: transparent;
  border: 0;
  box-shadow: none;
}

body.site-page:not(.home-page) .contact-intro-panel {
  background:
    radial-gradient(circle at 16% 10%, rgba(103, 166, 217, 0.10), transparent 40%),
    linear-gradient(168deg, rgba(22, 38, 58, 0.94), rgba(16, 28, 45, 0.96));
  border: 1px solid rgba(103, 166, 217, 0.18);
  box-shadow: 0 8px 32px rgba(0, 0, 0, 0.24), inset 0 1px 0 rgba(255, 255, 255, 0.08);
  transition: all 0.32s ease;
}
body.site-page:not(.home-page) .contact-intro-panel:hover {
  border-color: rgba(103, 166, 217, 0.32);
  box-shadow: 0 12px 48px rgba(0, 0, 0, 0.32), inset 0 1px 0 rgba(255, 255, 255, 0.12);
}

body.site-page:not(.home-page) .contact-eyebrow { color: #67a6d9; }
body.site-page:not(.home-page) .contact-intro-panel h2 { color: #eef4fa; }
body.site-page:not(.home-page) .contact-form-intro,
body.site-page:not(.home-page) .contact-section p { color: #7a9ab8; }

body.site-page:not(.home-page) .contact-form-shell {
  background: linear-gradient(168deg, rgba(22, 38, 58, 0.94), rgba(16, 28, 45, 0.96));
  border: 1px solid rgba(103, 166, 217, 0.18);
  box-shadow: 0 4px 16px rgba(0, 0, 0, 0.24), inset 0 1px 0 rgba(255, 255, 255, 0.08);
}

body.site-page:not(.home-page) .contact-form-shell .contact-section-heading h3 { color: #e8f2fa; font-weight: 700; }
body.site-page:not(.home-page) .contact-form-shell .contact-section-heading p { color: #8aacbe; line-height: 1.66; }
body.site-page:not(.home-page) .contact-trust-list { color: #8aadc8; }
body.site-page:not(.home-page) .contact-form label span { color: #b0c8dc; }

/* --- Alt CTA buttons on dark backgrounds --- */
body.site-page:not(.home-page) .cta.alt {
  background: rgba(103, 166, 217, 0.08);
  border-color: rgba(103, 166, 217, 0.26);
  color: #a4cbeb;
}
body.site-page:not(.home-page) .cta.alt:hover,
body.site-page:not(.home-page) .cta.alt:focus {
  background: rgba(103, 166, 217, 0.16);
  color: #c6dfef;
}

/* --- Schedule call CTA spacing --- */
.contact-schedule-cta { margin-top: 20px; }

/* ============================================================
   TOP-TIER POLISH & REFINEMENTS
   Premium micro-interactions, typography hierarchy, and polish
   ============================================================ */

/* Better section text hierarchy */
body.site-page:not(.home-page) .services > h2,
body.site-page:not(.home-page) .clients > h2,
body.site-page.about-page .about-mission h1 {
  font-size: clamp(28px, 3.2vw, 44px);
  font-weight: 800;
  line-height: 1.15;
  letter-spacing: -0.015em;
}

body.site-page:not(.home-page) .services > p,
body.site-page:not(.home-page) .clients > p,
body.site-page.about-page .about-lead {
  font-size: 15.5px;
  color: #7a96ac;
  line-height: 1.68;
  font-weight: 500;
}

/* Contact form refinements */
body.site-page:not(.home-page) .contact-form input,
body.site-page:not(.home-page) .contact-form textarea {
  background: rgba(20, 32, 48, 0.68);
  border: 1px solid rgba(103, 166, 217, 0.14);
  color: #dde8f4;
  transition: all 0.24s ease;
}

body.site-page:not(.home-page) .contact-form input::placeholder,
body.site-page:not(.home-page) .contact-form textarea::placeholder {
  color: rgba(122, 150, 172, 0.68);
}

body.site-page:not(.home-page) .contact-form input:focus,
body.site-page:not(.home-page) .contact-form textarea:focus {
  background: rgba(25, 40, 60, 0.88);
  border-color: rgba(103, 166, 217, 0.44);
  box-shadow: 0 0 0 3px rgba(103, 166, 217, 0.06), inset 0 1px 2px rgba(255, 255, 255, 0.04);
  outline: none;
}

/* Premium button styling */
.contact-schedule-cta,
body.site-page:not(.home-page) .services-cta,
body.site-page:not(.home-page) .about-detail .cta:not(.alt) {
  background: linear-gradient(135deg, #3d74d9, #2d5fba);
  border: 1px solid rgba(103, 166, 217, 0.34);
  box-shadow: 0 4px 16px rgba(45, 95, 186, 0.22), inset 0 1px 0 rgba(255, 255, 255, 0.12);
  transition: all 0.26s cubic-bezier(0.34, 1.56, 0.64, 1);
}

.contact-schedule-cta:hover,
body.site-page:not(.home-page) .services-cta:hover,
body.site-page:not(.home-page) .about-detail .cta:not(.alt):hover {
  transform: translateY(-2px);
  box-shadow: 0 8px 28px rgba(45, 95, 186, 0.32), inset 0 1px 0 rgba(255, 255, 255, 0.16);
}

/* Service card icons with glow on hover */
.svc-card-icon {
  transition: all 0.28s ease;
}

body.site-page:not(.home-page) .card:hover .svc-card-icon {
  background: linear-gradient(135deg, rgba(103, 166, 217, 0.20), rgba(79, 134, 182, 0.10));
  border-color: rgba(103, 166, 217, 0.38);
  box-shadow: 0 0 12px rgba(103, 166, 217, 0.18);
}

/* Resource badges shine effect */
.resource-badge {
  transition: all 0.22s ease;
}

body.site-page:not(.home-page) .card:hover .resource-badge {
  transform: translateY(-1px);
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.14);
}

/* Page section spacing refinement */
body.site-page:not(.home-page) .services,
body.site-page:not(.home-page) .clients,
body.site-page.about-page .about-mission,
body.site-page.about-page .about-difference {
  padding: 48px;
}

body.site-page:not(.home-page) .services > h2,
body.site-page:not(.home-page) .clients > h2,
body.site-page.about-page .about-mission h1 {
  margin-bottom: 14px;
}

body.site-page:not(.home-page) .services > p:first-of-type,
body.site-page:not(.home-page) .clients > p:first-of-type {
  margin-bottom: 24px;
}

/* Grid refinement */
.services-grid,
.client-grid {
  gap: 20px;
}

/* Smooth fade-in for card animations */
body.site-page:not(.home-page) .card {
  --card-delay: 0s;
}

body.site-page:not(.home-page) .card.card-visible {
  animation: cardSlideIn 0.56s cubic-bezier(0.34, 1.56, 0.64, 1) forwards;
}

@keyframes cardSlideIn {
  from {
    opacity: 0;
    transform: translateY(20px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}

/* Timeline detail refinement */
body.site-page:not(.home-page) .timeline-detail {
  padding: 32px 36px;
}

body.site-page:not(.home-page) .timeline-detail h3 {
  margin-bottom: 10px;
  color: #e8f2fa;
  font-size: 18px;
}

body.site-page:not(.home-page) .timeline-detail p {
  margin-bottom: 16px;
}

/* Stat counter styling */
.ip-stat-num {
  font-size: 38px !important;
}

/* Footer refinement */
body.site-page:not(.home-page) footer {
  margin-top: 64px;
}

@media (max-width: 760px) {
  .page-hero-banner + .about-main,
  .page-hero-banner + .page-main { margin-top: 12px; }
  body.site-page:not(.home-page) .contact-section { padding: 32px 0 0; }
  body.site-page:not(.home-page) .services,
  body.site-page:not(.home-page) .clients,
  body.site-page.about-page .about-mission,
  body.site-page.about-page .about-difference {
    padding: 32px;
  }
}

/* Premium visual pass: stronger typography hierarchy, richer contrast, cleaner spacing. */
:root {
  --font-body: 'Manrope', 'Plus Jakarta Sans', 'Segoe UI', sans-serif;
  --font-heading: 'Space Grotesk', 'Outfit', 'Plus Jakarta Sans', sans-serif;
  --accent: #1f6fff;
  --accent-2: #1858cc;
  --accent-glow: rgba(31, 111, 255, 0.35);
  --ink: #0f2539;
  --paper: #f6fbff;
}

html,
body,
body * {
  font-family: var(--font-body);
}

h1,
h2,
h3,
h4,
.page-hero-h1,
.who-hero-title,
.hero-content h1 {
  font-family: var(--font-heading);
  letter-spacing: -0.015em;
}

body {
  background:
    radial-gradient(900px 560px at 0% 0%, rgba(27, 161, 204, 0.22), transparent 62%),
    radial-gradient(760px 460px at 100% 0%, rgba(15, 157, 136, 0.2), transparent 58%),
    linear-gradient(180deg, #0d1b2a 0%, #102136 44%, #0c1a29 100%);
}

body::before {
  content: '';
  position: fixed;
  inset: 0;
  pointer-events: none;
  background-image: linear-gradient(rgba(255, 255, 255, 0.02) 1px, transparent 1px), linear-gradient(90deg, rgba(255, 255, 255, 0.02) 1px, transparent 1px);
  background-size: 40px 40px;
  mask-image: radial-gradient(circle at center, black 26%, transparent 100%);
  z-index: -1;
}

.site-header {
  border-bottom: 1px solid rgba(154, 205, 230, 0.28);
  box-shadow: 0 12px 38px rgba(2, 12, 24, 0.34);
}

.nav {
  gap: 8px;
}

.nav a {
  position: relative;
  padding: 9px 14px;
  border-radius: 999px;
  font-size: 13px;
  letter-spacing: 0.02em;
  background: rgba(26, 49, 71, 0.42);
  border: 1px solid rgba(149, 196, 227, 0.2);
}

.nav a::after {
  content: '';
  position: absolute;
  left: 14px;
  right: 14px;
  bottom: 5px;
  height: 2px;
  border-radius: 999px;
  transform: scaleX(0);
  transform-origin: center;
  transition: transform .24s ease;
  background: linear-gradient(90deg, rgba(31,111,255,0), rgba(31,111,255,1), rgba(31,111,255,0));
}

.nav a:hover::after,
.nav a:focus::after {
  transform: scaleX(1);
}

.hero {
  min-height: calc(100vh - 56px);
  padding-top: 180px;
  background-image: linear-gradient(180deg, rgba(7, 20, 33, 0.38), rgba(7, 20, 33, 0.7)), url('../images/datacenter.jpg');
}

.hero-content {
  max-width: 900px;
}

.hero-content h1 {
  font-size: clamp(38px, 5.8vw, 78px);
}

.subtitle,
.page-hero-sub,
.about-lead {
  font-size: clamp(16px, 1.85vw, 22px);
  line-height: 1.62;
}

.page-hero-banner {
  border-bottom: 1px solid rgba(166, 213, 236, 0.22);
  box-shadow: inset 0 -45px 90px rgba(5, 14, 24, 0.24);
}

.page-hero-h1,
.who-hero-title {
  font-size: clamp(36px, 5.2vw, 64px);
  line-height: 1.06;
}

.services,
.clients,
.about-mission,
.about-difference {
  border-radius: 22px;
}

.card,
.client-logo,
.timeline-detail,
.feedback-panel,
.feedback-proof,
.feedback-feed-section,
.admin-panel,
.admin-data-panel,
.admin-summary-card,
.admin-record-card {
  border-radius: 18px;
  border-color: rgba(139, 185, 214, 0.3);
}

.card h3,
.timeline-detail h3,
.admin-record-title,
.feedback-panel-header h2,
.admin-panel-header h2,
.admin-data-header h2 {
  font-size: clamp(21px, 2vw, 28px);
}

.card p,
.timeline-detail p,
.client-logo,
.feedback-entry-copy,
.admin-record-copy,
.about-detail p,
.services p,
.clients p {
  font-size: clamp(15px, 1.25vw, 18px);
  line-height: 1.7;
}

.cta {
  min-height: 48px;
  padding: 12px 24px;
  border-radius: 13px;
  font-size: 14px;
  font-weight: 700;
  background: linear-gradient(135deg, #4f9fd6 0%, #3d74d9 100%);
  border-color: rgba(138, 184, 238, 0.52);
  box-shadow: 0 16px 34px var(--accent-glow);
}

.cta:hover,
.cta:focus {
  background: linear-gradient(135deg, #468dc2 0%, #3467c7 100%);
  box-shadow: 0 20px 40px rgba(78, 145, 225, 0.46);
}

.cta.alt {
  background: rgba(255, 255, 255, 0.08);
}

.footer-bottom p {
  font-size: 14px;
}

@media (max-width: 980px) {
  .nav a {
    padding: 8px 12px;
    font-size: 12px;
  }

  .hero {
    padding-top: 156px;
    min-height: 74vh;
  }

  .page-hero-h1,
  .who-hero-title,
  .hero-content h1 {
    font-size: clamp(30px, 8vw, 52px);
  }
}

@media (max-width: 760px) {
  .nav {
    gap: 10px;
  }

  .nav a {
    width: 100%;
    text-align: center;
  }

  .services,
  .clients,
  .about-mission,
  .about-difference {
    border-radius: 16px;
  }

  .card,
  .client-logo,
  .timeline-detail,
  .feedback-panel,
  .feedback-proof,
  .feedback-feed-section,
  .admin-panel,
  .admin-data-panel,
  .admin-summary-card,
  .admin-record-card {
    border-radius: 14px;
  }
}

/* Final mobile safety layer: keep all pages readable and prevent horizontal overflow. */
.site-page {
  overflow-x: clip;
}

@media (max-width: 900px) {
  .about-main,
  .page-main,
  .feedback-shell {
    width: 94%;
    margin-left: auto;
    margin-right: auto;
  }

  .page-hero-banner {
    padding: 92px 16px 42px !important;
  }

  .page-hero-inner,
  .hero-content,
  .feedback-hero-copy,
  .feedback-proof {
    max-width: 100% !important;
  }

  .hero-content .subtitle,
  .page-hero-sub,
  .about-lead {
    max-width: 100% !important;
    font-size: 16px !important;
    line-height: 1.58 !important;
  }

  .home-page .hero {
    padding: 118px 14px 76px !important;
    min-height: 64vh !important;
  }

  .hero-buttons,
  .form-actions,
  .feedback-actions {
    flex-direction: column;
    align-items: stretch;
  }

  .hero-buttons .cta,
  .form-actions .cta,
  .feedback-actions .cta,
  .contact-form button[type="submit"] {
    width: 100%;
    max-width: 360px;
    justify-content: center;
  }

  .hero-trust-row {
    flex-direction: column;
    gap: 6px;
  }

  .hero-trust-sep {
    display: none;
  }

  .services,
  .clients,
  .about-mission,
  .about-difference,
  .timeline-detail,
  .feedback-panel,
  .feedback-proof,
  .feedback-feed-section,
  .admin-panel,
  .admin-data-panel {
    padding: 22px 16px !important;
  }

  .services-grid,
  .client-grid,
  .feedback-feed-grid,
  .feedback-highlights,
  .admin-summary-grid,
  .admin-sections-grid,
  .about-mission-grid {
    grid-template-columns: 1fr !important;
  }

  .ip-stats-row {
    flex-direction: column;
    max-width: 100%;
  }

  .ip-stat + .ip-stat::before {
    top: 0;
    left: 16%;
    right: 16%;
    bottom: auto;
    width: auto;
    height: 1px;
  }
}

@media (max-width: 520px) {
  .container,
  .about-main,
  .page-main,
  .feedback-shell,
  footer {
    width: 94%;
  }

  .site-header .container {
    align-items: center;
  }

  .logo {
    max-width: 128px;
    height: auto;
  }

  .home-page .hero {
    padding: 108px 10px 70px !important;
  }

  .hero-content h1,
  .page-hero-h1,
  .who-hero-title,
  .feedback-hero-copy h1 {
    font-size: clamp(28px, 8vw, 38px) !important;
    line-height: 1.16 !important;
  }

  .contact-form input,
  .contact-form textarea,
  .contact-form select,
  .feedback-form textarea {
    font-size: 16px;
  }
}

/* Device-specific mobile tuning: iPhone 16 Pro/Pro Max and common Android widths. */
@media (max-width: 430px) {
  :root {
    --mobile-edge-pad: max(12px, env(safe-area-inset-left));
    --mobile-edge-pad-right: max(12px, env(safe-area-inset-right));
  }

  body {
    padding-left: var(--mobile-edge-pad);
    padding-right: var(--mobile-edge-pad-right);
  }

  .site-header {
    padding-top: env(safe-area-inset-top);
  }

  .site-header .container,
  .container,
  .about-main,
  .page-main,
  .feedback-shell,
  footer {
    width: 100%;
  }

  .home-page .hero {
    min-height: 62svh;
    padding-top: clamp(104px, 18vh, 130px) !important;
    padding-bottom: 64px !important;
  }

  .page-hero-banner {
    padding-top: clamp(84px, 16vh, 108px) !important;
  }

  .hero-content h1,
  .page-hero-h1,
  .who-hero-title,
  .feedback-hero-copy h1 {
    font-size: clamp(27px, 7.5vw, 34px) !important;
    line-height: 1.14 !important;
    letter-spacing: -0.02em;
  }

  .hero-content .subtitle,
  .page-hero-sub,
  .about-lead,
  .services > p,
  .clients > p,
  .card p,
  .client-logo {
    font-size: 15px !important;
    line-height: 1.56 !important;
  }

  .nav a,
  .cta,
  .contact-form input,
  .contact-form textarea,
  .contact-form select,
  .rating-option span,
  .admin-toggle-btn {
    min-height: 46px;
  }

  #scrollTopBtn {
    right: calc(10px + env(safe-area-inset-right));
    bottom: calc(10px + env(safe-area-inset-bottom));
  }
}

/* iPhone 16 Pro portrait target width ~393px */
@media (min-width: 385px) and (max-width: 402px) {
  .hero-buttons .cta,
  .form-actions .cta,
  .feedback-actions .cta,
  .contact-form button[type="submit"] {
    max-width: 100%;
  }

  .hero-trust-item {
    font-size: 11px;
  }
}

/* iPhone 16 Pro Max portrait target width ~430px */
@media (min-width: 420px) and (max-width: 440px) {
  .hero-content {
    max-width: 96%;
  }

  .services-grid,
  .client-grid {
    gap: 14px;
  }
}

/* Android common portrait widths: 360/384/412 */
@media (max-width: 412px) {
  .nav {
    padding: 10px;
    gap: 8px;
  }

  .hero-content,
  .feedback-hero-copy,
  .feedback-proof,
  .admin-panel,
  .admin-data-panel {
    border-radius: 12px !important;
  }

  .feedback-panel,
  .feedback-proof,
  .feedback-feed-section,
  .admin-panel,
  .admin-data-panel,
  .services,
  .clients,
  .about-mission,
  .about-difference,
  .timeline-detail {
    padding: 18px 14px !important;
  }
}

@media (max-width: 360px) {
  .hero-content h1,
  .page-hero-h1,
  .who-hero-title,
  .feedback-hero-copy h1 {
    font-size: clamp(24px, 7vw, 30px) !important;
  }

  .home-hero-eyebrow,
  .page-hero-eyebrow,
  .feedback-eyebrow {
    letter-spacing: 0.1em;
  }

  .cta {
    padding: 11px 14px;
    font-size: 13px;
  }
}

/* Landscape phones: keep headers/content from crowding. */
@media (max-height: 500px) and (orientation: landscape) {
  .home-page .hero {
    min-height: 92svh;
    padding-top: 90px !important;
    padding-bottom: 38px !important;
  }

  .hero-trust-row {
    margin-top: 14px;
  }

  .page-hero-banner {
    padding-top: 72px !important;
    padding-bottom: 28px !important;
  }
}

/* Who We Are page: focused mobile polish for iPhone and Android phones. */
@media (max-width: 430px) {
  .who-page .page-hero-banner {
    padding-bottom: 30px !important;
  }

  .who-page .about-mission,
  .who-page .about-difference,
  .who-page .about-founder-panel,
  .who-page .about-focus-panel,
  .who-page .about-difference .card {
    padding: 16px !important;
  }

  .who-page .about-mission-grid {
    gap: 14px;
    margin-top: 16px;
  }

  .who-page .about-profile {
    grid-template-columns: 1fr !important;
    gap: 12px;
    text-align: left;
  }

  .who-page .about-profile-photo {
    width: min(74vw, 250px);
    max-width: 100%;
    margin: 0 auto;
    clip-path: none;
    border-radius: 12px;
    opacity: 1;
  }

  .who-page .about-profile-heading {
    flex-direction: column;
    align-items: flex-start;
    gap: 6px;
  }

  .who-page .about-profile-role {
    font-size: 11px;
    letter-spacing: 0.08em;
  }

  .who-page .about-profile-copy p,
  .who-page .about-focus-panel p,
  .who-page .about-difference .card p {
    font-size: 15px !important;
    line-height: 1.58 !important;
  }

  .who-page .who-focus-ctas .cta {
    width: 100%;
    max-width: 100%;
  }

  .who-page .ip-stat {
    padding: 16px 12px;
  }

  .who-page .ip-stat-num {
    font-size: 34px;
  }
}

  /* Homepage showcase upgrade: bold visual section with responsive cards. */
  .home-showcase {
    position: relative;
    width: min(1140px, 96%);
    margin: 34px auto 0;
    padding: 30px;
    border-radius: 24px;
    border: 1px solid rgba(115, 178, 228, 0.35);
    background:
      radial-gradient(circle at 12% 0%, rgba(42, 139, 255, 0.2), transparent 38%),
      radial-gradient(circle at 84% 20%, rgba(32, 205, 193, 0.16), transparent 42%),
      linear-gradient(160deg, rgba(14, 27, 44, 0.9), rgba(9, 17, 30, 0.92));
    overflow: hidden;
    box-shadow: 0 28px 65px rgba(2, 8, 20, 0.44);
  }

  .home-showcase-glow {
    position: absolute;
    inset: -30% auto auto -12%;
    width: min(360px, 62vw);
    height: min(360px, 62vw);
    border-radius: 50%;
    background: radial-gradient(circle, rgba(54, 149, 255, 0.2), rgba(54, 149, 255, 0));
    pointer-events: none;
  }

  .home-showcase-inner {
    position: relative;
    z-index: 1;
  }

  .home-showcase-eyebrow {
    margin: 0;
    text-transform: uppercase;
    letter-spacing: 0.12em;
    font-size: 12px;
    color: #8fd6ff;
    font-weight: 700;
  }

  .home-showcase h2 {
    margin: 10px 0 12px;
    font-size: clamp(26px, 3.5vw, 42px);
    line-height: 1.12;
    max-width: 16ch;
    color: #f3f9ff;
  }

  .home-showcase-sub {
    margin: 0;
    max-width: 65ch;
    color: rgba(223, 240, 255, 0.92);
    font-size: clamp(15px, 1.8vw, 18px);
    line-height: 1.6;
  }

  .home-showcase-grid {
    margin-top: 24px;
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 14px;
  }

  .home-showcase-card {
    position: relative;
    padding: 18px;
    border-radius: 16px;
    border: 1px solid rgba(122, 172, 216, 0.3);
    background: linear-gradient(170deg, rgba(23, 43, 70, 0.92), rgba(13, 23, 39, 0.92));
    box-shadow: inset 0 1px 0 rgba(199, 229, 255, 0.08);
    transform: translateY(20px);
    opacity: 0;
    transition: transform 0.45s ease, opacity 0.45s ease, border-color 0.25s ease, box-shadow 0.25s ease;
  }

  .home-showcase-card.is-visible {
    transform: translateY(0);
    opacity: 1;
  }

  .home-showcase-card:hover {
    border-color: rgba(151, 209, 255, 0.74);
    box-shadow: 0 16px 30px rgba(4, 12, 25, 0.46);
  }

  .showcase-kicker {
    margin: 0 0 10px;
    font-size: 11px;
    font-weight: 700;
    letter-spacing: 0.1em;
    text-transform: uppercase;
    color: #9dd7ff;
  }

  .home-showcase-card h3 {
    margin: 0;
    font-size: 22px;
    color: #f2f8ff;
  }

  .home-showcase-card p {
    margin: 10px 0 0;
    color: #d7e9fa;
    line-height: 1.55;
  }

  .showcase-stat {
    margin-top: 14px;
    display: inline-flex;
    padding: 7px 11px;
    border-radius: 999px;
    border: 1px solid rgba(147, 214, 255, 0.44);
    background: rgba(33, 84, 130, 0.34);
    color: #dff1ff;
    font-size: 12px;
    font-weight: 600;
  }

  .home-showcase-actions {
    margin-top: 20px;
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
  }

  /* Enhanced CTA button styling for main actions */
  .cta.home-cta-primary {
    background: linear-gradient(90deg, #1aa9da 0%, #36a9ff 100%);
    color: #fff;
    border: 1px solid rgba(147, 214, 255, 0.44);
    box-shadow: 0 8px 24px rgba(54, 149, 255, 0.18);
    font-weight: 700;
    letter-spacing: 0.04em;
    transition: background 0.22s, box-shadow 0.22s, transform 0.22s;
  }
  .cta.home-cta-primary:hover,
  .cta.home-cta-primary:focus {
    background: linear-gradient(90deg, #36a9ff 0%, #1aa9da 100%);
    box-shadow: 0 16px 32px rgba(54, 149, 255, 0.28);
    transform: translateY(-2px) scale(1.03);
  }

  /* Universal premium button styling */
  .cta,
  .cta.alt,
  .services-cta,
  button[type="submit"] {
    background: linear-gradient(90deg, #1aa9da 0%, #36a9ff 100%);
    color: #fff;
    border: 1px solid rgba(147, 214, 255, 0.44);
    box-shadow: 0 8px 24px rgba(54, 149, 255, 0.18);
    font-weight: 700;
    letter-spacing: 0.04em;
    transition: background 0.22s, box-shadow 0.22s, transform 0.22s;
  }
  .cta:hover,
  .cta:focus,
  .services-cta:hover,
  .services-cta:focus,
  button[type="submit"]:hover,
  button[type="submit"]:focus {
    background: linear-gradient(90deg, #36a9ff 0%, #1aa9da 100%);
    box-shadow: 0 16px 32px rgba(54, 149, 255, 0.28);
    transform: translateY(-2px) scale(1.03);
  }
  .cta.alt {
    background: linear-gradient(90deg, rgba(255,255,255,0.12) 0%, rgba(54,149,255,0.08) 100%);
    color: #d9e3f7;
    border: 1px solid rgba(147, 214, 255, 0.24);
    box-shadow: 0 4px 16px rgba(54, 149, 255, 0.12);
    font-weight: 600;
    letter-spacing: 0.03em;
  }
  .cta.alt:hover,
  .cta.alt:focus {
    background: linear-gradient(90deg, rgba(54,149,255,0.18) 0%, rgba(255,255,255,0.18) 100%);
    box-shadow: 0 8px 24px rgba(54, 149, 255, 0.18);
    transform: translateY(-1px) scale(1.02);
  }

  .cta.home-cta-alt {
    background: linear-gradient(90deg, rgba(255,255,255,0.12) 0%, rgba(54,149,255,0.08) 100%);
    color: #d9e3f7;
    border: 1px solid rgba(147, 214, 255, 0.24);
    box-shadow: 0 4px 16px rgba(54, 149, 255, 0.12);
    font-weight: 600;
    letter-spacing: 0.03em;
    transition: background 0.22s, box-shadow 0.22s, transform 0.22s;
  }
  .cta.home-cta-alt:hover,
  .cta.home-cta-alt:focus {
    background: linear-gradient(90deg, rgba(54,149,255,0.18) 0%, rgba(255,255,255,0.18) 100%);
    box-shadow: 0 8px 24px rgba(54, 149, 255, 0.18);
    transform: translateY(-1px) scale(1.02);
  }

  @media (max-width: 980px) {
    .home-showcase-grid {
      grid-template-columns: repeat(2, minmax(0, 1fr));
    }
  }

  @media (max-width: 700px) {
    .home-showcase {
      margin-top: 20px;
      padding: 22px 16px;
      border-radius: 18px;
    }

    .home-showcase h2 {
      max-width: 100%;
    }

    .home-showcase-grid {
      grid-template-columns: 1fr;
    }

    .home-showcase-actions .cta {
      width: 100%;
    }
  }

  @media (prefers-reduced-motion: reduce) {
    .home-showcase-card {
      transition: none;
      transform: none;
      opacity: 1;
    }
  }

/* --- Operator-first differentiation blocks --- */
.operator-signature,
.sprint-framework,
.operator-principles,
.service-architecture,
.impact-benchmarks,
.board-artifacts {
  width: min(1140px, 96%);
  margin: 26px auto;
  padding: 32px;
  border-radius: 18px;
  border: 1px solid rgba(120, 193, 239, 0.25);
  background:
    radial-gradient(circle at 92% 6%, rgba(121, 201, 243, 0.14), transparent 38%),
    linear-gradient(170deg, rgba(16, 31, 49, 0.95), rgba(11, 21, 36, 0.94));
  box-shadow: 0 14px 34px rgba(2, 12, 24, 0.34);
}

.operator-signature h2,
.sprint-framework h2,
.operator-principles h2,
.service-architecture h3,
.impact-benchmarks h3,
.board-artifacts h3 {
  margin: 0 0 12px;
  color: #eef8ff;
  font-size: clamp(25px, 2.8vw, 36px);
  line-height: 1.15;
}

.operator-kicker {
  margin: 0 0 10px;
  font-size: 12px;
  text-transform: uppercase;
  letter-spacing: 0.16em;
  color: #86d8ff;
  font-weight: 700;
}

.operator-intro {
  margin: 0;
  color: #b4cde1;
  max-width: 68ch;
  font-size: 16px;
  line-height: 1.64;
}

.operator-grid {
  margin-top: 18px;
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 14px;
}

.operator-grid article,
.architecture-grid article {
  padding: 16px;
  border-radius: 14px;
  border: 1px solid rgba(132, 185, 226, 0.28);
  background: linear-gradient(165deg, rgba(26, 45, 67, 0.88), rgba(18, 32, 49, 0.86));
}

.operator-grid h3,
.architecture-grid h4 {
  margin: 0 0 6px;
  color: #e8f4ff;
  font-size: 19px;
}

.operator-grid p,
.architecture-grid p,
.sprint-step p,
.benchmark-row span,
.board-artifacts li {
  margin: 0;
  color: #9cb8cf;
  line-height: 1.58;
  font-size: 15px;
}

.sprint-track {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 12px;
}

.sprint-step {
  position: relative;
  padding: 16px;
  border-radius: 14px;
  border: 1px solid rgba(127, 191, 237, 0.25);
  background: rgba(19, 35, 54, 0.76);
}

.sprint-step span {
  display: inline-flex;
  width: 34px;
  height: 34px;
  align-items: center;
  justify-content: center;
  border-radius: 999px;
  border: 1px solid rgba(136, 219, 255, 0.45);
  color: #8fdfff;
  font-weight: 700;
  margin-bottom: 8px;
}

.sprint-step strong {
  display: block;
  color: #e8f5ff;
  margin-bottom: 6px;
}

.architecture-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 12px;
}

.benchmark-row {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px;
}

.benchmark-row span {
  display: block;
  padding: 12px 14px;
  border-radius: 12px;
  border: 1px solid rgba(131, 198, 241, 0.24);
  background: rgba(20, 37, 58, 0.82);
}

.board-artifacts ul {
  margin: 12px 0 0;
  padding-left: 18px;
  display: grid;
  gap: 8px;
}

@media (max-width: 900px) {
  .operator-signature,
  .sprint-framework,
  .operator-principles,
  .service-architecture,
  .impact-benchmarks,
  .board-artifacts {
    padding: 22px;
  }

  .operator-grid,
  .sprint-track,
  .architecture-grid,
  .benchmark-row {
    grid-template-columns: 1fr;
  }
}

/* Recurring brand motif: Diagnose -> Decide -> Deliver */
.nassen-method-strip {
  width: min(1140px, 96%);
  margin: 16px auto 10px;
  padding: 10px 12px;
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  justify-content: center;
}

.nassen-method-strip .method-step {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 124px;
  padding: 8px 12px;
  border-radius: 999px;
  border: 1px solid rgba(128, 210, 247, 0.3);
  background: linear-gradient(180deg, rgba(20, 41, 63, 0.9), rgba(14, 30, 46, 0.9));
  color: #9ed9f5;
  font-size: 12px;
  font-weight: 700;
  letter-spacing: 0.1em;
  text-transform: uppercase;
}

.outcome-snapshots {
  margin-top: 16px;
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 12px;
}

.outcome-snapshots article {
  padding: 14px;
  border-radius: 12px;
  border: 1px solid rgba(130, 198, 238, 0.28);
  background: linear-gradient(165deg, rgba(22, 41, 62, 0.9), rgba(16, 30, 46, 0.9));
}

.outcome-snapshots strong {
  display: block;
  margin-bottom: 4px;
  color: #dff4ff;
  font-size: clamp(24px, 2.4vw, 34px);
  line-height: 1;
}

.outcome-snapshots span {
  color: #9fbfd6;
  font-size: 14px;
  line-height: 1.45;
}

/* Tighten readability without changing actual copy */
body.site-page.about-page .page-hero-sub,
body.site-page.about-page .about-lead,
body.site-page.about-page .services > p,
body.site-page.about-page .clients > p,
body.site-page.about-page .card p,
body.site-page.about-page .timeline-detail p {
  max-width: 64ch;
  font-size: clamp(14px, 1.15vw, 16px);
  line-height: 1.55;
}

@media (max-width: 900px) {
  .outcome-snapshots {
    grid-template-columns: 1fr;
  }
}

/* Global card hover consistency: mirror the Value page pop effect site-wide */
.site-page .card,
.site-page .client-logo {
  transition: transform 0.32s cubic-bezier(0.34, 1.56, 0.64, 1), border-color 0.32s ease, box-shadow 0.32s ease !important;
}

.site-page .card:hover,
.site-page .client-logo:hover {
  transform: translateY(-8px) !important;
  border-color: rgba(103, 166, 217, 0.42) !important;
  box-shadow: 0 20px 56px rgba(0, 0, 0, 0.36), 0 0 24px rgba(103, 166, 217, 0.12), inset 0 1px 0 rgba(255, 255, 255, 0.12) !important;
}

/* Apply the same pop treatment across all content surfaces */
:where(
  .site-page .timeline-detail,
  .site-page .about-founder-panel,
  .site-page .about-focus-panel,
  .site-page .about-detail,
  .site-page .operator-signature,
  .site-page .operator-principles,
  .site-page .sprint-framework,
  .site-page .service-architecture,
  .site-page .impact-benchmarks,
  .site-page .board-artifacts,
  .site-page .operator-grid article,
  .site-page .architecture-grid article,
  .site-page .sprint-step,
  .site-page .benchmark-row span,
  .site-page .outcome-snapshots article,
  .site-page .stat-card,
  .site-page .capability-tile,
  .site-page .testimonial-card
) {
  transition: transform 0.32s cubic-bezier(0.34, 1.56, 0.64, 1), border-color 0.32s ease, box-shadow 0.32s ease !important;
}

:where(
  .site-page .timeline-detail,
  .site-page .about-founder-panel,
  .site-page .about-focus-panel,
  .site-page .about-detail,
  .site-page .operator-signature,
  .site-page .operator-principles,
  .site-page .sprint-framework,
  .site-page .service-architecture,
  .site-page .impact-benchmarks,
  .site-page .board-artifacts,
  .site-page .operator-grid article,
  .site-page .architecture-grid article,
  .site-page .sprint-step,
  .site-page .benchmark-row span,
  .site-page .outcome-snapshots article,
  .site-page .stat-card,
  .site-page .capability-tile,
  .site-page .testimonial-card
):hover {
  transform: translateY(-8px) !important;
  border-color: rgba(103, 166, 217, 0.42) !important;
  box-shadow: 0 20px 56px rgba(0, 0, 0, 0.36), 0 0 24px rgba(103, 166, 217, 0.12), inset 0 1px 0 rgba(255, 255, 255, 0.12) !important;
}

@media (max-width: 900px) {
  .site-page .card:hover,
  .site-page .client-logo:hover,
  :where(
    .site-page .timeline-detail,
    .site-page .about-founder-panel,
    .site-page .about-focus-panel,
    .site-page .about-detail,
    .site-page .operator-signature,
    .site-page .operator-principles,
    .site-page .sprint-framework,
    .site-page .service-architecture,
    .site-page .impact-benchmarks,
    .site-page .board-artifacts,
    .site-page .operator-grid article,
    .site-page .architecture-grid article,
    .site-page .sprint-step,
    .site-page .benchmark-row span,
    .site-page .outcome-snapshots article,
    .site-page .stat-card,
    .site-page .capability-tile,
    .site-page .testimonial-card
  ):hover {
    transform: translateY(-4px) !important;
  }
}

/* Global breathing room: improve visual rhythm across all pages */
.site-page .about-main {
  display: flex;
  flex-direction: column;
  gap: 28px;
}

.site-page .about-main > section,
.site-page .operator-signature,
.site-page .operator-principles,
.site-page .sprint-framework,
.site-page .service-architecture,
.site-page .impact-benchmarks,
.site-page .board-artifacts {
  display: flex;
  flex-direction: column;
  gap: 18px;
}

.site-page .services-grid,
.site-page .client-grid,
.site-page .operator-grid,
.site-page .architecture-grid,
.site-page .sprint-track,
.site-page .benchmark-row,
.site-page .outcome-snapshots {
  gap: 18px;
}

.site-page .about-main p,
.site-page .about-main h2,
.site-page .about-main h3,
.site-page .about-main h4 {
  margin-top: 0;
  margin-bottom: 0;
}

.site-page .page-hero-banner + .nassen-method-strip {
  margin-top: 22px;
  margin-bottom: 18px;
}

@media (max-width: 900px) {
  .site-page .about-main {
    gap: 20px;
  }

  .site-page .about-main > section,
  .site-page .operator-signature,
  .site-page .operator-principles,
  .site-page .sprint-framework,
  .site-page .service-architecture,
  .site-page .impact-benchmarks,
  .site-page .board-artifacts {
    gap: 14px;
  }

  .site-page .services-grid,
  .site-page .client-grid,
  .site-page .operator-grid,
  .site-page .architecture-grid,
  .site-page .sprint-track,
  .site-page .benchmark-row,
  .site-page .outcome-snapshots {
    gap: 14px;
  }
}

.content-break-title {
  margin: 4px 0 2px;
  font-size: clamp(18px, 1.9vw, 26px);
  line-height: 1.2;
  color: #eaf4ff;
  letter-spacing: -0.01em;
  padding-left: 2px;
}

.value-page #value-section {
  gap: 22px;
}

.value-page .content-break-title {
  margin-top: 8px;
}

.value-page .value-final-cta {
  margin-top: 6px;
}

.value-page .value-final-cta .cta {
  margin-top: 8px;
}

.services-page #what-we-do-section {
  gap: 22px;
}

.services-page .content-break-title {
  margin-top: 8px;
}

.services-page .services-final-cta {
  margin-top: 6px;
}

.services-page .services-final-cta .cta {
  margin-top: 8px;
}

/* Header refinement: three-zone desktop layout + mobile-first clarity */
.site-header .container {
  display: flex;
  align-items: center;
  gap: 14px;
}

.nav {
  margin-left: clamp(14px, 2vw, 30px);
}

.home-page .hero {
  min-height: calc(74vh - 56px);
  padding-top: 132px;
  padding-bottom: 44px;
}

.home-page .hero-content {
  max-width: 700px;
}

.home-page .hero-content h1 {
  font-size: clamp(32px, 4.4vw, 54px);
}

.home-page .subtitle {
  max-width: 58ch;
  margin-left: auto;
  margin-right: auto;
  font-size: clamp(15px, 1.45vw, 18px);
}

.home-page .hero-buttons {
  margin-top: 14px;
}

.home-page .hero-trust-row {
  margin-top: 12px;
}

.home-page footer {
  margin-top: -6px;
  padding: 34px 0 42px;
}

.home-page #globe3d-wrapper {
  margin: 10px auto 10px;
}

.home-page .footer-bottom {
  margin-top: 8px;
  padding-top: 6px;
}

.home-page .footer-social {
  margin: 4px 0 10px;
}

@media (max-width: 900px) {
  .site-header .container {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 8px;
  }

  .nav {
    width: 100%;
    border-radius: 18px;
    border: 1px solid rgba(156, 214, 247, 0.34);
    background: linear-gradient(180deg, rgba(9, 20, 33, 0.98), rgba(8, 17, 29, 0.98));
    box-shadow: 0 22px 44px rgba(2, 10, 18, 0.52), inset 0 1px 0 rgba(219, 241, 255, 0.1);
    padding: 12px;
  }

  .nav a {
    min-height: 48px;
    font-size: 14px;
    letter-spacing: 0.02em;
    border-color: rgba(133, 194, 230, 0.34);
    background: linear-gradient(165deg, rgba(34, 60, 86, 0.62), rgba(23, 44, 66, 0.58));
  }

  .nav a.is-active,
  .nav a[aria-current='page'] {
    border-color: rgba(196, 235, 255, 0.86);
    background: linear-gradient(165deg, rgba(55, 137, 196, 0.78), rgba(36, 104, 160, 0.74));
    box-shadow: 0 10px 20px rgba(8, 28, 47, 0.42);
  }

  .nav-toggle {
    width: 44px;
    height: 44px;
  }

  .home-page .hero {
    min-height: calc(64vh - 56px);
    padding-top: 110px;
    padding-bottom: 40px;
  }

  .home-page footer {
    margin-top: -4px;
    padding: 28px 0 36px;
  }

  .home-page #globe3d-wrapper {
    margin: 8px auto 8px;
  }

  .home-page .hero-content h1 {
    font-size: clamp(28px, 7.4vw, 44px);
  }

  .home-page .subtitle {
    font-size: 15px;
  }
}

/* Premium navbar refresh: stronger hierarchy, clearer active state, better mobile ergonomics */
.site-header {
  top: max(0px, env(safe-area-inset-top));
}

.site-header .container {
  align-items: center;
  min-height: 64px;
}

.site-brand {
  position: relative;
}

.site-brand::after {
  content: '';
  position: absolute;
  inset: -6px -10px;
  border-radius: 14px;
  background: radial-gradient(circle at 25% 20%, rgba(120, 201, 255, 0.16), rgba(120, 201, 255, 0));
  pointer-events: none;
  opacity: 0.9;
}

.nav {
  margin-left: clamp(14px, 2vw, 30px);
  position: relative;
  isolation: isolate;
  padding: 8px;
  gap: 6px;
  border-radius: 999px;
  border: 1px solid rgba(136, 197, 235, 0.28);
  background: linear-gradient(120deg, rgba(16, 34, 53, 0.9), rgba(11, 25, 40, 0.92));
  box-shadow: inset 0 1px 0 rgba(222, 241, 255, 0.08), 0 12px 28px rgba(2, 9, 18, 0.34);
}

.nav::before {
  content: '';
  position: absolute;
  inset: 1px;
  border-radius: inherit;
  background: linear-gradient(90deg, rgba(154, 223, 255, 0.12), rgba(154, 223, 255, 0));
  pointer-events: none;
  z-index: -1;
}

.nav a {
  position: relative;
  overflow: hidden;
  font-weight: 700;
  letter-spacing: 0.02em;
  padding: 10px 17px;
  border-radius: 999px;
  border: 1px solid transparent;
  color: #e8f4ff;
  background: transparent;
  transition: transform 0.22s ease, background-color 0.22s ease, border-color 0.22s ease, box-shadow 0.22s ease, color 0.22s ease;
}

.nav a::before {
  content: '';
  position: absolute;
  inset: 0;
  border-radius: inherit;
  background: radial-gradient(circle at 18% 22%, rgba(142, 225, 255, 0.2), rgba(142, 225, 255, 0));
  opacity: 0;
  transition: opacity 0.22s ease;
  pointer-events: none;
}

.nav a::after {
  left: 15px;
  right: 15px;
  bottom: 6px;
}

.nav a:hover,
.nav a:focus {
  color: #f5fbff;
  border-color: rgba(136, 197, 235, 0.3);
  background: rgba(68, 125, 168, 0.14);
  transform: translateY(-1px);
}

.nav a:hover::before,
.nav a:focus::before {
  opacity: 1;
}

.nav a.is-active,
.nav a[aria-current='page'] {
  color: #ffffff;
  border-color: rgba(170, 224, 255, 0.72);
  background: linear-gradient(140deg, rgba(45, 124, 176, 0.62), rgba(27, 85, 139, 0.58));
  box-shadow: 0 10px 20px rgba(9, 28, 47, 0.42), inset 0 1px 0 rgba(224, 243, 255, 0.22);
}

.nav a.is-active::after,
.nav a[aria-current='page']::after {
  transform: scaleX(1);
}

.nav-toggle {
  width: 42px;
  height: 42px;
  font-size: 24px;
  border: 1px solid rgba(140, 201, 238, 0.3);
  border-radius: 12px;
  background: rgba(12, 28, 44, 0.88);
  color: #e7f5ff;
  box-shadow: 0 8px 18px rgba(2, 10, 19, 0.36);
}

.nav-toggle:hover {
  opacity: 1;
  transform: translateY(-1px);
  border-color: rgba(169, 223, 255, 0.62);
}

.nav-toggle.is-open {
  background: rgba(35, 97, 147, 0.92);
  color: #ffffff;
}

body.has-scrolled .site-header {
  background: rgba(12, 29, 46, 0.92);
  border-bottom-color: rgba(142, 194, 228, 0.26);
  box-shadow: 0 18px 36px rgba(3, 12, 22, 0.42);
}

@media (max-width: 900px) {
  .site-header .container {
    min-height: 56px;
    align-items: center;
  }

  .nav {
    margin-left: 0;
    margin-top: 10px;
    width: 100%;
    border-radius: 18px;
    padding: 10px;
    gap: 8px;
    background: linear-gradient(180deg, rgba(11, 23, 37, 0.96), rgba(8, 18, 30, 0.96));
  }

  .nav::before {
    display: none;
  }

  .nav a {
    width: 100%;
    text-align: left;
    padding: 12px 14px;
    border-radius: 12px;
    background: rgba(31, 56, 82, 0.52);
    border-color: rgba(129, 187, 226, 0.24);
  }

  .nav a::after {
    left: 14px;
    right: auto;
    width: 36%;
    bottom: 7px;
  }

  .nav a:hover,
  .nav a:focus {
    transform: translateX(2px);
  }

  .nav a.is-active,
  .nav a[aria-current='page'] {
    background: linear-gradient(140deg, rgba(51, 124, 176, 0.72), rgba(31, 96, 152, 0.68));
    border-color: rgba(174, 228, 255, 0.76);
  }
}

/* Who We Are spacing fix: tighten hero block while preserving readability. */
.who-page .page-hero-banner {
  padding: 88px 34px 36px;
}

.who-page .page-hero-eyebrow {
  margin-bottom: 10px;
}

.who-page .who-hero-title {
  margin-bottom: 0;
  line-height: 1.02;
}

.who-page .page-hero-accent-line {
  margin: 10px auto 12px;
}

.who-page .page-hero-sub {
  max-width: 52ch;
  line-height: 1.55;
}

@media (max-width: 900px) {
  .who-page .page-hero-banner {
    padding: 98px 16px 28px !important;
  }
}

/* Readability pass: keep content, improve legibility in Who We Are hero. */
.who-page .page-hero-banner {
  background:
    linear-gradient(180deg, rgba(3, 10, 18, 0.82), rgba(4, 14, 24, 0.88)),
    linear-gradient(145deg, #050d16 0%, #0a1620 50%, #080f1a 100%);
}

.who-page .page-hero-eyebrow {
  color: #9fd8ff;
  font-size: 12px;
  letter-spacing: 0.14em;
  text-shadow: 0 1px 2px rgba(2, 8, 14, 0.6);
}

.who-page .who-hero-title {
  color: #f1f8ff;
  font-size: clamp(30px, 4.5vw, 54px);
  line-height: 1.1;
  text-shadow: 0 10px 24px rgba(1, 8, 14, 0.55);
}

.who-page .page-hero-sub {
  color: #b7d4ea;
  font-size: clamp(14px, 1.6vw, 16px);
  line-height: 1.65;
  text-shadow: 0 1px 1px rgba(2, 8, 14, 0.45);
}

@media (max-width: 900px) {
  .who-page .page-hero-eyebrow {
    font-size: 11px;
    letter-spacing: 0.12em;
  }

  .who-page .who-hero-title {
    font-size: clamp(28px, 8vw, 40px);
    line-height: 1.08;
  }

  .who-page .page-hero-sub {
    font-size: 16px;
    line-height: 1.62;
  }
}

/* Final all-pages polish: tighter rhythm + cleaner section density. */
body.site-page.about-page .page-hero-banner {
  padding: 84px 34px 48px;
}

body.site-page.about-page .page-hero-inner {
  max-width: 900px;
}

body.site-page.about-page .page-hero-sub {
  max-width: 58ch;
}

.who-page .page-hero-banner {
  padding: 88px 34px 38px;
}

.nassen-method-strip {
  margin: 12px auto 8px;
  padding: 8px 10px;
}

body.site-page.about-page .about-main.about-ciso-inspired {
  width: min(1120px, 93%);
  margin-top: 70px;
  gap: 22px;
}

body.site-page.about-page .about-main.about-ciso-inspired > section {
  gap: 14px;
}

body.site-page.about-page .services,
body.site-page.about-page .clients,
body.site-page.about-page .about-mission,
body.site-page.about-page .about-difference,
body.site-page.about-page .operator-signature,
body.site-page.about-page .operator-principles,
body.site-page.about-page .service-architecture,
body.site-page.about-page .sprint-framework,
body.site-page.about-page .impact-benchmarks,
body.site-page.about-page .board-artifacts {
  padding: 28px;
  margin-top: 14px;
}

body.site-page.about-page .services-grid,
body.site-page.about-page .client-grid,
body.site-page.about-page .operator-grid,
body.site-page.about-page .architecture-grid,
body.site-page.about-page .sprint-track,
body.site-page.about-page .benchmark-row,
body.site-page.about-page .outcome-snapshots {
  gap: 14px;
}

body.site-page.about-page .timeline-detail,
body.site-page.about-page .about-detail {
  margin-top: 16px;
  padding: 22px 24px;
}

body.site-page:not(.home-page) footer {
  margin-top: 48px;
  padding: 48px 0 56px;
}

@media (max-width: 900px) {
  body.site-page.about-page .page-hero-banner {
    padding: 92px 16px 36px !important;
  }

  .who-page .page-hero-banner {
    padding: 98px 16px 32px !important;
  }

  body.site-page.about-page .about-main.about-ciso-inspired {
    width: 94%;
    margin-top: 58px;
    gap: 16px;
  }

  body.site-page.about-page .services,
  body.site-page.about-page .clients,
  body.site-page.about-page .about-mission,
  body.site-page.about-page .about-difference,
  body.site-page.about-page .operator-signature,
  body.site-page.about-page .operator-principles,
  body.site-page.about-page .service-architecture,
  body.site-page.about-page .sprint-framework,
  body.site-page.about-page .impact-benchmarks,
  body.site-page.about-page .board-artifacts {
    padding: 20px !important;
    margin-top: 10px;
  }

  body.site-page.about-page .timeline-detail,
  body.site-page.about-page .about-detail {
    padding: 18px 16px !important;
    margin-top: 12px;
  }

  body.site-page:not(.home-page) footer {
    margin-top: 34px;
    padding: 36px 0 40px;
  }
}

/* Final typography pass: consistent type hierarchy across all interior pages. */
body.site-page.about-page .page-hero-h1,
body.site-page.about-page .who-hero-title {
  font-size: clamp(34px, 4.5vw, 56px);
  line-height: 1.08;
  letter-spacing: -0.02em;
}

body.site-page.about-page .page-hero-sub,
body.site-page.about-page .about-lead,
body.site-page.about-page .services > p,
body.site-page.about-page .clients > p,
body.site-page.about-page .timeline-detail p,
body.site-page.about-page .about-detail p {
  font-size: clamp(15px, 1.2vw, 17px);
  line-height: 1.62;
}

body.site-page.about-page .content-break-title,
body.site-page.about-page .services > h2,
body.site-page.about-page .clients > h2,
body.site-page.about-page .operator-signature h2,
body.site-page.about-page .operator-principles h2,
body.site-page.about-page .sprint-framework h2,
body.site-page.about-page .service-architecture h3,
body.site-page.about-page .impact-benchmarks h3,
body.site-page.about-page .board-artifacts h3 {
  font-size: clamp(24px, 2.3vw, 34px);
  line-height: 1.2;
  letter-spacing: -0.012em;
}

body.site-page.about-page .card h3,
body.site-page.about-page .timeline-detail h3,
body.site-page.about-page .about-detail h3,
body.site-page.about-page .operator-grid h3,
body.site-page.about-page .architecture-grid h4 {
  font-size: clamp(19px, 1.5vw, 24px);
  line-height: 1.3;
}

body.site-page.about-page .card p,
body.site-page.about-page .client-logo,
body.site-page.about-page .operator-grid p,
body.site-page.about-page .architecture-grid p,
body.site-page.about-page .sprint-step p,
body.site-page.about-page .benchmark-row span,
body.site-page.about-page .board-artifacts li {
  font-size: clamp(14px, 1.05vw, 16px);
  line-height: 1.58;
}

@media (max-width: 900px) {
  body.site-page.about-page .page-hero-h1,
  body.site-page.about-page .who-hero-title {
    font-size: clamp(30px, 7.4vw, 44px);
    line-height: 1.12;
  }

  body.site-page.about-page .page-hero-sub,
  body.site-page.about-page .about-lead,
  body.site-page.about-page .services > p,
  body.site-page.about-page .clients > p,
  body.site-page.about-page .timeline-detail p,
  body.site-page.about-page .about-detail p {
    font-size: 15px;
    line-height: 1.58;
  }

  body.site-page.about-page .content-break-title,
  body.site-page.about-page .services > h2,
  body.site-page.about-page .clients > h2,
  body.site-page.about-page .operator-signature h2,
  body.site-page.about-page .operator-principles h2,
  body.site-page.about-page .sprint-framework h2,
  body.site-page.about-page .service-architecture h3,
  body.site-page.about-page .impact-benchmarks h3,
  body.site-page.about-page .board-artifacts h3 {
    font-size: clamp(22px, 5.2vw, 30px);
  }

  body.site-page.about-page .card h3,
  body.site-page.about-page .timeline-detail h3,
  body.site-page.about-page .about-detail h3,
  body.site-page.about-page .operator-grid h3,
  body.site-page.about-page .architecture-grid h4 {
    font-size: clamp(18px, 4.3vw, 24px);
  }
}

/* Final control polish: harmonize button/icon sizing with refined type scale. */
body.site-page .cta {
  min-height: 46px;
  padding: 11px 22px;
  font-size: 14px;
  line-height: 1.2;
  letter-spacing: 0.02em;
}

.home-page .hero-buttons {
  gap: 10px;
}

.home-page .hero-buttons .cta {
  min-width: 198px;
}

.who-page .who-focus-ctas .cta,
.services-page .services-final-cta .cta,
.value-page .value-final-cta .cta,
body.site-page.about-page .timeline-detail .cta {
  min-height: 46px;
}

.nav-toggle {
  width: 44px;
  height: 44px;
  font-size: 23px;
}

.footer-social .nav-linkedin {
  width: 52px;
  height: 52px;
  border-radius: 13px;
}

.footer-social .nav-linkedin-icon {
  width: 28px;
  height: 28px;
}

.svc-card-icon {
  width: 42px;
  height: 42px;
}

.svc-card-icon svg {
  width: 18px;
  height: 18px;
}

.resource-badge {
  padding: 6px 10px;
  font-size: 11px;
  letter-spacing: 0.07em;
}

@media (max-width: 900px) {
  body.site-page .cta {
    min-height: 44px;
    padding: 10px 18px;
    font-size: 13px;
  }

  .home-page .hero-buttons {
    gap: 8px;
  }

  .home-page .hero-buttons .cta {
    min-width: 0;
  }

  .footer-social .nav-linkedin {
    width: 48px;
    height: 48px;
  }

  .footer-social .nav-linkedin-icon {
    width: 24px;
    height: 24px;
  }

  .svc-card-icon {
    width: 38px;
    height: 38px;
  }

  .resource-badge {
    font-size: 10px;
    letter-spacing: 0.06em;
  }
}


