:root { --blue:#0639ad; --blue-dark:#03287e; --ink:#111827; --muted:#5f6878; --line:#e6e9ef; --soft:#f5f7fa; }
* { box-sizing:border-box; }
html { scroll-behavior:smooth; overflow-x:hidden; }
body { width:100%; margin:0; overflow-x:hidden; color:var(--ink); background:#fff; font-family:Inter,Segoe UI,Arial,sans-serif; }
main { width:100%; min-width:0; overflow-x:clip; }
a { color:inherit; text-decoration:none; }
img { display:block; max-width:100%; }
.site-header { height:88px; max-width:1280px; margin:auto; padding:0 40px; display:flex; align-items:center; justify-content:space-between; gap:30px; background:#fff; }
.brand img { width:215px; height:auto; }
.site-header nav { display:flex; align-items:center; gap:32px; font-size:14px; font-weight:600; color:#3b4350; }
.site-header nav a { transition:.2s; }
.site-header nav a:hover { color:var(--blue); }
.button { display:inline-flex; justify-content:center; align-items:center; gap:14px; min-height:54px; padding:0 25px; background:var(--blue); color:#fff; border-radius:9px; font-size:14px; font-weight:700; box-shadow:0 12px 30px rgba(6,57,173,.2); transition:.2s ease; }
.button:hover { transform:translateY(-2px); background:var(--blue-dark); }
.button-small { min-height:44px; padding:0 19px; box-shadow:none; }
.hero { max-width:1440px; min-height:690px; margin:auto; display:grid; grid-template-columns:52% 48%; background:linear-gradient(115deg,#f9fbff 0%,#fff 62%); border-top:1px solid #f2f3f6; overflow:hidden; }
.hero-copy { min-width:0; padding:88px 7vw 56px max(40px,calc((100vw - 1280px)/2)); display:flex; flex-direction:column; justify-content:center; }
.kicker { margin:0 0 20px; display:flex; align-items:center; gap:10px; color:var(--blue); font-size:12px; font-weight:800; letter-spacing:.17em; text-transform:uppercase; }
.kicker span { width:24px; height:2px; background:currentColor; }
.kicker.light { color:#adc7ff; }
.kicker.centered { justify-content:center; }
h1,h2,h3,p { margin-top:0; }
h1 { max-width:700px; margin-bottom:24px; font-size:clamp(44px,5vw,76px); line-height:1.02; letter-spacing:-.055em; font-weight:720; }
.hero-text { max-width:620px; margin-bottom:33px; color:var(--muted); font-size:18px; line-height:1.72; }
.hero-actions { display:flex; align-items:center; gap:28px; }
.text-link { font-size:14px; font-weight:700; border-bottom:1px solid #bec4ce; padding:9px 0; }
.text-link span { color:var(--blue); margin-left:8px; }
.hero-proof { display:grid; grid-template-columns:repeat(3,1fr); gap:20px; margin-top:60px; padding-top:25px; border-top:1px solid var(--line); }
.hero-proof strong,.hero-proof small { display:block; }
.hero-proof strong { font-size:15px; margin-bottom:5px; }
.hero-proof small { color:#7a8391; line-height:1.45; }
.hero-visual { position:relative; min-height:690px; background:#dce7f8; }
.hero-visual>img { width:100%; height:100%; object-fit:cover; }
.hero-visual:after { content:""; position:absolute; inset:0; background:linear-gradient(90deg,rgba(0,20,65,.1),transparent 42%); }
.floating-card { position:absolute; left:-35px; bottom:63px; z-index:2; display:flex; gap:14px; align-items:center; min-width:270px; padding:17px 20px; background:rgba(255,255,255,.95); border-radius:12px; box-shadow:0 18px 50px rgba(1,21,63,.22); }
.floating-card strong,.floating-card small { display:block; }
.floating-card strong { font-size:14px; }
.floating-card small { color:#79808c; margin-top:3px; }
.pulse { width:13px; height:13px; border:4px solid #cce6d7; background:#23a65c; border-radius:50%; box-sizing:content-box; }
.hero-mark { position:absolute; right:28px; top:28px; z-index:2; color:rgba(255,255,255,.8); font-size:80px; font-weight:900; }
.section { max-width:1280px; margin:auto; padding:110px 40px; }
.section-heading { display:grid; grid-template-columns:1.35fr .65fr; gap:80px; align-items:end; margin-bottom:48px; }
.section-heading h2,.about-copy h2,.values-title h2,.partners h2,.clients h2,.cta-section h2 { margin:0; font-size:clamp(34px,4vw,56px); line-height:1.08; letter-spacing:-.045em; }
.section-heading>p { margin:0 0 4px; color:var(--muted); font-size:16px; line-height:1.75; }
.services-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:22px; }
.service-card { overflow:hidden; border:1px solid var(--line); border-radius:17px; background:#fff; box-shadow:0 16px 45px rgba(15,35,72,.06); transition:.25s; }
.service-card:hover { transform:translateY(-7px); box-shadow:0 24px 60px rgba(15,35,72,.12); }
.service-image { height:270px; position:relative; overflow:hidden; }
.service-image img { width:100%; height:100%; object-fit:cover; transition:.5s; }
.service-card:hover .service-image img { transform:scale(1.035); }
.service-image span { position:absolute; right:16px; top:16px; display:grid; place-items:center; width:44px; height:44px; border-radius:50%; background:#fff; color:var(--blue); font-weight:800; font-size:13px; }
.service-body { padding:29px; }
.card-kicker { margin-bottom:8px; color:var(--blue); font-size:11px; letter-spacing:.12em; text-transform:uppercase; font-weight:800; }
.service-body h3 { margin-bottom:13px; font-size:25px; letter-spacing:-.03em; }
.service-body>p:not(.card-kicker) { color:var(--muted); font-size:14px; line-height:1.7; }
.service-body ul { list-style:none; padding:18px 0 0; margin:20px 0 0; border-top:1px solid var(--line); }
.service-body li { margin:9px 0; color:#424b58; font-size:13px; }
.service-body li:before { content:"✓"; color:var(--blue); font-weight:900; margin-right:9px; }
.support-strip { margin-top:25px; padding:26px 30px; display:grid; grid-template-columns:auto 1fr auto; align-items:center; gap:18px; background:#f3f6fc; border-radius:14px; }
.support-icon { width:44px; height:44px; display:grid; place-items:center; border-radius:10px; background:var(--blue); color:#fff; font-size:27px; }
.support-strip strong,.support-strip span { display:block; }
.support-strip strong { font-size:15px; margin-bottom:5px; }.support-strip span { color:var(--muted); font-size:13px; }
.support-strip a { color:var(--blue); font-size:13px; font-weight:800; }
.audience { max-width:none; padding-left:max(40px,calc((100vw - 1200px)/2)); padding-right:max(40px,calc((100vw - 1200px)/2)); background:#08172f; color:#fff; }
.section-heading.compact { max-width:1200px; margin-left:auto; margin-right:auto; }
.section-heading.compact>p { color:#a8b4c8; }
.audience-grid { max-width:1200px; margin:auto; display:grid; grid-template-columns:repeat(5,1fr); border-top:1px solid #344158; border-bottom:1px solid #344158; }
.audience-grid article { min-height:250px; padding:27px 24px; border-right:1px solid #344158; }
.audience-grid article:first-child { border-left:1px solid #344158; }
.audience-grid span { color:#6f83a5; font-size:12px; font-weight:700; }.audience-grid h3 { margin:48px 0 14px; font-size:20px; }.audience-grid p { color:#9eabc0; font-size:13px; line-height:1.65; }
.about { display:grid; grid-template-columns:1fr 1fr; gap:90px; align-items:center; }
.about-visual { position:relative; }
.about-visual img { width:100%; aspect-ratio:1/1; object-fit:cover; border-radius:18px; }
.experience { position:absolute; right:-25px; bottom:35px; min-width:250px; padding:25px; display:flex; align-items:center; gap:15px; background:var(--blue); color:#fff; border-radius:12px; box-shadow:0 18px 45px rgba(6,57,173,.28); }
.experience strong { font-size:44px; line-height:1; }.experience span { font-size:13px; line-height:1.45; }
.about-copy>p:not(.kicker) { margin:28px 0; color:var(--muted); line-height:1.8; font-size:16px; }
.manifesto { border-top:1px solid var(--line); }
.manifesto>div { display:grid; grid-template-columns:85px 1fr; gap:20px; padding:19px 0; border-bottom:1px solid var(--line); }
.manifesto b { color:var(--blue); font-size:14px; }.manifesto p { margin:0; color:#586171; font-size:13px; line-height:1.65; }
.values-section { display:grid; grid-template-columns:.8fr 1.2fr; gap:90px; padding-top:40px; }
.values-title { position:sticky; top:30px; align-self:start; }.values-list { border-top:1px solid var(--line); }
.values-list>div { display:grid; grid-template-columns:48px 150px 1fr; gap:15px; padding:22px 0; align-items:center; border-bottom:1px solid var(--line); }
.values-list span { color:#a3aab6; font-size:12px; }.values-list strong { font-size:15px; }.values-list p { margin:0; color:var(--muted); font-size:13px; }
.hwkview-section { width:100%; padding:0 40px 110px; background:#fff; }
.hwkview-panel { position:relative; max-width:1200px; min-height:430px; margin:auto; padding:70px; overflow:hidden; display:grid; grid-template-columns:.9fr 1.1fr; align-items:center; gap:70px; border-radius:24px; color:#fff; background:radial-gradient(circle at 15% 15%,#1769dc 0,transparent 34%),linear-gradient(125deg,#061329,#062f91 72%,#075bd3); box-shadow:0 28px 75px rgba(3,40,126,.22); }
.hwkview-product { position:relative; min-height:280px; display:flex; flex-direction:column; justify-content:center; align-items:center; isolation:isolate; }
.hwkview-product:before { content:""; position:absolute; width:215px; height:215px; border-radius:50%; background:linear-gradient(145deg,rgba(255,255,255,.2),rgba(255,255,255,.035)); border:1px solid rgba(255,255,255,.22); box-shadow:inset 0 0 50px rgba(255,255,255,.08),0 25px 60px rgba(0,0,0,.2); z-index:-1; }
.hwkview-orbit { position:absolute; border:1px solid rgba(167,205,255,.28); border-radius:50%; }
.orbit-one { width:310px; height:190px; transform:rotate(-18deg); }.orbit-two { width:350px; height:235px; transform:rotate(32deg); }
.hwkview-badge { color:#fff; font-size:39px; font-weight:350; letter-spacing:-.06em; }.hwkview-badge span { font-weight:900; }.hwkview-product small { margin-top:8px; color:#a9c9f7; font-size:11px; letter-spacing:.14em; text-transform:uppercase; }
.hwkview-copy { min-width:0; }.hwkview-copy h2 { margin:0; font-size:clamp(38px,4.5vw,62px); line-height:1.03; letter-spacing:-.05em; }.hwkview-copy>p:last-of-type { max-width:600px; margin:23px 0 30px; color:#c9daf4; font-size:16px; line-height:1.75; }
.hwkview-actions { display:flex; align-items:center; gap:22px; }.hwkview-actions>span { color:#9ebbe7; font-size:12px; }
.partners { max-width:none; text-align:center; background:#f6f8fb; }
.partners h2 { max-width:700px; margin:auto; }.partners-intro { max-width:690px; margin:20px auto 45px; color:var(--muted); line-height:1.7; }
.brand-wall { max-width:1200px; margin:auto; display:grid; grid-template-columns:repeat(7,1fr); background:#fff; border:1px solid var(--line); border-radius:14px; overflow:hidden; }
.brand-wall div { min-height:105px; display:grid; place-items:center; padding:18px 10px; border-right:1px solid var(--line); color:#3e4652; font-size:18px; font-weight:800; letter-spacing:-.03em; filter:grayscale(1); }
.brand-wall img { width:min(125px,82%); max-height:54px; object-fit:contain; }
.brand-wall div:last-child { border:0; }.brand-wall div:hover { color:var(--blue); filter:none; }
.clients { display:grid; grid-template-columns:.7fr 1.3fr; gap:80px; align-items:center; }
.clients-copy>p:last-child { color:var(--muted); line-height:1.75; margin-top:22px; }
.client-logos { display:grid; grid-template-columns:repeat(3,1fr); border:1px solid var(--line); border-radius:14px; overflow:hidden; }
.client-logos div { min-height:130px; display:flex; flex-direction:column; justify-content:center; align-items:center; gap:7px; background:#fcfcfd; border-right:1px solid var(--line); border-bottom:1px solid var(--line); color:#aab0ba; }
.client-logos div:nth-child(3n) { border-right:0; }.client-logos div:nth-last-child(-n+3) { border-bottom:0; }
.client-logos span { font-size:17px; font-weight:800; letter-spacing:.12em; }.client-logos small { font-size:10px; text-transform:uppercase; letter-spacing:.1em; }
.client-logos img { width:min(130px,75%); max-height:52px; object-fit:contain; }
.cta-section { max-width:1200px; margin:0 auto 95px; padding:65px; border-radius:22px; display:flex; justify-content:space-between; align-items:end; gap:55px; background:linear-gradient(120deg,#0639ad,#031f67); color:#fff; box-shadow:0 25px 70px rgba(3,40,126,.25); }
.cta-section>div { max-width:760px; }.cta-section p:last-child { max-width:650px; margin:22px 0 0; color:#c2d3f4; line-height:1.7; }
.button-white { flex-shrink:0; background:#fff; color:var(--blue); box-shadow:none; }.button-white:hover { background:#eef3ff; }
footer { background:#090d14; color:#fff; padding:72px max(40px,calc((100vw - 1200px)/2)) 25px; }
.footer-main { display:grid; grid-template-columns:1.5fr .65fr 1fr 1fr; gap:70px; padding-bottom:55px; }
.footer-brand img { width:190px; max-height:155px; object-fit:contain; object-position:left center; margin-top:-20px; margin-bottom:10px; }.footer-brand p { max-width:290px; color:#8791a1; font-size:13px; line-height:1.7; }
.footer-main>div:not(.footer-brand) { display:flex; flex-direction:column; align-items:flex-start; gap:12px; }.footer-main strong { margin-bottom:8px; font-size:12px; color:#fff; text-transform:uppercase; letter-spacing:.12em; }.footer-main a,.footer-main p { margin:0; color:#8e98a8; font-size:13px; line-height:1.6; word-break:break-word; }.footer-main a:hover { color:#fff; }
.footer-bottom { display:flex; justify-content:space-between; padding-top:24px; border-top:1px solid #242a34; color:#697384; font-size:11px; }
.whatsapp-float { position:fixed; right:22px; bottom:22px; z-index:20; width:56px; height:56px; display:grid; place-items:center; border-radius:50%; background:#20bf65; color:#fff; font-size:13px; font-weight:900; box-shadow:0 12px 30px rgba(0,0,0,.25); transition:.2s; }.whatsapp-float:hover { transform:scale(1.07); }

@media (max-width:1050px) {
  .site-header nav { display:none; }.hero { grid-template-columns:1fr 1fr; }.hero-copy { padding:70px 36px; }.hero-proof { grid-template-columns:1fr; gap:12px; }.hero-proof div { display:grid; grid-template-columns:130px minmax(0,1fr); }.services-grid { grid-template-columns:repeat(2,1fr); }.service-card:last-child { grid-column:1/-1; }.audience-grid { grid-template-columns:repeat(3,1fr); }.audience-grid article { border-bottom:1px solid #344158; }.about { gap:55px; }.values-section { gap:50px; }.hwkview-panel { grid-template-columns:1fr 1fr; padding:55px 45px; gap:40px; }.brand-wall { grid-template-columns:repeat(4,1fr); }.footer-main { grid-template-columns:1.2fr 1fr 1fr; }.footer-main>div:last-child { grid-column:2/4; }
}
@media (max-width:760px) {
  .site-header { height:72px; padding:0 20px; }.brand img { width:175px; }.button-small { display:none; }
  .hero { display:flex; flex-direction:column; min-height:auto; }.hero-copy { width:100%; padding:58px 22px 45px; }.hero-visual { width:100%; min-height:410px; order:-1; }.hero-visual:after { background:linear-gradient(0deg,rgba(1,20,60,.2),transparent); }.hero-mark { font-size:56px; }.floating-card { left:18px; right:18px; bottom:18px; min-width:0; }.hero-actions { flex-direction:column; align-items:stretch; gap:12px; }.text-link { text-align:center; }.hero-proof { margin-top:38px; }.hero-proof div { grid-template-columns:110px minmax(0,1fr); }
  h1 { max-width:100%; font-size:clamp(36px,11vw,43px); overflow-wrap:anywhere; }.section { width:100%; padding:78px 22px; }.section-heading { display:block; }.section-heading h2,.about-copy h2,.values-title h2,.partners h2,.clients h2,.cta-section h2 { font-size:36px; overflow-wrap:anywhere; }.section-heading>p { margin-top:22px; }.services-grid { grid-template-columns:minmax(0,1fr); }.service-card:last-child { grid-column:auto; }.service-image { height:245px; }.support-strip { grid-template-columns:auto minmax(0,1fr); }.support-strip a { grid-column:1/-1; padding-top:8px; }
  .audience { padding-left:22px; padding-right:22px; }.audience-grid { grid-template-columns:1fr; }.audience-grid article,.audience-grid article:first-child { min-height:auto; padding:25px 5px; border-left:0; border-right:0; }.audience-grid h3 { margin:18px 0 9px; }
  .about { grid-template-columns:minmax(0,1fr); gap:65px; }.experience { right:8px; bottom:-25px; min-width:0; max-width:calc(100% - 16px); }.values-section { grid-template-columns:minmax(0,1fr); }.values-title { position:static; }.values-list>div { grid-template-columns:36px minmax(0,1fr); }.values-list p { grid-column:2; }.hwkview-section { padding:0 14px 78px; }.hwkview-panel { min-height:auto; padding:48px 24px; grid-template-columns:minmax(0,1fr); gap:34px; border-radius:18px; }.hwkview-product { min-height:225px; }.hwkview-product:before { width:175px; height:175px; }.orbit-one { width:245px; height:150px; }.orbit-two { width:270px; height:180px; }.hwkview-badge { font-size:33px; }.hwkview-copy h2 { font-size:39px; }.hwkview-actions { flex-direction:column; align-items:stretch; gap:13px; }.hwkview-actions .button { width:100%; padding-left:18px; padding-right:18px; }.hwkview-actions>span { text-align:center; }.brand-wall { grid-template-columns:repeat(2,minmax(0,1fr)); }.brand-wall div:nth-child(even) { border-right:0; }
  .clients { grid-template-columns:1fr; gap:35px; }.client-logos { grid-template-columns:repeat(2,1fr); }.client-logos div:nth-child(3n) { border-right:1px solid var(--line); }.client-logos div:nth-child(even) { border-right:0; }.client-logos div:nth-last-child(-n+3) { border-bottom:1px solid var(--line); }.client-logos div:nth-last-child(-n+2) { border-bottom:0; }
  .cta-section { width:calc(100% - 28px); margin:0 14px 65px; padding:44px 25px; display:block; }.cta-section .button { width:100%; margin-top:30px; }.footer-main { grid-template-columns:minmax(0,1fr) minmax(0,1fr); gap:45px 28px; }.footer-brand { grid-column:1/-1; }.footer-main>div:last-child { grid-column:auto; }.footer-bottom { gap:18px; flex-direction:column; }.whatsapp-float { width:52px; height:52px; right:15px; bottom:15px; }
}
@media (max-width:390px) { h1 { font-size:37px; }.brand img { width:150px; }.hero-visual { min-height:350px; }.floating-card { padding:15px; }.hero-proof div { grid-template-columns:100px minmax(0,1fr); }.client-logos { grid-template-columns:1fr; }.client-logos div { border-right:0!important; border-bottom:1px solid var(--line)!important; }.client-logos div:last-child { border-bottom:0!important; }.footer-main { grid-template-columns:minmax(0,1fr); }.footer-main>div:last-child { grid-column:auto; } }
@media (prefers-reduced-motion:reduce) { html { scroll-behavior:auto; } * { transition:none!important; } }
