/* Footer Menu Links */
.theme-footer-area a,
.footer-menu a {
  font-size: 14px !important;
  line-height: 1.0 !important;
  display: inline-block;
  text-decoration: none !important;
  color: #ffffff !important;
  transition: text-decoration-color 0.2s ease-in-out;
  transform-origin: center;
}

.theme-footer-area a:hover,
.theme-footer-area a:focus,
.footer-menu a:hover,
.footer-menu a:focus {
  color: #ffffff !important;
  text-decoration: underline !important;
  text-decoration-color: #ffffff !important;
  text-underline-offset: 4px;
}

.footer-menu a {
  transition: transform 0.2s ease-in-out, text-decoration-color 0.2s ease-in-out;
}

.footer-menu a:hover,
.footer-menu a:focus {
  transform: scale(1.15);
}

[data-element-id="elm_oGc_npGCTOWo5k4ZW0QTmA"] a,
[data-element-id="elm_oGc_npGCTOWo5k4ZW0QTmA"] a:hover,
[data-element-id="elm_oGc_npGCTOWo5k4ZW0QTmA"] a:focus {
  transform: none !important;
}

[data-element-id="elm_oGc_npGCTOWo5k4ZW0QTmA"].zpelem-text {
  border-top: 0.75px solid #E8C28E;
  margin-top: 18px;
  padding-top: 14px;
}

[data-element-id="elm_oGc_npGCTOWo5k4ZW0QTmA"] .zptext {
  line-height: 1.1 !important;
}

[data-element-id="elm_oGc_npGCTOWo5k4ZW0QTmA"] .zptext > div {
  line-height: 1.1 !important;
  margin-top: 3px;
}


/* Footer Menu Section Headings (e.g., MAIN, BRANDS) */
h6.zplink-heading {
  font-size: 14px !important;
  color: #E8C28E !important;
}

.theme-footer-area h6,
.theme-footer-area h6 span,
.footer-menu h6,
.footer-menu h6 span {
  font-style: normal !important;
}

.footer-menu .zprow {
  align-items: flex-start !important;
}

.footer-menu .zpelem-col {
  align-self: flex-start !important;
  padding-top: 0 !important;
}

.footer-menu .zpelem-col > .zpapp:first-child,
.footer-menu .zpelem-col > .zpelement:first-child,
.footer-menu .zpelem-col > .zpelement:first-child > .zpheading,
.footer-menu .zpelem-col > .zpelement:first-child > h6,
.footer-menu .zpapp .app-container,
.footer-menu .zpelem-heading {
  margin-top: 0 !important;
  padding-top: 0 !important;
}

.footer-menu h6.zpheading,
.footer-menu h6.zplink-heading,
.footer-menu .zpelem-heading h6 {
  margin-top: 0 !important;
  padding-top: 0 !important;
}

.coro-sitemap-directory {
  max-width: 1040px;
  margin: 0 auto 42px;
  padding: 0 22px;
  color: #34495e;
}

.coro-sitemap-directory h2 {
  margin: 34px 0 14px;
  color: #e8c28e;
  font-family: "Playfair Display", Georgia, serif;
  font-size: 24px;
  font-weight: 700;
  letter-spacing: 0;
  text-align: left;
}

.coro-sitemap-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 18px 28px;
}

.coro-sitemap-item {
  padding-bottom: 14px;
  border-bottom: 1px solid rgba(232, 194, 142, 0.55);
}

.coro-sitemap-item a {
  color: #34495e;
  font-size: 16px;
  font-weight: 700;
  text-decoration: none;
}

.coro-sitemap-item a:hover,
.coro-sitemap-item a:focus {
  text-decoration: underline;
  text-decoration-color: #34495e;
  text-underline-offset: 4px;
}

.coro-sitemap-item p {
  margin: 7px 0 0;
  color: #34495e;
  font-size: 14px;
  line-height: 1.45;
}

[data-element-id="elm_QnWrR7s98uUtV8Nef8UFzg"] h1,
[data-element-id="elm_-pUc74pxzJEZ4OFjP3J0Ww"] h2,
[data-element-id="elm_1psFNmPjAmaUsxZDrgkeQQ"] h2 {
  color: #e8c28e !important;
  font-family: "Playfair Display", Georgia, serif !important;
  font-weight: 700 !important;
  letter-spacing: 0 !important;
}

[data-element-id="elm_QnWrR7s98uUtV8Nef8UFzg"] h1 {
  font-size: 34px !important;
  margin: 42px 0 24px !important;
  text-align: center !important;
}

[data-element-id="elm_-pUc74pxzJEZ4OFjP3J0Ww"] h2,
[data-element-id="elm_1psFNmPjAmaUsxZDrgkeQQ"] h2 {
  color: #34495e !important;
  font-size: 16px !important;
  margin: 24px 0 10px !important;
}

