.ibkc-label{font:500 10px 'Nunito Sans';letter-spacing:.27em;color:var(--blue)}.ibkc-hero{position:relative;min-height:100svh;overflow:hidden;color:#fff}.ibkc-hero__media{position:absolute;inset:0;display:grid;place-items:center;background:linear-gradient(145deg,#2e7180,#a9d7d7);background-size:cover;background-position:center;transform:scale(1.045);transition:transform 2.2s cubic-bezier(.22,1,.36,1)}.ibk-page-ready .ibkc-hero__media{transform:scale(1)}.ibkc-hero__media span{font:500 10px 'Nunito Sans';letter-spacing:.2em}.ibkc-hero__shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(9,45,53,.65),rgba(9,45,53,.05) 75%)}.ibkc-hero__copy{position:absolute;left:8vw;top:52%;transform:translateY(-45%)}.ibkc-hero__copy>*{opacity:0;transform:translateY(25px);transition:opacity .9s,transform 1s cubic-bezier(.22,1,.36,1)}.ibk-page-ready .ibkc-hero__copy>*{opacity:1;transform:none}.ibk-page-ready .ibkc-hero__copy>:nth-child(1){transition-delay:.25s}.ibk-page-ready .ibkc-hero__copy>:nth-child(2){transition-delay:.43s}.ibk-page-ready .ibkc-hero__copy>:nth-child(3){transition-delay:.65s}.ibkc-hero__copy>p{font:500 10px 'Nunito Sans';letter-spacing:.28em}.ibkc-hero h1{font:300 clamp(52px,7vw,96px)/.98 'Nunito Sans';letter-spacing:-.03em}.ibkc-hero__copy>span{font-size:11px;letter-spacing:.14em}.ibkc-intro{display:grid;grid-template-columns:1fr 1.2fr;gap:9vw;padding:140px 8vw;background:var(--sand)}.ibkc-intro>.ibkc-label{grid-column:1/-1}.ibkc-intro h2{font-size:clamp(31px,4vw,52px);font-weight:300;line-height:1.65;letter-spacing:.08em}.ibkc-intro>div{align-self:end;font-size:14px;line-height:2.3}.ibkc-plans{padding:140px 7vw;background:#fff}.ibkc-plans__heading h2{font:300 clamp(45px,6vw,78px)/1.05 'Nunito Sans'}.ibkc-list{margin-top:85px}.ibkc-plan{display:grid;grid-template-columns:52% 48%;min-height:620px;margin-bottom:110px;background:var(--sand)}.ibkc-plan:nth-child(even){grid-template-columns:48% 52%}.ibkc-plan:nth-child(even) .ibkc-plan__image{order:2}.ibkc-plan__image{display:grid;place-items:center;min-height:620px;background:linear-gradient(145deg,#87bec5,#2b7182);background-size:cover;background-position:center;clip-path:inset(0 0 100% 0);transition:clip-path 1.15s cubic-bezier(.76,0,.24,1)}.ibkc-plan.is-visible .ibkc-plan__image{clip-path:inset(0)}.ibkc-plan__image.has-image span{display:none}.ibkc-plan__image>span{color:#fff;font:500 10px 'Nunito Sans';letter-spacing:.2em}.ibkc-plan__body{align-self:center;padding:5vw}.ibkc-plan__meta{display:flex;justify-content:space-between;align-items:center}.ibkc-plan__meta small{font:300 38px 'Nunito Sans';color:rgba(23,50,56,.3)}.ibkc-plan__meta em{font:500 9px 'Nunito Sans';letter-spacing:.2em;font-style:normal;color:var(--blue)}.ibkc-plan h3{margin:30px 0 7px;font:300 clamp(29px,3.4vw,47px)/1.08 'Nunito Sans'}.ibkc-plan h4{margin:0 0 27px;font-size:13px;font-weight:400;letter-spacing:.08em}.ibkc-plan__body>p{font-size:12px;line-height:2}.ibkc-plan__facts{display:flex;gap:38px;margin:28px 0;padding:20px 0;border-block:1px solid var(--line);font:400 14px 'Nunito Sans'}.ibkc-plan__facts span{display:flex;flex-direction:column;gap:7px}.ibkc-plan__facts b{font-size:8px;letter-spacing:.18em;color:var(--blue)}.ibkc-plan__note{font-size:10px!important}.ibkc-plan__body>a{display:flex;justify-content:space-between;margin-top:28px;padding:17px 20px;background:var(--ink);color:#fff;font:500 10px 'Nunito Sans';letter-spacing:.15em;transition:.35s}.ibkc-plan__body>a:hover{background:var(--blue);transform:translateY(-2px)}.ibkc-guide{display:grid;grid-template-columns:1fr 1fr;gap:9vw;padding:130px 8vw;background:var(--light)}.ibkc-guide h2{font-size:clamp(31px,4vw,52px);font-weight:300;line-height:1.65}.ibkc-guide ul{margin:0;padding:0;list-style:none}.ibkc-guide li{display:grid;grid-template-columns:45px 1fr;gap:20px;padding:22px 0;border-bottom:1px solid var(--line);font-size:12px}.ibkc-guide li b{font:300 19px 'Nunito Sans';color:var(--blue)}.ibkc-book{padding:130px 25px;text-align:center;background:var(--blue);color:#fff}.ibkc-book>p{font:500 10px 'Nunito Sans';letter-spacing:.28em}.ibkc-book h2{font:300 clamp(46px,7vw,88px)/1.05 'Nunito Sans'}.ibkc-book>span{display:block;margin:30px 0 38px;font-size:11px}.ibkc-book a{display:inline-flex;gap:60px;padding:17px 25px;border:1px solid;font:500 10px 'Nunito Sans';letter-spacing:.16em;transition:.35s}.ibkc-book a:hover{transform:translateY(-3px)}
@media(max-width:800px){.ibkc-hero__copy{left:25px}.ibkc-hero h1{font-size:52px}.ibkc-intro{grid-template-columns:1fr;padding:90px 25px}.ibkc-intro>.ibkc-label{grid-column:auto}.ibkc-intro h2{font-size:29px}.ibkc-plans{padding:90px 20px}.ibkc-list{margin-top:55px}.ibkc-plan,.ibkc-plan:nth-child(even){grid-template-columns:1fr;margin-bottom:65px}.ibkc-plan:nth-child(even) .ibkc-plan__image{order:0}.ibkc-plan__image{min-height:60svh}.ibkc-plan__body{padding:45px 25px}.ibkc-plan__facts{gap:25px}.ibkc-guide{grid-template-columns:1fr;padding:90px 25px}.ibkc-book{padding:90px 20px}.ibkc-book h2{font-size:46px}}

/* Ocean image background for the final booking section. */
.ibkc-book{position:relative;isolation:isolate;background-color:var(--blue);overflow:hidden}
.ibkc-book::after{content:"";position:absolute;inset:-7%;z-index:-2;background-image:var(--ibkc-book-bg);background-repeat:no-repeat;background-position:center 58%;background-size:cover;opacity:.58;transform:scale(1.18) translate3d(-1.5%,-1%,0);transform-origin:center;transition:transform 3.4s cubic-bezier(.22,1,.36,1),opacity 1.35s ease;will-change:transform}
.ibkc-book.is-visible::after{opacity:1;transform:scale(1.01) translate3d(0,0,0);animation:ibkc-ocean-drift 12s ease-in-out 3.4s infinite alternate}
.ibkc-book::before{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(115deg,rgba(8,42,51,.74) 0%,rgba(8,42,51,.43) 45%,rgba(8,42,51,.7) 100%);background-size:180% 180%;animation:ibkc-light-drift 10s ease-in-out infinite alternate}
.ibkc-book>p,.ibkc-book>h2,.ibkc-book>span,.ibkc-book>a{position:relative;z-index:1;opacity:0;transform:translateY(30px);text-shadow:0 2px 18px rgba(0,0,0,.32);transition:opacity .85s ease,transform 1s cubic-bezier(.22,1,.36,1)}
.ibkc-book.is-visible>p,.ibkc-book.is-visible>h2,.ibkc-book.is-visible>span,.ibkc-book.is-visible>a{opacity:1;transform:translateY(0)}
.ibkc-book.is-visible>p{transition-delay:.3s}.ibkc-book.is-visible>h2{transition-delay:.48s}.ibkc-book.is-visible>span{transition-delay:.68s}.ibkc-book.is-visible>a{transition-delay:.86s}
.ibkc-book.is-visible>a:hover{transform:translateY(-3px)}
.ibkc-book>a{background:rgba(8,42,51,.14);backdrop-filter:blur(2px);-webkit-backdrop-filter:blur(2px)}
@keyframes ibkc-ocean-drift{0%{transform:scale(1.01) translate3d(0,0,0)}100%{transform:scale(1.075) translate3d(-1.3%,.8%,0)}}
@keyframes ibkc-light-drift{0%{background-position:0% 35%}100%{background-position:100% 65%}}
@media(max-width:800px){.ibkc-book::after{background-position:center center;transform:scale(1.2) translate3d(-1.5%,-1%,0)}.ibkc-book.is-visible::after{transform:scale(1.01) translate3d(0,0,0)}.ibkc-book::before{background-color:rgba(8,42,51,.12)}}
@media(prefers-reduced-motion:reduce){.ibkc-book::before,.ibkc-book::after,.ibkc-book.is-visible::after{animation:none}.ibkc-book::after,.ibkc-book.is-visible::after{opacity:1;transform:scale(1);transition:none}.ibkc-book>p,.ibkc-book>h2,.ibkc-book>span,.ibkc-book>a{opacity:1;transform:none;transition:none}}

/* v0.8.15 reservation selector */
#reservation{scroll-margin-top:86px}
.ibkc-plan__reserve{display:flex;width:100%;justify-content:space-between;align-items:center;margin-top:28px;padding:17px 20px;border:0;background:var(--ink);color:#fff;font:500 10px 'Nunito Sans';letter-spacing:.15em;cursor:pointer;transition:.35s}
.ibkc-plan__reserve:hover{background:var(--blue);transform:translateY(-2px)}
.ibkc-booking-modal{position:fixed;inset:0;z-index:9999;display:grid;place-items:center;padding:22px;opacity:0;visibility:hidden;pointer-events:none;transition:opacity .3s ease,visibility .3s ease}
.ibkc-booking-modal.is-open{opacity:1;visibility:visible;pointer-events:auto}
.ibkc-booking-modal__backdrop{position:absolute;inset:0;background:rgba(9,36,43,.68);backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px)}
.ibkc-booking-modal__panel{position:relative;width:min(560px,100%);padding:48px 42px 38px;background:#f7f4ed;color:var(--ink);box-shadow:0 30px 80px rgba(0,0,0,.24);transform:translateY(18px) scale(.985);transition:transform .38s cubic-bezier(.22,1,.36,1)}
.ibkc-booking-modal.is-open .ibkc-booking-modal__panel{transform:none}
.ibkc-booking-modal__close{position:absolute;top:18px;right:18px;width:38px;height:38px;border:0;background:transparent;cursor:pointer}
.ibkc-booking-modal__close span{position:absolute;left:9px;top:18px;width:20px;height:1px;background:var(--ink)}
.ibkc-booking-modal__close span:first-child{transform:rotate(45deg)}.ibkc-booking-modal__close span:last-child{transform:rotate(-45deg)}
.ibkc-booking-modal h2{margin:10px 0 8px;font:300 clamp(28px,4vw,40px)/1.25 'M PLUS Rounded 1c';letter-spacing:.04em}
.ibkc-booking-modal__plan{margin:0 0 28px;font-size:12px;letter-spacing:.06em;color:rgba(23,50,56,.72)}
.ibkc-booking-modal__choices{display:grid;gap:12px}
.ibkc-booking-modal__choices a{display:grid;grid-template-columns:1fr auto;align-items:center;gap:3px 20px;padding:18px 20px;border:1px solid rgba(23,50,56,.2);background:#fff;color:var(--ink);transition:.3s}
.ibkc-booking-modal__choices a:hover{border-color:var(--blue);transform:translateY(-2px)}
.ibkc-booking-modal__choices span{font:500 13px 'Nunito Sans';letter-spacing:.08em}.ibkc-booking-modal__choices small{grid-column:1;font-size:10px;letter-spacing:.04em;color:rgba(23,50,56,.62)}.ibkc-booking-modal__choices b{grid-column:2;grid-row:1/3;font:400 18px 'Nunito Sans'}
.ibkc-booking-modal__note{margin:20px 0 0;font-size:9px;line-height:1.8;color:rgba(23,50,56,.58)}
body.ibkc-modal-open{overflow:hidden}
@media(max-width:800px){#reservation{scroll-margin-top:64px}.ibkc-booking-modal{padding:16px}.ibkc-booking-modal__panel{padding:42px 22px 28px}.ibkc-booking-modal h2{font-size:27px}.ibkc-booking-modal__choices a{padding:17px 16px}}

/* v0.8.17: direct Activity Japan reservation links. */
.ibkc-plan__reserve{text-decoration:none}

/* KOURI v1.0.6 — quick activity chooser */
.ibkc-chooser{display:grid;grid-template-columns:repeat(3,1fr);margin:68px 0 0;border-block:1px solid rgba(33,75,84,.16)}
.ibkc-chooser a{position:relative;display:grid;grid-template-columns:42px 1fr;grid-template-rows:auto auto;gap:2px 14px;padding:24px 22px;border-right:1px solid rgba(33,75,84,.16);color:var(--ink);transition:background .3s,transform .3s}
.ibkc-chooser a:last-child{border-right:0}
.ibkc-chooser span{grid-row:1/3;align-self:center;font:300 25px 'Nunito Sans';color:#52aabd}
.ibkc-chooser strong{font:500 12px 'Nunito Sans';letter-spacing:.13em}
.ibkc-chooser small{font:400 11px 'M PLUS Rounded 1c';color:#55757b}
.ibkc-chooser a::after{content:'→';position:absolute;right:18px;top:50%;transform:translateY(-50%);font:400 16px 'Nunito Sans';color:#52aabd;opacity:0;transition:.25s}
@media(hover:hover){.ibkc-chooser a:hover{background:#f4fbfb;transform:translateY(-2px)}.ibkc-chooser a:hover::after{opacity:1;right:14px}}
@media(max-width:800px){.ibkc-chooser{grid-template-columns:1fr;margin-top:42px}.ibkc-chooser a{grid-template-columns:38px 1fr;padding:18px 6px;border-right:0;border-bottom:1px solid rgba(33,75,84,.13)}.ibkc-chooser a:last-child{border-bottom:0}.ibkc-chooser a::after{opacity:1;right:6px}.ibkc-chooser strong{font-size:11px}.ibkc-chooser small{font-size:10px}.ibkc-plan{scroll-margin-top:78px}}
