/* Kelrosa Health Contact Us — v1.7.01 */
.kelrosa-page-slug-contact-us,.kelrosa-page-slug-contact{--kr-page-accent:var(--kr-brand);--kr-page-soft:var(--kr-aqua-2)}
.kr-contact-page{overflow:hidden;background:#fff}
.kr-contact-page p{margin:0}

/* Compact contact hero */
.kr-contact-hero{padding:clamp(74px,6.6vw,108px) 0 clamp(82px,7vw,116px);background:#fbfcf9}
.kr-contact-hero__grid{display:grid;grid-template-columns:minmax(0,.92fr) minmax(0,1.08fr);gap:clamp(58px,7vw,108px);align-items:center}
.kr-contact-hero__copy{max-width:650px}
.kr-contact-hero__copy .kr-kicker{margin-bottom:20px;font-weight:800;letter-spacing:.15em}
.kr-contact-hero__copy h1{max-width:640px;margin:0;color:var(--kr-ink);font-size:clamp(50px,4vw,68px);line-height:1;letter-spacing:-.045em}
.kr-contact-hero__lead{max-width:610px;margin-top:25px!important;color:var(--kr-slate);font-size:18px;line-height:1.68}
.kr-contact-hero__actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:31px}
.kr-contact-hero__actions .button span{margin-left:6px}
.kr-contact-hero__visual{margin:0;overflow:hidden;border-radius:22px;background:#edf2e9;box-shadow:0 28px 68px rgba(23,29,41,.08)}
.kr-contact-hero__visual img{display:block;width:100%;height:clamp(400px,33vw,520px);object-fit:cover}

/* Direct channels */
.kr-contact-channels{padding:clamp(84px,7vw,116px) 0;background:#fff}
.kr-contact-channels__head{display:grid;grid-template-columns:minmax(0,.72fr) minmax(0,1.28fr);gap:50px;align-items:end;margin-bottom:46px}
.kr-contact-channels__head .kr-kicker{font-weight:800;letter-spacing:.15em}
.kr-contact-channels__head h2{max-width:760px;margin:0}
.kr-contact-channels__grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border-top:1px solid var(--kr-line);border-bottom:1px solid var(--kr-line)}
.kr-contact-channel{display:flex;min-width:0;min-height:176px;flex-direction:column;justify-content:space-between;padding:30px 32px;color:var(--kr-ink);text-decoration:none;transition:background-color .2s ease}
.kr-contact-channel+.kr-contact-channel{border-left:1px solid var(--kr-line)}
.kr-contact-channel:is(:hover,:focus-visible){background:#f7faf4;outline:0}
.kr-contact-channel__label{color:var(--kr-primary);font-size:10px;font-weight:800;letter-spacing:.14em}
.kr-contact-channel strong{margin-top:18px;font-size:20px;line-height:1.28;overflow-wrap:anywhere}
.kr-contact-channel__action{margin-top:26px;color:var(--kr-primary);font-size:14px;font-weight:760}

/* Simple general enquiry form */
.kr-contact-form-section{padding:clamp(102px,8vw,138px) 0;background:var(--kr-aqua-2)}
.kr-contact-form-layout{display:grid;grid-template-columns:minmax(280px,.72fr) minmax(0,1.28fr);gap:clamp(68px,7.5vw,118px);align-items:start;max-width:1240px;margin-inline:auto}
.kr-contact-form-copy{max-width:470px;padding-top:8px}
.kr-contact-form-copy .kr-kicker{margin-bottom:16px;font-weight:800;letter-spacing:.15em}
.kr-contact-form-copy h2{margin:0;max-width:460px}
.kr-contact-form-copy>p:not(.kr-kicker){margin-top:20px;color:var(--kr-slate);font-size:17px;line-height:1.68}
.kr-contact-form-note{margin-top:34px;padding-top:24px;border-top:1px solid #d8e4d4}
.kr-contact-form-note strong{display:block;color:var(--kr-ink);font-size:15px}
.kr-contact-form-note p{max-width:430px;margin-top:8px!important;color:var(--kr-slate);font-size:14px;line-height:1.58}
.kr-contact-form-note .text-link{display:inline-block;margin-top:14px}
.kr-contact-form-card{padding:clamp(34px,4vw,52px);border:1px solid #dfe7dc;border-radius:18px;background:#fff;box-shadow:0 20px 52px rgba(23,29,41,.055)}
.kr-contact-form-card__head{margin-bottom:30px;padding-bottom:24px;border-bottom:1px solid var(--kr-line)}
.kr-contact-form-card__head h3{margin:0;color:var(--kr-ink);font-size:27px!important;line-height:1.1!important}
.kr-contact-form-card__head p{max-width:540px;margin-top:9px!important;color:var(--kr-slate);font-size:14px;line-height:1.55}
.kr-contact-form-card .fluentform{margin:0}
.kr-contact-form-card .fluentform .ff-el-group{margin-bottom:19px}
.kr-contact-form-card .fluentform label{display:block;margin-bottom:8px;color:var(--kr-ink);font-size:14px;font-weight:700}
.kr-contact-form-card .fluentform input:not([type=checkbox]):not([type=radio]):not([type=submit]),
.kr-contact-form-card .fluentform textarea,
.kr-contact-form-card .fluentform select,
.kr-contact-form-card .fluentform .ff-el-form-control{min-height:52px;border:1px solid #d7e0d4!important;border-radius:10px!important;background:#fcfdfb!important;padding:13px 15px!important;color:var(--kr-ink)!important;font-size:16px!important;box-shadow:none!important}
.kr-contact-form-card .fluentform textarea{min-height:132px;resize:vertical}
.kr-contact-form-card .fluentform input:focus,
.kr-contact-form-card .fluentform textarea:focus,
.kr-contact-form-card .fluentform select:focus{border-color:var(--kr-primary)!important;background:#fff!important;outline:0!important;box-shadow:0 0 0 3px rgba(88,169,79,.10)!important}
.kr-contact-form-card .fluentform .ff-btn-submit{min-height:52px!important;margin-top:4px!important;padding:14px 26px!important;border:1px solid var(--kr-primary)!important;border-radius:999px!important;background:var(--kr-primary)!important;color:#fff!important;font-size:15px!important;font-weight:780!important;box-shadow:none!important}
.kr-contact-form-card .fluentform .ff-btn-submit:is(:hover,:focus-visible){background:var(--kr-primary-hover)!important;border-color:var(--kr-primary-hover)!important}
.kr-contact-form-card .fluentform .error.text-danger,.kr-contact-form-card .fluentform .ff-el-is-error .text-danger{font-size:13px}
.kr-contact-form-card .fluentform .ff-el-is-error .ff-el-form-control{border-color:#c96a64!important}


@media(max-width:980px){
  .kr-contact-hero__grid{gap:48px}
  .kr-contact-form-layout{grid-template-columns:minmax(260px,.7fr) minmax(0,1.3fr);gap:52px}
  .kr-contact-channel{padding:26px 24px}
}
@media(max-width:820px){
  .kr-contact-hero__grid,.kr-contact-channels__head,.kr-contact-form-layout{grid-template-columns:1fr}
  .kr-contact-hero__copy{max-width:760px}
  .kr-contact-hero__visual img{height:auto;aspect-ratio:16/10}
  .kr-contact-channels__head{gap:16px;margin-bottom:34px}
  .kr-contact-channels__grid{grid-template-columns:1fr}
  .kr-contact-channel{min-height:0;padding:25px 0}
  .kr-contact-channel+.kr-contact-channel{border-top:1px solid var(--kr-line);border-left:0}
  .kr-contact-form-copy{max-width:680px;padding-top:0}
  .kr-contact-form-card{max-width:820px}
}
@media(max-width:560px){
  .kr-contact-hero{padding:58px 0 68px}
  .kr-contact-hero__copy h1{font-size:var(--kr-type-h1)}
  .kr-contact-hero__lead{font-size:17px}
  .kr-contact-hero__actions{align-items:stretch;flex-direction:column}
  .kr-contact-hero__actions .button{width:100%;justify-content:center}
  .kr-contact-hero__visual{border-radius:15px}
  .kr-contact-channels{padding:68px 0}
  .kr-contact-form-section{padding:72px 0 88px}
  .kr-contact-form-card{padding:28px 22px;border-radius:15px}
  .kr-contact-form-card__head h3{font-size:24px!important}
  .kr-contact-form-card .fluentform .ff-btn-submit{width:100%!important}
}
