/* Miki V3.1.1 visual balance pass — typography, imagery, spacing, AI & booking */
:root{--miki-max:1240px;--miki-gutter:clamp(20px,4vw,64px)}
html{scroll-padding-top:96px}body{letter-spacing:-.005em}.section-pad{padding:clamp(64px,7.2vw,104px) var(--miki-gutter)!important}.section-heading,.split-heading{max-width:var(--miki-max);margin-left:auto;margin-right:auto}.split-heading{gap:clamp(28px,5vw,72px)!important;margin-bottom:clamp(34px,4vw,58px)!important}.section-heading h2,.about h2,.booking-banner h2,.intro-editorial h2,.international h2{letter-spacing:-.025em!important;text-wrap:balance}.section-heading p,.split-heading>p,.about-copy>p{line-height:1.72;max-width:62ch}.hero{gap:clamp(32px,5vw,68px)!important;padding-top:clamp(58px,7vw,96px)!important;padding-bottom:clamp(58px,7vw,96px)!important}.hero-copy{padding-block:8px}.hero h1{font-size:clamp(46px,5vw,72px)!important;line-height:.98!important;letter-spacing:-.04em!important}.hero-lead{line-height:1.72!important;margin:20px 0 26px!important;max-width:58ch}.hero-actions{gap:12px!important;flex-wrap:wrap}.hero-visual-grid{gap:14px!important}.hero-panel{border-radius:26px!important}.hero-panel img,.service-thumb img,.thumb-card img,.academy-media img{object-position:center center}.service-card{overflow:hidden}.service-card h3{line-height:1.08!important;letter-spacing:-.02em}.service-card p{line-height:1.65!important}.about{gap:clamp(38px,6vw,78px)!important}.faq .accordion{max-width:920px}.accordion summary{font-size:clamp(21px,2.2vw,26px)!important;line-height:1.3!important;padding:21px 42px 21px 0!important}.accordion details p{line-height:1.72!important;max-width:70ch!important}.booking-banner{gap:28px!important;align-items:center!important}
/* AI concierge */
.ai-chat{width:min(430px,calc(100vw - 32px))!important;height:min(660px,calc(100dvh - 112px))!important;border-radius:24px!important}.ai-chat-head{padding:15px 16px!important;gap:11px!important}.ai-avatar{width:42px!important;height:42px!important}.ai-chat-head strong{font-size:19px!important;line-height:1.15!important}.ai-chat-head span{font-size:10px!important;line-height:1.35!important}.ai-chat-body{padding:16px!important}.ai-message{margin-bottom:11px!important}.ai-bubble{max-width:88%!important;padding:11px 13px!important;font-size:13px!important;line-height:1.58!important}.ai-quick{gap:7px!important;margin:12px 0 2px!important}.ai-quick button{font-size:11px!important;line-height:1.2!important;padding:9px 11px!important}.ai-input-row{grid-template-columns:minmax(0,1fr) 42px!important;padding:10px 12px!important}.ai-input-row input{font-size:13px!important;min-height:42px}.ai-chat-foot{font-size:9.5px!important;line-height:1.45!important;padding:8px 14px 10px!important}
/* booking modal */
.booking-modal-luxe{width:min(1040px,calc(100vw - 40px))!important;height:auto!important;max-height:min(88dvh,820px)!important;right:50%!important;top:50%!important;transform:translate(50%,-50%)!important;border-radius:26px!important;overflow:hidden!important;padding:0!important}.booking-modal-grid{display:grid!important;grid-template-columns:minmax(0,1.08fr) minmax(300px,.92fr)!important;min-height:0}.booking-modal-formpane{padding:clamp(30px,4vw,50px)!important;overflow:auto!important}.booking-modal-formpane h2{font-size:clamp(34px,3.5vw,48px)!important;line-height:1.08!important;letter-spacing:-.03em!important;margin:8px 0 12px!important;max-width:12ch}.booking-intro{font-size:14px!important;line-height:1.65!important;max-width:54ch;margin-bottom:14px!important}.booking-promo{margin:14px 0 18px!important;padding:11px 13px!important;border-radius:12px!important}.booking-promo strong{font-size:12px!important}.booking-promo span{font-size:10px!important;line-height:1.4!important}.booking-modal-formpane form{gap:12px!important;margin-top:0!important}.booking-modal-formpane label{font-size:11px!important}.booking-modal-formpane input,.booking-modal-formpane select,.booking-modal-formpane textarea{padding:11px 12px!important;border-radius:10px!important;line-height:1.35}.booking-modal-visual{display:block!important;min-height:100%!important;height:auto!important;margin:0!important;border-radius:0!important;background-size:cover!important;background-position:center!important}.booking-cta-row{gap:10px!important}.booking-submit-luxe,.booking-whatsapp-luxe{min-height:50px!important}.form-note{line-height:1.5!important}.modal-close{z-index:4;width:40px;height:40px;display:grid;place-items:center;right:14px!important;top:12px!important;border-radius:50%!important;background:rgba(255,253,250,.92)!important;font-size:26px!important}
@media(max-width:900px){.booking-modal-luxe{width:min(680px,calc(100vw - 24px))!important;max-height:92dvh!important}.booking-modal-grid{grid-template-columns:1fr!important}.booking-modal-formpane{padding:32px 24px 26px!important}.booking-modal-formpane h2{max-width:16ch}.booking-modal-visual{height:170px!important;min-height:170px!important;order:2!important;background-size:cover!important;background-position:center 42%!important}.booking-cta-row{grid-template-columns:1fr!important}}
@media(max-width:760px){.section-pad{padding:58px 20px!important}.hero{padding-top:38px!important;padding-bottom:44px!important;gap:26px!important}.hero h1{font-size:clamp(38px,10.8vw,50px)!important;line-height:1.02!important}.hero-lead{font-size:15px!important;line-height:1.68!important}.hero-actions{flex-direction:row!important;align-items:center!important}.hero-actions .btn{width:100%}.hero-visual-grid{grid-template-rows:300px 190px 190px!important;gap:12px!important}.hero-panel{border-radius:20px!important}.floating-card{padding:14px 16px!important}.section-heading h2,.about h2,.booking-banner h2,.intro-editorial h2,.international h2{font-size:clamp(31px,8.5vw,40px)!important;line-height:1.06!important}.service-thumb,.featured .service-thumb{height:220px!important}.about{gap:30px!important}.accordion summary{font-size:21px!important;padding-block:18px!important}.ai-chat{left:10px!important;right:10px!important;bottom:72px!important;width:auto!important;height:min(620px,calc(100dvh - 88px))!important;max-height:calc(100dvh - 88px)!important;border-radius:20px!important}.ai-chat-body{padding:13px!important}.ai-bubble{font-size:13px!important;max-width:92%!important}.ai-quick button{font-size:10.5px!important}.booking-modal-luxe{width:calc(100vw - 16px)!important;max-height:94dvh!important;border-radius:18px!important}.booking-modal-formpane{padding:28px 18px 22px!important}.booking-modal-formpane h2{font-size:30px!important;line-height:1.12!important;max-width:15ch}.booking-modal-visual{height:128px!important;min-height:128px!important;margin:0!important}.form-grid{grid-template-columns:1fr!important}}
@media(max-width:390px){.section-pad{padding-inline:16px!important}.hero h1{font-size:37px!important}.ai-chat-head strong{font-size:17px!important}.ai-chat-foot{font-size:9px!important}.booking-modal-formpane{padding-inline:16px!important}}
