/* placeholder for mp widgets webflow site styles 
 * more to come as widgets get migrated
*/


/* Customization for JohnMcGuire/PointsNorth Reference app
 * https://grangerchurch.com/submit-reference/
 */
.pnsWidgetFormTitle {
    font-size: 20pt;
    font-weight: bold;
    color: black;
	border: none;
}

.pnsWidgetVolunteerName {
    font-size: 20pt;
    font-weight: bold;
}

.pnsWidgetInstructions {
    font-size: 12pt;
    font-weight: bold;
    color: #404040;
    margin: 20px 0 20px 0;
}

.pnsWidgetTroubleshoot {
    font-size: 6pt;
    color: red;
    visibility: hidden;
}

.pnsWidgetSection {
    font-size: 12pt;
    font-weight: bold;
    color: #404040;
}

.pnsWidgetFieldLabel {
	font-size: 1.1em;
}
.pnsWidgetFieldGroup {
    margin: 20px 0 20px 0;
    width: 100%;
	border: 1px solid;
	border-color: #b4c5cf;
    border-radius: 4px;
    margin-bottom: 1em;
    padding: 10px;
}

.pnsWidgetTextField {
    padding: 15px !important;
    font-size: 11pt !important;
/*    border: solid 1px #c0c0c0 !important;
    border-radius: 5px !important;*/
    width: 100% !important;
}

.pnsWidgetTextField:focus{
    outline: none !important;
}

.pnsWidgetRadioField {
    height: 20px;
    width: 20px;
    border: 1px solid var(--form-field-border);
    border-radius: 50%;
	vertical-align: middle;
}

input {
	accent-color: #aad43c;
}

.pnsWidgetResultMessage {
    padding: 10px 0 10px 0;
    color: red;

}

.pnsWidgetWorkingMessage {
    color: #669FED;
    font-weight: bold;
}

.pnsWidgetWorkingSpinner {
    width: 25px;
    width: 25px;
    vertical-align: -4px;
    padding: 0 0 0 5px;
}

.pnsWidgetFieldGroupSelect {
    border-radius: 5px;
    padding: 5px;
    border-color: #c0c0c0;
    font-size: 12pt;
    outline: none;
}

/* Granger Widget Customization */

/* CSS Color Variables                        */
/*--------------------------------------------*/

