@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Manrope:wght@400;500;600;700;800&display=swap');
:root{--navy:#142B45;--deep:#102136;--teal:#6B9D98;--mint:#e8f1ed;--ink:#263a4c;--muted:#6c7c8a;--paper:#fafaf8;--line:#e3e9e8;--white:#fff}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:'DM Sans',sans-serif;line-height:1.65;-webkit-font-smoothing:antialiased}a{text-decoration:none;color:inherit}button{font:inherit}.wrap{width:min(1160px,calc(100% - 72px));margin:auto}.nav{background:#fff;border-bottom:1px solid #eaf0ee;position:sticky;top:0;z-index:20}.nav-in{min-height:86px;display:flex;align-items:center;gap:36px}.brand{font-family:Manrope,sans-serif;font-size:25px;letter-spacing:-1.6px;font-weight:800;color:var(--navy)}.brand-dot{color:var(--teal)}.nav-links{display:flex;align-items:center;gap:27px;margin-left:auto}.nav-links a{font-size:13px;font-weight:700;color:#425363;transition:color .2s}.nav-links a:hover{color:var(--teal)}.nav-cta{margin-left:9px}.btn{display:inline-flex;justify-content:center;align-items:center;gap:12px;padding:15px 23px;border-radius:8px;font-size:13px;font-weight:800;letter-spacing:.01em;transition:transform .2s,background .2s;border:1px solid transparent;cursor:pointer}.btn:hover{transform:translateY(-2px)}.btn-primary{color:#fff;background:var(--navy)}.btn-primary:hover{background:#224567}.btn-teal{background:var(--teal);color:#fff}.btn-outline{border-color:#cbd7d6;color:var(--navy);background:transparent}.btn-white{background:#fff;color:var(--navy)}.hamb{display:none;background:transparent;border:0;font-size:25px;margin-left:auto;color:var(--navy)}.eyebrow{font-size:11px;letter-spacing:.19em;font-weight:800;text-transform:uppercase;color:#54857f}.hero{padding:95px 0 110px;overflow:hidden;background:linear-gradient(115deg,#fbfcfa 0%,#fbfcfa 57%,#e8f0ec 100%)}.hero-grid{display:grid;grid-template-columns:1.12fr .88fr;align-items:center;gap:90px}.hero h1,h1,h2,h3{font-family:Manrope,sans-serif;color:var(--navy);line-height:1.14;letter-spacing:-.052em}.hero h1{font-size:clamp(42px,5vw,70px);margin:20px 0 25px;font-weight:800;max-width:700px}.hero h1 span{color:var(--teal)}.hero p{font-size:16px;line-height:1.9;color:#647585;max-width:540px}.hero-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:31px}.micro{display:flex;align-items:center;gap:12px;margin-top:38px;font-size:12px;color:#788a8d}.micro i{display:block;width:28px;height:1px;background:var(--teal)}.hero-art{position:relative;height:466px;background:linear-gradient(145deg,#dcebe5,#f8faf7);border-radius:20px;box-shadow:0 20px 80px #15304a0b;border:1px solid #e2ece6;padding:32px;overflow:hidden}.orbit{position:absolute;border:1px solid #b7cfca;border-radius:50%;width:470px;height:470px;top:-155px;right:-180px}.orbit.two{width:340px;height:340px;top:-88px;right:-104px}.orbit.three{width:210px;height:210px;top:-23px;right:-38px}.art-top{position:relative;z-index:1;font-size:11px;letter-spacing:.17em;font-weight:800;color:#69928b;text-transform:uppercase}.path-box{position:absolute;bottom:30px;left:30px;right:30px;background:white;padding:27px 30px;border-radius:12px;box-shadow:0 15px 45px #173b3b1c}.path-box p{font-size:11px;letter-spacing:.12em;text-transform:uppercase;font-weight:700;margin:0 0 16px;color:#78938d}.path-list{display:flex;align-items:center;gap:10px}.path-step{flex:1;font-size:12px;font-weight:800;color:var(--navy);line-height:1.4}.path-step span{display:block;font-size:10px;font-weight:500;color:#788a8d;margin-top:6px}.arrow{color:var(--teal);font-size:19px}.floating-note{position:absolute;top:130px;left:40px;z-index:2;background:#f8fffd;border:1px solid #dce8e2;padding:16px 20px;border-radius:10px;box-shadow:0 10px 20px #456d6711}.floating-note strong{display:block;color:var(--navy);font:800 24px Manrope,sans-serif;line-height:1.3}.floating-note small{font-size:11px;color:#78928a}.section{padding:110px 0}.section-header{max-width:715px;margin:0 auto 55px;text-align:center}.section-header h2{font-size:clamp(32px,3.4vw,48px);margin:13px 0 16px}.section-header p{color:#6b7b89;font-size:15px;line-height:1.9;margin:0}.two-col{display:grid;grid-template-columns:1fr 1fr;gap:90px;align-items:center}.large-title{font-size:clamp(33px,3.8vw,50px);margin:16px 0 20px}.lead{color:#687988;line-height:1.94;font-size:15px}.quote-panel{background:var(--navy);padding:52px;border-radius:16px;color:#fff;position:relative;overflow:hidden}.quote-panel:after{content:'↗';font-size:215px;position:absolute;right:-25px;bottom:-115px;color:#ffffff0a}.quote-panel .eyebrow{color:#9cc5bd}.quote-panel h3{color:#fff;letter-spacing:-.045em;font-size:31px;margin:24px 0}.quote-panel p{color:#b6c5cc;font-size:14px;max-width:430px}.milestones{display:flex;gap:9px;flex-wrap:wrap;margin-top:32px}.milestones span{padding:9px 12px;border:1px solid #ffffff35;border-radius:6px;font-size:11px;color:#f2fbf9}.services{background:#f1f5f3}.service-header{display:flex;justify-content:space-between;align-items:end;gap:20px;margin:0 0 27px}.service-header h3{margin:0;font-size:24px;letter-spacing:-.04em}.service-header small{color:#76908c;font-size:12px}.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-bottom:53px}.cards.two{grid-template-columns:repeat(2,1fr)}.service-card{background:white;border:1px solid #e3eae7;border-radius:13px;padding:30px;display:flex;flex-direction:column;min-height:300px;box-shadow:0 2px 2px #11223303;transition:transform .2s,box-shadow .2s}.service-card:hover{transform:translateY(-5px);box-shadow:0 15px 35px #11223310}.card-top{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.pill{color:#5b877e;background:#e8f1ee;font-size:10px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;padding:6px 10px;border-radius:5px}.price{font:800 25px Manrope,sans-serif;letter-spacing:-.07em;color:var(--navy)}.service-card h4{font:800 19px Manrope,sans-serif;letter-spacing:-.04em;color:var(--navy);margin:28px 0 8px}.service-card p{font-size:13px;line-height:1.8;color:#71818b;margin:0 0 16px}.card-meta{font-size:11px;color:#718f88;margin-top:auto;padding-top:18px;border-top:1px solid #eef1f0;font-weight:800;letter-spacing:.01em}.card-link{display:inline-flex;align-items:center;gap:8px;font-size:12px;font-weight:800;color:var(--navy);margin-top:15px}.card-link:hover{color:var(--teal)}.value-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:26px}.value{border-top:1px solid #d4dfdb;padding-top:27px}.value-num{font:800 13px Manrope;color:#78a59a}.value h3{font-size:19px;letter-spacing:-.04em;margin:17px 0 8px}.value p{font-size:13px;line-height:1.85;color:#70808c;margin:0}.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;margin-top:60px}.step{background:white;border:1px solid #e3ebe7;padding:30px;border-radius:11px}.step b{display:flex;width:33px;height:33px;align-items:center;justify-content:center;background:var(--mint);color:#5c8b82;border-radius:50%;font-size:12px}.step h3{font-size:19px;margin:23px 0 10px}.step p{font-size:13px;color:#778793;margin:0}.cta-section{background:var(--navy);padding:88px 0;color:white}.cta-grid{display:flex;align-items:center;justify-content:space-between;gap:35px}.cta-grid h2{color:white;font-size:clamp(32px,3.6vw,49px);margin:0 0 15px}.cta-grid p{color:#b5c6cf;margin:0}.cta-actions{display:flex;gap:11px;flex-wrap:wrap}.footer{padding:55px 0 24px;background:#101f31;color:#c3ced1}.footer-grid{display:grid;grid-template-columns:1.5fr 1fr 1fr;gap:80px}.footer .brand{color:white}.footer p{font-size:12px;color:#98aab1;line-height:1.9;max-width:440px}.footer h4{font:800 12px Manrope,sans-serif;color:#fff;margin:9px 0 18px}.footer a{display:block;font-size:12px;color:#aabcc3;padding:5px 0}.footer a:hover{color:white}.footer-bottom{border-top:1px solid #ffffff1a;padding-top:19px;margin-top:37px;font-size:11px;color:#82979f}.page-hero{padding:95px 0 85px;background:linear-gradient(115deg,#f8fbf9,#edf4f0);text-align:center}.page-hero h1{font-size:clamp(38px,5vw,60px);margin:17px auto;max-width:800px}.page-hero p{max-width:670px;margin:0 auto;color:#70838d}.content{max-width:810px;margin:0 auto;padding:80px 30px 110px}.content h2{font-size:29px;letter-spacing:-.04em;margin-top:46px}.content p,.content li{color:#687988;line-height:1.9}.content a{color:#518a80;text-decoration:underline}.faq-item{border-bottom:1px solid var(--line);padding:17px 0}.faq-item summary{font-weight:800;color:var(--navy);cursor:pointer;padding:10px 0}.faq-item p{color:#6c7d88;font-size:14px;padding-right:30px}.notice{background:#e8f1ee;border:1px solid #cadcd6;border-radius:9px;padding:18px 21px;font-size:13px;color:#45645f;margin:25px 0}.simple-list{padding-left:20px}.contact-card{background:#fff;border:1px solid var(--line);border-radius:12px;padding:25px;margin-top:26px}.small{font-size:12px;color:#7d8b94}.linkbtn{display:inline-block;margin-top:18px}.legal{font-size:14px}.legal h2{font-size:21px}.legal p{margin-bottom:21px}@media(max-width:900px){.nav-links{gap:14px}.nav-links a{font-size:11px}.hero-grid{gap:35px}.cards{grid-template-columns:1fr 1fr}.cards.two{grid-template-columns:1fr 1fr}.two-col{gap:40px}.footer-grid{gap:30px}}@media(max-width:700px){.wrap{width:min(100% - 38px,1160px)}.nav-in{min-height:70px}.hamb{display:block}.nav-links{display:none;position:absolute;top:70px;left:0;right:0;background:#fff;border-bottom:1px solid var(--line);padding:20px;flex-direction:column;align-items:flex-start;gap:16px;box-shadow:0 14px 30px #213e4b13}.nav-links.open{display:flex}.nav-cta{margin-left:0}.hero{padding:65px 0 75px}.hero-grid,.two-col,.footer-grid{grid-template-columns:1fr}.hero-grid{gap:42px}.hero h1{font-size:43px}.hero-art{height:340px}.floating-note{top:70px;left:25px}.path-box{padding:18px;left:15px;right:15px;bottom:15px}.path-step{font-size:10px}.path-step span{font-size:9px}.section{padding:75px 0}.section-header{margin-bottom:35px}.cards,.cards.two,.value-grid,.steps{grid-template-columns:1fr}.service-card{min-height:0}.service-header{align-items:start;flex-direction:column}.quote-panel{padding:32px}.cta-grid{flex-direction:column;align-items:flex-start}.cta-section{padding:65px 0}.footer-grid{gap:25px}.page-hero{padding:65px 0}.content{padding:50px 24px 75px}.milestones{gap:6px}}

/* Clear, self-contained service offers on Applications and Interviews pages. */
.offer-block{background:#fff;border:1px solid #dde8e4;border-radius:15px;padding:31px 35px 33px;margin:0 0 26px;box-shadow:0 6px 24px rgba(20,43,69,.035);position:relative;overflow:hidden}
.offer-block::before{content:"";position:absolute;top:0;left:0;bottom:0;width:3px;background:#7fa69c}
.offer-heading{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:start;gap:20px}
.content .offer-heading h2{font-size:clamp(23px,2.5vw,28px);line-height:1.27;margin:0;letter-spacing:-.045em}
.offer-price{font:800 29px/1.1 Manrope,sans-serif;letter-spacing:-.045em;color:var(--navy);white-space:nowrap;text-align:right;padding-top:1px}
.offer-price-suffix{display:block;font:700 11px/1.5 'DM Sans',sans-serif;color:#66867d;letter-spacing:0;margin-top:4px}
.content .offer-meta{color:#60877d;font-size:12px;font-weight:800;letter-spacing:.025em;line-height:1.6;margin:12px 0 22px}
.offer-block > p:not(.offer-meta){font-size:14px;line-height:1.85;margin:0 0 14px}
.offer-block > p:last-child{margin-bottom:0}
@media(max-width:700px){.offer-block{padding:24px 21px 26px;margin-bottom:18px}.offer-heading{gap:12px}.content .offer-heading h2{font-size:21px}.offer-price{font-size:24px}.content .offer-meta{margin:11px 0 19px;font-size:11px}.offer-block > p:not(.offer-meta){font-size:13px}}


/* IMGate header CTA accessibility contrast */
.nav-links a.nav-cta {
  background-color: #142B45 !important;
  color: #FFFFFF !important;
  border: 1px solid #142B45 !important;
  font-weight: 800;
  font-size: 14px;
  line-height: 1.3;
  text-decoration: none;
  box-shadow: 0 4px 12px rgba(20,43,69,0.14);
}
.nav-links a.nav-cta:hover,
.nav-links a.nav-cta:focus-visible {
  background-color: #0f2236 !important;
  color: #FFFFFF !important;
  border-color: #0f2236 !important;
}
@media (max-width: 700px) {
  .nav-links a.nav-cta {
    width: 100%;
    justify-content: center;
  }
}


/* Audience insight prompts on the homepage */
.audience-section{background:#f1f5f3}
.audience-section .section-header{margin-bottom:38px}
.audience-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
.audience-quote{margin:0;background:#fff;border:1px solid #dfe9e5;border-radius:12px;padding:25px 28px;color:var(--navy);font:700 18px/1.55 Manrope,sans-serif;letter-spacing:-.025em;box-shadow:0 4px 18px rgba(20,43,69,.035)}
.audience-quote::before{content:'“';display:block;color:var(--teal);font:800 32px/1 Manrope,sans-serif;margin-bottom:10px}
@media(max-width:700px){.audience-grid{grid-template-columns:1fr}.audience-quote{font-size:16px;padding:22px}}

/* Accessible fictional assessment comparison */
.sample-table-wrap { overflow-x: auto; margin: 20px 0; }
.sample-table { width: 100%; border-collapse: collapse; font-size: 13px; line-height: 1.65; }
.sample-table th, .sample-table td { padding: 13px 12px; text-align: left; vertical-align: top; border-bottom: 1px solid #d9e3e4; }
.sample-table thead th { background: #eff4f1; color: #142B45; }
.sample-table tbody th { width: 32%; }
@media (max-width: 700px) { .sample-table th, .sample-table td { padding: 10px 7px; font-size: 12px; } }

/* Approved navy and gold gateway logo */
.brand{display:inline-block;flex-shrink:0;line-height:0;letter-spacing:normal}.brand-logo-frame{display:block;position:relative;overflow:hidden;width:224px;height:67px;background:#fffdf7;border-radius:3px}.brand-logo{position:absolute;display:block;width:160%;max-width:none;height:auto;left:-30%;top:50%;transform:translateY(-48%)}.nav .brand-logo-frame{mix-blend-mode:multiply}.footer a.brand{display:inline-block;padding:0}.footer .brand-logo-frame{width:240px;height:72px}.brand:focus-visible{outline:2px solid #b18b50;outline-offset:5px}@media(max-width:1100px) and (min-width:701px){.nav-in{gap:20px}.nav .brand-logo-frame{width:190px;height:57px}.nav-links{gap:16px}.nav-links a{font-size:12px}}@media(max-width:700px){.nav .brand-logo-frame{width:190px;height:57px}}


/* First-person founder letter */
.founder-letter{max-width:900px;padding-top:64px;padding-bottom:96px}
.founder-note{background:#fff;border:1px solid #e1e9e6;border-radius:16px;padding:clamp(28px,5vw,60px);box-shadow:0 14px 45px rgba(20,43,69,.055)}
.founder-note .eyebrow{margin-bottom:12px}
.content .founder-note h2{font-size:clamp(27px,3vw,38px);margin:0 0 25px}
.founder-note p{font-size:15px;line-height:1.95}
.founder-note .letter-signoff{margin-top:30px;color:var(--navy)}
.founder-note .letter-signoff strong{display:block;color:var(--navy);margin-top:8px}
.founder-next{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin-top:27px}
.founder-next p{flex-basis:100%;margin:0 0 4px}
.founder-next .btn{text-decoration:none}
@media(max-width:700px){.founder-letter{padding-top:42px;padding-bottom:68px}.founder-next{align-items:stretch;flex-direction:column}.founder-next .btn{width:100%}}
