/* ================================================================
   CEYBREEZ CONTACT V4.11 FINAL POLISH
   This is an override layer. Load AFTER contact.css and
   ceybreez-public-v3.css.
   ================================================================ */

:root{
  --contact-ink:#073f37;
  --contact-green:#07584d;
  --contact-green-2:#0c7464;
  --contact-cream:#f6f0e6;
  --contact-card:#fffdf9;
  --contact-gold:#d8ad55;
  --contact-text:#294b43;
  --contact-muted:#6b7873;
  --contact-line:rgba(7,63,55,.11);
}

body[data-page="contact"]{
  background:var(--contact-cream)!important;
  color:var(--contact-text)!important;
}

/* CSS SECTION: CONTACT HERO */
.contact-v4-hero{
  min-height:70vh;
  padding:145px 5.5vw 68px;
  display:flex;
  align-items:flex-end;
  color:#fff;
  background:
    linear-gradient(90deg,rgba(3,37,32,.93),rgba(3,37,32,.62) 54%,rgba(3,37,32,.2)),
    url('images/nature.jpg') center/cover no-repeat;
}
.contact-v4-hero-inner{
  width:min(1260px,100%);
  margin:auto;
  display:grid;
  grid-template-columns:minmax(0,1.4fr) minmax(260px,.52fr);
  gap:64px;
  align-items:end;
}
.contact-v4-eyebrow,
.contact-info-kicker,
.contact-form-kicker,
.contact-v4-final>div>span{
  display:inline-flex;
  align-items:center;
  gap:10px;
  font:700 10px/1 'DM Sans',sans-serif;
  letter-spacing:.18em;
  text-transform:uppercase;
}
.contact-v4-eyebrow{color:#efca78;margin-bottom:18px}
.contact-v4-eyebrow:before,
.contact-info-kicker:before,
.contact-form-kicker:before,
.contact-v4-final>div>span:before{
  content:"";
  width:28px;
  height:1px;
  background:currentColor;
}
.contact-v4-hero h1{
  margin:0 0 22px;
  max-width:850px;
  color:#fff!important;
  font:600 clamp(52px,5.8vw,84px)/.96 'Cormorant Garamond',serif!important;
  letter-spacing:-.04em;
}
.contact-v4-hero p{
  max-width:690px;
  margin:0;
  color:rgba(255,255,255,.82)!important;
  font:400 15px/1.75 'DM Sans',sans-serif!important;
}
.contact-v4-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:28px}
.contact-v4-actions a{
  min-height:48px;
  padding:0 21px;
  border-radius:999px;
  display:inline-flex;
  align-items:center;
  gap:10px;
  background:#fff;
  color:var(--contact-ink)!important;
  font:700 12px 'DM Sans',sans-serif;
  text-decoration:none;
}
.contact-v4-actions a.ghost{
  background:rgba(255,255,255,.08);
  border:1px solid rgba(255,255,255,.3);
  color:#fff!important;
}
.contact-v4-hero aside{
  padding-left:28px;
  border-left:1px solid rgba(255,255,255,.24);
}
.contact-v4-hero aside>span{font:700 9px 'DM Sans',sans-serif;letter-spacing:.18em;color:#efca78}
.contact-v4-hero aside strong{display:block;margin:14px 0 12px;color:#fff;font:600 37px/1.02 'Cormorant Garamond',serif}
.contact-v4-hero aside p{max-width:260px;font-size:12.5px!important;color:rgba(255,255,255,.7)!important}

/* CSS SECTION: PLANNING FLOW */
.contact-v4-flow{
  width:min(1180px,calc(100% - 48px));
  margin:64px auto 0;
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:0;
  padding-bottom:48px;
  border-top:1px solid var(--contact-line);
}
.contact-v4-flow article{padding:24px 34px 0 0}
.contact-v4-flow strong{display:block;margin-bottom:16px;color:#a77323;font:700 10px 'DM Sans',sans-serif}
.contact-v4-flow span{display:block;margin-bottom:6px;color:var(--contact-ink);font:600 24px 'Cormorant Garamond',serif}
.contact-v4-flow p{margin:0;max-width:300px;color:var(--contact-muted)!important;font:400 12.5px/1.65 'DM Sans',sans-serif!important}

/* CSS SECTION: MAIN CONTACT AREA */
.contact-page{
  min-height:auto!important;
  padding:28px 24px 70px!important;
  background:var(--contact-cream)!important;
}
.contact-container{
  width:min(1180px,100%)!important;
  max-width:none!important;
  margin:auto!important;
  display:grid!important;
  grid-template-columns:minmax(360px,.86fr) minmax(0,1.14fr)!important;
  gap:18px!important;
  align-items:stretch!important;
}
.contact-info,
.contact-form-box{
  width:auto!important;
  margin:0!important;
  border-radius:26px!important;
  overflow:hidden;
}

/* CSS SECTION: CONTACT INFO CARD */
.contact-info{
  padding:42px!important;
  background:linear-gradient(160deg,#074b42,#063d36 70%,#052f2a)!important;
  color:#fff!important;
  position:relative;
}
.contact-info:after{
  content:"";
  position:absolute;
  width:220px;
  height:220px;
  right:-95px;
  bottom:-90px;
  border-radius:50%;
  background:rgba(255,255,255,.035);
}
.contact-logo{width:142px!important;height:auto!important;margin:0 0 34px!important;position:relative;z-index:1}
.contact-info-kicker{color:#e6c16d;margin-bottom:16px;position:relative;z-index:1}
.contact-info h1{
  margin:0 0 18px!important;
  max-width:440px;
  color:#fff!important;
  font:600 46px/.98 'Cormorant Garamond',serif!important;
  letter-spacing:-.025em!important;
  position:relative;
  z-index:1;
}
.contact-info-lead{
  max-width:470px!important;
  margin:0!important;
  color:rgba(255,255,255,.76)!important;
  font:400 13.5px/1.72 'DM Sans',sans-serif!important;
  position:relative;
  z-index:1;
}
.contact-benefits{display:grid;gap:10px;margin:30px 0;position:relative;z-index:1}
.contact-benefits>div{
  display:grid;
  grid-template-columns:38px 1fr;
  gap:12px;
  align-items:start;
  padding:13px 14px;
  border:1px solid rgba(255,255,255,.1);
  border-radius:14px;
  background:rgba(255,255,255,.055);
}
.contact-benefits i{
  width:34px;
  height:34px;
  border-radius:50%;
  display:grid;
  place-items:center;
  background:rgba(255,255,255,.1);
  color:#efca78;
  font-size:13px;
}
.contact-benefits span{display:grid;gap:3px}
.contact-benefits strong{color:#fff;font:600 12.5px 'DM Sans',sans-serif}
.contact-benefits small{color:rgba(255,255,255,.62);font:400 11px/1.45 'DM Sans',sans-serif}
.contact-direct-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px;position:relative;z-index:1}
.contact-direct{
  min-width:0;
  padding:13px;
  display:flex;
  align-items:center;
  gap:10px;
  border:1px solid rgba(255,255,255,.1);
  border-radius:14px;
  background:rgba(255,255,255,.06);
  text-decoration:none!important;
}
.contact-direct>i{color:#efca78;font-size:17px}
.contact-direct span{min-width:0;display:grid;gap:2px}
.contact-direct small{color:rgba(255,255,255,.58);font:500 9px 'DM Sans',sans-serif;text-transform:uppercase;letter-spacing:.08em}
.contact-direct strong{overflow:hidden;text-overflow:ellipsis;color:#fff;font:600 10.5px 'DM Sans',sans-serif;white-space:nowrap}
.social-links{display:flex!important;gap:8px!important;margin-top:22px!important;position:relative;z-index:1}
.social-btn{
  width:38px!important;
  height:38px!important;
  display:grid!important;
  place-items:center!important;
  border:1px solid rgba(255,255,255,.12)!important;
  border-radius:50%!important;
  background:rgba(255,255,255,.08)!important;
  color:#fff!important;
  font-size:14px!important;
  text-decoration:none!important;
}

/* CSS SECTION: CONTACT FORM CARD */
.contact-form-box{
  padding:42px!important;
  background:var(--contact-card)!important;
  color:var(--contact-text)!important;
  border:1px solid rgba(7,63,55,.08)!important;
  box-shadow:0 18px 48px rgba(25,57,50,.07)!important;
}
.contact-form-kicker{color:#aa7727;margin-bottom:14px}
.contact-form-box h2{
  margin:0 0 10px!important;
  color:var(--contact-ink)!important;
  font:600 45px/.98 'Cormorant Garamond',serif!important;
  letter-spacing:-.025em!important;
}
.contact-form-intro{
  max-width:560px;
  margin:0 0 28px;
  color:var(--contact-muted)!important;
  font:400 12.5px/1.65 'DM Sans',sans-serif!important;
}
.contact-form-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:17px 14px;
}
.contact-field{min-width:0;display:grid;gap:7px}
.contact-field-full{grid-column:1/-1}
.contact-field-message{grid-column:2}
.contact-form-box label{
  margin:0!important;
  color:#284b43!important;
  font:700 10.5px/1.25 'DM Sans',sans-serif!important;
  letter-spacing:.01em!important;
}
.contact-form-box input:not([type="checkbox"]):not([type="radio"]),
.contact-form-box select,
.contact-form-box textarea{
  width:100%!important;
  box-sizing:border-box!important;
  margin:0!important;
  border:1px solid #ddd9d0!important;
  border-radius:11px!important;
  background:#faf8f4!important;
  color:#173c35!important;
  box-shadow:none!important;
  font:500 12px 'DM Sans',sans-serif!important;
}
.contact-form-box input:not([type="checkbox"]):not([type="radio"]),
.contact-form-box select{min-height:47px!important;padding:0 13px!important}
.contact-form-box textarea{min-height:104px!important;padding:13px!important;resize:vertical}
.contact-form-box input::placeholder,
.contact-form-box textarea::placeholder{color:#8c9491!important;opacity:1!important}
.contact-form-box select option{color:#173c35!important;background:#fff!important}
.contact-form-box input:focus,
.contact-form-box select:focus,
.contact-form-box textarea:focus{
  outline:none!important;
  border-color:#0b7566!important;
  box-shadow:0 0 0 3px rgba(11,117,102,.08)!important;
}

/* Intl telephone input */
.contact-form-box .iti{width:100%!important;display:block!important}
.contact-form-box .iti input{padding-left:92px!important}
.contact-form-box .iti__selected-country{background:transparent!important}
.contact-form-box .iti__country-list{z-index:20!important;color:#173c35!important;font-family:'DM Sans',sans-serif!important}

/* CSS SECTION: EXPERIENCE CHOICES */
.checkbox-group{
  display:grid!important;
  grid-template-columns:repeat(4,minmax(0,1fr))!important;
  gap:9px!important;
  margin:0!important;
}
.checkbox-group label{
  min-height:46px;
  padding:0 12px!important;
  display:flex!important;
  align-items:center!important;
  gap:9px!important;
  border:1px solid #e3ded5!important;
  border-radius:11px!important;
  background:#f7f3ed!important;
  color:#31554c!important;
  cursor:pointer;
  font:600 11px 'DM Sans',sans-serif!important;
}
.checkbox-group label:has(input:checked){
  border-color:#0d7566!important;
  background:#eef8f5!important;
  color:#07584d!important;
}
.checkbox-group input[type="checkbox"]{
  width:16px!important;
  height:16px!important;
  min-width:16px!important;
  min-height:16px!important;
  margin:0!important;
  padding:0!important;
  flex:0 0 16px!important;
  appearance:auto!important;
  accent-color:#0b7566!important;
  box-shadow:none!important;
}

/* CSS SECTION: DATE FIELDS */
.date-row{display:grid!important;grid-template-columns:1fr 1fr!important;gap:10px!important;margin:0!important}
.date-field{display:grid;gap:5px}
.date-field>span{color:#77847f;font:600 9px 'DM Sans',sans-serif;text-transform:uppercase;letter-spacing:.06em}
.date-row input[type="date"]{width:100%!important}

/* CSS SECTION: SUBMIT */
.contact-submit{
  width:100%!important;
  min-height:50px!important;
  margin-top:18px!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  gap:10px!important;
  border:0!important;
  border-radius:999px!important;
  background:var(--contact-green)!important;
  color:#fff!important;
  font:700 12px 'DM Sans',sans-serif!important;
  cursor:pointer;
  transition:transform .2s ease,background .2s ease!important;
}
.contact-submit:hover{background:#064b42!important;transform:translateY(-1px)}
.contact-form-note{margin:10px 0 0!important;text-align:center;color:#7a8581!important;font:500 9.5px/1.45 'DM Sans',sans-serif!important}
.contact-form-note i{margin-right:5px;color:#0b7566}

/* CSS SECTION: FINAL CTA */
.contact-v4-final{
  width:min(1180px,calc(100% - 48px));
  margin:0 auto 72px;
  padding:34px 38px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:32px;
  border-radius:22px;
  background:linear-gradient(120deg,#efd48f,#f5e8c7);
  color:var(--contact-ink);
}
.contact-v4-final>div>span{color:#9d7029;margin-bottom:10px}
.contact-v4-final h2{margin:0 0 6px;color:var(--contact-ink)!important;font:600 35px/1.02 'Cormorant Garamond',serif!important}
.contact-v4-final p{margin:0;max-width:680px;color:#5b6b65!important;font:400 12px/1.6 'DM Sans',sans-serif!important}
.contact-v4-final>a{
  flex:0 0 auto;
  min-height:44px;
  padding:0 18px;
  display:inline-flex;
  align-items:center;
  gap:9px;
  border-radius:999px;
  background:var(--contact-ink);
  color:#fff!important;
  text-decoration:none;
  font:700 11px 'DM Sans',sans-serif;
}

/* Keep footer spacing consistent */
body[data-page="contact"] .site-footer{margin-top:0!important}

@media(max-width:980px){
  .contact-v4-hero{min-height:auto;padding:132px 24px 58px}
  .contact-v4-hero-inner{grid-template-columns:1fr;gap:36px}
  .contact-v4-hero aside{max-width:460px}
  .contact-v4-flow{grid-template-columns:1fr 1fr}
  .contact-container{grid-template-columns:1fr!important}
  .contact-info,.contact-form-box{padding:34px!important}
}

@media(max-width:700px){
  .contact-v4-hero{padding:116px 17px 44px}
  .contact-v4-hero h1{font-size:48px!important}
  .contact-v4-actions a{width:100%;justify-content:center}
  .contact-v4-flow{width:calc(100% - 30px);grid-template-columns:1fr;margin-top:48px;padding-bottom:36px}
  .contact-v4-flow article{padding-right:0}
  .contact-page{padding:20px 15px 54px!important}
  .contact-info,.contact-form-box{padding:25px!important;border-radius:20px!important}
  .contact-info h1,.contact-form-box h2{font-size:38px!important}
  .contact-direct-grid{grid-template-columns:1fr}
  .contact-form-grid{grid-template-columns:1fr}
  .contact-field-full,.contact-field-message{grid-column:1}
  .checkbox-group{grid-template-columns:1fr 1fr!important}
  .date-row{grid-template-columns:1fr!important}
  .contact-v4-final{width:calc(100% - 30px);margin-bottom:54px;padding:28px 24px;display:grid}
  .contact-v4-final h2{font-size:31px!important}
  .contact-v4-final>a{width:100%;justify-content:center}
}

@media(max-width:420px){
  .checkbox-group{grid-template-columns:1fr!important}
}
