.elementor-widget-nav-menu .elementor-nav-menu .elementor-item{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-size:var( --e-global-typography-primary-font-size );font-weight:var( --e-global-typography-primary-font-weight );line-height:var( --e-global-typography-primary-line-height );letter-spacing:var( --e-global-typography-primary-letter-spacing );word-spacing:var( --e-global-typography-primary-word-spacing );}.elementor-widget-nav-menu .elementor-nav-menu--main .elementor-item{color:var( --e-global-color-text );fill:var( --e-global-color-text );}.elementor-widget-nav-menu .elementor-nav-menu--main .elementor-item:hover,
					.elementor-widget-nav-menu .elementor-nav-menu--main .elementor-item.elementor-item-active,
					.elementor-widget-nav-menu .elementor-nav-menu--main .elementor-item.highlighted,
					.elementor-widget-nav-menu .elementor-nav-menu--main .elementor-item:focus{color:var( --e-global-color-accent );fill:var( --e-global-color-accent );}.elementor-widget-nav-menu .elementor-nav-menu--main:not(.e--pointer-framed) .elementor-item:before,
					.elementor-widget-nav-menu .elementor-nav-menu--main:not(.e--pointer-framed) .elementor-item:after{background-color:var( --e-global-color-accent );}.elementor-widget-nav-menu .e--pointer-framed .elementor-item:before,
					.elementor-widget-nav-menu .e--pointer-framed .elementor-item:after{border-color:var( --e-global-color-accent );}.elementor-widget-nav-menu{--e-nav-menu-divider-color:var( --e-global-color-text );}.elementor-widget-nav-menu .elementor-nav-menu--dropdown .elementor-item, .elementor-widget-nav-menu .elementor-nav-menu--dropdown  .elementor-sub-item{font-family:var( --e-global-typography-accent-font-family ), Sans-serif;font-size:var( --e-global-typography-accent-font-size );font-weight:var( --e-global-typography-accent-font-weight );letter-spacing:var( --e-global-typography-accent-letter-spacing );word-spacing:var( --e-global-typography-accent-word-spacing );}.elementor-theme-builder-content-area{height:400px;}.elementor-location-header:before, .elementor-location-footer:before{content:"";display:table;clear:both;}@media(max-width:1024px){.elementor-widget-nav-menu .elementor-nav-menu .elementor-item{font-size:var( --e-global-typography-primary-font-size );line-height:var( --e-global-typography-primary-line-height );letter-spacing:var( --e-global-typography-primary-letter-spacing );word-spacing:var( --e-global-typography-primary-word-spacing );}.elementor-widget-nav-menu .elementor-nav-menu--dropdown .elementor-item, .elementor-widget-nav-menu .elementor-nav-menu--dropdown  .elementor-sub-item{font-size:var( --e-global-typography-accent-font-size );letter-spacing:var( --e-global-typography-accent-letter-spacing );word-spacing:var( --e-global-typography-accent-word-spacing );}}@media(max-width:767px){.elementor-widget-nav-menu .elementor-nav-menu .elementor-item{font-size:var( --e-global-typography-primary-font-size );line-height:var( --e-global-typography-primary-line-height );letter-spacing:var( --e-global-typography-primary-letter-spacing );word-spacing:var( --e-global-typography-primary-word-spacing );}.elementor-widget-nav-menu .elementor-nav-menu--dropdown .elementor-item, .elementor-widget-nav-menu .elementor-nav-menu--dropdown  .elementor-sub-item{font-size:var( --e-global-typography-accent-font-size );letter-spacing:var( --e-global-typography-accent-letter-spacing );word-spacing:var( --e-global-typography-accent-word-spacing );}}/* Start custom CSS *//* ===== Crown Heritage — Site Footer =====
   Same approach as the header template: Elementor 4.x does not reliably compile
   the V4 element styles for Theme Builder documents saved over MCP, so the
   design lives here. Hooks are the semantic e-default-<tag> classes:
     e-default-footer  = shell          e-default-article = brand column
     e-default-div     = column row     e-default-nav     = explore column
     e-default-aside   = start column (inside the shell) AND the floating
                         actions block (a direct child of the wrapper)
     e-default-section = contact column (inside the row) AND baseline (direct
                         child of the shell)
   The duplicated tags are kept apart by child combinators — anything scoped to
   the Start column or the footer CTA is prefixed with .e-default-footer so it
   cannot reach the floating block. */
