.elementor-kit-584{--e-global-color-primary:#4A4645;--e-global-color-secondary:#2F6F73;--e-global-color-text:#2A2625;--e-global-color-accent:#D2B79C;--e-global-color-cream:#F4F2EE;--e-global-typography-primary-font-family:"Dosis";--e-global-typography-primary-font-weight:600;--e-global-typography-primary-text-transform:uppercase;--e-global-typography-primary-letter-spacing:1.5px;--e-global-typography-secondary-font-family:"Dosis";--e-global-typography-secondary-font-weight:500;--e-global-typography-secondary-text-transform:uppercase;--e-global-typography-secondary-letter-spacing:1px;--e-global-typography-text-font-family:"Montserrat";--e-global-typography-text-font-weight:400;--e-global-typography-accent-font-family:"Montserrat";--e-global-typography-accent-font-weight:600;}.elementor-kit-584 e-page-transition{background-color:#FFBC7D;}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1140px;}.e-con{--container-max-width:1140px;}.elementor-widget:not(:last-child){--kit-widget-spacing:20px;}.elementor-element{--widgets-spacing:20px 20px;--widgets-spacing-row:20px;--widgets-spacing-column:20px;}{}h1.entry-title{display:var(--page-title-display);}.site-header .site-branding{flex-direction:column;align-items:stretch;}.site-header{padding-inline-end:0px;padding-inline-start:0px;}.site-footer .site-branding{flex-direction:column;align-items:stretch;}@media(max-width:1024px){.elementor-section.elementor-section-boxed > .elementor-container{max-width:1024px;}.e-con{--container-max-width:1024px;}}@media(max-width:767px){.elementor-section.elementor-section-boxed > .elementor-container{max-width:767px;}.e-con{--container-max-width:767px;}}
/* Start custom CSS */.woocommerce a.button.alt, .woocommerce button.button.alt,
.wc-proceed-to-checkout a.checkout-button { background:#2F6F73; color:#F4F2EE; border-radius:8px; }
.woocommerce a.button.alt:hover, .wc-proceed-to-checkout a.checkout-button:hover { background:#C2A386; }
#coupon_code { width:220px; min-width:220px; }

/* Brand refresh Nov 2026 */
body{font-family:"Montserrat",sans-serif;color:#2A2625;}
h1,h2,h3,h4,.e-heading-base{font-family:"Dosis",sans-serif;font-weight:600;letter-spacing:1px;color:#4A4645;}
a{color:#2F6F73;}
.woocommerce button.button, .woocommerce a.button, .woocommerce input.button, .single_add_to_cart_button{font-family:"Montserrat",sans-serif;font-weight:600;background:#2F6F73;color:#F4F2EE;border-radius:8px;}
.woocommerce button.button:hover, .woocommerce a.button:hover, .single_add_to_cart_button:hover{background:#D2B79C;color:#2A2625;}
/* Pages build their own headings in Elementor; hide the theme's page title (blog posts keep theirs) */
body.page .page-header{display:none;}
/* Cream buttons turn sand when tapped */
body .elementor-slide-button:active, body .elementor-slide-button:focus-visible,
body .elementor-location-header .elementor-button:active{background-color:#D2B79C;border-color:#D2B79C;color:#2A2625;}
/* Forms (Elementor atomic forms) */
.elementor .e-form-base{display:flex;flex-direction:column;gap:6px;}
.elementor .e-form-base .e-form-label-base{font-family:"Montserrat",sans-serif;font-size:14px;font-weight:600;color:#4A4645;margin-top:10px;}
.elementor .e-form-base .e-form-input-base, .elementor .e-form-base textarea{width:100%;height:auto;font-family:"Montserrat",sans-serif;font-size:16px;color:#2A2625;background:#fff;border:1px solid #D9D4CC;border-radius:8px;padding:12px 14px;box-sizing:border-box;}
.elementor .e-form-base .e-form-input-base:focus, .elementor .e-form-base textarea:focus{outline:none;border-color:#2F6F73;box-shadow:0 0 0 3px rgba(47,111,115,.15);}
.elementor .e-form-base .e-form-submit-button-base{margin-top:16px;align-self:flex-start;font-family:"Montserrat",sans-serif;font-weight:600;font-size:15px;background:#2F6F73;color:#F4F2EE;border:0;border-radius:8px;padding:12px 26px;cursor:pointer;transition:background .2s,color .2s;}
.elementor .e-form-base .e-form-submit-button-base:hover, .elementor .e-form-base .e-form-submit-button-base:focus-visible{background:#D2B79C;color:#2A2625;}
/* About page */
.page-id-8 .elementor-element-bda6c37 p{font-size:17px;line-height:1.7;margin:0 0 16px;}
.page-id-8 .elementor-element-bda6c37 p.hoc-lead{font-family:"Dosis",sans-serif;font-size:22px;color:#2F6F73;letter-spacing:.5px;}
.page-id-8 .elementor-element-bda6c37 p.hoc-sign{font-family:"Dosis",sans-serif;font-size:22px;font-weight:600;color:#4A4645;}
.page-id-8 .elementor-element-2f7f414{background:#F4F2EE;border-radius:12px;padding:32px;}
.page-id-8 .elementor-element h1,
.page-id-8 .elementor-element h2 {font-size:40px;text-transform:uppercase;margin:0 0 12px;}
@media (max-width:767px){.page-id-8 .elementor-element h2{font-size:30px;}}
/* About: photos match the height of the text beside them (desktop/tablet) */
@media (min-width:768px){
.page-id-8 .elementor-element-ed41829, .page-id-8 .elementor-element-e0519ee{align-self:stretch;justify-content:stretch;}
.page-id-8 .elementor-element-ed41829 img.e-image-base, .page-id-8 .elementor-element-e0519ee img.e-image-base{width:100%;height:100%;flex:1;object-fit:cover;border-radius:12px;}
}
@media (min-width:768px){.page-id-8 .elementor-element-ed41829 img.e-image-base{object-position:25% 50%;}}
/* Prices */
.woocommerce .price, .woocommerce div.product p.price, .woocommerce div.product span.price, .elementor-widget-woocommerce-product-price .price{color:#2F6F73;font-family:"Montserrat",sans-serif;font-weight:700;}
.woocommerce .single_add_to_cart_button.disabled{opacity:.55;}
/* Trips list alternating */
.page-id-67 .elementor-element-f8f3cab .e-loop-item:nth-child(even) .elementor-element-b484560{background-color:#F4F2EE;}
/* Trip page itinerary */
.elementor-714 .elementor-element-7445e2b h1{font-size:15px;color:#2F6F73;letter-spacing:2px;text-transform:uppercase;margin:28px 0 4px;}
.elementor-714 .elementor-element-7445e2b h3{font-size:22px;color:#4A4645;text-transform:none;letter-spacing:.5px;margin:0 0 10px;}
/* Trip page section headers: teal underline */
.elementor-714 .elementor-element-62c5a89 .elementor-heading-title,
.elementor-714 .elementor-element-8c6f710 .elementor-heading-title,
.elementor-714 .elementor-element-8e45571 .elementor-heading-title,
.elementor-714 .elementor-element-15b423d .elementor-heading-title,
.elementor-714 .elementor-element-a7ba831 .elementor-heading-title,
.elementor-714 .elementor-element-f8b368c .elementor-heading-title,
.elementor-714 .elementor-element-3e187f6 .elementor-heading-title{position:relative;padding-bottom:14px;}
.elementor-714 .elementor-element-62c5a89 .elementor-heading-title::after,
.elementor-714 .elementor-element-8c6f710 .elementor-heading-title::after,
.elementor-714 .elementor-element-8e45571 .elementor-heading-title::after,
.elementor-714 .elementor-element-15b423d .elementor-heading-title::after,
.elementor-714 .elementor-element-a7ba831 .elementor-heading-title::after,
.elementor-714 .elementor-element-f8b368c .elementor-heading-title::after,
.elementor-714 .elementor-element-3e187f6 .elementor-heading-title::after{content:"";position:absolute;left:0;bottom:0;width:40px;height:3px;border-radius:2px;background:#2F6F73;}
/* Empty trips state: homepage "coming soon" block only shows when no featured trips */
body:not(.elementor-editor-active) .hoc-trips-empty{display:none;}
body:has(.elementor-element-db91609 .e-loop-nothing-found-message) .hoc-trips-empty{display:flex;}
.elementor-element-db91609 .e-loop-nothing-found-message{display:none;}
/* Trail Guide posts */
.hoc-post-body p, .hoc-post-body li{font-size:17px;line-height:1.75;color:#2A2625;}
.hoc-post-body h3{font-size:24px;text-transform:uppercase;letter-spacing:1px;margin:36px 0 12px;position:relative;padding-bottom:12px;}
.hoc-post-body h3::after{content:"";position:absolute;left:0;bottom:0;width:40px;height:3px;border-radius:2px;background:#2F6F73;}
.hoc-post-body ul, .hoc-post-body ol{padding-left:22px;margin:0 0 18px;}
.hoc-post-body li{margin-bottom:6px;}
.hoc-post-body .hoc-quick-facts{background:#F4F2EE;border-left:4px solid #2F6F73;border-radius:0;padding:22px 26px 10px;margin:32px 0;}
.hoc-post-body .hoc-quick-facts h3{margin-top:0;}
.hoc-post-body .hoc-cta{background:#2F6F73;border-radius:12px;padding:30px 30px 14px;margin:40px 0 10px;text-align:center;}
.hoc-post-body .hoc-cta h3, .hoc-post-body .hoc-cta p{color:#F4F2EE;}
.hoc-post-body .hoc-cta h3::after{left:50%;transform:translateX(-50%);background:#D2B79C;}
.hoc-post-body a.hoc-btn{display:inline-block;background:#F4F2EE;color:#2A2625;font-family:"Montserrat",sans-serif;font-weight:600;font-size:15px;padding:12px 26px;border-radius:8px;text-decoration:none;transition:background .2s;}
.hoc-post-body a.hoc-btn:hover{background:#D2B79C;color:#2A2625;}
/* Post cards (blog listing, home, related) */
.elementor-posts .elementor-post__card{border-radius:12px;border:1px solid #E2DDD6;box-shadow:none;}
.elementor-posts .elementor-post__card .elementor-post__title, .elementor-posts .elementor-post__card .elementor-post__title a{font-family:"Dosis",sans-serif;font-weight:600;text-transform:uppercase;letter-spacing:1px;font-size:20px;color:#4A4645;}
.elementor-posts .elementor-post__card .elementor-post__excerpt p{font-family:"Montserrat",sans-serif;font-size:14px;color:#2A2625;}
.elementor-posts .elementor-post__card .elementor-post__read-more{font-family:"Montserrat",sans-serif;font-weight:600;color:#2F6F73;text-transform:none;font-size:14px;}
.elementor-posts .elementor-post__badge{background:#2F6F73;color:#F4F2EE;font-family:"Montserrat",sans-serif;font-weight:600;letter-spacing:.5px;border-radius:999px;}
.elementor-posts .elementor-post__thumbnail__link:empty, .elementor-posts .elementor-post__card:not(:has(img)) .elementor-post__thumbnail__link{background:#4A4645;}
.hoc-post-body .hoc-post-photo{margin:28px 0;}
.hoc-post-body .hoc-post-photo img{width:100%;height:auto;max-height:620px;object-fit:cover;border-radius:12px;display:block;}
/* Day hikes (Eventbrite) */
.hoc-day-hikes .blocks-for-eventbrite, .hoc-day-hikes .blocks-for-eventbrite button, .hoc-day-hikes .blocks-for-eventbrite p, .hoc-day-hikes .blocks-for-eventbrite time{font-family:"Montserrat",sans-serif;color:#2A2625;}
.hoc-day-hikes .blocks-for-eventbrite article{border:1px solid #E2DDD6;border-radius:12px;box-shadow:none;overflow:hidden;background:#fff;}
.hoc-day-hikes .blocks-for-eventbrite article time:not(.event__details--date):first-child{color:#2F6F73;font-weight:700;text-transform:uppercase;letter-spacing:1px;}
.hoc-day-hikes .blocks-for-eventbrite article time:not(.event__details--date){color:#4A4645;}
.hoc-day-hikes .blocks-for-eventbrite article a{font-family:"Dosis",sans-serif;font-weight:600;text-transform:uppercase;letter-spacing:.5px;color:#4A4645;text-decoration:none;}
.hoc-day-hikes .blocks-for-eventbrite article button:first-of-type{color:#2F6F73;font-weight:600;}
.hoc-day-hikes .blocks-for-eventbrite article button:last-of-type{color:#F4F2EE;font-weight:600;border-radius:8px;transition:background .2s;}
.hoc-day-hikes .blocks-for-eventbrite article button:last-of-type:hover{background:#D2B79C;color:#2A2625;}
/* Day hikes wide cards */
.hoc-day-hikes .blocks-for-eventbrite .event__list{flex-direction:column;align-items:stretch;gap:20px;}
/* the Eventbrite plugin forces a 20rem card width with !important, so this override needs it too */
.hoc-day-hikes .blocks-for-eventbrite article.event__single{max-width:100% !important;width:100% !important;margin:0;}
.hoc-day-hikes .event__single--innerWrapper{display:grid;grid-template-columns:42% 1fr;align-items:stretch;min-height:240px;}
.hoc-day-hikes .event__single--innerWrapper > img{width:100%;height:100% !important;object-fit:cover;max-height:none;}
.hoc-day-hikes .event__single--innerWrapper > div{padding:20px 24px;display:flex;flex-direction:column;justify-content:center;}
.hoc-day-hikes .blocks-for-eventbrite article h3 a{font-size:22px;line-height:1.25;white-space:normal;}
.hoc-day-hikes .blocks-for-eventbrite article h3{white-space:normal;overflow:visible;}
.hoc-day-hikes .blocks-for-eventbrite article *{text-overflow:clip;}
.hoc-day-hikes .blocks-for-eventbrite article a.hoc-hike-btn{display:inline-block;text-transform:none;letter-spacing:0;margin-top:12px;background:#2F6F73;color:#F4F2EE;font-family:"Montserrat",sans-serif;font-weight:600;font-size:15px;padding:12px 24px;border-radius:8px;text-decoration:none;transition:background .2s;}
.hoc-day-hikes .blocks-for-eventbrite article a.hoc-hike-btn:hover{background:#D2B79C;color:#2A2625;}
@media (max-width:767px){.hoc-day-hikes .event__single--innerWrapper{grid-template-columns:1fr;}.hoc-day-hikes .event__single--innerWrapper > img{height:200px !important;}}
/* Header button no wrap */
.elementor-location-header .elementor-element-4a19d18 .elementor-button{white-space:nowrap;}
/* Header: smaller laptops (social icons stay in the footer) */
@media (min-width:1025px) and (max-width:1300px){.elementor-location-header .elementor-element-58146d1e{display:none;}}
@media (min-width:1025px) and (max-width:1180px){.elementor-location-header .elementor-element-976fde7 .elementor-item{font-size:15px;}}
/* Join page (Flodesk form). Flodesk ships its own styles, so these .elementor-kit-584s are scoped one step more specific than Flodesk's */
body .hoc-join [data-ff-el="root"] [class*="__title"], body .hoc-join [data-ff-el="root"] [class*="__subtitle"]{display:none;}
body .hoc-join [data-ff-el="root"] [class*="__container"], body .hoc-join [data-ff-el="root"] [class*="__wrapper"]{background:transparent;max-width:440px;margin:0 auto;padding:0;}
body .hoc-join [data-ff-el="root"] [class*="__form"]{background:transparent;padding:0;}
body .hoc-join [data-ff-el="root"] .fd-form-control{font-family:"Montserrat",sans-serif;font-size:16px;color:#2A2625;background:#fff;border:1px solid #D9D4CC;border-radius:8px;}
body .hoc-join [data-ff-el="root"] .fd-form-control:focus{border-color:#2F6F73;}
body .hoc-join [data-ff-el="root"] .fd-form-label{font-family:"Montserrat",sans-serif;color:#4A4645;}
body .hoc-join [data-ff-el="root"] [class*="__button"]{font-family:"Montserrat",sans-serif;font-weight:600;font-size:16px;background:#2F6F73;color:#F4F2EE;border:1px solid #2F6F73;border-radius:8px;transition:background .2s;}
body .hoc-join [data-ff-el="root"] [class*="__button"]:hover{background:#D2B79C;border-color:#D2B79C;color:#2A2625;}
body .hoc-join [data-ff-el="root"] [class*="__button"] *{color:inherit;font-family:inherit;}
/* Footer links */
.hoc-footer-links ul{list-style:none;margin:0;padding:0;}
.hoc-footer-links li{margin:0 0 8px;font-family:"Montserrat",sans-serif;font-size:15px;}
.hoc-footer-links a{color:#F4F2EE;text-decoration:none;transition:color .2s;}
.hoc-footer-links a:hover{color:#D2B79C;}
@media (max-width:767px){.hoc-footer-links ul{text-align:center;}}

/* Mobile homepage: easier-to-read hero and compact feature list */
@media (max-width: 767px) {
  body .elementor-element-340ddae .swiper-slide .elementor-background-overlay {
    background: linear-gradient(180deg, rgba(42,38,37,.35) 0%, rgba(42,38,37,.6) 55%, rgba(42,38,37,.35) 100%);
  }
  body .elementor-element-340ddae .swiper-slide-inner {
    align-items: flex-start;
    padding-top: 36px;
  }
  body .elementor-element-340ddae .swiper-slide-bg {
    background-position: 50% 30%;
  }
  body .elementor-element-340ddae .elementor-slide-heading,
  body .elementor-element-340ddae .elementor-slide-description {
    text-shadow: 0 1px 8px rgba(0,0,0,.45);
  }
  body .elementor-element-340ddae .elementor-slide-button {
    white-space: nowrap;
    font-size: 14px;
    padding: 12px 20px;
  }
  body .elementor-element-06bf8c8 {
    gap: 22px;
  }
  body .elementor-element-06bf8c8 > .e-con {
    display: grid;
    grid-template-columns: 48px 1fr;
    column-gap: 16px;
    row-gap: 2px;
    align-items: center;
    text-align: left;
    width: 100%;
  }
  body .elementor-element-06bf8c8 > .e-con > :first-child {
    grid-row: span 2;
    align-self: start;
    max-width: 48px;
  }
  body .elementor-element-06bf8c8 > .e-con > :first-child svg,
  body .elementor-element-06bf8c8 > .e-con > :first-child i {
    width: 40px;
    height: 40px;
    font-size: 40px;
  }
  body .elementor-element-06bf8c8 > .e-con h2 {
    font-size: 21px;
    margin: 0;
    text-align: left;
  }
  body .elementor-element-06bf8c8 > .e-con > :last-child,
  body .elementor-element-06bf8c8 > .e-con > :last-child * {
    text-align: left;
    margin: 0;
  }
}

/* Community page (/community/) */
.hoc-community .hoc-eyebrow .elementor-heading-title {
  font-family: "Montserrat", sans-serif;
  font-size: 13px;
  font-weight: 600;
  letter-spacing: 2px;
  text-transform: uppercase;
  color: #2F6F73;
}
.hoc-community h1.elementor-heading-title {
  font-size: 44px;
  color: #4A4645;
}
.hoc-community h2.elementor-heading-title {
  font-size: 30px;
  color: #4A4645;
}
.hoc-community h3.elementor-heading-title {
  font-size: 24px;
  color: #4A4645;
}
.hoc-community .hoc-community-sub {
  margin-top: 16px;
}
.hoc-community .elementor-widget-text-editor p {
  margin: 0;
  color: #2A2625;
}
.hoc-community .hoc-small {
  font-size: 14px;
}
.hoc-community .elementor-widget-text-editor a {
  color: #2F6F73;
  font-weight: 600;
  text-decoration: none;
}
.hoc-community .elementor-widget-text-editor a:hover {
  color: #4A4645;
}
.hoc-community .hoc-btn-teal .elementor-button {
  background: #2F6F73;
  color: #F4F2EE;
  font-family: "Montserrat", sans-serif;
  font-weight: 600;
  border-radius: 8px;
  padding: 14px 28px;
  margin: 6px 0;
  transition: background .2s, color .2s;
}
.hoc-community .hoc-btn-teal .elementor-button:hover {
  background: #D2B79C;
  color: #2A2625;
}
.hoc-community .hoc-wa-form .elementor-field-label {
  font-family: "Montserrat", sans-serif;
  font-size: 14px;
  font-weight: 600;
  color: #4A4645;
}
.hoc-community .hoc-wa-form .elementor-field-textual {
  font-family: "Montserrat", sans-serif;
  font-size: 16px;
  background: #fff;
  border: 1px solid #D9D4CC;
  border-radius: 8px;
  color: #2A2625;
}
.hoc-community .hoc-wa-form .elementor-field-textual:focus {
  border-color: #2F6F73;
}
.hoc-community .hoc-wa-form .elementor-field-option label {
  font-family: "Montserrat", sans-serif;
  font-size: 15px;
  color: #2A2625;
}
.hoc-community .hoc-wa-form input[type="checkbox"] {
  accent-color: #2F6F73;
}
.hoc-community .hoc-wa-form .elementor-button {
  background: #2F6F73;
  color: #F4F2EE;
  font-family: "Montserrat", sans-serif;
  font-weight: 600;
  font-size: 16px;
  border-radius: 8px;
  transition: background .2s, color .2s;
}
.hoc-community .hoc-wa-form .elementor-button:hover {
  background: #D2B79C;
  color: #2A2625;
}
@media (max-width: 767px) {
  .hoc-community h1.elementor-heading-title { font-size: 34px; }
  .hoc-community h2.elementor-heading-title { font-size: 26px; }
}/* End custom CSS */