
:root{--ink:#132e40;--blue:#006282;--teal:#007d8b;--pale:#eff5f5;--muted:#49606f;--line:#dbe5e5}
body{background:#fcfdfd;font-family:Arial,Helvetica,sans-serif;max-width:none}
header{padding:18px 5.5%;background:#fff;border-bottom:0;box-shadow:0 2px 18px #132e4008}
.brand img{width:195px}nav{gap:22px;font-size:12px}nav .button.small{background:#132e40;padding:12px 17px;border-radius:6px}
h1,h2,h3{font-weight:600}h2{font-size:clamp(30px,3vw,44px);letter-spacing:-1.3px;line-height:1.15}
.eyebrow{font-size:10px;letter-spacing:2px;color:#007d8b}
.hero{background:#102c3e;grid-template-columns:1.15fr 1fr;min-height:0;padding:58px 5.5% 60px;gap:6%;color:#fff}
.hero-copy{padding:12px 0 0}.hero h1{font-size:clamp(42px,4.5vw,66px);line-height:1.08;letter-spacing:-2px;font-weight:500;margin:26px 0}.hero h1 em{color:#8cd6dd}
.hero .eyebrow{color:#8cd6dd;margin-bottom:16px}.hero .eyebrow i{background:#8cd6dd}
.hero p{color:#e1e9ed;font-size:16px;line-height:1.7;max-width:570px}.hero p.hero-detail{color:#c1d1da;font-size:14px;line-height:1.7;max-width:540px}
.hero .actions{margin:30px 0 26px;column-gap:10px}.hero .actions .button{font-size:12px;min-height:62px;padding:13px;border-radius:6px;background:#87d3da;color:#102c3e;gap:10px}.hero .actions .button:hover{background:#a5e1e5;color:#102c3e}.hero .actions .outline{background:#244555;color:#fff}.hero .actions .outline:hover{background:#315c70;color:#fff}.hero .actions .contact-action-note{color:#d4e3e9;font-size:10px}
.hero-meta{font-size:12px;color:#a9c1ce;gap:18px}.hero-meta span+span{border-color:#426171;padding-left:18px}
.hero-art{display:block;margin:0;min-height:490px;border-radius:14px;overflow:hidden;background:#17394a;align-self:stretch}.hero-art .hero-photo{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:56% 35%}.hero-art:after{display:block;content:'';position:absolute;inset:0;background:linear-gradient(180deg,transparent 45%,#102c3edb)}.hero-art .art-label{position:absolute;bottom:30px;left:30px;right:25px;padding:0;background:none;z-index:1}.art-label strong{font-size:30px;font-weight:500;margin:14px 0}.art-label span{color:#e4f7f8}.art-label small{color:#d1e4e9}
.kpi-band{background:#102c3e;border-top:1px solid #385261;padding:30px 5.5% 38px}.kpi-item strong{color:#8cd6dd}.kpi-item h2{font-weight:500}.kpi-experience-detail{color:#d9e5ea}
.intro-strip{padding:26px 5.5%;background:#eff5f5;border:0}.intro-strip p{font-size:14px;max-width:850px}
main>.hero-support{margin:0;padding:35px 5.5%;border-top:0;border-bottom:1px solid var(--line);display:grid;grid-template-columns:1fr 2fr;gap:35px;align-items:center;background:#fff}.support-heading strong{font-size:18px}.support-services{grid-template-columns:repeat(3,1fr);gap:15px 25px;margin:0}.support-services li{font-size:13px}.support-services li:last-child{grid-column:auto}
.section{padding:85px 5.5%}.section-head{margin-bottom:38px}.section-head p{font-size:15px;max-width:390px}.services{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;border:0}.service,.service+.service,.service:nth-child(3),.service:nth-child(4){border:0;background:#edf4f5;border-radius:10px;padding:30px 32px;position:relative}.service-code{font-size:38px;font-weight:600;letter-spacing:-1px;margin-bottom:18px;color:#006282}.service h3{font-size:23px;min-height:0;margin-bottom:16px}.service p{font-size:15px;line-height:1.7;max-width:600px}.service .text-link{margin-top:18px;font-size:13px}.service:not(.reveal-pending):hover{background:#e6f0f2;box-shadow:0 10px 30px #132e4010}
.accreditation-home{margin:0 5.5% 70px;border:0;border-left:4px solid #168b9b;padding:30px 35px;background:#eff5f5;border-radius:0 10px 10px 0}.accreditation-home h2{font-size:28px}.accreditation-home p{font-size:15px}
.diagnostic-band{background:#102c3e;color:#fff;border:0;padding:55px 5.5%}.diagnostic-band .eyebrow{color:#8cd6dd}.diagnostic-band p,.diagnostic-band small{color:#d5e3e9}.diagnostic-band .button{background:#87d3da;color:#102c3e}.diagnostic-band .text-link{color:#fff;border-color:#87d3da}
.button{border-radius:6px}.method{background:#eff5f5;gap:8%}.steps summary{padding:3px 0}.steps h3{font-size:19px;font-weight:500}.steps p{font-size:15px}.mission{gap:8%}.photo img{border-radius:12px;height:490px}.photo span{border-radius:0 0 12px 12px;padding:19px;background:#102c3ee0}.values{gap:30px}.values article{padding-top:24px}.values h3{font-size:20px}.values p{font-size:15px}.about{background:#fff;border-top:0}.about p{font-size:16px}.sectors{font-size:13px}.founder-profile{grid-template-columns:200px minmax(0,1fr);background:#edf4f5;border:0;border-radius:12px;padding:28px;margin-top:10px}.founder-profile img{width:200px;height:230px;border-radius:8px}.founder-profile h3{font-size:29px}.about .founder-profile p{font-size:15px}.profile-label{color:#007d8b}.faq-section{background:#f3f7f7;gap:8%}
.contact-band{background:#102c3e;padding:60px 5.5%}.contact-band .eyebrow{color:#8cd6dd}.contact-band .white{background:#87d3da;color:#102c3e}.contact-band h2{font-weight:500}footer{background:#fff;padding:50px 5.5% 24px}footer img{width:195px}.reading{max-width:1080px}.reading h1{font-size:clamp(38px,4.5vw,58px)}.contact-page,.sim-page{background:#eff5f5}.sim-panel,form{border-radius:10px;border-color:#d4e2e6}.answer,.cii-year-choice label{border-radius:6px}
@media(min-width:1500px){.hero,.section,.contact-band,.diagnostic-band,footer,main>.hero-support,.intro-strip,.kpi-band,header{padding-left:max(5.5%,calc((100vw - 1380px)/2));padding-right:max(5.5%,calc((100vw - 1380px)/2))}}
@media(max-width:1100px){nav{gap:12px;font-size:11px}.brand img{width:170px}.hero{gap:4%;padding-top:42px;padding-bottom:45px}.hero h1{font-size:48px}.hero-art{min-height:480px}.hero .actions .button{font-size:11px;padding:10px}.support-services{grid-template-columns:repeat(2,1fr)}main>.hero-support{grid-template-columns:.8fr 1.5fr}}
@media(max-width:780px){header{padding:17px 6%}nav{font-size:14px}.hero{grid-template-columns:1fr;padding:40px 6%;gap:30px}.hero-copy{padding:0}.hero h1{font-size:48px;max-width:620px}.hero p,.hero p.hero-detail{max-width:600px}.hero-art{height:340px;min-height:0;margin:0}.hero-art .hero-photo{object-position:50% 40%}.art-label strong{font-size:26px}.hero-art .art-label{left:24px;bottom:22px}.hero .actions .button{font-size:13px}.kpi-band{padding:18px 6%}.section{padding:55px 6%}main>.hero-support{display:block;padding:30px 6%}.support-services{margin-top:22px}.services{gap:14px}.service,.service+.service{padding:25px}.service h3{font-size:21px}.accreditation-home{margin:0 6% 45px;padding:24px}.diagnostic-band{padding:40px 6%}.founder-profile{grid-template-columns:130px minmax(0,1fr);gap:22px;padding:22px}.founder-profile img{width:130px;height:160px}.founder-profile h3{font-size:24px}.photo img{height:350px}.contact-band{padding:40px 6%}.contact-page h1{font-size:44px}}
@media(max-width:540px){.hero h1{font-size:41px;letter-spacing:-1.4px}.hero .actions .button{min-height:52px}.hero .actions .contact-action-note{font-size:11px}.hero-art{height:300px}.services{grid-template-columns:1fr}.support-services{grid-template-columns:1fr}.founder-profile{grid-template-columns:1fr}.founder-profile img{width:130px;height:150px}.hero-meta{font-size:11px;gap:12px}.hero-meta span+span{padding-left:12px}}

nav .estimate-nav{background:#87d3da;color:#102c3e}nav .estimate-nav:hover{background:#a5e1e5;color:#102c3e}
@media(max-width:1200px){header{padding:17px 6%}.menu{display:block;border:0;background:transparent;font-size:13px;color:#102c3e}.menu span{margin-left:10px}nav{display:none;position:absolute;top:100%;left:0;right:0;background:white;padding:25px 6%;flex-direction:column;align-items:stretch;gap:18px;border-bottom:1px solid var(--line);font-size:14px}body.nav-open nav{display:flex}nav .button.small{font-size:14px;padding:13px 17px}}

nav .button.small.estimate-nav{background:#87d3da;color:#102c3e}nav .button.small.estimate-nav:hover{background:#a5e1e5;color:#102c3e}

/* Compact header actions. */
nav .button.small{padding:10px 12px;font-size:11px;line-height:1.4;gap:12px;white-space:nowrap;border-radius:5px}nav .button.small span{font-size:16px}
@media(max-width:1200px){nav .button.small{padding:11px 14px;font-size:13px;white-space:normal}}

/* Smaller homepage actions. */
.hero .actions{max-width:540px;gap:8px}
.hero .actions .button{min-height:44px;height:44px;padding:9px 10px;font-size:12px;line-height:1.35;justify-content:center;text-align:center}
.hero .actions .contact-action .button{height:44px}
@media(max-width:1100px) and (min-width:781px){.hero .actions .button{font-size:11px}}
@media(max-width:780px){.hero .actions .button{font-size:13px}}
@media(max-width:540px){.hero .actions{max-width:290px}}

/* Animated curves inspired by the Horizon Innovation symbol. */
.hero-art .horizon-waves{position:absolute;left:-7%;top:29%;width:114%;height:36%;z-index:1;overflow:visible;pointer-events:none}
.horizon-wave{stroke-width:2.5;stroke-linecap:round;vector-effect:non-scaling-stroke;transform-origin:center;animation:horizon-wave-drift 9s ease-in-out infinite}
.wave-light{stroke:#b4e6ef;animation-delay:-2s}
.wave-cyan{stroke:#43b9d7;animation-duration:11s;animation-delay:-5s}
.wave-blue{stroke:#2789b3;animation-duration:13s;animation-delay:-8s}
.hero-art .art-label{z-index:2}
@keyframes horizon-wave-drift{0%,100%{transform:translateY(-5px) rotate(-1deg)}50%{transform:translateY(5px) rotate(1deg)}}
@media(max-width:780px){.hero-art .horizon-waves{top:22%;height:34%}.horizon-wave{stroke-width:2}}
@media(prefers-reduced-motion:reduce){.horizon-wave{animation:none}}