.elementor-location-footer{--ch-gold:#B89D72}

/* ----- Shell ----- */
.elementor-location-footer .e-con.e-default-footer{width:100%;display:flex;flex-direction:column;padding:0;background-color:#0A0A0A;border-top:1px solid rgba(184,157,114,.22)}

/* ----- Column row ----- */
.elementor-location-footer .e-default-footer>.e-con.e-default-div{width:100%;max-width:1140px;margin:0 auto;padding:84px 24px 64px;display:flex;flex-direction:row;flex-wrap:wrap;align-items:flex-start;justify-content:space-between;gap:48px}
@media (max-width:1024px){.elementor-location-footer .e-default-footer>.e-con.e-default-div{padding:64px 24px 48px;gap:48px}}
@media (max-width:767px){.elementor-location-footer .e-default-footer>.e-con.e-default-div{padding:56px 18px 40px;flex-direction:column;gap:40px}}

/* ----- Columns ----- */
.elementor-location-footer .e-con.e-default-article{display:flex;flex-direction:column;align-items:flex-start;gap:22px;width:auto;flex:1 1 260px;max-width:330px;padding:0}
.elementor-location-footer .e-con.e-default-nav{display:flex;flex-direction:column;align-items:flex-start;gap:18px;width:auto;flex:0 1 160px;padding:0}
.elementor-location-footer .e-default-footer>.e-con>.e-con.e-default-section{display:flex;flex-direction:column;align-items:flex-start;gap:12px;width:auto;flex:0 1 230px;padding:0}
.elementor-location-footer .e-default-footer .e-con.e-default-aside{display:flex;flex-direction:column;align-items:flex-start;gap:18px;width:auto;flex:0 1 260px;padding:0}
/* Tablet: 2 x 2 */
@media (max-width:1024px){
.elementor-location-footer .e-con.e-default-article,.elementor-location-footer .e-con.e-default-nav,.elementor-location-footer .e-default-footer>.e-con>.e-con.e-default-section,.elementor-location-footer .e-default-footer .e-con.e-default-aside{flex:1 1 calc(50% - 24px);max-width:none}
}
/* Mobile: stacked — flex-basis would otherwise be read as a HEIGHT and leave dead space */
@media (max-width:767px){
.elementor-location-footer .e-con.e-default-article,.elementor-location-footer .e-con.e-default-nav,.elementor-location-footer .e-default-footer>.e-con>.e-con.e-default-section,.elementor-location-footer .e-default-footer .e-con.e-default-aside{flex:0 0 auto;width:100%;max-width:none}
}

/* ----- Logo slot (reserved space, same as the header) ----- */
.elementor-location-footer .e-con.e-default-a{display:flex;flex-direction:row;align-items:center;width:auto;padding:0;min-width:150px;min-height:48px;text-decoration:none}
.elementor-location-footer .e-con.e-default-a>img{display:block;height:48px;width:auto;max-width:220px;object-fit:contain}

/* ----- Column headings (site eyebrow style) ----- */
.elementor-location-footer h2{font-family:Roboto,sans-serif;font-size:11px;font-weight:600;line-height:1.2;letter-spacing:.2em;text-transform:uppercase;color:var(--ch-gold);margin:0}
.elementor-location-footer .e-default-footer>.e-con>.e-con.e-default-section h2{margin-bottom:6px}

/* ----- Body copy ----- */
.elementor-location-footer .e-default-article p,.elementor-location-footer .e-default-footer .e-default-aside p{font-family:Roboto,sans-serif;font-size:14px;font-weight:400;line-height:1.78;color:rgba(255,255,255,.60);margin:0;max-width:38ch}
.elementor-location-footer .e-default-footer>.e-con>.e-con.e-default-section p{font-family:Roboto,sans-serif;font-size:14px;font-weight:400;line-height:1.6;color:rgba(255,255,255,.60);margin:0}
.elementor-location-footer .e-default-footer>.e-con>.e-con.e-default-section a{color:rgba(255,255,255,.60);text-decoration:none;transition:color .25s ease}
.elementor-location-footer .e-default-footer>.e-con>.e-con.e-default-section a:hover,.elementor-location-footer .e-default-footer>.e-con>.e-con.e-default-section a:focus{color:var(--ch-gold)}

/* ----- Footer menu -----
   !important: Elementor emits the widget typography from empty
   --e-global-typography-* vars at a higher specificity than any practical .elementor-643. */
.elementor-location-footer .elementor-widget-nav-menu{width:100%}
.elementor-location-footer nav.elementor-nav-menu--main ul.elementor-nav-menu{display:flex;flex-direction:column;align-items:flex-start;gap:0}
.elementor-location-footer nav.elementor-nav-menu--main ul.elementor-nav-menu::before,.elementor-location-footer nav.elementor-nav-menu--main ul.elementor-nav-menu::after{content:none}
.elementor-location-footer nav.elementor-nav-menu--main a.elementor-item{font-family:Roboto,sans-serif !important;font-size:12px !important;font-weight:500 !important;line-height:1.2 !important;letter-spacing:.14em !important;text-transform:uppercase;color:rgba(255,255,255,.78);padding:9px 0 !important;background-color:transparent !important;transition:color .25s ease,padding-left .25s ease}
.elementor-location-footer nav.elementor-nav-menu--main a.elementor-item.elementor-item-active{color:var(--ch-gold);background-color:transparent !important}
.elementor-location-footer nav.elementor-nav-menu--main a.elementor-item:hover,.elementor-location-footer nav.elementor-nav-menu--main a.elementor-item:focus{color:var(--ch-gold);padding-left:6px !important;background-color:transparent !important}

/* ----- Footer CTA button (scoped to the shell so the floating block is untouched) ----- */
.elementor-location-footer .e-default-footer .e-button-base{display:inline-block;margin-top:4px;font-family:Roboto,sans-serif;font-size:12px;font-weight:600;line-height:1;letter-spacing:.16em;text-transform:uppercase;text-align:center;color:#fff;background-color:var(--ch-gold);padding:19px 36px;border:0;border-radius:0;text-decoration:none;transition:background-color .28s ease}
.elementor-location-footer .e-default-footer .e-button-base:hover,.elementor-location-footer .e-default-footer .e-button-base:focus{background-color:#A5885C;color:#fff}

/* ----- Baseline -----
   Extra bottom padding on mobile so the fixed action bar rests over footer
   background instead of covering the copyright line. */
.elementor-location-footer .e-default-footer>.e-con.e-default-section{position:relative;width:100%;max-width:1140px;margin:0 auto;padding:26px 24px 34px;display:flex;flex-direction:row;align-items:center;justify-content:center}
.elementor-location-footer .e-default-footer>.e-con.e-default-section::before{content:"";position:absolute;top:0;left:24px;right:24px;height:1px;background-color:rgba(255,255,255,.09)}
.elementor-location-footer .e-default-footer>.e-con.e-default-section p{font-family:Roboto,sans-serif;font-size:11px;font-weight:400;line-height:1.6;letter-spacing:.14em;text-transform:uppercase;color:rgba(255,255,255,.40);margin:0;text-align:center}
@media (max-width:767px){
.elementor-location-footer .e-default-footer>.e-con.e-default-section{padding:22px 18px 80px}
.elementor-location-footer .e-default-footer>.e-con.e-default-section::before{left:18px;right:18px}
.elementor-location-footer .e-default-footer>.e-con.e-default-section p{font-size:10px;letter-spacing:.12em}
}

/* ===== Floating actions =====
   A direct child of the footer wrapper, not of the shell, so it escapes every
   rule above. Nothing in this document sets transform/filter/backdrop-filter,
   so position:fixed resolves against the viewport.

   Deliberately plain `bottom` values — no vh/svh/dvh arithmetic. Two earlier
   attempts were rejected on a real phone: dvh made the bar slide up and down
   as the browser toolbar animated, and svh parked it permanently high with
   page content showing underneath. Pinned flat to the bottom edge is what was
   asked for; if a browser with its own bottom toolbar overlaps it while that
   toolbar is on screen, that is the accepted trade-off. */
.elementor-location-footer>.e-con.e-default-aside{position:fixed;right:28px;bottom:28px;left:auto;z-index:900;width:auto;padding:0;display:flex;flex-direction:column;align-items:stretch;gap:10px}
@media (max-width:1024px){.elementor-location-footer>.e-con.e-default-aside{right:20px;bottom:20px}}
@media (max-width:767px){.elementor-location-footer>.e-con.e-default-aside{right:0;bottom:0;left:0;flex-direction:row;gap:0}}

.elementor-location-footer>.e-con.e-default-aside>.e-button-base{font-family:Roboto,sans-serif;font-size:11px;font-weight:600;line-height:1;letter-spacing:.16em;text-transform:uppercase;text-align:center;text-decoration:none;display:block;margin:0;padding:16px 26px;border-radius:0;border-width:1px;border-style:solid;box-shadow:0 18px 40px -22px rgba(0,0,0,.65);transition:background-color .28s ease,color .28s ease,border-color .28s ease}
.elementor-location-footer>.e-con.e-default-aside>.e-button-base:first-child{color:var(--ch-gold);background-color:rgba(10,10,10,.92);border-color:rgba(184,157,114,.55)}
.elementor-location-footer>.e-con.e-default-aside>.e-button-base:first-child:hover,.elementor-location-footer>.e-con.e-default-aside>.e-button-base:first-child:focus{color:#FFFFFF;background-color:var(--ch-gold);border-color:var(--ch-gold)}
.elementor-location-footer>.e-con.e-default-aside>.e-button-base:last-child{color:#FFFFFF;background-color:var(--ch-gold);border-color:var(--ch-gold)}
.elementor-location-footer>.e-con.e-default-aside>.e-button-base:last-child:hover,.elementor-location-footer>.e-con.e-default-aside>.e-button-base:last-child:focus{color:#000000;background-color:#FFFFFF;border-color:#FFFFFF}
@media (max-width:767px){
.elementor-location-footer>.e-con.e-default-aside>.e-button-base{flex:1 1 50%;padding:15px 8px;font-size:10px;letter-spacing:.1em;box-shadow:none}
}

/* ----- Focus visibility ----- */
.elementor-location-footer a:focus-visible{outline:2px solid var(--ch-gold);outline-offset:4px}/* End custom CSS */