:host {
    --primary: #aad43c;
    --primary-dark: #292929;
      --form-valid: #aad43c;
  }
  
  /* COMPONENT CONTAINER                        */
  /*--------------------------------------------*/
  .mppw-component-container, .pnsWidgetContainer {
      font-family: "Poppins",Helvetica,Arial,sans-serif;
      color: #000;
      text-align: left;
  }
  
  /* Custom Form                                */
  /*--------------------------------------------*/
  .mpp-mt-0 {
      text-transform: uppercase;
      font-weight: 700;
      line-height: 1;
  }
  
  /* FORM FIELDS                                */
  /*--------------------------------------------*/
  
  .mppw-form-field__label, .pnsWidgetFieldLabel {
      font-weight: 500;
      text-transform: uppercase;
  }
  
  /* Buttons                                    */
  /*--------------------------------------------*/
  .mppw-btn, .mppw-btn primary, .pnsWidgetSubmit {
      text-transform: uppercase;
      min-width: 150px;
      display: inline-block;
      padding: 17px 25px 16px;
      background: #333;
      border-radius: 8px;
      font-weight: 600;
      font-size: 14px;
      margin: 0 0 20px;
      letter-spacing: 2pt;
      transition: background 0.2s;
  }

  .mppw-btn:hover {
      background: #2c9fa1;
  }
  
  /* MOBILE */
  * {
      box-sizing: border-box;
      font-family: "Poppins",Helvetica,Arial,sans-serif;
  }
  
  /* groups widget */
  .mppw-component-container h1 {font-size:30px; text-align:center; letter-spacing:0.05em;}
  .mppw-component-container a, .mppw-component-container button, .mppw-component-container input[type="submit"], .mppw-component-container input[type="button"] {transition:all 0.25s ease;}
  .mppw-btn.secondary:hover, .mppw-btn.secondary:focus {background:var(--primary); color:#fff; border-color:var(--primary);}
  .mppw-card--grid {display:grid; grid-template-columns:repeat(3, 1fr); gap:1.5rem;}
  @media(max-width:1023px){ .mppw-card--grid{ grid-template-columns:repeat(2, 1fr); } }
  @media(max-width:599px){ .mppw-card--grid{ grid-template-columns:1fr; } }
    .mpp-card {box-shadow:none; border-radius:8px; transition:box-shadow 0.2s; overflow:hidden;}
    .mpp-card:hover {box-shadow:0 6px 20px rgba(0,0,0,0.12);}
      .mpp-card--header {position:relative; width:100%; padding-top:56.25%; overflow:hidden; background:#e0e0e0;}
      .mpp-card--image {position:absolute; top:0; left:0; width:100%; height:100%; object-fit:cover;}
      .mpp-card--badge {background:#fff; color:var(--primary-dark); padding:12px 10px; border-radius:8px; font-size:18px; line-height:1; letter-spacing:-0.5pt; font-weight:500; text-transform:uppercase; text-align:center; opacity:1;}
      .mpp-card--subtitle {font-weight:400; font-size:15px; line-height:1.4;}
      .mpp-card--description {margin-top:12px;}
      
  .mppw-form-field__control {color:var(--primary-dark); padding:28px 13px 12px 13px;}
  .mppw-form-field__control:not([value=""]) + .mppw-form-field__label, .mppw-form-field__control:focus + .mppw-form-field__label {color:var(--primary-dark);}
  
  .mpp-innerpage {font-size:inherit;}
    .mpp-innerpage a {color:var(--primary);}
    .mpp-innerpage a:hover, .mpp-innerpage a:focus {color:var(--primary);}
    .mpp-innerpage h1 {font-size:42px; line-height:1.2; text-align:left; padding-top:20px;}
    .mpp-innerpage h2 {font-size:20px; line-height:1.2;}
    .mpp-innerpage--contact {border-radius:8px;}
    .mpp-innerpage ul.mpp-innerpage--contacts {margin-top:5px;}
    .mpp-innerpage--contacts-wrapper h3, .mpp-innerpage .progress--container h3 {font-size:14px; line-height:1.5; color:var(--primary-dark);}
    .mpp-innerpage--contact-badge {background:var(--primary);}
    .mpp-innerpage--placeholder {background:#e0e0e0;}
  .mpp-form--tabs label:active, .mpp-form--tabs label.active {border-bottom:3px solid var(--primary); color:var(--primary);}
  .mpp-form--tabs label:hover, .mpp-form--tabs label:focus {border-bottom:3px solid var(--primary);}
  
  #signupContainer, #inquiryContainer {padding-top:20px;}
  #signUpTab {visibility: hidden;}
  
  /* Hide built in title since it's in the wordpress page */
  div > div > div.mppw-form-wrapper > h1 {display: none;}
  
  .mppw-blue, .mppw-form-field__alt-label, .mppw-form-field_upload-label {color:var(--primary-dark); font-size:1em; font-weight:500; text-transform:uppercase;}
  
  /*--------------------------------------------*/
  /* Icons                                      */
  /*--------------------------------------------*/
  /* group finder default image */
  .mppw-icon-group {
      background: url(https://grangerchurch.com/wp-content/themes/granger2017/images/icon-group-gcc.svg) no-repeat top center;
  }
  
  /* Event Widget */
  /*#detailsContainer > section > p*/
  
  .mppw-event-gray-out td {
      color: #bcbcbc !important;
  }
  
  
  
  #detailsContainer > div.mpp-innerpage--special {
      -webkit-appearance:none;
      appearance: none;
      display: none;
  }
  
  /*
  #detailsContainer > div:nth-child(2), #detailsContainer > div:nth-child(3), #detailsContainer > div:nth-child(7) {
      -webkit-appearance:none !important;
      appearance: none !important;
      display: none !important;
  }
  */
  

#detailsContainer > section > div.mpp-innerpage--contacts-wrapper, #map, #mapAddress, #registrationForm > h1  {
      -webkit-appearance:none;
      appearance: none;
      display: none;
  }


.instructions-heading {
/*    display: block; */
	display: inline-block;
	width: fit-content;
	text-transform: uppercase;
	border-bottom: 3px solid #a8d424;
    font-size: 1.2em;
    margin-block-start: 1em;
    margin-block-end: 1em;
    margin-inline-start: 0px;
    margin-inline-end: 0px;
	margin-top: 2.2em;
	margin-bottom: .5em;
    font-weight: bold;
    unicode-bidi: isolate;
}
  
  
  /* Plan a Visit Widget */
  #mpp-plan-your-visit-container input.mppw-btn:hover {color:#fff; background:#2c9fa1;}
  #mpp-plan-your-visit-container .mpp-innerpage p {color:#fff; line-height:24px;}
  #mpp-plan-your-visit-container .mpp-innerpage h3 {color:#fff;}
  
  #visitDetailsContainer .mpp-innerpage p {color:#fff;}
  #visitDetailsContainer .mpp-innerpage h2 {color:#fff;}
  #visitDetailsContainer #visitDetailsForm {color:#555;}
  #visitDetailsContainer #submitRegistrationButton {margin:0;}
  #visitDetailsContainer #submitRegistrationButton:hover {color:#fff; background:#2c9fa1;}
  
  
  /* Event Registration Detail Widget */
  #detailsContainer > section > h3  {display: none;}
  #detailsContainer > section > div.mpp-innerpage--fixed-imgcontainer.mpp-innerpage--fixed-imgplaceholder  {display: none;}
  #detailsContainer > section > img {display: none;}
  #registrationForm .product-form h3 {margin-top:10px; padding:5px;}
  #registrationForm .product-form__control {margin:10px 0 3px 0; padding:0 10px;}
  #registrationForm .product-form__control tr:last-child td {border-bottom:0;}
  #registrationForm .option-name, #registrationForm .option-qty, #registrationForm .option-price {padding:10px 0; color:var(--primary-dark);}
  #registrationForm .mppw-form-field-alt label {margin-bottom:0;}
  #registrationForm select.mppw-form-field_alt-control {padding:15px 10px !important;}
  #registrationForm .mppw-form-field_alt-control {padding:1px 10px !important;}
  #registrationForm .mppw-form-field_alt-control label {margin:10px 0;}
  #registrationForm input#promoCodeText {padding:9px 10px; border:1px solid var(--primary-dark); border-radius:4px;}
  #registrationForm button#addPromoCodeButton {color:#fff; border:0; text-transform:uppercase; display:inline-block; padding:10px 20px; background:#333; border-radius:8px; font-weight:600; font-size:14px; letter-spacing:2pt; transition:background 0.2s;}
  #registrationForm button#addPromoCodeButton:hover {background:#2c9fa1; cursor:pointer;}
  
  #pledgeForm .mppw-form-field {padding-bottom:0.5rem;}
  #pledgeAmountButtonWrapper input[type="button"] {margin-bottom:0;}
  
  @media only screen and (max-width: 782px) {
    .form--row.toggle--btn-wrapper {flex-wrap:wrap;}
    #pledgeAmountButtonWrapper input[type="button"] {margin-bottom:10px;}
    .form--row {width:100%; display:block;}
    .form--col {flex:1 1 auto; padding-right:0;}
  }
  @media(max-width:760px) {
      #registrationForm #promoCodeContainer .mppw-form-field label {display:block;}
  }
  
  #verfificationContainer > div.mpp-innerpage > h3 {
      display: none;
  }
  
  /* #saveAndAddButton {display: none;} */
  
  /* pledge widget */
  #pledgeCampaignDetails {display:none;}
  /* form#pledgeForm .form--row:nth-of-type(2) .form--col:first-child {display:none;}
  form#pledgeForm .form--row:nth-of-type(2) .form--col:last-child {display:none;} */
  form#pledgeForm .form--row:nth-of-type(2) .form--col .form--row {padding-bottom:0 !important;}
  form#pledgeForm .form--row:nth-of-type(2) .form--col .form--row .form--col:first-child {padding-right:0 !important;}
  /* form#pledgeForm .form--row:nth-of-type(2) .form--col .form--row .form--col:last-child {display:none;} */
  #pledgeAmountButtonWrapper input[type="button"] {-webkit-appearance:none;}
  #FirstInstallmentDate {-webkit-appearance:none;}
  #LastInstallmentDate {-webkit-appearance:none;}
  #createPledge {-webkit-appearance:none;}
  
  
  /* Church Online Widget */
  
  /* .mp-embed-2022 input.mppw-btn.primary {color:var(--txt-white); background:var(--bg-green);}
  .mp-embed-2022 input.mppw-btn.primary:hover {color:var(--txt-white); background:var(--bg-dark);} */
  
  /* Pledge */
  #TotalPledge {
      font-size: 36px;
  }
  
  input::-webkit-outer-spin-button,
  input::-webkit-inner-spin-button {
      -webkit-appearance: none;
      margin: 0;
  }
  
  #InstallmentAmount[type=number] {
      -moz-appearance: textfield;
  }
  
  @media(max-width:760px) {
      input#InstallmentAmount {padding-top:50px; font-size:16px;}
      input#FirstName {font-size:16px;}
      input#LastName {font-size:16px;}
      input#Email {font-size:16px;}
      input#MobilePhoneNumber {font-size:16px;}
  }
  
  /* My Pledge Widget 
  .mpp-card--description {
      -webkit-appearance:none;
      appearance: none;
      display: none;
  }
  */
  
  /* My Statements */
  #myContributionFooter {
      -webkit-appearance:none;
      appearance: none;
      display: none;
  }
  
  /* hidden because it hides group desc.
   * .mpp-innerpage--description {display:none;}
  */
  
  .mpp-innerpage--special {display:none;}

