/*
Theme Name: USM
Description: USM landing page theme built 1:1 from the Figma design.
Version: 1.0
*/
*{box-sizing:border-box;margin:0;padding:0}
html,body{background:#f4f6fb}
body{font-family:'Manrope',sans-serif;color:#172426;font-size:16px;line-height:1.5;-webkit-font-smoothing:antialiased;min-width:1440px}
img{display:block;max-width:none}
a{color:inherit;text-decoration:none}
.page{width:1440px;margin:0 auto;background:#f4f6fb;display:flex;flex-direction:column;align-items:center;position:relative}
.abs{position:absolute}
.rel{position:relative}
.shrink0{flex-shrink:0}
.fill{position:absolute;inset:0;width:100%;height:100%}
.sp120{height:120px;width:1280px;flex-shrink:0}

/* header */
.header{width:1440px;display:flex;align-items:center;justify-content:space-between;padding:24px 80px;background:#f4f6fb;border-bottom:1px solid #edf3f8}
.header .l{display:flex;gap:80px;align-items:center}
.header .logo{height:32px;width:91.625px;position:relative}
.header .logo div{position:absolute;inset:-5.45% 0 0 -1.76%}
.header .logo img{width:100%;height:100%}
.header nav{display:flex;gap:52px;align-items:flex-start;white-space:nowrap}
.header nav .g{display:flex;gap:56px;align-items:center}

/* buttons */
.btn{display:inline-flex;flex-direction:column;background:#0171ff;padding:1px;border-radius:37px;flex-shrink:0}
.btn.sh{filter:drop-shadow(2px 2px 3px rgba(18,21,58,.25))}
.btn .in{position:relative;display:flex;gap:4px;align-items:center;justify-content:center;height:44px;padding:7px 24px 8px;border-radius:26px;background:#0171ff;color:#f4f6fb;font-weight:600;white-space:nowrap;box-shadow:inset 0 1px 0 rgba(255,255,255,.4)}
.btn.lg{height:60px;justify-content:center;border-radius:75px}
.btn.lg .in{height:auto;padding:14px 48px 16px;border-radius:46px}
.btn .in img{width:20px;height:20px}
.btn2{display:flex;gap:10px;align-items:center;justify-content:center;height:60px;padding:1px 40px 1px 48px;border-radius:75px;background:#f4f6fb;filter:drop-shadow(2px 2px 3px rgba(18,21,58,.15));font-weight:600;white-space:nowrap;flex-shrink:0}
.btn2 img{width:20px;height:20px}

/* hero */
.hero-s{height:1009px;width:1280px;overflow:hidden;position:relative;flex-shrink:0}
.hero{position:absolute;left:0;top:60px;width:1280px;height:949px;border-radius:24px;overflow:hidden}
.hero .im{position:absolute;inset:0;overflow:hidden;border-radius:24px}
.hero .im img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:70% 0}
.hero .g1{position:absolute;left:0;top:calc(50% + 23px);transform:translateY(-50%);width:1185.215px;height:1040.125px;background:linear-gradient(91.213deg,rgb(237,243,248) 10.936%,rgba(237,243,248,0) 99.127%)}
.hero .g2{position:absolute;left:0;top:calc(50% + 328.82px);transform:translateY(-50%);width:1280px;height:291.368px;background:url("data:image/svg+xml;utf8,<svg viewBox='0 0 1280 291.37' xmlns='http://www.w3.org/2000/svg' preserveAspectRatio='none'><rect x='0' y='0' height='100%' width='100%' fill='url(%23grad)' opacity='1'/><defs><radialGradient id='grad' gradientUnits='userSpaceOnUse' cx='0' cy='0' r='10' gradientTransform='matrix(-0.96122 -27.345 239.14 -5.5086 671.78 273.45)'><stop stop-color='rgba(227,228,254,1)' offset='0.47005'/><stop stop-color='rgba(237,243,248,0)' offset='1'/></radialGradient></defs></svg>")}
.hero-s .grad{position:absolute;left:165px;top:787px;width:950px;height:43px}
.hero-s .grad div{position:absolute;inset:-418.6% -18.95%}
.hero-s .grad img,.hero-s .full img{width:100%;height:100%}
.hero-s .logos{position:absolute;left:94px;top:849px;padding-bottom:64px;display:flex;gap:48px;align-items:flex-start}
.hero-s .logos>div{height:96px;width:180px;position:relative;flex-shrink:0}
.hero-s .logos>div>div,.hero-s .logos>div>img{position:absolute}
.hero-s .logos img{width:100%;height:100%;position:absolute;inset:0}
.hero-s .line{position:absolute;left:50%;transform:translateX(-50%);top:809px;width:800px;height:0}
.hero-s .line div{position:absolute;inset:-.5px 0}
.hero-s .line img{width:100%;height:100%}
.hero-c{position:absolute;left:calc(50% + 41.5px);transform:translateX(-50%);top:61px;width:1077px;padding:60px 0 120px;display:flex;gap:163px;align-items:center}
.hero-c .content{display:flex;flex-direction:column;gap:56px;width:1160px;flex-shrink:0}
.hero-c .heading{display:flex;flex-direction:column;gap:40px;width:532px}
.hero-c h1{font-weight:800;font-size:64px;line-height:1.04;width:600.094px;white-space:pre-wrap}
.hero-c h1 span{color:#0171ff;display:block}
.hero-c .sub{font-weight:500;font-size:20px;line-height:1.6;color:#546078;width:488px;margin-top:24px}
.hero-c .checks{display:flex;gap:16px;align-items:center}
.hero-c .checks div{display:flex;gap:4px;align-items:center;white-space:nowrap}
.hero-c .checks img{width:20px;height:20px}
.hero-c .btns{display:flex;gap:16px;align-items:flex-start}

/* section heads */
h2.h{font-weight:700;font-size:48px;line-height:1.2}
.med20{font-weight:500;font-size:20px;line-height:1.6;color:#546078}

/* three things */
.three{display:flex;flex-direction:column;gap:40px;align-items:flex-start;padding:120px 0;width:100%}
.three h2{text-align:center;width:100%}
.three .row{display:flex;gap:32px;justify-content:center;width:100%}
.three .card{background:#fff;border-radius:24px;width:379px;padding:34px 30px 36px;display:flex;flex-direction:column;gap:10px;align-items:flex-start}
.ico56{background:#edf3f8;border-radius:16px;width:56px;height:56px;display:flex;justify-content:center;padding:15px 0;flex-shrink:0}
.ico56 img{width:26px;height:26px}
.three h3{font-weight:700;font-size:24px;line-height:1.5;width:325px}
.three p{color:#546078}

/* dark panels */
.dark{background:#12153a;border-radius:32px;overflow:hidden;position:relative;width:1200px;flex-shrink:0}
.services{display:flex;flex-direction:column;gap:44px;align-items:center;padding:75.015px 64px 76px}
.services .glow{position:absolute;right:-209.5px;top:-159.02px;width:420px;height:420px;border-radius:999px;background:url("data:image/svg+xml;utf8,<svg viewBox='0 0 420 420' xmlns='http://www.w3.org/2000/svg' preserveAspectRatio='none'><rect x='0' y='0' height='100%' width='100%' fill='url(%23grad)' opacity='1'/><defs><radialGradient id='grad' gradientUnits='userSpaceOnUse' cx='0' cy='0' r='10' gradientTransform='matrix(29.698 0 0 29.698 210 210)'><stop stop-color='rgba(47,111,237,0.45)' offset='0'/><stop stop-color='rgba(47,111,237,0)' offset='0.7'/></radialGradient></defs></svg>")}
.dh{display:flex;flex-direction:column;gap:16px;width:660px;max-width:660px;position:relative}
.dh h2{color:#fff;text-align:center;white-space:nowrap}
.dh .s17{font-family:'Instrument Sans',sans-serif;font-size:17px;line-height:26.35px;color:rgba(255,255,255,.68);text-align:center;white-space:nowrap;font-variation-settings:"wdth" 100}
.sgrid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-template-rows:239.56px 239.56px;gap:32px;padding-top:3.99px;width:100%;position:relative}
.sc{background:#fff;width:336px;border-radius:22px;padding:30px 28px 32px;display:flex;flex-direction:column;gap:8px;align-items:flex-start;align-self:start}
.sc.b{padding:28px}
.ico52{background:#edf3f8;border-radius:16px;width:52px;height:52px;display:flex;justify-content:center;padding:14px 0;flex-shrink:0}
.ico52 img{width:24px;height:24px}
.sc h3{font-weight:700;font-size:24px;line-height:1.5;color:#12153a;width:100%}
.sc p{color:#546078;width:100%}

/* CTA */
.cta{background:#1b2170;border-radius:32px;overflow:hidden;position:relative;width:1200px;display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);grid-template-rows:477.78px;flex-shrink:0}
.cta .glow{position:absolute;bottom:-137.67px;left:740.5px;width:829px;height:829px;border-radius:999px;background:url("data:image/svg+xml;utf8,<svg viewBox='0 0 829 829' xmlns='http://www.w3.org/2000/svg' preserveAspectRatio='none'><rect x='0' y='0' height='100%' width='100%' fill='url(%23grad)' opacity='1'/><defs><radialGradient id='grad' gradientUnits='userSpaceOnUse' cx='0' cy='0' r='10' gradientTransform='matrix(58.619 0 0 58.619 414.5 414.5)'><stop stop-color='rgba(239,68,68,0.35)' offset='0'/><stop stop-color='rgba(239,68,68,0)' offset='0.7'/></radialGradient></defs></svg>")}
.cta .c1{display:flex;flex-direction:column;gap:15.1px;align-items:flex-start;padding:63.27px 64px 64px 71px;position:relative;align-self:start}
.cta h2{color:#fff;width:100%}
.cta .p{color:rgba(255,255,255,.7);width:470px;padding-bottom:.625px}
.cta .form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-template-rows:49px 49px;gap:12px;width:440px;max-width:440px}
.cta .fld{background:#f4f6fb;border:1px solid #e3e8f1;height:48px;border-radius:40px;padding:12.5px 22.5px;color:#546078;white-space:nowrap}
input.fld,.cta input{font:inherit;outline:0;width:100%}
.cta input::placeholder{color:#546078;opacity:1}
.cta .red{background:#ef4444;filter:drop-shadow(2px 2px 3px rgba(18,21,58,.25));display:flex;align-items:center;justify-content:center;padding:12px 22px;border-radius:999px;color:#f4f6fb;font-weight:600;align-self:start;white-space:nowrap;border:0;font-family:inherit;font-size:16px;line-height:1.5;cursor:pointer}
.cta .red img{width:20px;height:20px}
.cta .note{font-size:14px;color:rgba(255,255,255,.45);padding-top:.9px;width:100%}
.cta .c2{display:flex;flex-direction:column;justify-content:center;min-height:400px;position:relative;align-self:start}
.cta .slot{aspect-ratio:3/2;position:relative;width:100%}
.cta .slot div{position:absolute;left:-114px;top:29.87px;width:472px;height:502px}
.cta .slot img{width:100%;height:100%;object-fit:cover;position:absolute;inset:0}

/* value */
.value{background:#f4f6fb;width:1440px;padding:120px 0;display:flex;justify-content:center}
.value .in{display:flex;gap:64px;align-items:flex-start;width:1200px}
.value .lh{width:448px;display:flex;flex-direction:column;gap:8px}
.value .lh p{width:414.594px}
.value .rh{flex:1 0 0;display:flex;flex-direction:column;gap:32px;min-width:1px}
.value .r{display:flex;gap:32px;align-items:center;width:100%}
.vc{background:#fff;flex:1 0 0;min-width:1px;overflow:hidden;padding:24px;border-radius:24px;display:flex;flex-direction:column;gap:20px;align-items:flex-start}
.ico44{background:#edf3f8;border-radius:16px;width:44px;height:44px;display:flex;justify-content:center;padding:12px 0;flex-shrink:0}
.ico44.red{background:#fde8e8;border-radius:9916px}
.ico44 img{width:20px;height:20px}
.vc .t{display:flex;flex-direction:column;gap:12px;width:100%}
.vc .t h3{font-weight:700;font-size:24px;line-height:1.5;white-space:nowrap}
.vc .t p{color:#546078;min-width:100%}

/* results */
.results{height:940px;width:1200px;overflow:hidden;position:relative;border-radius:24px;background:linear-gradient(127.792deg,rgb(229,243,255) 1.6768%,rgb(235,232,247) 102.86%);flex-shrink:0}
.results .bg{position:absolute;left:-215px;top:-83px;width:2004px;height:1131px}
.results .bg img{width:100%;height:100%}
.results .c{position:absolute;left:0;top:.09px;width:1200px;padding:64px 0;display:flex;flex-direction:column;gap:56px;align-items:center}
.results .hd{display:flex;flex-direction:column;gap:24px;align-items:center;text-align:center;width:1106px}
.results .hd p{width:584px}
.results .cards{display:flex;gap:32px;align-items:center;width:1058px}
.bc{background:#fff;flex:1 0 0;min-width:1px;padding:24px;border-radius:24px;display:flex;flex-direction:column;gap:32px}
.bc .ph{height:240px;width:283px;position:relative;flex-shrink:0}
.bc .ph .a{position:absolute;top:0;width:283px;height:240px;border-radius:16px}
.bc .ph .a img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;border-radius:16px}
.bc .ph .o{position:absolute;top:0;width:283px;height:240px;border-radius:16px;background:rgba(15,32,96,.32);backdrop-filter:blur(2.55px)}
.bc .ph .lg{position:absolute;left:calc(50% + .09px);transform:translateX(-50%);overflow:hidden}
.bc .ph .lg img{position:absolute;inset:0;width:100%;height:100%}
.bc p.t{font-weight:500;font-size:20px;line-height:1.6;height:64px;width:100%;overflow:hidden}

/* industries */
.ind{display:flex;flex-direction:column;gap:40px;align-items:center;padding:120px 0;flex-shrink:0}
.ind h2{text-align:center;width:647px}
.igrid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-template-rows:repeat(3,minmax(0,1fr));gap:32px;height:1048px;width:1202.5px}
.ic{background:#fff;border-radius:24px;display:flex;flex-direction:column;gap:16px;align-items:center;justify-content:center}
.ic .ph{height:220px;width:320px;border-radius:16px;position:relative;overflow:hidden;background:#d9d9d9;flex-shrink:0}
.ic .ph img{position:absolute;max-width:none}
.ic .ph .o{position:absolute;inset:0;border-radius:16px;background:rgba(15,32,96,.2)}
.ic .tt{display:flex;align-items:center;justify-content:space-between;width:321px}
.ic .tt p{font-weight:700;font-size:24px;line-height:1.5;color:#546078;text-align:center;white-space:nowrap}
.ic .tt img{width:20px;height:20px}

/* packages */
.pack{display:flex;flex-direction:column;align-items:center;padding:71.015px 238px 72px}
.pack .glow{position:absolute;bottom:-306.57px;left:-133.5px;width:547px;height:547px;border-radius:999px;background:url("data:image/svg+xml;utf8,<svg viewBox='0 0 547 547' xmlns='http://www.w3.org/2000/svg' preserveAspectRatio='none'><rect x='0' y='0' height='100%' width='100%' fill='url(%23grad)' opacity='1'/><defs><radialGradient id='grad' gradientUnits='userSpaceOnUse' cx='0' cy='0' r='10' gradientTransform='matrix(38.679 0 0 38.679 273.5 273.5)'><stop stop-color='rgba(239,68,68,0.35)' offset='0'/><stop stop-color='rgba(239,68,68,0)' offset='0.7'/></radialGradient></defs></svg>")}
.pack .dh{width:100%;align-items:center}
.pack .sm{font-weight:600;color:rgba(255,255,255,.68);text-align:center;white-space:nowrap;padding-bottom:14px}

/* insights */
.ins{display:flex;flex-direction:column;gap:40px;align-items:center;padding:120px 0;flex-shrink:0}
.ins .hd{display:flex;flex-direction:column;gap:24px;align-items:center;text-align:center;width:100%}
.ins .hd p.med20{width:584px}
.ins .row{display:flex;gap:32px;align-items:center}
.ac{display:flex;flex-direction:column;gap:24px;width:378px}
.ac .ph{height:300px;width:378px;border-radius:24px;position:relative;overflow:hidden}
.ac .ph img{position:absolute;max-width:none}
.ac .ph .f{inset:0;width:100%;height:100%;object-fit:cover}
.ac .tx{display:flex;flex-direction:column;gap:16px;width:100%}
.ac .tx h3{font-weight:700;font-size:24px;line-height:1.5}
.au{display:flex;gap:12px;align-items:center;justify-content:center;color:#546078;white-space:nowrap}
.au .n{display:flex;gap:8px;align-items:center;font-weight:600}
.au .n img{width:32px;height:32px;border-radius:32px;object-fit:cover}
.au .d{width:6px;height:6px}

/* newsletter */
.news{display:flex;gap:48px;height:184px;align-items:center;justify-content:center;padding:60px 0;border-radius:24px;width:1200px;background:linear-gradient(170.901deg,rgb(230,242,255) 8.1485%,rgb(235,229,251) 85.621%);flex-shrink:0}
.news .l{display:flex;flex-direction:column;gap:8px;width:582px}
.news .l .a{font-weight:500;font-size:20px;line-height:1.6}
.news .l .b{color:#546078;width:687.457px}
.news .r{display:flex;gap:16px;align-items:flex-start}
.news input{height:46px;width:336px;border-radius:75px;background:#f4f6fb;border:0;padding:1px 20px;font:inherit;color:#546078;outline:0}
.news input::placeholder{color:#546078;opacity:1}
.news .btn .in{padding:7px 20px 8px 24px}
.news button.btn{border:0;font:inherit;cursor:pointer}

/* footer */
.footer{background:#12153a;width:1440px;border-radius:24px 24px 0 0;padding-top:64px;display:flex;flex-direction:column;gap:40px;align-items:center;color:#f4f6fb;flex-shrink:0}
.footer .cols{display:flex;justify-content:space-between;align-items:flex-start;width:1200px}
.footer .cols .col{display:flex;flex-direction:column;gap:16px;font-weight:600}
.footer .cols .col p{width:240px}
.footer .logo{width:120px;height:42px}
.footer .logo img{width:100%;height:100%}
.footer .soc{display:flex;gap:44px;align-items:center;justify-content:center}
.footer .soc img{width:30.056px;height:30.056px}
.footer .legal{display:flex;flex-direction:column;gap:24px;width:1200px;padding-bottom:80px}
.footer .legal .sep{height:0;position:relative;width:100%}
.footer .legal .sep div{position:absolute;inset:-1px 0 0 0}
.footer .legal .sep img{width:100%;height:100%}
.footer .legal .r{display:flex;align-items:center;justify-content:space-between;font-family:'Montserrat',sans-serif;font-weight:300;font-size:14px;white-space:nowrap}
.footer .legal .r div{display:flex;gap:24px;align-items:center}

/* ===== Exact-height alignment with Figma (desktop 1440) ===== */
.header{height:94px}
.three{min-height:686px}
.services{height:959px}
.pack{height:399px}
.ins{height:928px}
.ind{height:1444px}

/* ===== Fluid foundation (identical to design at 1440) ===== */
body{min-width:0;overflow-x:hidden}
.page{width:100%;max-width:1440px}
.header,.value,.footer{width:100%}
.hero-s{width:min(1280px,100%)}
.sp120{width:100%}
.dark,.cta,.results,.news{width:min(1200px,calc(100% - 48px))}
.ind{width:min(1203px,100%)}
.ins{width:min(1198px,100%)}
.footer .cols,.footer .legal{width:min(1200px,calc(100% - 48px))}
.value .in{width:min(1200px,calc(100% - 48px))}
.igrid{width:min(1202.5px,calc(100% - 48px))}

/* ===== ≤1279: stacked hero ===== */
@media (max-width:1279px){
	.hero-s{width:100%;height:auto;padding:32px 24px 0;position:relative;display:flex;flex-direction:column}
	.hero-c{order:1}
	.hero-s .logos{order:2}
	.hero{top:32px;left:24px;right:24px;bottom:0;width:auto;height:auto}
	.hero-s .grad,.hero-s .line,.hero-s .full{display:none}
	.hero-c{position:relative;left:auto;top:auto;transform:none;width:100%;padding:64px 48px 40px}
	.hero-c .content,.hero-c .heading{width:100%}
	.hero-c h1{width:auto;font-size:clamp(44px,6vw,64px)}
	.hero-c .sub{width:auto;max-width:488px}
	.hero-s .logos{position:relative;left:auto;top:auto;padding:0 24px 48px;flex-wrap:wrap;justify-content:center;gap:16px}
	.hero .g1{top:0;transform:none;height:100%;width:100%}
	.hero .g2{top:auto;bottom:0;transform:none}
}

/* ===== ≤1100: tablet ===== */
@media (max-width:1100px){
	.header{padding:24px 40px}
	.header .l{gap:40px}
	h2.h{font-size:clamp(32px,4.6vw,48px)}
	.three{height:auto;min-height:0;padding:80px 24px}
	.three .row{flex-wrap:wrap}
	.three .card{width:calc((100% - 32px)/2);min-width:280px;flex:1 1 280px}
	.three h3{width:auto}
	.services{height:auto;padding:64px 32px}
	.dh,.dh h2,.dh .s17{width:100%;max-width:660px;white-space:normal}
	.sgrid{grid-template-columns:repeat(2,minmax(0,1fr));grid-template-rows:auto}
	.sc{width:100%;align-self:stretch}
	.pack{height:auto;padding:64px 32px}
	.pack .sm{white-space:normal}
	.cta{grid-template-columns:1fr;grid-template-rows:auto}
	.cta .c1{padding:56px 32px 40px;align-self:stretch}
	.cta .p{width:100%}
	.cta .c2{min-height:0;height:420px;overflow:hidden}
	.cta .slot{aspect-ratio:auto;height:100%}
	.cta .slot div{left:50%;transform:translateX(-50%);top:0;width:400px;height:auto;aspect-ratio:472/502}
	.value{padding:80px 0}
	.value .in{flex-direction:column;gap:40px}
	.value .lh{width:100%}
	.value .lh p{width:auto;max-width:520px}
	.results{height:auto}
	.results .c{position:relative;width:100%;padding:56px 24px}
	.results .hd{width:100%}
	.results .hd p{width:auto;max-width:584px}
	.results .cards{width:100%}
	.bc .ph{width:100%}
	.bc .ph .a,.bc .ph .o{width:100%}
	.ind{height:auto;padding:80px 0}
	.ind h2{width:auto;padding:0 24px}
	.igrid{height:auto;grid-template-columns:repeat(2,minmax(0,1fr));grid-template-rows:auto}
	.ic{padding:24px}
	.ic .ph,.ic .tt{width:100%}
	.ins{height:auto;padding:80px 0}
	.ins .hd{padding:0 24px}
	.ins .hd p.med20{width:auto;max-width:584px}
	.ins .row{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));width:calc(100% - 48px);align-items:start}
	.ac,.ac .ph{width:100%}
	.news{height:auto;flex-direction:column;padding:40px 32px;gap:24px;align-items:stretch}
	.news .l,.news .l .b{width:100%}
	.news .r{width:100%}
	.news input{flex:1;width:auto;min-width:0}
	.footer .cols{flex-wrap:wrap;gap:32px}
	.footer .cols .col p{width:auto}
}

/* ===== ≤900: results stack ===== */
@media (max-width:900px){
	.results .cards{flex-direction:column;align-items:stretch}
	.bc{flex:none}
	.hero-c{padding:48px 32px 32px}
}

/* ===== ≤767: mobile ===== */
@media (max-width:767px){
	.header{padding:16px 20px;height:auto}
	.header nav{display:none}
	.hero-s{padding:16px 16px 0}
	.hero{top:16px;left:16px;right:16px}
	.hero .g1{background:linear-gradient(180deg,rgba(237,243,248,.94),rgba(237,243,248,.7))}
	.hero-c{padding:40px 24px 24px}
	.hero-c h1{font-size:clamp(36px,10.5vw,48px)}
	.hero-c .sub{font-size:18px}
	.hero-c .checks{flex-wrap:wrap}
	.hero-c .btns{flex-direction:column;align-items:stretch}
	.hero-c .btns .btn,.hero-c .btns .btn2{width:100%}
	.hero-c .btn.lg .in{width:100%}
	.hero-s .logos{gap:8px;padding:0 16px 32px}
	.hero-s .logos>div{width:140px;height:76px;transform:none}
	.hero-s .logos>div>div{transform:scale(.78);transform-origin:left top}
	.med20{font-size:18px}
	h2.h br,.dh .s17 br,.pack .sm br{display:none}
	.three{padding:64px 16px}
	.three .card{flex:1 1 100%;width:100%}
	.services{padding:48px 20px;width:calc(100% - 32px)}
	.dark,.cta,.results,.news{width:calc(100% - 32px);border-radius:24px}
	.sgrid{grid-template-columns:1fr}
	.cta .c1{padding:40px 20px 32px}
	.cta .form{grid-template-columns:1fr;grid-template-rows:auto;width:100%;max-width:none}
	.cta .red{width:100%}
	.cta .c2{height:340px}
	.cta .slot div{width:320px}
	.value{padding:64px 0}
	.value .in{width:calc(100% - 32px)}
	.value .r{flex-direction:column;align-items:stretch}
	.vc{flex:none;width:100%}
	.vc .t{height:auto!important}
	.results .c{padding:48px 16px;gap:40px}
	.ind{padding:64px 0}
	.igrid{grid-template-columns:1fr;width:calc(100% - 32px)}
	.ic .tt p{white-space:normal}
	.pack{padding:56px 20px}
	.ins{padding:64px 0}
	.ins .row{grid-template-columns:1fr;width:calc(100% - 32px)}
	.news{padding:32px 20px}
	.news .r{flex-direction:column}
	.news input{width:100%;flex:none}
	.news button.btn{align-self:stretch}
	.news .btn .in{width:100%}
	.footer .cols{flex-direction:column;gap:24px}
	.footer .legal{padding-bottom:48px}
	.footer .legal .r{flex-direction:column;gap:12px;align-items:flex-start}
}
@media (max-width:900px){.bc p.t{height:auto}}
@media (max-width:1100px){.ic .tt p{white-space:normal;text-align:left;padding-right:12px}}
@media (min-width:768px) and (max-width:1279px){
	.hero-c .heading{width:58%;min-width:420px}
	.hero-c .sub{width:auto}
	.hero-c .btns{flex-wrap:wrap}
}
@media (min-width:768px) and (max-width:1100px){
	.three .card{min-width:0;flex:1 1 220px}
}

/* ===== Round 3: links, services grid, dynamic cards, pressed buttons ===== */
a{color:inherit;text-decoration:none}
.header .logo{display:block}
.footer .logo{display:block}
.footer .cols .col a,.footer .cols .col span{display:block;width:240px;font-weight:600}
.footer .legal .r a{color:inherit}
.footer .soc a{display:block;width:30.056px;height:30.056px}
.footer .soc img{width:100%;height:100%}

/* Services: 3x2 grid, equal row heights, Figma paddings (row 1: 30/28/32, row 2: 28) */
.sgrid{grid-template-rows:239.56px 239.56px;align-items:stretch}
.sgrid .sc{align-self:stretch;width:336px;justify-self:start;color:inherit}
.sgrid .sc.r1{padding:30px 28px 32px}
.sgrid .sc.r2{padding:28px}
.sgrid .sc:hover h3{color:#0171ff}
.sgrid .sc h3{transition:color .15s ease}
@media (min-width:1280px){.sgrid .sc h3{white-space:nowrap}}
.services .btn.cap{align-self:center}
.services .btn.cap .in{gap:6px}
.services .btn.cap .in img{width:20px;height:20px}

/* Dynamic results cards (portfolio items) */
.bc .ph img.a{position:absolute;top:0;left:0;width:100%;height:100%;object-fit:cover;border-radius:16px}
.bc .ph img.lg{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:auto;height:auto;max-width:70%;max-height:40%}
.bc .ph .o{left:0}
.bc:hover .t{color:#0171ff}

/* Dynamic insight cards (blog posts) */
.ac .tx h3 a{color:inherit}
.ac .ph{display:block}
.ac .ph img.f{border-radius:24px}

/* Buttons: hover lift, pressed state */
.btn,.btn2,.cta .red{transition:transform .12s ease,filter .12s ease;cursor:pointer}
.btn.sh,.btn2,.cta .red{filter:drop-shadow(2px 2px 3px rgba(18,21,58,.25))}
.btn.sh:hover,.btn2:hover,.cta .red:hover{filter:drop-shadow(2px 2px 3px rgba(18,21,58,.25)) brightness(1.08)}
.btn:active,.btn2:active,.cta .red:active,.news button.btn:active{transform:translateY(2px) scale(.97);filter:drop-shadow(1px 1px 1px rgba(18,21,58,.2)) brightness(.94)}
.btn:active .in{box-shadow:inset 0 2px 4px rgba(0,0,0,.25)}
.btn2:active{box-shadow:inset 0 2px 4px rgba(18,21,58,.2)}
button{font:inherit}

/* ===== Generic pages (legal etc.) ===== */
.usm-page{width:100%;padding:80px 24px 120px;display:flex;justify-content:center}
.usm-prose{width:min(820px,100%)}
.usm-prose h1{font-weight:800;font-size:clamp(36px,5vw,56px);line-height:1.1;margin-bottom:12px}
.usm-prose-body{font-size:17px;line-height:1.7;color:#172426}
.usm-prose-body h2{font-weight:700;font-size:28px;line-height:1.25;margin:44px 0 12px}
.usm-prose-body h3{font-weight:700;font-size:20px;margin:28px 0 8px}
.usm-prose-body p,.usm-prose-body ul,.usm-prose-body ol{margin:0 0 16px}
.usm-prose-body ul,.usm-prose-body ol{padding-left:24px}
.usm-prose-body li{margin:6px 0}
.usm-prose-body a{color:#0171ff;text-decoration:underline}
.usm-prose-body .usm-updated{color:#546078;font-size:15px}

/* ===== Main navigation + mobile menu ===== */
.header nav.usm-nav{display:flex;gap:36px;align-items:center;white-space:nowrap}
.header nav.usm-nav a{color:#172426;font-weight:400;transition:color .15s ease}
.header nav.usm-nav a:hover{color:#0171ff}
.header .usm-nav-cta{display:none}
.usm-nav-toggle,.usm-burger{display:none}
.header .l{gap:56px}
@media (max-width:1100px){
	.header nav.usm-nav{gap:22px;font-size:15px}
	.header .l{gap:28px}
}
@media (max-width:900px){
	.header{position:relative}
	.usm-burger{display:flex;flex-direction:column;gap:5px;cursor:pointer;padding:10px;margin-left:auto;order:3}
	.usm-burger span{display:block;width:24px;height:2px;background:#172426;border-radius:2px;transition:transform .2s ease,opacity .2s ease}
	.header .l{flex:1;justify-content:space-between}
	.header .usm-head-cta{display:none}
	.header nav.usm-nav{display:none;position:absolute;left:0;right:0;top:100%;z-index:50;flex-direction:column;align-items:stretch;gap:0;background:#f4f6fb;border-bottom:1px solid #edf3f8;padding:8px 20px 20px;white-space:normal;box-shadow:0 12px 24px rgba(18,21,58,.08)}
	.header nav.usm-nav a{padding:14px 4px;border-bottom:1px solid #edf3f8;font-size:17px}
	.header .usm-nav-cta{display:block;margin-top:12px;text-align:center;background:#0171ff;color:#f4f6fb!important;border-radius:26px;border-bottom:0!important;font-weight:600}
	.usm-nav-toggle:checked ~ nav.usm-nav{display:flex}
	.usm-nav-toggle:checked ~ .usm-burger span:nth-child(1){transform:translateY(7px) rotate(45deg)}
	.usm-nav-toggle:checked ~ .usm-burger span:nth-child(2){opacity:0}
	.usm-nav-toggle:checked ~ .usm-burger span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}
}
a.ic{color:inherit;transition:transform .15s ease,box-shadow .15s ease}
a.ic:hover{transform:translateY(-3px);box-shadow:0 10px 24px rgba(18,21,58,.1)}
a.ic:hover .tt p{color:#0171ff}

/* ===== Dropdown navigation, header phone, mobile call bar, footer columns, breadcrumbs ===== */
.header .usm-head-r{display:flex;align-items:center;gap:24px;flex-shrink:0}
.header .usm-head-phone{display:none;font-weight:600;color:#172426;white-space:nowrap}
.header .usm-head-phone:hover{color:#0171ff}
@media (min-width:1280px){.header .usm-head-phone{display:inline}}

.usm-dd{position:relative;display:flex;align-items:center;gap:4px}
.usm-dd-chk{display:none}
.usm-dd-btn{display:none}
.usm-dd>a::after{content:"";display:inline-block;width:6px;height:6px;margin:0 0 3px 8px;border-right:1.5px solid currentColor;border-bottom:1.5px solid currentColor;transform:rotate(45deg)}
.usm-dd-panel{display:none;position:absolute;top:100%;left:-20px;z-index:60;padding-top:16px}
.usm-dd-panel::before{content:"";position:absolute;inset:16px 0 0 0;background:#fff;border:1px solid #edf3f8;border-radius:16px;box-shadow:0 18px 40px rgba(18,21,58,.12);z-index:-1}
.usm-dd:hover .usm-dd-panel,.usm-dd:focus-within .usm-dd-panel{display:grid}
.usm-dd-mega{grid-template-columns:repeat(3,220px);gap:8px 12px;padding:32px 28px 24px}
.usm-dd-list{grid-template-columns:1fr;min-width:260px;padding:32px 24px 20px;gap:2px}
.usm-dd-group{display:flex;flex-direction:column;gap:2px;padding-bottom:12px}
.usm-dd-group strong{font-size:13px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:#546078;margin-bottom:6px}
.usm-dd-panel a{padding:6px 8px;margin:0 -8px;border-radius:8px;font-size:15px;color:#172426;white-space:normal}
.usm-dd-panel a:hover{background:#edf3f8;color:#0171ff}
.header nav.usm-nav .usm-dd-panel a{border-bottom:0}

/* Breadcrumbs */
.usm-crumbs{width:min(1280px,100%);padding:20px 24px 0}
.usm-crumbs ol{list-style:none;display:flex;flex-wrap:wrap;gap:6px;font-size:14px;color:#546078}
.usm-crumbs li+li::before{content:"/";margin-right:6px;color:#8793ab}
.usm-crumbs a:hover{color:#0171ff;text-decoration:underline}
.usm-crumbs [aria-current]{color:#172426}

/* Mobile: dropdowns open by tapping the arrow; fixed Call / Talk to Us bar */
.usm-callbar{display:none}
@media (max-width:900px){
	.usm-dd{flex-wrap:wrap;justify-content:space-between;width:100%;border-bottom:1px solid #edf3f8}
	.usm-dd>a{flex:1;border-bottom:0!important}
	.usm-dd>a::after{display:none}
	.usm-dd-btn{display:block;width:44px;height:44px;cursor:pointer;position:relative}
	.usm-dd-btn::after{content:"";position:absolute;left:16px;top:14px;width:8px;height:8px;border-right:2px solid #172426;border-bottom:2px solid #172426;transform:rotate(45deg);transition:transform .15s ease}
	.usm-dd-chk:checked ~ .usm-dd-btn::after{transform:rotate(-135deg);top:19px}
	.usm-dd-panel,.usm-dd:hover .usm-dd-panel,.usm-dd:focus-within .usm-dd-panel{display:none;position:static;width:100%;padding:0 0 12px 12px}
	.usm-dd-panel::before{display:none}
	.usm-dd-chk:checked ~ .usm-dd-panel{display:flex;flex-direction:column;gap:2px}
	.usm-dd-mega,.usm-dd-list{min-width:0;grid-template-columns:none}
	.usm-dd-group{padding-bottom:8px}
	.header .usm-head-r{display:none}
}
@media (max-width:767px){
	.usm-callbar{display:flex;position:fixed;left:0;right:0;bottom:0;z-index:90;gap:10px;padding:10px 16px calc(10px + env(safe-area-inset-bottom));background:#fff;border-top:1px solid #edf3f8;box-shadow:0 -6px 20px rgba(18,21,58,.08)}
	.usm-callbar a{flex:1;text-align:center;padding:13px 10px;border-radius:26px;font-weight:600;transition:transform .12s ease}
	.usm-callbar a:active{transform:scale(.97)}
	.usm-callbar-call{border:1px solid #0171ff;color:#0171ff}
	.usm-callbar-talk{background:#0171ff;color:#f4f6fb}
	body{padding-bottom:70px}
}

/* Cards align on their top edge: a longer title grows downward */
.ins .row,.results .cards{align-items:flex-start}
.ac,.bc{align-self:flex-start}

/* Tables inside long-form pages (legal) */
.usm-prose-body table{width:100%;border-collapse:collapse;margin:0 0 24px;font-size:15px;line-height:1.5}
.usm-prose-body th,.usm-prose-body td{border:1px solid #e3e8f1;padding:12px 14px;text-align:left;vertical-align:top}
.usm-prose-body thead th{background:#edf3f8;font-weight:700}
@media (max-width:767px){.usm-prose-body table{display:block;overflow-x:auto}}

/* ===== Contact Form 7 ===== */
.wpcf7 form .wpcf7-form-control-wrap{display:block;width:100%}
.wpcf7 form.r .wpcf7-form-control-wrap,.news .wpcf7 form .wpcf7-form-control-wrap{width:auto}
.wpcf7 .hidden-fields-container,.wpcf7 .screen-reader-response,.wpcf7 .wpcf7-spinner{display:none}
.wpcf7 form .wpcf7-not-valid-tip{display:block;margin:6px 0 0 4px;font-size:13px;line-height:1.3;color:#d03a3a;font-weight:600}
.dark .wpcf7 form .wpcf7-not-valid-tip,.cta .wpcf7 form .wpcf7-not-valid-tip{color:#ffb4b4}
.wpcf7 form .wpcf7-not-valid{border-color:#d03a3a!important}
.wpcf7 form .wpcf7-response-output{grid-column:1/-1;flex-basis:100%;width:100%;margin:12px 0 0;padding:14px 18px;border:0;border-radius:14px;background:#fff;color:#172426;font-size:15px;font-weight:600;line-height:1.5;box-shadow:0 2px 10px rgba(18,21,58,.12)}
.wpcf7 form.invalid .wpcf7-response-output,.wpcf7 form.failed .wpcf7-response-output,.wpcf7 form.unaccepted .wpcf7-response-output,.wpcf7 form.spam .wpcf7-response-output{background:#fde8e8;color:#8a1f1f}
.wpcf7 form.init .wpcf7-response-output,.wpcf7 form.resetting .wpcf7-response-output{display:none}
.wpcf7 form[data-status="init"] .wpcf7-response-output{display:none}
.wpcf7 form.submitting .wpcf7-submit,.wpcf7 form.submitting button[type=submit]{opacity:.7;pointer-events:none}
/* After a successful send the fields disappear and the thank-you message takes their place */
.wpcf7 form.sent>*:not(.wpcf7-response-output):not(.hidden-fields-container){display:none!important}
.wpcf7 form.sent .wpcf7-response-output{margin:0;padding:20px 24px;font-size:16px}
.news .wpcf7 form.r{flex-wrap:wrap}
.cta .wpcf7 form.form .wpcf7-response-output{color:#172426}
.blog-stay .wpcf7 form{margin:31px 36px 0}
.wpcf7 input.fld,.wpcf7 .cta input{width:100%}
.vc .t h3{white-space:normal}
/* Let form rows grow for validation messages and the thank-you text */
.cta .wpcf7 form.form{grid-template-rows:none;grid-auto-rows:auto}
.news .wpcf7 form.r{align-items:flex-start}
.wpcf7 form.sent .wpcf7-response-output{height:auto}
.value .r{align-items:stretch}

/* Newsletter forms inside the CF7 wrapper: fields shrink instead of overflowing */
.blog-stay-r .wpcf7-form-control-wrap{flex:1;min-width:0;width:auto}
.blog-stay-r input{width:100%}
@media (max-width:900px){
	.news .wpcf7{width:100%}
	.news .wpcf7 form.r{width:100%}
	.news .wpcf7 form .wpcf7-form-control-wrap{flex:1;min-width:0;width:100%}
	.news .wpcf7 form.r input[type=email]{width:100%;min-width:0}
}
@media (max-width:767px){
	.news .wpcf7 form.r{flex-direction:column;align-items:stretch}
	.news .wpcf7 form.r .btn{align-self:stretch}
	.news .wpcf7 form.r .btn .in{width:100%}
}

/* ===== Audit fixes ===== */
/* Insight cards: same height, tops and meta rows aligned */
.ins .row{align-items:stretch}
.ac{align-self:stretch}
.ac .tx{flex:1}
.ac .au{margin-top:auto}
/* Badges and check rows wrap instead of running off the edge */
@media (max-width:767px){
	.hero-c .checks div,.indp-hero .checks div{white-space:normal}
	.ind h2{padding:0 20px;box-sizing:border-box;max-width:100%}
}

/* ===== Smart header (proposal pages): sticks to the top, hides on scroll down, returns on scroll up ===== */
body.usm-smart-nav .header{position:sticky;top:0;z-index:100;background:rgba(244,246,251,.86);backdrop-filter:saturate(1.4) blur(14px);-webkit-backdrop-filter:saturate(1.4) blur(14px);transition:transform .35s cubic-bezier(.2,.7,.2,1),box-shadow .25s ease,background .25s ease}
body.usm-smart-nav .header.is-stuck{box-shadow:0 8px 28px rgba(18,21,58,.08)}
body.usm-smart-nav .header.is-hidden{transform:translateY(-110%)}
@media (prefers-reduced-motion:reduce){body.usm-smart-nav .header{transition:none}}

.usm-hp{position:absolute!important;left:-9999px;width:1px;height:1px;overflow:hidden}
