
:root{
  --cream:#f7f2e9;
  --paper:#fcfaf5;
  --ink:#29251f;
  --muted:#6f665b;
  --gold:#b78635;
  --deep:#211e19;
  --line:rgba(41,37,31,.16);
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;font-family:Georgia,"Times New Roman",serif;color:var(--ink);background:var(--paper)}
a{color:inherit;text-decoration:none}
header{position:sticky;top:0;z-index:30;background:rgba(252,250,245,.97);border-bottom:1px solid var(--line)}
.nav{max-width:1450px;margin:auto;padding:20px 34px;display:flex;align-items:center;justify-content:space-between;gap:24px}
.brand{font-family:Arial,Helvetica,sans-serif;letter-spacing:.18em;font-size:14px}
.navlinks{display:flex;gap:28px;flex-wrap:wrap;justify-content:flex-end}
.navlinks a{font-family:Arial,Helvetica,sans-serif;letter-spacing:.07em;font-size:13px}
.navlinks a:hover{color:var(--gold)}
.hero{min-height:670px;position:relative;display:flex;align-items:center;background:url("hero-pool.jpg") center/cover no-repeat}
.hero:before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(250,245,236,.95) 0%,rgba(250,245,236,.86) 33%,rgba(250,245,236,.18) 62%,rgba(0,0,0,.04))}
.hero-inner{position:relative;z-index:2;width:min(680px,90%);margin-left:clamp(30px,7vw,110px)}
.eyebrow,.kicker,.label{font-family:Arial,Helvetica,sans-serif;letter-spacing:.24em;text-transform:uppercase;color:var(--gold);font-size:12px}
h1{font-size:clamp(54px,6.2vw,92px);font-weight:400;line-height:.98;margin:20px 0 24px}
h2{font-size:clamp(38px,5vw,68px);font-weight:400;line-height:1.05;margin:12px 0 24px}
h3{font-size:27px;font-weight:400;margin:0 0 12px}
.hero p,.lead{font-size:20px;line-height:1.6;color:#514a42}
.cta{display:inline-block;margin-top:12px;padding:17px 28px;background:var(--gold);color:#fff;font-family:Arial,Helvetica,sans-serif;letter-spacing:.14em;font-size:12px}
.contact-strip{background:#fbf8f2;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.contact-wrap{max-width:1250px;margin:auto;display:grid;grid-template-columns:repeat(3,1fr)}
.contact-item{text-align:center;padding:30px 20px;display:flex;flex-direction:column;gap:9px}
.contact-item+.contact-item{border-left:1px solid var(--line)}
.contact-item strong{font-size:20px;font-weight:400}
.section{padding:84px 28px}
.wrap{max-width:1180px;margin:auto}
.center{text-align:center}
.grid-3{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}
.exp-card{background:#fff;border:1px solid var(--line);overflow:hidden}
.exp-card img{width:100%;height:245px;object-fit:cover;display:block}
.exp-card .body{padding:28px}
.exp-card p,.card p{color:#655d54;line-height:1.65}
.card{background:#fff;border:1px solid var(--line);padding:32px}
.soft{background:#f1eadf}
.dark{background:var(--deep);color:#f3ede2}
.dark .lead{color:#ddd3c3}
.split{display:grid;grid-template-columns:1fr 1fr;gap:56px;align-items:center}
.assistant-img{width:100%;height:430px;object-fit:cover;border:1px solid rgba(255,255,255,.18)}
.page-hero{min-height:380px;display:flex;align-items:center;justify-content:center;text-align:center;color:#fff;padding:50px 24px;background:linear-gradient(115deg,#2d2922,#7a6037 62%,#b78635)}
.page-hero h1{font-size:clamp(58px,8vw,96px);margin:0 0 15px}
.page-hero p{font-size:19px}
.form-shell{background:#fff;border:1px solid var(--line);padding:34px}
.form{display:grid;grid-template-columns:1fr 1fr;gap:18px}
.form .full{grid-column:1/-1}
label{display:block;margin:0 0 8px;font-family:Arial,Helvetica,sans-serif;font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:#655d54}
input,select,textarea{width:100%;padding:14px 15px;border:1px solid #cfc6b9;background:#fff;color:#29251f;font:16px Arial,Helvetica,sans-serif}
textarea{min-height:145px;resize:vertical}
button{background:var(--gold);color:#fff;border:0;padding:16px 22px;cursor:pointer;font-family:Arial,Helvetica,sans-serif;letter-spacing:.14em;font-size:12px}
.note{font-size:13px;line-height:1.55;color:#746b60}
footer{background:var(--deep);color:#ddd5ca;padding:34px 28px}
.footer-wrap{max-width:1180px;margin:auto;display:flex;justify-content:space-between;gap:20px;flex-wrap:wrap}
.small{font:12px Arial,Helvetica,sans-serif;letter-spacing:.07em;color:#bfb5a8}
@media(max-width:900px){
  .nav{padding:17px 18px;align-items:flex-start}
  .navlinks{gap:13px}
  .hero{min-height:600px;background-position:65% center}
  .hero:before{background:rgba(250,245,236,.82)}
  .hero-inner{margin:0 auto}
  .grid-3,.split,.form,.contact-wrap{grid-template-columns:1fr}
  .contact-item+.contact-item{border-left:0;border-top:1px solid var(--line)}
  .form .full{grid-column:auto}
}

/* Clean homepage hero fix */
.hero-clean{
  min-height:670px;
  display:grid;
  grid-template-columns:44% 56%;
  background:#fbf7ef;
}
.hero-clean .hero-copy{
  display:flex;
  align-items:center;
  padding:70px clamp(30px,6vw,95px);
  background:#fbf7ef;
}
.hero-clean .hero-photo{
  min-height:670px;
  background:url("hero-pool-clean.jpg") center/cover no-repeat;
}
@media(max-width:900px){
  .hero-clean{grid-template-columns:1fr}
  .hero-clean .hero-photo{min-height:390px;order:-1}
  .hero-clean .hero-copy{padding:48px 24px}
}