/* ═══════════════════════════════════════════════════════
 * MP Custom Widget Shared Utilities
 * Extracted from MPCustomWidgets/dist/css/mp-custom.css
 * Only classes used by deployed widgets (GrangerEvents,
 * GrangerEmployees) are included here.
 * ═══════════════════════════════════════════════════════ */

/* ── CSS Variables ── */
:root {
  --mp-primary: #007bff;
  --mp-secondary: #6c757d;
  --mp-text-primary: #212529;
  --mp-text-muted: #6c757d;
  --mp-text-light: #ffffff;
  --mp-bg-primary: #ffffff;
  --mp-bg-secondary: #f8f9fa;
  --mp-border-color: #dee2e6;
  --mp-border-radius: 0.375rem;
  --mp-font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
  --mp-font-size-sm: 0.875rem;
  --mp-spacer: 1rem;
  --mp-spacer-sm: 0.5rem;
  --mp-shadow-sm: 0 0.125rem 0.25rem rgba(0, 0, 0, 0.075);
}

/* ── Container ── */
.mp-container {
  width: 100%;
  padding-right: var(--mp-spacer);
  padding-left: var(--mp-spacer);
  margin-right: auto;
  margin-left: auto;
}
@media (min-width: 576px) { .mp-container { max-width: 540px; } }
@media (min-width: 768px) { .mp-container { max-width: 720px; } }
@media (min-width: 992px) { .mp-container { max-width: 960px; } }
@media (min-width: 1200px) { .mp-container { max-width: 1140px; } }

