/* Layout/content belong to the exports; these rules isolate responsive variants. */
html{scroll-padding-top:100px}body{margin:0;font-family:'Plus Jakarta Sans',sans-serif}.export-mobile{display:none}.export-desktop,.export-mobile{width:100%;min-width:0}.preview-notice{position:fixed;bottom:8px;left:8px;z-index:100;background:white;color:#004357;border:1px solid #bfc8cd;border-radius:8px;padding:5px 9px;font:11px Arial,sans-serif;box-shadow:0 2px 8px #0001}:focus-visible{outline:3px solid #fd7f4a;outline-offset:4px}[data-preview-action],input:disabled,select:disabled,textarea:disabled{cursor:not-allowed}button[disabled]{opacity:1}[data-pending-link]{cursor:not-allowed}.screen-menu{display:none;color:#004357;border:1px solid #bfc8cd;border-radius:8px;padding:9px 12px;font-size:12px;min-height:44px;background:white}.screen-menu[hidden]{display:none}.screen-nav-open{display:flex!important;position:absolute;top:80px;left:16px;right:16px;background:white;color:#004357;border:1px solid #bfc8cd;border-radius:12px;padding:15px;flex-direction:column;align-items:stretch!important}.screen-nav-open a{padding:10px}
@media(min-width:768px) and (max-width:1279px){.screen-menu:not([hidden]){display:block;margin-left:auto}}
@media(max-width:767px){.export-desktop{display:none}.export-mobile{display:block}.preview-notice{font-size:9px;max-width:calc(100% - 16px)}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;transition:none!important}}

.pb-safe{padding-bottom:env(safe-area-inset-bottom,0px)}.pt-safe{padding-top:env(safe-area-inset-top,0px)}
.screen-mobile-nav.screen-nav-open{top:64px}.screen-mobile-nav{font-size:14px}/* Tour headers share the archive's compact navigation breakpoint. */
[data-tour-header] a{white-space:nowrap}
[data-tour-header] [data-export-nav]{min-width:0}
[data-tour-header] .screen-menu{flex-shrink:0}
@media(min-width:768px) and (max-width:1399px){[data-tour-header] [data-export-nav]:not(.screen-nav-open){display:none!important}[data-tour-header] .screen-menu:not([hidden]){display:block;margin-left:auto}}
@media(max-width:767px){[data-tour-header] .screen-menu:not([hidden]){display:block;padding:8px}[data-tour-header] .screen-mobile-nav:not(.screen-nav-open){display:none}[data-tour-header] .screen-nav-open{top:56px;max-height:calc(100dvh - 72px);overflow-y:auto}[data-tour-header]>div{gap:8px}}
@media(min-width:768px) and (max-width:899px){[data-tour-header] a[href^="tel:"]{display:none}}
/* WooCommerce product-image rules must not resize the site identity. */
body [data-tour-header] img{display:block;height:40px;width:auto;max-height:40px;max-width:120px;object-fit:contain}
.export-desktop [data-tour-header]>div{max-width:1440px;padding-left:40px;padding-right:40px;gap:20px}
.export-desktop [data-tour-header] [data-export-nav]{padding:6px;flex-shrink:0}
.export-desktop [data-tour-header] [data-export-nav] a{padding:8px 16px;font-size:14px}
.export-desktop [data-tour-header]>div>div:last-child{gap:16px}
@media(max-width:767px){body [data-tour-header] img{height:32px;max-height:32px;max-width:90px}}

/* A real calendar needs its own column, independent of the photo row height. */
.aida-calendar-layout{display:grid;grid-template-columns:minmax(0,1fr);grid-template-areas:"photos" "booking" "details";gap:24px;align-items:start}
.aida-calendar-layout>.aida-calendar-photos{grid-area:photos;min-width:0}
.aida-calendar-layout>.aida-calendar-reservation{grid-area:booking;min-width:0;width:100%;max-width:600px;justify-self:center}
.aida-calendar-layout>.aida-calendar-details{grid-area:details;min-width:0;width:100%;padding:0;margin:0}
[data-calendar-slot],#aida-booking-calendar,.bokunWidget{min-width:0;max-width:100%}
@media(min-width:1100px){
 .aida-calendar-layout{grid-template-columns:minmax(0,1fr) 440px;grid-template-rows:auto 1fr;grid-template-areas:"photos booking" "details booking"}
 .aida-calendar-layout>.aida-calendar-photos{grid-column:auto}
 .aida-calendar-details>div.grid{grid-template-columns:minmax(0,1fr)}
}

/* Preserve the approved filled photo tiles against WooCommerce image rules. */
body .aida-calendar-photos img{height:100%;width:100%;object-fit:cover}


/* Native tours share the desktop content and controls at every viewport. */
.aida-unified-tour .export-desktop{display:block}
@media(max-width:767px){
 .aida-unified-tour main h1{font-size:1.75rem;line-height:1.2;overflow-wrap:anywhere}
 .aida-unified-tour main .grid{grid-template-columns:minmax(0,1fr)}
 .aida-unified-tour .aida-calendar-layout>.aida-calendar-photos{grid-template-columns:minmax(0,1fr)}
 .aida-unified-tour main aside{min-width:0;width:100%}
 .aida-unified-tour main .flex{min-width:0}
 .aida-unified-tour main img{max-width:100%}
 .aida-unified-tour main .px-6{padding-left:16px;padding-right:16px}
 .aida-unified-tour main .p-6{padding:16px}
 .aida-unified-tour main h2,.aida-unified-tour main h3{overflow-wrap:anywhere}
}

@media(max-width:767px){
 .aida-unified-tour .px-gutter-mobile{padding-left:16px;padding-right:16px}
 .aida-unified-tour .aida-calendar-details{padding:0}
 .aida-unified-tour .aida-calendar-photos>div:first-child{height:260px}
 .aida-unified-tour .aida-calendar-photos>div:last-child{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;height:120px}
 .aida-unified-tour .aida-calendar-photos>div:last-child>div{min-height:0}
}

/* Mobile reading flow: all tour content first, then the same booking calendar. */
.aida-mobile-booking-bar{display:none}
@media(max-width:767px){
 .aida-unified-tour .aida-calendar-row,.aida-unified-tour .aida-calendar-layout{display:contents}
 .aida-unified-tour .aida-calendar-photos{margin:0 16px 24px}
 .aida-unified-tour .aida-calendar-details{padding:0 16px 24px}
 .aida-unified-tour .aida-calendar-reservation{order:10;align-self:center;width:calc(100% - 32px);max-width:600px;margin:0 16px 24px}
 #tour-booking-section{scroll-margin-top:0}
 .aida-unified-tour .aida-mobile-booking-bar{display:flex;align-items:center;justify-content:space-between;gap:16px;position:fixed;z-index:90;bottom:0;left:0;right:0;padding:12px 16px calc(12px + env(safe-area-inset-bottom,0px));background:#fff;border-top:1px solid #dde5e8;box-shadow:0 -4px 18px #00435712;color:#004357}
 .aida-mobile-booking-bar strong{font-size:17px;line-height:1.3}
 .aida-mobile-booking-bar a{display:inline-flex;align-items:center;justify-content:center;min-height:46px;padding:10px 26px;background:#ad3c00;color:#fff;border-radius:999px;font-weight:700;white-space:nowrap;text-decoration:none}
 body:has(.aida-mobile-booking-bar){padding-bottom:calc(78px + env(safe-area-inset-bottom,0px))}
}

@media(max-width:767px){
 .aida-unified-tour main>[data-related-tours]{order:11;margin:0 16px 24px}
}
