/*
Theme Name: WiFiDoc Professional
Theme URI: https://wifidoc.co.uk/
Author: WiFiDoc
Description: Professional, responsive WordPress theme for WiFiDoc home and business WiFi, networking and WiFi troubleshooting services across North Wales.
Version: 2.0.0
Requires at least: 6.0
Requires PHP: 7.4
Text Domain: wifidoc
*/
:root{
 --ink:#0b1220;--muted:#64748b;--line:#e5eaf1;--blue:#1479ff;--cyan:#18c6d9;
 --navy:#07152e;--card:#fff;--soft:#f5f8fc;--radius:22px;--shadow:0 18px 55px rgba(9,30,66,.10);
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:var(--ink);background:#fff;line-height:1.65}
a{color:inherit;text-decoration:none}
img{max-width:100%;height:auto}
.container{width:min(1160px,calc(100% - 40px));margin:auto}
.site-header{position:sticky;top:0;z-index:50;background:rgba(255,255,255,.94);backdrop-filter:blur(14px);border-bottom:1px solid rgba(229,234,241,.8)}
.header-inner{height:78px;display:flex;align-items:center;justify-content:space-between;gap:25px}
.brand{display:flex;align-items:center;gap:11px;font-weight:800;font-size:24px;letter-spacing:-.7px}
.brand-mark{width:38px;height:38px;border-radius:12px;background:linear-gradient(135deg,var(--blue),var(--cyan));display:grid;place-items:center;position:relative;box-shadow:0 8px 22px rgba(20,121,255,.25)}
.brand-mark:before,.brand-mark:after{content:"";position:absolute;border:2px solid #fff;border-bottom:0;border-radius:50% 50% 0 0;opacity:.9}
.brand-mark:before{width:21px;height:14px;top:8px}.brand-mark:after{width:13px;height:8px;top:14px}
.nav{display:flex;align-items:center;gap:28px;font-size:15px;font-weight:600}
.nav a:hover{color:var(--blue)}
.nav-cta{background:var(--ink);color:#fff!important;padding:11px 17px;border-radius:12px}
.menu-toggle{display:none;border:0;background:transparent;font-size:28px}
.hero{position:relative;overflow:hidden;background:linear-gradient(135deg,#06142d 0%,#0a2347 58%,#0b5a83 100%);color:#fff;padding:94px 0 86px}
.hero:after{content:"";position:absolute;width:620px;height:620px;border-radius:50%;right:-230px;top:-240px;background:radial-gradient(circle,rgba(24,198,217,.25),transparent 68%)}
.hero-grid{display:grid;grid-template-columns:1.08fr .92fr;gap:65px;align-items:center;position:relative;z-index:2}
.eyebrow{display:inline-flex;gap:8px;align-items:center;border:1px solid rgba(255,255,255,.18);background:rgba(255,255,255,.08);padding:7px 12px;border-radius:99px;font-size:13px;font-weight:700;color:#d8f9ff}
.hero h1{font-size:clamp(43px,6vw,72px);line-height:1.02;letter-spacing:-3px;margin:20px 0}
.hero h1 span{color:#59e2ee}
.hero p{font-size:19px;color:#d6e3f3;max-width:650px;margin:0 0 30px}
.buttons{display:flex;flex-wrap:wrap;gap:12px}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:9px;padding:14px 20px;border-radius:13px;font-weight:800;transition:.2s transform,.2s box-shadow}
.btn:hover{transform:translateY(-2px)}
.btn-primary{background:#fff;color:var(--ink);box-shadow:0 10px 30px rgba(0,0,0,.18)}
.btn-outline{border:1px solid rgba(255,255,255,.3);color:#fff;background:rgba(255,255,255,.06)}
.hero-card{min-height:410px;border:1px solid rgba(255,255,255,.18);border-radius:30px;background:#0a2445;box-shadow:0 30px 80px rgba(0,0,0,.3);position:relative;overflow:hidden}
.hero-house-image{display:block;width:100%;height:100%;min-height:410px;object-fit:cover;object-position:center;border-radius:29px}
@media(max-width:850px){.hero-grid,.split{grid-template-columns:1fr}.hero{padding:65px 0}.hero-card{min-height:300px}.cards{grid-template-columns:1fr 1fr}.footer-grid{grid-template-columns:1fr 1fr}.nav{display:none}.menu-toggle{display:block}.nav.open{display:flex;position:absolute;left:20px;right:20px;top:70px;background:#fff;border:1px solid var(--line);padding:18px;border-radius:16px;box-shadow:var(--shadow);flex-direction:column;align-items:stretch}}
@media(max-width:560px){.hero-card{min-height:330px}.hero-house-image{min-height:330px}.container{width:min(100% - 28px,1160px)}.header-inner{height:70px}.brand{font-size:21px}.cards{grid-template-columns:1fr}.hero h1{letter-spacing:-2px}.hero p{font-size:17px}.cta{padding:32px;display:block}.cta .btn{margin-top:20px}.footer-grid{grid-template-columns:1fr}.copyright{display:block}.copyright span{display:block;margin-top:8px}.section{padding:65px 0}}
