
:root{--g:#62a92c;--g2:#4d8523;--dark:#0d120e;--panel:#161c17;--white:#fff;--muted:#c8cec7}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:Arial,Helvetica,sans-serif;background:#f2f4f0;color:#101510;line-height:1.5}
a{text-decoration:none;color:inherit}.wrap{width:min(1180px,calc(100% - 40px));margin:auto}
header{background:#0c110d;color:#fff;border-bottom:1px solid #2a322a;position:sticky;top:0;z-index:20}
.nav{height:78px;display:flex;align-items:center;justify-content:space-between;gap:20px}
.brand{font-weight:900;font-style:italic;font-size:30px;letter-spacing:-1px}.brand span{color:var(--g)}.brand small{display:block;font-size:9px;font-style:normal;letter-spacing:.5px;text-transform:uppercase}
.links{display:flex;gap:24px;align-items:center;text-transform:uppercase;font-size:11px;font-weight:800}.links a.active{color:var(--g);border-bottom:2px solid var(--g);padding:30px 0}
.btn{display:inline-flex;align-items:center;justify-content:center;background:var(--g);color:#fff;padding:13px 18px;border-radius:3px;text-transform:uppercase;font-size:11px;font-weight:900;border:1px solid var(--g)}
.btn.outline{background:transparent;border-color:#fff}
.area{background:linear-gradient(90deg,#4d8523,#69ae31,#4d8523);color:#fff;text-align:center;padding:7px;font-size:12px;font-weight:900;text-transform:uppercase}
.hero{background:linear-gradient(105deg,#0e140f,#1d281e);color:#fff;padding:78px 0 70px;border-bottom:5px solid var(--g)}
.hero h1{font-size:56px;line-height:1;text-transform:uppercase;margin:0 0 14px;letter-spacing:-2px}.hero h1 span{color:var(--g)}.hero p{max-width:720px;color:#dde2dc;font-size:16px;margin:0}
.section{padding:58px 0}.section.dark{background:#101610;color:#fff}.section h2{font-size:31px;text-transform:uppercase;margin:0 0 8px}.section h2:after{content:"";display:block;width:48px;height:3px;background:var(--g);margin-top:8px}.lead{max-width:800px;color:#657064;margin:0 0 30px}.dark .lead{color:#cad0c9}
.grid3{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.grid2{display:grid;grid-template-columns:repeat(2,1fr);gap:20px}
.card{background:#fff;border:1px solid #d8ddd6;border-top:4px solid var(--g);padding:26px;border-radius:4px;box-shadow:0 4px 14px rgba(0,0,0,.05)}.dark .card{background:#171e18;border-color:#33412f;box-shadow:none}
.card h3{text-transform:uppercase;font-size:17px;margin:0 0 9px}.card p,.card li{font-size:14px;color:#566056}.dark .card p,.dark .card li{color:#cbd1ca}.card ul{padding-left:18px}
.band{background:var(--g);color:#fff;padding:34px 0}.bandin{display:flex;align-items:center;justify-content:space-between;gap:22px}.band h2{margin:0;text-transform:uppercase}
.form{display:grid;grid-template-columns:1fr 1fr;gap:12px;max-width:900px}.form input,.form select,.form textarea{width:100%;padding:13px;background:#fff;border:1px solid #bbc2b8;border-radius:3px;font:inherit}.form textarea{grid-column:1/-1;min-height:140px;resize:vertical}.form .full{grid-column:1/-1}
footer{background:#0b0f0c;color:#c8cec7;padding:28px 0;text-align:center;font-size:11px}footer b{color:#fff}
@media(max-width:900px){.links{display:none}.grid3{grid-template-columns:1fr 1fr}.hero h1{font-size:46px}}
@media(max-width:600px){.grid3,.grid2,.form{grid-template-columns:1fr}.form textarea,.form .full{grid-column:auto}.hero{padding:55px 0}.hero h1{font-size:38px}.bandin{display:block}.band .btn{margin-top:15px}}

/* Proposal form usability improvements */
.form{align-items:stretch}
.form input,.form select,.form textarea{
  min-height:48px;
  font-size:15px;
  line-height:1.3;
  color:#151915;
  background:#fff;
  cursor:text;
}
.form select{cursor:pointer}
.form textarea{min-height:150px}
.form input:focus,.form select:focus,.form textarea:focus{
  outline:3px solid rgba(98,169,44,.22);
  border-color:#62a92c;
}
.uploadbox{
  border:2px dashed #8f9a8b;
  background:#f8faf7;
  padding:18px;
  border-radius:4px;
}
.uploadbox label{display:block;font-size:14px;margin-bottom:10px}
.uploadbox label span{display:block;font-size:12px;color:#687267;font-weight:400;margin-top:3px}
.uploadbox input[type=file]{min-height:auto;padding:8px 0;border:0;background:transparent;width:100%}
.formsubmit{min-height:48px;font-size:12px;cursor:pointer}

.datefield{display:flex;flex-direction:column;gap:5px}
.datefield label{font-size:12px;font-weight:700;color:#4e584d}
.datefield input{width:100%}

.datefield.inside-label{position:relative;display:block}
.datefield.inside-label input[type=date]{
  width:100%;
  padding-right:42px;
  cursor:pointer;
}
.datefield.inside-label label{
  position:absolute;
  left:13px;
  top:50%;
  transform:translateY(-50%);
  margin:0;
  color:#7b8478;
  font-size:15px;
  font-weight:400;
  pointer-events:none;
  background:#fff;
}
.datefield.inside-label input[type=date]:valid + label{display:none}
.datefield.inside-label input[type=date]::-webkit-calendar-picker-indicator{
  cursor:pointer;
  opacity:1;
}


/* Contact proposal form: same layout/order as homepage */
.contact-proposal-form{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:12px 14px;
  align-items:stretch;
}
.contact-proposal-form > input[name="property"]{grid-column:1;grid-row:1}
.contact-proposal-form > input[name="name"]{grid-column:2;grid-row:1}
.contact-proposal-form > input[name="email"]{grid-column:1;grid-row:2}
.contact-proposal-form > input[name="phone"]{grid-column:2;grid-row:2}
.contact-proposal-form > input[name="address"]{grid-column:1;grid-row:3}
.contact-proposal-form > select[name="property_type"]{grid-column:2;grid-row:3}
.contact-proposal-form > input[name="services"]{grid-column:1;grid-row:4}
.contact-proposal-form > .contact-date-wrap{grid-column:2;grid-row:4}
.contact-proposal-form > textarea[name="message"]{grid-column:1;grid-row:5}
.contact-proposal-form > .uploadbox{grid-column:2;grid-row:5}
.contact-proposal-form > .formsubmit{grid-column:1/-1;grid-row:6}

.contact-date-wrap{
  position:relative;
  width:100%;
  min-height:46px;
}
.contact-date-wrap input[type="date"]{
  width:100%;
  height:100%;
  min-height:46px;
  box-sizing:border-box;
  padding-right:42px;
  color:transparent;
  cursor:pointer;
}
.contact-date-wrap input[type="date"]:focus,
.contact-date-wrap input[type="date"].has-date{
  color:inherit;
}
.contact-date-placeholder{
  position:absolute;
  left:14px;
  right:42px;
  top:50%;
  transform:translateY(-50%);
  color:#777;
  pointer-events:none;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
}
.contact-date-wrap input[type="date"]:focus + .contact-date-placeholder,
.contact-date-wrap input[type="date"].has-date + .contact-date-placeholder{
  display:none;
}
.contact-date-wrap input[type="date"]::-webkit-calendar-picker-indicator{
  cursor:pointer;
  opacity:1;
}
.contact-proposal-form textarea{
  min-height:125px;
}
.contact-proposal-form .uploadbox{
  min-height:125px;
  margin:0;
}
.contact-proposal-form .formsubmit{
  width:100%;
}
@media (max-width:700px){
  .contact-proposal-form{grid-template-columns:1fr}
  .contact-proposal-form > *{grid-column:1!important;grid-row:auto!important}
}