/* ── Grid System ── */
.mp-row {
  display: flex;
  flex-wrap: wrap;
  margin-left: -0.75rem;
  margin-right: -0.75rem;
}
.mp-row > * {
  padding-left: 0.75rem;
  padding-right: 0.75rem;
}
.mp-col-12 { flex: 0 0 100%; max-width: 100%; }
@media (min-width: 768px) {
  .mp-col-md-6 { flex: 0 0 50%; max-width: 50%; }
}
@media (min-width: 992px) {
  .mp-col-lg-4 { flex: 0 0 33.33333%; max-width: 33.33333%; }
}

/* ── Cards ── */
.mp-card {
  position: relative;
  display: flex;
  flex-direction: column;
  min-width: 0;
  word-wrap: break-word;
  background-color: var(--mp-bg-primary);
  background-clip: border-box;
  border: 1px solid var(--mp-border-color);
  border-radius: var(--mp-border-radius);
}
.mp-card-title {
  margin-bottom: 0.5rem;
  font-size: 1.25rem;
  font-weight: 500;
}

/* ── Avatar ── */
.mp-avatar-initial {
  background-color: var(--mp-secondary);
  color: var(--mp-text-light);
}

/* ── Typography ── */
.mp-text-muted { color: var(--mp-text-muted) !important; }
.mp-text-light { color: var(--mp-text-light) !important; }
.mp-small { font-size: var(--mp-font-size-sm); }

/* ── Spacing ── */
.mp-m-0 { margin: 0 !important; }
.mp-mt-4 { margin-top: 1.5rem !important; }
.mp-mb-1 { margin-bottom: 0.25rem !important; }
.mp-mb-3 { margin-bottom: 1rem !important; }
.mp-p-3 { padding: 1rem !important; }

/* ── Shadows ── */
.mp-shadow-sm { box-shadow: var(--mp-shadow-sm) !important; }

/* ── Alerts (used by widget error states) ── */
.mp-alert {
  position: relative;
  padding: 0.75rem 1.25rem;
  margin-bottom: 1rem;
  border: 1px solid transparent;
  border-radius: var(--mp-border-radius);
}
.mp-alert-danger {
  color: #842029;
  background-color: #f8d7da;
  border-color: #f5c2c7;
}


