.elementor-kit-8{--e-global-color-primary:#2B3A2F;--e-global-color-secondary:#B88A5A;--e-global-color-text:#2A2A28;--e-global-color-accent:#8A6338;--e-global-color-ikcopl:#D6B07F;--e-global-color-ikcream:#F4EEE4;--e-global-color-iksand:#EAE1D2;--e-global-color-ikdeep:#1E2A21;--e-global-color-ikcard:#34463A;--e-global-color-ikmuted:#5B5A54;--e-global-color-ikmist:#D9D3C7;--e-global-color-ikpale:#E9D3B1;--e-global-color-ikline:#C9B79A;--e-global-color-ikwhite:#FFFFFF;--e-global-typography-primary-font-family:"Cormorant Garamond";--e-global-typography-primary-font-size:60px;--e-global-typography-primary-font-weight:500;--e-global-typography-primary-line-height:1.05em;--e-global-typography-secondary-font-family:"Jost";--e-global-typography-secondary-font-size:19px;--e-global-typography-secondary-font-weight:500;--e-global-typography-secondary-line-height:1.6em;--e-global-typography-text-font-family:"Jost";--e-global-typography-text-font-size:17px;--e-global-typography-text-font-weight:400;--e-global-typography-text-line-height:1.65em;--e-global-typography-accent-font-family:"Jost";--e-global-typography-accent-font-size:14px;--e-global-typography-accent-font-weight:600;--e-global-typography-accent-text-transform:uppercase;--e-global-typography-accent-line-height:1.2em;--e-global-typography-accent-letter-spacing:0.16em;--e-global-typography-ikdisp-font-family:"Cormorant Garamond";--e-global-typography-ikdisp-font-size:84px;--e-global-typography-ikdisp-font-weight:500;--e-global-typography-ikdisp-line-height:1em;--e-global-typography-ikh2-font-family:"Cormorant Garamond";--e-global-typography-ikh2-font-size:60px;--e-global-typography-ikh2-font-weight:500;--e-global-typography-ikh2-line-height:1.05em;--e-global-typography-ikh3-font-family:"Cormorant Garamond";--e-global-typography-ikh3-font-size:30px;--e-global-typography-ikh3-font-weight:600;--e-global-typography-ikh3-line-height:1.1em;--e-global-typography-ikeye-font-family:"Jost";--e-global-typography-ikeye-font-size:13px;--e-global-typography-ikeye-font-weight:600;--e-global-typography-ikeye-text-transform:uppercase;--e-global-typography-ikeye-line-height:1.4em;--e-global-typography-ikeye-letter-spacing:0.24em;--e-global-typography-ikcap-font-family:"Jost";--e-global-typography-ikcap-font-size:13px;--e-global-typography-ikcap-font-weight:400;--e-global-typography-ikcap-text-transform:uppercase;--e-global-typography-ikcap-line-height:1.5em;--e-global-typography-ikcap-letter-spacing:0.14em;--e-global-typography-iklead-font-family:"Jost";--e-global-typography-iklead-font-size:19px;--e-global-typography-iklead-font-weight:400;--e-global-typography-iklead-line-height:1.6em;--e-global-typography-ikquote-font-family:"Cormorant Garamond";--e-global-typography-ikquote-font-size:26px;--e-global-typography-ikquote-font-weight:500;--e-global-typography-ikquote-font-style:italic;--e-global-typography-ikquote-line-height:1.3em;--e-global-typography-iktime-font-family:"Cormorant Garamond";--e-global-typography-iktime-font-size:40px;--e-global-typography-iktime-font-weight:500;--e-global-typography-iktime-line-height:1em;background-color:#F4EEE4;color:#2A2A28;font-family:"Jost", Sans-serif;font-size:17px;line-height:1.65em;}.elementor-kit-8 button,.elementor-kit-8 input[type="button"],.elementor-kit-8 input[type="submit"],.elementor-kit-8 .elementor-button{background-color:#2B3A2F;font-family:"Jost", Sans-serif;font-size:14px;font-weight:600;text-transform:uppercase;letter-spacing:0.16em;color:#F4EEE4;border-radius:0px 0px 0px 0px;padding:18px 32px 18px 32px;}.elementor-kit-8 button:hover,.elementor-kit-8 button:focus,.elementor-kit-8 input[type="button"]:hover,.elementor-kit-8 input[type="button"]:focus,.elementor-kit-8 input[type="submit"]:hover,.elementor-kit-8 input[type="submit"]:focus,.elementor-kit-8 .elementor-button:hover,.elementor-kit-8 .elementor-button:focus{background-color:#1E2A21;color:#F4EEE4;}.elementor-kit-8 e-page-transition{background-color:#FFBC7D;}.elementor-kit-8 a{color:#8A6338;}.elementor-kit-8 a:hover{color:#2B3A2F;}.elementor-kit-8 h1{color:#2B3A2F;font-family:"Cormorant Garamond", Sans-serif;font-weight:500;}.elementor-kit-8 h2{color:#2B3A2F;font-family:"Cormorant Garamond", Sans-serif;font-weight:500;}.elementor-kit-8 h3{color:#2B3A2F;font-family:"Cormorant Garamond", Sans-serif;font-weight:600;}.elementor-kit-8 label{color:#4A4943;}.elementor-kit-8 input:not([type="button"]):not([type="submit"]),.elementor-kit-8 textarea,.elementor-kit-8 .elementor-field-textual{color:#2A2A28;background-color:#FFFFFF;border-style:solid;border-width:1px 1px 1px 1px;border-color:#C9B79A;border-radius:0px 0px 0px 0px;}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1240px;}.e-con{--container-max-width:1240px;--container-default-padding-top:0px;--container-default-padding-right:0px;--container-default-padding-bottom:0px;--container-default-padding-left:0px;}.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-kit-8{--e-global-typography-primary-font-size:48px;--e-global-typography-ikdisp-font-size:64px;--e-global-typography-ikh2-font-size:48px;--e-global-typography-ikh3-font-size:28px;}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1024px;}.e-con{--container-max-width:1024px;}}@media(max-width:767px){.elementor-kit-8{--e-global-typography-primary-font-size:38px;--e-global-typography-text-font-size:16px;--e-global-typography-ikdisp-font-size:46px;--e-global-typography-ikh2-font-size:38px;--e-global-typography-ikh3-font-size:26px;--e-global-typography-iklead-font-size:17px;--e-global-typography-ikquote-font-size:22px;--e-global-typography-iktime-font-size:34px;}.elementor-section.elementor-section-boxed > .elementor-container{max-width:767px;}.e-con{--container-max-width:767px;}}
/* Start custom CSS *//* Ikumbi Lodge: small additions Elementor settings can't express. Colours and fonts live in Site Settings. */
html{scroll-behavior:smooth}
:focus-visible{outline:2px solid #B88A5A;outline-offset:3px}
/* Image hover: photo settles in slowly inside its frame */
.ik-zoom,.ik-zoom .elementor-widget-container{overflow:hidden}
.ik-zoom img{transition:transform 1.4s cubic-bezier(.2,.7,.2,1)}
.ik-zoom:hover img,.ik-card:hover .ik-zoom img{transform:scale(1.045)}
/* Text link: short copper dash that draws out on hover */
.ik-link .elementor-button{background-image:linear-gradient(#B88A5A,#B88A5A)!important;background-size:28px 1px!important;background-position:0 100%!important;background-repeat:no-repeat!important;transition:background-size .45s cubic-bezier(.2,.7,.2,1),color .3s ease}
.ik-link .elementor-button:hover,.ik-card:hover .ik-link .elementor-button{background-size:100% 1px!important}
/* Day line dot */
.ik-dot{position:relative}
.ik-dot::before{content:"";position:absolute;top:-6px;left:0;width:11px;height:11px;border-radius:50%;background:#B88A5A}
.ik-dot-dark::before{background:#D6B07F;width:9px;height:9px;top:-5px}
/* Header: transparent at the top, slides away while scrolling down, returns on scroll up.
   Classes come from the "Ikumbi header on scroll" Custom Code snippet. */
.ik-header{transition:background-color .35s ease,transform .4s cubic-bezier(.2,.7,.2,1)!important}
.ik-header.ik-hdr-hidden{transform:translateY(-100%)!important}
.ik-header:focus-within{transform:none!important}
.ik-header-fixed{background-color:transparent}
.ik-header-fixed.ik-hdr-scrolled{background-color:rgba(43,58,47,.97)}
@media (prefers-reduced-motion:reduce){.ik-header{transition:none!important}}
.ik-header.elementor-sticky--effects{background-color:#2B3A2F!important}
.ik-header.elementor-sticky--effects .ik-logo img{max-height:52px;transition:max-height .3s ease}
/* Filmstrip and gallery images hold one height */
.ik-strip .swiper-slide-image{width:100%;height:560px;object-fit:cover}
@media (max-width:767px){.ik-strip .swiper-slide-image{height:380px}}
.ik-strip figcaption,.ik-strip .elementor-image-carousel-caption{font-family:Jost,sans-serif;font-size:13px;letter-spacing:.14em;text-transform:uppercase;color:#5B5A54;text-align:left;padding-top:14px}
/* Escarpment line draws in as it scrolls into view (modern browsers; static elsewhere) */
@keyframes ik-draw{from{stroke-dashoffset:1}to{stroke-dashoffset:0}}
@media (prefers-reduced-motion:no-preference){@supports (animation-timeline:view()){.ik-ridge path{stroke-dasharray:1;stroke-dashoffset:1;animation:ik-draw linear both;animation-timeline:view();animation-range:entry 10% cover 45%}}}
/* Respect reduced motion everywhere */
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}.elementor-invisible{visibility:visible!important}.animated{animation:none!important}.ik-zoom img{transition:none!important}.elementor-ken-burns,.elementor-background-slideshow__slide__image{animation:none!important;transform:none!important}.elementor-motion-effects-layer{transform:none!important}}
/* Text link inside a linked card (no nested links) */
.ik-link-text .elementor-heading-title{display:inline-block;padding-bottom:6px;background-image:linear-gradient(#B88A5A,#B88A5A);background-size:28px 1px;background-position:0 100%;background-repeat:no-repeat;transition:background-size .45s cubic-bezier(.2,.7,.2,1)}
.ik-card:hover .ik-link-text .elementor-heading-title{background-size:100% 1px}
.ik-strip .elementor-image-carousel-caption{text-align:left!important;font-style:normal!important;font-family:Jost,sans-serif!important;font-size:13px!important;letter-spacing:.14em!important;text-transform:uppercase!important;color:#5B5A54!important;padding-top:14px}

/* Floating WhatsApp button shadow */
.ik-wa .elementor-icon{box-shadow:0 8px 24px rgba(20,28,22,.25)}

/* Hero photos anchored to the bottom edge (keeps people in frame while the slow zoom runs) */
.ik-hero-bottom .elementor-background-slideshow__slide__image{background-position:center bottom!important;transform-origin:center bottom}

/* Transparent header: fixed over the hero photo, fades to forest green over the first 140px of scroll */
.admin-bar .ik-header-fixed{top:32px!important}
@media (max-width:782px){.admin-bar .ik-header-fixed{top:46px!important}}

/* Linked images (lightbox) fill their box, so portrait photos crop like the rest instead of shrinking */
.elementor-widget-image.ik-zoom a{display:block}
/* Image captions use the Caption style upright (the theme sets figcaption italic) */
.elementor-widget-image .widget-image-caption{font-style:normal}
/* Room pages: enquiry sidebar stays in view (native sticky). Sits below the header, moves up when the header slides away. Tablet/desktop only, and only on screens tall enough to show the whole card. */
@media (min-width:768px) and (min-height:760px){.ik-sticky-side{position:sticky;top:112px;transition:top .4s cubic-bezier(.2,.7,.2,1)}body:has(.ik-hdr-hidden) .ik-sticky-side{top:32px}.admin-bar .ik-sticky-side{top:144px}.admin-bar:has(.ik-hdr-hidden) .ik-sticky-side{top:64px}}
@media (prefers-reduced-motion:reduce){.ik-sticky-side{transition:none}}
/* Swipe row (class ik-swipe on a container): on tablet and phone the cards sit in one horizontal row that snaps, with the next card peeking in */
@media (max-width:1024px){.ik-swipe{display:flex!important;flex-wrap:nowrap!important;overflow-x:auto;scroll-snap-type:x mandatory;gap:20px!important;width:calc(100% + 40px)!important;max-width:none!important;margin-right:-40px;padding-right:40px!important;scrollbar-width:none;overscroll-behavior-x:contain}.ik-swipe::-webkit-scrollbar{display:none}.ik-swipe>.e-con{flex:0 0 44%!important;width:auto!important;max-width:none!important;scroll-snap-align:start}}
@media (max-width:767px){.ik-swipe{gap:14px!important;width:calc(100% + 20px)!important;margin-right:-20px;padding-right:20px!important}.ik-swipe>.e-con{flex-basis:80%!important}}
/* Horizontal scroll section (class ik-hscroll, with an ik-swipe row inside). The "Ikumbi horizontal scroll" snippet adds ik-hs-on on tablet and phone and sets the pin offset */
.ik-hscroll.ik-hs-on{overflow-x:clip;padding-top:0!important;padding-bottom:clamp(56px,9vw,96px)!important}
.ik-hs-on>.e-con-inner{position:sticky!important;top:0;flex:none!important;height:auto!important;min-height:100svh!important;box-sizing:border-box;justify-content:center!important;gap:28px!important;padding-top:24px;padding-bottom:24px}
.ik-hs-on .ik-swipe{overflow:visible!important;scroll-snap-type:none!important;will-change:transform}
.ik-hs-on .ik-swipe .elementor-widget-image img{max-height:40svh!important}
/* Smooth path: the slide is a scroll-driven CSS animation (ik-hs-css is added where supported) */
@keyframes ik-hs{from{transform:translate3d(0,0,0)}to{transform:translate3d(calc(-1 * var(--ik-hs-dist)),0,0)}}
.ik-hs-on.ik-hs-css{view-timeline-name:--ikhs;view-timeline-axis:block}
.ik-hs-on.ik-hs-css .ik-swipe{animation:ik-hs linear both;animation-timeline:--ikhs;animation-range:contain var(--ik-hs-a) contain var(--ik-hs-b)}
/* No entrance reveal inside a pinned section: everything is already in place when it slides */
.ik-hs-on .elementor-invisible,.ik-hs-on.elementor-invisible{visibility:visible!important}.ik-hs-on .animated:not(.ik-swipe),.ik-hs-on.animated{animation:none!important}
/* Footer on phones: Contact, Explore and Follow sit side by side, so their text is a touch smaller */
@media (max-width:767px){.ik-foot-cols>.e-con .elementor-icon-list-text{font-size:14px!important}.ik-foot-cols>.e-con .elementor-widget-text-editor{font-size:13px!important;line-height:1.6}.ik-foot-cols>.e-con .elementor-icon-list-item{padding-bottom:4px}}
/* Home hero on phones: one still photo cropped for a tall screen (media: home-hero-mobile, the main lodge at blue hour) instead of the landscape slideshow. Tablet and desktop keep the slideshow. */
@media (max-width:767px){.ik-hero-home .elementor-background-slideshow{display:none!important}.ik-hero-home{background-image:url('https://ikumbilodge.com/wp-content/uploads/2026/10/ikumbi-home-hero-mobile-lodge.webp')!important;background-size:cover!important;background-position:center bottom!important;background-repeat:no-repeat!important}.ik-hero-home::before{background-image:linear-gradient(180deg,rgba(20,28,22,.62) 0%,rgba(20,28,22,.42) 40%,rgba(20,28,22,.08) 62%,rgba(20,28,22,.45) 100%)!important;opacity:1!important}.ik-hero-home .ik-hero-cap{margin-top:auto!important}}
/* Reduced motion: Elementor does not build background slideshows, so heroes show their first photo as a still */
@media (prefers-reduced-motion:reduce){.ik-ss-5282d3a{background-image:url('https://ikumbilodge.com/wp-content/uploads/2026/10/ikumbi-home-hero-pool-sunset.webp');background-size:cover;background-position:center center;background-repeat:no-repeat}.ik-ss-bb90625{background-image:url('https://ikumbilodge.com/wp-content/uploads/2026/10/ikumbi-activity-cycling-sunset.webp');background-size:cover;background-position:center bottom;background-repeat:no-repeat}.ik-ss-1897e95{background-image:url('https://ikumbilodge.com/wp-content/uploads/2026/10/ikumbi-home-gate.webp');background-size:cover;background-position:center center;background-repeat:no-repeat}}
/* Mobile and tablet menu: full-screen forest panel with large serif links and an Enquire button (menu item class ik-menu-cta) */
.ik-menu-cta{display:none!important}
@media (max-width:1024px){.ik-header:has(.elementor-menu-toggle.elementor-active){background-color:#2B3A2F!important;transform:none!important}body:has(.ik-header .elementor-menu-toggle.elementor-active){overflow:hidden}.ik-header .elementor-menu-toggle.elementor-active+.elementor-nav-menu--dropdown{height:100svh;max-height:none!important;overflow-y:auto;background:#2B3A2F;padding:12px 20px 120px;box-sizing:border-box}.ik-header .elementor-nav-menu--dropdown .elementor-item{justify-content:space-between}.ik-header .elementor-nav-menu--dropdown .sub-menu{background:transparent!important;margin:0 0 8px}.ik-header .elementor-nav-menu--dropdown .sub-menu .elementor-sub-item{font-family:'Jost',sans-serif!important;font-size:16px!important;letter-spacing:.04em;padding:10px 0 10px 18px!important;border:0!important;color:#E7DCCB!important}.ik-header .elementor-nav-menu--dropdown .ik-menu-cta{display:block!important;margin-top:28px}.ik-header .elementor-nav-menu--dropdown .ik-menu-cta>a{justify-content:center!important;background:#D6B07F!important;color:#1E2A21!important;font-family:'Jost',sans-serif!important;font-size:14px!important;font-weight:600;letter-spacing:.16em!important;text-transform:uppercase!important;padding:18px!important;border:0!important}}
/* Tablet: the header keeps its own Enquire button, so the menu copy is hidden there; links line up with the logo */
@media (min-width:768px) and (max-width:1024px){.ik-header .elementor-nav-menu--dropdown .ik-menu-cta{display:none!important}.ik-header .elementor-menu-toggle.elementor-active+.elementor-nav-menu--dropdown{padding-left:40px;padding-right:40px}}
/* Desktop Rooms submenu: the Nav Menu dropdown settings are sized for the phone panel, so the desktop submenu is styled here */
@media (min-width:1025px){.ik-header .elementor-nav-menu--main .sub-menu{min-width:240px!important;padding:8px 0!important;background:#2B3A2F!important;border-top:2px solid #B88A5A;box-shadow:0 18px 40px rgba(20,28,22,.28)}.ik-header .elementor-nav-menu--main .sub-menu .elementor-sub-item{font-family:'Jost',sans-serif!important;font-size:13px!important;font-weight:500!important;letter-spacing:.14em!important;text-transform:uppercase!important;line-height:1.4!important;padding:13px 24px!important;color:#F4EEE4!important;border:0!important}.ik-header .elementor-nav-menu--main .sub-menu li{border:0!important}.ik-header .elementor-nav-menu--main .sub-menu .elementor-sub-item:hover,.ik-header .elementor-nav-menu--main .sub-menu .elementor-sub-item.elementor-item-active{color:#D6B07F!important;background:#1E2A21!important}}
/* Reduced motion: Our people slideshow (Home) shows its first photo as a still */
@media (prefers-reduced-motion:reduce){.ik-ss-9b8e9be{background-image:url('https://ikumbilodge.com/wp-content/uploads/2026/10/ikumbi-people-chef-plating-1024.webp');background-size:cover;background-position:center center;background-repeat:no-repeat}}

/* Reduced motion: coffee station slideshow (Home) shows its first photo as a still */
@media (prefers-reduced-motion:reduce){.ik-ss-5dacca2{background-image:url('https://ikumbilodge.com/wp-content/uploads/2026/10/ikumbi-coffee-barista-1024.webp');background-size:cover;background-position:center center;background-repeat:no-repeat}}/* End custom CSS */