*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:80px}body{margin:0;font:16px/1.75 system-ui,-apple-system,sans-serif;color:#1b293a}a{text-decoration:none;color:inherit}.wrap{width:min(1100px,calc(100% - 36px));margin:auto}.top{background:#101827;color:#fff;position:sticky;top:0;z-index:5}.nav{min-height:76px;display:flex;align-items:center;justify-content:space-between;gap:20px}.logo{font-weight:800;letter-spacing:1px}.logo b{display:inline-grid;place-items:center;background:#38bdf8;color:#101827;border-radius:10px;width:38px;height:38px;margin-right:10px}.links{display:flex;gap:24px;font-size:14px}.links a:hover{color:#38bdf8}.hero{background:linear-gradient(120deg,#101827,#1c3854);color:white;padding:85px 0}.eyebrow{color:#38bdf8;font-size:12px;letter-spacing:2px;text-transform:uppercase;font-weight:700}h1,h2,h3{line-height:1.2;letter-spacing:-.03em}h1{font-size:clamp(40px,6vw,68px);max-width:800px;margin:15px 0}h2{font-size:clamp(28px,4vw,42px)}.lead{max-width:760px;color:#cbd5e1;font-size:17px}.btn{display:inline-block;background:#38bdf8;color:#102033;border-radius:8px;padding:12px 18px;font-weight:700;margin:14px 10px 0 0}.btn.alt{background:transparent;color:white;border:1px solid #64748b}.section{padding:72px 0}.pale{background:#f4f7fb}.muted{color:#637083}.grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.card{background:white;border:1px solid #e0e7ef;border-radius:14px;padding:22px}.split{display:grid;grid-template-columns:1fr 1fr;gap:50px;align-items:center}.art{min-height:260px;border-radius:16px;background:linear-gradient(140deg,#172338,#0e1726);padding:28px;color:#38bdf8;display:flex;flex-direction:column;justify-content:center;gap:18px}.art i{height:32px;border:1px solid #3a4b60;border-radius:7px;display:block}.contact{background:#101827;color:white}.contact p{color:#cbd5e1}.contactgrid{display:grid;grid-template-columns:1fr 1fr;gap:45px}.form{background:#fff;color:#182437;padding:25px;border-radius:14px}.form p{color:#64748b;font-size:12px}.form label{display:block;font-size:13px;font-weight:700;margin:14px 0 5px}.form input,.form textarea{width:100%;padding:11px;border:1px solid #cbd5e1;border-radius:7px;font:inherit}.form button{border:0;cursor:pointer}.footer{background:#0b1220;color:#aab7c7;padding:24px 0;font-size:12px}.pagehead{background:#101827;color:white;padding:48px 0}.service{display:grid;grid-template-columns:130px 1fr;gap:24px;padding:25px 0;border-bottom:1px solid #e2e8f0}.icon{background:#e0f5fd;color:#0369a1;border-radius:12px;display:grid;place-items:center;font-weight:800;font-size:23px;min-height:100px}.service h2{font-size:23px;margin:0 0 8px}.service p{margin:0;color:#637083}.small{font-size:12px;color:#91a0b4}@media(max-width:720px){.nav{align-items:flex-start;padding:16px 0;flex-direction:column}.links{gap:15px;flex-wrap:wrap}.hero{padding:60px 0}.section{padding:52px 0}.grid,.split,.contactgrid{grid-template-columns:1fr}.service{grid-template-columns:1fr}.icon{min-height:70px}.art{min-height:190px}}
/* Original Webnode/Pexels photography */
.hero-layout{display:grid;grid-template-columns:1.1fr .9fr;gap:42px;align-items:center}
.hero-photo{display:block;width:100%;height:330px;object-fit:cover;border-radius:16px;box-shadow:0 18px 45px rgba(0,0,0,.22)}
.photo-panel{position:relative;margin:0;min-height:300px;overflow:hidden;border-radius:16px;background:#101827;box-shadow:0 12px 30px rgba(16,24,39,.12)}
.photo-panel img{display:block;width:100%;height:100%;min-height:300px;object-fit:cover;position:absolute;inset:0}
.photo-panel:after{content:"";position:absolute;inset:35% 0 0;background:linear-gradient(transparent,rgba(7,15,27,.82))}
.photo-panel figcaption{position:absolute;z-index:1;left:24px;bottom:22px;color:#fff;font-size:clamp(18px,2vw,26px);font-weight:800;letter-spacing:.04em}
@media(max-width:720px){.hero-layout{grid-template-columns:1fr;gap:26px}.hero-photo{height:220px}.photo-panel,.photo-panel img{min-height:220px}}
/* Mobile navigation & touch tweaks */
.menu-btn{display:none;width:42px;height:42px;border:1px solid #334155;border-radius:10px;background:transparent;cursor:pointer;place-items:center;padding:0}
.menu-btn span,.menu-btn span:before,.menu-btn span:after{display:block;width:18px;height:2px;background:#fff;border-radius:2px;position:relative;transition:transform .2s,background .2s}
.menu-btn span:before,.menu-btn span:after{content:"";position:absolute;left:0}
.menu-btn span:before{top:-6px}.menu-btn span:after{top:6px}
.top.open .menu-btn span{background:transparent}
.top.open .menu-btn span:before{transform:translateY(6px) rotate(45deg)}
.top.open .menu-btn span:after{transform:translateY(-6px) rotate(-45deg)}
img{max-width:100%}
@media(max-width:720px){
html{scroll-padding-top:72px}
.nav{min-height:64px;padding:0;flex-direction:row;align-items:center;flex-wrap:wrap;gap:0}
.logo b{width:34px;height:34px}
.menu-btn{display:grid}
.links{display:none;flex-basis:100%;flex-direction:column;gap:0;font-size:16px;padding:4px 0 12px}
.links a{padding:12px 0;border-top:1px solid #1f2a3a}
.top.open .links{display:flex}
h1{font-size:clamp(32px,9vw,40px)}
.hero{padding:44px 0 52px}
.lead{font-size:16px}
.btn{display:block;text-align:center;margin-right:0;padding:14px 18px}
.pagehead{padding:36px 0}
.form{padding:20px}
.form input,.form textarea{font-size:16px}
.photo-panel figcaption{left:18px;bottom:16px}
.service{grid-template-columns:56px 1fr;gap:16px;padding:22px 0;align-items:start}
.icon{min-height:56px;width:56px;font-size:18px}
.service h2{font-size:20px}
}