[data-element-id="elm_-pUc74pxzJEZ4OFjP3J0Ww"] h2 span,
[data-element-id="elm_1psFNmPjAmaUsxZDrgkeQQ"] h2 span {
  color: #34495e !important;
  font-size: 16px !important;
}

[data-element-id="elm_J7y1lEV8XYjRBHdgRTPPgA"] .zptext,
[data-element-id="elm_wCVNrr2MZhn4C_W-f314xQ"] .zptext,
[data-element-id="elm_Y2NxSzALjkVdLglcWdRR4w"] .zptext,
[data-element-id="elm_J7y1lEV8XYjRBHdgRTPPgA"] .zptext span,
[data-element-id="elm_wCVNrr2MZhn4C_W-f314xQ"] .zptext span,
[data-element-id="elm_Y2NxSzALjkVdLglcWdRR4w"] .zptext span {
  color: #34495e !important;
  font-family: "Manrope", Arial, sans-serif !important;
  font-size: 14px !important;
  line-height: 1.45 !important;
}

[data-element-id="elm_wCVNrr2MZhn4C_W-f314xQ"] blockquote,
[data-element-id="elm_Y2NxSzALjkVdLglcWdRR4w"] blockquote {
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
}

@media (max-width: 767px) {
  .coro-sitemap-grid {
    grid-template-columns: 1fr;
  }
}

.coro-principal-profiles {
  background: #ffffff;
  padding: 58px 24px 64px;
}

.coro-principal-intro {
  max-width: 760px;
  margin: 0 auto 38px;
  text-align: center;
}

.coro-principal-intro h2 {
  margin: 0 0 12px;
  color: #e8c28e;
  font-family: "Playfair Display", Georgia, serif;
  font-size: 28px;
  font-weight: 700;
  letter-spacing: 0;
  text-transform: uppercase;
}

.coro-principal-intro p {
  margin: 0;
  color: #34495e;
  font-size: 16px;
  line-height: 1.6;
}

.coro-principal-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 48px;
  max-width: 1120px;
  margin: 0 auto;
  align-items: start;
}

.coro-principal-card {
  text-align: center;
}

.coro-principal-card img {
  display: block;
  width: 188px;
  height: 188px;
  margin: 0 auto 20px;
}

.coro-principal-card h2 {
  margin: 0 0 6px;
  color: #e8c28e;
  font-family: "Playfair Display", Georgia, serif;
  font-size: 28px;
  font-weight: 700;
  letter-spacing: 0;
}

.coro-principal-title {
  margin: 0 0 24px;
  color: #9b6e46;
  font-family: "Playfair Display", Georgia, serif;
  font-size: 20px;
  font-style: italic;
}

.coro-principal-catchphrase {
  margin: 14px auto 0;
  max-width: 320px;
  color: #34495e;
  font-size: 16px;
  font-style: italic;
  line-height: 1.45;
}

.coro-principal-copy {
  color: #34495e;
  font-size: 16px;
  line-height: 1.6;
  text-align: left;
}

.coro-principal-copy p {
  margin: 0 0 16px;
}

@media (max-width: 820px) {
  .coro-principal-grid {
    grid-template-columns: 1fr;
  }
}

.coro-agent-roster {
  background: #050000;
  color: #ffffff;
  padding: 56px 24px 64px;
}

.coro-agent-roster-inner {
  max-width: 1160px;
  margin: 0 auto;
}

.coro-agent-roster h2 {
  margin: 0 0 34px;
  color: #e8c28e;
  font-family: "Playfair Display", Georgia, serif;
  font-size: 28px;
  font-weight: 700;
  letter-spacing: 0;
  text-align: center;
  text-transform: uppercase;
}

.coro-agent-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 34px 28px;
}

.coro-agent-card {
  text-align: center;
}

.coro-two-card-agent-row {
  justify-content: center !important;
}

@media (min-width: 992px) {
  .coro-two-card-agent-row > .zpelem-col {
    flex: 0 0 33.333333%;
    max-width: 33.333333%;
  }
}

.coro-agent-card img {
  display: block;
  width: 150px;
  height: 150px;
  margin: 0 auto 18px;
}

.coro-agent-card h3 {
  margin: 0;
  color: #e8c28e;
  font-family: "Playfair Display", Georgia, serif;
  font-size: 24px;
  font-weight: 700;
  letter-spacing: 0;
}

.coro-agent-role {
  margin: 8px 0 0;
  color: #ffffff;
  font-size: 16px;
  font-style: italic;
  line-height: 1.35;
}

.coro-agent-description {
  margin: 20px auto 0;
  max-width: 320px;
  color: #ffffff;
  font-size: 16px;
  line-height: 1.45;
  text-align: left;
}

