/* =============================================
   INNOVATION PATH — MAIN STYLESHEET
   innovationpath.org
   ============================================= */

:root{
    --page:#172b36;
    --surface:#0f1e26;
    --surface-soft:#1a3242;
    --ink:#ffffff;
    --muted:rgba(255,255,255,0.5);
    --line:rgba(255,255,255,0.08);
    --brand:#157664;
    --brand-deep:#172b36;
    --amber:#ffc801;
    --green:#a5b73c;
    --shadow:0 18px 46px rgba(0,0,0,0.2);
    --shadow-strong:0 24px 68px rgba(0,0,0,0.3);
    --radius-xl:32px;
    --radius-lg:20px;
    --radius-md:12px;
    --max:1180px;
}

/* ── RESET ── */
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;font-family:Inter,Arial,Helvetica,sans-serif;color:var(--ink);background:var(--page);line-height:1.6}
img{display:block;width:100%;max-width:100%}
a{text-decoration:none;color:inherit}
button,input,select,textarea{font:inherit}
:focus-visible{outline:3px solid rgba(21,118,100,.28);outline-offset:3px}
.skip-link{position:absolute;left:1rem;top:-4rem;background:var(--brand);color:#fff;padding:.85rem 1rem;border-radius:999px;z-index:999}
.skip-link:focus{top:1rem}

/* ── SKIP LINK ── */
.skip-link{position:absolute;left:1rem;top:-4rem;background:var(--brand);color:#fff;padding:.85rem 1rem;border-radius:999px;z-index:999}
.skip-link:focus{top:1rem}

/* ── ANNOUNCEMENT BANNER ── */
.banner{background:var(--brand);padding:6px 20px;text-align:center;font-size:clamp(11px,1.5vw,14px);font-weight:500;color:#fff}
.banner span{color:var(--amber)}
.site-header{position:sticky;top:0;z-index:1000;backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);background:rgba(23,43,54,.92);border-bottom:0.5px solid var(--line)}

/* ── SITE HEADER ── */
.site-header{position:sticky;top:0;z-index:1000}
.nav-inner{width:min(var(--max),92%);margin:0 auto;height:70px;display:flex;align-items:center;justify-content:space-between;gap:1.2rem}

/* ── LOGO ── */
.brand{display:flex;align-items:center;flex-shrink:0}
.brand img{width:300px;height:auto;object-fit:contain;display:block}

/* ── NAV LINKS ── */
.nav-links{display:flex;align-items:center;gap:1.5rem;flex-wrap:wrap}
.nav-link{font-size:clamp(12px,1.2vw,15px);color:var(--muted);cursor:pointer;transition:color .24s ease}
.nav-link:hover{color:var(--ink)}
.nav-link.active{color:var(--amber);font-weight:500}

/* ── BUTTONS ── */
.btn-primary{display:inline-flex;align-items:center;justify-content:center;padding:.4rem 1rem;border-radius:var(--radius-md);background:var(--amber);color:var(--brand-deep);font-weight:700;font-size:clamp(12px,1.2vw,15px);border:0;cursor:pointer;transition:transform .24s ease,background .24s ease,box-shadow .24s ease}
.btn-primary:hover,.btn-primary:focus{transform:translateY(-2px);background:#e6b400;box-shadow:0 14px 30px rgba(255,200,1,.22)}
.btn-outline{display:inline-flex;align-items:center;justify-content:center;padding:.5rem 1.2rem;border-radius:var(--radius-md);background:transparent;color:var(--amber);font-weight:700;font-size:clamp(12px,1.2vw,15px);border:1px solid var(--amber);cursor:pointer;transition:transform .24s ease,background .24s ease,box-shadow .24s ease}
.btn-outline:hover,.btn-outline:focus{transform:translateY(-2px);background:var(--amber);color:var(--brand-deep);box-shadow:0 14px 30px rgba(255,200,1,.22)}

/* ── DROPDOWN ── */
.dropdown-wrap{position:relative}
.dropdown{display:none;position:absolute;top:100%;left:0;background:var(--surface);border:0.5px solid rgba(255,255,255,.1);border-radius:var(--radius-md);padding:8px 0;min-width:180px;z-index:1001;box-shadow:var(--shadow)}
.dropdown a{display:block;font-size:clamp(13px,1.3vw,15px);color:rgba(255,255,255,.6);padding:10px 18px;transition:color .2s,background .2s}
.dropdown a:hover{color:var(--ink);background:rgba(255,255,255,.05)}
.dropdown a.highlight{color:var(--amber);font-weight:500}

/* ── LAYOUT ── */
main{display:block}
.container{width:min(var(--max),96%);margin-inline:auto}
.section{padding:4rem 0}
.divline{border:none;border-top:0.5px solid var(--line);margin:0}

/* ── TYPOGRAPHY ── */
.kicker{margin:0 0 .75rem;color:var(--green);text-transform:uppercase;letter-spacing:.18em;font-size:clamp(11px,1.1vw,13px);font-weight:900}
.section-title{margin:0 0 1rem;font-size:clamp(1.5rem,3vw,2.4rem);line-height:1.1;letter-spacing:-.04em;color:var(--ink)}
.section-intro{color:var(--muted);max-width:64ch;font-size:clamp(15px,1.6vw,18px);line-height:1.75}

/* ── HERO ── */
.hero{background:var(--surface);padding:clamp(2rem,4vw,3rem) 0;text-align:center;position:relative;overflow:hidden}
.hero-content{position:relative;z-index:2;width:min(var(--max),92%);margin-inline:auto}.hero video{position:absolute;top:0;left:0;width:100%;height:100%;object-fit:cover;z-index:0}
.hero-overlay{position:absolute;inset:0;background:rgba(15,30,38,.75);z-index:1}
.hero-kicker{font-size:clamp(10px,1.2vw,13px);color:var(--green);letter-spacing:.14em;text-transform:uppercase;margin-bottom:1rem}
.hero-title{margin:0 0 1rem;color:#fff;line-height:1.1;letter-spacing:-.04em;font-size:clamp(2.8rem,7vw,5rem)}
.hero-title span{color:var(--amber)}
.hero-copy{font-size:clamp(16px,1.7vw,20px);max-width:800px;color:rgba(255,255,255,.6);line-height:1.8;margin:0 auto 1rem}
.hero-buttons{display:flex;gap:12px;justify-content:center;flex-wrap:wrap;margin-top:1.5rem}

/* ── SECTION BLOCK ── */
.section-block{margin-bottom:4rem}
.section-head{margin-bottom:1.4rem}
.section-head .section-title{max-width:46rem}

/* ── SEC LABELS ── */
.sec-label{font-size:clamp(10px,1.1vw,13px);font-weight:500;color:var(--green);letter-spacing:.12em;text-transform:uppercase;margin-bottom:1.2rem}
.sec-title{font-size:clamp(1.4rem,3vw,2rem);font-weight:500;color:var(--ink);margin-bottom:.5rem}
.sec-body{font-size:clamp(15px,1.6vw,18px);color:var(--muted);line-height:1.75}

/* ── GRIDS ── */
.g2{display:grid;grid-template-columns:1fr 1fr;gap:2rem}
.g3{display:grid;grid-template-columns:repeat(3,1fr);gap:1.5rem}
.g6{display:grid;grid-template-columns:repeat(6,1fr);gap:1rem}

/* ── MISSION VISION VALUES ── */
.mvv-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:0}
.mvv-item{padding:0 1.5rem}
.mvv-item:not(:last-child){border-right:0.5px solid rgba(255,255,255,.15)}
.mvv-item:first-child{padding-left:0}
.mvv-item:last-child{padding-right:0}
.mvv-heading{font-size:clamp(16px,1.9vw,20px);font-weight:500;color:var(--ink);margin-bottom:.5rem}
.mvv-text{font-size:clamp(15px,1.6vw,17px);color:var(--muted);line-height:1.7}

/* ── WHO WE ARE ── */
.who-highlights{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem;margin-top:1.5rem}
.highlight-label{font-size:clamp(15px,1.5vw,17px);font-weight:500;color:var(--green);margin-bottom:.3rem}
.highlight-text{font-size:clamp(15px,1.5vw,17px);color:var(--muted);line-height:1.6}

/* ── SERVICE CARDS ── */
.service-card{background:rgba(255,255,255,.03);border:0.5px solid rgba(255,255,255,.08);border-top:2px solid var(--brand);border-radius:var(--radius-md);padding:1.5rem;display:flex;flex-direction:column;gap:.5rem;transition:transform .28s ease,box-shadow .28s ease}
.service-card:hover{transform:translateY(-4px);box-shadow:0 20px 48px rgba(0,0,0,.3)}
.service-number{font-size:2.5rem;font-weight:900;color:var(--brand);letter-spacing:-.06em;line-height:1;opacity:.35}
.service-title{font-size:clamp(15px,1.5vw,17px);font-weight:500;color:var(--ink);margin:0}
.service-text{font-size:clamp(14px,1.4vw,16px);color:var(--muted);line-height:1.7;margin:0}
.final-cta{margin:0 0 4rem;padding:2.4rem;border-radius:var(--radius-xl);background:linear-gradient(135deg,var(--brand),#0a4a3d);color:#fff;box-shadow:var(--shadow-strong);width:min(var(--max),92%);margin-inline:auto}
.final-cta .sec-label{color:rgba(255,255,255,.6)}
.final-cta .sec-title{color:#fff}
.final-cta .sec-body{color:rgba(255,255,255,.75);max-width:52rem}

/* ── TEAM ── */
.team-card{text-align:center;transition:transform .28s ease}
.team-card:hover{transform:translateY(-3px)}
.team-photo{background:rgba(255,255,255,.05);aspect-ratio:3/4;display:flex;align-items:center;justify-content:center;margin-bottom:.75rem;border-radius:var(--radius-md);overflow:hidden}
.team-photo img{width:100%;height:100%;object-fit:cover;object-position:top}
.team-name{font-size:clamp(13px,1.3vw,16px);font-weight:500;color:var(--ink);margin-bottom:.2rem}
.team-quals{font-size:clamp(11px,1vw,13px);color:var(--ink);margin-bottom:.2rem;font-weight:500}
.team-role{font-size:clamp(12px,1.2vw,14px);color:rgba(255,255,255,.45)}

/* ── CONTACT ── */
.contact-grid{display:grid;grid-template-columns:2fr 1fr;gap:2rem}
.contact-side{padding-left:2rem;border-left:0.5px solid rgba(255,255,255,.1)}
.form-label{font-size:clamp(13px,1.3vw,15px);font-weight:500;color:rgba(255,255,255,.45);display:block;margin-bottom:4px}
.form-row{display:grid;grid-template-columns:1fr 1fr;gap:1rem;margin-bottom:1rem}
.form-field{margin-bottom:1rem}
input,select,textarea{width:100%;background:rgba(255,255,255,.05);border:0.5px solid rgba(255,255,255,.12);border-radius:var(--radius-md);padding:10px 12px;font-size:clamp(14px,1.4vw,16px);color:var(--ink);outline:none;box-sizing:border-box;transition:border-color .2s,background .2s}
input:focus,select:focus,textarea:focus{border-color:var(--brand);background:rgba(21,118,100,.06)}
input::placeholder,textarea::placeholder{color:rgba(255,255,255,.25)}
select{color:rgba(255,255,255,.5)}
select option{background:var(--surface);color:var(--ink)}
textarea{resize:vertical;min-height:100px}
.contact-detail-label{font-size:clamp(13px,1.3vw,15px);font-weight:500;color:var(--ink);margin:0 0 4px;display:block}
.contact-detail-text{font-size:clamp(13px,1.3vw,15px);color:var(--muted);line-height:1.7;margin-bottom:1rem}
.contact-detail-text a{color:var(--muted)}
.contact-detail-text a.highlight{color:var(--amber)}

/* ── FOOTER ── */
.footer{background:var(--surface);padding:14px 20px;text-align:center;border-top:0.5px solid var(--line)}
.footer-links{font-size:clamp(12px,1.2vw,15px);color:rgba(255,255,255,.35);margin-bottom:6px}
.footer-links a{color:rgba(255,255,255,.35);transition:color .2s}
.footer-links a:hover{color:var(--ink)}
.coming-soon{color:rgba(255,255,255,.15)}
.coming-soon-tag{font-size:10px;color:var(--green)}
.footer-copy{font-size:clamp(11px,1.1vw,13px);color:rgba(255,255,255,.2)}

/* ── RESPONSIVE ── */
@media(max-width:1100px){
    .g3,.mvv-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
    .g6{grid-template-columns:repeat(3,minmax(0,1fr))}
    .contact-grid{grid-template-columns:1fr}
    .contact-side{padding-left:0;border-left:none;border-top:0.5px solid rgba(255,255,255,.1);padding-top:2rem}
    .g2{grid-template-columns:1fr}
}
@media(max-width:820px){
    .nav-links{display:none}
    .mvv-grid{grid-template-columns:1fr}
    .mvv-item{padding:1rem 0;border-right:none;border-bottom:0.5px solid rgba(255,255,255,.1)}
    .mvv-item:last-child{border-bottom:none}
    .g3{grid-template-columns:1fr}
    .g6{grid-template-columns:repeat(2,minmax(0,1fr))}
    .who-highlights{grid-template-columns:1fr}
    .form-row{grid-template-columns:1fr}
}
@media(max-width:560px){
    .hero-title{font-size:clamp(2rem,10vw,3rem)}
    .hero-buttons{flex-direction:column;align-items:center}
    .g6{grid-template-columns:repeat(2,minmax(0,1fr))}
}
