@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Manrope:wght@500;600;700;800&display=swap');
:root{--blue:#4e9dca;--deep:#245ea7;--aqua:#64d8d6;--ink:#263a45;--muted:#64737b;--pale:#f3f8f9;--line:#dce8ea}*{box-sizing:border-box}body{margin:0;color:var(--ink);font-family:'DM Sans',Arial,sans-serif;font-size:16px;line-height:1.65}h1,h2,h3,h4{font-family:Manrope,sans-serif;line-height:1.15;margin:0 0 18px}h1{font-size:clamp(2.65rem,5vw,5.25rem);letter-spacing:-.06em}h2{font-size:clamp(2rem,3.5vw,3.4rem);letter-spacing:-.05em}a{text-decoration:none;color:inherit}.site-header{height:88px;display:flex;align-items:center;background:#fff;border-bottom:1px solid #eef3f4;position:sticky;top:0;z-index:10}.nav-wrap{display:flex;align-items:center;justify-content:space-between;width:min(1180px,calc(100% - 48px));margin:auto}.brand img{width:160px;height:55px;object-fit:contain;object-position:left}.site-header nav{display:flex;align-items:center;gap:25px;font-size:14px;font-weight:600}.site-header nav>a,.dropdown button{border:0;background:transparent;padding:9px 0;cursor:pointer;font:inherit;color:var(--ink)}.site-header nav .active{color:var(--deep)}.contact-link{background:var(--deep)!important;color:#fff!important;padding:9px 17px!important;border-radius:4px}.dropdown{position:relative}.dropdown button span{font-size:16px}.drop-menu{display:none;position:absolute;top:38px;left:-18px;background:#fff;width:190px;padding:10px;box-shadow:0 12px 28px #25446922;border-radius:6px}.dropdown:hover .drop-menu{display:grid}.drop-menu a{padding:7px 8px;font-size:13px}.drop-menu a:hover{color:var(--deep);background:var(--pale)}.nav-toggle{display:none;border:0;background:none;font-size:24px}.hero{min-height:620px;background:linear-gradient(119deg,#eff9f9 0%,#e1f4f5 48%,#d5edf2 100%);display:flex;align-items:center;gap:20px;padding:80px max(24px,calc((100% - 1180px)/2));overflow:hidden}.hero-content{max-width:700px;z-index:1}.eyebrow{font-size:12px;letter-spacing:.16em;font-weight:700;color:var(--deep);margin:0 0 14px}.hero h1{font-weight:800}.hero h1 em{font-style:normal;color:var(--blue)}.hero-content>p:not(.eyebrow){max-width:510px;color:var(--muted);font-size:18px;margin:26px 0}.btn{display:inline-flex;gap:18px;align-items:center;border:0;background:var(--deep);color:#fff;padding:14px 21px;border-radius:4px;font-weight:700;cursor:pointer;font-size:14px}.btn b{font-size:20px}.hero-orbit{margin-left:auto;width:360px;height:360px;border:1px solid #55aeca88;border-radius:50%;position:relative;flex:none;box-shadow:0 0 0 34px #ffffff45,0 0 0 68px #ffffff33}.bolt{font-size:190px;color:var(--deep);line-height:1;text-align:center;padding-top:66px;text-shadow:10px 0 var(--aqua)}.hero-orbit span{position:absolute;font-weight:700;font-size:10px;letter-spacing:.2em;color:var(--deep)}.hero-orbit span:nth-child(2){top:12px;left:120px}.hero-orbit span:nth-child(3){bottom:44px;right:-45px}.hero-orbit span:nth-child(4){bottom:44px;left:-48px}.intro,.services-preview,.listing,.gallery-grid,.blog-grid,.faq-list,.article{width:min(1180px,calc(100% - 48px));margin:auto}.intro{padding:110px 0;max-width:1180px}.intro h2{max-width:700px}.intro>p:not(.eyebrow){max-width:650px;color:var(--muted);font-size:18px}.text-link{color:var(--deep);font-weight:700}.services-preview{padding:75px 0 110px}.section-head{display:flex;justify-content:space-between;align-items:end;margin-bottom:35px}.cards{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}.service-card{background:var(--pale);min-height:260px;padding:26px;position:relative;overflow:hidden}.service-card:nth-child(2){background:#e8f4f4}.service-card:nth-child(3){background:#eaf0fa}.card-number{color:var(--blue);font:700 12px Manrope}.service-card h3{font-size:21px;margin:45px 0 8px}.service-card p{font-size:14px;color:var(--muted);line-height:1.5}.service-card a{font-weight:700;color:var(--deep);font-size:13px}.service-card img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:.16}.cta{padding:100px 24px;text-align:center;background:linear-gradient(120deg,var(--deep),var(--blue));color:#fff}.cta .eyebrow{color:#bdf3f0}.cta h2{margin-bottom:28px}.light{background:#fff;color:var(--deep)}.site-footer{background:#172d3b;color:#d5e0e5;padding:55px max(24px,calc((100% - 1180px)/2));display:grid;grid-template-columns:2fr 1fr 1fr;gap:30px}.site-footer img{width:200px;height:62px;object-fit:contain;object-position:left;filter:brightness(0) invert(1) grayscale(1)}.site-footer p{font-size:14px;color:#aebfc6}.site-footer h4{font-size:14px;color:#fff}.site-footer a{display:block;font-size:14px;margin:5px 0}.copyright{text-align:center;background:#122630;color:#91a6b0;padding:12px;font-size:12px}.copyright a{margin-left:14px}.page-hero{padding:95px max(24px,calc((100% - 1180px)/2));background:var(--pale)}.page-hero h1{font-size:clamp(3rem,5vw,4.4rem)}.page-hero>p:not(.eyebrow){color:var(--muted)}.content-page{width:min(1180px,calc(100% - 48px));margin:75px auto;display:grid;grid-template-columns:260px 1fr;gap:90px}.side-nav{border-left:1px solid var(--line);height:max-content}.side-nav a{display:block;padding:9px 18px;font-size:14px}.side-nav .selected{color:var(--deep);font-weight:700;border-left:3px solid var(--blue);margin-left:-1px}.prose{max-width:700px}.prose p,.article p{font-size:18px;color:var(--muted);white-space:normal}.listing{padding:70px 0}.service-row{display:grid;grid-template-columns:42% 1fr;gap:70px;align-items:center;padding:38px 0;border-bottom:1px solid var(--line)}.service-visual{height:250px;background:linear-gradient(135deg,#d9f1f1,#dae7f7);display:grid;place-items:center;overflow:hidden}.service-visual span{font:800 70px Manrope;color:#fff}.service-visual img{width:100%;height:100%;object-fit:cover}.service-row h2{font-size:32px}.service-row p:not(.eyebrow){color:var(--muted)}.tabs{display:flex;gap:22px;margin-top:25px}.tabs a{font-weight:700;color:var(--muted)}.tabs a.active{color:var(--deep);border-bottom:2px solid var(--deep)}.gallery-grid,.blog-grid{padding:70px 0;display:grid;grid-template-columns:repeat(3,1fr);gap:25px}.gallery-grid article{background:var(--pale)}.gallery-grid img,.gallery-grid iframe,.blog-grid img{width:100%;height:220px;object-fit:cover;border:0}.gallery-grid h3{font-size:17px;padding:12px 16px}.empty{color:var(--muted)}.blog-grid article{border:1px solid var(--line);padding:20px}.blog-grid article img{margin:-20px -20px 20px;width:calc(100% + 40px)}.blog-grid small,.article small{color:var(--blue);font-weight:700}.blog-grid h2{font-size:22px;margin-top:8px}.blog-grid p{color:var(--muted);font-size:14px}.faq-list{padding:70px 0;max-width:850px}.faq-list details{border-bottom:1px solid var(--line);padding:19px 0}.faq-list summary{font:700 18px Manrope;cursor:pointer;list-style:none;display:flex;justify-content:space-between}.faq-list summary b{color:var(--blue)}.faq-list p{color:var(--muted);max-width:700px}.contact-page{min-height:620px;padding:90px max(24px,calc((100% - 1180px)/2));display:grid;grid-template-columns:1fr 1fr;gap:100px;background:linear-gradient(110deg,#ecf8f8,#fff)}.contact-page p:not(.eyebrow){color:var(--muted);font-size:18px}.contact-info{margin-top:42px;font-weight:600}.contact-page form,.admin-form form{display:grid;gap:14px}label{font-size:13px;font-weight:700;color:var(--ink)}input,textarea,select{display:block;width:100%;margin-top:5px;border:1px solid #cbd9dd;border-radius:3px;padding:11px;font:15px 'DM Sans';background:white}textarea{min-height:110px;resize:vertical}.success{background:#d9f3ed;color:#246c5b;padding:13px}.article{max-width:850px;padding:80px 0}.article h1{font-size:48px;margin:10px 0 35px}.article img{width:100%;max-height:450px;object-fit:cover;margin-bottom:30px}.login{width:min(390px,calc(100% - 40px));margin:13vh auto;text-align:center}.login img{width:250px;height:90px;object-fit:contain}.login form{display:grid;gap:12px}.error{color:#bd3434}.admin-body{background:#f5f8f9;display:flex;min-height:100vh}.admin-side{position:fixed;width:240px;min-height:100vh;background:#172d3b;color:#dbe7eb;padding:28px 20px}.admin-side img{width:185px;height:60px;object-fit:contain;filter:brightness(0) invert(1) grayscale(1)}.admin-side p{font-size:10px;letter-spacing:.16em;color:#8facb7;margin:40px 10px 13px}.admin-side a{display:block;padding:10px;border-radius:3px;font-size:14px}.admin-side a.selected,.admin-side a:hover{background:#2c4552;color:#fff}.admin-main{margin-left:240px;padding:55px;width:calc(100% - 240px)}.admin-main>h1{font-size:34px}.admin-grid{display:grid;grid-template-columns:minmax(330px,1fr) minmax(300px,1fr);gap:28px;margin-top:28px}.admin-form,.admin-list{background:#fff;padding:28px;border:1px solid #e3ecee}.admin-form h2,.admin-list h2{font-size:20px}.admin-list>div{padding:13px 0;border-bottom:1px solid var(--line);display:flex;justify-content:space-between;gap:10px;font-size:14px}.admin-list span{display:flex;gap:10px;color:var(--deep)}.inline{display:inline}.inline button{border:0;background:none;color:#be3e3e;cursor:pointer;padding:0;font:inherit}
@media(max-width:760px){.site-header{height:70px}.nav-wrap{width:calc(100% - 32px)}.brand img{width:130px}.nav-toggle{display:block}.site-header nav{display:none;position:absolute;left:0;right:0;top:69px;background:#fff;padding:15px 24px;border-bottom:1px solid var(--line);align-items:stretch;gap:4px}.site-header nav.open{display:flex;flex-direction:column}.dropdown{display:grid}.dropdown button{text-align:left}.drop-menu{position:static;box-shadow:none;width:auto;padding:0 0 0 10px}.dropdown:hover .drop-menu{display:none}.dropdown:focus-within .drop-menu{display:grid}.contact-link{width:max-content}.hero{min-height:600px;padding:65px 24px}.hero-orbit{position:absolute;width:240px;height:240px;right:-70px;opacity:.4}.bolt{font-size:125px;padding-top:55px}.cards,.gallery-grid,.blog-grid{grid-template-columns:1fr}.section-head{align-items:start;gap:15px}.site-footer{grid-template-columns:1fr}.content-page,.contact-page{grid-template-columns:1fr;gap:35px}.content-page{margin:45px auto}.side-nav{display:none}.service-row{grid-template-columns:1fr;gap:24px}.service-visual{height:190px}.admin-body{display:block}.admin-side{position:static;width:100%;min-height:0}.admin-side a{display:inline-block}.admin-main{margin:0;width:100%;padding:30px 20px}.admin-grid{grid-template-columns:1fr}.page-hero{padding:65px 24px}.article{padding:50px 0}.article h1{font-size:36px}}
