/* ===== Gulet Point — Contact page (V3 luxury) ===== */
.gp-contact{
  --sea:#0B1E26; --sea2:#0E2730; --gold:#C2A35B; --goldsoft:#D8C08A; --gold2:#A88947;
  --mist:#EDE7DA; --mist2:#F6F2EA;
  --disp:'Marcellus',Georgia,serif; --ui:'Jost',system-ui,sans-serif;
  font-family:var(--ui); color:var(--sea); line-height:1.7;
}
.gp-contact *{ box-sizing:border-box; }
.gp-contact h1,.gp-contact h3{ font-family:var(--disp); font-weight:400; color:var(--sea) !important; margin:0; }

.page-template-gp-contact .content-container, .page-template-gp-contact #primary, .page-template-gp-contact .entry-content,
.page-template-gp-contact .content-area, .page-template-gp-contact .site-container, .page-template-gp-contact .site-content{
  max-width:100% !important; width:100% !important; padding:0 !important; margin:0 !important;
}

.gp-eyebrow{ display:inline-flex; align-items:center; gap:12px; font-size:10.5px; letter-spacing:4px; text-transform:uppercase; color:var(--gold); font-weight:400; margin:0 0 14px; }
.gp-eyebrow::before{ content:""; width:28px; height:1px; background:var(--gold); }
.gp-eyebrow.center{ justify-content:center; }
.gp-eyebrow.center::after{ content:""; width:28px; height:1px; background:var(--gold); }
.gp-eyebrow.soft{ color:var(--goldsoft); }
.gp-eyebrow.soft::before,.gp-eyebrow.soft::after{ background:var(--goldsoft); }

/* Hero — no photo, quiet solid band (this page doesn't need a cinematic image) */
/* Light/short header band — matches Request a Charter/Charter Yachts/hub pages. */
.gp-contact-hero{ background:var(--mist2); padding:36px 40px 30px; text-align:center; }
.gp-contact-hero h1{ font-size:38px; color:var(--sea); margin-top:8px; }
.gp-contact-hero .sub{ font-size:13px; color:#5a6b6e; font-weight:300; margin-top:10px; }

/* Form + info */
.gp-contact-body{ padding:50px 40px; background:#fff; display:grid; grid-template-columns:1.3fr 1fr; gap:40px; max-width:1000px; margin:0 auto; }

/* The form shares .gp-rac-form-wrap with the Request a Charter page (same input styling),
   but there it's capped at max-width:720px and centered — here it must fill its grid column instead. */
.gp-contact-body .gp-contact-form.gp-rac-form-wrap{ max-width:none !important; width:100% !important; margin:0 !important; }
.gp-contact-body .gp-contact-form .fluentform,
.gp-contact-body .gp-contact-form .ff-el-form-control{ width:100% !important; }

.gp-contact-info{ background:var(--mist2); border:1px solid var(--mist); padding:30px; align-self:start; }
.gp-contact-info h3{ font-size:20px; margin-bottom:16px; }
.gp-contact-info p{ font-size:13px; color:#42514f; margin:0 0 14px; font-weight:300; }
.gp-contact-info a{ color:var(--sea); text-decoration:none; }

/* Responsive */
@media (max-width:900px){
  .gp-contact-hero h1{ font-size:28px; }
  .gp-contact-body{ grid-template-columns:1fr; padding:40px 20px; }
}

/* Thank-you state — same nested white/cream panel as the Request a Charter confirmation */
.gp-contact-body .gp-contact-form .ff-message-success,
.gp-contact-body .gp-contact-form .ff_form_success{
  background:var(--mist2) !important; border:1px solid var(--mist) !important; border-radius:0 !important;
  margin:18px 18px 28px !important; padding:44px 36px !important; text-align:center !important;
  box-shadow:0 0 0 18px #fff, 0 0 0 19px #D3D6E3, 0 6px 16px 19px rgba(11,30,38,.04) !important;
  color:#5a6b6e !important; font-family:var(--ui) !important; font-size:14.5px !important; font-weight:300 !important; line-height:1.8 !important;
}
.gp-contact-body .gp-contact-form .ff-message-success h1,
.gp-contact-body .gp-contact-form .ff-message-success h2,
.gp-contact-body .gp-contact-form .ff-message-success h3,
.gp-contact-body .gp-contact-form .ff-message-success h4{
  font-family:var(--disp) !important; font-weight:400 !important; font-size:28px !important; color:var(--sea) !important; margin:0 0 12px !important; letter-spacing:0 !important; text-transform:none !important;
}
.gp-contact-body .gp-contact-form .ff-message-success p{ margin:0 auto !important; max-width:440px; color:#5a6b6e !important; font-size:14.5px !important; }

/* Address card lines up with the form fields: top edge = first input (below its label), bottom edge = message box. */
.gp-contact-body .gp-contact-info{ margin-top:30px; padding-top:24px; padding-bottom:20px; }
.gp-contact-info h3{ margin-bottom:14px; }
@media (max-width:900px){ .gp-contact-body .gp-contact-info{ margin-top:0; } }
