/* Fossil IT static website: edit brand colors and fonts here. */
:root { --ink:#15293f; --navy:#102a43; --navy-deep:#0a2035; --teal:#12a594; --teal-dark:#098274; --aqua:#dff7f3; --warm:#f5f3ed; --line:#dce4e8; --muted:#667788; --white:#fff; --serif: Georgia, 'Times New Roman', serif; --sans: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif; --shadow:0 19px 55px rgba(17, 43, 63, .10); }
* { box-sizing:border-box; } html { scroll-behavior:smooth; scroll-padding-top:80px; } body { margin:0; color:var(--ink); background:#fff; font-family:var(--sans); font-size:16px; line-height:1.55; } body.menu-open { overflow:hidden; } a { color:inherit; text-decoration:none; } button, input, select, textarea { font:inherit; } button { cursor:pointer; } svg { width:20px; height:20px; fill:none; stroke:currentColor; stroke-linecap:round; stroke-linejoin:round; stroke-width:1.75; flex:none; } .icon-sprite { position:absolute; overflow:hidden; width:0; height:0; } .container { width:min(1180px, calc(100% - 48px)); margin:0 auto; } .section { padding:132px 0; } .skip-link { position:fixed; top:-100px; left:16px; z-index:100; padding:10px 14px; color:#fff; background:var(--navy); border-radius:6px; } .skip-link:focus { top:16px; }
.site-header { position:sticky; top:0; z-index:20; background:rgba(255,255,255,.92); border-bottom:1px solid transparent; backdrop-filter:blur(16px); transition:border .2s, box-shadow .2s; } .site-header.is-scrolled { border-color:#e8edf0; box-shadow:0 5px 20px rgba(20,41,63,.04); } .nav-wrap { min-height:76px; display:flex; align-items:center; justify-content:space-between; gap:20px; } .brand { display:inline-flex; align-items:center; gap:10px; color:var(--navy); font-size:15px; font-weight:800; letter-spacing:-.4px; white-space:nowrap; } .brand-mark { display:flex; width:26px; height:26px; gap:3px; align-items:flex-end; padding:4px 3px; border-radius:7px; background:var(--navy); } .brand-mark span { display:block; width:5px; background:var(--teal); border-radius:3px; } .brand-mark span:nth-child(1) { height:8px; } .brand-mark span:nth-child(2) { height:14px; } .brand-mark span:nth-child(3) { height:18px; background:#c9f2ea; } .primary-nav { display:flex; align-items:center; gap:22px; font-size:13px; font-weight:650; color:#425467; } .primary-nav > a:not(.button) { position:relative; } .primary-nav > a:not(.button)::after { position:absolute; right:0; bottom:-7px; left:0; height:1.5px; content:''; background:var(--teal); transform:scaleX(0); transform-origin:right; transition:transform .2s; } .primary-nav > a:not(.button):hover::after { transform:scaleX(1); transform-origin:left; }.menu-toggle { display:none; color:var(--navy); border:0; background:transparent; padding:7px; }.menu-toggle svg { width:24px; height:24px; }
.button { display:inline-flex; align-items:center; justify-content:center; gap:12px; min-height:51px; padding:0 20px; color:#fff; background:var(--teal); border:1px solid var(--teal); border-radius:5px; box-shadow:0 8px 18px rgba(9,130,116,.17); font-size:14px; font-weight:750; transition:transform .2s, background .2s, box-shadow .2s; }.button:hover { background:var(--teal-dark); border-color:var(--teal-dark); transform:translateY(-2px); box-shadow:0 12px 22px rgba(9,130,116,.23); }.button svg { width:18px; height:18px; }.button-small { min-height:39px; padding:0 13px; font-size:12px; }.button-dark { background:var(--navy); border-color:var(--navy); }.button-dark:hover { background:var(--navy-deep); }.button-light { color:var(--navy); background:#fff; border-color:#fff; box-shadow:none; }.button-light:hover { color:var(--navy); background:#e9fbf8; border-color:#e9fbf8; }.text-link { display:inline-flex; gap:8px; align-items:center; color:var(--navy); font-size:14px; font-weight:750; }.text-link svg { width:18px; transition:transform .2s; }.text-link:hover svg { transform:translateX(4px); }.eyebrow { display:flex; align-items:center; gap:8px; margin:0 0 17px; color:var(--teal-dark); font-size:11px; font-weight:800; letter-spacing:1.25px; line-height:1.2; text-transform:uppercase; }.eyebrow-dot { width:7px; height:7px; border-radius:50%; background:var(--teal); }.section-heading h2, .hero h1, .assessment-banner h2, .final-cta h2, .why-card strong { margin:0; font-family:var(--serif); font-weight:400; letter-spacing:-2.5px; line-height:1.05; }.section-heading h2 { max-width:630px; font-size:54px; }.section-heading > p:not(.eyebrow) { max-width:500px; margin:22px 0 0; color:var(--muted); font-size:17px; }.section-heading.center { text-align:center; }.section-heading.center .eyebrow { justify-content:center; }.section-heading.center > p:not(.eyebrow) { margin-right:auto; margin-left:auto; }.split-heading { display:flex; align-items:flex-end; justify-content:space-between; gap:44px; }.split-heading > p:not(.eyebrow) { width:360px; margin:0 0 3px; }.reveal { opacity:0; transform:translateY(18px); transition:opacity .7s ease, transform .7s ease; }.reveal.visible { opacity:1; transform:none; }
.hero { position:relative; min-height:636px; overflow:hidden; background:#f7faf9; }.section-grid { background-image:linear-gradient(rgba(17,42,62,.032) 1px, transparent 1px),linear-gradient(90deg, rgba(17,42,62,.032) 1px, transparent 1px); background-size:48px 48px; }.hero-inner { position:relative; z-index:1; display:grid; grid-template-columns:.91fr 1.09fr; align-items:center; min-height:636px; gap:68px; }.hero-copy { padding:72px 0 78px; }.hero h1 { max-width:680px; color:var(--navy); font-size:55px; }.hero h1 em, .why-card em, .journey-copy em { color:var(--teal); font-style:normal; }.hero-lede { max-width:570px; margin:24px 0 30px; color:#546779; font-size:17px; line-height:1.7; }.hero-actions { display:flex; align-items:center; flex-wrap:wrap; gap:25px; }.hero-proof { display:flex; gap:20px; margin-top:31px; color:#617181; font-size:12px; font-weight:650; }.hero-proof span { display:flex; align-items:center; gap:5px; }.hero-proof svg { width:15px; color:var(--teal); stroke-width:2.5; }.hero-visual { position:relative; min-width:0; padding:25px 22px 40px 27px; }.dashboard-card { position:relative; z-index:1; padding:22px; border:1px solid rgba(209,225,230,.9); background:rgba(255,255,255,.92); border-radius:12px; box-shadow:0 25px 55px rgba(26,67,83,.16); }.dash-top, .panel-heading, .progress-label { display:flex; align-items:center; justify-content:space-between; }.dash-kicker { display:block; margin-bottom:2px; color:#8a9ba8; font-size:8px; font-weight:800; letter-spacing:1px; }.dash-top strong { color:var(--navy); font-size:17px; }.status-pill { display:flex; align-items:center; gap:5px; padding:5px 8px; color:#23766d; background:#e6f6f2; border-radius:14px; font-size:9px; font-weight:800; }.status-pill i { width:5px; height:5px; border-radius:50%; background:var(--teal); }.progress-label { margin-top:21px; color:#667988; font-size:10px; }.progress-label strong { color:var(--navy); }.progress-track { height:6px; margin-top:7px; overflow:hidden; background:#e9eef0; border-radius:8px; }.progress-track i { display:block; width:68%; height:100%; background:var(--teal); border-radius:8px; }.dash-grid { display:grid; grid-template-columns:1.38fr 1fr; gap:12px; margin-top:18px; }.skill-panel, .next-panel { min-height:145px; padding:13px; border:1px solid #e4ebed; border-radius:8px; }.panel-heading { color:#718492; font-size:9px; font-weight:700; letter-spacing:.35px; }.panel-heading svg { width:14px; color:var(--teal); }.skill-bars { display:flex; align-items:flex-end; justify-content:space-between; height:78px; padding:10px 5px 0; }.skill-bars span { display:flex; align-items:flex-end; width:9px; height:100%; background:#e8eff0; border-radius:4px 4px 1px 1px; }.skill-bars i { display:block; width:100%; height:var(--progress); background:#7fded2; border-radius:4px 4px 1px 1px; }.skill-bars span:nth-child(3) i, .skill-bars span:nth-child(5) i { background:var(--teal); }.bar-labels { display:flex; justify-content:space-between; color:#8b9ba6; font-size:8px; }.next-panel { display:flex; flex-direction:column; background:#f3fbf9; }.next-panel .panel-heading { color:#71958f; }.next-icon { display:grid; width:33px; height:33px; margin-top:14px; place-items:center; color:#fff; background:var(--teal); border-radius:8px; }.next-icon svg { width:17px; }.next-panel strong { margin-top:9px; color:var(--navy); font-size:10px; }.next-panel > span:last-child { color:#81938f; font-size:9px; }.roadmap-list { display:grid; gap:10px; margin-top:17px; }.roadmap-list > div { display:grid; grid-template-columns:17px 1fr auto; align-items:center; gap:8px; color:#637484; font-size:9px; }.roadmap-list small { color:#91a1ad; font-size:8px; }.roadmap-list div:nth-child(2) { color:var(--navy); font-weight:700; }.roadmap-list div:nth-child(2) small { color:var(--teal); }.roadmap-check { width:13px; height:13px; border:1px solid #cbd8dc; border-radius:50%; }.roadmap-check.complete { display:grid; place-items:center; color:#fff; background:var(--teal); border-color:var(--teal); }.roadmap-check svg { width:8px; stroke-width:3; }.roadmap-check.active { border:4px solid #b3ebe2; background:var(--teal); }.floating-card { position:absolute; z-index:2; display:flex; align-items:center; gap:10px; padding:10px; background:#fff; box-shadow:0 12px 24px rgba(22,55,72,.14); border-radius:8px; color:#738492; font-size:9px; line-height:1.35; }.floating-card b { color:var(--navy); font-size:10px; }.project-card { top:0; right:-4px; }.project-card > svg { width:25px; height:25px; padding:5px; color:var(--teal); background:#e8f8f5; border-radius:6px; }.coaching-card { bottom:7px; left:0; }.avatar-mini { display:grid; width:28px; height:28px; place-items:center; color:#fff; background:#e69f62; border:2px solid #f8e5d5; border-radius:50%; font-size:8px; font-weight:800; }.dashboard-glow { position:absolute; right:-15%; bottom:-25%; z-index:0; width:70%; aspect-ratio:1; border-radius:50%; background:rgba(104,218,202,.27); filter:blur(24px); }.orb-one { position:absolute; top:-200px; right:11%; width:400px; height:400px; border:1px solid rgba(10,165,148,.1); border-radius:50%; }.orb-two { position:absolute; top:-95px; right:17%; width:230px; height:230px; border:1px solid rgba(10,165,148,.1); border-radius:50%; }
.value-strip { position:relative; z-index:3; margin-top:-1px; padding:0 0 78px; background:#f7faf9; }.value-grid { display:grid; grid-template-columns:repeat(4,1fr); gap:0; padding:24px 8px; background:#fff; border:1px solid #e3eaeb; border-radius:10px; box-shadow:0 13px 35px rgba(19,51,63,.06); }.value-item { display:flex; align-items:flex-start; gap:13px; padding:6px 22px; border-right:1px solid #e5ebed; }.value-item:last-child { border:0; }.value-icon { display:grid; flex:none; width:35px; height:35px; place-items:center; color:var(--teal); background:#e8f8f5; border-radius:7px; }.value-icon svg { width:19px; }.value-item h2 { margin:1px 0 4px; color:var(--navy); font-size:13px; letter-spacing:-.3px; }.value-item p { margin:0; color:#728291; font-size:11px; line-height:1.5; }
.process-section { background:#fff; }.process-grid { position:relative; display:grid; grid-template-columns:repeat(6,1fr); gap:12px; margin-top:65px; }.process-grid::before { position:absolute; top:43px; right:8%; left:8%; height:1px; content:''; background:#dbe8e9; }.process-step { position:relative; padding:0 7px; }.step-number { position:absolute; top:30px; right:12px; z-index:1; color:#9daeb8; font-family:var(--serif); font-size:15px; }.process-icon { position:relative; z-index:2; display:grid; width:87px; height:87px; place-items:center; color:var(--teal); background:#effaf8; border:1px solid #cceee8; border-radius:50%; }.process-icon svg { width:28px; height:28px; }.process-step h3 { margin:22px 0 8px; color:var(--navy); font-size:16px; }.process-step p { margin:0; color:#718190; font-size:12px; line-height:1.55; }
.paths-section { background:#f5f8f7; }.paths-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:20px; margin-top:54px; }.path-card { min-height:440px; display:flex; flex-direction:column; padding:28px; color:#fff; border-radius:10px; overflow:hidden; transition:transform .25s, box-shadow .25s; }.path-card:hover { transform:translateY(-5px); box-shadow:0 20px 35px rgba(15,47,60,.18); }.data-card { background:linear-gradient(145deg,#103a50,#126b73); }.integration-card { background:linear-gradient(145deg,#2e365c,#4e5d91); }.software-card { background:linear-gradient(145deg,#164a42,#1b8575); }.path-top { display:flex; justify-content:space-between; align-items:center; }.path-icon { display:grid; width:45px; height:45px; place-items:center; background:rgba(255,255,255,.13); border:1px solid rgba(255,255,255,.15); border-radius:8px; }.path-icon svg { width:23px; }.path-label { color:rgba(255,255,255,.66); font-size:9px; font-weight:800; letter-spacing:1px; }.path-card h3 { margin:40px 0 13px; font-family:var(--serif); font-weight:400; font-size:38px; letter-spacing:-1.5px; line-height:1.01; }.path-card p { min-height:70px; margin:0; color:rgba(255,255,255,.77); font-size:13px; line-height:1.6; }.tag-list { display:flex; flex-wrap:wrap; gap:7px; margin:23px 0 auto; }.tag-list span { padding:5px 7px; color:rgba(255,255,255,.85); border:1px solid rgba(255,255,255,.2); border-radius:3px; font-size:9px; font-weight:650; }.card-link { display:flex; align-items:center; gap:7px; margin-top:30px; color:#fff; font-size:12px; font-weight:750; }.card-link svg { width:17px; transition:transform .2s; }.card-link:hover svg { transform:translateX(4px); }
.services-section { background:#fff; }.services-layout { display:grid; grid-template-columns:.77fr 1.23fr; gap:72px; align-items:start; }.services-intro { position:sticky; top:110px; }.services-intro h2, .why-copy h2, .faq-intro h2, .contact-copy h2 { margin:0; color:var(--navy); font-family:var(--serif); font-size:48px; font-weight:400; letter-spacing:-2px; line-height:1.08; }.services-intro > p:not(.eyebrow), .why-copy > p:not(.eyebrow), .faq-intro > p:not(.eyebrow), .contact-copy > p:not(.eyebrow) { margin:21px 0 27px; color:#687988; font-size:15px; line-height:1.7; }.services-grid { display:grid; grid-template-columns:repeat(2, 1fr); gap:12px; }.service-card { min-height:157px; padding:19px; border:1px solid #e1e9e9; border-radius:8px; transition:transform .2s, border .2s, box-shadow .2s; }.service-card:hover { border-color:#9eddd3; box-shadow:0 12px 25px rgba(20,55,66,.08); transform:translateY(-3px); }.service-card > svg { width:21px; height:21px; color:var(--teal); }.service-card h3 { margin:18px 0 5px; color:var(--navy); font-size:14px; letter-spacing:-.3px; }.service-card p { margin:0; color:#718291; font-size:11px; line-height:1.55; }
.journey-section { padding:105px 0; overflow:hidden; color:#fff; background:var(--navy); }.journey-inner { display:grid; grid-template-columns:.7fr 1.3fr; gap:75px; align-items:center; }.journey-copy .eyebrow { color:#74dbce; }.journey-copy h2 { margin:0; font-family:var(--serif); font-size:47px; font-weight:400; letter-spacing:-2px; line-height:1.08; }.journey-copy p:not(.eyebrow) { max-width:370px; margin:19px 0 0; color:#a9bdc9; font-size:14px; line-height:1.7; }.journey-flow { display:flex; align-items:center; gap:0; margin:0; padding:0; list-style:none; }.journey-flow li { position:relative; flex:1; padding:39px 7px 0 0; color:#c7d6dd; font-size:10px; font-weight:650; line-height:1.45; }.journey-flow li::before { position:absolute; top:20px; right:0; left:0; height:1px; content:''; background:#426074; }.journey-flow li::after { position:absolute; top:16px; left:0; width:8px; height:8px; content:''; background:#74dbce; border-radius:50%; box-shadow:0 0 0 5px #17364e; }.journey-flow li span { position:absolute; top:0; left:0; color:#74dbce; font-size:9px; }.journey-flow .journey-offer { color:#fff; }.journey-flow .journey-offer::after { width:12px; height:12px; top:14px; background:var(--teal); box-shadow:0 0 0 6px rgba(18,165,148,.22); }
.why-section { background:#f8faf9; }.why-layout { display:grid; grid-template-columns:1fr 1fr; gap:10%; align-items:center; }.why-visual { min-height:490px; display:grid; place-items:center; background:linear-gradient(145deg,#d6efeb,#eef6ee); border-radius:10px; }.why-card { position:relative; width:min(79%,410px); min-height:300px; padding:35px; overflow:hidden; color:#fff; background:var(--navy); border-radius:8px; box-shadow:0 21px 35px rgba(20,47,63,.25); }.why-overline { position:relative; z-index:1; color:#75dbce; font-size:9px; font-weight:800; letter-spacing:1.2px; }.why-card strong { position:relative; z-index:1; display:block; margin-top:20px; font-size:36px; }.why-lines { position:absolute; right:-57px; bottom:-82px; display:flex; gap:14px; align-items:flex-end; transform:rotate(-28deg); }.why-lines i { display:block; width:18px; height:130px; background:#1b6073; border-radius:4px; }.why-lines i:nth-child(2) { height:185px; background:#1a967f; }.why-lines i:nth-child(3) { height:245px; background:#48b9a5; }.why-lines i:nth-child(4) { height:165px; background:#184b67; }.why-caption { position:absolute; bottom:29px; left:35px; width:170px; color:#bfd4dc; font-size:10px; line-height:1.5; }.why-copy { max-width:500px; }.check-list { display:grid; gap:14px; margin:29px 0 0; padding:0; list-style:none; }.check-list li { display:flex; align-items:center; gap:10px; color:#445a6c; font-size:13px; font-weight:600; }.check-list svg { width:19px; height:19px; padding:3px; color:#fff; background:var(--teal); border-radius:50%; stroke-width:3; }
.stories-section { background:#fff; }.testimonials-grid { display:grid; grid-template-columns:repeat(2,1fr); gap:16px; margin-top:54px; }.testimonial { display:flex; flex-direction:column; min-height:245px; margin:0; padding:28px; background:#f8faf9; border:1px solid #e5ecec; border-radius:8px; }.testimonial:nth-child(2) { background:#f4fbfa; }.testimonial:nth-child(3) { background:#f8f8fb; }.testimonial blockquote { margin:0; color:#3d5263; font-family:var(--serif); font-size:19px; letter-spacing:-.35px; line-height:1.45; }.testimonial figcaption { display:flex; align-items:center; gap:10px; margin-top:auto; padding-top:22px; }.avatar { display:grid; width:34px; height:34px; place-items:center; color:#fff; border-radius:50%; font-size:10px; font-weight:800; }.avatar-blue { background:#467a9b; }.avatar-green { background:#35a58f; }.avatar-orange { background:#dc9762; }.avatar-violet { background:#7176a6; }.testimonial figcaption b, .testimonial figcaption small { display:block; }.testimonial figcaption b { color:var(--navy); font-size:11px; }.testimonial figcaption small { margin-top:1px; color:#84939e; font-size:10px; }
.audience-section { background:#f6f8f7; }.audience-grid { display:grid; grid-template-columns:repeat(4,1fr); gap:12px; margin-top:54px; }.audience-item { min-height:150px; padding:17px; border:1px solid #dce7e6; border-radius:7px; background:#fff; transition:transform .2s, background .2s; }.audience-item:hover { background:var(--navy); color:#fff; transform:translateY(-3px); }.audience-item span { color:var(--teal); font-size:10px; font-weight:800; letter-spacing:.8px; }.audience-item h3 { margin:40px 0 0; font-family:var(--serif); font-size:21px; font-weight:400; letter-spacing:-.7px; line-height:1.12; }.audience-item:last-child { grid-column:span 2; }.assessment-banner { color:#fff; background:linear-gradient(115deg,var(--teal-dark),#16aa94); }.assessment-inner { display:flex; align-items:center; justify-content:space-between; gap:40px; padding:84px 0; }.assessment-inner .eyebrow { color:#c6f5ed; }.assessment-inner h2 { margin:0; font-family:var(--serif); font-size:47px; font-weight:400; letter-spacing:-2px; line-height:1.05; }.assessment-inner p:not(.eyebrow) { max-width:610px; margin:17px 0 0; color:#dbfaf5; font-size:15px; }.assessment-inner .button { flex:none; }
.about-section { background:#fff; }.about-layout { display:grid; grid-template-columns:1fr 1fr; gap:10%; }.about-copy { padding-top:30px; }.about-copy p { margin:0 0 18px; color:#667888; font-size:15px; line-height:1.75; }.about-copy .large-copy { color:var(--navy); font-family:var(--serif); font-size:24px; letter-spacing:-.6px; line-height:1.45; }.about-note { display:grid; gap:1px; margin-top:31px; border-left:3px solid #9ee1d5; }.about-note span { padding:8px 14px; color:#587080; background:#f3faf8; font-size:11px; font-weight:700; letter-spacing:.3px; }
.contact-section { background:#f4f8f7; }.contact-layout { display:grid; grid-template-columns:.78fr 1.22fr; gap:9%; align-items:start; }.contact-details { display:grid; gap:14px; margin-top:31px; }.contact-details > * { display:flex; align-items:center; gap:12px; }.contact-details > a { transition:color .2s; }.contact-details > a:hover { color:var(--teal-dark); }.contact-details > * > span { display:grid; width:34px; height:34px; place-items:center; color:var(--teal); background:#e1f6f1; border-radius:7px; }.contact-details svg { width:17px; }.contact-details small, .contact-details b { display:block; }.contact-details small { color:#84939e; font-size:10px; }.contact-details b { color:var(--navy); font-size:12px; }.linkedin-link { display:inline-flex; align-items:center; gap:7px; margin-top:27px; color:#476981; font-size:12px; font-weight:750; }.linkedin-link svg { width:18px; }.contact-form { padding:31px; background:#fff; border:1px solid #dce7e7; border-radius:10px; box-shadow:var(--shadow); }.form-heading { display:flex; align-items:center; gap:12px; margin-bottom:25px; }.form-step { display:grid; width:32px; height:32px; place-items:center; color:#fff; background:var(--teal); border-radius:7px; font-size:10px; font-weight:800; }.form-heading h3 { margin:0; color:var(--navy); font-size:15px; }.form-heading p { margin:1px 0 0; color:#84939e; font-size:10px; }.form-grid { display:grid; grid-template-columns:1fr 1fr; gap:15px 13px; }.form-grid label { display:grid; gap:6px; color:#536a7b; font-size:11px; font-weight:700; }.form-grid input, .form-grid select, .form-grid textarea { width:100%; padding:11px 11px; color:var(--navy); background:#fff; border:1px solid #d7e2e3; border-radius:4px; font-size:12px; outline-color:var(--teal); transition:border .2s, box-shadow .2s; }.form-grid textarea { resize:vertical; }.form-grid input:focus, .form-grid select:focus, .form-grid textarea:focus { border-color:var(--teal); box-shadow:0 0 0 3px rgba(18,165,148,.12); }.form-grid input.invalid, .form-grid select.invalid, .form-grid textarea.invalid { border-color:#c65252; }.full-width { grid-column:1/-1; }.contact-form .button { margin-top:22px; }.form-message { min-height:20px; margin:12px 0 0; color:#627987; font-size:11px; font-weight:600; }.form-message.success { color:var(--teal-dark); }
.faq-section { background:#fff; }.faq-layout { display:grid; grid-template-columns:.75fr 1.25fr; gap:11%; }.faq-intro { position:sticky; top:110px; align-self:start; }.faq-list { border-top:1px solid #dfe8e8; }.faq-list details { border-bottom:1px solid #dfe8e8; }.faq-list summary { display:flex; align-items:center; justify-content:space-between; gap:15px; padding:21px 0; color:var(--navy); cursor:pointer; font-size:15px; font-weight:700; list-style:none; }.faq-list summary::-webkit-details-marker { display:none; }.faq-list summary svg { width:19px; color:var(--teal); transition:transform .2s; }.faq-list details[open] summary svg { transform:rotate(45deg); }.faq-list details p { max-width:680px; margin:0; padding:0 30px 21px 0; color:#687a8a; font-size:14px; line-height:1.65; }.final-cta { position:relative; overflow:hidden; padding:119px 0; color:#fff; text-align:center; background:var(--navy-deep); }.final-cta::before, .final-cta::after { position:absolute; width:440px; height:440px; content:''; border:1px solid rgba(103,213,197,.16); border-radius:50%; }.final-cta::before { top:-235px; left:-85px; }.final-cta::after { right:-100px; bottom:-280px; }.final-inner { position:relative; z-index:1; }.final-cta .eyebrow { justify-content:center; color:#75dbce; }.final-cta h2 { margin:0; font-family:var(--serif); font-size:51px; font-weight:400; letter-spacing:-2px; line-height:1.06; }.final-cta p:not(.eyebrow) { margin:19px auto 28px; color:#b4c8d0; font-size:15px; }.site-footer { padding:65px 0 0; color:#d3e1e5; background:#0c1e31; }.footer-grid { display:grid; grid-template-columns:1.4fr .75fr 1fr; gap:80px; padding-bottom:55px; }.footer-brand .brand { color:#fff; }.footer-brand p { max-width:230px; margin:16px 0 20px; color:#91a8b4; font-size:12px; }.social-link { display:grid; width:31px; height:31px; place-items:center; color:#9fe9dd; border:1px solid #456171; border-radius:4px; }.social-link:hover { color:#fff; border-color:#fff; }.social-link svg { width:16px; }.footer-grid h2 { margin:4px 0 18px; color:#fff; font-size:12px; letter-spacing:.4px; }.footer-links { display:grid; grid-template-columns:repeat(2,auto); gap:9px 20px; }.footer-links a, address { color:#a5bac3; font-size:11px; font-style:normal; }.footer-links a:hover, address a:hover { color:#72dccc; }.footer-grid address { display:grid; gap:9px; }.footer-grid address a:last-child { margin-top:5px; color:#72dccc; font-weight:700; }.footer-bottom { display:grid; grid-template-columns:1fr 1.75fr auto; gap:30px; padding:21px 0; border-top:1px solid #294153; color:#8ea5b0; font-size:9px; line-height:1.5; }.footer-bottom p { margin:0; }.footer-bottom div { display:flex; gap:12px; justify-content:flex-end; }.footer-bottom button { padding:0; color:#b8cbd2; background:none; border:0; font-size:9px; white-space:nowrap; }.footer-bottom button:hover { color:#72dccc; }.legal-modal { width:min(500px, calc(100% - 32px)); padding:36px; color:var(--navy); border:0; border-radius:9px; box-shadow:0 20px 75px rgba(0,0,0,.3); }.legal-modal::backdrop { background:rgba(5,21,34,.62); backdrop-filter:blur(2px); }.legal-modal h2 { margin:0 0 13px; font-family:var(--serif); font-size:36px; font-weight:400; }.legal-modal p:not(.eyebrow) { margin:0; color:#637687; }.modal-close { position:absolute; top:14px; right:14px; display:grid; width:31px; height:31px; place-items:center; color:var(--navy); background:#f1f6f6; border:0; border-radius:50%; }.modal-close svg { width:17px; }
@media (max-width:1100px) { .primary-nav { gap:14px; font-size:12px; }.nav-cta { display:none; }.hero-inner { gap:36px; }.hero h1 { font-size:49px; }.value-item { padding:6px 14px; }.services-layout, .contact-layout { gap:48px; }.journey-inner { gap:44px; }.footer-grid { gap:48px; } }
@media (max-width:800px) { .section { padding:88px 0; }.container { width:min(100% - 36px, 620px); }.site-header { min-height:65px; }.nav-wrap { min-height:65px; }.menu-toggle { position:relative; z-index:22; display:block; }.primary-nav { position:fixed; inset:0; z-index:21; display:flex; flex-direction:column; align-items:stretch; justify-content:center; gap:4px; padding:90px 38px 38px; color:var(--navy); background:#fff; transform:translateX(100%); transition:transform .3s ease; }.primary-nav.open { transform:none; }.primary-nav > a:not(.button) { padding:11px 0; font-size:21px; }.primary-nav > a:not(.button)::after { display:none; }.primary-nav .nav-cta { display:inline-flex; margin-top:15px; }.hero { min-height:auto; }.hero-inner { grid-template-columns:1fr; gap:0; min-height:0; }.hero-copy { padding:74px 0 22px; }.hero h1 { font-size:48px; }.hero-visual { width:min(570px,100%); margin:0 auto; padding:34px 19px 65px 15px; }.value-strip { padding-bottom:0; }.value-grid { grid-template-columns:repeat(2,1fr); padding:12px; border-radius:0; border-right:0; border-left:0; }.value-item { padding:13px; }.value-item:nth-child(2) { border:0; }.value-item:nth-child(-n+2) { border-bottom:1px solid #e5ebed; }.process-grid { grid-template-columns:repeat(3,1fr); row-gap:35px; }.process-grid::before { display:none; }.paths-grid { grid-template-columns:1fr; margin-top:39px; }.path-card { min-height:385px; }.services-layout, .why-layout, .about-layout, .contact-layout, .faq-layout { grid-template-columns:1fr; gap:42px; }.services-intro, .faq-intro { position:static; }.services-grid { grid-template-columns:repeat(2,1fr); }.journey-inner { grid-template-columns:1fr; gap:38px; }.journey-flow { flex-wrap:wrap; }.journey-flow li { flex-basis:25%; }.journey-flow li:nth-child(5)::before { left:-200%; }.why-visual { min-height:400px; }.split-heading { display:block; }.split-heading > p:not(.eyebrow) { width:auto; margin-top:22px; }.assessment-inner { display:block; padding:70px 0; }.assessment-inner .button { margin-top:26px; }.footer-grid { grid-template-columns:1.3fr 1fr; gap:40px 25px; }.footer-grid > :last-child { grid-column:1/-1; }.footer-bottom { grid-template-columns:1fr; gap:12px; }.footer-bottom div { justify-content:flex-start; } }
@media (max-width:520px) { .container { width:calc(100% - 32px); }.section { padding:72px 0; }.hero-copy { padding-top:57px; }.hero h1 { font-size:39px; letter-spacing:-1.7px; }.hero-lede { margin-top:19px; font-size:15px; }.hero-actions { display:grid; gap:17px; justify-items:start; }.hero-proof { gap:11px; font-size:10px; }.hero-visual { padding-bottom:51px; }.dashboard-card { padding:16px; }.dash-grid { grid-template-columns:1.2fr 1fr; }.floating-card { transform:scale(.88); transform-origin:bottom left; }.project-card { right:-14px; transform-origin:top right; }.value-grid { grid-template-columns:1fr; }.value-item, .value-item:nth-child(2) { border-right:0; border-bottom:1px solid #e5ebed; }.value-item:last-child { border-bottom:0; }.section-heading h2, .services-intro h2, .why-copy h2, .faq-intro h2, .contact-copy h2 { font-size:40px; letter-spacing:-1.6px; }.section-heading > p:not(.eyebrow) { font-size:15px; }.process-grid { grid-template-columns:repeat(2,1fr); gap:27px 10px; margin-top:41px; }.process-step { padding:0 2px; }.process-icon { width:62px; height:62px; }.process-icon svg { width:23px; }.step-number { top:20px; right:5px; }.process-step h3 { margin-top:14px; }.process-step p { font-size:11px; }.path-card { padding:23px; }.path-card h3 { margin-top:29px; }.services-grid { grid-template-columns:1fr; }.service-card { min-height:0; }.journey-section { padding:74px 0; }.journey-copy h2, .assessment-inner h2 { font-size:39px; }.journey-flow li { flex-basis:33.333%; padding-top:34px; margin-top:6px; }.journey-flow li::before { top:18px; }.journey-flow li::after { top:14px; }.journey-flow li:nth-child(4)::before, .journey-flow li:nth-child(7)::before { left:-200%; }.why-visual { min-height:345px; }.why-card { min-height:255px; padding:27px; }.why-card strong { font-size:30px; }.why-caption { bottom:21px; left:27px; }.testimonials-grid { grid-template-columns:1fr; margin-top:38px; }.testimonial { min-height:210px; padding:23px; }.testimonial blockquote { font-size:17px; }.audience-grid { grid-template-columns:repeat(2,1fr); margin-top:38px; }.audience-item { min-height:125px; }.audience-item h3 { margin-top:27px; font-size:19px; }.audience-item:last-child { grid-column:span 2; }.contact-form { padding:22px 17px; }.form-grid { grid-template-columns:1fr; }.full-width { grid-column:auto; }.final-cta { padding:83px 0; }.final-cta h2 { font-size:40px; }.footer-grid { grid-template-columns:1fr; }.footer-grid > :last-child { grid-column:auto; }.footer-bottom { padding-bottom:25px; }.legal-modal { padding:29px 23px; }.legal-modal h2 { font-size:31px; } }
@media (prefers-reduced-motion:reduce) { html { scroll-behavior:auto; }.reveal { opacity:1; transform:none; transition:none; } *, *::before, *::after { transition-duration:.01ms !important; animation-duration:.01ms !important; } }

/* Direct contact card replaces the former static contact form. */
.footer-info { display:grid; gap:9px; color:#a5bac3; font-size:11px; line-height:1.55; }
.contact-panel { display:flex; flex-direction:column; align-items:flex-start; min-height:300px; padding:36px; color:#fff; background:var(--navy); border-radius:10px; box-shadow:var(--shadow); }
.contact-panel-icon { display:grid; width:45px; height:45px; place-items:center; color:#7be1d4; background:#1d4760; border-radius:8px; }
.contact-panel-icon svg { width:23px; }
.contact-panel h3 { margin:26px 0 9px; font-family:var(--serif); font-size:30px; font-weight:400; letter-spacing:-1px; }
.contact-panel p { max-width:380px; margin:0; color:#b4cad2; font-size:14px; line-height:1.65; }
.contact-panel .button { margin-top:auto; }
.contact-panel small { margin-top:15px; color:#85a4b0; font-size:10px; }
@media (max-width:520px) { .contact-panel { min-height:270px; padding:27px 23px; } }