.coro-white-bg-link {
  color: #084F09;
  cursor: pointer;
  font-size: 80%;
  font-style: italic;
  text-decoration: underline;
  transition: font-size 160ms ease, font-weight 160ms ease;
}

.coro-white-bg-link:hover {
  font-size: 92%;
  font-weight: 700;
}

.coro-agent-catchphrase {
  margin: 12px auto 0;
  max-width: 220px;
  color: #ffffff;
  font-size: 16px;
  font-style: italic;
  line-height: 1.45;
}

@media (max-width: 991px) {
  .coro-agent-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 560px) {
  .coro-agent-grid {
    grid-template-columns: 1fr;
  }
}

.timeline-content p {
    color: #ffffff;
    font-size: 16px;
    margin: 0;
}

/* Loader overlay */
#loader {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: rgba(255,255,255,0.7);
  display: flex;
  justify-content: center;
  align-items: center;
  z-index: 9999;
  display: none;
}
#loader .spinner {
  border: 6px solid #f3f3f3;
  border-top: 6px solid #3498db;
  border-radius: 50%;
  width: 50px;
  height: 50px;
  animation: spin 1s linear infinite;
}
.zpdark-header-portion.theme-header .theme-portal-login.theme-portal-icon-enabled .theme-portal-container .theme-portal-content a[data-portal-signin] {
	color: #fff;
    background: #2F4858;
    border: 1px solid #eee;
}

.theme-portal-login.theme-portal-icon-enabled .theme-portal-container {
    padding: 0px;
    margin: 0px;
}

.zpdark-header-portion.theme-header .theme-portal-login.theme-portal-icon-enabled .theme-portal-container .theme-portal-content a[data-portal-signin]:hover {
color: white;
}

@keyframes spin {
  0% { transform: rotate(0deg);}
  100% { transform: rotate(360deg);}
}

/* This sets the hover state for your the cards button on the coro.art page*/
.merlot-hover-button a:hover {
    background-color: #ffffff !important; 
    color: #702931 !important;           
    border-color: #ffffff !important;
}


/* Developer's Note: This CSS targets the .compactform class to reduce vertical spacing between form fields by adjusting margins and paddings. Negative margins are used cautiously to compact the layout without causing overlaps. Border-radius is applied to inputs and textarea for rounded corners. Test on multiple devices for consistency. */
.compactform label,
.compactform div {
  margin-bottom: 0;
  padding-bottom: 0;
}

.compactform input,
.compactform textarea {
  border-radius: 5px;
  margin-top: 0;
  margin-bottom: -30px; /* Start conservative; increase negative if needed without overlapping */
}
/* Developer's Note: End of compact form styling. If issues persist (e.g., due to Zoho's overrides), inspect elements via browser dev tools to refine selectors further. Monitor for future Zoho updates that might affect this. */

/* Contact page static fallback form */
.coro-contact-form {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 16px;
  max-width: 760px;
  margin: 16px auto 24px;
  padding: 0 16px;
}

.coro-contact-field {
  display: flex;
  flex-direction: column;
  gap: 6px;
}

.coro-contact-field-full,
.coro-contact-actions {
  grid-column: 1 / -1;
}

.coro-contact-form label {
  color: #ffffff;
  font-size: 13px;
  letter-spacing: .08em;
  text-transform: uppercase;
}

.coro-contact-form input,
.coro-contact-form textarea {
  width: 100%;
  box-sizing: border-box;
  border: 1px solid rgba(232, 194, 142, .7);
  border-radius: 0;
  background: rgba(255, 255, 255, .94);
  color: #191714;
  font: 16px/1.4 "Manrope", Arial, sans-serif;
  padding: 12px 14px;
}

.coro-contact-form input:focus,
.coro-contact-form textarea:focus {
  outline: 2px solid #e8c28e;
  outline-offset: 2px;
}

.coro-contact-actions {
  text-align: center;
}

.coro-contact-actions button {
  border: 1px solid #e8c28e;
  background: #e8c28e;
  color: #8e141d;
  cursor: pointer;
  font: 700 13px/1 "Manrope", Arial, sans-serif;
  letter-spacing: .1em;
  padding: 14px 34px;
  text-transform: uppercase;
  transition: background .2s ease-in-out, color .2s ease-in-out, transform .2s ease-in-out;
}

.coro-contact-actions button:hover,
.coro-contact-actions button:focus {
  background: #ffffff;
  color: #8e141d;
  transform: scale(1.06);
}

@media (max-width: 680px) {
  .coro-contact-form {
    grid-template-columns: 1fr;
  }
}

/* Disable legacy Zoho SalesIQ chat widgets left over from Zoho export. */
#zsiq_float,
#siqiframe,
#zsiqscript,
.zsiq_floatmain,
.zls-sptwndw,
[title="SalesIQ Chatwindow"] {
  display: none !important;
  visibility: hidden !important;
  pointer-events: none !important;
}
