.cks-section{padding:100px clamp(24px,5vw,84px);width:100%;box-sizing:border-box}.cks-eyebrow{font:600 12px/1.5 'Plus Jakarta Sans',sans-serif;letter-spacing:.17em;margin:0 0 30px;text-transform:uppercase}.cks-section h2,.cks-hero-copy h1{font-family:'Plus Jakarta Sans',sans-serif;font-weight:400;letter-spacing:-.055em;line-height:1.06;margin:0 0 28px}.cks-section h2{font-size:clamp(38px,4.6vw,68px)}.cks-section p{font-size:18px;line-height:1.75}.cks-ai{color:#f8f8f4;background:#000;border:0;margin:60px 0 35px;scroll-margin-top:120px}.cks-ai .cks-eyebrow{color:#d9afd0}.cks-ai-grid,.cks-intro-grid{display:grid;grid-template-columns:1fr 1fr;gap:clamp(35px,7vw,110px);align-items:start}.cks-ai-intro{color:#d9afd0;font-size:24px!important}.cks-ai-copy p{margin:0 0 24px;color:#dfdedf}.cks-tags{display:flex;gap:10px;flex-wrap:wrap;list-style:none!important;margin:28px 0 36px!important;padding:0!important}.cks-tags li{border:1px solid #ffffff40;border-radius:99px;padding:8px 14px;font-size:13px}.cks-button{display:inline-flex!important;align-items:center;justify-content:space-between;gap:26px;border:1px solid transparent!important;border-radius:999px!important;padding:17px 26px!important;background:#d9afd0!important;color:#171218!important;font:600 15px/1.4 'Plus Jakarta Sans',sans-serif!important;text-decoration:none!important;transition:background .2s,transform .2s;cursor:pointer}.cks-button:hover{background:#eee1eb!important;transform:translateY(-2px)}.cks-button:focus-visible,.cks-text-link:focus-visible{outline:3px solid #d9afd0;outline-offset:5px}.cks-button:disabled{cursor:default;opacity:.6;transform:none}.cks-safari-hero{background-color:#20291d;color:#fff;position:relative}.cks-safari-hero>.elementor-background-video-container{pointer-events:none}.cks-hero-copy{position:relative;z-index:2;padding:180px clamp(24px,5vw,84px) 95px;max-width:1150px}.cks-hero-copy h1{font-size:clamp(52px,7vw,102px);color:#fff}.cks-hero-copy .cks-eyebrow{color:#eadcc2}.cks-hero-intro{max-width:620px;font-size:20px;line-height:1.65;color:#f0efea}.cks-actions{display:flex;align-items:center;gap:30px;flex-wrap:wrap;margin-top:32px}.cks-safari-hero .cks-button{background:#e3d3b4!important;color:#201c15!important}.cks-text-link{font-size:14px;color:#fff!important;text-decoration:underline!important;text-underline-offset:6px}.cks-safari-overview{background:#10130f;color:#f4f1e9}.cks-safari-overview .cks-eyebrow,.cks-number{color:#c9b48a}.cks-intro-grid>p{margin:0;color:#c4c9bf}.cks-services{display:grid;grid-template-columns:repeat(3,1fr);gap:48px 36px;margin-top:75px}.cks-service{border-top:1px solid #5e6558;padding-top:20px}.cks-number{font-size:12px;letter-spacing:.12em}.cks-service h3,.cks-steps h3{font-size:23px!important;font-weight:500!important;letter-spacing:-.025em;line-height:1.3;margin:25px 0 15px;color:inherit}.cks-service p{font-size:16px;color:#c4c9bf;margin:0}.cks-plan{background:#e8e3d7;color:#24271f}.cks-steps{display:grid;grid-template-columns:repeat(3,1fr);gap:40px;margin-top:50px}.cks-steps article{border-top:1px solid #24271f55;padding-top:20px}.cks-steps article>span{font-size:12px;letter-spacing:.1em;color:#5d624f}.cks-steps p{font-size:16px}.cks-booking-wrap{background:#10130f;color:#f4f1e9}.cks-book-intro{padding-bottom:35px;scroll-margin-top:110px}.cks-book-intro p{max-width:720px;color:#c4c9bf}.cks-form-shell{padding:0 clamp(24px,5vw,84px) 80px}.cks-form{max-width:1100px;background:#ece8dd;color:#20251d;padding:clamp(24px,4vw,56px);border-radius:6px}.cks-form-required,.cks-small{font-size:13px!important;line-height:1.6!important;color:#51584c}.cks-form fieldset{border:0;border-top:1px solid #20251d30;padding:28px 0 24px;margin:28px 0 0;min-width:0}.cks-form legend{padding:0 16px 0 0;font-size:13px;letter-spacing:.08em;font-weight:600;text-transform:uppercase;color:#424b39}.cks-fields{display:grid;grid-template-columns:1fr 1fr;gap:24px}.cks-form label{display:flex;flex-direction:column;gap:9px;font-size:14px;font-weight:500;line-height:1.5;color:#20251d}.cks-form input:not([type=checkbox]),.cks-form select,.cks-form textarea{width:100%;min-width:0;background:#fff!important;border:1px solid #a8afa0!important;border-radius:3px!important;color:#20251d!important;padding:13px 14px!important;font:400 16px/1.4 'Plus Jakarta Sans',sans-serif!important;height:auto;box-sizing:border-box;box-shadow:none!important}.cks-form input:focus,.cks-form select:focus,.cks-form textarea:focus{outline:2px solid #596d41!important;outline-offset:2px}.cks-form input::placeholder,.cks-form textarea::placeholder{color:#72796a;opacity:1}.cks-wide{grid-column:1/-1}.cks-checkbox{display:flex!important;flex-direction:row!important;align-items:flex-start;gap:10px!important;font-weight:400!important}.cks-checkbox input{width:19px!important;height:19px!important;flex-shrink:0;margin:2px 0 0!important;accent-color:#405430}.cks-check-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.cks-notes{margin-top:26px}.cks-verify{display:flex;align-items:flex-end;gap:20px}.cks-verify input{max-width:180px}.cks-refresh{background:transparent!important;border:0!important;padding:12px 0!important;color:#314427!important;text-decoration:underline;font-size:13px;cursor:pointer}.cks-consent{margin-top:22px;max-width:720px}.cks-status{font-size:15px;line-height:1.6;color:#305025;margin:15px 0;white-space:pre-line}.cks-status.is-error{color:#9b2c24}.cks-form .cks-submit{background:#263b21!important;color:#fff!important}.cks-form a{color:#263b21;text-decoration:underline}.cks-credit{padding:0 clamp(24px,5vw,84px) 36px;color:#a5ac9b;font-size:12px}.cks-credit a{color:inherit;text-decoration:underline}.cks-trap{position:absolute!important;left:-9999px!important;width:1px!important;height:1px!important;overflow:hidden!important}.cks-section h2,.cks-section h3{color:inherit}#ai-film,#book-next-trip{scroll-margin-top:110px}
@media(min-width:1025px) and (max-width:1250px){.elementor-element-0c42977 .elementor-nav-menu--main .elementor-item{font-size:15px!important}.elementor-element-0c42977 .elementor-nav-menu--main .menu-item:not(:last-child){margin-right:20px!important}}
@media(max-width:900px){.cks-section{padding-top:70px;padding-bottom:70px}.cks-ai-grid,.cks-intro-grid{grid-template-columns:1fr;gap:20px}.cks-services{grid-template-columns:1fr 1fr;gap:35px 25px;margin-top:45px}.cks-steps{gap:24px}.cks-hero-copy{padding-top:160px;padding-bottom:70px}.cks-hero-intro{font-size:18px}.cks-book-intro{padding-bottom:25px}}
@media(max-width:600px){.cks-section h2{font-size:42px}.cks-services,.cks-steps,.cks-fields,.cks-check-grid{grid-template-columns:1fr}.cks-fields{gap:20px}.cks-hero-copy h1{font-size:56px}.cks-hero-copy{padding-top:135px;padding-bottom:65px}.cks-actions{gap:22px}.cks-section p{font-size:16px}.cks-ai{margin-top:35px}.cks-verify{align-items:center}.cks-verify label{flex:1}.cks-form-shell{padding-bottom:50px}.cks-button{padding:15px 21px!important;gap:20px}.cks-services{margin-top:35px}}
/* Keep the restored theme's global heading defaults from overriding these sections. */
.elementor .cks-section h2{font-family:'Plus Jakarta Sans',sans-serif!important;font-size:clamp(38px,4.6vw,68px)!important;font-weight:400!important;line-height:1.06!important;letter-spacing:-.055em!important}.elementor .cks-ai h2,.elementor .cks-safari-overview h2,.elementor .cks-safari-overview h3,.elementor .cks-book-intro h2{color:#f4f1e9!important}.elementor .cks-plan h2,.elementor .cks-plan h3{color:#24271f!important}.elementor .cks-hero-copy h1{font-family:'Plus Jakarta Sans',sans-serif!important;font-size:clamp(52px,7vw,102px)!important;line-height:1.06!important;font-weight:400!important;letter-spacing:-.055em!important;color:#fff!important}.page-id-91 .elementor-element-3fffa23{mix-blend-mode:normal!important;background:transparent!important}.page-id-91 .elementor-element-3fffa23.elementor-sticky--active{background:transparent!important}.elementor-element-0c42977 .elementor-item:not(:hover):not(:focus-visible):after{opacity:0!important}
@media(max-width:600px){.elementor .cks-section h2{font-size:42px!important}.elementor .cks-hero-copy h1{font-size:56px!important}}

/* A quiet aurora, contained behind the copy with black top and bottom edges. */
.cks-ai{position:relative;isolation:isolate;overflow:hidden;background:#000}
.cks-ai::before,.cks-ai::after{content:"";position:absolute;inset:0;z-index:0;pointer-events:none;-webkit-mask-image:linear-gradient(to bottom,transparent 0%,#000 25%,#000 70%,transparent 100%);mask-image:linear-gradient(to bottom,transparent 0%,#000 25%,#000 70%,transparent 100%)}
.cks-ai::before{background:radial-gradient(ellipse 50% 55% at 25% 55%,rgba(138,64,169,.3),transparent 75%),radial-gradient(ellipse 40% 50% at 78% 40%,rgba(105,65,150,.2),transparent 75%);filter:blur(52px);animation:cks-aurora-drift 26s ease-in-out infinite alternate}
.cks-ai::after{background:radial-gradient(ellipse 50% 38% at 60% 65%,rgba(166,89,157,.16),transparent 75%);filter:blur(64px);animation:cks-aurora-drift-soft 34s ease-in-out infinite alternate}
.cks-ai>.cks-eyebrow,.cks-ai>.cks-ai-grid{position:relative;z-index:1}
@keyframes cks-aurora-drift{0%{transform:translate3d(-3%,2%,0) scale(1);opacity:.7}50%{transform:translate3d(2%,-2%,0) scale(1.06);opacity:1}100%{transform:translate3d(4%,2%,0) scale(1.02);opacity:.8}}
@keyframes cks-aurora-drift-soft{from{transform:translate3d(3%,-2%,0) scale(1.03);opacity:.65}to{transform:translate3d(-4%,3%,0) scale(1.1);opacity:1}}
.page-id-91 .elementor-element-3fffa23,.page-id-91 .elementor-element-3fffa23::before,.page-id-91 .elementor-element-3fffa23>.elementor-background-overlay{background:transparent!important;box-shadow:none!important}
@media(prefers-reduced-motion:reduce){.cks-ai::before,.cks-ai::after{animation:none!important;transform:none!important}}

/* Add contrast only after the hero passes beneath the header. */
.elementor-location-header .elementor-element-3fffa23{transition:background-color .3s ease}
body.cks-past-hero .elementor-location-header .elementor-element-3fffa23:not(.elementor-sticky__spacer){background:rgba(0,0,0,.5)!important;mix-blend-mode:normal!important}
@media(prefers-reduced-motion:reduce){.elementor-location-header .elementor-element-3fffa23{transition:none}}

/* Homepage safari feature: full-bleed photography after View more. */
.cks-safari-promo{position:relative;isolation:isolate;overflow:hidden;min-height:700px;display:flex;align-items:center;background:#000;color:#fff;width:100%}
.cks-safari-promo-image{position:absolute!important;inset:0;width:100%!important;height:100%!important;object-fit:cover;object-position:70% center;z-index:-2}
.cks-safari-promo::before{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(180deg,#000 0%,transparent 24%,transparent 72%,#000 100%),linear-gradient(90deg,rgba(0,0,0,.76),rgba(0,0,0,.35) 44%,transparent 75%)}
.cks-safari-promo-copy{padding:90px clamp(24px,5vw,84px);max-width:740px;box-sizing:border-box}
.cks-safari-promo .cks-eyebrow{color:#efd6ad}
.elementor .cks-safari-promo h2{font-family:'Plus Jakarta Sans',sans-serif!important;font-size:clamp(42px,4.8vw,70px)!important;font-weight:400!important;line-height:1.08!important;letter-spacing:-.055em!important;color:#fff!important;margin:0 0 28px}
.cks-safari-promo p{max-width:525px;color:#f1e9dd;font-size:18px;line-height:1.75;margin:0 0 32px}
.cks-safari-promo .cks-button{background:#eed9b4!important;color:#211a10!important}
.cks-safari-promo .cks-button:hover{background:#fff0d7!important}
@media(max-width:767px){.cks-safari-promo{min-height:780px;align-items:flex-end}.cks-safari-promo-image{height:440px!important;object-position:100% center}.cks-safari-promo::before{background:linear-gradient(180deg,#000 0,transparent 120px,transparent 240px,#000 445px)}.cks-safari-promo-copy{padding:365px 24px 64px;max-width:100%}.elementor .cks-safari-promo h2{font-size:42px!important}.cks-safari-promo p{font-size:16px}.cks-safari-promo .cks-button{font-size:14px!important;gap:20px;padding:16px 22px!important}}

/* Blend the Safari video hero into the overview below. */
.cks-safari-hero::after{content:"";position:absolute;left:0;right:0;bottom:0;height:clamp(180px,30vh,320px);background:linear-gradient(to bottom,rgba(16,19,15,0) 0%,rgba(16,19,15,.5) 55%,#10130f 100%);pointer-events:none;z-index:1}
