/*
Theme Name: Taita Luxury Hotel
Theme URI: https://taitaluxuryhotel.com/
Author: Taita Luxury Hotel
Description: Premium, lightweight, SEO-friendly custom WordPress theme for Taita Luxury Hotel. Built without Elementor or a page builder.
Version: 1.2.2
Requires at least: 6.5
Requires PHP: 8.1
License: GPL-2.0-or-later
Text Domain: taita-luxury-hotel
*/
:root{
 --taita-maroon:#5e2128;--taita-maroon-dark:#42161c;--taita-ink:#171314;--taita-muted:#6f6665;
 --taita-paper:#f8f5f1;--taita-white:#fff;--taita-gold:#b9975b;--taita-border:#e6ded8;
 --taita-max:1240px;--taita-radius:0px;--taita-shadow:0 22px 60px rgba(27,16,16,.10);--taita-header-h:86px;
}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--taita-paper);color:var(--taita-ink);font-family:Arial,Helvetica,sans-serif;line-height:1.7;-webkit-font-smoothing:antialiased}body.no-scroll{overflow:hidden}
a{color:var(--taita-maroon);text-decoration:none}a:hover{text-decoration:none}img{max-width:100%;height:auto;display:block}.container{width:min(calc(100% - 48px),var(--taita-max));margin-inline:auto}.screen-reader-text{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.eyebrow{display:inline-flex;align-items:center;gap:12px;text-transform:uppercase;letter-spacing:.24em;font:700 .68rem/1 Arial,sans-serif;color:var(--taita-gold)}.eyebrow:before{content:"";width:30px;height:1px;background:currentColor}.button{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:50px;padding:14px 25px;background:var(--taita-maroon);color:#fff!important;border:1px solid var(--taita-maroon);font:700 .78rem/1 Arial,sans-serif;letter-spacing:.13em;text-transform:uppercase;transition:.25s ease}.button:hover{background:var(--taita-maroon-dark);border-color:var(--taita-maroon-dark);transform:translateY(-2px)}.button.button-light{background:#fff;color:var(--taita-maroon)!important;border-color:#fff}.button.button-outline{background:transparent;color:#fff!important;border-color:rgba(255,255,255,.55)}
.site-header{position:fixed;inset:0 0 auto;z-index:1000;background:linear-gradient(180deg,rgba(0,0,0,.55),transparent);color:#fff;border-bottom:1px solid transparent;transition:background-color .25s ease,color .25s ease,box-shadow .25s ease,backdrop-filter .25s ease}.site-header.is-solid,.site-header.is-scrolled{background:rgba(255,255,255,.97);color:var(--taita-ink);border-bottom-color:var(--taita-border);box-shadow:0 10px 35px rgba(23,19,20,.08);backdrop-filter:saturate(140%) blur(10px)}.site-header.is-solid{position:fixed}.site-header.is-scrolled .header-cta,.site-header.is-solid .header-cta{background:var(--taita-maroon);color:#fff!important}.site-header.is-scrolled .site-brand img,.site-header.is-solid .site-brand img{filter:none}.site-header:not(.is-solid):not(.is-scrolled) .site-brand img{filter:brightness(0) invert(1)}.site-header:not(.is-solid):not(.is-scrolled) .site-nav a{color:#fff}.site-header.is-scrolled .site-nav a,.site-header.is-solid .site-nav a{color:var(--taita-ink)}.header-inner{min-height:var(--taita-header-h);display:flex;align-items:center;justify-content:space-between;gap:28px}.site-brand{display:flex;align-items:center;max-width:190px;flex:0 0 auto}.site-brand .custom-logo{max-height:62px;width:auto}.site-brand img{width:auto;max-height:64px;object-fit:contain}.site-nav ul{display:flex;align-items:center;gap:28px;list-style:none;margin:0;padding:0}.site-nav a{color:inherit;font-size:.74rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase}.site-nav a:hover{color:var(--taita-gold)}.header-actions{display:flex;align-items:center;gap:14px}.header-phone{font-size:.78rem;font-weight:700;letter-spacing:.06em;color:inherit}.header-cta{display:inline-flex;padding:13px 18px;background:var(--taita-maroon);color:#fff!important;font-size:.72rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase}.menu-toggle{display:none;background:transparent;border:1px solid currentColor;color:inherit;padding:10px 12px;font:700 .72rem Arial,sans-serif;text-transform:uppercase;letter-spacing:.1em}.mobile-panel{display:none}
.hero{position:relative;min-height:760px;display:flex;align-items:flex-end;background:#2a2020;overflow:hidden}.hero-media{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center;z-index:0}.hero-overlay{position:absolute;inset:0;background:linear-gradient(90deg,rgba(19,9,10,.78) 0%,rgba(19,9,10,.45) 48%,rgba(19,9,10,.18) 100%),linear-gradient(180deg,rgba(0,0,0,.18),rgba(0,0,0,.58));z-index:1}.hero:after{content:"";position:absolute;left:0;right:0;bottom:0;height:120px;background:linear-gradient(transparent,var(--taita-paper));opacity:.95}.hero-inner{position:relative;z-index:2;padding:170px 0 130px;max-width:820px;color:#fff}.hero h1{font-family:Georgia,"Times New Roman",serif;font-size:clamp(3.3rem,7vw,7rem);font-weight:400;line-height:.98;letter-spacing:-.045em;margin:22px 0}.hero p{max-width:680px;margin:0 0 30px;font-size:1.08rem;color:rgba(255,255,255,.88)}.hero-actions{display:flex;flex-wrap:wrap;gap:12px}.hero-note{margin-top:28px;font-size:.74rem;letter-spacing:.08em;text-transform:uppercase;color:rgba(255,255,255,.7)}
.booking-wrap{position:relative;z-index:5;margin-top:-48px}.booking-search{background:#fff;box-shadow:var(--taita-shadow);padding:25px 28px;border-top:3px solid var(--taita-gold)}.booking-search .booking-heading{margin-bottom:18px}.booking-search .booking-heading strong{font:700 .72rem Arial,sans-serif;letter-spacing:.14em;text-transform:uppercase;color:var(--taita-maroon)}.booking-search form{display:grid;grid-template-columns:1.2fr 1.2fr .8fr .8fr auto;gap:12px;align-items:end}.booking-search label{display:block;margin-bottom:7px;color:#655b59;font:700 .66rem/1.2 Arial,sans-serif;letter-spacing:.12em;text-transform:uppercase}.booking-search input,.booking-search select{width:100%;height:50px;padding:0 14px;border:1px solid #d8d0ca;background:#fff;color:var(--taita-ink);font:400 .9rem Arial,sans-serif}.booking-search button{height:50px;border:0;cursor:pointer}
.section{padding:105px 0}.section.section-dark{background:#1b1415;color:#fff}.section.section-maroon{background:var(--taita-maroon);color:#fff}.section-title{max-width:760px;margin-bottom:48px}.section-title.center{text-align:center;margin-inline:auto}.section-title h2{font-family:Georgia,"Times New Roman",serif;font-weight:400;font-size:clamp(2.35rem,4.8vw,4.3rem);line-height:1.02;letter-spacing:-.035em;margin:15px 0}.section-title p{margin:0;color:var(--taita-muted);font-size:1rem}.section-dark .section-title p,.section-maroon .section-title p{color:rgba(255,255,255,.7)}
.intro-grid{display:grid;grid-template-columns:1fr 1fr;gap:75px;align-items:center}.intro-image{min-height:530px;background:#ddd center/cover no-repeat;box-shadow:var(--taita-shadow)}.intro-copy p{font-size:1.05rem;color:#544b49}.signature{margin-top:28px;font-family:Georgia,serif;font-size:1.25rem;color:var(--taita-maroon)}
.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.lux-card{background:#fff;box-shadow:0 12px 35px rgba(31,19,19,.06);overflow:hidden}.lux-card-media{aspect-ratio:4/3;background:#ded8d2 center/cover no-repeat}.lux-card-body{padding:25px 25px 28px}.lux-card .eyebrow{color:var(--taita-maroon)}.lux-card h3{font:400 1.7rem/1.15 Georgia,serif;margin:13px 0}.lux-card p{color:var(--taita-muted);margin:0 0 18px}.text-link{font:700 .7rem Arial,sans-serif;letter-spacing:.12em;text-transform:uppercase;color:var(--taita-maroon)}
.feature-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:rgba(255,255,255,.18)}.feature{padding:30px;background:rgba(255,255,255,.03);min-height:150px}.feature strong{display:block;font:400 1.25rem Georgia,serif;margin-bottom:7px}.feature span{color:rgba(255,255,255,.68);font-size:.85rem}
.experience-grid{display:grid;grid-template-columns:1.4fr .8fr .8fr;gap:20px}.experience{min-height:420px;padding:32px;display:flex;flex-direction:column;justify-content:flex-end;color:#fff;background:#3c2a28 center/cover no-repeat;position:relative;overflow:hidden}.experience:before{content:"";position:absolute;inset:0;background:linear-gradient(transparent 30%,rgba(0,0,0,.75));}.experience>*{position:relative;z-index:1}.experience h3{font:400 2rem Georgia,serif;margin:8px 0}.experience p{margin:0;color:rgba(255,255,255,.82)}
.destination{display:grid;grid-template-columns:1fr 1fr;min-height:560px}.destination-image{background:#2d2020 center/cover no-repeat}.destination-copy{background:var(--taita-maroon);color:#fff;padding:70px;display:flex;flex-direction:column;justify-content:center}.destination-copy h2{font:400 clamp(2.5rem,4vw,4.2rem)/1.02 Georgia,serif;margin:15px 0}.destination-copy p{color:rgba(255,255,255,.78);max-width:530px}.destination-copy ul{margin:15px 0 30px;padding-left:20px;color:rgba(255,255,255,.85)}
.cta-banner{position:relative;overflow:hidden;padding:80px;background:#231719;color:#fff;text-align:center}.cta-banner:before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 50% 20%,rgba(185,151,91,.22),transparent 50%)}.cta-banner>*{position:relative}.cta-banner h2{font:400 clamp(2.5rem,5vw,4.7rem)/1.02 Georgia,serif;margin:12px auto 18px;max-width:800px}.cta-banner p{max-width:650px;margin:0 auto 28px;color:rgba(255,255,255,.75)}
.site-footer{background:#120e0f;color:#fff;padding:70px 0 28px}.footer-grid{display:grid;grid-template-columns:1.5fr 1fr 1fr 1fr;gap:40px}.footer-brand img{width:190px;filter:brightness(0) invert(1);margin-bottom:18px}.site-footer h3{font:700 .7rem Arial,sans-serif;letter-spacing:.15em;text-transform:uppercase;color:var(--taita-gold);margin:0 0 16px}.site-footer p,.site-footer li{color:rgba(255,255,255,.68);font-size:.9rem}.site-footer ul{list-style:none;padding:0;margin:0}.site-footer li{margin:0 0 9px}.site-footer a{color:inherit}.footer-bottom{border-top:1px solid rgba(255,255,255,.12);margin-top:50px;padding-top:20px;display:flex;justify-content:space-between;gap:20px;color:rgba(255,255,255,.48);font-size:.75rem}
.page-header{padding:74px 0 34px;background:linear-gradient(180deg,#f5f1ed,#f8f5f1);border-bottom:1px solid var(--taita-border)}.page-header h1{font:400 clamp(2.45rem,5vw,4.6rem)/1.02 Georgia,serif;margin:12px 0}.page-header-line{width:58px;height:2px;background:var(--taita-gold);margin-top:24px}.site-main{min-height:60vh;padding-top:0}.site-header.is-solid + .site-main{padding-top:102px}.taita-placeholder{background:linear-gradient(135deg,#4c2529,#1e1718);min-height:100%;}
@media(max-width:1050px){.header-phone{display:none}.site-nav ul{gap:18px}.booking-search form{grid-template-columns:1fr 1fr 1fr}.booking-search .button{grid-column:1/-1}.cards{grid-template-columns:1fr 1fr}.feature-grid{grid-template-columns:1fr 1fr}.experience-grid{grid-template-columns:1fr 1fr}.experience:first-child{grid-column:1/-1}.footer-grid{grid-template-columns:2fr 1fr 1fr}}
@media(max-width:800px){.container{width:min(calc(100% - 32px),var(--taita-max))}.header-inner{min-height:82px}.site-brand{max-width:180px}.site-brand img{max-height:60px}.site-nav,.header-actions{display:none}.menu-toggle{display:block}.mobile-panel{position:absolute;left:16px;right:16px;top:82px;background:#fff;color:var(--taita-ink);padding:18px 20px;box-shadow:var(--taita-shadow);border:1px solid var(--taita-border)}.mobile-panel.is-open{display:block}.mobile-panel ul{list-style:none;margin:0;padding:0}.mobile-panel li{padding:11px 0;border-bottom:1px solid var(--taita-border)}.mobile-panel a{color:var(--taita-ink);font-size:.75rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase}.hero{min-height:680px}.hero-inner{padding:150px 0 110px}.intro-grid,.destination{grid-template-columns:1fr}.intro-image{min-height:390px;order:2}.destination-image{min-height:400px}.destination-copy{padding:55px 30px}.footer-grid{grid-template-columns:1fr 1fr}.footer-bottom{flex-direction:column}}
@media(max-width:560px){.container{width:min(calc(100% - 24px),var(--taita-max))}.hero{min-height:650px}.hero h1{font-size:3.15rem}.hero p{font-size:.98rem}.hero-actions{flex-direction:column;align-items:stretch}.button{text-align:center}.booking-wrap{margin-top:-28px}.booking-search{padding:20px}.booking-search form,.cards,.feature-grid,.experience-grid,.footer-grid{grid-template-columns:1fr}.experience:first-child{grid-column:auto}.section{padding:72px 0}.destination-copy{padding:48px 24px}.footer-bottom{margin-top:35px}}

@media(max-width:800px){.site-header.is-solid + .site-main{padding-top:82px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.site-header,.button{transition:none}}


/* Taita Luxury Hotel Booking Engine integration v1.1.4 */
.taita-booking-engine,.taita-booking-page-component,.taita-checkout,.taita-my-booking,.taita-confirmation-card,.taita-room-detail{max-width:var(--taita-max);margin-left:auto;margin-right:auto}
.taita-booking-search{grid-template-columns:1.2fr 1.2fr .75fr .75fr auto;border:1px solid var(--taita-border);border-top:3px solid var(--taita-gold);border-radius:0;box-shadow:var(--taita-shadow);padding:22px;background:#fff}
.taita-booking-search label,.taita-guest-form label{font:700 .66rem/1.2 Arial,sans-serif;letter-spacing:.12em;text-transform:uppercase;color:#655b59}
.taita-booking-search input,.taita-guest-form input,.taita-guest-form textarea{border:1px solid #d8d0ca;border-radius:0;background:#fff;color:var(--taita-ink);font:400 .92rem Arial,sans-serif;padding:13px 14px;outline:none;transition:border-color .2s,box-shadow .2s}
.taita-booking-search input:focus,.taita-guest-form input:focus,.taita-guest-form textarea:focus{border-color:var(--taita-gold);box-shadow:0 0 0 3px rgba(185,151,91,.13)}
.taita-booking-search button,.taita-book-room,.taita-guest-form button{border-radius:0;background:var(--taita-maroon);color:#fff;padding:14px 20px;letter-spacing:.1em;text-transform:uppercase;font:700 .68rem Arial,sans-serif;transition:transform .2s,background .2s,box-shadow .2s}
.taita-booking-search button:hover,.taita-book-room:hover,.taita-guest-form button:hover{background:#42161c;transform:translateY(-1px);box-shadow:0 12px 24px rgba(66,22,28,.16)}
.taita-room-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:28px;margin-top:20px}
.taita-room-card{border:0;border-radius:0;background:#fff;box-shadow:0 16px 45px rgba(31,19,19,.08);transition:transform .25s,box-shadow .25s;overflow:hidden}
.taita-room-card:hover{transform:translateY(-5px);box-shadow:0 24px 60px rgba(31,19,19,.13)}
.taita-room-image{aspect-ratio:4/3;background:#eee8e1;position:relative}
.taita-room-image img{transition:transform .55s ease}.taita-room-card:hover .taita-room-image img{transform:scale(1.035)}
.taita-room-body{padding:27px 28px 30px}.taita-room-body h3{font:400 clamp(1.55rem,2vw,2rem)/1.12 Georgia,"Times New Roman",serif;color:var(--taita-ink);margin:8px 0 10px}.taita-room-body>p{color:var(--taita-muted)}
.taita-room-body ul{display:flex;flex-wrap:wrap;gap:6px 14px;padding:0;margin:16px 0;list-style:none}.taita-room-body li{font-size:.76rem;color:#625957}.taita-room-body li:before{content:"•";color:var(--taita-gold);margin-right:6px}
.taita-room-price{border-top:1px solid var(--taita-border);padding-top:17px;margin-top:20px;color:var(--taita-maroon)}.taita-room-price strong{font:700 1.1rem Arial,sans-serif}
.taita-room-detail{background:#fff;box-shadow:var(--taita-shadow);overflow:hidden}.taita-room-detail-hero{background:#eee8e1;aspect-ratio:16/8;overflow:hidden}.taita-room-detail-hero img{width:100%;height:100%;object-fit:cover;display:block}.taita-room-detail-body{padding:clamp(28px,5vw,70px)}.taita-room-detail-body h1{font:400 clamp(2.6rem,5vw,5.2rem)/1 Georgia,"Times New Roman",serif;margin:.15em 0 .3em}
.taita-checkout-summary{border-top:3px solid var(--taita-gold);border-radius:0;box-shadow:var(--taita-shadow)}.taita-confirmation-card{border-radius:0;border-top:3px solid var(--taita-gold)}.taita-engine-heading{margin-bottom:35px}.taita-engine-heading h2{font:400 clamp(2.3rem,4vw,4rem)/1.05 Georgia,"Times New Roman",serif}
@media(max-width:1050px){.taita-room-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.taita-booking-search{grid-template-columns:1fr 1fr}.taita-booking-search button{grid-column:1/-1}}
@media(max-width:700px){.taita-room-grid{grid-template-columns:1fr}.taita-room-detail-hero{aspect-ratio:4/3}.taita-booking-search{grid-template-columns:1fr}.taita-booking-search button{grid-column:auto}.taita-room-body{padding:23px}.taita-room-detail-body{padding:28px 22px}}

/* Taita Luxury Hotel app-shell UX v1.2.0 */
body.taita-app-shell{overflow-x:hidden}
body.taita-app-shell .site-header{will-change:background-color,box-shadow;contain:layout}
body.taita-app-shell .site-header.is-scrolled{background:rgba(255,255,255,.985)}
body.taita-app-shell .site-header.is-scrolled .site-brand img{max-height:58px}
body.taita-app-shell .site-main{min-height:calc(100vh - var(--taita-header-h))}
body.taita-app-shell .button:focus-visible,
body.taita-app-shell button:focus-visible,
body.taita-app-shell a:focus-visible,
body.taita-app-shell input:focus-visible,
body.taita-app-shell select:focus-visible,
body.taita-app-shell textarea:focus-visible{outline:3px solid rgba(185,151,91,.42);outline-offset:3px}
body.taita-app-shell .taita-room-card,
body.taita-app-shell .taita-room-detail,
body.taita-app-shell .taita-booking-search,
body.taita-app-shell .taita-confirmation-card{contain:content}
body.taita-app-shell .taita-booking-page-component{padding-bottom:24px}
@media(max-width:800px){
 :root{--taita-header-h:78px}
 .site-header.is-solid + .site-main{padding-top:78px}
 .site-header.is-scrolled .site-brand img,.site-header.is-solid .site-brand img{max-height:54px}
 .mobile-panel{top:78px;border-radius:0 0 2px 2px}
 .hero-media{object-position:center}
}
@media(prefers-reduced-motion:reduce){
 .hero-media{scroll-behavior:auto}
 .taita-room-card:hover,.button:hover{transform:none}
}


/* Taita Luxury Hotel v1.2.1 — navigation/dropdown reliability */
.site-nav .menu-item-has-children{position:relative}
.site-nav .sub-menu{
	position:absolute;left:50%;top:calc(100% + 14px);transform:translateX(-50%);
	min-width:210px;margin:0;padding:10px 0;list-style:none;
	background:#fff;color:var(--taita-ink);border:1px solid var(--taita-border);
	box-shadow:0 18px 45px rgba(27,16,16,.14);opacity:0;visibility:hidden;
	pointer-events:none;transition:opacity .18s ease,visibility .18s ease,top .18s ease;
}
.site-nav .menu-item-has-children:hover>.sub-menu,
.site-nav .menu-item-has-children:focus-within>.sub-menu{
	top:100%;opacity:1;visibility:visible;pointer-events:auto;
}
.site-nav .sub-menu li{display:block;margin:0}
.site-nav .sub-menu a{display:block!important;padding:12px 18px;color:var(--taita-ink)!important;white-space:nowrap}
.site-nav .sub-menu a:hover{background:var(--taita-paper);color:var(--taita-maroon)!important}

.mobile-panel[hidden]{display:none!important}
.mobile-panel.is-open{display:block!important}
.mobile-panel .menu-item-has-children>a{display:flex;align-items:center;justify-content:space-between}
.mobile-panel .menu-item-has-children>a::after{
	content:"+";font-size:1rem;line-height:1;margin-left:14px;color:var(--taita-gold);
}
.mobile-panel .menu-item-has-children.taita-submenu-open>a::after{content:"−"}
.mobile-panel .sub-menu{
	display:none;list-style:none;margin:0;padding:4px 0 4px 16px;border-left:1px solid var(--taita-border);
}
.mobile-panel .menu-item-has-children.taita-submenu-open>.sub-menu{display:block}
.mobile-panel .sub-menu li{border-bottom:0;padding:0}
.mobile-panel .sub-menu a{display:block;padding:9px 0;font-size:.68rem}
@media(max-width:800px){
	.site-nav .sub-menu{display:none}
	.mobile-panel{z-index:1100}
}


/* Taita Luxury Hotel v1.2.2 — standalone mobile menu hardening */
@media(max-width:800px){
  .site-header .header-inner{position:relative;z-index:1002}
  .mobile-panel,
  .mobile-panel[hidden],
  .mobile-panel.is-open{
    display:block;
  }
  .mobile-panel[hidden]{display:none}
  .mobile-panel.is-open{
    position:absolute;
    left:12px;right:12px;top:82px;
    z-index:1001;
    max-height:calc(100vh - 100px);
    overflow:auto;
    background:#fff!important;
    color:var(--taita-ink)!important;
    padding:18px 20px 22px;
    border:1px solid var(--taita-border);
    box-shadow:0 22px 55px rgba(27,16,16,.20);
  }
  .mobile-panel.is-open ul{
    display:block!important;
    width:100%;
    margin:0!important;
    padding:0!important;
    list-style:none!important;
  }
  .mobile-panel.is-open ul li{
    display:block!important;
    width:100%;
    margin:0!important;
    padding:14px 0!important;
    border-bottom:1px solid var(--taita-border);
    opacity:1!important;
    visibility:visible!important;
  }
  .mobile-panel.is-open ul li a{
    display:flex!important;
    align-items:center;
    justify-content:space-between;
    width:100%;
    color:var(--taita-ink)!important;
    visibility:visible!important;
    opacity:1!important;
    text-decoration:none!important;
  }
  .mobile-panel.is-open p{display:block!important}
  .mobile-panel.is-open .button{display:flex!important;width:100%;margin-top:4px}
}

/* Taita Luxury Hotel v1.2.4 — mobile menu + sticky header fix */
@media(max-width:800px){
  .site-header{position:sticky!important;top:0;z-index:1000;overflow:visible}
  .site-header .header-inner{position:relative;z-index:1002}
  .menu-toggle{position:relative;z-index:1102;cursor:pointer;-webkit-tap-highlight-color:transparent}
  .mobile-panel,
  .mobile-panel[hidden]{
    display:none;
    position:absolute;
    left:12px;right:12px;top:82px;
    z-index:1101;
    max-height:calc(100vh - 100px);
    overflow:auto;
    background:#fff!important;
    color:var(--taita-ink)!important;
    padding:18px 20px 22px;
    border:1px solid var(--taita-border);
    box-shadow:0 22px 55px rgba(27,16,16,.20);
  }
  .mobile-panel.is-open{
    display:block!important;
    visibility:visible!important;
    opacity:1!important;
    pointer-events:auto!important;
  }
  .mobile-panel ul{
    display:block!important;width:100%;margin:0!important;padding:0!important;list-style:none!important;
  }
  .mobile-panel ul li{
    display:block!important;width:100%;margin:0!important;padding:14px 0!important;
    border-bottom:1px solid var(--taita-border);opacity:1!important;visibility:visible!important;
  }
  .mobile-panel ul li a{
    display:flex!important;align-items:center;justify-content:space-between;width:100%;
    color:var(--taita-ink)!important;visibility:visible!important;opacity:1!important;
    text-decoration:none!important;
  }
  .mobile-menu-cta{display:block!important;margin:18px 0 0!important}
  .mobile-menu-cta .button{display:flex!important;width:100%;margin-top:4px}
}
/* Final mobile navigation state — authoritative rules */
@media(max-width:800px){
  .site-header{position:sticky!important;top:0!important;z-index:1000!important;overflow:visible!important;}
  .mobile-panel{display:none!important;visibility:hidden;pointer-events:none;}
  .mobile-panel.is-open{display:block!important;visibility:visible!important;pointer-events:auto!important;}
  .mobile-panel[aria-hidden="false"]{display:block!important;visibility:visible!important;pointer-events:auto!important;}
  .mobile-panel[aria-hidden="true"]{display:none!important;visibility:hidden;pointer-events:none;}
}
@media(min-width:801px){
  .mobile-panel{display:none!important}
}

/* Taita Luxury Hotel v1.2.5 — allow mobile navigation to escape header stacking/clipping */
body.taita-app-shell .site-header{
  overflow:visible!important;
  contain:layout!important;
}
@media(max-width:800px){
  body.taita-app-shell .site-header{
    position:sticky!important;
    top:0!important;
    z-index:5000!important;
    overflow:visible!important;
    contain:layout!important;
  }
  body.taita-app-shell .site-header .mobile-panel{
    position:absolute!important;
    top:100%!important;
    left:12px!important;
    right:12px!important;
    width:auto!important;
    z-index:5001!important;
    max-height:calc(100dvh - 100px)!important;
    overflow-y:auto!important;
    overflow-x:hidden!important;
  }
}
