﻿
@font-face {
  font-family: "Inter";
  font-style: normal;
  font-weight: 400 700;
  font-display: swap;
  src: url("/assets/vendors/inter-v20/inter-latin.woff2") format("woff2");
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
@font-face {
  font-family: "Inter";
  font-style: normal;
  font-weight: 400 700;
  font-display: swap;
  src: url("/assets/vendors/inter-v20/inter-latin-ext.woff2") format("woff2");
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
    :root {
      --ink: #07111f;
      --ink-soft: #142235;
      --brand-color: #0080FF;
      --brand-color-dark: #003063;
	  --brand-color-med: #66b3ff;
      --brand-color-light: #99ccff;
      --surface: #f5f7f9;
      --muted: #607085;
      --border: #dfe5eb;
    }
    html { scroll-behavior: smooth; }
	
    body {
      color: var(--ink);
      background: #fff;
      font-family: "Inter", system-ui, -apple-system, "Segoe UI", sans-serif;
      -webkit-font-smoothing: antialiased;
    }
	
    h1, h2, h3, h4 { letter-spacing: -.035em; }
    
	p { line-height: 1.75; }
    
	a { text-decoration: none; }
    
	.link-txt { color: var(--ink); font-weight: 500; }
	.link-txt:hover { color: var(--brand-color-med); text-decoration: underline; }
	
	.logo img {
		padding: 0;
		margin: 0;
		max-height: 2.8rem;
	}

	.navbar {
      min-height: 80px;
      border-bottom: 1px solid rgba(223, 229, 235, .9);
      background: var(--brand-color-dark);
      backdrop-filter: blur(14px);
    }
	.navbar .container {  }
	
    .brand-name { font-size: 1.05rem; font-weight: 700; color: var(--brand-color-light); }
    .brand-tagline { display: block; color: var(--brand-color-light); font-size: 1rem; text-align: center;}
    .navbar .nav-link { color: white; font-size: 1rem; font-weight: 500; }
	.navbar .nav-link:hover, .navbar .nav-link.show { color: var(--brand-color-light); }
    .navbar .nav-link.active { color: var(--brand-color-light); }
	.navbar .dropdown ul { background-color: #888; }
	.navbar .dropdown .dropdown-item:hover { background-color: #aaa; }
	.navbar .dropdown .dropdown-item.active, .navbar .dropdown .dropdown-item.active:hover { background-color: var(--brand-color); }
	.navbar-toggler-icon { color: white; }
	.navbar-toggler { margin-top: 1.5rem; }
	.navbar-collapse { margin-top: 2rem; }

    .btn {
      border-radius: 999px;
      font-weight: 600;
      padding: .78rem 1.35rem;
    }
    .btn-dark { background: var(--ink); border-color: var(--ink); }
    .btn-dark:hover { background: var(--brand-color-dark); border-color: var(--brand-color-dark); }
    .btn-brand { color: var(--ink); background: var(--brand-color); border-color: var(--brand-color); }
    .btn-brand:hover { color: var(--ink); background: var(--brand-color-light); border-color: var(--brand-color-light); }
	.btn-send { min-width: 9rem; }

    .hero {
      position: relative;
      min-height: 720px;
      overflow: hidden;
      color: #fff;
      background:
        radial-gradient(circle at 78% 20%, rgba(0, 128, 255, .35), transparent 32%),
        radial-gradient(circle at 12% 88%, rgba(37, 99, 235, .28), transparent 30%),
        var(--ink);
    }
    .hero .container { min-height: 720px; }
	
	.hero h1 { max-width: 820px; font-size: clamp(3rem, 6vw, 4.5rem); font-weight: 700; line-height: 1.1; }
    .hero .lead { max-width: 720px; color: var(--brand-color-light); font-size: clamp(1.05rem, 2vw, 1.25rem); }

    .eyebrow, .legal-copy h2 {
      color: var(--brand-color);
      font-size: 1rem;
      font-weight: 700;
      letter-spacing: .18em;
      text-transform: uppercase;
    }


    .hero-badge {
      display: inline-flex;
      align-items: center;
      gap: .55rem;
      padding: .55rem .95rem;
      border: 1px solid rgba(255, 255, 255, .16);
      border-radius: 999px;
      color: var(--brand-color-light);
      background: rgba(255, 255, 255, .05);
      font-size: 1rem;
    }

    .hero-panel {
      padding: 2rem;
      border: 1px solid rgba(255, 255, 255, .15);
      border-radius: 2rem;
      background: rgba(255, 255, 255, .08);
      box-shadow: 0 30px 70px rgba(0, 0, 0, .3);
      backdrop-filter: blur(8px);
    }

    .hero-panel-item {
      display: flex;
      align-items: center;
      gap: 1rem;
      padding: 1rem;
      border: 1px solid rgba(255, 255, 255, .09);
      border-radius: 1rem;
      background: rgba(7, 17, 31, .48);
    }

    .step-dot {
      display: inline-flex;
      flex: 0 0 auto;
      align-items: center;
      justify-content: center;
      width: 45px;
      height: 45px;
      border-radius: 50%;
      color: var(--brand-color-light);
      background: rgba(153, 204, 255, .14);
      font-size: 1.2rem;
      font-weight: 700;
    }

	.icon-list {
		list-style: none;
		padding-left: 0;
	}
	.icon-list li {
		display: flex;
		margin-bottom: 0.5rem;
	}
	.icon-list li i {
		margin-right: 0.5 rem;
	}
 
    .proof-strip { border-bottom: 1px solid var(--border); }
    .proof-item { color: var(--brand-color-dark);; font-size: 1.2rem; font-weight: 500; }
    .proof-item i { color: var(--brand-color-dark); }

    .section-space { padding: 5rem 0; }
    .section-light { background: var(--surface); }
    .section-dark { color: #fff; background: var(--ink); }
    .section-title { max-width: 760px; font-size: clamp(2.3rem, 4vw, 3.5rem); font-weight: 700; }
    .section-intro { max-width: 750px; color: var(--muted); font-size: 1.1rem; }


    .service-card {
      height: 100%;
      padding: 2rem;
      border: 1px solid var(--border);
      border-radius: 1.75rem;
      background: #fff;
      box-shadow: 0 8px 26px rgba(7, 17, 31, .04);
      transition: transform .25s ease, box-shadow .25s ease;
    }


    .service-card:hover { transform: translateY(-5px); box-shadow: 0 22px 44px rgba(7, 17, 31, .1); }


    .icon-box {
      display: inline-flex;
      align-items: center;
      justify-content: center;
      width: 75px;
      height: 75px;
      border-radius: 1rem;
      color: var(--brand-color-dark);
      background: var(--brand-color-light);
      font-size: 2rem;
    }


    
    .service-card-feature {
      position: relative;
      border-color: var(--brand-color-light);
      box-shadow: 0 12px 34px rgba(0, 128, 255, .12);
    }
    
    .service-card-tag {
      position: absolute;
      top: 1.5rem;
      right: 1.5rem;
      padding: .3rem .8rem;
      border-radius: 999px;
      background: var(--brand-color-light);
      color: var(--brand-color-dark);
      font-size: .5rem;
      font-weight: 700;
      letter-spacing: .12em;
      text-transform: uppercase;
    }
    .service-card h3 { font-size: 1.45rem; font-weight: 700; }
    .service-card p { color: var(--muted); }
    .service-card li { margin-bottom: .8rem; color: #405065; font-size: .91rem; }
    .service-card li i { color: var(--brand-color-dark); }


    .sector-card {
      display: flex;
      flex-direction: row;
      justify-content: flex-start;
	  align-items: center;
      padding: 1.6rem;
      border: 1px solid var(--border);
      border-radius: 1.5rem;
      background: var(--surface);
    }


    .sector-card i { color: var(--brand-color-dark); font-size: 3rem; margin-right: 1.5rem;}
    .sector-card strong { max-width: 260px; font-size: 1.05rem; }


    .approach-grid { overflow: hidden; border: 1px solid rgba(255, 255, 255, .25); border-radius: 1.75rem; }
    .approach-step { height: 100%; padding: 1.75rem; border-right: 1px solid rgba(255, 255, 255, .25); }
    .approach-grid > div:last-child .approach-step { border-right: 0; }
    .approach-step p { color: #99a7b7; font-size: .9rem; }

    .cta-section { padding: 5rem 0; background: var(--brand-color); color: white; }

	

	
	.hero-identity {
		padding-bottom: 1.5rem;
		border-bottom: 1px solid rgba(255, 255, 255, .12);
	}
	.hero-identity-photo {
		flex: 0 0 auto;
		width: 72px;
		height: 72px;
		border: 2px solid rgba(255, 255, 255, .35);
		border-radius: 50%;
		object-fit: cover;
		object-position: center top;
	}
	.hero-identity-name {
		color: #fff;
		font-size: 1.05rem;
		font-weight: 700;
		line-height: 1.3;
	}
	.hero-identity-role {
		font-size: .95rem;
	}

	
	.bio-single { max-width: 760px; }

	
	.commitment {
		margin-top: 3rem;
		padding: 2rem 2.25rem;
		border-left: 4px solid var(--brand-color);
		border-radius: 0 1.5rem 1.5rem 0;
		background: var(--surface);
	}
	.commitment-label {
		margin-bottom: .75rem;
		color: var(--brand-color);
		font-size: .82rem;
		font-weight: 700;
		letter-spacing: .16em;
		text-transform: uppercase;
	}
	.commitment p {
		margin-bottom: 0;
		color: var(--ink);
		font-size: 1.28rem;
		font-weight: 500;
		line-height: 1.55;
	}

	
	.bio-credentials {
		margin-top: 2.5rem;
		padding-top: 1.5rem;
		border-top: 1px solid var(--border);
		color: var(--muted);
		font-size: .95rem;
	}
	.bio-credentials strong { color: var(--ink); font-weight: 600; }
	
	.collab-card {
		padding: 2rem;
		border: 1px solid var(--border);
		border-radius: 1.75rem;
		background: #fff;
		box-shadow: 0 8px 26px rgba(7, 17, 31, .04);
	}
	.collab-photo {
		flex: 0 0 auto;
		width: 96px;
		height: 96px;
		border-radius: 50%;
		object-fit: cover;
		object-position: center top;
	}
	.collab-name { color: var(--dark-color, #07111f); font-size: 1.35rem; line-height: 1.3; }
	.collab-role { margin-top: .3rem; color: var(--brand-color-dark); font-weight: 600; }
	.collab-card p { color: #405065; }
	.collab-detail { margin-top: 1.5rem; padding-top: 1.5rem; border-top: 1px solid var(--border); }

	
	[aria-expanded="true"] .label-closed,
	[aria-expanded="false"] .label-open { display: none; }
	
	.form-aux {
		position: absolute !important;
		left: -10000px !important;
		top: auto !important;
		width: 1px !important;
		height: 1px !important;
		overflow: hidden !important;
	}
	#formAlert { margin-bottom: 1.5rem; }

	.steps,
	.profile-pillars {
		display: grid;
		grid-template-columns: repeat(4, 1fr);
		margin-top: 50px;
		overflow: hidden;
		border: 1px solid rgba(255, 255, 255, 0.25);
		border-radius: 28px;
	}
	.steps article,
	.profile-pillars article {
		padding: 28px;
		border-right: 1px solid rgba(255, 255, 255, 0.25);
	}
	.steps article:last-child,
	.profile-pillars article:last-child {
		border: 0;
	}
	.steps span,
	.profile-pillars span {
		color: #91ecdf;
		font-size: 0.85rem;
		font-weight: 750;
	}
	.steps p,
	.profile-pillars p {
		color: #9aa8b8;
		font-size: 0.9rem;
	}

	.profile-hero-grid {
		display: grid;
		grid-template-columns: 1fr 0.4fr;
		align-items: start;
		gap: 65px;
	}
	.portrait-placeholder {
		display: flex;
		flex-direction: column;
		justify-content: flex-start;
		max-width: 480px;
	}
	.portrait-placeholder img {
		border-radius: 3rem;
	}
	.bio-copy {
		color: #445368;
		font-size: 1rem;
	}

    .basic-hero, .profile-hero, .contact-hero { padding: 6.5rem 0; color: #fff; background: var(--ink); }
	.profile-hero h1 { font-size: 1.5rem; }
    .contact-hero h1 { max-width: 850px; font-size: clamp(3rem, 6vw, 4.7rem); font-weight: 700; }
    .basic-hero h1 { font-size: clamp(2.5rem, 5vw, 3.5rem); font-weight: 700; }
	.basic-hero p, .profile-hero p, .contact-hero p { max-width: 720px; color: #bac6d4; font-size: 1.1rem; }


    .contact-card {
      padding: clamp(1.5rem, 4vw, 2.6rem);
      border: 1px solid var(--border);
      border-radius: 2rem;
      background: #fff;
      box-shadow: 0 24px 55px rgba(7, 17, 31, .1);
    }


    .form-control, .form-select {
      min-height: 50px;
      border-color: #cfd7df;
      border-radius: .85rem;
    }


    textarea.form-control { min-height: 180px; }
    .form-control:focus, .form-select:focus { border-color: var(--brand-color-dark); box-shadow: 0 0 0 .25rem rgba(102, 179, 255, .14); }


    .contact-note { padding: 1.5rem; border: 1px solid var(--border); border-radius: 1.4rem; background: #fff; }
    footer { border-top: 1px solid var(--border); background-color: #fff; color: #4a5869;} 
	.footer-nav-link a { color: #4a5869; font-size: .9rem; line-height: 1.5;}
	.footer-nav-link:hover a { color: var(--brand-color-med); text-decoration: underline; }
	.footer-heading { color: #4a5869; line-height: 1; margin-bottom: 0.5em; font-weight: 600; }
	.footer-socialmedia { color: #4a5869; }
	.footer-socialmedia:hover { color: var(--brand-color-med); }

	.legal-copy {
		color: #445368;
		font-size: 1rem;
	}
	.legal-copy li {
		line-height: 1.75;
		margin-bottom: 0.5rem;
	}
	.legal-copy h2 {
		padding-top: 2rem;
		padding-bottom: 1rem;
	}

	@media (max-width: 1200px) {
	}

    @media (max-width: 992px) {
		.section-space { padding: 5rem 0; }
		.approach-step { border-right: 0; border-bottom: 1px solid rgba(255, 255, 255, .1); }
		.approach-grid > div:last-child .approach-step { border-bottom: 0; }
    
		.hero-grid,
		.profile-hero-grid,
		.split,
		.contact-grid {
			grid-template-columns: 1fr;
		}
		.hero-grid {
			padding-block: 60px;
		}
		.results-panel {
			max-width: 600px;
		}
		.cards-three {
			grid-template-columns: 1fr;
		}
		.steps,
		.profile-pillars {
			grid-template-columns: repeat(2, 1fr);
		}
		.steps article:nth-child(2),
		.profile-pillars article:nth-child(2) {
			border-right: 0;
		}
		.proof-grid {
			grid-template-columns: 1fr;
		}
		.cta-grid {
			grid-template-columns: 1fr;
		}
		.footer-grid {
			grid-template-columns: 1fr;
		}
		.section {
			padding: 80px 0;
		}
	}

	@media (max-width: 991.98px) {
		.hero-cta { align-items: center; justify-content: center; }
		.hero-identity { justify-content: center; text-align: center; }
	}

	@media (max-width: 620px) {
		
		.hero h1 { font-size: 2rem; }

		
		.commitment { padding: 1.5rem 1.4rem; }
		.commitment p { font-size: 1.15rem; }

		
		.hero-panel { padding: 1.5rem; }
		.hero-panel-item { gap: .75rem; padding: .85rem; }
		.hero-panel-item .step-dot { width: 34px; height: 34px; font-size: 1rem; }
		.hero-identity { padding-bottom: 1.15rem; }

		.container {
			width: min(100% - 28px, 1180px);
		}
		.nav-wrap {
			align-items: flex-start;
			flex-direction: column;
			padding-block: 16px;
		}
		.main-nav {
			width: 100%;
			justify-content: space-between;
		}

		.hero,
		.hero-grid {
			min-height: auto;
		}
		.results-panel {
			padding: 20px;
		}
		.sector-grid,
		.steps,
		.profile-pillars,
		.form-grid {
			grid-template-columns: 1fr;
		}
		.steps article,
		.profile-pillars article {
			border-right: 0;
			border-bottom: 1px solid rgba(255, 255, 255, 0.1);
		}
		.form-footer {
			align-items: flex-start;
			flex-direction: column;
		}
		.portrait-placeholder {
			min-height: 300px;
		}
		.section {
			padding: 65px 0;
		}
	}

	@media (max-width: 374.98px) {
		.service-card-tag { display: none; }
	}
