:root{--ink:#123a6b;--muted:#4b6684;--blue:#025cd3;--blue-dark:#075bb8;--blue-soft:#f1f8fe;--green:#7bc43b;--green-dark:#5aa72b;--line:#d7e7f5;--paper:#fff;--soft:#f7fbff;--shadow:0 24px 60px rgba(18,58,107,.1);--shell:min(1240px,calc(100vw - 48px));font-family:Inter,"Helvetica Neue",Arial,sans-serif;color:var(--ink);background:var(--paper);font-synthesis:none}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:#fff;color:var(--ink);font-size:16px;line-height:1.65}a{color:inherit;text-decoration:none}img{display:block;max-width:100%}button{font:inherit}.shell{width:var(--shell);margin-inline:auto}.site-header{height:82px;background:rgba(255,255,255,.92);border-bottom:1px solid rgba(16,40,66,.08);position:sticky;top:0;z-index:50;backdrop-filter:blur(16px)}.nav-shell{height:100%;display:flex;align-items:center;justify-content:space-between}.brand img{width:136px;height:auto}.desktop-nav{display:flex;align-items:center;gap:30px}.desktop-nav a{font-size:12px;font-weight:700;letter-spacing:.08em;position:relative;padding:30px 0}.desktop-nav a:after{content:"";height:2px;position:absolute;left:0;right:100%;bottom:21px;background:linear-gradient(90deg,var(--blue),var(--green));transition:.25s}.desktop-nav a:hover:after{right:0}.menu-toggle,.mobile-nav{display:none}
.hero{position:relative;min-height:690px;display:grid;align-items:center;overflow:hidden;background:linear-gradient(115deg,#fff 0%,#fbfdff 55%,#eef8fd 100%)}.hero-grid-bg{position:absolute;inset:0;background-image:linear-gradient(rgba(12,95,152,.045) 1px,transparent 1px),linear-gradient(90deg,rgba(12,95,152,.045) 1px,transparent 1px);background-size:58px 58px;mask-image:linear-gradient(90deg,#000,transparent 75%)}.hero:after{content:"";position:absolute;width:540px;height:540px;border-radius:50%;background:rgba(134,210,28,.08);filter:blur(2px);right:-210px;bottom:-260px}.hero-grid{position:relative;z-index:2;display:grid;grid-template-columns:.96fr 1.04fr;gap:72px;align-items:center;padding-block:76px}.eyebrow,.kicker{margin:0 0 18px;color:var(--blue-dark);font-size:11px;font-weight:800;letter-spacing:.18em}.hero h1{font-size:clamp(48px,5.1vw,74px);line-height:.98;letter-spacing:-.045em;margin:0;max-width:660px}.hero .lead{font-size:18px;line-height:1.65;color:var(--muted);max-width:600px;margin:30px 0}.hero-actions{display:flex;gap:12px}.button{display:inline-flex;align-items:center;justify-content:center;min-height:50px;padding:0 22px;font-size:13px;font-weight:800;letter-spacing:.02em;border:1px solid var(--blue-dark);transition:.25s}.button-primary{color:#fff;background:var(--blue-dark)}.button-primary:hover{background:var(--blue);border-color:var(--blue);transform:translateY(-2px)}.button-ghost{background:#fff}.button-ghost:hover{background:var(--blue-soft);transform:translateY(-2px)}.hero-proof{display:flex;gap:0;margin-top:48px;border-top:1px solid var(--line);padding-top:20px}.hero-proof span{padding-right:22px;margin-right:22px;border-right:1px solid var(--line);font-size:12px;color:var(--muted)}.hero-proof span:last-child{border:0}.hero-proof strong{display:block;color:var(--ink);font-size:14px}.hero-showcase{height:500px;position:relative;box-shadow:var(--shadow);background:var(--blue-soft)}.hero-showcase:before{content:"";position:absolute;inset:-16px 18px 18px -16px;border:1px solid rgba(0,120,200,.22);z-index:-1}.hero-slide{position:absolute;inset:0;opacity:0;pointer-events:none;transition:opacity .7s ease}.hero-slide.active{opacity:1;pointer-events:auto}.hero-slide img{width:100%;height:100%;object-fit:cover}.image-shade{position:absolute;inset:0;background:linear-gradient(180deg,rgba(4,35,62,.03) 30%,rgba(4,35,62,.86) 100%)}.slide-index{position:absolute;top:28px;right:28px;color:#fff;font-size:11px;font-weight:800;letter-spacing:.15em}.slide-copy{position:absolute;left:38px;right:38px;bottom:40px;color:#fff}.slide-copy p{margin:0 0 6px;font-size:10px;font-weight:800;letter-spacing:.18em;color:#b5e984}.slide-copy h2{font-size:31px;line-height:1.1;margin:0 0 17px;letter-spacing:-.02em}.slide-copy a{font-size:13px;font-weight:700}.slide-copy a span{color:#b5e984}.carousel-controls{position:absolute;display:flex;gap:8px;left:38px;top:30px;z-index:4}.carousel-controls button{width:30px;height:3px;padding:0;border:0;background:rgba(255,255,255,.35);cursor:pointer}.carousel-controls button.active{background:var(--green)}
.capability-strip{background:var(--blue-dark);color:#fff}.strip-grid{display:grid;grid-template-columns:repeat(3,1fr)}.strip-grid>div{padding:25px 30px;border-left:1px solid rgba(255,255,255,.14)}.strip-grid>div:last-child{border-right:1px solid rgba(255,255,255,.14)}.strip-grid small{display:block;color:#a7d6ef;font-size:9px;font-weight:800;letter-spacing:.18em;margin-bottom:5px}.strip-grid strong{font-size:14px}
.section{padding:120px 0}.soft{background:var(--soft)}.section-heading{display:grid;grid-template-columns:1.1fr .9fr;gap:80px;align-items:end;margin-bottom:54px}.section-heading h2,.system-layout h2,.project-copy h2{font-size:clamp(34px,3.4vw,52px);line-height:1.07;letter-spacing:-.035em;margin:0}.section-heading>p{color:var(--muted);font-size:17px;margin:0;max-width:520px}.solution-grid{display:grid;grid-template-columns:repeat(4,1fr);border:1px solid var(--line)}.solution-card{min-height:308px;padding:32px 28px;border-right:1px solid var(--line);display:flex;flex-direction:column;transition:.3s;background:#fff}.solution-card:last-child{border:0}.solution-card:hover{background:var(--blue-dark);color:#fff;transform:translateY(-8px);box-shadow:0 18px 30px rgba(7,89,155,.15)}.solution-card>span{font-size:11px;color:var(--blue);font-weight:800;letter-spacing:.14em}.solution-card:hover>span{color:#b5e984}.solution-card h3{font-size:21px;line-height:1.2;margin:45px 0 14px}.solution-card p{font-size:14px;color:var(--muted);margin:0}.solution-card:hover p{color:#d3e4ef}.solution-card b{font-size:12px;margin-top:auto}.solution-card i{color:var(--green);font-style:normal;float:right}.strength-grid{display:grid;grid-template-columns:repeat(2,1fr);border-top:1px solid var(--line);border-left:1px solid var(--line)}.strength-grid article{position:relative;padding:42px 42px 46px 88px;border-right:1px solid var(--line);border-bottom:1px solid var(--line);background:#fff;min-height:238px}.line-icon{position:absolute;left:32px;top:40px;font-size:28px;color:var(--green-dark)}.strength-grid small{font-size:10px;color:var(--blue);font-weight:800;letter-spacing:.14em}.strength-grid h3{font-size:22px;line-height:1.25;margin:15px 0 12px}.strength-grid p{color:var(--muted);font-size:14px;margin:0}
.system-band{padding:92px 0;background:linear-gradient(120deg,#f3fbff 0%,#e7f6fd 64%,#f5fbe9 100%);border-block:1px solid var(--line)}.system-layout{display:grid;grid-template-columns:.72fr 1.28fr;gap:80px;align-items:center}.system-layout>div>p:last-child{color:var(--muted)}.system-tags{display:grid;grid-template-columns:repeat(3,1fr);border:1px solid rgba(0,120,200,.22)}.system-tags a{min-height:98px;display:flex;align-items:center;justify-content:space-between;padding:20px;border-right:1px solid rgba(0,120,200,.18);border-bottom:1px solid rgba(0,120,200,.18);font-size:13px;font-weight:800;letter-spacing:.04em;background:rgba(255,255,255,.64);transition:.25s}.system-tags a:nth-child(3n){border-right:0}.system-tags a:nth-child(n+4){border-bottom:0}.system-tags a span{color:var(--green-dark)}.system-tags a:hover{background:#fff;color:var(--blue);transform:translateY(-3px)}
.projects-section{padding-bottom:80px}.project-grid{display:grid;grid-template-columns:1.12fr .88fr;gap:78px;align-items:center}.project-image{height:560px;position:relative}.project-image img{width:100%;height:100%;object-fit:cover}.project-label{position:absolute;left:0;bottom:0;background:rgba(7,89,155,.94);color:#fff;padding:26px 32px;min-width:62%}.project-label small{display:block;font-size:9px;letter-spacing:.16em;color:#b5e984;margin-bottom:6px}.project-label strong{font-size:22px}.project-copy>p:not(.kicker){color:var(--muted);font-size:17px}.project-copy ul{list-style:none;padding:0;margin:28px 0}.project-copy li{padding:12px 0;border-bottom:1px solid var(--line);font-weight:700;font-size:14px}.project-copy li:before{content:"+";color:var(--green-dark);margin-right:12px}.text-link{display:inline-flex;gap:18px;font-size:12px;font-weight:800;color:var(--blue-dark)}.text-link span{color:var(--green-dark)}.news-section{padding-top:80px}.section-heading.compact{align-items:center}.news-grid{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.news-grid a{min-height:220px;padding:32px;border-right:1px solid var(--line);display:flex;flex-direction:column}.news-grid a:last-child{border:0}.news-grid small{font-size:9px;color:var(--blue);font-weight:800;letter-spacing:.14em}.news-grid h3{font-size:20px;line-height:1.3;margin:22px 0}.news-grid span{margin-top:auto;font-size:12px;font-weight:800;color:var(--blue-dark)}.news-grid a:hover{background:var(--blue-soft)}
.footer{background:#0b3155;color:#fff;padding:74px 0 24px}.footer-grid{display:grid;grid-template-columns:1.8fr repeat(3,1fr);gap:70px}.footer-brand img{width:150px;filter:brightness(0) invert(1)}.footer-brand p{color:#b9ccdc;max-width:390px;font-size:14px;margin-top:25px}.footer h4{font-size:10px;letter-spacing:.16em;color:#83bfe1;margin:0 0 20px}.footer a{display:block;color:#d3e1eb;font-size:13px;margin:10px 0}.footer a:hover{color:#b5e984}.footer-bottom{display:flex;justify-content:space-between;border-top:1px solid rgba(255,255,255,.14);margin-top:62px;padding-top:22px;font-size:11px;color:#89a8bf}.reveal{opacity:0;transform:translateY(18px);transition:opacity .7s ease,transform .7s ease}.reveal.visible{opacity:1;transform:none}
@media (max-width:1050px){.desktop-nav{gap:18px}.desktop-nav a{font-size:10px}.hero-grid{gap:42px}.hero-showcase{height:440px}.solution-grid{grid-template-columns:repeat(2,1fr)}.solution-card:nth-child(2){border-right:0}.solution-card:nth-child(-n+2){border-bottom:1px solid var(--line)}.system-layout{grid-template-columns:1fr}.project-grid{gap:42px}.project-image{height:480px}}
@media (max-width:760px){:root{--shell:min(100% - 32px,1240px)}body{font-size:15px}.site-header{height:68px}.brand img{width:112px}.desktop-nav{display:none}.menu-toggle{display:grid;width:42px;height:42px;border:0;background:transparent;place-content:center;gap:7px}.menu-toggle span{width:24px;height:2px;background:var(--ink);transition:.25s}.menu-toggle[aria-expanded="true"] span:first-child{transform:translateY(4.5px) rotate(45deg)}.menu-toggle[aria-expanded="true"] span:last-child{transform:translateY(-4.5px) rotate(-45deg)}.mobile-nav{display:flex;position:fixed;inset:68px 0 auto;background:#fff;padding:18px 24px 28px;box-shadow:0 18px 30px rgba(16,40,66,.12);flex-direction:column;transform:translateY(-130%);opacity:0;transition:.28s;z-index:49}.mobile-nav.open{transform:none;opacity:1}.mobile-nav a{padding:13px 4px;border-bottom:1px solid var(--line);font-weight:800;font-size:12px;letter-spacing:.08em}.hero{min-height:auto}.hero-grid{grid-template-columns:1fr;padding:62px 0 56px;gap:46px}.hero h1{font-size:46px}.hero .lead{font-size:16px}.hero-actions{flex-wrap:wrap}.hero-proof{margin-top:34px}.hero-proof span{padding-right:12px;margin-right:12px}.hero-showcase{height:430px}.hero-showcase:before{inset:-10px 10px 10px -10px}.slide-copy{left:24px;right:24px;bottom:28px}.slide-copy h2{font-size:27px}.carousel-controls{left:24px}.strip-grid{grid-template-columns:1fr}.strip-grid>div{border-left:1px solid rgba(255,255,255,.14);border-right:1px solid rgba(255,255,255,.14);border-bottom:1px solid rgba(255,255,255,.14);padding:18px 20px}.section{padding:84px 0}.section-heading{grid-template-columns:1fr;gap:22px;margin-bottom:38px}.section-heading h2,.system-layout h2,.project-copy h2{font-size:36px}.section-heading>p{font-size:15px}.solution-grid{grid-template-columns:1fr}.solution-card,.solution-card:nth-child(2){border-right:0;border-bottom:1px solid var(--line);min-height:250px}.solution-card:last-child{border-bottom:0}.solution-card h3{margin-top:30px}.strength-grid{grid-template-columns:1fr}.strength-grid article{padding:34px 28px 38px 76px}.line-icon{left:26px;top:33px}.system-band{padding:72px 0}.system-layout{gap:35px}.system-tags{grid-template-columns:1fr 1fr}.system-tags a,.system-tags a:nth-child(3n),.system-tags a:nth-child(n+4){border-right:1px solid rgba(0,120,200,.18);border-bottom:1px solid rgba(0,120,200,.18)}.system-tags a:nth-child(2n){border-right:0}.system-tags a:nth-child(n+5){border-bottom:0}.project-grid{grid-template-columns:1fr}.project-image{height:390px}.project-label{min-width:85%;padding:20px}.news-grid{grid-template-columns:1fr}.news-grid a{border-right:0;border-bottom:1px solid var(--line);min-height:185px}.news-grid a:last-child{border-bottom:0}.footer-grid{grid-template-columns:1fr 1fr;gap:38px}.footer-brand{grid-column:1/-1}.footer-bottom{gap:18px;flex-direction:column}.reveal{opacity:1;transform:none}}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}.reveal{opacity:1;transform:none;transition:none}.hero-slide{transition:none}}
.reveal{opacity:1;transform:none}
.system-tags a{white-space:nowrap}

/* A3 clear-blue system, balanced capability strip and ice-blue footer */
.button{border-color:var(--blue)}.button-primary{background:var(--blue);border-color:var(--blue)}.button-primary:hover{background:#004fb8;border-color:#004fb8}.button-ghost{color:var(--blue);border-color:var(--blue)}
.capability-strip{background:#1b6fd6}.strip-grid>div{padding:8px 30px}.strip-grid small{color:#dcedff}
.footer{background:#f1f8fe;color:var(--ink);border-top:1px solid #d4eaf7;padding:62px 0 20px}.footer-brand img{display:none}.footer-brand:before{content:"TMCE";display:block;color:#1b6fd6;font-size:34px;font-weight:850;letter-spacing:-.035em;line-height:1}.footer-brand p{color:var(--muted);margin-top:20px}.footer h4{color:var(--blue)}.footer a{color:#294f78}.footer a:hover{color:var(--blue)}.footer-bottom{border-top-color:#d4eaf7;color:#607995;margin-top:48px}.solution-card:hover{background:var(--blue-dark);box-shadow:0 18px 30px rgba(7,91,184,.15)}.project-label{background:rgba(7,91,184,.94)}
.hero{background:linear-gradient(115deg,#fff 0%,#fff 52%,#f4faff 100%)}.system-band{background:linear-gradient(120deg,#f8fcff 0%,#edf7fe 68%,#f5faff 100%)}
.desktop-nav{height:100%}.nav-item{position:relative;height:100%;display:flex;align-items:center}.nav-item>a:before{content:"";position:absolute;right:-12px;top:50%;width:5px;height:5px;border-right:1px solid currentColor;border-bottom:1px solid currentColor;transform:translateY(-70%) rotate(45deg)}
.nav-panel{position:absolute;top:calc(100% - 1px);right:0;width:320px;padding:26px;background:#fff;border:1px solid var(--line);box-shadow:0 22px 42px rgba(16,40,66,.16);opacity:0;visibility:hidden;transform:translateY(10px);transition:opacity .2s ease,transform .2s ease,visibility .2s;z-index:60}
.has-menu:hover>.nav-panel,.has-menu:focus-within>.nav-panel{opacity:1;visibility:visible;transform:none}.nav-panel.mega-panel{width:min(760px,calc(100vw - 48px));display:grid;grid-template-columns:repeat(3,1fr);gap:12px 34px}.nav-panel h5{margin:0 0 12px;color:var(--blue);font-size:9px;letter-spacing:.16em}.desktop-nav .nav-panel a{display:block;padding:7px 0;color:var(--muted);font-size:12px;font-weight:650;letter-spacing:0;line-height:1.35}.desktop-nav .nav-panel a:after{display:none}.desktop-nav .nav-panel a:hover{color:var(--blue)}.desktop-nav .nav-panel .nav-panel-all{grid-column:1/-1;margin-top:8px;padding-top:16px;border-top:1px solid var(--line);color:var(--blue);font-weight:800}.service-panel,.product-panel{display:grid;gap:1px}.service-panel{right:-40px}
@media(max-width:1050px){.nav-panel.mega-panel{right:-260px}}
@media(max-width:760px){.mobile-nav{max-height:calc(100vh - 68px);overflow:auto}.mobile-nav details{border-bottom:1px solid var(--line)}.mobile-nav summary{position:relative;padding:13px 4px;cursor:pointer;list-style:none;font-weight:800;font-size:12px;letter-spacing:.08em}.mobile-nav summary::-webkit-details-marker{display:none}.mobile-nav summary:after{content:"+";position:absolute;right:4px;color:var(--blue);font-size:16px;font-weight:500}.mobile-nav details[open] summary:after{content:"−"}.mobile-nav details a{display:block;padding:8px 4px 8px 18px;border-bottom:0;color:var(--muted);font-size:11px;letter-spacing:.02em}.mobile-nav details a:last-child{padding-bottom:15px;color:var(--blue)}}
@media(max-width:760px){.strip-grid>div{padding:12px 20px}}
