@font-face{font-family:'Dancing Script';font-style:normal;font-weight:400;font-display:swap;src:url('dancing-caption.woff2') format('woff2');}
.keystone-intro { font-size:16px; line-height:1.5; font-weight:400; margin:0 0 20px; }
.keystone-tagline { font-size:32px; line-height:1.4; margin:0 0 20px; }
.home .keystone-intro { font-size:18px; font-weight:700; }
.keystone-section-heading { font-size:16px!important; line-height:1.5!important; font-weight:700; }
.keystone-contact-heading { font-size:32px; line-height:1.4; }
.fusion-main-menu .current-menu-item > a,
.fusion-main-menu > ul > li > a:hover,
.fusion-main-menu > ul > li > a:focus-visible { color:#b34700!important; }
a:focus-visible, button:focus-visible { outline:3px solid #b34700; outline-offset:4px; }
.keystone-native .fusion-title-heading { font-size:clamp(24px,3vw,calc(var(--fontSize,34)*1px))!important; line-height:1.4!important; }
.keystone-native .fusion-logo .fusion-standard-logo { aspect-ratio:479/128; max-width:479px; height:auto; }
.keystone-native .fusion-logo .fusion-mobile-logo,
.keystone-native .fusion-logo .fusion-sticky-logo { aspect-ratio:240/115; height:auto; }
.keystone-native .fusion-gallery { display:block!important; columns:3; column-gap:15px; margin:0!important; height:auto!important; }
.keystone-native .fusion-gallery > .fusion-grid-column { display:inline-block!important; float:none!important; width:100%!important; position:static!important; transform:none!important; padding:0!important; margin:0 0 15px!important; break-inside:avoid; }
.keystone-native .fusion-gallery img { width:100%; height:auto; }
.keystone-native .fusion-gallery-image { display:block!important; opacity:1!important; visibility:visible!important; }
.keystone-native .fusion-gallery-image a { display:block; }
.keystone-native main h1:not(.fusion-title-heading) { font-size:clamp(24px,3vw,34px); line-height:1.4; }
.keystone-native .fusion-mobile-nav-holder ul { list-style:none; padding:0; margin:0; }
.keystone-native .fusion-mobile-nav-holder a { display:block; padding:14px 30px; background:#fff; color:#333; border-bottom:1px solid #ddd; font-size:14px; line-height:20px; font-weight:700; }
.keystone-native .fusion-mobile-nav-holder .current-menu-item > a { color:#b34700; }
.keystone-hero { position:relative; aspect-ratio:1240/600; overflow:hidden; background:#222; }
.keystone-hero picture,.keystone-hero img { display:block; width:100%; height:100%; object-fit:cover; }
.keystone-hero > picture { position:absolute; inset:0; }
.keystone-hero-caption { position:absolute; bottom:0; left:0; width:100%; margin:0; padding:16px 30px; color:#fff; background:linear-gradient(transparent,rgba(0,0,0,.8)); font:clamp(24px,3.5vw,48px)/1.4 'Dancing Script',cursive; }
.keystone-hero button { position:absolute; color:#fff; background:rgba(0,0,0,.85); border:0; border-radius:3px; padding:12px; min-width:44px; min-height:44px; cursor:pointer; font:600 14px/1.4 Arial,sans-serif; }
.keystone-hero-prev { left:15px; top:45%; }
.keystone-hero-next { right:15px; top:45%; }
.keystone-hero-play { right:15px; top:15px; }
.keystone-slide-count { position:absolute; left:15px; top:15px; color:white; background:rgba(0,0,0,.85); padding:8px 12px; font:14px/1.4 Arial,sans-serif; }
.keystone-photo-open { overflow:hidden; }
.keystone-photo-dialog { width:92vw; max-width:1200px; max-height:92vh; padding:15px; border:0; border-radius:4px; background:#161616; color:#fff; }
.keystone-photo-dialog::backdrop { background:rgba(0,0,0,.85); }
.keystone-photo-dialog img { display:block; max-width:100%; max-height:70vh; width:auto; height:auto; margin:10px auto; }
.keystone-photo-toolbar,.keystone-photo-controls { display:flex; align-items:center; justify-content:space-between; gap:15px; }
.keystone-photo-dialog a { color:#fff; text-decoration:underline; }
.keystone-photo-dialog button { min-height:44px; padding:10px 15px; color:#fff; background:#b34700; border:0; border-radius:4px; cursor:pointer; font:600 14px/1.5 Arial,sans-serif; }
@media (max-width:1000px) and (min-width:801px) { .keystone-native .fusion-gallery { columns:2; } }
.keystone-embed { display:block; position:absolute; inset:0; width:100%; height:100%; padding:0; border:0; background:#222; color:#fff; cursor:pointer; overflow:hidden; }
.keystone-embed img { width:100%; height:100%; object-fit:cover; }
.keystone-play-icon { position:absolute; top:50%; left:50%; transform:translate(-50%,-50%); display:grid; place-items:center; width:68px; height:48px; border-radius:12px; background:#b34700; font-size:28px; }
.keystone-embed-label { position:absolute; left:0; bottom:0; width:100%; padding:10px; background:rgba(0,0,0,.85); font:600 15px/1.5 Arial,sans-serif; }
.keystone-map-panel { min-height:450px; display:flex; flex-direction:column; align-items:center; justify-content:center; text-align:center; padding:30px; background:#f3f3f3; border:1px solid #ddd; border-radius:4px; }
.keystone-map-button { padding:12px 20px; background:#b34700; color:#fff; border:0; border-radius:4px; font:600 16px/1.5 Arial,sans-serif; cursor:pointer; margin-bottom:18px; }
.keystone-map-frame { width:100%; height:450px; border:0; border-radius:4px; }
.keystone-mobile-actions { display:none; }
@media (max-width:800px) {
  .keystone-native .fusion-header { padding:12px 20px!important; }
  .keystone-native .fusion-header > .fusion-row { display:flex; flex-wrap:wrap; align-items:center; justify-content:space-between; gap:12px; }
  .keystone-native .fusion-header > .fusion-row::before,.keystone-native .fusion-header > .fusion-row::after { display:none; }
  .keystone-native .fusion-logo { float:none!important; flex:1; max-width:calc(100% - 56px); margin:0!important; }
  .keystone-native .fusion-logo-link { display:inline-flex; max-width:100%!important; vertical-align:middle; }
  .keystone-native .fusion-header-content-3-wrapper { margin-top:0!important; padding-top:0!important; }
  .keystone-native .fusion-header .fusion-standard-logo,.keystone-native .fusion-header .fusion-sticky-logo { display:none!important; }
  .keystone-native .fusion-header .fusion-mobile-logo { display:block!important; }
  .keystone-native .fusion-logo .fusion-mobile-logo { width:clamp(148px,43vw,176px)!important; max-width:100%!important; height:auto!important; }
  .keystone-native .fusion-mobile-menu-icons { display:block!important; position:static!important; float:none!important; margin:0!important; }
  .keystone-native .fusion-mobile-menu-icons a { display:flex; align-items:center; justify-content:center; width:44px; height:44px; margin:0!important; border:1px solid #e5e5e5; border-radius:8px; background:#fafafa; color:#333!important; font-size:22px; line-height:1; }
  .keystone-native .fusion-mobile-menu-icons a::before,.keystone-native .fusion-mobile-menu-icons a::after { color:#333!important; }
  .keystone-native .fusion-mobile-menu-icons a[aria-expanded="true"] { color:#b34700!important; background:#fff4eb; border-color:#b34700; }
  .keystone-native .fusion-mobile-menu-icons a[aria-expanded="true"]::before { color:#b34700!important; }
  .keystone-native .fusion-main-menu { display:none!important; }
  .keystone-native .fusion-secondary-main-menu { min-height:0; padding:0 20px!important; border:0!important; }
  .keystone-native .fusion-secondary-main-menu > .fusion-row { padding:0!important; }
  .keystone-native .fusion-mobile-nav-holder { flex-basis:100%; width:100%; margin:0!important; border-radius:8px; overflow:hidden; }
  .keystone-native .fusion-mobile-nav-holder ul { display:block!important; }
  .keystone-native .fusion-mobile-nav-holder li { display:block!important; float:none!important; width:100%!important; }
  .keystone-native .fusion-mobile-nav-holder a { min-height:48px; padding:14px 20px; }
  .keystone-native .fusion-mobile-nav-holder .current-menu-item > a { background:#fff4eb; }
  .keystone-native #main { padding:28px 20px 32px!important; }
  .keystone-native #content { margin-bottom:0!important; }
  .keystone-native #main > .fusion-row { max-width:640px; }
  .keystone-native #main .fusion-fullwidth { padding:0!important; margin:0!important; }
  .keystone-native #main .fusion-layout-column { margin-bottom:24px!important; }
  .keystone-native #main .fusion-column-wrapper { padding-left:min(20px,var(--awb-padding-left,0px))!important; padding-right:min(20px,var(--awb-padding-right,0px))!important; }
  .keystone-native #main .fusion-column-wrapper:has(> .fusion-title):not(:has(> .fusion-text)) { padding-bottom:0!important; }
  .keystone-native #main .fusion-layout-column:has(> .fusion-column-wrapper > .fusion-title):not(:has(> .fusion-column-wrapper > .fusion-text)) { margin-bottom:4px!important; }
  .keystone-native main .fusion-title { margin-top:0!important; margin-bottom:18px!important; }
  .keystone-native main .fusion-title-heading { font-size:clamp(24px,6.6vw,28px)!important; line-height:1.25!important; }
  .keystone-native:not(.home) main .fusion-title-heading { color:#b34700!important; }
  .keystone-native main .title-sep-container { display:none; }
  .keystone-native main .fusion-text { font-size:16px; line-height:1.65; }
  .keystone-native main .fusion-text p { font-size:16px!important; line-height:1.65!important; margin-bottom:18px!important; }
  .keystone-native main .fusion-text p[style*="text-transform: uppercase"] { font-size:13px!important; line-height:1.8!important; letter-spacing:.6px!important; }
  .keystone-native main h2:not(.fusion-title-heading) { font-size:20px!important; line-height:1.4!important; }
  .keystone-native main h2.keystone-section-heading { font-size:18px!important; }
  .keystone-native main .fusion-button { display:inline-flex; align-items:center; justify-content:center; min-height:48px; padding:12px 22px; font-size:15px; }
  .home.keystone-native main .fusion-text p { text-align:left!important; }
  .home.keystone-native main .fusion-text p.keystone-intro { font-size:17px!important; }
  .home.keystone-native main .fusion-text p.keystone-tagline { text-align:center!important; font-size:18px!important; line-height:1.5!important; }
  .home.keystone-native main .fusion-text p[style*="text-transform: uppercase"] { text-align:center!important; }
  .home.keystone-native main .keystone-mobile-spacer { display:none; }
  .home.keystone-native #sliders-container { display:block!important; background:#fff!important; }
  .keystone-hero { display:block; width:100%; height:clamp(200px,66.667vw,320px); aspect-ratio:auto; }
  .keystone-hero img { object-position:center; }
  .keystone-hero-caption { padding:36px 20px 14px; font-size:clamp(23px,6.2vw,30px); line-height:1.25; }
  .keystone-hero-prev { left:12px; top:calc(50% - 22px); }
  .keystone-hero-next { right:12px; top:calc(50% - 22px); }
  .keystone-hero-play,.keystone-slide-count { display:none; }
  .keystone-mobile-actions { display:grid; grid-template-columns:minmax(0,1.25fr) minmax(0,1fr); gap:12px; width:100%; max-width:680px; margin:0 auto; padding:16px 20px 0; }
  .keystone-mobile-actions a { display:flex; align-items:center; justify-content:center; min-height:48px; padding:12px 8px; border:1px solid #b34700; border-radius:6px; font-size:clamp(14px,3.8vw,15px); line-height:1.4; font-weight:700; text-align:center; white-space:nowrap; }
  .keystone-visit-link { color:#fff!important; background:#b34700; }
  .keystone-call-link { color:#b34700!important; background:#fff; }
  .keystone-native .fusion-gallery { columns:1; }
  .keystone-native .fusion-gallery img { border-radius:6px; }
  .keystone-photo-dialog { width:calc(100vw - 24px); max-height:calc(100dvh - 24px); padding:12px; }
  .keystone-photo-toolbar { display:grid; grid-template-columns:auto 1fr; gap:10px; }
  .keystone-photo-toolbar span { text-align:right; }
  .keystone-photo-toolbar a { grid-column:1 / -1; min-height:44px; display:flex; align-items:center; }
  .keystone-photo-controls { display:grid; grid-template-columns:1fr 1fr; align-items:stretch; gap:10px; }
  .keystone-map-frame { display:block; height:360px; border-radius:8px; }
  .keystone-map-frame + p a { display:inline-flex; align-items:center; justify-content:center; min-height:44px; padding:10px 16px; margin-top:8px; color:#b34700; background:#fff4eb; border-radius:6px; font-weight:700; }
  .page-id-82 main a[href^="tel:"] { display:inline-flex; align-items:center; min-height:44px; color:#b34700!important; font-size:18px; }
  .keystone-native .fusion-footer-widget-area { padding:22px 20px!important; }
  .keystone-native .fusion-footer-widget-area .fusion-column { margin-bottom:0!important; }
  .keystone-native .fusion-footer-widget-column { margin-bottom:0!important; }
  .keystone-native .fusion-footer .contact_info:not(:has(.contact-info-container > *)) { display:none; }
  .keystone-native .fusion-footer .fusion-widget-menu ul { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:0 12px; }
  .keystone-native .fusion-footer .fusion-widget-menu li { display:block!important; }
  .keystone-native .fusion-footer .fusion-widget-menu ul li a { display:flex!important; align-items:center; justify-content:center; min-height:44px; padding:8px 0!important; border-bottom:1px solid #333!important; font-size:13px!important; line-height:1.5; }
  .keystone-native .fusion-footer .fusion-widget-menu a::after { display:none!important; }
  .keystone-native .fusion-footer-copyright-area { padding:20px!important; }
  .keystone-native .fusion-footer .fusion-social-network-icon { display:inline-flex; align-items:center; justify-content:center; min-width:44px; min-height:44px; padding:10px; }
}
