/*
 * Alagendra storefront - account page.
 * Derived from the reference design (reference html/style.css + responsive.css).
 */
.login_bg .login_pic {
  padding: 60px 0 65px;
  position: relative;
}
.login_bg .login_pic img {
  width: 100%;
}
.login_bg .login_frm {
  background: #ffffff;
  max-width: 650px;
  width: 100%;
  top: 50%;
  left: 50%;
  box-shadow: 0 0 10px rgba(0, 0, 0, 0.2);
  padding: 30px 40px 30px;
  border-radius: 10px;
  text-align: center;
  margin: auto;
}
.login_bg .login_frm .inner_frm img {
  max-width: 307px;
  width: 100%;
}
.login_bg .login_frm .inner_frm h2 {
  font: 30px/40px Barlow-Bold;
  color: #333333;
  text-align: center;
  padding: 25px 0 19px;
  text-transform: uppercase;
}
.login_bg .login_frm .inner_frm p {
  font: 17px/25px Barlow-Regular;
  color: #666666;
  text-align: center;
  padding: 0 0 5px 0;
}
.login_bg .login_frm .inner_frm p a {
  color: #1a6937;
}
.login_bg .login_frm .inner_frm p a:hover {
  color: #f3b652;
}
.login_bg .login_frm .inner_frm .md-field {
  padding: 15px 0 10px;
}
.login_bg .login_frm .inner_frm .md-field label {
  display: block;
  font: 17px/25px Barlow-Regular;
  color: #666666;
  padding-bottom: 6px;
  text-align: start;
}
.login_bg .login_frm .inner_frm .md-field input {
  font: 17px/25px Barlow-Regular;
  color: #666666;
  display: block;
  width: 100%;
  border: 1px solid #dedede;
  border-radius: 5px;
  height: 50px;
  padding: 0 15px;
}
.login_bg .login_frm .inner_frm .intext.intext_check {
  align-items: baseline;
  display: flex;
  justify-content: space-between;
  padding: 12px 0 10px;
}
.login_bg .login_frm .inner_frm .intext.intext_check label {
  position: relative;
  margin-bottom: 14px;
  padding-right: 10px;
}
.login_bg .login_frm .inner_frm .intext.intext_check a {
  text-decoration: underline;
  font: 17px/25px Barlow-Regular;
  color: #666666;
}
.login_bg .login_frm .inner_frm .intext.intext_check a:hover {
  color: #1a6937;
}
.login_bg .login_frm .inner_frm .intext.intext_check input.chk-bx {
  position: absolute;
  opacity: 0;
  height: 100%;
  display: none;
  width: 30px;
  cursor: pointer;
}
.login_bg .login_frm .inner_frm .intext.intext_check input:checked ~ p:before {
  background: transparent;
}
.login_bg .login_frm .inner_frm .intext.intext_check input:checked ~ p:after {
  opacity: 1;
  visibility: visible;
}
.login_bg .login_frm .inner_frm .intext.intext_check p {
  font: 17px/25px Barlow-Regular;
  color: #666666;
}
.login_bg .login_frm .inner_frm .intext.intext_check p a {
  color: #1a6937;
  text-decoration: unset;
}
.login_bg .login_frm .inner_frm .intext.intext_check p:hover {
  transition: 1s;
}
.login_bg .login_frm .inner_frm .intext.intext_check p:hover a {
  text-decoration: underline;
}
.login_bg .login_frm .inner_frm .intext.intext_check p:before {
  content: "";
  width: 20px;
  height: 20px;
  background: transparent;
  display: inline-block;
  vertical-align: middle;
  margin-right: 8px;
  margin-bottom: 5px;
  cursor: pointer;
  border: 1px solid #dedede;
  border-radius: 4px;
}
.login_bg .login_frm .inner_frm .intext.intext_check p:after {
  width: 7px;
  height: 15px;
  border-bottom: 2px solid #1a6937;
  border-right: 2px solid #1a6937;
  content: "";
  position: absolute;
  left: 7px;
  cursor: pointer;
  visibility: hidden;
  opacity: 0;
  top: 3px;
  transform: rotate(45deg);
}
.login_bg .login_frm .inner_frm .intext.intext_btn input {
  font: 19px/46px Barlow-SemiBold;
  color: #ffffff;
  text-align: center;
  text-transform: uppercase;
  background: #f3b652;
  border-radius: 5px;
  border: 1px solid transparent;
  width: 100%;
  margin: 5px 0 19px;
}
.login_bg .login_frm .inner_frm .intext.intext_btn input:hover {
  background: #1a6937;
}
.login_bg .login_frm .inner_frm h2 + p {
  max-width: 500px;
  margin: 0 auto 20px;
}
.contact_page .contact_main .contact_form .intext .md-field label.error, .login_bg .login_frm .inner_frm .md-field label.error, label.error{
    color: red;
  }
