
:root{--black:#000000;--white:#f0f0fa;--ghost-bg:rgba(240,240,250,0.1);--ghost-bd:rgba(240,240,250,0.35);--topbar-bg:#151a20;--topbar-fg:#f7f5f1}
*{margin:0;padding:0;box-sizing:border-box}
body{background:var(--black);color:var(--white);font-family:'Inter',system-ui,-apple-system,'Segoe UI',Roboto,sans-serif;font-size:16px;line-height:1.7;text-transform:uppercase;letter-spacing:.5px;-webkit-font-smoothing:antialiased}
h1,h2,h3{text-transform:uppercase;letter-spacing:.96px;line-height:1.05}
h1{font-size:48px;font-weight:700}
h2{font-size:32px;font-weight:700}
h3{font-size:15px;font-weight:700;letter-spacing:1.17px}
a{color:var(--white);text-decoration:none}
img{display:block}
.micro{font-size:10px;letter-spacing:1px;line-height:.94;font-weight:400}
.topbar{background:var(--topbar-bg);color:var(--topbar-fg);font-size:10px;letter-spacing:1px;text-transform:uppercase;display:flex;justify-content:space-between;align-items:center;padding:8px 24px}
.topbar a{color:var(--topbar-fg)}
.topbar span{opacity:.75}
nav{position:absolute;top:37px;left:0;right:0;z-index:10;display:flex;justify-content:space-between;align-items:center;padding:20px 40px}
.logo{font-size:13px;font-weight:700;letter-spacing:1.17px;line-height:.94}
.navlinks{display:flex;gap:24px;flex-wrap:wrap}
.navlinks a{font-size:13px;font-weight:700;letter-spacing:1.17px;line-height:.94;opacity:.85}
.navlinks a:hover{opacity:1}
.navlinks a[aria-current]{opacity:1;border-bottom:1px solid var(--ghost-bd);padding-bottom:4px}
.hero{position:relative;min-height:100vh;background:#000 url('https://images.unsplash.com/photo-1517048676732-d65bc937f952?w=1600&q=70') center/cover no-repeat;display:flex;align-items:flex-end}
.hero::before{content:"";position:absolute;inset:0;background:linear-gradient(to top,rgba(0,0,0,.85) 0%,rgba(0,0,0,.5) 40%,rgba(0,0,0,.15) 100%)}
.hero-inner{position:relative;padding:0 40px 80px;max-width:1200px}
.hero h1{margin-bottom:18px}
.hero p{font-size:16px;max-width:640px;margin-bottom:30px;opacity:.9}
.btn{display:inline-block;background:var(--ghost-bg);border:1px solid var(--ghost-bd);border-radius:32px;color:var(--white);padding:18px 32px;font-size:13px;font-weight:700;letter-spacing:1.17px;text-transform:uppercase;transition:background .3s,color .3s}
.btn:hover{background:rgba(240,240,250,.25);color:#fff}
section{padding:90px 40px}
.kicker{font-size:10px;letter-spacing:1px;line-height:.94;opacity:.6;margin-bottom:12px}
.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:30px;margin-top:50px}
.card{background:transparent}
.card img{width:100%;height:200px;object-fit:cover;border-radius:12px}
.card h3{margin:20px 0 10px}
.card p{font-size:14px;opacity:.8;margin-bottom:18px}
.stats{display:grid;grid-template-columns:repeat(4,1fr);gap:30px;border-top:1px solid rgba(240,240,250,.15);border-bottom:1px solid rgba(240,240,250,.15);padding:60px 40px;text-align:center}
.stats strong{display:block;font-size:42px;font-weight:700;letter-spacing:.96px;margin-bottom:6px}
.stats span{font-size:10px;letter-spacing:1px;opacity:.6;line-height:.94}
.band{position:relative;min-height:70vh;background:#000 url('https://images.unsplash.com/photo-1595515106864-077d30192c56?w=1600&q=70') center/cover no-repeat;display:flex;align-items:center}
.band::before{content:"";position:absolute;inset:0;background:linear-gradient(to right,rgba(0,0,0,.75) 0%,rgba(0,0,0,.35) 60%,rgba(0,0,0,.1) 100%)}
.band-inner{position:relative;padding:0 40px;max-width:640px}
.band-inner h2{margin-bottom:16px}
.band-inner p{margin-bottom:28px;opacity:.9;font-size:15px}
.contact-wrap{display:grid;grid-template-columns:1fr 1fr;gap:60px;align-items:start}
.contact-wrap h2{margin-bottom:20px}
.form-field{margin-bottom:18px}
label{display:block;font-size:10px;letter-spacing:1px;line-height:.94;margin-bottom:6px;opacity:.7}
input,textarea,select{width:100%;background:rgba(240,240,250,.06);border:1px solid var(--ghost-bd);border-radius:4px;color:var(--white);padding:14px;font-family:'Inter',system-ui,sans-serif;font-size:13px;text-transform:uppercase;letter-spacing:.5px}
input:focus,textarea:focus,select:focus{outline:1px solid var(--white)}
textarea{min-height:120px;resize:vertical}
.email-link{font-size:16px;font-weight:700;letter-spacing:1.17px;border-bottom:1px solid var(--ghost-bd);padding-bottom:2px}
footer.site{background:#151a20;color:#f7f5f1;padding:70px 40px 30px;text-transform:uppercase}
.foot-grid{display:grid;grid-template-columns:2fr 1fr 1fr;gap:40px;margin-bottom:50px}
footer.site h4{font-size:13px;font-weight:700;letter-spacing:1.17px;line-height:.94;margin-bottom:16px}
footer.site a,footer.site p{font-size:12px;letter-spacing:.5px;line-height:2;opacity:.75;display:block}
footer.site a:hover{opacity:1}
.foot-legal{border-top:1px solid rgba(240,240,250,.15);padding-top:24px;font-size:10px;letter-spacing:1px;line-height:.94;opacity:.6;display:flex;justify-content:space-between;flex-wrap:wrap;gap:12px}
@media(max-width:960px){.cards{grid-template-columns:1fr}.stats{grid-template-columns:repeat(2,1fr)}.contact-wrap{grid-template-columns:1fr}.foot-grid{grid-template-columns:1fr}h1{font-size:36px}nav{padding:16px 20px}.navlinks{gap:14px}.navlinks a{font-size:11px}section{padding:60px 20px}.hero-inner,.band-inner{padding:0 20px 60px}.topbar{flex-direction:column;gap:4px}nav{top:64px}}

/* ===== Header / Nav ===== */
.topbar-inner{display:flex;justify-content:space-between;align-items:center;width:100%;max-width:1400px;margin:0 auto;gap:16px}
.site-header{position:relative;background:var(--black)}
.header-inner{display:flex;justify-content:space-between;align-items:center;padding:20px 40px;max-width:1400px;margin:0 auto}
.brand{display:flex;align-items:center;gap:14px}
.brand-link{display:flex;align-items:center;gap:14px;color:var(--white)}
.brand-mark{width:38px;height:38px;border:1px solid var(--ghost-bd);border-radius:8px;display:flex;align-items:center;justify-content:center;font-size:15px;font-weight:700;letter-spacing:.5px;background:var(--ghost-bg)}
.brand-text{display:flex;flex-direction:column}
.brand-text .logo{font-size:13px;font-weight:700;letter-spacing:1.17px;line-height:.94}
.brand-sub{font-size:10px;letter-spacing:1px;opacity:.6;margin-top:4px}
.brand-tag{font-size:10px;letter-spacing:1px;opacity:.6;border-left:1px solid var(--ghost-bd);padding-left:14px;margin-left:6px}
.main-nav,.mainnav,.nav-links{display:flex;align-items:center;gap:24px;flex-wrap:wrap}
.main-nav a,.mainnav a,.nav-links a{font-size:13px;font-weight:700;letter-spacing:1.17px;opacity:.85;transition:opacity .3s}
.main-nav a:hover,.mainnav a:hover,.nav-links a:hover{opacity:1}
.main-nav a[aria-current],.mainnav a[aria-current],.nav-links a[aria-current]{opacity:1;border-bottom:1px solid var(--ghost-bd);padding-bottom:4px}
.nav-cta{margin-left:8px}

/* ===== Buttons ===== */
.btn-primary{background:var(--white);color:var(--black);border:1px solid var(--white)}
.btn-primary:hover{background:transparent;color:var(--white)}
.btn-secondary{background:transparent;border:1px solid var(--ghost-bd);color:var(--white)}
.btn-secondary:hover{background:var(--ghost-bg)}
.btn-outline{background:transparent;border:1px solid var(--ghost-bd);color:var(--white)}
.btn-outline:hover{border-color:var(--white);color:#fff}
.btn-nav,.btn-footer{padding:12px 24px;font-size:11px}
.btn-submit{width:100%;background:var(--white);color:var(--black);border:1px solid var(--white);cursor:pointer}
.btn-submit:hover{background:transparent;color:var(--white)}

/* ===== Layout / Sections ===== */
.container{max-width:1200px;margin:0 auto}
.content{max-width:760px}
.section{padding:90px 40px}
.section-alt{background:#0b0e12}
.alt-bg{background:#0b0e12}
.columns{display:grid;grid-template-columns:repeat(2,1fr);gap:40px}
.two-col{display:grid;grid-template-columns:1fr 1fr;gap:60px;align-items:start}
.split{display:grid;grid-template-columns:1fr 1fr;gap:60px;align-items:center}
.info{font-size:14px;opacity:.8}
.intro,.page-intro,.quote-intro{font-size:16px;max-width:640px;opacity:.9;margin-top:16px}
.caption{font-size:10px;letter-spacing:1px;opacity:.6;margin-top:10px;line-height:1.5}

/* ===== Page Hero ===== */
.page-hero{position:relative;min-height:55vh;background:#000 url('https://images.unsplash.com/photo-1494412574643-ff11b0a5c1c3?w=1600&q=70') center/cover no-repeat;display:flex;align-items:flex-end}
.page-hero::before{content:"";position:absolute;inset:0;background:linear-gradient(to top,rgba(0,0,0,.85) 0%,rgba(0,0,0,.45) 50%,rgba(0,0,0,.2) 100%)}
.page-hero .hero-inner,.page-hero-inner{position:relative;padding:0 40px 60px;max-width:1200px;width:100%}
.page-hero h1{margin-bottom:14px}

/* ===== Cards / Services / Reasons ===== */
.service-cards,.reasons{display:grid;grid-template-columns:repeat(3,1fr);gap:30px;margin-top:50px}
.service-card,.reason{background:var(--ghost-bg);border:1px solid var(--ghost-bd);border-radius:12px;padding:28px;transition:background .3s,border-color .3s}
.service-card:hover,.reason:hover{background:rgba(240,240,250,.14);border-color:var(--white)}
.service-card h3,.reason h3{margin-bottom:12px}
.service-card p,.reason p{font-size:14px;opacity:.8}
.abn-card{background:#0b0e12;border:1px solid var(--ghost-bd);border-radius:12px;padding:24px}
.abn{font-size:12px;letter-spacing:1px;opacity:.7}

/* ===== Process ===== */
.process{padding:90px 40px}
.process-steps{display:grid;grid-template-columns:repeat(4,1fr);gap:30px;margin-top:50px;counter-reset:step}
.process-steps .step,.process-steps>div{border-top:1px solid var(--ghost-bd);padding-top:20px;counter-increment:step;position:relative}
.process-steps .step::before,.process-steps>div::before{content:"0" counter(step);display:block;font-size:12px;font-weight:700;letter-spacing:1px;opacity:.6;margin-bottom:14px}
.process-steps h3{margin-bottom:10px}
.process-steps p{font-size:14px;opacity:.8}

/* ===== Areas / Values ===== */
.area-list{list-style:none;display:grid;grid-template-columns:repeat(3,1fr);gap:10px 30px;margin-top:24px}
.area-list li{font-size:13px;letter-spacing:1px;border-bottom:1px solid rgba(240,240,250,.15);padding-bottom:8px}
.values-list{list-style:none;margin-top:24px;display:grid;gap:18px}
.values-list li{display:flex;gap:14px;align-items:flex-start;font-size:14px}
.values-list li::before{content:"—";opacity:.6;font-weight:700}

/* ===== Quote / Contact ===== */
.quote-grid,.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:60px;align-items:start}
.quote-form-wrap,.contact-form-wrap{background:#0b0e12;border:1px solid var(--ghost-bd);border-radius:12px;padding:40px}
.quote-copy,.contact-details{font-size:15px}
.quote-copy p,.contact-details p{margin-bottom:16px;opacity:.85}
.quote-alternative{margin-top:28px;border-top:1px solid var(--ghost-bd);padding-top:24px;font-size:13px}
.quote-alternative a{font-weight:700;border-bottom:1px solid var(--ghost-bd);padding-bottom:2px}
.form-note{font-size:10px;letter-spacing:1px;opacity:.6;margin-top:16px;line-height:1.6}
.contact-details .email-link{margin-bottom:12px;display:inline-block}

/* ===== CTA ===== */
.cta-section,.cta,.section-cta{position:relative;padding:90px 40px;background:#0b0e12;border-top:1px solid var(--ghost-bd);border-bottom:1px solid var(--ghost-bd);text-align:left}
.cta-alt{background:var(--ghost-bg);border:1px solid var(--ghost-bd);border-radius:12px;padding:60px 40px;margin:90px 40px}
.cta-row{display:grid;grid-template-columns:1fr auto;gap:30px;align-items:center}
.cta-actions,.hero-actions{display:flex;gap:16px;flex-wrap:wrap;margin-top:30px}

/* ===== Footer ===== */
.site-footer{background:#151a20;color:#f7f5f1;padding:70px 40px 30px;text-transform:uppercase}
.site-footer-inner,.footer-inner{max-width:1400px;margin:0 auto}
.footer-grid{display:grid;grid-template-columns:2fr 1fr 1fr 1fr;gap:40px;margin-bottom:50px}
.footer-col h3,.footer-heading{font-size:13px;font-weight:700;letter-spacing:1.17px;line-height:.94;margin-bottom:16px}
.footer-links{list-style:none}
.footer-links li{margin-bottom:8px}
.footer-links a{font-size:12px;letter-spacing:.5px;line-height:2;opacity:.75}
.footer-links a:hover{opacity:1}
.footer-note{font-size:12px;letter-spacing:.5px;line-height:2;opacity:.75}
.footer-bottom{border-top:1px solid rgba(240,240,250,.15);padding-top:24px;font-size:10px;letter-spacing:1px;line-height:.94;opacity:.6;display:flex;justify-content:space-between;flex-wrap:wrap;gap:12px;align-items:center}
.footer-bottom .btn-footer{opacity:1}

/* ===== Legal ===== */
.legal-content{max-width:760px;padding:90px 40px}
.legal-content h2{margin:40px 0 14px;font-size:22px}
.legal-content p,.legal-content li{font-size:14px;opacity:.85;margin-bottom:14px}
.legal-content ul{margin-left:20px}
.policy-meta{font-size:10px;letter-spacing:1px;opacity:.6;margin-bottom:30px}

/* ===== Responsive ===== */
@media(max-width:960px){
.cards,.service-cards,.reasons,.process-steps{grid-template-columns:1fr}
.stats{grid-template-columns:repeat(2,1fr)}
.two-col,.split,.quote-grid,.contact-grid,.columns{grid-template-columns:1fr}
.cta-row{grid-template-columns:1fr}
.area-list{grid-template-columns:repeat(2,1fr)}
.footer-grid{grid-template-columns:1fr 1fr}
section,.section,.process{padding:60px 24px}
.header-inner,.nav{padding:16px 24px}
.hero-inner,.page-hero .hero-inner{padding:0 24px 60px}
.quote-form-wrap,.contact-form-wrap{padding:28px}
.cta-alt{margin:60px 24px;padding:40px 24px}
h1{font-size:36px}
h2{font-size:26px}
}
@media(max-width:560px){
.stats{grid-template-columns:1fr}
.area-list{grid-template-columns:1fr}
.footer-grid{grid-template-columns:1fr}
.nav-links,.mainnav,.main-nav{gap:14px}
}

.site-nav{position:absolute;top:37px;left:0;right:0;z-index:10;display:flex;justify-content:space-between;align-items:center;padding:20px 40px}
.site-nav .logo{font-size:13px;font-weight:700;letter-spacing:1.17px;line-height:.94}
.site-nav .navlinks{display:flex;gap:24px;flex-wrap:wrap}
.site-nav .navlinks a{font-size:13px;font-weight:700;letter-spacing:1.17px;line-height:.94;opacity:.85}
.site-nav .navlinks a:hover{opacity:1}
.site-nav .navlinks a[aria-current]{opacity:1;border-bottom:1px solid var(--ghost-bd);padding-bottom:4px}
@media(max-width:960px){.site-nav{position:static;background:var(--topbar-bg);flex-wrap:wrap;gap:16px;padding:16px 24px}}
