:root{--blue:#124ee8;--ink:#192b42;--paper:#f7f7ef;--lime:#d7ff75}body,footer,header{background:var(--paper)}.preview-note{background:#e9eee4}.header-inner{height:90px}nav a:last-child{background:var(--ink);border-radius:0}.button{border-radius:0;border-color:var(--ink);box-shadow:none}.button:hover{box-shadow:5px 5px 0 #d7ff75}.route-hero{position:relative;overflow:hidden;background:var(--paper);border-bottom:1px solid #bac6c0}.route-hero-grid{display:grid;grid-template-columns:1.1fr 1fr;gap:30px;align-items:center;min-height:690px}.route-message{padding:35px 0 45px;position:relative;z-index:2}.route-kicker{display:flex;align-items:center;gap:12px;font-size:12px;font-weight:bold;letter-spacing:.07em}.route-kicker span{width:8px;height:8px;background:var(--blue);border-radius:50%}.route-message h1{font-size:clamp(48px,5.1vw,76px);letter-spacing:-.045em;line-height:1.42;margin:30px 0;font-weight:800}.route-message h1 em{font-style:normal;color:var(--blue);position:relative}.route-message h1 em:after{content:'';position:absolute;left:0;right:0;bottom:0;height:11px;background:var(--lime);z-index:-1}.route-description{font-size:13px;line-height:2.1;max-width:470px}.route-actions{display:flex;gap:12px;margin-top:25px}.route-actions .button{min-width:0;gap:25px;padding:16px 20px;font-size:12px}.route-actions .button:first-child{background:var(--blue);border-color:var(--blue);color:white}.route-sculpture{height:650px;position:relative;isolation:isolate;transform:rotate(-9deg);margin:0 -45px 0 0}.route-sculpture svg{position:absolute;width:100%;height:100%;filter:drop-shadow(20px 25px 25px #244f6420)}.route-disc{position:absolute;background:var(--lime);width:420px;height:420px;max-width:90%;aspect-ratio:1;border-radius:50%;top:90px;left:10px;z-index:-1}.route-tag{position:absolute;z-index:1;background:var(--paper);border:1px solid var(--ink);box-shadow:4px 4px 0 #192b42;font-size:12px;font-weight:bold;letter-spacing:.03em;padding:13px 18px;transform:rotate(9deg)}.tag-ads{top:105px;right:10px}.tag-create{top:310px;left:-10px}.tag-data{bottom:110px;right:0}.route-stamp{position:absolute;bottom:13px;left:0;background:var(--lime);border-radius:50%;width:120px;height:120px;display:grid;place-content:center;text-align:center;font-size:13px;font-weight:bold;line-height:1.9;transform:rotate(9deg)}.route-bottom{display:flex;justify-content:space-between;padding:20px 0;font-size:10px;letter-spacing:.09em;border-top:1px solid #bac6c0}.route-ticker{background:var(--blue);color:white;display:flex;justify-content:space-around;gap:40px;white-space:nowrap;overflow:hidden;padding:23px 0;font-weight:bold;font-size:23px;letter-spacing:.03em}.route-ticker span:nth-child(even){color:var(--lime)}.section{padding:110px 0}.eyebrow{font-family:Arial,sans-serif;font-size:15px;text-transform:uppercase;letter-spacing:.14em;color:var(--blue)}.eyebrow>span{display:inline-block;font-size:10px;margin-right:18px;color:inherit}.concept .split{display:grid;grid-template-columns:1fr 1fr;gap:85px;text-align:left;max-width:1200px}.concept h2{font-size:42px;line-height:1.7}.concept:before{background-position:105% 130%;opacity:.17}.concept .copy{padding-top:55px;font-size:14px}.concept .concept-diagram{justify-content:flex-start;gap:15px;margin:45px 0 0}.concept .concept-diagram span{width:85px;height:85px;border-radius:0;box-shadow:none;background:transparent;border-color:#9dafa8}.concept .concept-diagram span:nth-of-type(2){background:var(--lime);color:var(--ink);border-color:var(--lime);box-shadow:none;transform:rotate(-6deg)}.strengths{background:#e9eee5;border-radius:0}.strengths .split{gap:90px}.strengths h2{font-size:33px}.strength{border-top:1px solid #a8b8ae}.strength .num{color:var(--blue);font-size:20px}.strength h3{color:var(--ink)}.strength-art{transform:rotate(-4deg);background:#f7f7ef;border:1px solid #c9d4cb;padding:18px;margin-top:35px}.strengths .quiet{font-size:12px;letter-spacing:.1em;color:#61776c}.services .section-heading{display:grid;grid-template-columns:1fr 2fr;text-align:left;align-items:start}.section-heading h2{margin:0;font-size:40px}.section-heading>p{grid-column:2}.service-link{border-top:1px solid #a8b8ae;padding:35px 0}.service-link .num{background:transparent;color:var(--blue);font-size:35px;border-radius:0}.service-link h3{color:var(--ink)}.service-link .arrow{background:var(--lime);border:0;color:var(--ink);border-radius:0;width:48px;height:48px}.service-link:hover{background:#eaf0df}.experience{background:var(--blue);color:white;text-align:left}.experience .eyebrow,.experience h2,.experience-note,.qualification,.qualification small{color:white}.experience .numbers{max-width:none;margin-top:40px}.numbers p{color:var(--lime);font-size:110px}.numbers>div>span{color:#e5eeff}.numbers>div{border-color:#ffffff55}.cta{background:var(--lime);color:var(--ink)}.cta-grid{display:grid;grid-template-columns:1.6fr 1fr;align-items:center;text-align:left;gap:55px}.cta .eyebrow{font-size:13px;color:var(--ink)}.cta h2{font-size:38px}.cta p{color:#3d4e34}.cta .button{background:var(--ink);color:white;border:0;margin:0;padding:30px;min-width:0;max-width:100%;font-size:16px}.cta:before{opacity:.15}.page-title h1{color:var(--ink);font-size:52px}.page-intro{border-bottom:1px solid #bdc9c0}.page-title .eyebrow{font-size:14px}.jump-links a{border-radius:0;background:var(--lime);border:0;color:var(--ink)}.service-detail h2{color:var(--ink)}.pricing{background:#e9eee5;border-radius:0}.about-visual{border-radius:0;background:#dce9ff}.contact-layout aside{border-radius:0;background:#e9eee5}.field input,.field select,.field textarea{border-radius:0}.footer-bottom{border-color:#bdc9c0}
@media(max-width:1100px){.route-hero-grid{min-height:610px}.route-sculpture{height:560px}.route-disc{width:330px;height:330px}.route-message h1{font-size:55px}.route-actions{flex-wrap:wrap}.concept .split,.strengths .split{gap:40px}.concept h2{font-size:32px}.cta h2{font-size:30px}}
@media(max-width:800px){.route-hero-grid{grid-template-columns:1fr 0.8fr;gap:0;min-height:580px}.route-message h1{font-size:45px}.route-sculpture{height:480px;margin-right:-60px}.route-tag{font-size:9px;padding:10px}.tag-create{left:0;top:260px}.tag-ads{right:15px}.tag-data{bottom:80px}.route-disc{width:250px;height:250px}.route-stamp{display:none}.concept .split{grid-template-columns:1fr}.concept .copy{padding:0;max-width:none;margin:0}.strengths .split{grid-template-columns:1fr}.sticky-heading{text-align:left}.strength-art{max-width:260px;margin-left:0}.services .section-heading{grid-template-columns:1fr;gap:18px}.section-heading>p{grid-column:1}.cta-grid{grid-template-columns:1fr;gap:20px}.cta .button{width:100%;max-width:420px}.numbers p{font-size:85px}}
@media(max-width:600px){.header-inner{height:74px}.route-hero-grid{display:block;min-height:0}.route-message{padding:28px 0 0}.route-kicker{font-size:10px}.route-message h1{font-size:clamp(42px,12vw,64px);line-height:1.45;margin:24px 0}.route-description{font-size:12px;max-width:100%}.route-description br{display:none}.route-actions{display:grid;grid-template-columns:1fr;gap:10px}.route-actions .button{padding:16px 20px}.route-sculpture{height:330px;width:100%;max-width:360px;margin:25px auto 0;transform:rotate(-9deg)}.route-sculpture svg{width:100%}.route-disc{width:230px;height:230px;top:35px;left:20px}.route-tag{font-size:10px}.tag-ads{top:45px;right:5px}.tag-create{top:155px;left:0}.tag-data{bottom:35px;right:0}.route-bottom{padding:18px 0;font-size:8px}.route-bottom>span{display:none}.route-ticker{font-size:17px;gap:25px;justify-content:flex-start;padding:18px 20px}.section{padding:65px 0}.concept h2{font-size:30px}.concept .concept-diagram{margin:28px 0 0;gap:10px}.concept .concept-diagram span{width:70px;height:70px}.concept .copy{font-size:13px}.strengths h2{font-size:28px}.section-heading h2{font-size:29px}.service-link .num{font-size:21px}.service-link .arrow{width:26px;height:26px}.numbers p{font-size:80px}.cta h2{font-size:27px}.cta .button{font-size:14px;padding:24px}.page-title h1{font-size:31px}.page-title .eyebrow{font-size:12px}.eyebrow{font-size:13px}.experience h2{font-size:29px}.route-message h1 em:after{height:8px}}
/* First-person high-speed route film, rendered locally without video downloads. */
.route-hero{background:#040d22;color:white;isolation:isolate}.drive-scene{position:absolute;inset:0;z-index:-2;overflow:hidden}.drive-scene canvas{display:block;width:100%;height:100%}.route-hero:after{content:'';position:absolute;inset:0;z-index:-1;pointer-events:none;background:linear-gradient(90deg,#030c22f5 0%,#030c22df 28%,#030c2280 49%,transparent 78%),linear-gradient(0deg,#030c2270,transparent 25%)}.route-hero-grid{grid-template-columns:1fr;min-height:690px;pointer-events:none}.route-message{max-width:630px}.route-message a{pointer-events:auto}.route-message h1 em{color:#d7ff75}.route-message h1 em:after{background:#315cff;height:4px}.route-kicker span{background:#d7ff75}.route-description{color:#d1def4}.route-actions .button{color:white;border-color:#8296b9;background:#07142b66}.route-actions .button:first-child{background:#d7ff75;border-color:#d7ff75;color:#142139}.route-bottom{border-color:#ffffff30;color:#becde3}.drive-toggle{position:absolute;right:35px;bottom:85px;color:#d4e2f9;background:#08152d99;border:1px solid #9abbdf70;border-radius:30px;padding:11px 17px;font-size:11px;backdrop-filter:blur(10px)}.drive-toggle:hover{background:#19376d}.route-bottom>span{padding-right:0}
@media(max-width:800px){.route-message{max-width:480px}.route-hero:after{background:linear-gradient(90deg,#030c22ee,#030c2290 60%,#030c2220)}}
@media(max-width:600px){.route-hero-grid{display:block;min-height:730px}.route-message{padding-top:30px}.route-message h1{font-size:44px}.route-description{max-width:320px}.route-actions{max-width:310px}.route-hero:after{background:linear-gradient(180deg,#030c22cf 0%,#030c22af 48%,#030c2220 82%,#030c2270),linear-gradient(90deg,#030c2270,transparent)}.drive-toggle{right:20px;bottom:65px;font-size:10px}.route-bottom{position:relative}.drive-scene{inset:0 -140px 0 -60px}}
/* Supplied film replaces the procedural road animation. */
.drive-scene video{display:block;width:100%;height:100%;object-fit:cover;object-position:50% 50%}.route-hero:after{background:linear-gradient(90deg,#030c22e8 0%,#030c22c2 28%,#030c2255 55%,#030c2210 100%),linear-gradient(0deg,#030c2280,transparent 30%)}
@media(max-width:600px){.drive-scene{inset:0}.drive-scene video{object-position:55% center}.route-hero:after{background:linear-gradient(180deg,#030c22b5,#030c2290 55%,#030c2240 80%,#030c2280),linear-gradient(90deg,#030c2260,transparent)}}
/* Center the message and give the supplied film the main visual presence. */
.route-hero-grid{display:flex;justify-content:center;align-items:center;min-height:720px;text-align:center}.route-message{max-width:100%;width:100%;padding:65px 0 80px}.route-kicker{justify-content:center;font-size:12px;text-shadow:0 2px 10px #0008}.route-message h1{font-size:clamp(44px,4.7vw,68px);line-height:1.6;letter-spacing:.015em;margin:27px 0 24px;text-shadow:0 3px 24px #0007}.route-message h1 br:nth-of-type(2){display:none}.route-message h1 em:after{display:none}.route-description{max-width:650px;margin:0 auto;color:white;font-size:13px;line-height:2;text-shadow:0 1px 10px #000c}.route-actions{justify-content:center;margin-top:28px;gap:15px}.route-actions .button{min-width:200px;min-height:50px;padding:13px 20px;font-size:12px}.route-actions .button:nth-child(2){background:#07142b45;border-color:#ffffff90;backdrop-filter:blur(6px)}.route-hero:after{background:linear-gradient(180deg,#030c2226 0%,#030c2250 45%,#030c223b 72%,#030c2266 100%)}.route-bottom{position:relative;text-shadow:0 1px 5px #0008}.drive-toggle{bottom:80px;background:#08152d66}.drive-scene video{object-position:center center}
@media(max-width:800px){.route-hero-grid{min-height:680px}.route-message h1{font-size:45px}.route-hero:after{background:linear-gradient(180deg,#030c2230,#030c225c 48%,#030c2230 78%,#030c2270)}}
@media(max-width:600px){.route-hero-grid{display:flex;min-height:660px}.route-message{padding:48px 0 85px}.route-kicker{font-size:10px}.route-message h1{font-size:clamp(27px,7.5vw,40px);line-height:1.8;margin:27px 0 21px;letter-spacing:0}.route-description{font-size:11px;line-height:2;max-width:330px}.route-actions{display:flex;flex-wrap:wrap;max-width:280px;margin:24px auto 0;gap:10px}.route-actions .button{width:100%;min-width:0;min-height:47px;padding:12px 20px;font-size:11px}.route-bottom{justify-content:center}.drive-toggle{bottom:65px;right:50%;transform:translateX(50%);white-space:nowrap}.drive-scene video{object-position:center}.route-hero:after{background:linear-gradient(180deg,#030c2226,#030c2266 48%,#030c2233 80%,#030c2266)}}
/* Carry the cinematic blue and lime identity through the whole site. */
body,footer{background:#f3f6fc}.route-ticker{background:#d7ff75;color:#102957;padding:27px 0}.route-ticker span:nth-child(even){color:#124ee8}.concept{background:#091d40;color:#fff;overflow:hidden}.concept:before{opacity:.3;background-position:110% 50%;background-size:900px}.concept .eyebrow{color:#d7ff75}.concept h2{font-size:46px;line-height:1.65}.concept h2 em{color:#d7ff75}.concept .copy{color:#d5e1f5;font-size:15px}.concept .copy .button{color:white;border-color:#7797c3;background:#ffffff08}.concept .concept-diagram span{color:white;border-color:#5978a4;background:#163361}.concept .concept-diagram span:nth-of-type(2){background:#d7ff75;color:#102957;border-color:#d7ff75}.concept .concept-diagram i{color:#86b3ef}.strengths{background:#e5edff;border-radius:0 0 70px 0}.strengths:before{opacity:.35;background-position:110% 90%}.strengths .eyebrow{color:#124ee8}.strengths h2{font-size:37px}.strengths .quiet{color:#2460b8}.strength{padding:32px 25px;background:#ffffffb5;margin-bottom:14px;border:0;border-left:3px solid #2462e8;box-shadow:0 10px 30px #103b7510}.strength:last-child{border-bottom:0}.strength .num{font-weight:bold}.strength h3{color:#102f63}.strength p{color:#52698a}.strength-art{background:#ffffff;border:0;box-shadow:12px 12px 0 #b9d1ff;transform:rotate(-3deg);border-radius:3px}.services{background:#f3f6fc;position:relative;overflow:hidden}.services .section-heading h2{font-size:45px;color:#102e63}.services .section-heading>p{color:#3769b1;font-weight:bold}.services .service-link{background:white;padding:30px 28px;border:1px solid #d0def2;margin-bottom:16px;box-shadow:0 10px 28px #0e3c7510;transition:transform .25s,background .25s}.services .service-link:nth-of-type(even){margin-left:45px}.services .service-link:nth-of-type(odd){margin-right:45px}.services .service-link:hover{background:#e9f1ff;transform:translateY(-4px);padding-left:28px}.service-link .num{font-weight:bold;color:#1b57db}.service-link h3{color:#12356f}.service-link .arrow{background:#124ee8;color:#d7ff75;border-radius:50%}.experience{background:radial-gradient(ellipse at 90% 20%,#4079fa,transparent 65%),#124ee8;position:relative;overflow:hidden}.experience:after{content:'↗';position:absolute;font-size:450px;line-height:1;right:-20px;top:-55px;color:#ffffff0c;pointer-events:none}.experience>.wrap{position:relative;z-index:1}.experience h2{font-size:42px}.numbers p{font-weight:bold;letter-spacing:-.045em}.cta{background:#d7ff75}.cta h2{font-size:42px;color:#0c2a5b}.cta .button{background:#124ee8;box-shadow:8px 8px 0 #0c2a5b;color:white}.cta .button:hover{background:#092d85;box-shadow:4px 4px 0 #0c2a5b}.cta:before{opacity:.4}.cta p{color:#29476d}footer{background:#091d40;color:#eef4ff}.footer-top .brand-image{background:#f3f6fc;border-radius:3px}.footer-top .logo{width:170px}.footer-bottom{border-color:#ffffff30;color:#9fb6d9}.footer-links a:hover{color:#d7ff75}.page-intro{background:linear-gradient(120deg,#f3f6fc,#e4edff);border-bottom-color:#bbd0f2}.page-title h1{color:#103166}.service-detail{border-color:#c1d2ec}.service-detail h2{color:#143c80}.pricing{background:#e4edff}.about-visual{background:#cfe0ff;box-shadow:12px 12px 0 #124ee8}.contact-layout aside{background:#dce9ff}.scope li{background:#e3ecff}.profile dt{color:#305f9c}
@media(max-width:1100px){.concept h2{font-size:36px}.strengths h2{font-size:31px}.services .section-heading h2,.experience h2,.cta h2{font-size:36px}.strength{padding:25px 18px}}
@media(max-width:800px){.services .service-link:nth-of-type(n){margin-left:0;margin-right:0}.strengths{border-radius:0 0 45px 0}.concept .copy{font-size:14px}.services .section-heading h2{font-size:34px}}
@media(max-width:600px){.route-ticker{padding:20px;font-size:17px}.concept h2{font-size:29px}.concept .copy{font-size:13px}.strengths h2{font-size:27px}.strength{padding:22px 15px;gap:10px;grid-template-columns:28px 1fr}.strength h3{font-size:17px}.strength p{font-size:12px}.services .section-heading h2{font-size:29px}.services .service-link{padding:25px 14px;grid-template-columns:28px 1fr 26px;gap:10px}.services .service-link:hover{padding-left:14px}.service-link h3{font-size:18px}.service-link .num{font-size:20px}.experience h2{font-size:29px}.experience:after{font-size:290px;top:100px;right:-40px}.cta h2{font-size:27px}.cta .button{box-shadow:5px 5px 0 #0c2a5b}.about-visual{box-shadow:7px 7px 0 #124ee8}.footer-top .logo{width:145px}}
/* Each section gets a distinct focal point and composition. */
.concept{padding:125px 0}.concept .split{display:block;position:relative}.concept .eyebrow{margin-bottom:45px}.concept h2{font-size:clamp(44px,5.8vw,82px);line-height:1.55;letter-spacing:-.035em;margin:0}.concept .concept-diagram{position:absolute;right:0;top:90px;transform:rotate(9deg);display:flex;flex-direction:column;gap:12px;margin:0}.concept .concept-diagram span{width:105px;height:105px;font-size:18px}.concept .concept-diagram i{transform:rotate(90deg)}.concept .copy{max-width:680px;margin:55px 0 0;padding:0;font-size:16px}.concept .copy .button{margin-top:20px}.concept:before{background-size:1100px;background-position:130% 40%;opacity:.38}.strengths{padding:110px 0 125px;border-radius:0}.strengths .split{display:block}.strengths .sticky-heading{position:relative;text-align:left;min-height:240px;margin-bottom:50px;padding-right:320px}.strengths h2{font-size:49px;line-height:1.55;letter-spacing:-.025em}.strength-art{position:absolute;width:260px;right:20px;top:0;margin:0;transform:rotate(7deg);box-shadow:15px 15px 0 #bed0ff}.strengths .quiet{display:none}.strengths .sticky-heading+div{display:grid;grid-template-columns:1fr 1fr;gap:25px}.strength{position:relative;display:block;margin:0;padding:38px 35px 40px;min-height:330px;border:0;box-shadow:8px 8px 0 #c4d3f2;overflow:hidden}.strength .num{display:block;font-size:70px;line-height:1;letter-spacing:-.07em;margin-bottom:25px;color:#124ee8}.strength small{font-size:10px;letter-spacing:.12em;color:#476b9d}.strength h3{font-size:25px;line-height:1.65}.strength p{max-width:440px;font-size:14px;line-height:2}.strength:nth-child(2){background:#124ee8;color:white;transform:translateY(40px)}.strength:nth-child(2) .num,.strength:nth-child(2) small{color:#d7ff75}.strength:nth-child(2) h3,.strength:nth-child(2) p{color:white}.strength:nth-child(4){background:#d7ff75;transform:translateY(40px)}.services{padding:120px 0;background:#f9fbff}.services>.wrap{display:grid;grid-template-columns:1fr 1fr;gap:24px}.services .section-heading{grid-column:1/-1;display:block;margin-bottom:35px}.services .section-heading:after{content:'SERVICE';display:block;color:#124ee8;font-size:clamp(70px,13vw,180px);font-weight:800;letter-spacing:-.07em;line-height:1;margin-top:24px}.services .section-heading h2{font-size:39px;margin:24px 0 0}.services .section-heading>p{display:none}.services .service-link:nth-of-type(n){margin:0;display:grid;grid-template-columns:1fr 50px;gap:15px;background:#e7efff;padding:35px;min-height:340px;border:0;box-shadow:none;position:relative}.services .service-link .num{grid-column:1/-1;display:block;font-size:70px;width:auto;height:auto;line-height:1;margin-bottom:20px;letter-spacing:-.06em}.services .service-link>div{grid-column:1}.services .service-link h3{font-size:27px;line-height:1.6}.services .service-link p{font-size:14px;line-height:2}.services .service-link .arrow{align-self:end;width:50px;height:50px}.services .service-link:nth-of-type(2){background:#102d60}.services .service-link:nth-of-type(2) h3,.services .service-link:nth-of-type(2) p,.services .service-link:nth-of-type(2) small{color:#fff}.services .service-link:nth-of-type(2) .num{color:#d7ff75}.services .service-link:nth-of-type(3){background:#d7ff75}.services .service-link:nth-of-type(4){background:#dbe6f8}.services .service-link:hover{padding-left:35px;transform:translateY(-7px);box-shadow:0 16px 30px #12377420}.services .align-right{grid-column:1/-1;margin-top:25px}.experience{padding:120px 0}.experience h2{font-size:50px;margin:28px 0 55px}.numbers{gap:45px}.numbers p{font-size:clamp(90px,11vw,155px);line-height:1.2;margin:30px 0;letter-spacing:-.065em}.numbers p small{font-size:25px;letter-spacing:0}.numbers>div>span{font-size:17px}.experience-note{margin-top:35px;font-size:13px}.experience:after{font-size:650px;top:0}.cta{padding:105px 0}.cta-grid{display:block;position:relative}.cta .eyebrow{font-size:16px}.cta h2{font-size:clamp(37px,4.5vw,64px);line-height:1.55;letter-spacing:-.03em;margin:35px 0}.cta p{font-size:15px}.cta .button{display:flex;width:100%;max-width:none;margin-top:50px;padding:30px 35px;font-size:27px;min-height:110px}.cta .button span{font-size:50px}.cta:before{background-position:right center;background-size:900px}.cta-grid:after{content:'CONTACT';position:absolute;right:0;top:0;font-size:clamp(30px,6.5vw,90px);font-weight:bold;letter-spacing:-.06em;color:#153b691c;pointer-events:none}
@media(max-width:1000px){.concept h2{font-size:57px}.concept .concept-diagram{right:0;top:100px}.concept .copy{max-width:75%}.strengths h2{font-size:36px}.strengths .sticky-heading{padding-right:260px}.strength-art{width:210px}.strength{padding:30px 25px}.strength h3{font-size:22px}.services .service-link:nth-of-type(n){padding:28px}.services .service-link h3{font-size:24px}.numbers p{font-size:95px}}
@media(max-width:700px){.concept,.strengths,.services,.experience,.cta{padding:70px 0}.concept .eyebrow{margin-bottom:28px}.concept h2{font-size:clamp(28px,7.4vw,45px);line-height:1.65}.concept .concept-diagram{position:static;flex-direction:row;transform:none;margin:32px 0 0;gap:10px}.concept .concept-diagram span{width:72px;height:72px;font-size:14px}.concept .concept-diagram i{transform:none}.concept .copy{max-width:none;margin-top:32px;font-size:13px}.strengths .sticky-heading{padding-right:0;min-height:0;margin-bottom:30px}.strengths h2{font-size:29px}.strength-art{position:static;width:180px;margin:30px auto 40px;transform:rotate(5deg)}.strengths .sticky-heading+div{grid-template-columns:1fr;gap:18px}.strength:nth-child(n){transform:none;min-height:0;padding:28px 24px;box-shadow:5px 5px 0 #c4d3f2}.strength .num{font-size:50px;margin-bottom:18px}.strength h3{font-size:21px}.strength p{font-size:13px}.services>.wrap{grid-template-columns:1fr;gap:18px}.services .section-heading{margin-bottom:15px}.services .section-heading h2{font-size:28px}.services .section-heading:after{font-size:clamp(66px,17vw,110px);margin-top:22px}.services .service-link:nth-of-type(n){padding:26px;min-height:0;grid-template-columns:1fr 36px}.services .service-link .num{font-size:52px;margin-bottom:12px}.services .service-link h3{font-size:23px}.services .service-link p{font-size:13px}.services .service-link .arrow{width:36px;height:36px}.experience h2{font-size:31px;margin-bottom:30px}.numbers{gap:30px}.numbers p{font-size:clamp(74px,22vw,110px);margin:22px 0}.numbers p small{font-size:19px}.numbers>div>span{font-size:14px}.experience-note{font-size:11px}.cta h2{font-size:29px;margin-top:30px}.cta p{font-size:13px}.cta .eyebrow{font-size:12px}.cta .button{font-size:20px;padding:22px;margin-top:30px;min-height:85px}.cta .button span{font-size:33px}.cta-grid:after{font-size:43px;top:-15px}}
.plan-heading{margin:40px 0 30px}.plan-heading h3{font-size:30px;color:#103166;margin-bottom:18px}.plan-heading p{font-size:14px;line-height:2;color:#456184}.plan-grid{display:grid;grid-template-columns:1fr 1fr;gap:25px}.plan-card{background:white;padding:35px;border-top:5px solid #124ee8}.plan-card.monthly{background:#102d60;color:white;border-color:#d7ff75}.plan-label{font-size:11px;letter-spacing:.1em;color:#3766ad}.monthly .plan-label{color:#d7ff75}.plan-card h3{font-size:23px;margin:22px 0}.plan-amount{font-size:clamp(30px,3.5vw,50px);font-weight:bold;letter-spacing:-.04em;margin:25px 0 30px;line-height:1.5}.plan-amount small{font-size:13px;letter-spacing:0;display:inline-block}.monthly .plan-amount{color:#d7ff75}.plan-card ul{padding:25px 0 0;list-style:none;border-top:1px solid #9bb1cf60;display:grid;gap:12px;margin:0;font-size:14px}.plan-card li{position:relative;padding-left:19px;line-height:1.7}.plan-card li:before{content:'✓';position:absolute;left:0;color:#4478cc}.monthly li:before{color:#d7ff75}.plan-foot{font-size:12px;line-height:1.9;margin-top:28px;opacity:.85}.video-plan{display:flex;justify-content:space-between;align-items:center;gap:25px;background:#d7ff75;padding:25px 35px;margin-top:25px}.video-plan h3{font-size:23px;margin:0 0 12px}.video-plan p{font-size:14px;margin:0;line-height:1.8}.video-plan strong{font-size:35px}.individual-pricing{margin:50px 0 15px;font-size:22px}.pricing .price-table{width:100%}
@media(max-width:800px){.plan-grid{grid-template-columns:1fr}.plan-card ul{grid-template-columns:1fr 1fr;gap:12px 20px}.video-plan{flex-direction:column;align-items:flex-start}}
@media(max-width:600px){.plan-heading h3{font-size:23px;line-height:1.7}.plan-heading p{font-size:13px}.plan-card{padding:26px 23px}.plan-card h3{font-size:20px}.plan-amount{font-size:35px}.plan-amount small{font-size:11px}.plan-card ul{grid-template-columns:1fr;font-size:13px}.video-plan{padding:25px}.video-plan strong{font-size:29px}.video-plan h3{font-size:21px}.video-plan p{font-size:12px}}
/* Safari: keep the video in a non-negative compositing layer. */
.route-hero .drive-scene{z-index:0;pointer-events:none}.route-hero:after{z-index:1}.route-hero-grid,.route-bottom{position:relative;z-index:2}.drive-toggle{z-index:3;min-height:44px}.drive-direct{position:absolute;right:35px;bottom:130px;z-index:3;font-size:11px;color:white;text-shadow:0 1px 5px #000;padding:10px;background:#07142b77;border-radius:20px}.drive-scene video{background:#0c2549}
@media(max-width:600px){.drive-direct{bottom:112px;right:50%;transform:translateX(50%);white-space:nowrap;font-size:10px}.drive-toggle{min-height:44px}}

/* Brighter hero footage; localized text shadows preserve copy contrast. */
.route-hero .drive-scene video{filter:brightness(1.10) saturate(1.40) contrast(1.15)}
.route-hero:after{background:linear-gradient(180deg,rgba(3,12,34,.04) 0%,rgba(3,12,34,.12) 48%,rgba(3,12,34,.06) 78%,rgba(3,12,34,.24) 100%)}
.route-message h1{text-shadow:0 2px 4px #03102666,0 4px 22px #03102699}
.route-description,.route-kicker{text-shadow:0 1px 3px #031026,0 2px 10px #03102699}

/* Keep playback controls unobtrusive while preserving a touch-sized target. */
.drive-toggle[hidden]{display:none!important}
.drive-toggle.is-playing{width:44px;height:44px;min-height:44px;padding:0;border-radius:50%;font-size:16px;line-height:1;background:#07142b55;border-color:#ffffff66}
@media(max-width:600px){.drive-toggle.is-playing{right:20px;bottom:65px;transform:none}}

/* Section transitions: large, continuous typographic ribbons. */
.flow-band{position:relative;overflow:hidden;width:100%;padding:26px 0 30px;background:var(--blue);color:var(--paper);isolation:isolate}
.flow-track{display:flex;width:max-content;animation:routes-flow 38s linear infinite;will-change:transform}
.flow-group{display:flex;align-items:center;gap:42px;padding-right:42px;flex-shrink:0;font:800 clamp(56px,8.4vw,128px)/1.05 Arial,sans-serif;letter-spacing:-.055em;white-space:nowrap}
.flow-group i{font-style:normal;color:var(--lime);font-weight:400}
.flow-paper{background:var(--paper);color:var(--blue);padding:52px 0;border-top:1px solid #192b4220;border-bottom:1px solid #192b4220}
.flow-paper .flow-track{animation-duration:54s;animation-direction:reverse}
.flow-paper .flow-group{font-weight:700;color:transparent;-webkit-text-stroke:1.5px var(--blue)}
.flow-paper .flow-group i{color:var(--blue);-webkit-text-stroke:0}
.flow-lime{background:var(--lime);color:var(--ink);padding:24px 0}
.flow-lime .flow-track{animation-duration:42s}
.flow-lime .flow-group i{color:var(--blue)}
.flow-toggle{position:absolute;right:14px;bottom:8px;width:44px;height:44px;border:1px solid currentColor;border-radius:50%;background:inherit;color:inherit;font:14px Arial;cursor:pointer;z-index:1}
.flow-toggle:focus-visible{outline:3px solid currentColor;outline-offset:3px}
.flow-band.is-paused .flow-track{animation-play-state:paused}
@keyframes routes-flow{to{transform:translateX(-50%)}}
@media(max-width:600px){.flow-band{padding:22px 0 28px}.flow-group{font-size:54px;gap:24px;padding-right:24px}.flow-paper{padding:35px 0}.flow-toggle{width:36px;height:36px;right:8px;bottom:4px}.flow-track{animation-duration:32s}}
@media(prefers-reduced-motion:reduce){.flow-track{animation:none;transform:none}.flow-toggle{display:none}}

/* Quiet typographic transitions, secondary to the Japanese content. */
.flow-band{background:#f7f7ef;color:#263b55;padding:24px 0}
.flow-blue{background:#101d3d;color:#e3ecff}
.flow-track{opacity:.22}
.flow-group{font-weight:500}
.flow-group i,.flow-lime .flow-group i{color:inherit}
.flow-paper{border-color:#192b420a}
.flow-paper .flow-group{font-weight:500;-webkit-text-stroke:1px #263b55}
.flow-paper .flow-group i{color:#263b55}
.flow-lime{background:#f3f6ed;color:#263b55}
.flow-toggle{color:#627084;border-color:#62708455}
.flow-blue .flow-toggle{color:#a3aec2;border-color:#a3aec244}

/* Keep the requested marquee motion independent of OS motion preferences. */
@media(prefers-reduced-motion:reduce){.flow-track{animation:routes-flow 38s linear infinite!important}.flow-paper .flow-track{animation-duration:54s!important;animation-direction:reverse!important}.flow-lime .flow-track{animation-duration:42s!important}.flow-toggle{display:block}.flow-band.is-paused .flow-track{animation-play-state:paused!important}}

.count-value{display:inline-block;font-variant-numeric:tabular-nums;min-width:2ch}.count-value[data-count="8000"]{min-width:4.6ch}

/* Small letter-by-letter entrances and springy interactive details. */
.playful-char{display:inline-block;transform-origin:50% 85%;white-space:pre}
.playful-title{overflow:visible}
.button>span,.service-link .arrow{transition:transform .45s cubic-bezier(.2,1.6,.4,1)}
.button:hover>span{transform:translate(4px,-4px) rotate(8deg)}
.service-link:hover .arrow{transform:rotate(-12deg) scale(1.08)}
.route-kicker>span{box-shadow:0 0 0 5px #d7ff751c}
@media(prefers-reduced-motion:reduce){.button:hover>span,.service-link:hover .arrow{transform:none}}
/* Connected motion throughout the site, with off-screen loops suspended. */
.reading-progress{position:fixed;left:0;top:0;right:0;height:3px;background:#124ee8;transform-origin:left;transform:scaleX(0);z-index:1000;pointer-events:none}
.concept:before,.cta:before{translate:0 var(--scroll-drift,0px);transition:translate .3s linear}
.experience:after{translate:0 var(--scroll-drift,0px);transition:translate .3s linear}
.concept-diagram span{animation:route-bob 5s ease-in-out infinite;animation-play-state:paused}
.concept-diagram span:nth-of-type(2){animation-delay:-1.6s}.concept-diagram span:nth-of-type(3){animation-delay:-3.2s}
.motion-active .concept-diagram span{animation-play-state:running}
.concept-diagram i{animation:route-link 2.8s ease-in-out infinite;animation-play-state:paused}.motion-active .concept-diagram i{animation-play-state:running}
.strength,.service-link,.plan-card{transition:rotate .35s ease,box-shadow .35s ease,transform .35s ease}
.motion-tilt{rotate:1 0 0 var(--tilt-x,0deg);transform:perspective(1000px) rotateY(var(--tilt-y,0deg))!important;box-shadow:0 18px 40px #12275018}
.button{position:relative;overflow:hidden;isolation:isolate;transition:background .3s,color .3s,box-shadow .3s,translate .3s}
.button:active{translate:0 2px}
.button:before{content:'';position:absolute;inset:-50% auto -50% -45%;width:25%;background:linear-gradient(90deg,transparent,#ffffff40,transparent);transform:skewX(-20deg);pointer-events:none}
.button:hover:before,.button:focus-visible:before{animation:route-shine .75s ease-out}
header nav a:not(:last-child){position:relative}header nav a:not(:last-child):after{content:'';position:absolute;left:0;right:0;bottom:-7px;height:2px;background:var(--blue);transform:scaleX(0);transform-origin:left;transition:transform .3s}
header nav a:hover:after,header nav a:focus-visible:after{transform:scaleX(1)}
.faq details[open] p{animation:route-answer .35s ease-out}
@keyframes route-bob{0%,100%{translate:0 0}50%{translate:0 -9px}}
@keyframes route-link{0%,100%{opacity:.4}50%{opacity:1}}
@keyframes route-shine{to{left:140%}}
@keyframes route-answer{from{opacity:0;translate:0 -6px}to{opacity:1;translate:0 0}}
@media(prefers-reduced-motion:reduce){.concept:before,.cta:before,.experience:after{translate:none}.motion-tilt{rotate:none;transform:none!important}.reading-progress{display:none}}

/* Section illustrations and understated upward entrances. */
.section-visual{margin:0;overflow:hidden;position:relative;border-radius:4px;isolation:isolate}
.section-visual img{display:block;width:100%;height:100%;object-fit:contain;position:relative;z-index:1}
.section-visual:before{content:'';position:absolute;width:76%;aspect-ratio:1;border:1px solid #8bb6e94d;border-radius:50%;left:12%;top:8%}
.concept .split{padding-right:0}.concept .split>div:first-child{position:relative}
.concept h2{max-width:75%;font-size:clamp(40px,5vw,70px)}
.visual-flight{position:absolute;width:30%;right:0;top:45px;aspect-ratio:4/3;background:linear-gradient(145deg,#183b66,#132744)}
.concept .concept-diagram{position:static;flex-direction:row;transform:none;margin-top:30px}
.concept .concept-diagram span{width:72px;height:72px;font-size:14px;animation:none}
.concept .concept-diagram i{transform:none;animation:none}
.strengths .sticky-heading{min-height:300px;padding-right:43%;display:flex;flex-direction:column;justify-content:center}
.visual-meeting{position:absolute;right:0;top:0;width:39%;aspect-ratio:4/3;background:#f6f9ff;border:1px solid #c6d7ec}
.services .section-heading{position:relative;min-height:300px;padding-right:43%;display:flex;flex-direction:column;justify-content:center}
.services .section-heading:after{display:none}
.visual-creative{position:absolute;right:0;top:0;width:39%;aspect-ratio:4/3;background:#e6effb;border:1px solid #cfdded}
@media(max-width:700px){.concept h2{max-width:none;font-size:clamp(28px,7.4vw,45px)}.section-visual.visual-flight,.section-visual.visual-meeting,.section-visual.visual-creative{position:relative;inset:auto;width:100%;max-width:440px;aspect-ratio:16/10;margin:28px 0 0}.section-visual img{padding:12px;box-sizing:border-box}.strengths .sticky-heading,.services .section-heading{padding-right:0;min-height:0;display:block}.concept .concept-diagram{margin-top:24px}}

@media(min-width:701px){.visual-meeting,.visual-creative{max-height:280px}}

.strengths .sticky-heading{top:0}
