@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:#0a1728;--navy2:#11263b;--teal:#40ddc1;--ink:#17283a;--muted:#607082;--light:#f3f7f9}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:'DM Sans',Arial,sans-serif;color:var(--ink);background:white}h1,h2,h3,.brand{font-family:Manrope,Arial,sans-serif}a{text-decoration:none;color:inherit}.wrap{width:min(1160px,calc(100% - 48px));margin:auto}.header{background:var(--navy);border-bottom:1px solid #ffffff18;position:sticky;top:0;z-index:10}.nav{height:86px;display:flex;align-items:center;justify-content:space-between}.brand{display:flex;gap:12px;align-items:center;font-size:18px;letter-spacing:1.1px;font-weight:800;color:white;line-height:1.2}.brand small{display:block;font:600 9px 'DM Sans',sans-serif;letter-spacing:2.7px;color:#a6bdcc;margin-top:4px}.brand-icon{height:44px;width:44px;border:1.5px solid var(--teal);border-radius:12px;display:grid;place-items:center;font-size:26px;color:white}.brand-icon span{color:var(--teal)}nav{display:flex;gap:36px;align-items:center;color:#cbd8e3;font-size:14px}nav a:hover,.text-link:hover{color:var(--teal)}.nav-cta{border:1px solid #507083;padding:13px 18px;border-radius:6px;color:white}.menu{display:none}.hero{background:radial-gradient(ellipse at 77% 48%,#1a3c4c 0%,#102338 38%,var(--navy) 76%);color:white;overflow:hidden}.hero-grid{min-height:610px;display:grid;grid-template-columns:1.1fr 0.9fr;align-items:center;gap:40px}.eyebrow,.kicker{font-size:11px;font-weight:800;letter-spacing:2.6px}.eyebrow{color:#9bdbcF}.dot{display:inline-block;width:7px;height:7px;border-radius:50%;background:var(--teal);margin-right:10px}.hero h1{font-size:clamp(48px,5vw,72px);line-height:1.1;letter-spacing:-3.6px;margin:28px 0 22px}.hero h1 em,h2 em{font-style:normal;color:var(--teal)}.lead{font-size:18px;line-height:1.75;color:#bbccda;max-width:520px}.actions{display:flex;gap:14px;flex-wrap:wrap;margin:32px 0 65px}.button{display:inline-flex;gap:25px;align-items:center;padding:16px 22px;border-radius:5px;font-size:13px;font-weight:700}.primary{background:var(--teal);color:#082638}.outline{border:1px solid #4b6678;color:white}.hero-foot{display:flex;gap:14px;flex-wrap:wrap;color:#91aab9;font-size:10px;letter-spacing:1.1px}.hero-art{position:relative;height:440px;display:grid;place-items:center}.orbit{position:absolute;border:1px solid #2c6470;border-radius:50%;opacity:.5}.orbit1{height:390px;width:390px}.orbit2{height:510px;width:510px}.terminal{position:relative;width:390px;max-width:100%;background:#0c1b2c;border:1px solid #426a78;border-radius:13px;box-shadow:0 35px 85px #0007;transform:rotate(-4deg);overflow:hidden}.terminal-top{height:44px;background:#172d40;border-bottom:1px solid #385365;display:flex;align-items:center;gap:7px;padding:0 16px}.terminal-top i{width:8px;height:8px;border-radius:50%;background:#537080}.terminal-top i:first-child{background:#f6a885}.terminal-top i:nth-child(2){background:#f5d17c}.terminal-top span{margin-left:auto;font-size:9px;letter-spacing:1.8px;color:#8da9b6}.terminal-content{padding:52px 35px 40px;display:flex;flex-direction:column;gap:18px}.code-tag{font:13px monospace;color:var(--teal)}.terminal-content strong{font-size:34px;line-height:1.2;letter-spacing:-1.5px}.pulse-line{height:4px;width:75%;background:linear-gradient(90deg,var(--teal),transparent);margin-top:22px}.float-card{position:absolute;bottom:22px;right:0;background:#f9ffff;color:#24445a;padding:17px 20px;border-radius:7px;font-size:10px;letter-spacing:1.5px;font-weight:800;box-shadow:0 15px 45px #0004}.float-card span{color:#00ad8d;margin-left:20px}.strip{background:#eaf3f4}.strip-inner{display:flex;align-items:center;justify-content:space-between;gap:15px;flex-wrap:wrap;padding:26px 0;color:#526c78;font-size:13px}.strip strong{color:#1c3545;font-size:15px}.section{padding:108px 0}.section-top{display:flex;align-items:end;justify-content:space-between;gap:40px;margin-bottom:42px}.kicker{color:#0c9d89}.section h2,.contact h2{font-size:clamp(34px,4vw,54px);line-height:1.18;letter-spacing:-2.1px;margin:17px 0}.section h2 em{color:#149d89}.section-top p{max-width:380px;line-height:1.8;color:var(--muted)}.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.service{border:1px solid #e1e9ed;padding:35px 30px;border-radius:8px;transition:transform .2s,box-shadow .2s}.service:hover{transform:translateY(-4px);box-shadow:0 15px 35px #1d33401a}.number{font-size:10px;letter-spacing:2px;color:#8ba0ad;font-weight:800}.service-icon{margin:34px 0 25px;background:#e5f8f4;color:#0c9d89;font-size:32px;width:66px;height:66px;display:grid;place-items:center;border-radius:15px}.service h3{font-size:20px}.service p,.steps p{line-height:1.75;color:var(--muted);font-size:14px}.service a{display:inline-block;margin-top:25px;color:#078f7c;font-weight:700;font-size:13px}.edit-note{color:#8a99a4;font-size:12px;margin-top:20px}.about{background:var(--light)}.about-grid{display:grid;grid-template-columns:1fr 1fr;gap:90px}.about p{line-height:1.9;color:#586b7b;margin:0 0 18px}.text-link{color:#078f7c;font-weight:800;display:inline-block;margin-top:14px}.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:50px;margin-top:55px}.steps>div{border-top:2px solid #dce8eb;padding-top:26px}.steps span{color:#119d89;font-weight:800}.steps h3{margin-top:26px}.contact{background:#102438;color:white;padding:95px 0}.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:90px}.contact p{line-height:1.8;color:#b6c9d5}.contact-panel{background:#1a3448;border:1px solid #355367;border-radius:9px;padding:35px}.contact-panel h3{margin-top:0}.placeholder{border:1px dashed #638394;border-radius:5px;padding:20px;margin-top:30px;font-size:11px;letter-spacing:1.2px;color:#bdd4dc}footer{background:#091625;color:#a1b5c1}.footer{padding:36px 0;display:flex;align-items:center;justify-content:space-between;gap:20px}.footer p,.footer>a:last-child{font-size:12px}@media(max-width:850px){.hero-grid,.about-grid,.contact-grid{grid-template-columns:1fr}.hero-grid{padding:75px 0 45px}.hero-art{height:340px}.terminal{width:330px}.orbit1{height:300px;width:300px}.orbit2{height:400px;width:400px}.section-top{display:block}.cards{grid-template-columns:1fr}.steps{gap:18px}.contact-grid{gap:20px}}@media(max-width:600px){.wrap{width:min(100% - 36px,1160px)}.nav{height:74px}.brand{font-size:14px}.brand-icon{height:39px;width:39px}.menu{display:block;background:none;border:0;color:white;font-size:24px;cursor:pointer}nav{display:none;position:absolute;top:74px;left:0;right:0;background:#0a1728;padding:24px;flex-direction:column;align-items:stretch;gap:24px}nav.open{display:flex}.hero h1{letter-spacing:-2px}.hero-art{height:280px}.terminal{width:280px}.terminal-content{padding:35px 25px}.terminal-content strong{font-size:26px}.float-card{right:0;bottom:0}.section{padding:70px 0}.steps{grid-template-columns:1fr}.footer{flex-direction:column;align-items:flex-start}.actions{margin-bottom:35px}.strip-inner{gap:12px}}
/* Purefocus brand refresh: original logo on a light header */
.header{background:#fff;border-bottom:1px solid #e0e9ef;box-shadow:0 2px 12px #1024380a}
.nav{height:104px}.brand{color:#16354c}.site-logo{width:208px;height:auto;display:block}.nav nav{color:#25435c}.nav nav a:hover{color:#007fbb}.nav-cta{background:#0675b6;border-color:#0675b6;color:white!important}.nav-cta:hover{background:#005e94}
.menu{color:#16354c}.hero{background:radial-gradient(ellipse at 77% 48%,#164f77 0%,#102b48 38%,#091b31 76%)}.primary{background:#13a9e4;color:white}.hero h1 em{color:#4cc8ff}.eyebrow{color:#88d8ff}.dot{background:#27b9ef}.kicker,.section h2 em,.steps span,.service a,.text-link{color:#087cbd}.service-icon{background:#e6f5ff;color:#087cbd}.footer .brand{color:white}.footer .site-logo{background:#fff;padding:7px;border-radius:5px;width:175px}.contact .kicker{color:#61c7ff}
@media(max-width:600px){.nav{height:84px}.site-logo{width:170px}nav{top:84px;background:#fff;color:#25435c}.nav-cta{color:white!important}}

/* v3: give the original Purefocus logo prominence without stretching it */
.nav{height:158px;gap:24px}
.header .site-logo{width:340px;max-width:100%;height:auto;object-fit:contain}
.header .brand{flex-shrink:0}
.footer .site-logo{width:225px}
@media(max-width:950px){.nav{height:135px}.header .site-logo{width:280px}.nav nav{gap:18px}}
@media(max-width:600px){.nav{height:115px}.header .site-logo{width:245px}nav{top:115px}}
@media(max-width:370px){.header .site-logo{width:205px}}
