:root{--blue:#0a5ce5;--deep:#07152f;--ink:#101828;--muted:#667085;--line:#e6edf7;--soft:#f4f7fb;--max:1440px}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;color:var(--ink);font-family:"PingFang SC","Microsoft YaHei",Arial,sans-serif;background:#fff}
a{color:inherit;text-decoration:none}
img,video{display:block;max-width:100%}
.site-header{height:86px;display:flex;align-items:center;gap:24px;padding:0 max(28px,calc((100vw - var(--max))/2));position:sticky;top:0;z-index:50;background:rgba(255,255,255,.94);border-top:3px solid var(--blue);box-shadow:0 8px 30px rgba(16,24,40,.06);backdrop-filter:blur(16px)}
.site-brand{display:flex;align-items:center;gap:12px;white-space:nowrap;margin-right:auto}
.site-brand .mark{width:46px;height:44px;display:grid;place-items:center;background:var(--blue);color:#fff;font-style:italic;font-weight:800;font-size:21px;clip-path:polygon(10% 0,100% 0,88% 100%,0 100%)}
.site-brand b{font-size:20px;line-height:1.05}
.site-brand small{display:block;font-size:9px;letter-spacing:2px;margin-top:6px}
.site-nav{display:flex;align-items:center;gap:25px;font-size:15px;white-space:nowrap}
.site-nav a{position:relative;padding:32px 0}
.site-nav a::after{content:"";position:absolute;left:50%;right:50%;bottom:20px;height:2px;background:var(--blue);transition:.25s}
.site-nav a:hover::after,.site-nav a.active::after{left:0;right:0}
.nav-toggle{display:none;border:0;background:transparent;font-size:26px}
.page-hero{min-height:calc(100vh - 86px);position:relative;display:grid;align-items:end;overflow:hidden;background:#061428;color:#fff}
.page-hero>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.page-hero::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(4,12,27,.84),rgba(4,12,27,.25) 65%,rgba(4,12,27,.5))}
.hero-copy{position:relative;z-index:2;width:min(var(--max),calc(100% - 64px));margin:0 auto;padding:0 0 10vh}
.eyebrow{font-size:13px;font-weight:700;letter-spacing:3px;color:#72a8ff}
.hero-copy h1{font-size:clamp(44px,6.4vw,94px);line-height:1.02;max-width:1050px;margin:18px 0 24px;letter-spacing:-3px}
.hero-copy p{max-width:780px;font-size:clamp(17px,1.5vw,22px);line-height:1.8;color:rgba(255,255,255,.82)}
.hero-metrics{display:flex;gap:48px;margin-top:38px}
.hero-metrics b{display:block;font-size:34px}
.hero-metrics span{color:#b9c6dc}
.section{padding:110px max(28px,calc((100vw - var(--max))/2))}
.section.soft{background:var(--soft)}
.section.dark{background:var(--deep);color:#fff}
.section-head{display:grid;grid-template-columns:1fr 1fr;gap:40px;align-items:end;margin-bottom:58px}
.section-head h2{font-size:clamp(34px,4vw,64px);line-height:1.08;margin:10px 0 0;letter-spacing:-2px}
.section-head>p{font-size:17px;line-height:1.9;color:var(--muted);margin:0}
.dark .section-head>p{color:#aebbd0}
.split{display:grid;grid-template-columns:1fr 1fr;gap:32px;align-items:stretch}
.visual-card{overflow:hidden;border-radius:28px;min-height:420px;background:#eaf0f8}
.visual-card img{width:100%;height:100%;object-fit:cover}
.copy-card{padding:54px;border-radius:28px;background:#fff;border:1px solid var(--line)}
.copy-card h3{font-size:32px;margin:0 0 20px}
.copy-card p{font-size:17px;line-height:1.9;color:var(--muted)}
.number-list{display:grid;gap:0;border-top:1px solid var(--line)}
.number-list article{display:grid;grid-template-columns:80px 1fr;gap:24px;padding:30px 0;border-bottom:1px solid var(--line)}
.number-list b{font-size:30px;color:var(--blue)}
.number-list h3{font-size:22px;margin:0 0 8px}
.number-list p{margin:0;color:var(--muted);line-height:1.7}
.image-band{position:relative;overflow:hidden;border-radius:30px;background:#08162e}
.image-band img{width:100%;max-height:760px;object-fit:cover}
.proof-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:18px}
.proof-card{background:#fff;border:1px solid var(--line);border-radius:20px;padding:14px;box-shadow:0 16px 44px rgba(14,43,87,.08)}
.proof-card img{width:100%;aspect-ratio:4/3;object-fit:contain}
.proof-card p{font-size:14px;font-weight:700;line-height:1.5}
.brand-wall{padding:22px;border-radius:26px;background:var(--blue)}
.brand-wall img{width:100%}
.capability-grid,.rights-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.capability-grid article,.rights-grid article{padding:34px;border-radius:24px;background:#fff;border:1px solid var(--line);min-height:220px}
.capability-grid i,.rights-grid i{display:grid;place-items:center;width:44px;height:44px;border-radius:50%;background:var(--blue);color:#fff;font-style:normal;font-weight:800}
.capability-grid h3,.rights-grid h3{font-size:24px}
.capability-grid p,.rights-grid p{color:var(--muted);line-height:1.75}
.audience-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.audience-grid figure{margin:0;position:relative;overflow:hidden;border-radius:26px;background:#0c5bdb}
.audience-grid img{width:100%;aspect-ratio:4/5;object-fit:cover}
.audience-grid figcaption{position:absolute;inset:auto 0 0;padding:50px 26px 26px;background:linear-gradient(transparent,rgba(0,0,0,.8));font-size:22px;font-weight:800;color:#fff}
.case-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:22px}
.case-card{border-radius:24px;overflow:hidden;background:#fff;border:1px solid var(--line);box-shadow:0 15px 42px rgba(15,31,61,.08)}
.case-card .media{aspect-ratio:9/14;background:#0b1424;overflow:hidden}
.case-card img,.case-card video{width:100%;height:100%;object-fit:cover}
.case-card div:last-child{padding:20px}
.case-card h3{margin:0 0 8px;font-size:20px}
.case-card p{margin:0;color:var(--muted)}
.cta{margin:0 max(28px,calc((100vw - var(--max))/2)) 100px;padding:70px;border-radius:34px;color:#fff;background:radial-gradient(circle at 85% 15%,#5ca3ff 0,transparent 28%),linear-gradient(135deg,#083996,#0878f9);display:flex;justify-content:space-between;align-items:end;gap:32px}
.cta h2{font-size:clamp(34px,4vw,62px);margin:10px 0 0}
.cta a{padding:17px 28px;border-radius:999px;background:#fff;color:var(--blue);font-weight:800;white-space:nowrap}
.site-footer{padding:66px max(28px,calc((100vw - var(--max))/2));background:#071120;color:#fff;display:grid;grid-template-columns:1fr auto;gap:40px}
.site-footer h3{font-size:28px;margin:0 0 12px}
.site-footer p{color:#9eacc1;line-height:1.8}
.site-footer nav{display:flex;gap:20px;align-items:start;flex-wrap:wrap}
.reveal{opacity:0;transform:translateY(26px);transition:.7s ease}
.reveal.visible{opacity:1;transform:none}
@media(max-width:1100px){.site-header{height:74px}
.site-nav{display:none;position:absolute;top:74px;left:0;right:0;padding:16px 24px 24px;background:#fff;flex-direction:column;align-items:stretch;gap:0;box-shadow:0 20px 35px rgba(0,0,0,.08)}
.site-nav.open{display:flex}
.site-nav a{padding:14px 0}
.nav-toggle{display:block}
.page-hero{min-height:760px}
.section{padding-top:82px;padding-bottom:82px}
.section-head{grid-template-columns:1fr}
.proof-grid{grid-template-columns:repeat(3,1fr)}
.case-grid{grid-template-columns:repeat(3,1fr)}
}
@media(max-width:720px){.site-header{padding:0 18px}
.site-brand b{font-size:17px}
.hero-copy{width:calc(100% - 36px);padding-bottom:54px}
.hero-copy h1{font-size:44px;letter-spacing:-1.5px}
.hero-metrics{gap:20px;flex-wrap:wrap}
.section{padding:68px 18px}
.section-head{margin-bottom:34px}
.split,.audience-grid{grid-template-columns:1fr}
.copy-card{padding:30px}
.proof-grid{grid-template-columns:repeat(2,1fr);gap:10px}
.capability-grid,.rights-grid{grid-template-columns:1fr}
.case-grid{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;padding-bottom:14px}
.case-card{min-width:78vw;scroll-snap-align:start}
.cta{margin:0 18px 68px;padding:38px 26px;align-items:start;flex-direction:column}
.site-footer{grid-template-columns:1fr}
.page-hero>img{object-position:center}
.image-band{border-radius:18px}
}

/* Cases use the phone cut from the supplied long-reference artwork. */
.case-section{overflow:hidden}
.case-slider{display:flex;gap:34px;overflow-x:auto;overflow-y:hidden;padding:8px max(28px,calc((100vw - var(--max))/2)) 34px;margin-left:min(-28px,calc((var(--max) - 100vw)/2));margin-right:min(-28px,calc((var(--max) - 100vw)/2));scroll-snap-type:x proximity;overscroll-behavior-inline:contain;touch-action:pan-x pan-y;cursor:grab;scrollbar-width:none}
.case-slider::-webkit-scrollbar{display:none}.case-slider:active{cursor:grabbing}
.case-slider .case-card{flex:0 0 280px;min-width:280px;border:0;border-radius:0;overflow:visible;background:transparent;box-shadow:none;scroll-snap-align:start;text-align:center}
.case-phone{position:relative;width:280px;aspect-ratio:330/430;margin:0 auto;background:url('assets/pages/cases/phone-frame.png?v=20260817-01') center/100% 100% no-repeat;filter:drop-shadow(0 22px 24px rgba(13,32,61,.17))}
.case-phone img,.case-phone video{position:absolute;z-index:1;left:14.25%;top:1.2%;width:78.5%;height:92.2%;max-width:none;object-fit:cover;border-radius:26px}
.case-slider .case-card h3{margin:18px 0 5px;font-size:18px}.case-slider .case-card p{margin:0;color:var(--muted);font-size:13px}
@media(max-width:720px){.case-section{padding-left:0;padding-right:0}.case-section .section-head{padding:0 18px}.case-slider{gap:20px;margin:0;padding:6px 18px 28px}.case-slider .case-card{flex-basis:72vw;min-width:72vw}.case-phone{width:72vw}.case-phone img,.case-phone video{border-radius:7vw}}

/* Brand partners: one desktop viewport, enlarged wall, horizontal overflow. */
.section.brand-partner-section{min-height:calc(100vh - 86px);min-height:calc(100svh - 86px);display:flex;flex-direction:column;justify-content:center;overflow:hidden;padding-top:clamp(44px,6vh,72px);padding-bottom:clamp(44px,6vh,72px);scroll-margin-top:86px}
.brand-partner-section .section-head{width:100%;margin-bottom:clamp(34px,5vh,56px)}
.brand-partner-section .brand-wall{display:flex;flex:0 0 auto;width:100%;padding:18px 0 24px;overflow-x:auto;overflow-y:hidden;border-radius:28px;background:var(--blue);scroll-snap-type:x proximity;overscroll-behavior-inline:contain;touch-action:pan-x pan-y;cursor:grab;scrollbar-width:none}
.brand-partner-section .brand-wall:active{cursor:grabbing}.brand-partner-section .brand-wall::-webkit-scrollbar{display:none}
.brand-partner-section .brand-wall img{display:block;flex:0 0 auto;width:auto;max-width:none;height:clamp(340px,45vh,470px);height:clamp(340px,45svh,470px);object-fit:contain;scroll-snap-align:start;user-select:none;-webkit-user-select:none;-webkit-user-drag:none}
@media(max-width:1100px){.section.brand-partner-section{min-height:calc(100vh - 74px);min-height:calc(100svh - 74px);scroll-margin-top:74px}.brand-partner-section .brand-wall img{height:clamp(280px,40vh,390px);height:clamp(280px,40svh,390px)}}
@media(max-width:720px){.section.brand-partner-section{min-height:auto;padding:58px 18px}.brand-partner-section .section-head{margin-bottom:30px}.brand-partner-section .brand-wall{margin-right:-18px;width:calc(100% + 18px);padding:12px 0 16px;border-radius:20px 0 0 20px}.brand-partner-section .brand-wall img{height:clamp(220px,32vh,300px);height:clamp(220px,32svh,300px)}}
