@import url('https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700;800&family=Montserrat:wght@700;800&display=swap');
:root{--bg:#050608;--panel:#0d1015;--text:#f6f7f9;--muted:#9da4af;--line:#20252d;--blue:#3d8cff}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--bg);color:var(--text);font-family:Inter,Arial,sans-serif;line-height:1.6}a{color:inherit;text-decoration:none}header{height:86px;padding:0 6vw;border-bottom:1px solid var(--line);display:flex;align-items:center;gap:38px;background:rgba(5,6,8,.95);position:relative;z-index:3}.logo-link img{display:block;width:62px;height:62px;object-fit:contain}nav{margin-left:auto;display:flex;gap:30px}nav a{font-size:14px;color:var(--muted);transition:.2s}nav a:hover,nav a.active{color:#fff}.phone{font-size:14px;font-weight:600}.hero{min-height:690px;width:88%;max-width:1250px;margin:auto;display:flex;align-items:center;position:relative;overflow:hidden}.glow{position:absolute;width:650px;height:650px;border-radius:50%;right:-170px;top:30px;background:radial-gradient(circle,rgba(38,91,160,.25),transparent 68%)}.hero-copy{position:relative;z-index:2;max-width:750px;padding:80px 0}.eyebrow{font-size:11px;letter-spacing:.24em;font-weight:800;color:#62a8ff;margin:0 0 22px}.hero h1,.page h1{font-family:Montserrat,Arial,sans-serif;font-size:clamp(42px,7vw,84px);line-height:.98;letter-spacing:-.065em;margin:0 0 28px}.hero h1 span,.page h1 span{color:#8d95a0}.hero-copy>p:not(.eyebrow){max-width:590px;color:var(--muted);font-size:18px;margin:0 0 38px}.hero-logo{position:absolute;width:min(44vw,510px);height:min(44vw,510px);object-fit:contain;right:1%;top:50%;transform:translateY(-50%);opacity:.9;filter:drop-shadow(0 0 35px rgba(38,113,224,.15))}.button{display:inline-flex;align-items:center;gap:28px;padding:15px 21px;border:1px solid #454b55;border-radius:3px;font-size:14px;font-weight:700;transition:.2s;cursor:pointer;background:none;color:inherit;font-family:inherit}.button:hover{background:#fff;color:#050608;border-color:#fff}.button b{font-size:20px}.button.primary{background:var(--blue);border-color:var(--blue);color:#050608}.button.primary:hover{background:#5b9dff;border-color:#5b9dff}.split{width:88%;max-width:1200px;margin:auto;padding:110px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line);display:grid;grid-template-columns:1fr 1fr;gap:100px}.split h2{font-family:Montserrat;font-size:46px;line-height:1.02;letter-spacing:-.05em;margin:0}.split>p{color:var(--muted);font-size:17px;margin:25px 0 0}.statement{min-height:430px;padding:130px 6vw;display:flex;align-items:center}.statement p{font-family:Montserrat;font-size:clamp(44px,6vw,78px);line-height:1;letter-spacing:-.06em;margin:0}.statement span{color:#4c98ff}.page{width:88%;max-width:1150px;min-height:calc(100vh - 172px);margin:auto;padding:120px 0 150px}.about-copy{max-width:650px;margin:80px 0 0 auto}.about-copy p{color:var(--muted);font-size:18px;margin:0 0 27px}.contact{max-width:1050px}.card{max-width:690px;margin-top:75px;padding:42px;border:1px solid var(--line);background:var(--panel)}.card>p{color:var(--muted);font-size:17px}.big-phone{display:block;font-family:Montserrat;font-size:clamp(30px,5vw,48px);letter-spacing:-.04em;margin:28px 0}.small{font-size:13px!important;margin-top:28px!important}footer{border-top:1px solid var(--line);min-height:88px;padding:18px 6vw;display:flex;align-items:center;gap:25px;color:var(--muted);font-size:12px}footer img{width:48px;height:48px;object-fit:contain}footer p{margin:0 auto 0 0}footer a{color:#fff;font-weight:600}

/* --- Service area bar --- */
.area-bar{width:88%;max-width:1250px;margin:0 auto 60px;padding:16px 0;color:var(--muted);font-size:13px;letter-spacing:.03em;border-bottom:1px solid var(--line)}
.area-bar b{color:#fff}

/* --- Services overview grid (home + services page) --- */
.services-intro{width:88%;max-width:1200px;margin:auto;padding:100px 0 20px}
.services-intro .eyebrow{margin-bottom:18px}
.services-intro h2{font-family:Montserrat;font-size:clamp(34px,4.5vw,52px);letter-spacing:-.05em;line-height:1.03;margin:0 0 20px;max-width:640px}
.services-intro>p{color:var(--muted);font-size:17px;max-width:600px;margin:0}
.service-grid{width:88%;max-width:1200px;margin:50px auto 110px;display:grid;grid-template-columns:repeat(3,1fr);gap:24px}
.service-card{border:1px solid var(--line);background:var(--panel);padding:32px 28px;transition:.2s}
.service-card:hover{border-color:#454b55}
.service-card h3{font-family:Montserrat;font-size:21px;letter-spacing:-.02em;margin:0 0 12px}
.service-card p{color:var(--muted);font-size:15px;margin:0 0 20px}
.service-card a{font-size:13px;font-weight:700;color:#62a8ff}
.category-block{width:88%;max-width:1200px;margin:0 auto 90px}
.category-block h2{font-family:Montserrat;font-size:clamp(30px,4vw,44px);letter-spacing:-.04em;margin:0 0 8px}
.category-block .cat-sub{color:var(--muted);font-size:16px;margin:0 0 36px;max-width:620px}
.item-list{display:grid;grid-template-columns:repeat(2,1fr);gap:20px}
.item{border:1px solid var(--line);padding:24px 26px;background:var(--panel)}
.item h4{margin:0 0 8px;font-size:17px;font-weight:700}
.item p{margin:0;color:var(--muted);font-size:14px}

/* --- Our Work / photo gallery --- */
.work-grid{width:88%;max-width:1200px;margin:60px auto 110px;display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.work-photo{aspect-ratio:4/3;border:1px solid var(--line);background-color:#12151b;background-size:cover;background-position:center;display:flex;align-items:flex-end;padding:0}
.work-photo span{background:rgba(5,6,8,.72);color:#fff;font-size:13px;font-weight:600;padding:10px 14px;margin:14px;width:calc(100% - 28px)}
.cta-strip{width:88%;max-width:1200px;margin:0 auto 110px;border:1px solid var(--line);background:var(--panel);padding:52px;display:flex;align-items:center;justify-content:space-between;gap:30px;flex-wrap:wrap}
.cta-strip h3{font-family:Montserrat;font-size:28px;letter-spacing:-.03em;margin:0}
.cta-strip p{color:var(--muted);margin:8px 0 0;font-size:15px}

/* --- Lead form --- */
.form-wrap{max-width:720px;margin-top:60px}
.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}
.form-grid .full{grid-column:1/-1}
label{display:block;font-size:13px;font-weight:600;color:var(--muted);margin-bottom:7px}
input[type=text],input[type=tel],input[type=email],select,textarea,input[type=file]{width:100%;background:var(--panel);border:1px solid var(--line);color:var(--text);padding:13px 14px;font-size:15px;font-family:inherit;border-radius:2px}
input:focus,select:focus,textarea:focus{outline:none;border-color:var(--blue)}
textarea{resize:vertical;min-height:110px}
fieldset{border:1px solid var(--line);border-radius:2px;padding:16px 14px;margin:0}
fieldset legend{font-size:13px;font-weight:600;color:var(--muted);padding:0 6px}
.radio-row{display:flex;gap:22px;flex-wrap:wrap;margin-top:4px}
.radio-row label{display:flex;align-items:center;gap:8px;font-size:14px;color:var(--text);font-weight:500;margin:0}
.radio-row input{width:auto}
.form-note{font-size:12px;color:var(--muted);margin-top:10px}
.form-submit{margin-top:8px}
#form-status{margin-top:16px;font-size:14px}
/* --- Photo tiles (background-image with graceful fallback color) --- */
.photo-tile{background-size:cover;background-position:center;background-color:#12151b;position:relative;display:flex;align-items:flex-end;border:1px solid var(--line)}
.photo-tile .tag{background:var(--blue);color:#050608;font-weight:800;font-size:12px;letter-spacing:.05em;padding:9px 16px;margin:16px}
.photo-row{width:88%;max-width:1250px;margin:0 auto 90px;display:grid;grid-template-columns:repeat(4,1fr);gap:16px}
.photo-row .photo-tile{aspect-ratio:3/4}
.hero-photo{aspect-ratio:16/10;border-radius:2px}
.work-photo{background-size:cover;background-position:center;background-color:#12151b}

/* --- Trust bar --- */
.trust-bar{width:88%;max-width:1200px;margin:0 auto 100px;display:grid;grid-template-columns:repeat(4,1fr);gap:24px;padding:44px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.trust-item h4{font-size:15px;margin:0 0 6px;font-weight:700}
.trust-item p{font-size:13px;color:var(--muted);margin:0}

/* --- Perfect-for badge row --- */
.badge-row{width:88%;max-width:1200px;margin:0 auto 90px;display:flex;flex-wrap:wrap;gap:14px;align-items:center;font-size:14px;color:var(--muted)}
.badge-row .badge{border:1px solid var(--line);padding:8px 16px;color:#fff;font-weight:600;font-size:13px}
.badge-row b{color:#ffcf5c}

/* --- Bilingual / contact note strip --- */
.note-strip{width:88%;max-width:1200px;margin:0 auto 30px;color:var(--muted);font-size:13px}

@media(max-width:800px){
header{height:auto;padding:15px 6vw;flex-wrap:wrap;gap:12px}.logo-link img{width:55px;height:55px}.phone{display:none}nav{order:3;width:100%;margin:0;gap:24px}
.hero{min-height:680px}.hero-copy{padding:75px 0}.hero h1,.page h1{font-size:44px}.hero-logo{width:290px;height:290px;right:-55px;top:auto;bottom:-25px;transform:none;opacity:.35}
.split{grid-template-columns:1fr;gap:30px;padding:80px 0}.split h2{font-size:36px}.statement{padding:90px 6vw}.page{padding:80px 0 110px}.about-copy{margin-top:55px}.card{padding:28px;margin-top:55px}
footer{flex-wrap:wrap}footer img{width:42px;height:42px}footer p{margin:0}footer a{margin-left:auto}
.service-grid{grid-template-columns:1fr}.item-list{grid-template-columns:1fr}.work-grid{grid-template-columns:1fr 1fr}.form-grid{grid-template-columns:1fr}.cta-strip{padding:34px}
.photo-row{grid-template-columns:1fr 1fr}.trust-bar{grid-template-columns:1fr 1fr;gap:28px}
}
