/* Contact is part of the first screen, rather than the end of the page. */
.hero{height:auto;min-height:0;max-height:none}
.hero-layout{position:relative;display:grid;grid-template-columns:minmax(0,1.2fr) minmax(350px,.85fr);align-items:center;gap:5%;padding:42px 6% 90px}
.hero-content{padding:0;min-width:0;max-width:none}
.hero h1{font-size:clamp(48px,5.5vw,88px)}
.hero-content .eyebrow{margin-bottom:24px}
.hero-services{margin-top:28px}
.hero-services span{font-size:13px}
.hero-actions{gap:12px}
.hero-actions .button{font-size:14px;padding:14px 18px;gap:10px}
.hero-inquiry{min-width:0;scroll-margin-top:110px;color:var(--ink)}
.hero-inquiry #inquiry{padding:26px 28px;box-shadow:0 14px 40px #0003}
.hero-inquiry #inquiry>.eyebrow{font-size:12px;margin-bottom:14px;line-height:1.5}
.hero-inquiry .contact-intents{margin-bottom:14px;gap:8px}
.hero-inquiry .contact-intents button{flex:1;min-height:44px;padding:8px;font-size:14px}
.hero-inquiry form label{font-size:14px;margin:12px 0 4px}
.hero-inquiry input,.hero-inquiry textarea{font-size:16px;padding:9px 0}
.hero-inquiry textarea{min-height:70px}
.hero-inquiry form .button{margin-top:18px;min-height:48px;justify-content:center;font-size:15px;padding:12px 16px;gap:0}
.hero-inquiry .form-note,.hero-inquiry #form-status{font-size:12px;line-height:1.5;margin:12px 0 0;color:var(--muted)}
.hero-bottom{padding-bottom:0;bottom:24px}
.contact-return{justify-self:end;align-self:center;gap:0}
@media(min-width:761px) and (max-width:1050px){
  .hero-layout{grid-template-columns:minmax(0,1fr) minmax(320px,1fr);gap:28px;padding:36px 4% 80px}
  .hero h1{font-size:52px}
  .hero-actions{flex-direction:column;align-items:stretch}
  .hero-actions .button{justify-content:center}
  .hero-brand{font-size:13px}
  .hero-services{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
  .hero-services a{border:1px solid #ffffff40!important;padding:10px}
  .hero-services svg{width:26px;height:26px}
}

/* Warm paper, fine gold details, and a quieter editorial hierarchy. */
.hero-layout{max-width:1600px;margin:auto;gap:6%;padding-top:48px;padding-bottom:82px}
.hero-inquiry #inquiry{background:#fcfbf7;border:1px solid #e7e1d3;border-top:2px solid #b59b55;border-radius:3px;padding:32px;box-shadow:0 16px 44px #041a2929}
.inquiry-heading{margin-bottom:22px}
.hero-inquiry .inquiry-heading .eyebrow{font-size:10px;letter-spacing:2.1px;margin:0 0 12px;color:#796326}
.hero-inquiry .inquiry-heading h2{font-size:clamp(30px,2.7vw,40px);line-height:1.14;letter-spacing:-.8px;color:#102f43;margin:0}
.hero-inquiry .inquiry-heading h2 em{color:#8b7136}
.hero-inquiry .inquiry-intro{font-size:14px;line-height:1.65;color:#637078;margin:12px 0 0;max-width:350px}
.hero-inquiry .contact-intents{gap:0;border:1px solid #d8d3c8;padding:4px;background:#f0eee7;border-radius:3px;margin-bottom:20px}
.hero-inquiry .contact-intents button{min-height:42px;border:0;background:transparent;font-size:13px;border-radius:2px;transition:background .2s,color .2s}
.hero-inquiry .contact-intents button:hover{background:#e5e1d5;color:#102f43}
.hero-inquiry .contact-intents button[aria-pressed=true]{background:#103e58;color:white;box-shadow:0 2px 6px #102f4315}
.inquiry-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;margin-bottom:14px}
.inquiry-field{min-width:0}
.hero-inquiry form label{font-size:12px;letter-spacing:.25px;color:#425661;margin:0 0 5px;line-height:1.5}
.hero-inquiry input,.hero-inquiry textarea{background:transparent;border-bottom-color:#b9c1c3;color:#102f43;font-size:16px;line-height:1.5;padding:10px 0}
.hero-inquiry input::placeholder,.hero-inquiry textarea::placeholder{color:#859097;opacity:1;font-size:14px}
.hero-inquiry input:focus,.hero-inquiry textarea:focus{background:#f2f1eb;border-bottom-color:#aa8e4b;outline-offset:3px}
.hero-inquiry textarea{min-height:76px}
.hero-inquiry form .button{background:#10374b;border-radius:2px;font-size:14px;letter-spacing:.3px;margin-top:20px;min-height:48px}
.hero-inquiry form .button:hover{background:#174c65;transform:none;box-shadow:none}
.hero-inquiry .form-note{text-align:center;font-size:11px;margin-top:16px;line-height:1.6}
.hero-inquiry .form-note a{color:#103e58;text-decoration:underline;text-underline-offset:3px;white-space:nowrap}
.hero-inquiry #form-status:empty{display:none}
.hero-actions .hero-search{background:#ffffff12;border-color:#ffffff80;color:#fff}
.hero-actions .hero-search:hover{background:#ffffff24}
@media(min-width:761px) and (max-width:1050px){.hero-inquiry #inquiry{padding:26px 24px}.inquiry-fields{grid-template-columns:minmax(0,1fr);gap:14px}}
@media(max-width:760px){
  .hero-layout{gap:0;padding:24px 6% 28px}
  .hero-inquiry #inquiry{padding:26px 22px}
  .hero-inquiry .inquiry-heading h2{font-size:32px}
  .inquiry-heading{margin-bottom:18px}
  .hero-inquiry .inquiry-intro{font-size:13px;margin-top:10px}
  .inquiry-fields{grid-template-columns:minmax(0,1fr);gap:14px}
  .hero-inquiry .contact-intents{margin-bottom:18px}
  .hero-inquiry .form-note{font-size:11px}
}
@media(max-width:760px){
  .hero-layout{display:flex;flex-direction:column;align-items:stretch;gap:0;padding:24px 6% 28px}
  .hero-content{display:contents}
  .hero-content>.eyebrow{order:0;margin-bottom:12px;font-size:10px}
  .hero-content>h1{order:1;font-size:clamp(36px,10vw,58px)}
  .hero-content>.hero-brand{order:2;font-size:11px;margin:12px 0 20px}
  .hero-rule{display:none}
  .hero-inquiry{order:3;scroll-margin-top:90px}
  .hero-inquiry #inquiry{padding:22px 18px}
  .hero-content>.hero-location{order:4;margin:24px 0 0}
  .hero-actions{order:5;margin-top:16px}
  .hero-services{order:6;margin-top:20px}
  .hero-bottom{position:relative;inset:auto;padding:0 6% 24px}
  .contact-return{justify-self:stretch;justify-content:center;width:100%}
}

/* A soft glass surface lets the estate imagery carry through the form. */
.hero-inquiry #inquiry{
  background:linear-gradient(135deg,rgba(250,253,253,.84),rgba(235,244,246,.76));
  backdrop-filter:blur(24px) saturate(110%);
  -webkit-backdrop-filter:blur(24px) saturate(110%);
  border:1px solid rgba(255,255,255,.58);
  border-radius:14px;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.55),0 12px 36px rgba(5,25,37,.12);
}
.hero-inquiry .inquiry-heading .eyebrow{color:#63746f;font-weight:500;letter-spacing:1.8px}
.hero-inquiry .inquiry-heading h2{color:#284b5b}
.hero-inquiry .inquiry-heading h2 em{color:#6d8078}
.hero-inquiry .inquiry-intro{color:#526872}
.hero-inquiry .contact-intents{background:rgba(255,255,255,.22);border:1px solid rgba(77,107,119,.16);border-radius:8px;padding:4px}
.hero-inquiry .contact-intents button{border-radius:5px;color:#345565;background:transparent;font-weight:400}
.hero-inquiry .contact-intents button:hover{background:rgba(255,255,255,.42);color:#234758}
.hero-inquiry .contact-intents button[aria-pressed=true]{background:rgba(61,100,120,.16);color:#234758;box-shadow:inset 0 0 0 1px rgba(61,100,120,.18)}
.hero-inquiry form label{color:#3d5967}
.hero-inquiry input,.hero-inquiry textarea{color:#264958;border-bottom-color:rgba(65,94,107,.3)}
.hero-inquiry input::placeholder,.hero-inquiry textarea::placeholder{color:#627781}
.hero-inquiry input:focus,.hero-inquiry textarea:focus{background:rgba(255,255,255,.2);border-bottom-color:#658795;outline:2px solid #658795}
.hero-inquiry form .button{background:rgba(58,94,111,.88);border:1px solid rgba(255,255,255,.3);border-radius:7px;box-shadow:0 4px 14px rgba(27,61,76,.08);font-weight:400}
.hero-inquiry form .button:hover{background:rgba(48,84,101,.95);box-shadow:0 4px 14px rgba(27,61,76,.1)}
.hero-inquiry .form-note,.hero-inquiry #form-status{color:#506975}
.hero-inquiry .form-note a{color:#345565}
@supports not ((backdrop-filter:blur(1px)) or (-webkit-backdrop-filter:blur(1px))){.hero-inquiry #inquiry{background:rgba(244,249,250,.94)}}
@media(prefers-reduced-transparency:reduce){.hero-inquiry #inquiry{background:#eef4f5;backdrop-filter:none;-webkit-backdrop-filter:none}}

/* Readable, evenly sized service cards on phones. */
@media(max-width:760px){
 .hero-services{gap:12px;background:transparent;border:0;box-shadow:none;align-items:stretch}
 .hero-services a{
  min-height:104px;padding:16px 10px;justify-content:center;gap:10px;
  color:#284b5b;background:rgba(248,250,247,.94);
  border:1px solid rgba(255,255,255,.65)!important;border-radius:10px;
  box-shadow:0 4px 14px rgba(5,25,37,.1);
 }
 .hero-services svg{width:28px;height:28px;color:#796638;flex-shrink:0}
 .hero-services span{font-size:14px;line-height:1.35;letter-spacing:0;font-weight:500;color:inherit}
 .hero-services a:hover,.hero-services a:focus-visible,.hero-services a:active{background:#e6efec;color:#284b5b;transform:none}
 .hero-services a:focus-visible{outline:2px solid #b59b55;outline-offset:3px}
}
