*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:#f3f1eb;color:#111;font-family:Arial,Helvetica,sans-serif}header{height:84px;padding:10px 5vw;display:flex;align-items:center;justify-content:space-between;position:fixed;top:0;left:0;right:0;z-index:20;background:rgba(243,241,235,.94);backdrop-filter:blur(12px)}.brand img{width:145px;height:64px;object-fit:contain}nav{display:flex;gap:30px}nav a,.hero a,.contact a{text-decoration:none;color:inherit}#m{display:none;border:0;background:none;font-size:25px}.hero{height:100svh;min-height:650px;position:relative;background:#111;overflow:hidden}.heroimg{width:100%;height:100%;object-fit:cover}.shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(0,0,0,.82),rgba(0,0,0,.16))}.heroText{position:absolute;left:6vw;bottom:9vh;color:#fff;max-width:850px}.heroText small,.intro small,.services>small,.title small,.contact small{letter-spacing:.2em;color:#f3a600;font-weight:700}.hero h1{font-size:clamp(62px,9vw,145px);line-height:.82;margin:22px 0}.hero h1 em{font-style:normal;color:#f3a600}.hero p{font-size:19px;max-width:590px;line-height:1.6;color:#ddd}.hero a{display:inline-block;margin-top:25px;border-bottom:1px solid #f3a600;padding-bottom:8px}.intro{padding:120px 6vw;display:grid;grid-template-columns:1fr 1fr;gap:8vw}.intro h2,.title h2,.contact h2{font-size:clamp(46px,6vw,90px);line-height:.95;margin:20px 0}.intro p{font-size:21px;line-height:1.7}.muted{color:#777}.services{padding:100px 6vw;background:#111;color:white}.service{display:grid;grid-template-columns:70px 1fr 1fr;align-items:center;border-top:1px solid #444;padding:30px 0}.service b{color:#f3a600}.service h3{font-size:32px;margin:0}.service span{color:#999}.work{padding:110px 4vw}.title{padding-left:2vw}.gallery{display:grid;grid-template-columns:1fr 1fr;gap:22px}.gallery figure{margin:0}.gallery figure.wide{grid-column:span 2}.gallery img{width:100%;height:55vw;max-height:720px;object-fit:cover;display:block;background:#ddd}.gallery figure:not(.wide) img{height:42vw;max-height:610px}figcaption{display:flex;justify-content:space-between;padding:14px 2px 28px}figcaption span{color:#777}.contact{padding:130px 6vw;background:#e5e0d6}.contact p{font-size:18px}.contact a{display:inline-block;margin-top:25px;background:#f3a600;padding:18px 22px;font-weight:700}footer{padding:35px 6vw;display:flex;align-items:center;justify-content:space-between;background:#fff}footer img{width:150px}footer span{font-size:12px;color:#777}@media(max-width:760px){header{height:72px}.brand img{width:115px}#m{display:block}nav{display:none;position:absolute;top:72px;left:0;right:0;background:#f3f1eb;padding:28px 6vw;flex-direction:column}nav.open{display:flex}.heroText{left:7vw;right:7vw}.hero h1{font-size:18vw}.intro{grid-template-columns:1fr;padding:85px 7vw}.services{padding:80px 7vw}.service{grid-template-columns:45px 1fr}.service span{grid-column:2;margin-top:8px}.gallery{grid-template-columns:1fr}.gallery figure.wide{grid-column:auto}.gallery img,.gallery figure:not(.wide) img{height:72vw}figcaption{display:block}figcaption span{display:block;margin-top:5px}.work{padding:85px 5vw}.contact{padding:90px 7vw}.contact a{font-size:13px}footer{flex-direction:column;gap:15px}}
.contact-links{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:14px;
  max-width:950px;
  margin:38px auto 0;
}
.contact-card{
  display:flex!important;
  flex-direction:column;
  gap:7px;
  text-align:left;
  margin:0!important;
  padding:20px 22px!important;
  background:#111!important;
  color:#fff!important;
  border:1px solid #282828;
  transition:transform .2s ease,border-color .2s ease;
}
.contact-card:hover{transform:translateY(-3px);border-color:#f3a600}
.contact-card span{font-size:11px;letter-spacing:.16em;text-transform:uppercase;color:#f3a600}
.contact-card strong{font-size:16px;overflow-wrap:anywhere}
.wa-float{
  position:fixed;
  right:22px;
  bottom:22px;
  z-index:30;
  background:#111;
  color:#fff;
  text-decoration:none;
  font-size:13px;
  font-weight:700;
  padding:14px 18px;
  border:1px solid #f3a600;
  box-shadow:0 10px 30px rgba(0,0,0,.2);
}
.wa-float:hover{background:#f3a600;color:#111}
@media(max-width:760px){
  .contact-links{grid-template-columns:1fr}
  .contact-card{padding:18px!important}
  .wa-float{right:14px;bottom:14px;padding:12px 15px}
}
