:root { --ghds-primary:#06284a; --ghds-accent:#1fb6ff; --ghds-gold:#d6a84f; --ghds-dark:#07111f; }

.ghds, .ghds * { box-sizing:border-box; }
.ghds { --ghds-soft:#f3f7fb; --ghds-line:rgba(7,17,31,.12); --ghds-muted:#5f6e82; --ghds-radius:clamp(18px,2.4vw,34px); --ghds-shadow:0 24px 80px rgba(7,17,31,.13); --ghds-h1-size:clamp(1.70rem,3.10vw,2.75rem); --ghds-h2-size:clamp(1.35rem,2.35vw,2.25rem); --ghds-h3-size:clamp(1.02rem,1.25vw,1.32rem); --ghds-body-size:clamp(.95rem,1vw,1.08rem); --ghds-lede-size:clamp(1rem,1.18vw,1.18rem); --ghds-section-y:clamp(48px,6.2vw,86px); font-family:inherit; color:var(--ghds-dark); position:relative; overflow:hidden; }
.ghds a { text-decoration:none; }
.ghds-shell { width:min(100% - clamp(28px,5vw,72px), 1180px); margin-inline:auto; position:relative; z-index:1; }
.ghds h1, .ghds h2, .ghds h3 { color:inherit; margin:0 0 .65em; line-height:.98; letter-spacing:-.038em; }
.ghds h1 { font-size:var(--ghds-h1-size) !important; max-width:14ch; }
.ghds h2 { font-size:var(--ghds-h2-size) !important; max-width:15ch; }
.ghds h3 { font-size:var(--ghds-h3-size) !important; line-height:1.14; letter-spacing:-.022em; }
.ghds p { font-size:var(--ghds-body-size) !important; line-height:1.72; margin:0 0 1rem; color:var(--ghds-muted); }
.ghds ul { margin:0; padding-left:1.1rem; }
.ghds li { margin:.55rem 0; line-height:1.6; color:var(--ghds-muted); }
.ghds-eyebrow { display:inline-flex; align-items:center; gap:.55rem; color:var(--ghds-gold) !important; text-transform:uppercase; font-weight:900; letter-spacing:.13em; font-size:clamp(.75rem,.9vw,.85rem) !important; margin-bottom:1rem !important; }
.ghds-eyebrow:before { content:""; width:2.2rem; height:2px; background:currentColor; display:inline-block; }
.ghds-lede { font-size:var(--ghds-lede-size) !important; max-width:780px; color:rgba(255,255,255,.78) !important; }
.ghds-section-head { max-width:850px; margin-bottom:clamp(30px,5vw,64px); }
.ghds-section-head p:last-child { max-width:760px; }
.ghds-btn { display:inline-flex; align-items:center; justify-content:center; min-height:clamp(46px,5vw,58px); border-radius:999px; padding:.85rem clamp(1.1rem,2.1vw,1.55rem); font-weight:900; line-height:1; transition:transform .2s ease, box-shadow .2s ease, background .2s ease; border:1px solid transparent; cursor:pointer; }
.ghds-btn:hover { transform:translateY(-2px); }
.ghds-btn-primary { background:linear-gradient(135deg,var(--ghds-accent),#80d7ff); color:var(--ghds-dark) !important; box-shadow:0 12px 30px rgba(31,182,255,.27); }
.ghds-btn-ghost { color:#fff !important; border-color:rgba(255,255,255,.28); background:rgba(255,255,255,.08); }
.ghds-btn-light { color:var(--ghds-primary) !important; background:#fff; }
.ghds-actions { display:flex; gap:.8rem; flex-wrap:wrap; margin-top:clamp(24px,3vw,36px); }

.ghds-hero { padding:clamp(72px,9vw,124px) 0; color:#fff; background:radial-gradient(circle at top right, rgba(31,182,255,.38), transparent 32%), linear-gradient(135deg,var(--ghds-primary),var(--ghds-dark)); }
.ghds-hero:after { content:""; position:absolute; inset:auto -10% -35% 45%; height:62%; border-radius:50%; background:rgba(214,168,79,.13); filter:blur(60px); }
.ghds-hero-grid { display:grid; grid-template-columns:1.05fr .95fr; gap:clamp(28px,5vw,76px); align-items:center; }
.ghds-command-card { min-height:clamp(390px,42vw,560px); border:1px solid rgba(255,255,255,.15); border-radius:calc(var(--ghds-radius) * 1.2); padding:clamp(24px,4vw,48px); background:linear-gradient(180deg,rgba(255,255,255,.12),rgba(255,255,255,.04)); box-shadow:var(--ghds-shadow); overflow:hidden; position:relative; }
.ghds-radar { position:absolute; width:82%; aspect-ratio:1; border-radius:50%; right:-19%; top:-18%; background:radial-gradient(circle, rgba(31,182,255,.42), rgba(31,182,255,.06) 57%, transparent 70%); }
.ghds-radar span { position:absolute; border-radius:50%; border:1px solid rgba(255,255,255,.24); inset:15%; }
.ghds-radar span:nth-child(2) { inset:31%; }
.ghds-radar span:nth-child(3) { inset:46%; background:var(--ghds-accent); box-shadow:0 0 32px var(--ghds-accent); }
.ghds-metric-stack { position:relative; z-index:1; }
.ghds-metric-stack strong { font-size:clamp(3rem,6vw,5rem); line-height:.8; letter-spacing:-.08em; color:#fff; }
.ghds-metric-stack span { display:block; color:rgba(255,255,255,.72); font-weight:800; margin-top:.8rem; }
.ghds-signal-list { display:flex; flex-wrap:wrap; gap:.5rem; position:absolute; left:clamp(24px,4vw,48px); right:clamp(24px,4vw,48px); bottom:clamp(24px,4vw,48px); z-index:1; }
.ghds-signal-list span { font-size:.82rem; font-weight:900; border-radius:999px; padding:.48rem .72rem; background:rgba(255,255,255,.13); border:1px solid rgba(255,255,255,.16); color:#fff; }

.ghds-stats { padding:clamp(28px,4vw,54px) 0; background:var(--ghds-soft); }
.ghds-stats-grid { display:grid; grid-template-columns:repeat(4,1fr); gap:clamp(14px,2vw,24px); }
.ghds-stat { padding:clamp(18px,3vw,32px); border-radius:calc(var(--ghds-radius) * .8); background:#fff; box-shadow:0 12px 36px rgba(7,17,31,.07); }
.ghds-stat strong { display:block; font-size:clamp(1.85rem,3.4vw,3.25rem); line-height:.95; letter-spacing:-.06em; color:var(--ghds-primary); }
.ghds-stat span { color:var(--ghds-muted); font-weight:800; }

.ghds-services, .ghds-projects, .ghds-sector-matrix, .ghds-process-section, .ghds-partners, .ghds-faq-section, .ghds-solution-detail-section { padding:var(--ghds-section-y) 0; }
.ghds-card-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:clamp(16px,2vw,28px); }
.ghds-cols-2 { grid-template-columns:repeat(2,minmax(0,1fr)); }
.ghds-cols-4 { grid-template-columns:repeat(4,minmax(0,1fr)); }
.ghds-service-card { min-height:100%; padding:clamp(22px,3vw,34px); border-radius:var(--ghds-radius); background:#fff; border:1px solid var(--ghds-line); box-shadow:0 16px 60px rgba(7,17,31,.06); transition:transform .22s ease, border-color .22s ease, box-shadow .22s ease; overflow:hidden; }
.ghds-service-card:hover { transform:translateY(-6px); border-color:rgba(31,182,255,.45); box-shadow:0 24px 70px rgba(7,17,31,.12); }
.ghds-service-media { height:clamp(150px,15vw,210px); margin:calc(clamp(22px,3vw,34px) * -1) calc(clamp(22px,3vw,34px) * -1) clamp(20px,3vw,30px); background-size:cover; background-position:center; background-color:var(--ghds-soft); }
.ghds-icon { width:clamp(52px,6vw,68px); aspect-ratio:1; display:grid; place-items:center; border-radius:20px; background:rgba(31,182,255,.14); color:var(--ghds-primary); margin-bottom:clamp(18px,3vw,28px); flex:0 0 auto; }
.ghds-icon svg { width:54%; fill:currentColor; }
.ghds-service-card a, .ghds-project-body a { display:inline-flex; align-items:center; gap:.4rem; color:var(--ghds-primary); font-weight:900; margin-top:1rem; }
.ghds-service-card a span, .ghds-project-body a span { color:var(--ghds-accent); }

.ghds-matrix-wrap { display:grid; grid-template-columns:.82fr 1.18fr; gap:clamp(20px,4vw,60px); align-items:start; }
.ghds-matrix-intro { border-radius:var(--ghds-radius); padding:clamp(24px,4vw,44px); color:#fff; background:linear-gradient(135deg,var(--ghds-primary),var(--ghds-dark)); position:sticky; top:110px; }
.ghds-matrix-intro p { color:rgba(255,255,255,.75); }
.ghds-matrix-list { display:grid; gap:.8rem; }
.ghds-matrix-row { display:grid; grid-template-columns:58px .56fr 1fr; gap:1rem; align-items:center; padding:clamp(16px,2.3vw,26px); border:1px solid var(--ghds-line); border-radius:22px; background:#fff; }
.ghds-matrix-row span { color:var(--ghds-gold); font-weight:900; }
.ghds-matrix-row strong { color:var(--ghds-primary); }
.ghds-matrix-row em { color:var(--ghds-muted); font-style:normal; line-height:1.55; }

.ghds-project-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:clamp(18px,2vw,28px); }
.ghds-project-card { border-radius:var(--ghds-radius); background:#fff; border:1px solid var(--ghds-line); overflow:hidden; box-shadow:0 16px 56px rgba(7,17,31,.08); }
.ghds-project-media { min-height:clamp(170px,18vw,230px); background:linear-gradient(135deg,var(--ghds-primary),var(--ghds-dark)); background-size:cover; background-position:center; padding:1rem; display:flex; align-items:flex-end; }
.ghds-project-media span { border-radius:999px; padding:.45rem .75rem; background:rgba(255,255,255,.92); color:var(--ghds-primary); font-size:.78rem; font-weight:900; }
.ghds-project-body { padding:clamp(20px,3vw,32px); }
.ghds-project-body small { display:block; color:var(--ghds-muted); font-weight:800; margin:.8rem 0; }
.ghds-outcome { font-weight:800; color:var(--ghds-primary) !important; }

.ghds-logo-marquee { overflow:hidden; border-radius:var(--ghds-radius); border:1px solid var(--ghds-line); background:#fff; }
.ghds-logo-track { display:grid; grid-template-columns:repeat(auto-fit,minmax(150px,1fr)); }
.ghds-logo-card { min-height:112px; display:grid; place-items:center; padding:1.2rem; border-right:1px solid var(--ghds-line); border-bottom:1px solid var(--ghds-line); color:var(--ghds-primary); text-align:center; font-weight:900; }
.ghds-logo-card img { max-width:150px; max-height:72px; object-fit:contain; filter:saturate(.9); }
.ghds-logo-card a { color:inherit; }

.ghds-process { display:grid; grid-template-columns:repeat(4,1fr); gap:clamp(14px,2vw,24px); }
.ghds-step { padding:clamp(20px,3vw,34px); border-radius:var(--ghds-radius); background:linear-gradient(180deg,#fff,var(--ghds-soft)); border:1px solid var(--ghds-line); }
.ghds-step span { display:inline-grid; place-items:center; width:42px; height:42px; border-radius:50%; background:var(--ghds-primary); color:#fff; font-weight:900; margin-bottom:1.2rem; }

.ghds-contact-cards, .ghds-quote-form-section { padding:var(--ghds-section-y) 0; background:var(--ghds-soft); }
.ghds-contact-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:clamp(18px,2vw,28px); }
.ghds-contact-card { padding:clamp(22px,3vw,36px); border-radius:var(--ghds-radius); background:#fff; border:1px solid var(--ghds-line); box-shadow:0 14px 50px rgba(7,17,31,.06); }
.ghds-contact-card a { color:var(--ghds-primary); font-weight:900; }
.ghds-contact-email { background:linear-gradient(135deg,var(--ghds-primary),var(--ghds-dark)); color:#fff; }
.ghds-contact-email p, .ghds-contact-email a, .ghds-contact-email h3 { color:#fff !important; }

.ghds-form-wrap { display:grid; grid-template-columns:.86fr 1.14fr; gap:clamp(24px,5vw,70px); align-items:start; }
.ghds-form { display:grid; gap:1rem; padding:clamp(22px,3vw,36px); border-radius:var(--ghds-radius); background:#fff; box-shadow:var(--ghds-shadow); border:1px solid var(--ghds-line); }
.ghds-field-row { display:grid; grid-template-columns:1fr 1fr; gap:1rem; }
.ghds-form label { display:grid; gap:.45rem; font-weight:800; color:var(--ghds-primary); }
.ghds-form input, .ghds-form select, .ghds-form textarea { width:100%; border:1px solid var(--ghds-line); border-radius:16px; padding:.95rem 1rem; font:inherit; color:var(--ghds-dark); background:#fff; }
.ghds-form textarea { resize:vertical; }
.ghds-form-status { margin:0 !important; font-weight:800; color:var(--ghds-primary) !important; }
.ghds-hp { position:absolute !important; left:-9999px !important; opacity:0 !important; }

.ghds-cta-section { padding:var(--ghds-section-y) 0; background:linear-gradient(135deg,var(--ghds-dark),var(--ghds-primary)); }
.ghds-cta-box { display:flex; justify-content:space-between; align-items:center; gap:2rem; color:#fff; border-radius:calc(var(--ghds-radius) * 1.15); padding:clamp(28px,5vw,60px); border:1px solid rgba(255,255,255,.16); background:rgba(255,255,255,.08); box-shadow:var(--ghds-shadow); }
.ghds-cta-box p { color:rgba(255,255,255,.75); }
.ghds-cta-box h2 { max-width:14ch; }

.ghds-faq-list { display:grid; gap:.8rem; }
.ghds-faq-list details { border:1px solid var(--ghds-line); border-radius:20px; background:#fff; padding:clamp(16px,2vw,24px); }
.ghds-faq-list summary { cursor:pointer; color:var(--ghds-primary); font-weight:900; font-size:1.08rem; }
.ghds-faq-list details div { padding-top:1rem; }

.ghds-solution-nav-section, .ghds-language-switcher-section { padding:clamp(18px,3vw,34px) 0; background:#fff; }
.ghds-mini-nav, .ghds-language-switcher { display:flex; align-items:center; justify-content:space-between; gap:1rem; padding:.8rem; border-radius:999px; background:#fff; box-shadow:0 12px 35px rgba(7,17,31,.09); overflow:auto; border:1px solid var(--ghds-line); }
.ghds-mini-nav strong, .ghds-language-switcher span { color:var(--ghds-primary); white-space:nowrap; padding-left:.8rem; font-weight:900; }
.ghds-mini-nav div { display:flex; gap:.5rem; flex-wrap:wrap; justify-content:flex-end; }
.ghds-mini-nav a, .ghds-language-switcher a { display:inline-flex; white-space:nowrap; padding:.58rem .82rem; border-radius:999px; background:var(--ghds-soft); color:var(--ghds-primary); font-weight:800; font-size:.88rem; }
.ghds-language-switcher { justify-content:flex-start; width:max-content; }
.ghds-language-switcher a.is-active { background:var(--ghds-primary); color:#fff; }

.ghds-solution-detail-hero { display:grid; grid-template-columns:1.05fr .95fr; gap:clamp(28px,5vw,70px); align-items:center; }
.ghds-solution-detail-hero .ghds-lede { color:var(--ghds-muted) !important; max-width:720px; }
.ghds-solution-detail-hero h1 { color:var(--ghds-primary); }
.ghds-solution-visual { min-height:clamp(300px,37vw,520px); border-radius:calc(var(--ghds-radius) * 1.1); background:linear-gradient(135deg,var(--ghds-primary),var(--ghds-dark)); background-size:cover; background-position:center; position:relative; box-shadow:var(--ghds-shadow); overflow:hidden; }
.ghds-solution-visual:after { content:""; position:absolute; inset:0; background:linear-gradient(180deg,rgba(7,17,31,.08),rgba(7,17,31,.62)); }
.ghds-solution-visual .ghds-icon { position:absolute; z-index:1; left:clamp(22px,3vw,34px); bottom:clamp(22px,3vw,34px); background:rgba(255,255,255,.9); }
.ghds-solution-body { max-width:880px; margin:clamp(30px,5vw,70px) 0; }
.ghds-solution-body p { color:var(--ghds-muted); }
.ghds-solution-pillars { display:grid; grid-template-columns:repeat(3,1fr); gap:clamp(16px,2vw,28px); margin-top:clamp(30px,5vw,60px); }
.ghds-solution-pillars article { padding:clamp(22px,3vw,34px); border-radius:var(--ghds-radius); background:#fff; border:1px solid var(--ghds-line); box-shadow:0 16px 60px rgba(7,17,31,.06); }
.ghds-solution-pillars h3 { color:var(--ghds-primary); }

.ghds-admin-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:10px 18px; }
.ghds-admin-wrap pre { display:block; width:100%; max-width:860px; padding:14px 18px; background:#07111f; color:#fff; border-radius:14px; white-space:pre-wrap; }
.ghds-admin-wrap code { padding:2px 6px; background:#f0f3f7; border-radius:6px; }

@media (max-width:980px) {
  .ghds-hero-grid, .ghds-matrix-wrap, .ghds-form-wrap, .ghds-solution-detail-hero { grid-template-columns:1fr; }
  .ghds-command-card { min-height:360px; }
  .ghds-stats-grid, .ghds-process, .ghds-solution-pillars { grid-template-columns:repeat(2,1fr); }
  .ghds-card-grid, .ghds-project-grid, .ghds-contact-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .ghds-matrix-intro { position:static; }
  .ghds-matrix-row { grid-template-columns:44px 1fr; }
  .ghds-matrix-row em { grid-column:2; }
  .ghds-cta-box { flex-direction:column; align-items:flex-start; }
}

@media (max-width:640px) {
  .ghds-shell { width:min(100% - 26px, 1180px); }
  .ghds-card-grid, .ghds-project-grid, .ghds-contact-grid, .ghds-stats-grid, .ghds-process, .ghds-field-row, .ghds-solution-pillars { grid-template-columns:1fr; }
  .ghds h1 { letter-spacing:-.052em; }
  .ghds-command-card { min-height:330px; }
  .ghds-actions { flex-direction:column; align-items:stretch; }
  .ghds-btn { width:100%; }
  .ghds-matrix-row { grid-template-columns:1fr; }
  .ghds-matrix-row em { grid-column:auto; }
  .ghds-mini-nav { border-radius:20px; align-items:flex-start; flex-direction:column; }
  .ghds-mini-nav div { justify-content:flex-start; }
  .ghds-language-switcher { width:100%; border-radius:20px; flex-wrap:wrap; }
}

/* v1.4.0 Solutions menu slider + department contact router */
.ghds-service-slider-section,
.ghds-services-literature-section,
.ghds-contact-router-section,
.ghds-service-megamenu-section {
  --ghds-clamp-xs: clamp(.78rem, .72rem + .22vw, .92rem);
  --ghds-clamp-sm: clamp(.92rem, .84rem + .35vw, 1.05rem);
  --ghds-clamp-base: clamp(1rem, .94rem + .42vw, 1.15rem);
  --ghds-clamp-md: clamp(1.2rem, 1.04rem + .85vw, 1.58rem);
  --ghds-clamp-lg: clamp(1.45rem, 1.08rem + 1.55vw, 2.75rem);
  --ghds-clamp-xl: var(--ghds-h1-size);
  padding: var(--ghds-section-y) 0;
}

.ghds-service-slider-section { background: radial-gradient(circle at top left, rgba(31,182,255,.18), transparent 34%), linear-gradient(135deg, var(--ghds-dark), var(--ghds-primary)); color: #fff; overflow: hidden; }
.ghds-service-slider-section .ghds-section-head h2,
.ghds-service-slider-section .ghds-section-head p,
.ghds-service-slider-section .ghds-eyebrow { color: #fff !important; }
.ghds-service-slider-section .ghds-section-head p { color: rgba(255,255,255,.76) !important; }
.ghds-svc-slider { position: relative; margin-top: clamp(24px, 4vw, 44px); }
.ghds-svc-track { display: grid; grid-auto-flow: column; grid-auto-columns: minmax(290px, 36%); gap: clamp(16px, 2vw, 26px); overflow-x: auto; scroll-snap-type: x mandatory; padding: 6px 4px 26px; scrollbar-width: thin; }
.ghds-svc-slide { scroll-snap-align: start; min-height: 430px; display: flex; flex-direction: column; justify-content: space-between; padding: clamp(22px, 2.7vw, 34px); border-radius: calc(var(--ghds-radius) * 1.08); background: linear-gradient(180deg, rgba(255,255,255,.14), rgba(255,255,255,.07)); border: 1px solid rgba(255,255,255,.18); box-shadow: 0 24px 70px rgba(0,0,0,.18); backdrop-filter: blur(14px); }
.ghds-svc-top { display: flex; justify-content: space-between; gap: 1rem; align-items: center; }
.ghds-svc-top .ghds-icon { background: rgba(255,255,255,.93); }
.ghds-svc-top em { font-style: normal; font-size: var(--ghds-clamp-xs); color: rgba(255,255,255,.75); font-weight: 800; text-transform: uppercase; letter-spacing: .08em; text-align: right; }
.ghds-svc-slide h3 { color: #fff; font-size: var(--ghds-clamp-md); line-height: 1.05; margin: 1.25rem 0 .65rem; }
.ghds-svc-slide p { color: rgba(255,255,255,.78) !important; font-size: var(--ghds-clamp-sm); }
.ghds-svc-slide ul { margin: 1rem 0 1.4rem; padding: 0; list-style: none; display: grid; gap: .55rem; }
.ghds-svc-slide li { position: relative; padding-left: 1.15rem; color: rgba(255,255,255,.88); font-size: var(--ghds-clamp-xs); }
.ghds-svc-slide li:before { content: ''; position: absolute; left: 0; top: .62em; width: 6px; height: 6px; border-radius: 50%; background: var(--ghds-gold); }
.ghds-svc-actions { display: flex; flex-wrap: wrap; gap: .7rem; }
.ghds-svc-actions a { display: inline-flex; align-items: center; justify-content: center; padding: .72rem .95rem; border-radius: 999px; border: 1px solid rgba(255,255,255,.24); color: #fff; font-weight: 900; font-size: var(--ghds-clamp-xs); }
.ghds-svc-actions a:last-child { background: var(--ghds-gold); color: var(--ghds-dark); border-color: transparent; }
.ghds-slider-controls { display: flex; justify-content: flex-end; gap: .7rem; margin-top: .7rem; }
.ghds-slider-controls button { width: 46px; height: 46px; border-radius: 50%; border: 1px solid rgba(255,255,255,.25); background: rgba(255,255,255,.1); color: #fff; font-size: 1.9rem; line-height: 1; cursor: pointer; }

.ghds-service-megamenu-section { padding: clamp(14px, 2vw, 24px) 0; background: transparent; }
.ghds-mega { width: min(100%, 980px); padding: clamp(18px, 2vw, 28px); border-radius: 24px; background: #fff; border: 1px solid var(--ghds-line); box-shadow: 0 24px 70px rgba(7,17,31,.14); }
.ghds-mega-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: clamp(18px, 3vw, 38px); }
.ghds-mega-col h3 { font-size: var(--ghds-clamp-sm); text-transform: uppercase; letter-spacing: .08em; color: var(--ghds-primary); margin-bottom: .9rem; }
.ghds-mega-item { display: grid; grid-template-columns: 42px 1fr; gap: .75rem; padding: .75rem; border-radius: 16px; color: var(--ghds-dark); }
.ghds-mega-item:hover { background: var(--ghds-soft); }
.ghds-mega-item span { width: 42px; height: 42px; display: grid; place-items: center; border-radius: 14px; background: var(--ghds-soft); }
.ghds-mega-item svg { width: 20px; height: 20px; fill: var(--ghds-primary); }
.ghds-mega-item strong { display: block; color: var(--ghds-primary); font-size: .95rem; line-height: 1.1; }
.ghds-mega-item small { display: block; margin-top: .25rem; color: var(--ghds-muted); line-height: 1.35; }
.ghds-mega-cta { margin-top: 1.2rem; display: flex; justify-content: space-between; align-items: center; gap: 1rem; padding: 1rem 1.1rem; border-radius: 18px; background: linear-gradient(135deg, var(--ghds-primary), var(--ghds-dark)); color: #fff; }
.ghds-mega-cta a { color: var(--ghds-dark); background: var(--ghds-gold); border-radius: 999px; padding: .6rem .9rem; font-weight: 900; white-space: nowrap; }

.ghds-services-literature-section { background: var(--ghds-soft); }
.ghds-lit-list { display: grid; gap: clamp(18px, 2.6vw, 34px); }
.ghds-lit-card { display: grid; grid-template-columns: minmax(0, .9fr) minmax(320px, .62fr); gap: clamp(22px, 4vw, 58px); padding: clamp(24px, 4vw, 54px); border-radius: calc(var(--ghds-radius) * 1.1); background: #fff; border: 1px solid var(--ghds-line); box-shadow: 0 16px 54px rgba(7,17,31,.07); }
.ghds-lit-kicker { display: flex; align-items: center; gap: .9rem; margin-bottom: 1rem; }
.ghds-lit-kicker em { font-style: normal; color: var(--ghds-muted); text-transform: uppercase; letter-spacing: .08em; font-size: var(--ghds-clamp-xs); font-weight: 900; }
.ghds-lit-card h3 { color: var(--ghds-primary); font-size: var(--ghds-clamp-lg); line-height: 1.04; margin: 0 0 1rem; }
.ghds-lit-body { font-size: var(--ghds-clamp-base); line-height: 1.78; color: var(--ghds-muted) !important; }
.ghds-lit-side { padding: clamp(18px, 2.4vw, 30px); border-radius: 24px; background: linear-gradient(180deg, var(--ghds-soft), #fff); border: 1px solid var(--ghds-line); }
.ghds-lit-side h4 { color: var(--ghds-primary); margin: 0 0 .55rem; font-size: var(--ghds-clamp-sm); }
.ghds-lit-side ul { margin: 0 0 1.2rem; padding-left: 1.05rem; color: var(--ghds-muted); }
.ghds-lit-side li { margin-bottom: .45rem; }
.ghds-lit-side p { color: var(--ghds-muted) !important; margin: 0; }

.ghds-contact-router-section { background: linear-gradient(180deg, #fff, var(--ghds-soft)); }
.ghds-contact-router-wrap { display: block; align-items: start; }
.ghds-contact-router-wrap:not(.ghds-contact-router-full) { display: grid; grid-template-columns: .82fr 1.18fr; gap: clamp(24px, 5vw, 70px); }
.ghds-contact-router-info { position: sticky; top: 96px; }
.ghds-contact-router-info h2 { color: var(--ghds-primary); font-size: var(--ghds-clamp-lg); line-height: 1.05; }
.ghds-contact-router-info p { color: var(--ghds-muted) !important; }
.ghds-router-mini-cards { display: grid; gap: .9rem; margin-top: 1.4rem; }
.ghds-router-mini-cards span { display: block; padding: 1rem 1.05rem; border-radius: 18px; background: #fff; border: 1px solid var(--ghds-line); color: var(--ghds-muted); box-shadow: 0 10px 34px rgba(7,17,31,.05); }
.ghds-router-mini-cards strong { color: var(--ghds-primary); }
.ghds-router-form { display: grid; gap: 1rem; width: 100%; padding: clamp(22px, 3.5vw, 42px); border-radius: calc(var(--ghds-radius) * 1.1); background: #fff; border: 1px solid var(--ghds-line); box-shadow: var(--ghds-shadow); }
.ghds-contact-router-full .ghds-router-form { max-width: none; }
.ghds-contact-router-head { padding-bottom: clamp(16px, 2.2vw, 28px); margin-bottom: clamp(4px, .8vw, 10px); border-bottom: 1px solid var(--ghds-line); }
.ghds-contact-router-head .ghds-eyebrow { margin-bottom: .55rem; }
.ghds-contact-router-head h2 { margin: 0; color: var(--ghds-primary); font-size: var(--ghds-h2-size); line-height: 1.04; letter-spacing: -.035em; }
.ghds-contact-router-head p:not(.ghds-eyebrow) { max-width: 780px; margin: .75rem 0 0; color: var(--ghds-muted) !important; font-size: var(--ghds-clamp-base); line-height: 1.6; }
.ghds-form-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: clamp(.85rem, 1.4vw, 1.25rem); }
.ghds-router-form label { display: grid; gap: .45rem; color: var(--ghds-primary); font-weight: 900; font-size: var(--ghds-clamp-xs); }
.ghds-router-form input,
.ghds-router-form select,
.ghds-router-form textarea { width: 100%; border: 1px solid var(--ghds-line); border-radius: 16px; padding: .95rem 1rem; font: inherit; font-size: var(--ghds-clamp-sm); color: var(--ghds-dark); background: #fff; }
.ghds-router-form input[type="file"] { padding: .76rem 1rem; }
.ghds-router-form textarea { resize: vertical; }
.ghds-router-form .ghds-full { grid-column: 1 / -1; }
.ghds-router-form button { justify-self: start; }

@media (max-width: 980px) {
  .ghds-svc-track { grid-auto-columns: minmax(280px, 58%); }
  .ghds-lit-card,
  .ghds-contact-router-wrap,
  .ghds-mega-grid { grid-template-columns: 1fr; }
  .ghds-contact-router-info { position: static; }
}

@media (max-width: 640px) {
  .ghds-svc-track { grid-auto-columns: 88%; }
  .ghds-form-grid { grid-template-columns: 1fr; }
  .ghds-router-form button { width: 100%; }
  .ghds-mega-cta { align-items: flex-start; flex-direction: column; }
}

/* v1.5.0 Trusted Partners showcase */
.ghds-partners-showcase-section,
.ghds-partners-slider-section,
.ghds-partners-grid-section {
  --ghds-clamp-xs: clamp(.78rem, .72rem + .22vw, .92rem);
  --ghds-clamp-sm: clamp(.92rem, .84rem + .35vw, 1.05rem);
  --ghds-clamp-base: clamp(1rem, .94rem + .42vw, 1.15rem);
  --ghds-clamp-md: clamp(1.2rem, 1.04rem + .85vw, 1.58rem);
  --ghds-clamp-lg: clamp(1.45rem, 1.08rem + 1.55vw, 2.75rem);
  padding: var(--ghds-section-y) 0;
  background: linear-gradient(180deg, #fff, var(--ghds-soft));
}
.ghds-partner-hero {
  display: grid;
  grid-template-columns: minmax(0, 1.1fr) minmax(280px, .62fr);
  gap: clamp(24px, 5vw, 70px);
  align-items: center;
  margin-bottom: clamp(34px, 5vw, 68px);
}
.ghds-partner-hero h2 { color: var(--ghds-primary); font-size: var(--ghds-h2-size) !important; max-width: 15ch; }
.ghds-partner-hero p { max-width: 760px; }
.ghds-partner-proof {
  display: grid;
  gap: .9rem;
  padding: clamp(18px, 2.6vw, 32px);
  border-radius: calc(var(--ghds-radius) * 1.05);
  background: linear-gradient(135deg, var(--ghds-primary), var(--ghds-dark));
  box-shadow: var(--ghds-shadow);
}
.ghds-partner-proof div {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 1rem;
  padding: clamp(14px, 2vw, 20px);
  border-radius: 20px;
  background: rgba(255,255,255,.08);
  border: 1px solid rgba(255,255,255,.14);
}
.ghds-partner-proof strong { color: #fff; font-size: clamp(1.65rem, 3vw, 2.5rem); line-height: 1; }
.ghds-partner-proof span { color: rgba(255,255,255,.74); font-weight: 800; text-align: right; }
.ghds-partner-slider {
  display: grid;
  grid-template-columns: 48px minmax(0,1fr) 48px;
  gap: clamp(10px, 1.4vw, 18px);
  align-items: center;
  margin: clamp(22px, 4vw, 48px) 0;
}
.ghds-partner-track {
  display: grid;
  grid-auto-flow: column;
  grid-auto-columns: minmax(190px, 24%);
  gap: clamp(14px, 2vw, 22px);
  overflow-x: auto;
  scroll-snap-type: x mandatory;
  padding: 4px 2px 20px;
  scrollbar-width: thin;
}
.ghds-partner-slide {
  scroll-snap-align: start;
  min-height: clamp(160px, 18vw, 210px);
  display: grid;
  align-content: space-between;
  gap: 1rem;
  padding: clamp(16px, 2vw, 24px);
  border-radius: 26px;
  border: 1px solid var(--ghds-line);
  background: #fff;
  box-shadow: 0 16px 46px rgba(7,17,31,.07);
}
.ghds-partner-logo,
.ghds-partner-card-logo {
  min-height: 100px;
  display: grid;
  place-items: center;
  border-radius: 20px;
  background: linear-gradient(180deg, #fff, var(--ghds-soft));
  border: 1px solid var(--ghds-line);
  padding: 1rem;
  text-align: center;
}
.ghds-partner-logo img,
.ghds-partner-card-logo img,
.ghds-logo-card img {
  max-width: clamp(120px, 14vw, 175px);
  max-height: 82px;
  width: auto;
  height: auto;
  object-fit: contain;
}
.ghds-partner-logo a,
.ghds-partner-card-logo a { color: inherit; display: grid; place-items: center; gap: .5rem; }
.ghds-logo-initials {
  width: 66px;
  height: 66px;
  border-radius: 18px;
  display: grid;
  place-items: center;
  background: linear-gradient(135deg, var(--ghds-primary), var(--ghds-dark));
  color: #fff;
  font-weight: 950;
  letter-spacing: .04em;
}
.ghds-partner-slide span,
.ghds-partner-sector {
  color: var(--ghds-muted) !important;
  font-size: var(--ghds-clamp-xs) !important;
  font-weight: 900;
  text-transform: uppercase;
  letter-spacing: .08em;
  margin: 0 !important;
}
.ghds-partner-arrow {
  width: 48px;
  height: 48px;
  border-radius: 50%;
  border: 1px solid var(--ghds-line);
  background: #fff;
  color: var(--ghds-primary);
  font-size: 2rem;
  line-height: 1;
  cursor: pointer;
  box-shadow: 0 12px 30px rgba(7,17,31,.08);
}
.ghds-partner-filters {
  display: flex;
  flex-wrap: wrap;
  gap: .65rem;
  margin: clamp(22px, 3vw, 38px) 0;
}
.ghds-partner-filters button {
  border: 1px solid var(--ghds-line);
  border-radius: 999px;
  padding: .7rem 1rem;
  background: #fff;
  color: var(--ghds-primary);
  font-weight: 900;
  cursor: pointer;
  font-size: var(--ghds-clamp-xs);
}
.ghds-partner-filters button.is-active {
  background: var(--ghds-primary);
  color: #fff;
  border-color: var(--ghds-primary);
}
.ghds-partner-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: clamp(18px, 2.5vw, 30px);
}
.ghds-partner-card {
  display: grid;
  grid-template-rows: auto 1fr;
  border-radius: calc(var(--ghds-radius) * 1.02);
  border: 1px solid var(--ghds-line);
  background: #fff;
  overflow: hidden;
  box-shadow: 0 16px 50px rgba(7,17,31,.07);
}
.ghds-partner-card-logo { border-radius: 0; border: 0; border-bottom: 1px solid var(--ghds-line); min-height: 145px; }
.ghds-partner-card-body { padding: clamp(18px, 2.4vw, 28px); }
.ghds-partner-card-body span {
  display: inline-flex;
  border-radius: 999px;
  padding: .42rem .68rem;
  background: rgba(31,182,255,.12);
  color: var(--ghds-primary);
  font-weight: 950;
  font-size: var(--ghds-clamp-xs);
  margin-bottom: .9rem;
}
.ghds-partner-card-body h3 { color: var(--ghds-primary); font-size: var(--ghds-clamp-md); margin-bottom: .4rem; }
.ghds-partner-card-body p:last-child { font-size: var(--ghds-clamp-sm); }
.ghds-partner-card.is-hidden { display: none; }

@media (max-width: 980px) {
  .ghds-partner-hero { grid-template-columns: 1fr; }
  .ghds-partner-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .ghds-partner-track { grid-auto-columns: minmax(210px, 42%); }
}
@media (max-width: 640px) {
  .ghds-partner-slider { grid-template-columns: 1fr; }
  .ghds-partner-arrow { display: none; }
  .ghds-partner-track { grid-auto-columns: minmax(240px, 84%); }
  .ghds-partner-grid { grid-template-columns: 1fr; }
  .ghds-partner-proof div { align-items: flex-start; flex-direction: column; }
  .ghds-partner-proof span { text-align: left; }
}

/* v2.0.0 complete corporate platform: header, footer, about, timeline */
.ghds-site-header {
    width: 100%;
    background: rgba(7,17,31,.94);
    backdrop-filter: blur(14px);
    border-bottom: 1px solid rgba(255,255,255,.10);
    z-index: 999;
}
.ghds-sticky-header { position: sticky; top: 0; }
.ghds-site-header-inner {
    max-width: 1240px;
    margin: 0 auto;
    padding: clamp(12px, 1.6vw, 18px) clamp(18px, 3vw, 40px);
    display: flex;
    align-items: center;
    gap: clamp(14px, 2vw, 24px);
}
.ghds-brand {
    color: #fff;
    text-decoration: none;
    display: inline-flex;
    align-items: center;
    gap: 12px;
    min-width: max-content;
}
.ghds-brand:hover { color: #fff; }
.ghds-brand-mark {
    width: 46px;
    height: 46px;
    border-radius: 16px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    background: linear-gradient(135deg, var(--ghds-accent), var(--ghds-gold));
    color: var(--ghds-dark);
    font-weight: 900;
    letter-spacing: -.06em;
}
.ghds-brand strong { display:block; font-size: clamp(1rem, 1.3vw, 1.18rem); line-height: 1.05; }
.ghds-brand em { display:block; font-style: normal; color: rgba(255,255,255,.68); font-size: .74rem; letter-spacing: .08em; text-transform: uppercase; margin-top: 3px; }
.ghds-main-nav {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: clamp(12px, 1.4vw, 22px);
    margin-left: auto;
}
.ghds-main-nav a,
.ghds-nav-dropdown > a {
    color: rgba(255,255,255,.84);
    text-decoration: none;
    font-weight: 800;
    font-size: clamp(.88rem, .95vw, .98rem);
    letter-spacing: .01em;
}
.ghds-main-nav a:hover,
.ghds-nav-dropdown > a:hover { color: var(--ghds-gold); }
.ghds-header-cta {
    padding: 12px 16px;
    border-radius: 999px;
    background: var(--ghds-gold);
    color: var(--ghds-dark);
    text-decoration: none;
    font-weight: 900;
    white-space: nowrap;
    box-shadow: 0 14px 30px rgba(214,168,79,.25);
}
.ghds-header-cta:hover { color: var(--ghds-dark); filter: brightness(1.05); }
.ghds-nav-dropdown { position: relative; }
.ghds-nav-panel {
    position: absolute;
    left: 50%;
    transform: translateX(-50%) translateY(8px);
    top: calc(100% + 18px);
    width: min(820px, 92vw);
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 8px;
    padding: 18px;
    border-radius: 24px;
    background: rgba(255,255,255,.98);
    border: 1px solid rgba(6,40,74,.10);
    box-shadow: 0 26px 80px rgba(7,17,31,.25);
    opacity: 0;
    pointer-events: none;
    transition: .2s ease;
}
.ghds-nav-dropdown:hover .ghds-nav-panel,
.ghds-nav-dropdown:focus-within .ghds-nav-panel { opacity:1; pointer-events:auto; transform: translateX(-50%) translateY(0); }
.ghds-nav-panel a {
    display:block;
    padding: 14px;
    border-radius: 18px;
    color: var(--ghds-primary) !important;
    background: rgba(6,40,74,.04);
}
.ghds-nav-panel span { display:block; font-weight:900; }
.ghds-nav-panel small { display:block; color: #617086; font-size: .82rem; line-height:1.45; margin-top: 6px; }
.ghds-menu-toggle { display:none; margin-left:auto; border:0; border-radius:12px; padding:10px 12px; background:rgba(255,255,255,.1); color:#fff; }
.ghds-about-grid {
    display: grid;
    grid-template-columns: minmax(0, 1.05fr) minmax(280px, .95fr);
    gap: clamp(28px, 5vw, 70px);
    align-items: center;
}
.ghds-about-section {
    background: #f7fafc;
}
.ghds-about-proof {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 16px;
}
.ghds-about-proof article {
    border-radius: 24px;
    padding: clamp(18px, 2.4vw, 30px);
    background: #fff;
    border: 1px solid rgba(6,40,74,.09);
    box-shadow: 0 20px 50px rgba(7,17,31,.07);
}
.ghds-about-proof strong { display:block; color: var(--ghds-primary); font-size: clamp(1.05rem, 1.3vw, 1.24rem); margin-bottom: 8px; }
.ghds-about-proof span { color: #617086; line-height: 1.6; }
.ghds-timeline {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: clamp(14px, 2vw, 24px);
    counter-reset: ghdsTimeline;
}
.ghds-timeline article {
    position: relative;
    padding: clamp(18px, 2.4vw, 28px);
    border-radius: 24px;
    background: linear-gradient(180deg, rgba(255,255,255,.98), rgba(247,250,252,.96));
    border: 1px solid rgba(6,40,74,.10);
    box-shadow: 0 18px 45px rgba(7,17,31,.07);
}
.ghds-timeline article strong {
    display:inline-flex;
    align-items:center;
    justify-content:center;
    padding: 8px 12px;
    border-radius:999px;
    background: rgba(31,182,255,.12);
    color: var(--ghds-primary);
    margin-bottom: 14px;
    font-weight: 900;
}
.ghds-timeline h3 { margin: 0 0 10px; color: var(--ghds-primary); font-size: var(--ghds-h3-size); }
.ghds-timeline p { color: #617086; line-height: 1.65; margin: 0; }
.ghds-site-footer {
    background: var(--ghds-dark);
    color: rgba(255,255,255,.82);
    padding-top: clamp(44px, 6vw, 84px);
}
.ghds-footer-shell {
    max-width: 1240px;
    margin: 0 auto;
    padding: 0 clamp(18px, 3vw, 40px) clamp(28px, 4vw, 52px);
    display: grid;
    grid-template-columns: 1.3fr 1fr .8fr 1.15fr;
    gap: clamp(22px, 3vw, 46px);
}
.ghds-site-footer h3,
.ghds-site-footer h4 { color: #fff; margin: 0 0 16px; }
.ghds-site-footer h3 { font-size: var(--ghds-h2-size); }
.ghds-site-footer a { display:block; color: rgba(255,255,255,.74); text-decoration:none; margin: 0 0 10px; }
.ghds-site-footer a:hover { color: var(--ghds-gold); }
.ghds-footer-brand p,
.ghds-site-footer p { line-height: 1.7; color: rgba(255,255,255,.68); }
.ghds-footer-bottom {
    border-top: 1px solid rgba(255,255,255,.10);
    padding: 18px clamp(18px, 3vw, 40px);
    text-align: center;
    color: rgba(255,255,255,.55);
    max-width: 1240px;
    margin: 0 auto;
}
.ghds-complete-website .ghds { scroll-margin-top: 96px; }
@media (max-width: 980px) {
    .ghds-site-header-inner { flex-wrap: wrap; }
    .ghds-menu-toggle { display:inline-flex; }
    .ghds-main-nav { order: 5; width: 100%; display: none; flex-direction: column; align-items: stretch; background: rgba(255,255,255,.06); border-radius: 22px; padding: 14px; }
    .ghds-site-header.is-open .ghds-main-nav { display:flex; }
    .ghds-header-cta { margin-left: auto; }
    .ghds-nav-panel { position: static; opacity: 1; pointer-events: auto; transform:none; width:100%; grid-template-columns: 1fr; margin-top: 10px; background: #fff; }
    .ghds-about-grid, .ghds-footer-shell { grid-template-columns: 1fr; }
    .ghds-timeline { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 640px) {
    .ghds-about-proof, .ghds-timeline { grid-template-columns: 1fr; }
    .ghds-header-cta { width: 100%; text-align:center; }
    .ghds-brand em { display:none; }
}

/* v2.3.0 Field Media / Visual Portfolio System */
.ghds-visual-proof {
    display:grid;
    grid-template-columns: minmax(0,1fr) auto;
    align-items:center;
    gap: clamp(18px, 3vw, 36px);
    padding: clamp(24px, 4vw, 46px);
    border-radius: clamp(22px, 3vw, 36px);
    background:
        radial-gradient(circle at 15% 20%, rgba(31,182,255,.20), transparent 34%),
        linear-gradient(135deg, var(--ghds-primary), var(--ghds-dark));
    color:#fff;
    box-shadow: 0 26px 70px rgba(7,17,31,.22);
}
.ghds-visual-proof h2 { color:#fff; margin: 0 0 10px; font-size: var(--ghds-h2-size); }
.ghds-visual-proof p { color: rgba(255,255,255,.78); max-width: 760px; line-height: 1.7; }
.ghds-media-showcase-grid {
    display:grid;
    grid-template-columns: minmax(0, 1.1fr) minmax(280px, .9fr);
    gap: clamp(16px, 2.4vw, 30px);
    align-items: stretch;
}
.ghds-media-side-grid,
.ghds-media-strip,
.ghds-field-gallery,
.ghds-video-grid {
    display:grid;
    gap: clamp(14px, 2vw, 24px);
}
.ghds-media-side-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.ghds-media-strip { grid-template-columns: repeat(4, minmax(0, 1fr)); margin-top: clamp(16px, 2.5vw, 28px); }
.ghds-field-gallery.ghds-cols-2 { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.ghds-field-gallery.ghds-cols-3 { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.ghds-field-gallery.ghds-cols-4 { grid-template-columns: repeat(4, minmax(0, 1fr)); }
.ghds-video-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.ghds-media-card,
.ghds-video-card {
    overflow:hidden;
    border-radius: clamp(20px, 2vw, 30px);
    background:#fff;
    border: 1px solid rgba(6,40,74,.10);
    box-shadow: 0 20px 56px rgba(7,17,31,.08);
}
.ghds-media-card.ghds-media-feature {
    display:grid;
    grid-template-rows: minmax(300px, 1fr) auto;
}
.ghds-media-surface {
    position:relative;
    min-height: clamp(190px, 22vw, 320px);
    background:
        linear-gradient(135deg, rgba(6,40,74,.92), rgba(31,182,255,.38)),
        linear-gradient(45deg, #0c3257, #07111f);
    background-size: cover;
    background-position:center;
}
.ghds-media-feature .ghds-media-surface { min-height: clamp(340px, 38vw, 560px); }
.ghds-media-placeholder {
    position:absolute;
    inset:0;
    display:flex;
    flex-direction:column;
    align-items:flex-start;
    justify-content:flex-end;
    gap:8px;
    padding: clamp(18px, 2.4vw, 28px);
    color:#fff;
    background: linear-gradient(180deg, rgba(7,17,31,.08), rgba(7,17,31,.66));
}
.ghds-media-surface[style] .ghds-media-placeholder { background: linear-gradient(180deg, rgba(7,17,31,.02), rgba(7,17,31,.62)); }
.ghds-media-placeholder span {
    display:inline-flex;
    width:max-content;
    padding: 7px 11px;
    border-radius:999px;
    background: rgba(214,168,79,.95);
    color:#07111f;
    font-size:.72rem;
    letter-spacing:.08em;
    font-weight:900;
}
.ghds-media-placeholder strong { text-transform:uppercase; letter-spacing:.11em; font-size:.78rem; color:rgba(255,255,255,.86); }
.ghds-play-badge {
    position:absolute;
    right: clamp(14px, 2vw, 22px);
    top: clamp(14px, 2vw, 22px);
    width: clamp(44px, 5vw, 62px);
    height: clamp(44px, 5vw, 62px);
    border-radius:50%;
    display:grid;
    place-items:center;
    color:#07111f;
    background: var(--ghds-gold);
    box-shadow: 0 16px 35px rgba(0,0,0,.24);
    font-size: clamp(1rem, 1.5vw, 1.4rem);
}
.ghds-media-body { padding: clamp(16px, 2.2vw, 26px); }
.ghds-media-chip {
    display:inline-flex;
    align-items:center;
    width:max-content;
    padding: 7px 11px;
    border-radius:999px;
    background: rgba(31,182,255,.12);
    color: var(--ghds-primary);
    font-size:.74rem;
    letter-spacing:.04em;
    font-weight:800;
    margin-bottom: 12px;
}
.ghds-media-body h3 { margin:0 0 10px; color: var(--ghds-primary); font-size: var(--ghds-h3-size); }
.ghds-media-feature .ghds-media-body h3 { font-size: var(--ghds-h3-size); }
.ghds-media-body p { color:#607086; line-height:1.62; margin:0 0 12px; }
.ghds-media-body small { display:block; color:#8a97a8; line-height:1.5; }
.ghds-media-open { display:inline-flex; margin-top:14px; font-weight:900; color: var(--ghds-primary); text-decoration:none; }
.ghds-slider-head {
    display:flex;
    justify-content:space-between;
    align-items:flex-end;
    gap: clamp(16px, 2vw, 28px);
    margin-bottom: clamp(20px, 3vw, 36px);
}
.ghds-slider-head h2 { color: var(--ghds-primary); margin:0 0 10px; font-size: var(--ghds-h2-size); }
.ghds-slider-head p { color:#607086; max-width: 760px; }
.ghds-media-slider { overflow:hidden; }
.ghds-media-track {
    display:flex;
    gap: clamp(16px, 2vw, 24px);
    overflow-x:auto;
    scroll-snap-type:x mandatory;
    padding: 2px 2px 18px;
}
.ghds-media-slide {
    min-width: clamp(280px, 34vw, 430px);
    scroll-snap-align:start;
}
.ghds-media-slide .ghds-media-card { height:100%; }
.ghds-video-embed {
    position:relative;
    overflow:hidden;
    background:#07111f;
    aspect-ratio: 16 / 9;
}
.ghds-video-embed iframe,
.ghds-video-embed video { width:100%; height:100%; display:block; border:0; }
.ghds-media-card:hover,
.ghds-video-card:hover { transform: translateY(-4px); transition: transform .22s ease, box-shadow .22s ease; box-shadow: 0 28px 72px rgba(7,17,31,.13); }
@media (max-width: 980px) {
    .ghds-media-showcase-grid,
    .ghds-video-grid,
    .ghds-visual-proof { grid-template-columns:1fr; }
    .ghds-media-strip,
    .ghds-field-gallery.ghds-cols-3,
    .ghds-field-gallery.ghds-cols-4 { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 640px) {
    .ghds-media-side-grid,
    .ghds-media-strip,
    .ghds-field-gallery.ghds-cols-2,
    .ghds-field-gallery.ghds-cols-3,
    .ghds-field-gallery.ghds-cols-4 { grid-template-columns:1fr; }
    .ghds-slider-head { align-items:flex-start; flex-direction:column; }
    .ghds-media-feature .ghds-media-surface { min-height: 280px; }
}

/* v2.4.0 Visual-first corporate presentation */
.ghds-visual-hero-section {
    background:
        radial-gradient(circle at 78% 24%, rgba(31,182,255,.22), transparent 32%),
        linear-gradient(135deg, var(--ghds-dark), var(--ghds-primary) 62%, #02111f);
    color:#fff;
    overflow:hidden;
}
.ghds-visual-hero-grid {
    display:grid;
    grid-template-columns: minmax(0, .82fr) minmax(0, 1.18fr);
    gap: clamp(26px, 4vw, 64px);
    align-items:center;
    min-height: clamp(620px, 78vh, 840px);
}
.ghds-visual-hero-copy h1 {
    color:#fff;
    font-size: var(--ghds-h1-size);
    line-height:.98;
    letter-spacing:-.045em;
    margin:0 0 clamp(16px, 2vw, 24px);
    max-width: 780px;
}
.ghds-visual-hero-copy .ghds-lede {
    color:rgba(255,255,255,.82);
    max-width: 680px;
}
.ghds-visual-hero-media { position:relative; min-width:0; }
.ghds-visual-hero-track {
    display:grid;
    grid-template-columns: 1fr .48fr;
    grid-template-rows: repeat(2, minmax(180px, 1fr));
    gap: clamp(14px, 2vw, 22px);
}
.ghds-visual-hero-slide { min-width:0; }
.ghds-visual-hero-slide.is-featured { grid-row: 1 / span 2; }
.ghds-vmedia-card {
    position:relative;
    overflow:hidden;
    border-radius: clamp(18px, 2vw, 30px);
    background:#fff;
    border:1px solid rgba(255,255,255,.16);
    box-shadow: 0 28px 80px rgba(0,0,0,.20);
    cursor: pointer;
    isolation:isolate;
}
.ghds-vmedia-card:focus { outline:3px solid var(--ghds-gold); outline-offset:3px; }
.ghds-vmedia-photo {
    position:relative;
    min-height: clamp(230px, 26vw, 390px);
    background:
        linear-gradient(135deg, rgba(6,40,74,.92), rgba(31,182,255,.38)),
        linear-gradient(45deg, #0c3257, #07111f);
    background-size:cover;
    background-position:center;
}
.ghds-vmedia-hero .ghds-vmedia-photo { min-height: clamp(440px, 52vw, 650px); }
.ghds-vmedia-mini .ghds-vmedia-photo { min-height: clamp(180px, 20vw, 314px); }
.ghds-vmedia-wide .ghds-vmedia-photo { min-height: clamp(270px, 30vw, 430px); }
.ghds-vmedia-tall .ghds-vmedia-photo { min-height: clamp(390px, 45vw, 620px); }
.ghds-vmedia-placeholder {
    position:absolute;
    left:clamp(14px,2vw,22px);
    top:clamp(14px,2vw,22px);
    display:inline-flex;
    padding:7px 11px;
    border-radius:999px;
    background:rgba(214,168,79,.94);
    color:#07111f;
    font-size:.72rem;
    letter-spacing:.08em;
    font-weight:900;
}
.ghds-vmedia-play {
    position:absolute;
    right:clamp(16px,2vw,24px);
    top:clamp(16px,2vw,24px);
    width:clamp(44px,5vw,64px);
    height:clamp(44px,5vw,64px);
    border-radius:50%;
    display:grid;
    place-items:center;
    background:#fff;
    color:var(--ghds-primary);
    box-shadow:0 16px 36px rgba(0,0,0,.24);
}
.ghds-vmedia-caption {
    position:absolute;
    left:0;
    right:0;
    bottom:0;
    padding: clamp(18px, 2.4vw, 30px);
    color:#fff;
    background: linear-gradient(180deg, transparent, rgba(7,17,31,.92));
    transform: translateY(calc(100% - 100px));
    transition: transform .24s ease;
}
.ghds-vmedia-card:hover .ghds-vmedia-caption,
.ghds-vmedia-card:focus .ghds-vmedia-caption { transform: translateY(0); }
.ghds-vmedia-caption small {
    display:inline-flex;
    margin-bottom:8px;
    color:var(--ghds-gold);
    font-weight:900;
    letter-spacing:.08em;
    text-transform:uppercase;
    font-size:.72rem;
}
.ghds-vmedia-caption h3 {
    margin:0 0 8px;
    color:#fff;
    font-size: clamp(1.05rem, 1.7vw, 1.65rem);
    line-height:1.12;
}
.ghds-vmedia-caption p { margin:0 0 10px; color:rgba(255,255,255,.82); line-height:1.48; }
.ghds-vmedia-caption em { display:block; color:rgba(255,255,255,.70); font-style:normal; font-size:.86rem; }
.ghds-visual-hero-section .ghds-slider-controls {
    position:absolute;
    right:clamp(16px,2vw,26px);
    bottom:clamp(16px,2vw,26px);
    z-index:5;
}
.ghds-mosaic-grid {
    display:grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    grid-auto-flow:dense;
    gap: clamp(14px, 2vw, 24px);
}
.ghds-mosaic-grid .ghds-vmedia-wide { grid-column: span 2; }
.ghds-mosaic-grid .ghds-vmedia-tall { grid-row: span 2; }
.ghds-media-wall,
.ghds-solution-media-grid {
    display:grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: clamp(16px, 2vw, 24px);
}
.ghds-wall-filters {
    display:flex;
    flex-wrap:wrap;
    gap:10px;
    justify-content:center;
    margin: clamp(14px, 2vw, 24px) 0 clamp(24px, 3vw, 38px);
}
.ghds-wall-filters button {
    border:1px solid rgba(6,40,74,.15);
    border-radius:999px;
    background:#fff;
    color:var(--ghds-primary);
    padding:10px 14px;
    font-weight:900;
    cursor:pointer;
}
.ghds-wall-filters button.is-active,
.ghds-wall-filters button:hover {
    background:var(--ghds-primary);
    border-color:var(--ghds-primary);
    color:#fff;
}
.ghds-media-wall [data-ghds-wall-item].is-hidden { display:none; }
.ghds-video-spotlight-section { background:#f6f9fc; }
.ghds-video-spotlight-grid {
    display:grid;
    grid-template-columns: minmax(0, .78fr) minmax(0, 1.22fr);
    gap: clamp(26px, 4vw, 58px);
    align-items:center;
}
.ghds-video-spotlight-grid h2 { font-size:var(--ghds-h2-size); color:var(--ghds-primary); margin:0 0 14px; }
.ghds-video-spotlight-grid p { color:#607086; line-height:1.65; }
.ghds-video-spotlight-card {
    overflow:hidden;
    border-radius: clamp(18px, 2vw, 30px);
    background:#fff;
    box-shadow:0 24px 70px rgba(7,17,31,.12);
    border:1px solid rgba(6,40,74,.08);
}
.ghds-video-caption { padding: clamp(18px, 2.3vw, 28px); }
.ghds-video-caption h3 { margin:0 0 8px; color:var(--ghds-primary); }
.ghds-video-caption p { margin:0; color:#607086; }
.ghds-lightbox {
    position:fixed;
    inset:0;
    z-index:999999;
    background:rgba(3,10,20,.88);
    display:none;
    align-items:center;
    justify-content:center;
    padding:clamp(18px,4vw,48px);
}
.ghds-lightbox.is-open { display:flex; }
.ghds-lightbox-inner {
    position:relative;
    width:min(1100px, 94vw);
    max-height:90vh;
    background:#07111f;
    border-radius:18px;
    overflow:hidden;
    box-shadow:0 28px 90px rgba(0,0,0,.5);
}
.ghds-lightbox-content img,
.ghds-lightbox-content iframe,
.ghds-lightbox-content video { width:100%; max-height:86vh; display:block; border:0; object-fit:contain; background:#07111f; }
.ghds-lightbox-content iframe { aspect-ratio:16/9; height:auto; min-height: min(62vw, 620px); }
.ghds-lightbox-close {
    position:absolute;
    right:12px;
    top:12px;
    z-index:3;
    border:0;
    width:42px;
    height:42px;
    border-radius:50%;
    background:#fff;
    color:#07111f;
    font-size:26px;
    line-height:1;
    cursor:pointer;
}
@media (max-width: 1080px) {
    .ghds-visual-hero-grid,
    .ghds-video-spotlight-grid { grid-template-columns:1fr; min-height:0; }
    .ghds-visual-hero-track { grid-template-columns:1fr 1fr; }
    .ghds-visual-hero-slide.is-featured { grid-column:1 / -1; grid-row:auto; }
    .ghds-mosaic-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .ghds-media-wall,
    .ghds-solution-media-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 640px) {
    .ghds-visual-hero-track,
    .ghds-mosaic-grid,
    .ghds-media-wall,
    .ghds-solution-media-grid { grid-template-columns:1fr; }
    .ghds-mosaic-grid .ghds-vmedia-wide,
    .ghds-mosaic-grid .ghds-vmedia-tall { grid-column:auto; grid-row:auto; }
    .ghds-vmedia-caption { position:static; transform:none; background:linear-gradient(135deg, var(--ghds-primary), var(--ghds-dark)); }
    .ghds-vmedia-photo,
    .ghds-vmedia-hero .ghds-vmedia-photo,
    .ghds-vmedia-mini .ghds-vmedia-photo { min-height:260px; }
}

/* v2.5.0 Production candidate polish: mobile conversion, QA badges, footer trust strip */
.ghds-production-proof-section {
  padding: clamp(22px, 4vw, 52px) 0;
  background: linear-gradient(180deg, #fff, #f6f9fc);
}
.ghds-production-proof-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: clamp(12px, 1.8vw, 22px);
}
.ghds-production-proof-grid article {
  min-height: 100%;
  padding: clamp(16px, 2.2vw, 26px);
  border-radius: clamp(16px, 2vw, 26px);
  background: #fff;
  border: 1px solid rgba(6,40,74,.10);
  box-shadow: 0 14px 38px rgba(7,17,31,.06);
}
.ghds-production-proof-grid strong {
  display: block;
  color: var(--ghds-primary);
  font-size: clamp(.98rem, 1.15vw, 1.14rem);
  line-height: 1.12;
  margin-bottom: .55rem;
}
.ghds-production-proof-grid span {
  display: block;
  color: var(--ghds-muted);
  line-height: 1.55;
  font-size: clamp(.86rem, .95vw, .98rem);
}
.ghds-launch-badges-section { padding: clamp(26px, 4vw, 54px) 0; background: var(--ghds-dark); color: #fff; }
.ghds-launch-badges {
  display: grid;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  gap: clamp(12px, 1.8vw, 22px);
}
.ghds-launch-badges article {
  padding: clamp(16px, 2.2vw, 24px);
  border-radius: 22px;
  background: rgba(255,255,255,.08);
  border: 1px solid rgba(255,255,255,.12);
  text-align: center;
}
.ghds-launch-badges strong { display:block; color:#fff; font-size: var(--ghds-h2-size); line-height:1; }
.ghds-launch-badges span { display:block; color: rgba(255,255,255,.72); font-weight: 800; margin-top: .55rem; }
.ghds-footer-credentials {
  max-width: 1240px;
  margin: 0 auto;
  padding: 0 clamp(18px, 3vw, 40px) clamp(18px, 2.6vw, 32px);
  display: flex;
  flex-wrap: wrap;
  gap: .65rem;
}
.ghds-footer-credentials span {
  display: inline-flex;
  align-items: center;
  border-radius: 999px;
  padding: .55rem .8rem;
  border: 1px solid rgba(255,255,255,.13);
  background: rgba(255,255,255,.06);
  color: rgba(255,255,255,.78);
  font-size: clamp(.78rem, .85vw, .9rem);
  font-weight: 800;
}
.ghds-footer-credentials span:before {
  content: '';
  width: .48rem;
  height: .48rem;
  border-radius: 50%;
  background: var(--ghds-gold);
  margin-right: .48rem;
}
.ghds-mobile-cta-bar {
  position: fixed;
  left: 0;
  right: 0;
  bottom: 0;
  z-index: 999998;
  display: none;
  padding: 10px 12px calc(10px + env(safe-area-inset-bottom));
  background: rgba(7,17,31,.92);
  border-top: 1px solid rgba(255,255,255,.12);
  backdrop-filter: blur(14px);
}
.ghds-mobile-cta-inner {
  display: grid;
  grid-template-columns: .78fr 1.1fr .78fr;
  gap: 8px;
  max-width: 620px;
  margin: 0 auto;
}
.ghds-mobile-cta-inner a {
  min-height: 44px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border-radius: 999px;
  padding: .7rem .9rem;
  background: rgba(255,255,255,.10);
  color: #fff !important;
  font-size: .86rem;
  font-weight: 900;
  text-decoration: none;
}
.ghds-mobile-cta-inner a.is-primary {
  background: var(--ghds-gold);
  color: var(--ghds-dark) !important;
}
.ghds-admin-score {
  max-width: 420px;
  display: flex;
  align-items: center;
  gap: 18px;
  margin: 18px 0 24px;
  padding: 18px 20px;
  border-radius: 18px;
  background: #fff;
  border: 1px solid #dcdcde;
  box-shadow: 0 8px 30px rgba(0,0,0,.05);
}
.ghds-admin-score strong { font-size: 42px; color: #06284a; letter-spacing: -.05em; }
.ghds-admin-score span { color: #50575e; font-weight: 700; }
.ghds-qa-pass,
.ghds-qa-fail { display:inline-flex; align-items:center; border-radius:999px; padding:4px 10px; font-weight:800; }
.ghds-qa-pass { color:#006b2a; background:#e6f6ed; }
.ghds-qa-fail { color:#8a2424; background:#fdeaea; }
@media (max-width: 980px) {
  .ghds-production-proof-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .ghds-launch-badges { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 640px) {
  body { padding-bottom: 76px; }
  .ghds-mobile-cta-bar { display: block; }
  .ghds-mobile-cta-inner { grid-template-columns: .72fr 1.18fr .72fr; }
  .ghds-production-proof-grid,
  .ghds-launch-badges { grid-template-columns: 1fr; }
  .ghds-site-header { position: sticky; top: 0; }
  .ghds-main-nav a,
  .ghds-nav-dropdown > a { padding: 10px 4px; }
}

/* v2.5.2 visual front-end cleanup: image cards should lead with photos, not labels or filler copy. */
.ghds-media-surface.ghds-has-media .ghds-media-placeholder.ghds-image-overlay,
.ghds-vmedia-card.ghds-has-media .ghds-vmedia-placeholder {
    display: none !important;
}
.ghds-media-surface.ghds-has-media .ghds-media-placeholder.ghds-video-only {
    inset: auto auto clamp(12px, 1.5vw, 18px) clamp(12px, 1.5vw, 18px);
    display: inline-flex;
    width: auto;
    height: auto;
    padding: 6px 10px;
    border-radius: 999px;
    background: rgba(7,17,31,.72);
    color: #fff;
    font-size: .72rem;
    letter-spacing: .08em;
    text-transform: uppercase;
}
.ghds-media-card.ghds-caption-minimal .ghds-media-body p,
.ghds-media-card.ghds-caption-minimal .ghds-media-body small,
.ghds-media-card.ghds-caption-minimal .ghds-media-open,
.ghds-vmedia-card.ghds-caption-minimal .ghds-vmedia-caption p,
.ghds-vmedia-card.ghds-caption-minimal .ghds-vmedia-caption em {
    display: none !important;
}
.ghds-media-card.ghds-caption-minimal .ghds-media-body {
    padding: clamp(12px, 1.6vw, 18px);
}
.ghds-media-card.ghds-caption-minimal .ghds-media-body h3 {
    margin: 0;
    font-size: clamp(1rem, 1.25vw, 1.24rem);
    line-height: 1.18;
}
.ghds-vmedia-card.ghds-caption-minimal .ghds-vmedia-caption {
    transform: none;
    padding: clamp(14px, 1.8vw, 22px);
    background: linear-gradient(180deg, rgba(7,17,31,0), rgba(7,17,31,.82));
}
.ghds-vmedia-card.ghds-caption-minimal .ghds-vmedia-caption h3 {
    margin-bottom: 0;
    font-size: clamp(1rem, 1.35vw, 1.34rem);
}
.ghds-vmedia-card.ghds-caption-minimal .ghds-vmedia-caption small {
    margin-bottom: 6px;
    font-size: .66rem;
}
.ghds-vmedia-card.ghds-caption-none .ghds-vmedia-caption,
.ghds-media-card.ghds-caption-none .ghds-media-body {
    display: none !important;
}

/* v2.5.3 equal-grid visual media controls */
.ghds-media-grid-equal {
    display: grid !important;
    grid-template-columns: repeat(var(--ghds-media-cols, 4), minmax(0, 1fr)) !important;
    gap: clamp(14px, 2vw, 24px);
    align-items: stretch;
}
.ghds-mosaic-grid.ghds-media-grid-equal {
    grid-auto-flow: row;
}
.ghds-mosaic-grid.ghds-media-grid-equal .ghds-vmedia-wide,
.ghds-mosaic-grid.ghds-media-grid-equal .ghds-vmedia-tall {
    grid-column: auto !important;
    grid-row: auto !important;
}
.ghds-media-grid-equal .ghds-vmedia-card,
.ghds-field-gallery.ghds-media-grid-equal .ghds-media-card {
    height: 100%;
    display: flex;
    flex-direction: column;
    min-width: 0;
}
.ghds-media-grid-equal .ghds-vmedia-photo,
.ghds-field-gallery.ghds-media-grid-equal .ghds-media-surface,
.ghds-media-wall.ghds-media-grid-equal .ghds-vmedia-photo,
.ghds-solution-media-grid.ghds-media-grid-equal .ghds-vmedia-photo {
    min-height: 0 !important;
    aspect-ratio: var(--ghds-media-ratio, 4 / 3);
    width: 100%;
    flex: 0 0 auto;
}
.ghds-media-grid-equal .ghds-vmedia-caption,
.ghds-field-gallery.ghds-media-grid-equal .ghds-media-body {
    position: static;
    transform: none !important;
    flex: 1 1 auto;
    min-height: clamp(82px, 8vw, 112px);
    display: flex;
    flex-direction: column;
    justify-content: flex-start;
}
.ghds-media-grid-equal .ghds-vmedia-caption {
    background: linear-gradient(135deg, var(--ghds-primary), var(--ghds-dark));
}
.ghds-media-grid-equal .ghds-caption-none .ghds-vmedia-caption,
.ghds-field-gallery.ghds-media-grid-equal .ghds-caption-none .ghds-media-body {
    display: none !important;
}
.ghds-media-grid-equal .ghds-vmedia-caption h3,
.ghds-field-gallery.ghds-media-grid-equal .ghds-media-body h3 {
    overflow-wrap: anywhere;
}
.ghds-mosaic-grid:not(.ghds-media-grid-equal) .ghds-vmedia-wide { grid-column: span 2; }
.ghds-mosaic-grid:not(.ghds-media-grid-equal) .ghds-vmedia-tall { grid-row: span 2; }
@media (max-width: 1080px) {
    .ghds-media-grid-equal,
    .ghds-media-wall.ghds-media-grid-equal,
    .ghds-solution-media-grid.ghds-media-grid-equal,
    .ghds-field-gallery.ghds-media-grid-equal {
        grid-template-columns: repeat(var(--ghds-media-cols-tablet, 2), minmax(0, 1fr)) !important;
    }
}
@media (max-width: 640px) {
    .ghds-media-grid-equal,
    .ghds-media-wall.ghds-media-grid-equal,
    .ghds-solution-media-grid.ghds-media-grid-equal,
    .ghds-field-gallery.ghds-media-grid-equal {
        grid-template-columns: repeat(var(--ghds-media-cols-mobile, 1), minmax(0, 1fr)) !important;
    }
    .ghds-media-grid-equal .ghds-vmedia-photo,
    .ghds-field-gallery.ghds-media-grid-equal .ghds-media-surface {
        aspect-ratio: var(--ghds-media-ratio, 4 / 3);
        min-height: 0 !important;
    }
}
