@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:#081729;--blue:#1268BD;--teal:#009CA8;--canvas:#F7FBFE;--text:#10283E;--line:#DCE9F2}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:'DM Sans',Arial,sans-serif;color:var(--text);background:#fff;line-height:1.65}h1,h2,h3,b,strong,button{font-family:Manrope,Arial,sans-serif}h1,h2,h3{line-height:1.15;letter-spacing:-.04em}h1{font-size:clamp(2.6rem,5vw,4.9rem);margin:18px 0 22px}h2{font-size:clamp(2rem,3.4vw,3.25rem);max-width:850px;margin:12px 0 20px}h3{font-size:1.12rem;letter-spacing:-.02em;margin:10px 0}p{margin:0 0 16px}em{font-style:normal;color:var(--blue)}.shell{width:min(1190px,calc(100% - 64px));margin:auto}.header{background:white;position:sticky;top:0;z-index:10;border-bottom:1px solid #e8eff5}.head-inner{height:96px;display:flex;align-items:center;justify-content:space-between;gap:25px}.logo{display:block;width:170px;height:79px;object-fit:contain;object-position:left center}.header nav{display:flex;gap:31px;align-items:center}.header nav a{color:#173450;text-decoration:none;font-weight:800;font-size:14px}.header nav a:hover,.header nav a.active{color:var(--blue)}.menu-toggle{display:none}.hero{padding:86px 0 92px}.hero.dark{background:radial-gradient(ellipse at 75% 40%,#174c7a 0%,#0b2c4a 39%,#081729 78%);color:#fff}.hero.dark em{color:#3bd5e1}.hero.light{background:linear-gradient(130deg,#f7fbfe,#e8f6fc)}.hero.compact{padding:70px 0}.hero-grid{display:grid;grid-template-columns:1fr 1fr;gap:66px;align-items:center}.hero .lead{font-size:1.18rem;line-height:1.75;max-width:620px}.hero p:not(.lead){opacity:.86;max-width:650px}.kicker,.smallcaps{font-size:.76rem;font-weight:800;letter-spacing:.17em;color:var(--teal)}.dark .kicker,.dark .smallcaps{color:#41dce5}.actions{display:flex;flex-wrap:wrap;gap:15px;margin-top:30px}.button{display:inline-block;text-decoration:none;background:var(--blue);color:white;border:0;padding:15px 21px;border-radius:9px;font-size:.87rem;font-weight:800;cursor:pointer}.button:hover{filter:brightness(1.1)}.button.ghost{background:transparent;color:#52e5ed;border:1px solid #5bc9da}.section{padding:76px 0}.section.pale{background:var(--canvas)}.section.cta{background:linear-gradient(115deg,#0a2948,#125e9e);color:#fff}.section.cta h2{color:#fff}.lead{font-size:1.08rem;max-width:900px;color:inherit;line-height:1.8}.tiles{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:17px;margin-top:32px}.tile{padding:24px;border:1px solid var(--line);border-radius:15px;background:#fff;box-shadow:0 6px 22px #0b3d5b08}.tile p{font-size:.92rem;color:#526b7f;margin-bottom:0}.tile .smallcaps{font-size:.68rem}.continuum{border:1px solid #2c6e9b;border-radius:24px;background:linear-gradient(150deg,#082037,#0c4369);padding:32px;box-shadow:0 22px 60px #0003}.continuum h3{font-size:1.13rem;color:white;margin:10px 0 32px}.stages{display:grid;grid-template-columns:repeat(4,1fr);gap:9px}.stages>div{min-height:136px;border:1px solid #3183b3;border-radius:12px;padding:13px 7px;text-align:center;display:flex;flex-direction:column;justify-content:space-around;align-items:center;background:#0a3152}.stages b{font-size:.73rem;color:#53e2eb}.stages strong{font-size:.68rem;color:#fff}.stages small{font-size:.62rem;color:#c8dce8}.stages strong:before{content:'◉';display:block;font-size:1.9rem;color:#3ad7de;line-height:1.7}.cont-footer{font-size:.66rem;letter-spacing:.09em;color:#b4d8e6;text-align:center;border-top:1px solid #33779a;margin-top:29px;padding-top:24px}.architecture{border:1px solid #c1dce8;background:white;border-radius:20px;padding:30px;box-shadow:0 24px 55px #16426818}.architecture>span{font-size:.72rem;font-weight:800;letter-spacing:.17em;color:var(--teal)}.arch-row{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:14px}.arch-row b{border:1px solid #d5e6ee;padding:18px 10px;border-radius:9px;text-align:center;font-size:.8rem}.arch-mid{margin-top:14px;background:#e7f6f9;border-radius:9px;padding:17px;text-align:center;font-weight:800;font-size:.82rem;color:#0d5a72}.arch-mid.blue{background:#1268BD;color:white}.architecture small{display:block;margin-top:20px;color:#627d8e}.filterbar{margin:26px 0}.filterbar label{display:block;font-weight:800;margin-bottom:8px}.filterbar input{padding:15px;width:min(100%,460px);border:1px solid #b7d0e0;border-radius:8px;font:inherit}.filter-buttons{display:flex;gap:9px;flex-wrap:wrap;margin-top:16px}.filter{border:1px solid #bcd2e0;background:white;color:#143957;padding:9px 14px;border-radius:25px;cursor:pointer;font-weight:700}.filter.selected{background:var(--blue);color:white}.capability[hidden]{display:none}.persona-visual{background:radial-gradient(circle,#0b6095,#081729);border-radius:24px;min-height:340px;padding:40px;display:grid;place-content:center;gap:30px;color:white;text-align:center}.persona-hub{border:2px solid #4cdae4;border-radius:50%;height:185px;width:185px;display:grid;place-items:center;font-weight:800;letter-spacing:.1em;line-height:1.6;margin:auto;box-shadow:0 0 0 22px #2ecbd518}.persona-pills{display:flex;flex-wrap:wrap;justify-content:center;gap:8px}.persona-pills span{border:1px solid #59afc7;border-radius:20px;padding:5px 10px;font-size:.67rem}.persona-controls{display:flex;flex-wrap:wrap;gap:12px;margin-top:24px}.persona-button{padding:12px 16px;border-radius:8px;background:#fff;border:1px solid #bdd8e6;color:#1b425e;cursor:pointer;font-weight:700}.persona-button.selected{background:var(--blue);color:#fff}.persona-detail{background:#f1f8fc;border-left:4px solid var(--teal);border-radius:8px;padding:22px;margin-top:18px}.trust-art{min-height:360px;border-radius:25px;background:radial-gradient(circle at center,#1367a0,#071b31 68%);border:1px solid #3a769c;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:15px}.trust-art .shield{font-size:7rem;color:#4ddce7;line-height:1}.trust-art strong{text-align:center;font-size:1.7rem;letter-spacing:.13em}.trust-art span{font-size:.7rem;letter-spacing:.14em;color:#78d5df}.contactform{max-width:940px;margin-top:24px;border:1px solid var(--line);border-radius:16px;padding:30px;background:white}.formgrid{display:grid;grid-template-columns:1fr 1fr;gap:18px}.contactform label{font-weight:700;display:block;font-size:.89rem}.contactform input:not([type=radio]),.contactform select,.contactform textarea{display:block;width:100%;padding:13px;margin-top:7px;border:1px solid #bdd3df;border-radius:8px;font:inherit;background:#fff}.contactform fieldset{border:1px solid var(--line);border-radius:9px;margin:22px 0;padding:18px}.contactform fieldset label{margin-top:10px;font-weight:500}.contactform textarea{margin-bottom:20px}.form-note{font-size:.78rem;color:#61788b;margin-top:13px}.contactlinks{display:flex;gap:25px;flex-wrap:wrap}.contactlinks a{color:var(--blue);font-weight:800}footer{background:#081729;color:#d9e8f2;padding:40px 0}footer .foot{display:flex;justify-content:space-between;align-items:center;gap:20px;flex-wrap:wrap}footer a{color:#8fe5ea;margin-right:20px;text-decoration:none}footer small{width:100%;opacity:.7}@media(max-width:900px){.hero-grid{grid-template-columns:1fr}.tiles{grid-template-columns:repeat(2,minmax(0,1fr))}.menu-toggle{display:block;border:1px solid #d4e5ed;background:white;border-radius:8px;padding:10px}.header nav{display:none;position:absolute;top:96px;left:0;right:0;background:white;padding:22px;flex-direction:column;align-items:flex-start;border-bottom:1px solid #ddd}.header nav.open{display:flex}}@media(max-width:580px){.shell{width:calc(100% - 36px)}.tiles,.formgrid{grid-template-columns:1fr}.hero{padding:54px 0}.section{padding:55px 0}.continuum{padding:20px}.stages{grid-template-columns:repeat(2,1fr)}.logo{width:145px}.contactform{padding:18px}}
/* Expanded Platform introduction */
.hero .platform-intro{line-height:1.75;margin-top:18px;}
.hero .hero-grid>div:first-child p{max-width:760px;}

/* 2026-10-29 copy update: readable hero paragraphs and balanced layout */
.home-story .shell { max-width: 1000px; }
.home-story .lead { max-width: 900px; line-height: 1.85; }
.home-promise { font-weight: 700; }
.hero-grid > div:first-child p { line-height: 1.8; }
@media(min-width:900px) { .hero-grid { align-items:center; } }
