:root{--color-bg:#fff;--color-bg-alt:#f4f8fc;--color-surface:hsla(0,0%,100%,.9);--color-text:#1a1a1a;--color-muted:#666;--color-primary:#0a2540;--color-secondary:#4a90e2;--color-accent:#ff6b35;--shadow-soft:0 20px 40px rgba(10,37,64,.08);--shadow-hover:0 28px 48px rgba(10,37,64,.16);--radius-card:8px;--radius-button:4px;--container:min(1180px,calc(100vw - 48px));--transition-base:250ms ease-out;--transition-reveal:500ms cubic-bezier(0.4,0,0.2,1)}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:PingFang SC,Microsoft YaHei,Noto Sans SC,sans-serif;color:var(--color-text);background:radial-gradient(circle at top left,rgba(74,144,226,.12),transparent 28%),linear-gradient(180deg,#f8fbff,#fff 16%,#fff);line-height:1.65}a{color:inherit;text-decoration:none}img{display:block;max-width:100%}button,input,textarea{font:inherit}button:disabled{cursor:not-allowed;opacity:.76}.container{width:var(--container);margin:0 auto}.site-shell{min-height:100vh}.site-header{position:-webkit-sticky;position:sticky;top:0;z-index:30;background:rgba(10,37,64,.58);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);border-bottom:1px solid hsla(0,0%,100%,.08)}.site-header-solid{background:rgba(10,37,64,.94)}.header-inner{display:flex;align-items:center;justify-content:space-between;gap:24px;min-height:84px}.brand{display:inline-flex;align-items:center;gap:12px;color:#fff;flex-shrink:0}.brand-logo{width:44px;height:44px}.brand-text{display:grid;grid-gap:2px;gap:2px}.brand-text strong{font-size:1rem}.brand-text span{font-size:.78rem;color:hsla(0,0%,100%,.74)}.site-nav{display:flex;align-items:center;gap:32px;color:hsla(0,0%,100%,.88)}.site-nav a{position:relative;padding:8px 0;transition:color var(--transition-base)}.site-nav a:after{content:"";position:absolute;left:0;bottom:2px;width:100%;height:2px;background:var(--color-secondary);transform:scaleX(0);transform-origin:left;transition:transform var(--transition-base)}.site-nav a.is-active,.site-nav a:focus-visible,.site-nav a:hover{color:#fff}.site-nav a.is-active:after,.site-nav a:focus-visible:after,.site-nav a:hover:after{transform:scaleX(1)}.button{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:0 24px;border-radius:var(--radius-button);border:1px solid transparent;font-weight:600;cursor:pointer;transition:transform var(--transition-base),box-shadow var(--transition-base),background-color var(--transition-base),border-color var(--transition-base),color var(--transition-base)}.button:focus-visible,.button:hover{transform:translateY(-2px)}.button-primary{background:var(--color-accent);color:#fff;box-shadow:0 12px 24px rgba(255,107,53,.24)}.button-primary:focus-visible,.button-primary:hover{background:#ed5b28;box-shadow:0 16px 28px rgba(255,107,53,.32)}.button-secondary{background:hsla(0,0%,100%,.08);color:var(--color-primary);border-color:rgba(10,37,64,.18)}.button-secondary:focus-visible,.button-secondary:hover{border-color:var(--color-secondary);color:var(--color-secondary)}.button-light{color:#fff;border-color:hsla(0,0%,100%,.28);background:hsla(0,0%,100%,.08)}.button-light:focus-visible,.button-light:hover{color:#fff;border-color:hsla(0,0%,100%,.62)}.menu-toggle{display:none;background:transparent;border:0;width:44px;height:44px;padding:0}.menu-toggle span{display:block;width:24px;height:2px;background:#fff;margin:5px auto;transition:transform var(--transition-base),opacity var(--transition-base)}.hero,.page-hero{position:relative;overflow:hidden}.hero{min-height:100vh;display:flex;align-items:center;background:linear-gradient(120deg,rgba(10,37,64,.92),rgba(10,37,64,.72)),radial-gradient(circle at 80% 20%,rgba(74,144,226,.44),transparent 24%),linear-gradient(135deg,#122f4f,#224f7e 45%,#5e7d9f)}.case-cover-shell:before,.case-media-shell:before,.hero:before,.page-hero:before{content:"";position:absolute;inset:0;background-image:linear-gradient(hsla(0,0%,100%,.08) 1px,transparent 0),linear-gradient(90deg,hsla(0,0%,100%,.08) 1px,transparent 0);background-size:72px 72px;-webkit-mask-image:linear-gradient(180deg,rgba(0,0,0,.65),transparent 92%);mask-image:linear-gradient(180deg,rgba(0,0,0,.65),transparent 92%);pointer-events:none}.hero-overlay{position:absolute;inset:0;background:radial-gradient(circle at 70% 30%,rgba(74,144,226,.34),transparent 18%),radial-gradient(circle at 15% 75%,rgba(255,107,53,.18),transparent 20%)}.hero-media-wrap{position:absolute;right:0;bottom:0;width:min(52vw,760px);opacity:.9;z-index:0}.case-cover-image,.case-media-image,.hero-media,.page-hero-image{width:100%;height:auto}.hero-content,.page-hero .container{position:relative;z-index:1}.hero-content{padding:160px 0 110px;color:#fff}.hero-grid{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(320px,.9fr);grid-gap:32px;gap:32px;align-items:center}.hero-visual-block{justify-self:end}.hero h1,.page-hero h1{margin:18px 0 20px;font-size:clamp(2.5rem,6vw,4.2rem);line-height:1.08;letter-spacing:-.03em;max-width:11ch}.hero-copy,.page-hero p{max-width:720px;font-size:clamp(1rem,1.8vw,1.15rem);color:hsla(0,0%,100%,.82)}.hero-actions{display:flex;gap:16px;margin-top:32px}.hero-panel{margin-top:48px;max-width:680px;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:18px;gap:18px;padding:24px}.case-tag,.eyebrow,.panel-label,.section-index{display:inline-flex;align-items:center;gap:8px;font-size:.82rem;letter-spacing:.08em;text-transform:uppercase}.eyebrow,.section-index{color:var(--color-secondary);font-weight:700}.cta-panel .eyebrow,.hero .eyebrow,.page-hero .eyebrow{color:hsla(0,0%,100%,.82)}.section{padding:88px 0}.section-alt{background:linear-gradient(180deg,rgba(244,248,252,.76),rgba(244,248,252,.3))}.section-heading{max-width:760px;margin-bottom:40px}.case-detail h2,.contact-panel h2,.cta-panel h2,.detail-block h2,.info-card h2,.map-card h2,.section-heading h2,.submissions-card h2{margin:12px 0 14px;font-size:clamp(2rem,3vw,3rem);line-height:1.15;color:var(--color-primary)}.case-content p,.case-detail p,.contact-panel p,.cta-panel p,.detail-block p,.fit-card p,.info-card p,.section-heading p,.submissions-card p{color:var(--color-muted)}.cta-panel,.glass-card{position:relative;background:var(--color-surface);border:1px solid hsla(0,0%,100%,.3);border-radius:var(--radius-card);box-shadow:var(--shadow-soft);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.glass-card:focus-within,.glass-card:hover{transform:translateY(-4px);border-color:rgba(74,144,226,.48);box-shadow:var(--shadow-hover)}.case-card,.case-detail,.detail-block,.fit-card,.glass-card,.info-card,.map-card,.service-card,.stat-card,.submissions-card,.timeline-card{transition:transform var(--transition-base),box-shadow var(--transition-base),border-color var(--transition-base)}.card-grid,.contact-layout,.detail-columns,.fit-grid,.footer-grid,.form-grid,.stats-grid,.timeline-grid,.trust-strip{display:grid;grid-gap:24px;gap:24px}.trust-strip{grid-template-columns:repeat(6,minmax(0,1fr));margin-bottom:28px}.trust-logo{display:grid;place-items:center;min-height:86px;border-radius:var(--radius-card);background:rgba(10,37,64,.04);color:var(--color-primary);font-weight:700;letter-spacing:.06em}.stats-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.stat-card{padding:32px;overflow:hidden}.stat-reading{display:inline-flex;align-items:baseline}.stat-number,.stat-suffix{font-size:clamp(2.2rem,5vw,3.6rem);font-weight:700;color:var(--color-primary)}.stat-suffix{color:var(--color-accent)}.card-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.case-card,.contact-panel,.detail-block,.fit-card,.info-card,.map-card,.service-card,.submissions-card,.timeline-card{padding:30px}.case-card h3,.case-detail h3,.detail-block h3,.fit-card h3,.service-card h3,.timeline-card h3{margin:18px 0 12px;color:var(--color-primary);font-size:1.3rem}.feature-list,.service-card ul{margin:0;padding:0;list-style:none}.detail-columns>div,.feature-list>div,.service-card li{padding:12px 0;border-top:1px solid rgba(10,37,64,.08)}.detail-columns>div:first-child,.feature-list>div:first-child,.service-card li:first-child{border-top:0}.case-card a,.footer-grid a,.service-card a{color:var(--color-secondary);font-weight:600}.case-card a:hover,.footer-grid a:hover,.service-card a:hover{text-decoration:underline}.icon-badge{width:48px;height:48px;display:grid;place-items:center;border-radius:14px;background:rgba(74,144,226,.12);color:var(--color-secondary);font-weight:700}.case-card,.case-detail{overflow:hidden;padding:0}.case-cover-shell,.case-media-shell{position:relative;min-height:220px;background:linear-gradient(135deg,rgba(10,37,64,.5),rgba(10,37,64,.12)),linear-gradient(120deg,#365f88,#82a4c2 60%,#d4e3ef)}.case-cover-shell{min-height:300px}.case-content{padding:24px 28px 30px}.case-tag{color:var(--color-accent);font-weight:700}.section-action{margin-top:32px}.cta-panel{padding:42px;display:flex;align-items:center;justify-content:space-between;gap:24px;background:linear-gradient(135deg,rgba(10,37,64,.95),rgba(30,77,126,.92));color:#fff}.cta-panel h2,.cta-panel p{color:#fff}.site-footer{background:#081b2e;color:hsla(0,0%,100%,.76);padding:70px 0 26px}.footer-grid{grid-template-columns:1.4fr 1fr 1fr}.footer-grid h3{color:#fff}.footer-brand{margin-bottom:18px}.footer-bottom{margin-top:36px;padding-top:20px;border-top:1px solid hsla(0,0%,100%,.12);display:flex;justify-content:space-between;gap:12px;font-size:.92rem}.page-main{background:transparent}.page-hero{padding:132px 0 74px;background:linear-gradient(140deg,rgba(10,37,64,.96),rgba(17,52,86,.92));color:#fff}.page-hero-services{background:linear-gradient(140deg,rgba(10,37,64,.96),rgba(34,79,126,.9))}.page-hero-cases{background:linear-gradient(140deg,rgba(10,37,64,.96),rgba(41,73,112,.92))}.page-hero-contact{background:linear-gradient(140deg,rgba(10,37,64,.96),rgba(48,84,120,.9))}.split-layout{display:grid;grid-template-columns:320px minmax(0,1fr);align-items:start;grid-gap:24px;gap:24px}.sticky-side{position:-webkit-sticky;position:sticky;top:112px}.side-card{padding:28px}.case-detail-stack,.stacked-sections{display:grid;grid-gap:26px;gap:26px}.detail-columns,.two-column-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:18px 24px;gap:18px 24px}.timeline-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.timeline-card span{color:var(--color-accent);font-weight:700;letter-spacing:.08em}.fit-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.case-detail-body{padding:30px}.case-meta{display:flex;flex-wrap:wrap;gap:12px;color:var(--color-secondary);font-weight:600;font-size:.92rem}.case-detail blockquote{margin:20px 0 0;padding:18px 20px;border-left:4px solid var(--color-accent);background:rgba(255,107,53,.06);color:var(--color-primary);font-weight:600}.contact-layout{grid-template-columns:minmax(0,1.2fr) minmax(300px,.8fr);align-items:start}.contact-info{display:grid;grid-gap:24px;gap:24px}.form-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.form-grid label{display:grid;grid-gap:8px;gap:8px;color:var(--color-primary);font-weight:600}.form-grid label span{color:var(--color-accent)}.full-span{grid-column:1/-1}.contact-form input,.contact-form textarea{width:100%;border:1px solid rgba(10,37,64,.14);border-radius:6px;padding:14px 16px;background:hsla(0,0%,100%,.92);color:var(--color-text);transition:border-color var(--transition-base),box-shadow var(--transition-base)}.contact-form input:focus,.contact-form textarea:focus{outline:none;border-color:var(--color-secondary);box-shadow:0 0 0 4px rgba(74,144,226,.12)}.form-status{min-height:28px;margin:14px 0 0;color:var(--color-primary)}.form-status.is-error{color:#b42318}.form-status.is-success{color:#027a48}.map-placeholder{min-height:260px;border-radius:var(--radius-card);background:linear-gradient(135deg,rgba(74,144,226,.16),rgba(10,37,64,.12)),linear-gradient(0deg,hsla(0,0%,100%,.56),hsla(0,0%,100%,.56));display:grid;place-items:center;text-align:center;padding:24px}.submissions-header{display:flex;justify-content:space-between;align-items:flex-end;gap:24px;margin-bottom:24px}.table-wrap{overflow-x:auto}.submissions-table{width:100%;border-collapse:collapse;min-width:900px}.submissions-table td,.submissions-table th{padding:14px 12px;border-bottom:1px solid rgba(10,37,64,.08);text-align:left;vertical-align:top}.submissions-table th{color:var(--color-primary);font-size:.92rem}.empty-row{text-align:center;color:var(--color-muted)}.reveal{opacity:0;transform:translateY(30px);transition:opacity var(--transition-reveal),transform var(--transition-reveal)}.reveal.is-visible{opacity:1;transform:translateY(0)}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:after,:before{transition:none!important;animation:none!important}.reveal{opacity:1;transform:none}}@media (max-width:1023px){.site-nav{gap:18px}.card-grid,.contact-layout,.fit-grid,.footer-grid,.form-grid,.hero-grid,.split-layout,.stats-grid,.timeline-grid,.trust-strip{grid-template-columns:repeat(2,minmax(0,1fr))}.card-grid.case-grid,.contact-layout,.hero-grid,.split-layout{grid-template-columns:1fr}.hero-visual-block{justify-self:stretch;max-width:680px}.sticky-side{position:static}.detail-columns,.hero-panel,.two-column-list{grid-template-columns:1fr}.hero-media-wrap{width:min(72vw,620px);opacity:.3}}@media (max-width:767px){:root{--container:min(100vw - 32px,100%)}.header-inner{min-height:76px;gap:16px;flex-wrap:wrap}.menu-toggle{display:block;margin-left:auto}.header-cta,.site-nav{display:none}.site-nav{width:100%;flex-direction:column;align-items:flex-start;padding:18px;border-radius:10px;background:rgba(8,27,46,.95);gap:14px}.site-nav.is-open{display:flex}.menu-toggle[aria-expanded=true] span:first-child{transform:translateY(7px) rotate(45deg)}.menu-toggle[aria-expanded=true] span:nth-child(2){opacity:0}.menu-toggle[aria-expanded=true] span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}.hero-content{padding:132px 0 86px}.cta-panel,.footer-bottom,.hero-actions,.submissions-header{flex-direction:column;align-items:flex-start}.section{padding:72px 0}.card-grid,.fit-grid,.footer-grid,.form-grid,.stats-grid,.timeline-grid,.trust-strip{grid-template-columns:1fr}.case-card,.case-detail-body,.contact-panel,.cta-panel,.detail-block,.fit-card,.info-card,.map-card,.service-card,.stat-card,.submissions-card,.timeline-card{padding:24px}.page-hero{padding:110px 0 58px}.hero h1,.page-hero h1{max-width:100%;font-size:clamp(2rem,10vw,2.6rem)}.hero-media-wrap{width:90vw;opacity:.18}}