@import url('https://fonts.googleapis.com/css2?family=Barlow+Condensed:wght@500;600;700&family=Inter:wght@400;500;600;700&display=swap');

:root {
    --bg: #071719;
    --bg-2: #0b2022;
    --panel: #0e2829;
    --panel-2: #102f30;
    --text: #edf4f1;
    --muted: #9eafac;
    --gold: #f5b51b;
    --gold-2: #d89408;
    --teal: #006d66;
    --teal-light: #00a69a;
    --line: rgba(237, 244, 241, .12);
    --max: 1180px;
}

* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body {
    margin: 0;
    background: var(--bg);
    color: var(--text);
    font-family: Inter, system-ui, sans-serif;
    line-height: 1.6;
}
a { color: inherit; text-decoration: none; }
img { max-width: 100%; display: block; }
.container { width: min(calc(100% - 40px), var(--max)); margin-inline: auto; }

.site-header {
    position: sticky;
    top: 0;
    z-index: 50;
    background: rgba(7, 23, 25, .9);
    backdrop-filter: blur(14px);
    border-bottom: 1px solid var(--line);
}
.nav-wrap { height: 82px; display: flex; align-items: center; justify-content: space-between; }
.brand img { width: 215px; height: auto; }
.main-nav { display: flex; align-items: center; gap: 32px; font-size: 13px; text-transform: uppercase; letter-spacing: .1em; }
.main-nav a { color: #c7d3d0; transition: color .2s ease; }
.main-nav a:hover { color: var(--gold); }
.nav-cta { border: 1px solid rgba(245,181,27,.65); padding: 11px 17px; color: var(--gold) !important; }
.menu-toggle { display: none; background: none; border: 0; padding: 8px; }
.menu-toggle span { display:block; width:24px; height:2px; background:#fff; margin:5px 0; }

.hero {
    min-height: 690px;
    display: flex;
    align-items: center;
    overflow: hidden;
    border-bottom: 1px solid var(--line);
    background:
        radial-gradient(circle at 78% 45%, rgba(0, 166, 154, .13), transparent 32%),
        radial-gradient(circle at 15% 70%, rgba(245,181,27,.07), transparent 25%),
        var(--bg);
}
.hero-grid { display: grid; grid-template-columns: 1.02fr .98fr; gap: 60px; align-items: center; }
.eyebrow, .section-label {
    color: var(--gold);
    font-size: 11px;
    letter-spacing: .22em;
    font-weight: 700;
    margin: 0 0 18px;
}
.hero h1 {
    font-family: "Barlow Condensed", sans-serif;
    font-size: clamp(54px, 7vw, 90px);
    line-height: .91;
    text-transform: uppercase;
    letter-spacing: -.02em;
    margin: 0 0 26px;
    max-width: 700px;
}
.hero h1 span { color: var(--gold); }
.hero-text { max-width: 610px; color: #b6c5c2; font-size: 17px; }
.hero-actions { display:flex; gap:12px; margin-top:32px; flex-wrap:wrap; }
.btn {
    display:inline-flex; align-items:center; justify-content:center; gap:12px;
    min-height:50px; padding:0 22px; border:1px solid transparent;
    font-size:12px; font-weight:700; text-transform:uppercase; letter-spacing:.1em;
    cursor:pointer; transition:transform .2s, background .2s, border-color .2s;
}
.btn:hover { transform: translateY(-2px); }
.btn-primary { background:var(--gold); color:#101a18; }
.btn-primary:hover { background:#ffc62d; }
.btn-ghost { border-color:var(--line); color:#dbe4e2; }
.btn-ghost:hover { border-color:var(--gold); color:var(--gold); }

.hero-points { display:flex; gap:28px; margin-top:50px; }
.hero-points div { display:flex; gap:9px; align-items:baseline; }
.hero-points strong { color:var(--gold); font-family:"Barlow Condensed"; font-size:19px; }
.hero-points span { color:#849693; font-size:11px; text-transform:uppercase; letter-spacing:.08em; }

.hero-visual { min-height:520px; position:relative; display:grid; place-items:center; }
.grid-lines {
    position:absolute; inset:5% 0;
    background-image: linear-gradient(rgba(0,166,154,.13) 1px, transparent 1px), linear-gradient(90deg, rgba(0,166,154,.13) 1px, transparent 1px);
    background-size:46px 46px;
    transform:perspective(600px) rotateX(55deg) rotateZ(-8deg) scale(1.35);
    opacity:.6;
}
.orb { position:absolute; border:1px solid rgba(0,166,154,.32); border-radius:50%; }
.orb-one { width:380px; height:380px; }
.orb-two { width:280px; height:280px; border-color:rgba(245,181,27,.35); transform:rotateX(60deg) rotateY(30deg); }
.hero-card {
    position:relative; width:300px; height:330px; padding:32px;
    border:1px solid rgba(245,181,27,.4);
    background:linear-gradient(145deg, rgba(16,47,48,.92), rgba(7,23,25,.8));
    box-shadow:0 30px 80px rgba(0,0,0,.35);
    display:flex; flex-direction:column; justify-content:flex-end;
}
.hero-card:before { content:""; position:absolute; inset:12px; border:1px solid rgba(255,255,255,.06); }
.card-kicker { font-size:10px; color:var(--gold); letter-spacing:.2em; }
.hero-card strong { font-family:"Barlow Condensed"; font-size:100px; line-height:.8; letter-spacing:.03em; }
.hero-card small { margin-top:15px; color:var(--muted); text-transform:uppercase; letter-spacing:.15em; font-size:9px; }
.hero-coordinate { position:absolute; right:0; bottom:45px; font-family:"Barlow Condensed"; font-size:13px; line-height:1.3; color:#6c7d7a; letter-spacing:.12em; }

.section { padding:110px 0; }
.intro { background:var(--bg-2); border-bottom:1px solid var(--line); }
.two-col { display:grid; grid-template-columns:1fr 1fr; gap:90px; }
.section h2 {
    margin:0; font-family:"Barlow Condensed"; text-transform:uppercase;
    font-size:clamp(42px,5vw,66px); line-height:.98; letter-spacing:-.01em;
}
.section h2 em { color:var(--gold); font-style:normal; }
.section-copy { color:#adbcba; max-width:600px; }
.section-copy p { margin-top:0; margin-bottom:20px; }
.stats { display:grid; grid-template-columns:repeat(3,1fr); border-top:1px solid var(--line); margin-top:35px; padding-top:25px; gap:15px; }
.stats strong { display:block; color:var(--gold); font-family:"Barlow Condensed"; font-size:30px; }
.stats span { color:#738581; font-size:10px; text-transform:uppercase; letter-spacing:.1em; }

.section-heading { display:flex; justify-content:space-between; gap:50px; align-items:end; margin-bottom:55px; }
.section-heading > p { max-width:390px; color:var(--muted); margin:0; font-size:14px; }
.solution-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:1px; background:var(--line); border:1px solid var(--line); }
.solution-card { min-height:280px; padding:30px; background:var(--bg); position:relative; transition:background .2s; }
.solution-card:hover { background:var(--panel); }
.solution-card .number { position:absolute; right:24px; top:24px; color:#49605c; font-size:10px; letter-spacing:.15em; }
.icon {
    width:54px; height:54px; display:grid; place-items:center;
    border:1px solid rgba(245,181,27,.5); color:var(--gold);
    font-family:"Barlow Condensed"; font-weight:700; font-size:18px; margin-bottom:55px;
}
.solution-card h3 { font-size:20px; margin:0 0 10px; }
.solution-card p { color:var(--muted); font-size:13px; margin:0; }

.process { background:var(--bg-2); border-block:1px solid var(--line); }
.process-grid { display:grid; grid-template-columns:1.4fr repeat(4,1fr); border:1px solid var(--line); }
.process-intro, .process-step { padding:30px; min-height:245px; }
.process-intro { border-right:1px solid var(--line); }
.process-intro h2 { font-size:48px; }
.process-intro p, .process-step p { color:var(--muted); font-size:13px; }
.process-step { border-right:1px solid var(--line); }
.process-step:last-child { border-right:0; }
.process-step b { color:var(--gold); font-family:"Barlow Condensed"; font-size:32px; }
.process-step h3 { margin:50px 0 8px; font-size:18px; }
.process-step p { margin:0; }

.contact { background:radial-gradient(circle at 80% 30%, rgba(0,166,154,.1), transparent 35%), var(--bg); }
.contact-grid { display:grid; grid-template-columns:.85fr 1.15fr; gap:90px; align-items:start; }
.contact-copy > p:not(.section-label) { color:var(--muted); max-width:500px; }
.contact-list { margin-top:40px; border-top:1px solid var(--line); }
.contact-list div { padding:18px 0; border-bottom:1px solid var(--line); }
.contact-list span { display:block; color:var(--gold); font-size:9px; letter-spacing:.16em; margin-bottom:4px; }
.contact-list strong { font-size:14px; }
.contact-form { background:var(--panel); border:1px solid var(--line); padding:34px; }
.form-row { display:grid; grid-template-columns:1fr 1fr; gap:15px; }
.field { margin-bottom:16px; }
.field label { display:block; color:#b8c6c3; font-size:10px; text-transform:uppercase; letter-spacing:.1em; margin-bottom:7px; }
input, select, textarea {
    width:100%; border:1px solid rgba(237,244,241,.13); background:#081b1d;
    color:#edf4f1; padding:13px 14px; font:inherit; font-size:13px; outline:none;
}
input:focus, select:focus, textarea:focus { border-color:var(--gold); }
textarea { resize:vertical; min-height:145px; }
input.invalid, select.invalid, textarea.invalid { border-color:#e06c5d; }
.consent { display:flex; gap:10px; align-items:flex-start; color:#82918e; font-size:11px; margin:5px 0 20px; }
.consent input { width:auto; margin-top:3px; accent-color:var(--gold); }
.btn-submit { width:100%; border:0; }
.form-note { color:#647572; font-size:10px; margin:12px 0 0; }
.hp { position:absolute !important; left:-9999px !important; width:1px !important; height:1px !important; overflow:hidden !important; }

.flash { position:fixed; top:92px; right:20px; z-index:100; padding:14px 18px; border:1px solid var(--line); background:#102c2d; box-shadow:0 10px 30px rgba(0,0,0,.3); font-size:12px; }
.flash.success { border-color:rgba(0,166,154,.6); }
.flash.error { border-color:rgba(224,108,93,.7); }

.site-footer { background:#041113; border-top:1px solid var(--line); }
.footer-top { min-height:230px; padding:50px 0; display:flex; justify-content:space-between; gap:40px; }
.footer-logo { width:190px; }
.footer-top p { color:#71817e; font-size:12px; margin-top:18px; }
.footer-links { display:flex; gap:80px; }
.footer-links div { display:flex; flex-direction:column; gap:8px; }
.footer-links span { color:var(--gold); font-size:9px; letter-spacing:.16em; margin-bottom:5px; }
.footer-links a { color:#899895; font-size:12px; }
.footer-links a:hover { color:#fff; }
.footer-bottom { border-top:1px solid var(--line); padding:18px 0; display:flex; justify-content:space-between; color:#566662; font-size:10px; text-transform:uppercase; letter-spacing:.08em; }

@media (max-width: 950px) {
    .hero-grid, .two-col, .contact-grid { grid-template-columns:1fr; gap:50px; }
    .hero { padding:80px 0; }
    .hero-visual { min-height:390px; }
    .solution-grid { grid-template-columns:1fr 1fr; }
    .process-grid { grid-template-columns:1fr 1fr; }
    .process-intro { grid-column:1 / -1; border-right:0; border-bottom:1px solid var(--line); }
    .process-step:nth-child(3) { border-right:0; }
    .section-heading { align-items:start; flex-direction:column; }
}
@media (max-width: 700px) {
    .container { width:min(calc(100% - 28px), var(--max)); }
    .nav-wrap { height:70px; }
    .brand img { width:170px; }
    .menu-toggle { display:block; }
    .main-nav {
        display:none; position:absolute; top:70px; left:0; right:0; padding:20px;
        background:#071719; border-bottom:1px solid var(--line); flex-direction:column; align-items:stretch;
    }
    .main-nav.is-open { display:flex; }
    .nav-cta { text-align:center; }
    .hero h1 { font-size:54px; }
    .hero-points { flex-direction:column; gap:10px; }
    .hero-visual { min-height:330px; }
    .hero-card { width:240px; height:280px; }
    .hero-card strong { font-size:80px; }
    .section { padding:75px 0; }
    .solution-grid, .process-grid, .form-row { grid-template-columns:1fr; }
    .process-intro { grid-column:auto; }
    .process-step { border-right:0; border-bottom:1px solid var(--line); }
    .process-step:last-child { border-bottom:0; }
    .contact-grid { gap:45px; }
    .contact-form { padding:22px; }
    .footer-top, .footer-bottom { flex-direction:column; }
    .footer-links { gap:45px; }
    .footer-bottom { gap:7px; }
}