.login_bg .login_frm .inner_frm .md-field .refresh{
  padding-inline: 10px;
 }
.login_bg .login_frm .inner_frm .md-field.captcha_blk, .contact_page .contact_main .contact_form .captcha_blk{
  flex-wrap: wrap;
  border: 1px solid #dedede;
  border-radius: 5px;
  height: 50px;
  margin: 15px 0 30px;
  padding: 0;
 }
.login_bg .login_frm .inner_frm .md-field.captcha_blk img, .contact_page .contact_main .contact_form .captcha_blk img{
  height: 100% !important;
 }
.login_bg .login_frm .inner_frm .md-field.captcha_blk input{
  width: 80%;
  border: unset;
  height: 100% !important;
 }
.login_bg .login_frm .inner_frm .md-field.captcha_blk label.error{
  order: 4;
 }
.login_bg .login_frm .inner_frm .intext.intext_check input:checked ~ p:after{
  opacity: 1;
  visibility: visible;
}
@media screen and (max-width: 1300px) {
  .login_bg .login_frm {
    padding: 20px 25px 20px;
  }
}
@media screen and (max-width: 1200px) {
  .login_bg .login_frm .inner_frm h2 {
    font-size: 27px;
    line-height: 29px;
    padding: 13px 0 8px;
  }
  .login_bg .login_frm .inner_frm .md-field input {
    font-size: 16px;
    height: 46px;
  }
  .login_bg .login_frm .inner_frm .md-field {
    padding: 6px 0 10px;
  }
  .login_bg .login_frm .inner_frm .intext.intext_btn input {
    font-size: 16px;
    margin: 5px 0 5px;
    line-height: 40px;
  }
  .login_bg .login_frm .inner_frm .intext.intext_check a {
    font-size: 16px;
  }
}
@media screen and (max-width: 880px) {
  .login_bg .login_frm .inner_frm p, .login_bg .login_frm .inner_frm .md-field label, .login_bg .login_frm .inner_frm .intext.intext_check p {
    font-size: 15px;
    line-height: 22px;
  }
}
@media screen and (max-width: 767px) {
  .login_bg .login_pic {
    padding: 45px 0 55px;
  }
  .login_bg .login_frm {
    width: 95%;
  }
}
@media screen and (max-width: 650px) {
  .login_bg .login_frm .inner_frm .md-field.captcha_blk input{
  width: 76%;
}
}
@media screen and (max-width: 550px) {
  .login_bg .login_frm .inner_frm .intext.intext_check p {
    text-align: start;
  }
  .login_bg .login_frm .inner_frm .md-field.captcha_blk input {
  width: 72%;
}
}
@media screen and (max-width: 480px) {
  .login_bg .login_frm .inner_frm p {
    font-size: 14px;
    line-height: 21px;
  }
  .login_bg .login_frm {
    padding: 20px 10px 20px;
  }
  .login_bg .login_frm .inner_frm img {
    width: 95%;
  }
  .login_bg .login_frm .inner_frm h2 {
    font-size: 25px;
    line-height: 28px;
    padding: 10px 0 7px;
  }
  .login_bg .login_frm .inner_frm .md-field input {
    font-size: 15px;
    height: 40px;
  }
  .login_bg .login_frm .inner_frm .md-field label {
    font-size: 14px;
    line-height: 23px;
  }
  .login_bg .login_frm .inner_frm .intext.intext_check p {
    font-size: 14px;
    line-height: 20px;
    text-align: start;
  }
  .login_bg .login_frm .inner_frm .intext.intext_btn input {
    font-size: 15px;
    line-height: 37px;
  }
  .login_bg .login_frm .inner_frm .intext.intext_check {
    flex-direction: column;
    align-items: center;
  }
  .login_bg .login_frm .inner_frm .intext.intext_check label {
    width: 100%;
    padding-right: 0;
  }
  .login_bg .login_frm .inner_frm .intext.intext_check a {
    width: unset;
    font-size: 14px;
  }
  .login_bg .login_frm .inner_frm .md-field.captcha_blk input{
  width: 66%;
}
  .login_bg .login_frm .inner_frm img, .login_bg .login_frm .inner_frm .md-field.captcha_blk input{
  height: 40px;
}
  .login_bg .login_frm .inner_frm .md-field.captcha_blk{
  height: 45px;
}
}
@media screen and (max-width: 380px) {
  .login_bg .login_frm .inner_frm .md-field.captcha_blk input{
  width: 60%
}
}

