/* \u2500\u2500 HEADER: logo + nav layout \u2500\u2500 */
.site-header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 10px 32px;
  position: sticky;
  top: 0;
  z-index: 999;
  background: #fff;
  box-shadow: 0 1px 4px rgba(0,0,0,0.08);
  max-width: none !important;
  width: 100% !important;
  box-sizing: border-box !important;
}
.site-branding {
  display: flex;
  align-items: center;
  gap: 10px;
}
.site-title {
  margin: 0;
  font-size: 1.15rem !important;
  font-weight: 700;
  line-height: 1;
}
.site-title a {
  display: flex;
  align-items: center;
  gap: 10px;
  color: #0d2818 !important;
  text-decoration: none;
  letter-spacing: -0.01em;
}
.site-title a::before {
  content: '';
  display: inline-block;
  width: 36px;
  height: 36px;
  background-image: url(https://evl.rentals/wp-content/uploads/2026/03/@evlrentals.png);
  background-size: contain;
  background-repeat: no-repeat;
  flex-shrink: 0;
}
.site-description { display: none !important; }
.main-navigation { margin: 0; }

/* \u2500\u2500 WHAT WE DO: card styling \u2500\u2500 */
.wp-block-columns .wp-block-column {
  background: #fff;
  border: 1px solid #e4e0d8;
  border-radius: 10px;
  padding: 24px 20px !important;
  box-shadow: 0 2px 8px rgba(0,0,0,0.05);
  transition: box-shadow 0.2s, transform 0.2s;
}
.wp-block-columns .wp-block-column:hover {
  box-shadow: 0 6px 20px rgba(13,40,24,0.13);
  transform: translateY(-2px);
}

/* \u2500\u2500 BLOG THUMBNAILS: consistent aspect ratio \u2500\u2500 */
.wp-block-post-featured-image img,
.post-thumbnail img {
  aspect-ratio: 16/9;
  object-fit: cover;
  width: 100%;
  border-radius: 8px;
}

/* \u2500\u2500 FOOTER \u2500\u2500 */
.site-footer {
  background: #0d2818 !important;
  color: #c8d9c4 !important;
  padding: 32px 24px 20px !important;
}
.site-footer a { color: #a8c5a0 !important; text-decoration: none; }
.site-footer a:hover { color: #fff !important; }
/* \u2500\u2500 NUMBERS SECTION: reset card styling inside cover blocks \u2500\u2500 */
.wp-block-cover .wp-block-columns .wp-block-column {
  background: transparent !important;
  border: none !important;
  box-shadow: none !important;
  padding: 12px 16px !important;
  transform: none !important;
}
.wp-block-cover .wp-block-columns .wp-block-column:hover {
  box-shadow: none !important;
  transform: none !important;
}
/* \u2500\u2500 TYPOGRAPHY: consistent fonts & sizes across all pages \u2500\u2500 */
.entry-content p, .entry-content li {
  font-family: Rubik, sans-serif;
  font-size: 1rem;
  line-height: 1.75;
  font-weight: 400;
}
.entry-content h1 { font-family: Rubik, sans-serif; font-size: 2.25rem; font-weight: 700; line-height: 1.2; }
.entry-content h2 { font-family: Rubik, sans-serif; font-size: 1.65rem; font-weight: 700; line-height: 1.25; }
.entry-content h3 { font-family: Rubik, sans-serif; font-size: 1.2rem; font-weight: 600; line-height: 1.35; }
/* Preserve cover/hero block headings */
.wp-block-cover .entry-content h1,
.wp-block-cover .entry-content h2,
.wp-block-cover .wp-block-heading { font-size: revert; }
/* Override explicit "small" fontSize blocks back to normal */
.entry-content p.has-small-font-size:not(.evl-footer-copy) { font-size: 1rem !important; }

/* \u2500\u2500 FOOTER COLUMNS (sitewide) \u2500\u2500 */
.evl-footer-inner{display:flex;gap:40px;max-width:1100px;margin:0 auto;padding:40px 24px 24px;flex-wrap:wrap}
.evl-footer-col{flex:1;min-width:180px}
.evl-footer-col strong{display:block;color:#fff;font-size:.9rem;font-weight:700;margin-bottom:12px;text-transform:uppercase;letter-spacing:.06em}
.evl-footer-col p,.evl-footer-col li{font-size:.88rem;line-height:1.8;color:#c8d9c4!important;margin:0}
.evl-footer-col ul{list-style:none;margin:0;padding:0}
.evl-footer-col a{color:#a8c5a0!important;text-decoration:none}
.evl-footer-col a:hover{color:#fff!important}
.evl-footer-copy{font-size:.78rem!important;color:#6a9466!important;margin-top:14px!important}
.site-footer{padding:0!important}

/* \u2500\u2500 FOOTER COLUMNS (sitewide) \u2500\u2500 */
.evl-footer-inner{display:flex;gap:40px;max-width:1100px;margin:0 auto;padding:40px 24px 24px;flex-wrap:wrap}
.evl-footer-col{flex:1;min-width:180px}
.evl-footer-col strong{display:block;color:#fff;font-size:.9rem;font-weight:700;margin-bottom:12px;text-transform:uppercase;letter-spacing:.06em}
.evl-footer-col p,.evl-footer-col li{font-size:.88rem;line-height:1.8;color:#c8d9c4!important;margin:0}
.evl-footer-col ul{list-style:none;margin:0;padding:0}
.evl-footer-col a{color:#a8c5a0!important;text-decoration:none}
.evl-footer-col a:hover{color:#fff!important}
.evl-footer-copy{font-size:.78rem!important;color:#6a9466!important;margin-top:14px!important}
.site-footer{padding:0!important}
/* \u2500\u2500 FOOTER: fix description paragraph spacing \u2500\u2500 */
.evl-footer-col p:not(.evl-footer-copy){line-height:1.5!important;margin-bottom:6px!important}
.evl-footer-col li{line-height:1.6!important}

/* \u2500\u2500 READ MORE BUTTONS \u2500\u2500 */
.evl-btn{display:inline-block;background:#0d2818;color:#fff!important;padding:9px 22px;border-radius:6px;font-size:.85rem;font-weight:600;text-decoration:none!important;margin-top:8px;letter-spacing:.02em;transition:background .2s,transform .2s}
.evl-btn:hover{background:#1a4a2e!important;color:#fff!important;transform:translateY(-1px)}

/* \u2500\u2500 SERVICE CARDS: align Read More buttons at bottom \u2500\u2500 */
.wp-block-columns:has(.evl-btn) .wp-block-column{display:flex;flex-direction:column}
.wp-block-columns:has(.evl-btn) .wp-block-column .has-text-align-center{margin-top:auto;padding-top:14px}

/* \u2500\u2500 BLOG: consistent hero images \u2500\u2500 */
.single .post-thumbnail,.single .wp-post-image-container{margin:0 0 2rem;border-radius:12px;overflow:hidden}
.single .post-thumbnail img,.single .wp-post-image-container img{width:100%;height:420px;object-fit:cover;border-radius:12px;display:block}
/* Blog archive cards: uniform thumbnail height */
.blog .post-thumbnail img,.archive .post-thumbnail img,.wp-block-post-featured-image img{height:240px!important;object-fit:cover;border-radius:8px;aspect-ratio:unset!important}

/* CONTRACTOR CTA BUTTON */
.evl-btn-white{display:inline-block;background:transparent;color:#fff!important;padding:10px 26px;border-radius:6px;font-size:.9rem;font-weight:600;text-decoration:none!important;border:2px solid #fff;transition:background .2s,color .2s,transform .2s,box-shadow .2s;margin-top:8px}
.evl-btn-white:hover{background:#fff;color:#0d2818!important;transform:translateY(-1px);box-shadow:0 4px 12px rgba(0,0,0,0.2)}

/* CONTRACTOR CTA: override white card style on dark bg */
.evl-contractor-cta .wp-block-column{background:transparent!important;border:1px solid rgba(255,255,255,0.15)!important;box-shadow:none!important}
.evl-contractor-cta .wp-block-column h4{color:#fff!important;margin-top:0}
.evl-contractor-cta .wp-block-column ul{color:#c8d9c4!important;padding-left:1.2em}

/* UNIFIED BUTTON HOVER LIFT */
.wp-block-button__link{transition:background .2s,color .2s,transform .2s,box-shadow .2s!important}
.wp-block-button__link:hover{transform:translateY(-1px)!important;box-shadow:0 4px 12px rgba(0,0,0,0.2)!important}

/* \u2500\u2500 MOBILE NAV: logo left, hamburger right \u2500\u2500 */
@media (max-width: 768px) {
  .site-header {
    flex-wrap: wrap;
    padding: 10px 16px;
    position: relative;
  }
  .site-title {
    flex: 1;
    order: 1;
  }
  .main-navigation {
    order: 2;
    display: flex !important;
    flex-wrap: wrap;
    align-items: center;
    width: auto;
  }
  #toggle-menu {
    display: flex !important;
    align-items: center;
    gap: 6px;
    cursor: pointer;
    font-size: .85rem;
    font-weight: 700;
    color: #fff;
    padding: 6px 10px;
    background: #1a5c36;
    border: 1.5px solid #0d2818;
    border-radius: 5px;
    user-select: none;
  }
  #toggle-menu .dropdown-icon { font-style: normal; font-size: 1.1rem; }
  #toggle { display: none !important; }
  .main-navigation .menu-primary-container {
    order: 3;
    width: 100vw;
    display: none;
    background: #fff;
    border-top: 1px solid #e4e0d8;
    box-shadow: 0 4px 12px rgba(0,0,0,0.1);
    position: absolute;
    top: 100%;
    left: 0;
    z-index: 1000;
  }
  #toggle:checked ~ .menu-primary-container { display: block !important; }
  .main-navigation .main-menu {
    list-style: none;
    margin: 0;
    padding: 8px 0;
    display: flex !important;
    flex-direction: column;
  }
  .main-navigation .main-menu li { border-bottom: 1px solid #f0ede6; }
  .main-navigation .main-menu li:last-child { border-bottom: none; }
  .main-navigation .main-menu li a {
    display: block;
    padding: 13px 20px;
    font-size: .95rem;
    font-weight: 500;
    color: #0d2818 !important;
    text-decoration: none;
  }
  .main-navigation .main-menu li a:hover { background: #f5f2eb; }
  .main-navigation .main-menu li.current-menu-item \u003E a { font-weight: 700; color: #1a5c36 !important; }
}
@media (min-width: 769px) {
  #toggle-menu { display: none !important; }
  #toggle { display: none !important; }
}

/* ── Footer block: full-width fix ─────────────────────────────── */
.wp-block-group.evl-contractor-cta.alignfull {
  margin-left: -16px !important;
  margin-right: -16px !important;
  width: calc(100% + 32px) !important;
  max-width: calc(100% + 32px) !important;
}

/* ── Site footer: full-width fix ──────────────────────────────── */
#colophon.site-footer {
  max-width: 100% !important;
  width: 100% !important;
}

/* -- What We Do section: mobile full-bleed fix -- */
@media (max-width: 768px) {
	body .evl-svc-wrap {
		    left: 0 !important;
		    margin-left: calc(50% - 50vw) !important;
		    margin-right: 0 !important;
		    width: 100vw !important;
		    max-width: 100vw !important;
	}
	body .evl-svc-grid {
		    grid-template-columns: 1fr !important;
	}
}
	}
	}
}

/* Full-width property link on mobile */
@media (max-width: 600px) {
  .evl-hero-property-link {
    left: 16px;
    right: 16px;
    transform: none;
    width: auto;
  }
  .evl-hero-property-link a {
    font-size: 13px;
    padding: 12px 18px;
    width: 100%;
    justify-content: center;
  }
}

/* ── HEADER: full-width on wide screens ── */
@media (min-width: 1164px) {
  .site-header {
    padding-left: calc((100% - 1100px) / 2 + 32px) !important;
    padding-right: calc((100% - 1100px) / 2 + 32px) !important;
  }
}

/* —— Hide page title visually on Property Management page (keep for SEO) —— */
.page-id-7120 .entry-title {
  position: absolute !important;
  width: 1px !important;
  height: 1px !important;
  padding: 0 !important;
  margin: -1px !important;
  overflow: hidden !important;
  clip: rect(0,0,0,0) !important;
  white-space: nowrap !important;
  border: 0 !important;
}

/* Mobile line break for "Run by Owners. For Owners." */
@media (max-width: 600px) {
  .page-id-7120 .evl-fade-in > div > h2 {
    max-width: 260px;
    margin-left: auto;
    margin-right: auto;
  }
}

/* ═══════════════════════════════════════════════════
   EXPLORE ELLICOTTVILLE: Season icons & Village card
   ═══════════════════════════════════════════════════ */

/* Shared icon style for seasonal card headings */
.page-id-35 .wp-block-group.has-background .wp-block-columns > .wp-block-column:nth-child(1) h4::before,
.page-id-35 .wp-block-group.has-background .wp-block-columns > .wp-block-column:nth-child(2) h4::before {
  display: block;
  margin-bottom: 12px;
  width: 36px;
  height: 36px;
  content: "";
  background-size: contain;
  background-repeat: no-repeat;
}

/* Winter icon: snowflake */
.page-id-35 .wp-block-group.has-background .wp-block-columns > .wp-block-column:nth-child(1) h4::before {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%232C5530' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cline x1='12' y1='2' x2='12' y2='22'/%3E%3Cline x1='2' y1='12' x2='22' y2='12'/%3E%3Cline x1='5.6' y1='5.6' x2='18.4' y2='18.4'/%3E%3Cline x1='18.4' y1='5.6' x2='5.6' y2='18.4'/%3E%3Cline x1='12' y1='2' x2='9.5' y2='4.5'/%3E%3Cline x1='12' y1='2' x2='14.5' y2='4.5'/%3E%3Cline x1='12' y1='22' x2='9.5' y2='19.5'/%3E%3Cline x1='12' y1='22' x2='14.5' y2='19.5'/%3E%3Cline x1='2' y1='12' x2='4.5' y2='9.5'/%3E%3Cline x1='2' y1='12' x2='4.5' y2='14.5'/%3E%3Cline x1='22' y1='12' x2='19.5' y2='9.5'/%3E%3Cline x1='22' y1='12' x2='19.5' y2='14.5'/%3E%3C/svg%3E");
}

/* Summer & Fall icon: sun */
.page-id-35 .wp-block-group.has-background .wp-block-columns > .wp-block-column:nth-child(2) h4::before {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%232C5530' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='12' cy='12' r='5'/%3E%3Cline x1='12' y1='1' x2='12' y2='4'/%3E%3Cline x1='12' y1='20' x2='12' y2='23'/%3E%3Cline x1='4.22' y1='4.22' x2='6.34' y2='6.34'/%3E%3Cline x1='17.66' y1='17.66' x2='19.78' y2='19.78'/%3E%3Cline x1='1' y1='12' x2='4' y2='12'/%3E%3Cline x1='20' y1='12' x2='23' y2='12'/%3E%3Cline x1='4.22' y1='19.78' x2='6.34' y2='17.66'/%3E%3Cline x1='17.66' y1='6.34' x2='19.78' y2='4.22'/%3E%3C/svg%3E");
}

/* The Village card: different treatment */
.page-id-35 .wp-block-group.has-background .wp-block-columns > .wp-block-column:nth-child(3) {
  background: #2C5530 !important;
  color: #fff !important;
  border: none !important;
}

.page-id-35 .wp-block-group.has-background .wp-block-columns > .wp-block-column:nth-child(3) h4 {
  color: #fff !important;
}

.page-id-35 .wp-block-group.has-background .wp-block-columns > .wp-block-column:nth-child(3) p {
  color: rgba(255,255,255,0.85) !important;
}

/* Village icon: map pin */
.page-id-35 .wp-block-group.has-background .wp-block-columns > .wp-block-column:nth-child(3) h4::before {
  display: block;
  margin-bottom: 12px;
  width: 36px;
  height: 36px;
  content: "";
  background-size: contain;
  background-repeat: no-repeat;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23ffffff' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 2C8.13 2 5 5.13 5 9c0 5.25 7 13 7 13s7-7.75 7-13c0-3.87-3.13-7-7-7z'/%3E%3Ccircle cx='12' cy='9' r='2.5'/%3E%3C/svg%3E");
}

/* Hero buttons: same width on homepage & management */
.page-id-35 .wp-block-cover .wp-block-button__link,
.page-id-7120 .wp-block-cover .wp-block-button__link {
  min-width: 280px;
  text-align: center;
}

/* FAQ section heading icons */
.page-id-7091 .entry-content > h2.wp-block-heading {
  display: flex;
  align-items: center;
  gap: 12px;
}

.page-id-7091 .entry-content > h2.wp-block-heading::before {
  display: inline-block;
  flex-shrink: 0;
  width: 32px;
  height: 32px;
  content: "";
  background-size: contain;
  background-repeat: no-repeat;
}

/* Booking & Pricing icon: dollar/tag */
.page-id-7091 .entry-content > h2.wp-block-heading:nth-of-type(1)::before {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%232C5530' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cline x1='12' y1='1' x2='12' y2='23'/%3E%3Cpath d='M17 5H9.5a3.5 3.5 0 000 7h5a3.5 3.5 0 010 7H6'/%3E%3C/svg%3E");
}

/* Check-In & Your Stay icon: key */
.page-id-7091 .entry-content > h2.wp-block-heading:nth-of-type(2)::before {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%232C5530' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M21 2l-2 2m-7.61 7.61a5.5 5.5 0 11-7.778 7.778 5.5 5.5 0 017.777-7.777zm0 0L15.5 7.5m0 0l3 3L22 7l-3-3m-3.5 3.5L19 4'/%3E%3C/svg%3E");
}

/* Property-Specific icon: home */
.page-id-7091 .entry-content > h2.wp-block-heading:nth-of-type(3)::before {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%232C5530' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M3 9l9-7 9 7v11a2 2 0 01-2 2H5a2 2 0 01-2-2z'/%3E%3Cpolyline points='9 22 9 12 15 12 15 22'/%3E%3C/svg%3E");
}

/* The Area icon: map */
.page-id-7091 .entry-content > h2.wp-block-heading:nth-of-type(4)::before {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%232C5530' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolygon points='1 6 1 22 8 18 16 22 23 18 23 2 16 6 8 2 1 6'/%3E%3Cline x1='8' y1='2' x2='8' y2='18'/%3E%3Cline x1='16' y1='6' x2='16' y2='22'/%3E%3C/svg%3E");
}

/* Still Have Questions icon: message circle */
.page-id-7091 .entry-content > h2.wp-block-heading:nth-of-type(5)::before {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%232C5530' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M21 11.5a8.38 8.38 0 01-.9 3.8 8.5 8.5 0 01-7.6 4.7 8.38 8.38 0 01-3.8-.9L3 21l1.9-5.7a8.38 8.38 0 01-.9-3.8 8.5 8.5 0 014.7-7.6 8.38 8.38 0 013.8-.9h.5a8.48 8.48 0 018 8v.5z'/%3E%3C/svg%3E");
}

/* FAQ details styling: cleaner accordion look */
.page-id-7091 .entry-content > .wp-block-details {
  border-bottom: 1px solid #e4e0d8;
  padding: 16px 0;
  margin-bottom: 0 !important;
}

.page-id-7091 .entry-content > .wp-block-details summary {
  cursor: pointer;
  font-weight: 600;
  padding: 4px 0;
  list-style: none;
  display: flex;
  align-items: center;
  gap: 10px;
}

.page-id-7091 .entry-content > .wp-block-details summary::before {
  content: "+";
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 24px;
  height: 24px;
  border-radius: 50%;
  background: #f5f2eb;
  color: #2C5530;
  font-weight: 700;
  font-size: 16px;
  flex-shrink: 0;
  transition: transform 0.2s ease;
}

.page-id-7091 .entry-content > .wp-block-details[open] summary::before {
  content: "\2212";
  background: #2C5530;
  color: #fff;
}

.page-id-7091 .entry-content > .wp-block-details summary::-webkit-details-marker {
  display: none;
}

.page-id-7091 .entry-content > .wp-block-details summary::marker {
  content: "";
}

/* FAQ section spacing */
.page-id-7091 .entry-content > .wp-block-separator {
  margin: 32px 0 !important;
  border-color: #e4e0d8 !important;
}

.page-id-7091 .entry-content > h2.wp-block-heading {
  margin-bottom: 8px !important;
  color: #2C5530 !important;
  font-size: 1.4em !important;
}

/* ── Mobile: full-width property pill + single-line hero heading ── */
@media (max-width: 600px) {
  .evl-hero-property-link {
    left: 16px !important;
    right: 16px !important;
    transform: none !important;
  }
  .evl-hero-property-link a {
    width: 100%;
    justify-content: center;
    white-space: nowrap;
  }
  h1#ellicottville-vacation-rentals {
    font-size: clamp(18px, 5.8vw, 27px) !important;
    white-space: nowrap;
  }
}

/* ========== 404 PAGE ========== */
body.error404 .page-header {
  display: none !important;
}