:root{--bg:#030407;--panel:#08090e;--panel2:#0c0d14;--text:#f6f7fb;--muted:#a3a6b4;--line:#1b1d29;--purple:#7627e8;--purple2:#a13aff;--gold:#d39d32;--blue:#1677e8;--font-head:'Teko','Arial Narrow',Arial,sans-serif;--font-body:'Rajdhani',Arial,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:#030407;color:var(--text);font-family:var(--font-body);font-size:18px;line-height:1.55;letter-spacing:.01em}body:before{content:"";position:fixed;inset:0;pointer-events:none;background:radial-gradient(circle at 50% 0,rgba(111,37,232,.12),transparent 35%),linear-gradient(180deg,rgba(255,255,255,.02),transparent 20%);z-index:-1}a{color:inherit;text-decoration:none}.pm-wrap{width:min(1180px,calc(100% - 42px));margin:0 auto}.site-header{position:sticky;top:0;z-index:50;background:rgba(4,5,10,.95);border-bottom:1px solid var(--line);backdrop-filter:blur(10px)}.header-inner{height:112px;display:flex;align-items:center;justify-content:space-between}.brand{display:flex;align-items:center;gap:14px}.brand img{width:175px;max-height:100px;object-fit:contain;display:block}.brand-text{display:none;font-family:var(--font-head);font-size:34px;line-height:.9;text-transform:uppercase;letter-spacing:.08em}.main-nav{display:flex;align-items:center;gap:26px;text-transform:uppercase;font-family:var(--font-head);font-size:17px;letter-spacing:.12em;color:#d5d7de}.main-nav>a:not(.icon-btn):hover{color:white}.icon-btn{width:42px;height:42px;display:inline-flex;align-items:center;justify-content:center;border-radius:8px;color:#fff;font-family:Arial,sans-serif;font-weight:bold;box-shadow:0 0 24px rgba(118,39,232,.26);border:1px solid rgba(255,255,255,.04)}.icon-btn svg{width:18px;height:18px;display:block}.icon-btn.blue svg{width:16px;height:16px}.icon-btn.purple{background:linear-gradient(135deg,#8b28f1,#5b19c7);box-shadow:0 0 20px rgba(139,40,241,.38)}.icon-btn.blue{background:#1275e7;box-shadow:0 0 18px rgba(18,117,231,.28)}.mobile-toggle{display:none;background:transparent;border:0;gap:5px;flex-direction:column}.mobile-toggle span{display:block;width:26px;height:2px;background:#fff}.hero{position:relative;min-height:calc(100vh - 112px);display:flex;align-items:center;overflow:hidden;background-image:linear-gradient(90deg,rgba(0,0,0,.88) 0%,rgba(0,0,0,.62) 36%,rgba(0,0,0,.22) 70%,rgba(0,0,0,.4) 100%),var(--hero-image);background-size:cover;background-position:center center}.hero:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(0,0,0,.1),rgba(0,0,0,.78));}.hero-content{position:relative;z-index:2;padding:70px 0 90px}.eyebrow{display:block;text-transform:uppercase;font-family:var(--font-head);font-weight:600;font-size:16px;letter-spacing:.24em;margin-bottom:16px}.gold{color:var(--gold)}.hero h1{margin:0;font-family:var(--font-head);font-weight:700;text-transform:uppercase;letter-spacing:.17em;font-size:clamp(58px,7.2vw,96px);line-height:.88}.hero h1 span{display:block}.purple,.section-head h2 span,.about h2 span{color:var(--purple2)}.gold-text{color:var(--gold)}.hero-copy{max-width:590px;color:#c8cad4;font-size:22px;line-height:1.45;margin:28px 0 26px}.hero-actions{display:flex;gap:16px;flex-wrap:wrap;margin-bottom:24px}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:15px 32px;border-radius:7px;font-family:var(--font-head);font-size:19px;text-transform:none;letter-spacing:.06em;border:1px solid transparent;font-weight:600}.btn-primary{background:linear-gradient(135deg,#822af2,#5b20c9);box-shadow:0 0 34px rgba(118,39,232,.35);color:#fff}.btn-outline{background:rgba(5,6,12,.34);border-color:rgba(135,80,238,.65);color:#fff}.btn.full{width:100%;border:0;text-transform:uppercase}.trust-list{list-style:none;display:flex;gap:22px;flex-wrap:wrap;padding:0;margin:0;color:#d4d4da;font-size:17px}.scroll-cue{position:absolute;z-index:3;bottom:28px;left:50%;transform:translateX(-50%);font-size:36px;color:var(--purple2);animation:bounce 1.5s infinite}@keyframes bounce{50%{transform:translateX(-50%) translateY(7px)}}.section{padding:118px 0;background:#030407;border-top:1px solid rgba(255,255,255,.04)}.section-head{margin-bottom:54px}.section-head.center{text-align:center;max-width:640px;margin-left:auto;margin-right:auto}.section-head h2,.about h2{margin:0 0 18px;font-family:var(--font-head);text-transform:uppercase;font-size:clamp(42px,4.6vw,60px);line-height:1;letter-spacing:.17em}.section-head p{color:#a9acb8;margin:0}.service-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:20px}.service-card{border:1px solid var(--line);background:linear-gradient(180deg,#090a10,#05060a);border-radius:5px;overflow:hidden;transition:.2s transform,.2s border-color}.service-card:hover{transform:translateY(-4px);border-color:rgba(118,39,232,.55)}.service-img{height:150px;background-size:cover;background-position:center;position:relative}.service-img:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 35%,rgba(0,0,0,.82))}.service-body{padding:18px 20px 22px}.service-body h3{font-family:var(--font-head);font-size:25px;text-transform:uppercase;letter-spacing:.13em;margin:0 0 10px}.service-body p{color:#a6a9b4;font-size:17px;margin:0 0 18px}.service-body a{font-family:var(--font-head);font-size:17px;letter-spacing:.12em;text-transform:uppercase;color:var(--gold);font-weight:700}.mid-cta{text-align:center;margin-top:46px;color:#c4c6cf}.mid-cta .btn{margin-top:10px}.about-grid{display:grid;grid-template-columns:1fr 1.05fr;gap:70px;align-items:start}.about-copy p{color:#b1b4bf}.tick-list{list-style:none;padding:0;margin:28px 0 0;color:#d0d2d9}.tick-list li{margin:10px 0}.tick-list li:before{content:'◎';color:var(--gold);margin-right:10px}.stat-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-bottom:18px}.stat-grid div,.contact-card,.review-card,.quote-form{border:1px solid var(--line);background:linear-gradient(180deg,#080910,#05060a);border-radius:5px}.stat-grid div{text-align:center;padding:28px 12px}.stat-grid strong{display:block;font-family:var(--font-head);font-size:46px;color:var(--purple2);line-height:.9}.stat-grid span{display:block;text-transform:uppercase;letter-spacing:.14em;color:#9da0ad;font-size:14px;margin-top:9px}.contact-card{padding:26px}.contact-card h3{font-family:var(--font-head);letter-spacing:.12em;text-transform:uppercase;margin:0 0 16px}.contact-card p{color:#c2c4ce;margin:9px 0}.small-btn{display:inline-flex;padding:8px 15px;border-radius:4px;margin-right:8px;margin-top:12px;font-family:var(--font-head);letter-spacing:.08em}.small-btn.blue{background:#1478e8}.small-btn.dark{background:#11131c}.areas-strip{background:linear-gradient(90deg,#6922d2,#8f2bfa);padding:25px 0}.areas-inner{display:flex;align-items:center;justify-content:center;gap:28px;flex-wrap:wrap;font-family:var(--font-head);text-transform:uppercase;letter-spacing:.13em;font-size:16px}.areas-inner span{color:#e0ba4f}.reviews-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:20px}.review-card{padding:22px;min-height:230px;display:flex;flex-direction:column}.stars,.rating-row{color:#f6bd1e}.review-card blockquote{margin:12px 0 22px;color:#d1d3db;font-size:18px;line-height:1.45}.review-author{margin-top:auto;padding-top:14px;border-top:1px solid var(--line);display:flex;align-items:center;gap:11px}.review-author span{width:30px;height:30px;border-radius:50%;background:var(--purple);display:inline-flex;align-items:center;justify-content:center;font-size:15px;font-weight:700}.review-author strong{display:block;font-size:15px;color:#fff}.review-author small{display:block;font-size:13px;color:#858895}.review-author b{margin-left:auto;color:#2bd564}.cta-review{margin-top:35px}.center{text-align:center}.quote-form{max-width:980px;margin:0 auto;padding:26px}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:14px}.quote-form label{display:block;color:#aeb1bd;font-size:16px;margin-bottom:13px}.quote-form input,.quote-form select,.quote-form textarea{display:block;width:100%;margin-top:6px;background:#0a0b12;border:1px solid #242733;border-radius:5px;color:#fff;padding:14px 15px;font:inherit}.quote-form textarea{min-height:120px;resize:vertical}.notice{max-width:980px;margin:0 auto 16px;padding:14px;border-radius:5px}.notice.success{background:#0d2d18;border:1px solid #2d8a47}.notice.error{background:#321113;border:1px solid #9d3339}.site-footer{background:#020306;border-top:1px solid var(--line);padding:62px 0 22px}.footer-grid{display:grid;grid-template-columns:1.2fr 1.2fr 1fr;gap:70px}.footer-logo{width:150px;max-height:95px;object-fit:contain}.site-footer p,.site-footer li{color:#a3a6b4}.site-footer h4{font-family:var(--font-head);color:var(--gold);text-transform:uppercase;letter-spacing:.14em}.footer-cols{display:grid;grid-template-columns:1fr 1fr;gap:20px}.footer-cols ul{list-style:none;margin:0;padding:0}.footer-bottom{border-top:1px solid var(--line);margin-top:38px;padding-top:20px;display:flex;justify-content:space-between;color:#777b88;font-size:15px}.screen-reader-text{position:absolute;left:-9999px}@media(max-width:1050px){.service-grid,.reviews-grid{grid-template-columns:repeat(2,1fr)}.about-grid{grid-template-columns:1fr}.hero h1{font-size:70px}}@media(max-width:760px){body{font-size:16px}.header-inner{height:84px}.brand img{width:120px;max-height:74px}.mobile-toggle{display:flex}.main-nav{display:none;position:absolute;left:0;right:0;top:84px;background:#05060a;border-bottom:1px solid var(--line);padding:20px;flex-direction:column;align-items:flex-start}.main-nav.open{display:flex}.hero{min-height:calc(100vh - 84px);background-position:center center}.hero-content{padding:48px 0 70px}.hero h1{font-size:52px;letter-spacing:.13em}.hero-copy{font-size:18px}.service-grid,.reviews-grid,.form-row,.stat-grid,.footer-grid{grid-template-columns:1fr}.footer-bottom{display:block}.areas-inner{gap:16px}.section{padding:78px 0}.quote-form{padding:18px}.trust-list{display:block}.trust-list li{margin-bottom:6px}}


/* Contact Form 7 styling */
.cf7-form-wrap .wpcf7-form {
    margin: 0;
}
.cf7-form-wrap .wpcf7 p {
    margin: 0 0 1rem;
}
.cf7-form-wrap .wpcf7 label {
    display: block;
    color: var(--muted);
    font-family: var(--font-body);
    font-size: 0.92rem;
    letter-spacing: 0.02em;
}
.cf7-form-wrap .wpcf7 input,
.cf7-form-wrap .wpcf7 textarea,
.cf7-form-wrap .wpcf7 select {
    width: 100%;
    margin-top: 0.45rem;
    background: rgba(255,255,255,0.035);
    border: 1px solid rgba(255,255,255,0.12);
    color: #fff;
    border-radius: 8px;
    padding: 0.95rem 1rem;
    outline: none;
}
.cf7-form-wrap .wpcf7 textarea {
    min-height: 135px;
    resize: vertical;
}
.cf7-form-wrap .wpcf7 select option {
    color: #111;
}
.cf7-form-wrap .wpcf7-submit {
    margin-top: 0.5rem;
    width: 100%;
    border: 0 !important;
    background: linear-gradient(135deg, var(--purple), #8b2cff) !important;
    color: #fff !important;
    text-transform: uppercase;
    font-family: var(--font-heading);
    font-weight: 700;
    letter-spacing: 0.08em;
    box-shadow: 0 12px 32px rgba(102, 33, 214, 0.35);
    cursor: pointer;
}
.cf7-form-wrap .wpcf7-spinner {
    display: block;
    margin: 0.75rem auto 0;
}
.cf7-form-wrap .wpcf7-not-valid-tip {
    margin-top: 0.35rem;
    font-size: 0.85rem;
    color: #ff8d8d;
}
.cf7-form-wrap .wpcf7-response-output {
    margin: 1rem 0 0 !important;
    border-radius: 8px;
    color: #fff;
}


/* v8 service-page and footer link updates */
.service-card{position:relative}
.service-card-link{position:absolute;inset:0;z-index:2;font-size:0;color:transparent}
.service-card .service-body a,.service-card h3 a{position:relative;z-index:3}
.service-text-link{display:inline-block;margin-top:.4rem;color:var(--gold);font-family:var(--font-head);text-transform:uppercase;letter-spacing:.08em}
.site-footer a{color:#a3a6b4;transition:color .18s ease}
.site-footer a:hover{color:#fff}
.service-page-hero{position:relative;min-height:560px;display:flex;align-items:center;overflow:hidden;background-image:linear-gradient(90deg,rgba(0,0,0,.88) 0%,rgba(0,0,0,.65) 45%,rgba(0,0,0,.24) 100%),var(--service-image);background-size:cover;background-position:center}
.service-page-overlay{position:absolute;inset:0;background:linear-gradient(180deg,rgba(0,0,0,.12),rgba(0,0,0,.75))}
.service-page-content{position:relative;z-index:2;padding:90px 0}
.service-page-content h1{font-family:var(--font-head);font-size:clamp(54px,6.5vw,90px);line-height:.9;text-transform:uppercase;letter-spacing:.13em;margin:0 0 24px}
.service-page-content p{max-width:680px;color:#c8cad4;font-size:22px}
.service-detail-grid{display:grid;grid-template-columns:1.35fr .65fr;gap:48px;align-items:start}
.service-detail-copy h2{font-family:var(--font-head);font-size:54px;line-height:1;text-transform:uppercase;letter-spacing:.1em;margin:0 0 22px}
.service-detail-copy p{color:#b7bac7}
.service-bullets{margin-top:28px}
.service-side-card{background:var(--panel2);border:1px solid var(--line);border-radius:10px;padding:30px;position:sticky;top:132px}
.service-side-card h3{font-family:var(--font-head);font-size:34px;text-transform:uppercase;letter-spacing:.1em;margin:0 0 8px}
.service-side-card p{color:#a3a6b4}
.service-side-card .btn{margin-top:12px}
.related-services .compact{grid-template-columns:repeat(3,1fr)}
@media(max-width:900px){
    .service-detail-grid,.related-services .compact{grid-template-columns:1fr}
    .service-page-hero{min-height:480px}
    .service-side-card{position:static}
}


/* v10 anchor scroll fix */
#services,#about,#contact,#reviews{scroll-margin-top:130px}
@media(max-width:760px){#services,#about,#contact,#reviews{scroll-margin-top:100px}}