/* ---- Platform additions (not in the reference design) ---- */
.login_bg .login_pic { background-repeat: no-repeat; background-size: cover; background-position: center; }
.login_bg .login_frm .inner_frm .login-title { font: 30px/40px Barlow-Bold; color: #333; text-align: center; padding: 25px 0 19px; text-transform: uppercase; }
.login_bg .login_frm .inner_frm .login-help { display: block; margin-top: 6px; font: 13px/18px Barlow-Regular; color: #888; }
.login_bg .login_frm .inner_frm .login-error { color: #c0392b; font: 14px/20px Barlow-Medium; text-align: left; padding: 6px 0 0; }
.login_bg .login_frm .inner_frm [aria-invalid="true"] { border-color: #c0392b !important; }
.login_bg .login_frm .inner_frm .login-sent a, .login_bg .login_frm .inner_frm .login-link { color: #1a6937; text-decoration: underline; }
.login_bg .login_frm .inner_frm .login-resend { text-align: center; margin-top: 8px; }
.login_bg .login_frm .inner_frm .login-link { border: 0; background: none; font: 15px/22px Barlow-Medium; cursor: pointer; }
.login_bg .login_frm .inner_frm .login-note { font-size: 14px; color: #888; }

.account-blk { padding: 70px 0 90px; text-align: center; }
.account-blk h1 { font: 32px/40px Barlow-Bold; color: #333; text-transform: uppercase; margin-bottom: 8px; }
.account-who { font: 18px/26px Barlow-Medium; color: #555; margin-bottom: 24px; }
.account-links { display: flex; flex-wrap: wrap; gap: 12px; justify-content: center; list-style: none; padding: 0; margin: 0 0 20px; }
.account-soon { color: #888; margin-bottom: 24px; }
.account-logout { border: 1px solid #c0392b; background: #fff; color: #c0392b; font: 15px/20px Barlow-SemiBold; padding: 10px 22px; border-radius: 5px; cursor: pointer; }
.account-logout:hover { background: #c0392b; color: #fff; }
.login_bg .login_frm .inner_frm .login-resend { display: flex; flex-wrap: wrap; gap: 6px 14px; justify-content: center; align-items: center; }
.login_bg .login_frm .inner_frm .login-nocode { font: 15px/22px Barlow-Regular; color: #888; }
.login_bg .login_frm .inner_frm .login-link:disabled { color: #999; text-decoration: none; cursor: default; }
.login_bg .login_frm .inner_frm .login-wa { color: #128c4b; }
.login_bg .login_frm .inner_frm .login-sent .fa-whatsapp { color: #25d366; }
@media screen and (max-width: 480px) {
  .login_bg .login_frm .inner_frm .login-resend { flex-direction: column; }
}

/* ---- Customer portal: Edit Profile (reference html/my-profile.html) ---- */
.profile_page { padding: 60px 0 100px; }
.pf-layout { display: flex; gap: 30px; align-items: flex-start; }
.pf-side { width: 280px; flex: 0 0 280px; background: #f9f9f9; padding: 24px; border-radius: 12px; border: 1px solid #dedede; }
.pf-who { text-align: center; margin-bottom: 20px; }
.pf-who img { width: 80px; height: 80px; border-radius: 50%; background: #e8f4ed; padding: 15px; margin: 0 auto 12px; display: block; }
.pf-who h2 { font: 20px/26px Barlow-Bold; color: #333; margin: 0; overflow-wrap: anywhere; }
.pf-who p { color: #777; font: 14px/20px Barlow-Regular; margin: 4px 0 0; overflow-wrap: anywhere; }
.pf-who .pf-since { font-size: 13px; color: #999; }
.pf-menu { list-style: none; padding: 0; margin: 0; }
.pf-menu li { padding-left: 0; background: none; } /* global li tick bullets (global.css) */
.pf-menu li + li { margin-top: 10px; }
.pf-menu a, .pf-menu .pf-logout {
  display: flex; align-items: center; gap: 12px; width: 100%; padding: 10px 16px; background: #fff; color: #333; border-radius: 8px;
  text-decoration: none; font: 16px/22px Barlow-SemiBold; border: 1px solid #eee; cursor: pointer; text-align: left;
}
.pf-menu a:hover { border-color: #1a6937; color: #1a6937; }
.pf-menu a.is-active { background: #1a6937; color: #fff; border-color: #1a6937; }
.pf-menu .pf-logout { color: #e53935; }
.pf-menu .pf-logout:hover { border-color: #e53935; }
.pf-main { flex: 1; min-width: 0; background: #fff; padding: 30px; border-radius: 12px; border: 1px solid #dedede; }
.pf-title { font: 28px/34px Barlow-Bold; color: #333; text-transform: uppercase; margin: 0 0 6px; }
.pf-heading { font: 22px/28px Barlow-Bold; color: #333; margin: 18px 0 18px; border-bottom: 1px solid #eee; padding-bottom: 12px; }
.pf-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 20px; }
.pf-field label, .pf-field legend { display: block; margin-bottom: 6px; font: 16px/22px Barlow-SemiBold; color: #555; }
.pf-field label small { font: 13px Barlow-Regular; color: #999; }
.pf-field input[type="text"], .pf-field input[type="email"], .pf-field input[type="tel"], .pf-field input[type="date"] {
  width: 100%; height: 46px; padding: 10px 14px; border: 1px solid #ccc; border-radius: 6px; font: 16px/24px Barlow-Regular; color: #333; background: #fff;
}
.pf-field input:focus { outline: none; border-color: #1a6937; box-shadow: 0 0 0 3px rgba(26, 105, 55, .15); }
.pf-field input[readonly] { background: #f4f4f4; color: #666; cursor: not-allowed; }
.pf-field input[aria-invalid="true"] { border-color: #c0392b; }
.pf-field .field-error { display: block; color: #c0392b; font: 14px/20px Barlow-Medium; margin-top: 5px; }
.pf-field--wide { grid-column: 1 / -1; }
.pf-places { border: 0; padding: 0; margin: 0; }
.pf-places label { display: inline-flex; align-items: center; gap: 6px; margin: 0 22px 0 0; font: 16px/22px Barlow-Regular; color: #333; cursor: pointer; }
.pf-places input { accent-color: #1a6937; width: 18px; height: 18px; }
.pf-help { display: block; color: #888; font: 13px/18px Barlow-Regular; margin-top: 5px; }
.pf-help--block { margin: -8px 0 16px; }
.pf-actions { margin-top: 26px; }
.pf-save { background: #1a6937; color: #fff; border: 0; padding: 12px 28px; border-radius: 24px; font: 17px/22px Barlow-SemiBold; cursor: pointer; text-transform: none; }
.pf-save:hover { background: #f3b652; }
.pf-save:disabled { opacity: .7; cursor: wait; }

@media screen and (max-width: 991px) {
  .pf-layout { flex-direction: column; }
  .pf-side { width: 100%; flex-basis: auto; }
  .pf-menu { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px; }
  .pf-menu li + li { margin-top: 0; }
}
@media screen and (max-width: 600px) {
  .profile_page { padding: 30px 0 60px; }
  .pf-main { padding: 20px 16px; }
  .pf-grid { grid-template-columns: minmax(0, 1fr); gap: 16px; }
  .pf-title { font-size: 24px; }
}
