
:root{
  --color-primary:#0B3B8C; --color-primary-dark:#072B66; --color-primary-light:#3C79FF;
  --color-text:#0E1726; --color-text-muted:#334155; --color-bg:#FFFFFF; --color-bg-alt:#F6F8FC;
  --color-border:#E5E7EB; --color-success:#10B981; --color-warning:#F59E0B; --color-error:#EF4444;
  --radius-md:8px; --radius-lg:12px; --radius-xl:16px;
  --shadow-subtle:0 6px 24px rgba(2,6,23,.08);
  --space-1:4px; --space-2:8px; --space-3:16px; --space-4:24px; --space-5:48px;
  --section-gap:96px; --container-pad:24px; --max-width:1200px;
  --h1:44px; --h2:32px; --h3:24px; --body:16px; --small:14px;
}
@import url('https://fonts.googleapis.com/css2?family=Manrope:wght@400;500&family=Outfit:wght@600;700&display=swap');
*,*::before,*::after{box-sizing:border-box}
body{font-family:Manrope,system-ui,Arial,sans-serif;color:var(--color-text);background:var(--color-bg);line-height:1.6;margin:0;font-size:var(--body)}
h1,h2,h3{font-family:Outfit,Manrope,system-ui,Arial,sans-serif;line-height:1.2}
h1{font-size:var(--h1)} h2{font-size:var(--h2)} h3{font-size:var(--h3)}
img{max-width:100%;display:block;height:auto}
a{color:var(--color-primary);text-decoration:none}
a:hover{color:var(--color-primary-light)}
.container{max-width:var(--max-width);margin-inline:auto;padding-inline:var(--container-pad)}
.section{padding-block:calc(var(--section-gap)*.6) var(--section-gap)} .section--alt{background:var(--color-bg-alt)}
.btn{display:inline-block;padding:14px 20px;border-radius:var(--radius-md);border:1px solid transparent;background:var(--color-primary);color:#fff;font-weight:600;width:100%;text-align:center;box-shadow:var(--shadow-subtle);transition:transform .2s ease, background .2s ease}
.btn:hover{ background:var(--color-primary-dark); transform:translateY(-1px) }
.btn--ghost{background:transparent;border-color:var(--color-border);color:var(--color-text)}
.btn--small{ padding:10px 14px; }
.site-header{position:sticky;top:0;z-index:1000;backdrop-filter:saturate(180%) blur(8px);background:transparent;transition:background .3s ease,box-shadow .3s ease}
.site-header--scrolled{background:rgba(255,255,255,.9);box-shadow:0 2px 12px rgba(2,6,23,.08)}
.nav{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px var(--container-pad)}
.nav__brand{display:flex;align-items:center;gap:12px;font-weight:700;color:var(--color-text)}
.nav__logo{width:28px;height:28px}
.nav__menu{display:flex;align-items:center;gap:8px;list-style:none;padding:0;margin:0}
.nav__link{display:block;padding:10px 14px;border-radius:var(--radius-md);color:var(--color-text)}
.nav__link:hover{background:var(--color-bg-alt)}
.nav__item--has-dropdown{position:relative}
.dropdown{position:absolute;top:calc(100% + 10px);right:0;min-width:240px;background:#fff;border:1px solid var(--color-border);border-radius:var(--radius-md);box-shadow:var(--shadow-subtle);padding:8px;display:none}
.nav__item--has-dropdown.open .dropdown,.nav__item--has-dropdown:focus-within .dropdown{display:block}
.hero{min-height:82vh;display:grid;place-items:center;padding-block:80px;position:relative;overflow:hidden;background:radial-gradient(600px 250px at 20% 20%, rgba(60,121,255,.12), transparent 60%), radial-gradient(600px 250px at 80% 30%, rgba(11,59,140,.12), transparent 60%)}
.hero__bg{position:absolute;inset:-10%;background-size:cover;background-position:center;transform:translateY(0);will-change:transform;filter:saturate(110%)}
.hero__overlay{position:absolute;inset:0;background:linear-gradient(to bottom, rgba(255,255,255,.00), rgba(255,255,255,.55) 55%, #fff 100%)}
.hero__inner{max-width:800px;text-align:center;display:grid;gap:16px;position:relative;z-index:1;padding-block:120px}
.hero__buttons{ display:flex; gap:12px; justify-content:center; flex-wrap:wrap }
.hero__buttons .btn{ min-width:220px }
.section--fullbleed .container{ max-width:100%; padding-left:var(--container-pad); padding-right:var(--container-pad) }
/* Home components */
.interlude{ position:relative; }
.interlude__img{ width:100%; max-height:420px; object-fit:cover; border-radius:0 }
.interlude__cta{ position:absolute; right:24px; bottom:24px; backdrop-filter:saturate(180%) blur(6px); background:rgba(255,255,255,.9); border:1px solid var(--color-border); padding:10px 14px; border-radius:var(--radius-md) }
.stats{ text-align:center }
.stats__grid{ display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:24px; margin-top:24px }
.stats__item{ background:#fff; border:1px solid var(--color-border); border-radius:var(--radius-md); padding:24px; box-shadow:var(--shadow-subtle) }
.stats__value{ font-size:32px; font-weight:700; color:var(--color-primary) }
.stats__label{ color:var(--color-text-muted) }
.cards{ display:grid; gap:24px; grid-template-columns:repeat(3,minmax(0,1fr)) }
@media (max-width:1024px){ .cards{ grid-template-columns:repeat(2,1fr) } }
@media (max-width:640px){ .cards{ grid-template-columns:1fr } }
.card{ background:#fff; border:1px solid var(--color-border); border-radius:var(--radius-md); padding:20px; box-shadow:var(--shadow-subtle); display:grid; gap:8px }
.card h3{ font-size:20px }
.card p{ color:var(--color-text-muted) }
.card a{ align-self:start }
.workflow{ text-align:center }
.workflow__grid{ display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:24px; margin-top:24px }
@media (max-width:1024px){ .workflow__grid{ grid-template-columns:repeat(2,1fr) } }
@media (max-width:640px){ .workflow__grid{ grid-template-columns:1fr } }
.step{ background:#fff; border:1px solid var(--color-border); border-radius:var(--radius-lg); padding:20px; box-shadow:var(--shadow-subtle) }
.step__num{ width:40px; height:40px; border-radius:999px; display:grid; place-items:center; background:var(--color-primary); color:#fff; font-weight:700; margin:0 auto 10px auto }
.faq-preview__list{ display:grid; gap:12px; margin-top:24px }
.faq-item{ border:1px solid var(--color-border); border-radius:var(--radius-md); background:#fff; padding:16px }
.faq-item strong{ display:block; margin-bottom:6px }
.faq-preview__cta{ margin-top:16px; text-align:center }
/* v0.1.3: about-split and industries matrix */
.about-split{ display:grid; grid-template-columns:1fr 1fr; gap:0; padding:0 }
.about-split__img img{ width:100%; height:100%; object-fit:cover; display:block }
.about-split__text{ padding:48px var(--container-pad); display:flex; flex-direction:column; justify-content:center }
@media (max-width:900px){ .about-split{ grid-template-columns:1fr } .about-split__text{ padding:32px var(--container-pad) } }
.industries-section{ padding:0 }
.visually-hidden{ position:absolute; left:-9999px; width:1px; height:1px; overflow:hidden }
.industries-matrix{ display:grid; grid-template-columns:repeat(3,1fr); grid-auto-rows:minmax(180px,36vh); gap:2px; background:#000; width:100% }
.industries-tile{ position:relative; display:block; height:100%; background:#000; overflow:hidden }
.industries-tile img{ width:100%; height:100%; object-fit:cover; display:block }
.industries-label{ position:absolute; left:50%; top:50%; transform:translate(-50%,-50%); background:rgba(0,0,0,.55); color:#fff; padding:10px 18px; border-radius:28px; font-weight:700; text-align:center; white-space:nowrap; border:1px solid rgba(255,255,255,.12) }
@media (max-width:900px){ .industries-matrix{ grid-template-columns:repeat(2,1fr); grid-auto-rows:minmax(160px,28vh) } }
/* v0.1.3 hover (we can keep minimal here; next step will add stronger hover) */

/* Offer parallax background */
.offer-parallax{ position:relative; overflow:hidden }
.offer-parallax__bg{ position:absolute; inset:0; background-size:cover; background-position:center; transform:translateY(0); will-change:transform }
.offer-parallax__overlay{ position:absolute; inset:0; background:linear-gradient(to bottom, rgba(255,255,255,.88), rgba(255,255,255,.72) 40%, rgba(255,255,255,.72)) }
.offer-parallax > .container{ position:relative; z-index:1 }
/* Inline contact form */
.contact-inline .contact-form{ margin-top:12px }
.form-grid{ display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:16px }
.form-group{ display:grid; gap:6px }
.form-group input, .form-group select, .form-group textarea{ border:1px solid var(--color-border); border-radius:var(--radius-md); padding:12px; font:inherit }
.form-group textarea{ resize:vertical }
.form-wide{ grid-column:1 / -1 }
.phone-field{ display:flex; gap:8px }
.phone-field select{ min-width:120px }
.form-hint{ margin-top:8px; color:var(--color-text-muted); font-size:var(--small) }
/* Industries hover effects: zoom-in + label scale */
.industries-tile img{ transition:transform .35s ease }
.industries-label{ transition:transform .25s ease, background .25s ease }
.industries-tile:hover img{ transform:scale(1.06) }
.industries-tile:hover .industries-label{ transform:translate(-50%,-50%) scale(1.05); background:rgba(0,0,0,.65) }