/* ═══════════════════════════════════════════════════════
 * GrangerEvents Widget
 * Source: MPCustomWidgets/Widgets/GrangerEvents
 * ═══════════════════════════════════════════════════════ */

/* ── Card Grid ── */
.ge-grid { display:grid; grid-template-columns:1fr; gap:1.5rem; font-family:Poppins, sans-serif; }
@media(min-width:600px){ .ge-grid{ grid-template-columns:repeat(2, 1fr); } }
@media(min-width:1024px){ .ge-grid{ grid-template-columns:repeat(3, 1fr); } }
.ge-col { box-sizing:border-box; }

/* ── Card ── */
.ge-card {
  display:flex; flex-direction:column; overflow:hidden; cursor:pointer;
  background:#efefef; border-radius:8px; height:100%;
  transition:box-shadow 0.2s;
}
.ge-card:hover { box-shadow:0 6px 20px rgba(0,0,0,0.12); }

/* ── Image + Date Badge ── */
.ge-media { position:relative; width:100%; padding-top:56.25%; overflow:hidden; background:#e0e0e0; }
.ge-media img { position:absolute; top:0; left:0; width:100%; height:100%; object-fit:cover; }
.ge-media-fallback {
  position:absolute; top:0; left:0; width:100%; height:100%;
  display:flex; align-items:center; justify-content:center;
  color:#999; font-size:0.875rem;
}

.ge-date-badge {
  position:absolute; top:0; left:0;
  background:rgba(255,255,255,0.94);
  border-radius:0 0 8px 0;
  padding:0.5rem 0.75rem; text-align:center; line-height:1.15;
  min-width:3.25rem; transition:background 0.2s, color 0.2s;
}
.ge-card:hover .ge-date-badge {
  background:#abd424; color:#fff;
}
.ge-date-badge .ge-badge-month,
.ge-date-badge .ge-badge-day {
  display:block; font-size:1.5rem; font-weight:700; color:#092c4c;
  text-transform:uppercase;
}
.ge-card:hover .ge-date-badge .ge-badge-month,
.ge-card:hover .ge-date-badge .ge-badge-day { color:#fff; }

/* ── Multi-day: cross-month stacked badge ── */
.ge-date-badge-crossmonth {
  padding:0.5rem 0.75rem;
}
.ge-date-badge-crossmonth .ge-badge-date-start,
.ge-date-badge-crossmonth .ge-badge-date-end {
  display:flex; align-items:baseline; gap:0.25rem;
  justify-content:center; white-space:nowrap;
}
.ge-date-badge-crossmonth .ge-badge-cm-month,
.ge-date-badge-crossmonth .ge-badge-cm-day {
  font-size:1.25rem; font-weight:700; color:#092c4c; line-height:1;
  text-transform:uppercase;
}
.ge-card:hover .ge-date-badge-crossmonth .ge-badge-cm-month,
.ge-card:hover .ge-date-badge-crossmonth .ge-badge-cm-day { color:#fff; }
.ge-date-badge-crossmonth .ge-badge-cm-divider {
  display:block; font-size:0.6rem; color:#999; line-height:1;
  margin:0.1rem 0;
}
.ge-card:hover .ge-date-badge-crossmonth .ge-badge-cm-divider { color:rgba(255,255,255,0.6); }

/* ── Card Body ── */
.ge-body { padding:1rem 1.25rem 1.25rem; flex:1; display:flex; flex-direction:column; }

.ge-campus {
  display:flex; align-items:center; gap:0.4rem;
  font-size:0.875rem; color:#555; margin-bottom:0.35rem;
}
.ge-campus-dot {
  width:0.55rem; height:0.55rem; border-radius:50%;
  background:#abd424; flex-shrink:0;
}

.ge-title {
  font-size:1.5rem; font-weight:600; margin:0 0 0.5rem;
  line-height:1.3; color:#092c4c;
}

.ge-desc {
  font-size:0.95rem; color:#555; line-height:1.6; flex:1; margin:0 0 1rem;
}

/* ── More Info Button ── */
.ge-more-info {
  display:inline-block; margin-top:auto; padding:12px 24px;
  background:#333; color:#fff; text-decoration:none;
  border-radius:8px; font-family:Poppins, sans-serif;
  font-weight:300; font-size:1rem; text-transform:uppercase;
  letter-spacing:0.03em; transition:background 0.2s;
  border:none; cursor:pointer; text-align:center;
  align-self:flex-start;
}
.ge-more-info:hover { background:#2c9fa1; color:#fff; }

/* ── Modal ── */
.ge-overlay {
  display:none; position:fixed; top:0; left:0; width:100%; height:100%;
  background:rgba(0,0,0,0.6); z-index:99999; justify-content:center; align-items:flex-start;
  padding:2rem 1rem; overflow-y:auto; font-family:Poppins, sans-serif;
}
.ge-overlay.ge-open { display:flex; }

.ge-modal {
  background:#fff; border-radius:8px; max-width:700px; width:100%;
  margin:auto; position:relative; box-shadow:0 20px 60px rgba(0,0,0,0.3);
}
.ge-modal-img {
  width:100%; aspect-ratio:16/9; object-fit:cover;
  border-radius:8px 8px 0 0; display:block;
}
.ge-modal-body { padding:1.5rem 2rem 2rem; }
.ge-modal-title { font-size:1.5rem; font-weight:700; margin:0 0 0.5rem; color:#092c4c; }

.ge-modal-meta { font-size:0.95rem; color:#555; margin-bottom:0.25rem; display:flex; flex-wrap:wrap; gap:0.25rem 1.25rem; }
.ge-modal-loc { display:flex; align-items:center; gap:0.4rem; font-size:0.95rem; color:#555; margin-bottom:1rem; }
.ge-modal-loc .ge-campus-dot { width:0.5rem; height:0.5rem; }

.ge-modal-desc { font-size:1rem; line-height:1.7; color:#333; }
.ge-modal-desc img { max-width:100%; height:auto; }
.ge-modal-desc a,
.ge-modal-desc a:visited { color:#000; text-decoration:underline; }
.ge-modal-desc a:hover,
.ge-modal-desc a:focus { color:#2c9fa1; }

.ge-close {
  position:absolute; top:0.75rem; right:0.75rem; width:2.25rem; height:2.25rem;
  border-radius:50%; border:none; background:rgba(0,0,0,0.45); color:#fff;
  font-size:1.3rem; cursor:pointer; display:flex; align-items:center; justify-content:center;
  line-height:1; z-index:1; transition:background 0.2s;
}
.ge-close:hover { background:rgba(0,0,0,0.7); }

.ge-register {
  display:inline-block; margin-top:1.25rem; padding:12px 24px;
  background:#333; color:#fff; text-decoration:none;
  border-radius:8px; font-family:Poppins, sans-serif;
  font-weight:300; font-size:1rem; text-transform:uppercase;
  letter-spacing:0.03em; transition:background 0.2s;
}
.ge-register:hover { background:#2c9fa1; color:#fff; }


/* ═══════════════════════════════════════════════════════
 * GrangerEmployees Widget
 * Source: MPCustomWidgets/Widgets/GrangerEmployees
 * ═══════════════════════════════════════════════════════ */

.mp-person-card {
  text-align: center;
  display: flex;
  flex-direction: column;
  justify-content: flex-start;
  height: 100%;
}

.mp-person-card .mp-person-photo {
  width: 100%;
  max-width: 240px;
  aspect-ratio: 3/4;
  margin: 0 auto;
  overflow: hidden;
  border-radius: 12px;
  display: flex;
  align-items: center;
  justify-content: center;
  background: #e9ecef;
}

.mp-person-card .mp-person-photo img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.mp-person-card .mp-person-photo .mp-avatar-initial {
  width: 100%;
  height: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 2.5rem;
  background: #6c757d;
}

.mp-person-card .mp-person-info {
  flex-grow: 1;
  display: flex;
  flex-direction: column;
  align-items: center;
}

.mp-person-card .mp-card-title {
  font-size: 1.25rem;
  display: block;
  width: 100%;
}

/* ── Checkout widget ── */
.mppw-invoice th, .mppw-invoice .mppw-blue { color: var(--primary-dark); }

/* ── Event Details page overrides ── */
#detailsContainer .mpp-innerpage--description { display:none !important; }

.event-finder-widget .ge-title {color:#333;}
.event-finder-widget .ge-date-badge {border-radius:0; left:20px; padding:0.65rem 0.75rem 0.5rem;}
	.event-finder-widget .ge-date-badge .ge-badge-month {color:#333; font-size:1rem; font-weight:600;}
	.event-finder-widget .ge-date-badge .ge-badge-day {color:#333; font-size:1.8rem; font-weight:600;}
@media (max-width:767px) {
	.event-finder-widget .container {padding:0;}
	.event-finder-widget .mp-container {max-width:none;}
}
