/* WordPress integration; layout and colors come from the approved preview. */
body.mtp-site{margin:0;padding:0;max-width:none;background:#fff;color:var(--mtp-ink)}
.mtp-site main{display:block;margin:0;max-width:none}.mtp-site [hidden]{display:none!important}
.mtp-site .site-header{margin-top:0}.admin-bar .site-header{top:32px}
.mtp-site svg{width:24px;height:24px;flex-shrink:0}.mtp-site .footer-logo img{object-fit:contain}
.mtp-site .mtp-card h3{min-height:3.9em}.mtp-site .mtp-card{height:100%}.mtp-site .mtp-card-body{display:flex;flex-direction:column;flex:1}
.mtp-site .mtp-card-actions{margin-top:auto}.mtp-site .mtp-hotel-class{min-height:25px}.mtp-site .mtp-card-features{min-height:76px}
.mtp-site .mtp-duration{min-height:30px}.mtp-site .mtp-card-location{min-height:23px}.mtp-site .mtp-card-photo img{height:100%;object-fit:cover}
.mtp-site .mtp-card-subtype{max-width:55%;white-space:normal;text-align:right}
.mtp-site .mtp-without-filters{grid-template-columns:1fr}.mtp-site .mtp-no-booking{grid-template-columns:minmax(0,1fr);max-width:1000px}
.mtp-site .gallery.mtp-single-photo{grid-template-columns:1fr}.mtp-site .gallery>img{width:100%;height:100%;object-fit:cover}
.mtp-site .detail-hotel-class>span:first-child{display:inline-flex}.mtp-site .hotel-map iframe{display:block;width:100%;border:0}
.mtp-site .mtp-pagination{margin:30px 0}.mtp-pagination ul{display:flex;flex-wrap:wrap;gap:8px;list-style:none;padding:0}
.mtp-pagination a,.mtp-pagination span{display:flex;align-items:center;justify-content:center;min-width:44px;min-height:44px;border:1px solid #dbe3e8;border-radius:8px;padding:8px 14px}
.mtp-pagination .current{background:#111820;color:#fff}.mtp-pagination .dots{border:0}
.mtp-site .filter-reset{font-size:.875rem}.mtp-site .archive-filters select{max-width:100%}
.mtp-site .journal-photo img{width:100%;height:100%;object-fit:cover}.mtp-site .post-featured-image{height:100%;width:100%;object-fit:cover}
.mtp-site .post-body .mtp-formatted-guide{width:100%;max-width:none;margin:0;padding:0;background:transparent;box-shadow:none}
.mtp-site .post-body .mtp-formatted-guide>h1{display:none}.mtp-site .post-body table{max-width:100%;display:block;overflow:auto}
.mtp-site .post-body .wp-block-image img{height:auto}.mtp-site .toc-subheading{padding-left:12px}
.mtp-site .author-bio-box{margin-top:40px}.mtp-site .contact-trap{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}
.mtp-site .contact-booking>svg{color:var(--mtp-pink)}.mtp-site .mtp-generic-page{max-width:1000px;min-height:45vh}
.mtp-site .post-body [id]{scroll-margin-top:120px}.mtp-site :focus-visible{outline:3px solid #087e96;outline-offset:4px}
@media(max-width:782px){.admin-bar .site-header{top:46px}}
@media(max-width:760px){.mtp-site.hotel-page{padding-bottom:0}.mtp-site .mtp-card h3{min-height:3.9em}.mtp-site .detail-layout{grid-template-columns:1fr}}
@media(max-width:600px){.admin-bar .site-header{top:0}}
@media(prefers-reduced-motion:reduce){.mtp-site *{scroll-behavior:auto!important}}
.mtp-site h2,.mtp-site h3{font-weight:700}
/* Version 1.0.1: consistent controls, compact branding and gallery. */
.mtp-site .brand{display:block;flex:none;width:216px;height:78px;overflow:hidden}
.mtp-site .brand img{width:100%;height:100%;max-width:none;object-fit:cover;object-position:50% 46%}
.mtp-site .footer-logo{display:block;width:216px;height:82px;overflow:hidden}
.mtp-site .footer-logo img{width:100%;height:100%;max-width:none;object-fit:cover;object-position:50% 46%}
.mtp-site .author-logo{display:block;width:160px;height:62px;overflow:hidden}
.mtp-site .author-logo img{width:100%;height:100%;object-fit:cover;object-position:50% 46%}
.mtp-site .mtp-card-actions{align-items:start;grid-auto-rows:44px;flex:none}
.mtp-site .mtp-card-actions>a{display:flex;align-items:center;justify-content:center;min-height:44px;height:44px;max-height:44px;padding:8px 7px;font-size:13px;line-height:1.25}
.mtp-site a.button:not(.secondary):not(.dark):not(.directory-browse-all),.mtp-site button.button:not(.secondary):not(.dark),.mtp-site .action-activities,.mtp-site .main-nav .nav-cta{background-color:#cf0066;color:#fff}
.mtp-site .directory-browse-all,.mtp-site .directory-browse-all:hover,.mtp-site .directory-browse-all:focus{background:#111317;border-color:#111317;color:#fff}
.mtp-site .plain-arrow{width:16px;height:16px;display:inline-block;flex:none;vertical-align:-2px}
.mtp-site .hotel-class-label{display:flex;align-items:center;gap:6px;font-size:12px;font-weight:700;line-height:1.4;color:#526575}
.mtp-site .mtp-hotel-class{min-height:54px;margin-top:10px}
.mtp-site .hotel-class-info{display:inline-flex;align-items:center;justify-content:center;width:26px;height:26px;min-height:26px;padding:0;border:1px solid #a5b5bf;border-radius:50%;background:white;color:#314d5c;font:700 13px/1 Georgia,serif;cursor:pointer}
.mtp-site .mtp-stars{display:inline-flex;align-items:center;gap:3px;color:#b77900}
.mtp-site .mtp-stars svg{width:17px;height:17px;fill:currentColor;stroke:currentColor}
.mtp-site .detail-hotel-class{display:inline-flex;flex-direction:column;align-items:flex-start;gap:3px}
.mtp-site .detail-hotel-class .mtp-stars svg{width:19px;height:19px}
.mtp-site .hotel-class-dialog{position:fixed;inset:0;margin:auto;width:min(430px,calc(100% - 32px));height:fit-content;max-height:85dvh;padding:54px 26px 28px;border:1px solid #dce5e9;border-radius:16px;color:#101820;background:white;box-shadow:0 20px 80px #0003}
.hotel-class-dialog::backdrop{background:#10182088}.hotel-class-dialog h2{font-size:1.35rem;margin:0 0 16px}.hotel-class-dialog p{font-size:.95rem;line-height:1.65}
.mtp-site .archive-filters{align-self:start}
.mtp-site .archive-filters>summary{display:flex;align-items:center;justify-content:space-between;padding:16px 18px;min-height:52px;font-weight:700;list-style:none;cursor:pointer}
.mtp-site details.archive-filters:not([open])>form{display:none}
.mtp-site .archive-filters[open]>summary{border-bottom:1px solid #dce5e9}
.mtp-site .filter-heading{margin-bottom:10px}.mtp-site .filter-heading h2{font-size:1rem}
.mtp-site .filter-group{border-bottom:1px solid #dce5e9;padding:0 0 10px;margin-bottom:10px}
.mtp-site .filter-group>summary{display:flex;align-items:center;justify-content:space-between;min-height:44px;font-size:.875rem;font-weight:700;cursor:pointer;list-style:none}
.mtp-site .filter-group>summary::after{content:'+';font-size:18px}.mtp-site .filter-group[open]>summary::after{content:'−'}
.mtp-site .filter-group fieldset{margin:0;padding:0;border:0}.mtp-site .filter-group select{margin:0 0 6px}
.mtp-site .filter-group:not([open])>:not(summary){display:none}
.mtp-site .post-contents:not([open])>nav{display:none}
.mtp-site .archive-filters summary::-webkit-details-marker,.mtp-site .filter-group summary::-webkit-details-marker{display:none}
.mtp-site .mtp-gallery-strip{display:grid;height:420px;grid-template-columns:2fr 1fr 1fr;grid-template-rows:1fr 1fr;gap:8px;overflow:hidden;border-radius:16px}
.mtp-site .mtp-gallery-strip>button{display:block;width:100%;height:100%;min-width:0;padding:0;position:relative;overflow:hidden;border:0;background:#edf2f4}
.mtp-site .mtp-gallery-strip>button:first-child{grid-row:span 2}
.mtp-site .mtp-gallery-strip .gallery-more{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;background:#142b38;color:white;padding:16px;font-size:.875rem}
.mtp-site .gallery-more strong{font-size:1rem}.mtp-site .gallery-more-icon{font-size:30px;line-height:1}
.mtp-site .mtp-gallery-strip[data-photo-count="1"]{grid-template-columns:1fr;grid-template-rows:1fr}
.mtp-site .mtp-gallery-strip[data-photo-count="2"]{grid-template-columns:1fr 1fr;grid-template-rows:1fr}
.mtp-site .mtp-gallery-strip[data-photo-count="3"]{grid-template-columns:2fr 1fr}
.mtp-site .mtp-gallery-strip[data-photo-count="4"]{grid-template-columns:repeat(4,1fr);grid-template-rows:1fr}
.mtp-site .gallery-dialog img:not([src]){display:none}
@media(max-width:1000px){.mtp-site .main-nav{gap:18px}.mtp-site .brand{width:190px;height:72px}}
@media(max-width:760px){
 .mtp-site .header-inner{height:82px}.mtp-site .brand{width:190px;height:72px}
 .mtp-site .mtp-gallery-strip{display:flex;height:280px;overflow-x:auto;overflow-y:hidden;scroll-snap-type:x mandatory;overscroll-behavior-x:contain;scrollbar-width:thin;gap:8px;border-radius:12px}
 .mtp-site .mtp-gallery-strip>button{display:block;flex:0 0 88%;height:100%;scroll-snap-align:start}
 .mtp-site .mtp-gallery-strip>.gallery-more{display:flex;flex-basis:65%}
 .mtp-site .mtp-gallery-strip[data-photo-count="1"]>button,.mtp-site .mtp-gallery-strip>img{flex-basis:100%;width:100%}
 .mtp-site .mtp-card-actions>a{height:44px;min-height:44px;max-height:44px}
}
@media(hover:none){.mtp-site .action-activities:hover{transform:none}.mtp-site .button:hover{transform:none}}
.mtp-site .mtp-gallery-strip>button:first-child{grid-row:auto}
.mtp-site .mtp-gallery-strip[data-photo-count="3"]>button:first-child,.mtp-site .mtp-gallery-strip[data-photo-count="5"]>button:first-child{grid-row:span 2}
/* 1.0.2: stable touch colors, inline classification and fifth-photo preview. */
.mtp-site a.button,.mtp-site button.button,.mtp-site .hero-action,.mtp-site .main-nav .nav-cta{-webkit-appearance:none;appearance:none;color-scheme:light;background-image:none;filter:none;opacity:1;-webkit-tap-highlight-color:transparent}
.mtp-site a.button:not(.secondary):not(.dark):not(.directory-browse-all),.mtp-site button.button:not(.secondary):not(.dark),.mtp-site .action-activities,.mtp-site .main-nav .nav-cta{background:#cf0066!important;color:#fff!important;-webkit-text-fill-color:#fff;filter:none!important;opacity:1!important}
.mtp-site .hotel-star-row{display:flex;align-items:center;gap:4px;margin-top:4px}
.mtp-site .hotel-class-info{position:relative;flex:none;width:16px;height:16px;min-width:16px;min-height:16px;border:1px solid #91a3af;font:700 11px/1 Georgia,serif;padding:0;margin:0 2px;background:#fff;color:#415d6a}
.mtp-site .hotel-class-info::after{content:'';position:absolute;inset:-5px;border-radius:50%}
.mtp-site .detail-hotel-class{display:inline-flex;flex-direction:row;align-items:center;gap:5px;white-space:nowrap}
.mtp-site .detail-hotel-class .hotel-class-label{font-size:12px;white-space:nowrap}
.mtp-site .detail-hotel-class .mtp-stars{gap:2px}
.mtp-site .detail-hotel-class .mtp-stars svg{width:16px;height:16px}
.mtp-site .hotel-location{gap:8px}
.mtp-site section.archive-filters>form{display:block}
.mtp-site .gallery-more{isolation:isolate}
.mtp-site .mtp-gallery-strip .gallery-more .gallery-more-preview{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;filter:blur(4px);transform:scale(1.08);z-index:-2}
.mtp-site .gallery-more::after{content:'';position:absolute;inset:0;background:#071c2cb3;z-index:-1}
.mtp-site .gallery-more>span,.mtp-site .gallery-more>strong{position:relative;color:white;text-shadow:0 1px 3px #0008}
@media(max-width:760px){.mtp-site .hotel-location .location-tag{font-size:11px;padding:5px 7px}.mtp-site .detail-hotel-class{gap:4px}.mtp-site .detail-hotel-class .hotel-class-label{font-size:11px}.mtp-site .detail-hotel-class .mtp-stars svg{width:14px;height:14px}}
/* 1.0.3: aligned classification and selectable photo grid. */
.mtp-site .mtp-hotel-class{display:flex;align-items:center;gap:5px;min-height:54px}
.mtp-site .hotel-star-row{display:inline-flex;align-items:center;gap:4px;margin:0;line-height:1}
.mtp-site .mtp-hotel-class .hotel-class-label,.mtp-site .detail-hotel-class .hotel-class-label{display:inline-flex;align-items:center;height:18px;line-height:18px;white-space:nowrap;margin:0}
.mtp-site .mtp-stars{height:18px;line-height:1;align-items:center;vertical-align:middle}
.mtp-site .mtp-stars svg{display:block;vertical-align:initial;margin:0}
.mtp-site .hotel-class-info{align-self:center;vertical-align:middle;line-height:14px;margin:0 2px}
.mtp-site .gallery-dialog{max-height:90dvh;overflow-y:auto;overscroll-behavior:contain}
.mtp-site .gallery-grid-view h2{font-size:1.5rem;margin:0 0 20px}
.mtp-site .gallery-photo-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.mtp-site .gallery-photo-grid button{padding:0;border:0;border-radius:10px;overflow:hidden;aspect-ratio:3/2;background:#edf2f4;cursor:pointer}
.mtp-site .gallery-photo-grid img{display:block;width:100%;height:100%;max-height:none;object-fit:cover}
.mtp-site .gallery-selected-view>[data-gallery-back]{margin-bottom:16px}
@media(max-width:760px){.mtp-site .gallery-photo-grid{gap:8px}.mtp-site .gallery-dialog{padding:50px 12px 16px}.mtp-site .mtp-hotel-class{gap:4px}.mtp-site .mtp-hotel-class .mtp-stars svg{width:15px;height:15px}}
