:root{--pink:#E6007E;--pink-dark:#C4006C;--pink-tint:#FDE6F2;--green:#7DC242;--green-dark:#3D7A1A;--green-tint:#EEF7E6;--ink:#111;--ink-2:#3b3b3b;--muted:#5f6368;--line:#e3e3e6;--bg:#f6f6f8;--white:#fff;--radius:14px;--radius-sm:8px;--shadow:0 2px 6px rgba(0,0,0,.06),0 8px 24px rgba(0,0,0,.06);--max:1200px;--font:system-ui,-apple-system,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif}*{box-sizing:border-box}html{-webkit-text-size-adjust:100%}body{margin:0;font-family:var(--font);color:var(--ink);background:var(--white);line-height:1.5;font-size:16px}img{max-width:100%;height:auto;display:block}a{color:var(--pink-dark)}a:hover{color:var(--ink)}:focus-visible{outline:3px solid var(--green-dark);outline-offset:2px;border-radius:4px}.container{max-width:var(--max);margin:0 auto;padding:0 20px}.skip-link{position:absolute;left:-9999px;top:0;background:var(--ink);color:#fff;padding:10px 16px;z-index:999}.skip-link:focus{left:10px;top:10px}.visually-hidden{position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}h1,h2,h3{line-height:1.2;margin:0 0 .5em}h1{font-size:clamp(1.7rem,3.6vw,2.6rem);font-weight:800;letter-spacing:-.01em}h2{font-size:clamp(1.35rem,2.4vw,1.75rem);font-weight:750}h3{font-size:1.06rem;font-weight:700}p{margin:0 0 1em}.proto-bar{background:#111;color:#fff;font-size:.82rem;text-align:center;padding:6px 12px}.proto-bar strong{color:#ffd1ea}.site-header{background:#fff;border-bottom:1px solid var(--line);position:sticky;top:0;z-index:50}.header-inner{display:flex;align-items:center;gap:20px;min-height:76px}.brand{display:flex;align-items:center;text-decoration:none;flex:0 0 auto}.brand img{height:62px;width:auto}.main-nav{flex:1}.main-nav ul{list-style:none;margin:0;padding:0;display:flex;gap:4px}.main-nav a{display:flex;align-items:center;gap:8px;padding:10px 14px;border-radius:999px;text-decoration:none;color:var(--ink-2);font-weight:600;font-size:.95rem;border:1px solid transparent}.main-nav a:hover{background:var(--bg);color:var(--ink)}.main-nav a[aria-current=page]{color:var(--pink-dark);border-color:var(--pink);background:var(--pink-tint)}.main-nav svg{width:20px;height:20px;flex:0 0 auto}.header-actions{display:flex;gap:10px;align-items:center}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;font:inherit;font-weight:700;border-radius:999px;padding:11px 20px;text-decoration:none;cursor:pointer;border:2px solid transparent;line-height:1.1;transition:background .15s,color .15s,border-color .15s}.btn-primary{background:var(--pink-dark);color:#fff}.btn-primary:hover{background:#9f0058;color:#fff}.btn-outline{background:#fff;color:var(--pink-dark);border-color:var(--pink-dark)}.btn-outline:hover{background:var(--pink-tint);color:var(--pink-dark)}.btn-ghost{background:transparent;color:var(--ink-2);border-color:var(--line)}.btn-ghost:hover{background:var(--bg);color:var(--ink)}.btn-green{background:var(--green-dark);color:#fff}.btn-green:hover{background:#2c5a12;color:#fff}.btn-sm{padding:8px 14px;font-size:.9rem}.btn-block{width:100%}.menu-toggle{display:none;background:none;border:1px solid var(--line);border-radius:10px;padding:8px 10px;cursor:pointer}.menu-toggle svg{width:24px;height:24px}.hero{position:relative;color:#fff;background:#0b3d2c center/cover no-repeat}.hero:before{content:"";position:absolute;inset:0;background:linear-gradient(180deg,#00000073,#00000040 55%,#0000008c)}.hero-inner{position:relative;padding-top:72px;padding-bottom:56px}.hero h1{max-width:760px;text-shadow:0 2px 12px rgba(0,0,0,.35)}.hero .lead{font-size:1.15rem;max-width:640px;text-shadow:0 1px 8px rgba(0,0,0,.4)}.hero-credit{position:absolute;right:10px;left:10px;text-align:right;bottom:6px;font-size:.7rem;opacity:.8}.search-card{background:#fff;color:var(--ink);border-radius:var(--radius);box-shadow:0 10px 30px #00000040;padding:14px;margin-top:26px;display:grid;grid-template-columns:2fr 1.1fr 1.1fr 1fr auto;gap:10px;align-items:end;border:3px solid var(--pink)}.field{display:flex;flex-direction:column;border:1px solid #c9c9cf;border-radius:10px;padding:6px 12px;background:#fff;min-width:0}.field:focus-within{border-color:var(--pink-dark);box-shadow:0 0 0 2px var(--pink-tint)}.field label{font-size:.75rem;font-weight:700;color:var(--muted);text-transform:none}.field input,.field select{border:0;font:inherit;font-size:1rem;padding:4px 0;background:transparent;color:var(--ink);min-width:0;width:100%}.field input:focus,.field select:focus{outline:none}.search-card .btn{height:54px;font-size:1.05rem;padding:0 28px}.trust{background:var(--bg);border-bottom:1px solid var(--line)}.trust ul{list-style:none;margin:0;padding:18px 0;display:grid;grid-template-columns:repeat(4,1fr);gap:16px}.trust li{display:flex;gap:12px;align-items:flex-start}.trust .ic{flex:0 0 40px;height:40px;border-radius:50%;background:#fff;display:grid;place-items:center;border:1px solid var(--line)}.trust .ic svg{width:22px;height:22px;color:var(--pink-dark)}.trust strong{display:block;font-size:.95rem}.trust span{font-size:.85rem;color:var(--muted)}.section{padding:44px 0}.section-alt{background:var(--bg)}.section-head{display:flex;justify-content:space-between;align-items:end;gap:16px;margin-bottom:18px;flex-wrap:wrap}.section-head p{color:var(--muted);margin:0}.grid{display:grid;grid-template-columns:repeat(4,1fr);gap:20px}.grid-3{grid-template-columns:repeat(3,1fr)}.card{background:#fff;border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;display:flex;flex-direction:column;box-shadow:var(--shadow);transition:transform .15s,box-shadow .15s}.card:hover{transform:translateY(-2px);box-shadow:0 4px 10px #00000014,0 14px 34px #00000014}.card-media{position:relative;aspect-ratio:4/3;background:#e9e9ee;overflow:hidden}.card-media img{width:100%;height:100%;object-fit:cover}.card-media .noimg{position:absolute;inset:0;display:grid;place-items:center;text-align:center;color:var(--muted);font-size:.85rem;padding:12px;background:repeating-linear-gradient(45deg,#f1f1f4,#f1f1f4 10px,#e9e9ee 10px 20px)}.badge{position:absolute;top:10px;left:10px;background:#fff;color:var(--ink);font-size:.72rem;font-weight:800;padding:4px 9px;border-radius:999px;box-shadow:0 1px 4px #00000026}.badge-example{background:#fff3cd;color:#6b4e00;border:1px solid #e0c060}.badge-partner{background:#e8f0fe;color:#1a3d8f}.card-body{padding:14px 16px 16px;display:flex;flex-direction:column;gap:6px;flex:1}.card-title{font-size:1.02rem;font-weight:750;margin:0}.card-title a{color:var(--ink);text-decoration:none}.card-title a:hover{color:var(--pink-dark);text-decoration:underline}.card-loc{color:var(--muted);font-size:.88rem;margin:0}.card-facts{font-size:.86rem;color:var(--ink-2);margin:0}.rating{display:flex;align-items:center;gap:8px;font-size:.86rem}.rating .score{background:var(--green-dark);color:#fff;font-weight:800;border-radius:6px;padding:2px 7px}.rating .new{background:var(--green-tint);color:var(--green-dark);font-weight:700;border-radius:6px;padding:2px 7px}.card-foot{margin-top:auto;display:flex;align-items:flex-end;justify-content:space-between;gap:10px;padding-top:10px}.price{line-height:1.15}.price .from{font-size:.75rem;color:var(--muted);display:block}.price .amt{font-size:1.25rem;font-weight:800}.price .per{font-size:.8rem;color:var(--muted)}.price .note{font-size:.72rem;color:var(--muted);display:block}.price-request{font-weight:700;color:var(--ink-2);font-size:.95rem}.card-foot{padding-top:6px}.card-actions{display:grid;grid-template-columns:1.4fr 1fr;gap:8px;margin-top:10px}.card-actions .btn{white-space:nowrap;padding:9px 10px;font-size:.86rem}.card-actions .via{font-weight:600}.btn-block .via{font-weight:700}.example-flag{display:inline-block;background:#fff3cd;color:#6b4e00;border:1px dashed #c9a227;border-radius:6px;font-size:.78rem;font-weight:800;padding:3px 8px}.dest-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.dest{position:relative;border-radius:var(--radius);overflow:hidden;min-height:170px;display:flex;align-items:flex-end;color:#fff;text-decoration:none;background:#333}.dest img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.dest:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,#0000 30%,#000000b3)}.dest div{position:relative;z-index:1;padding:14px 16px}.dest strong{font-size:1.1rem;display:block}.dest span{font-size:.85rem}.dest:hover{color:#fff}.dest:hover img{transform:scale(1.03);transition:transform .3s}.svc{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.svc a{display:block;background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:22px;text-decoration:none;color:var(--ink);box-shadow:var(--shadow)}.svc a:hover{border-color:var(--pink)}.svc svg{width:34px;height:34px;color:var(--pink-dark)}.svc h3{margin-top:10px}.svc p{color:var(--muted);margin:0}.page-hero{background:linear-gradient(90deg,var(--pink-tint),var(--green-tint));padding:34px 0 26px;border-bottom:1px solid var(--line)}.page-hero p{color:var(--ink-2);max-width:760px}.breadcrumbs{font-size:.85rem;color:var(--muted);margin-bottom:10px}.breadcrumbs ol{list-style:none;padding:0;margin:0;display:flex;flex-wrap:wrap;gap:6px}.breadcrumbs li+li:before{content:"\203a";margin-right:6px}.filters{display:flex;gap:10px;flex-wrap:wrap;align-items:end;background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:12px;margin:18px 0}.filters .field{min-width:160px;flex:1}.results-count{color:var(--muted);font-size:.92rem;margin:0 0 12px}.hidden{display:none!important}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.form-grid .full{grid-column:1/-1}.form-grid label{font-weight:700;font-size:.9rem;display:block;margin-bottom:4px}.form-grid input,.form-grid select,.form-grid textarea{width:100%;font:inherit;padding:10px 12px;border:1px solid #c9c9cf;border-radius:10px;background:#fff}.form-grid textarea{min-height:120px}.form-msg{margin-top:12px;font-weight:600}.contact-grid{display:grid;grid-template-columns:1.4fr 1fr;gap:28px}.placeholder{background:#fff3cd;color:#6b4e00;border-radius:4px;padding:0 4px;font-weight:700}.site-footer{background:#111;color:#ddd;margin-top:40px}.site-footer a{color:#fff}.footer-top{display:grid;grid-template-columns:1.3fr 1fr 1fr 1.2fr 1fr;gap:24px;padding-top:40px;padding-bottom:24px}.footer-top h2{font-size:1rem;color:#fff}.footer-top ul{list-style:none;padding:0;margin:0}.footer-top li{margin-bottom:6px}.footer-logo{background:#fff;border-radius:10px;padding:8px;display:inline-block;margin-bottom:10px}.footer-logo img{height:64px;width:auto}.footer-bottom{border-top:1px solid #333;padding-top:16px;padding-bottom:16px;font-size:.82rem;color:#aaa;display:flex;justify-content:space-between;gap:10px;flex-wrap:wrap}.colour-bar{height:6px;background:linear-gradient(90deg,var(--pink) 0 50%,var(--green) 50% 100%)}@media(max-width:1100px){.grid{grid-template-columns:repeat(3,1fr)}.main-nav a{padding:8px 10px;font-size:.9rem}}@media(max-width:980px){.search-card{grid-template-columns:1fr 1fr}.search-card .field-dest,.search-card .btn{grid-column:1/-1}.trust ul{grid-template-columns:repeat(2,1fr)}.footer-top{grid-template-columns:1fr 1fr}.contact-grid{grid-template-columns:1fr}.menu-toggle{display:inline-flex;margin-left:auto}.main-nav{display:none;position:absolute;left:0;right:0;top:100%;background:#fff;border-bottom:1px solid var(--line);padding:10px 20px 16px}.main-nav.open{display:block}.main-nav ul{flex-direction:column}.header-inner{position:relative}.header-actions .btn-ghost{display:none}}@media(max-width:760px){.grid,.grid-3{grid-template-columns:repeat(2,1fr);gap:14px}.dest-grid,.svc{grid-template-columns:1fr 1fr}}@media(max-width:520px){body{font-size:15px}.brand img{height:50px}.header-inner{min-height:64px}.grid,.grid-3,.dest-grid,.svc{grid-template-columns:1fr}.search-card{grid-template-columns:1fr 1fr;padding:10px}.hero-inner{padding-top:36px;padding-bottom:34px}.search-card .field-guests{grid-column:1/-1}.trust ul,.footer-top,.form-grid{grid-template-columns:1fr}.header-actions .btn{padding:8px 12px;font-size:.85rem}}@media(prefers-reduced-motion:reduce){*{transition:none!important;scroll-behavior:auto!important}}.js .js-hide{display:none}html:not(.js) .js-only{display:none!important}.topbar{background:var(--ink);color:#eee;font-size:.82rem}.topbar-inner{display:flex;justify-content:space-between;align-items:center;gap:12px;min-height:36px}.topbar a{color:#fff;text-decoration:none;display:inline-flex;align-items:center;gap:6px}.topbar a:hover{color:#ffd1ea}.topbar svg{width:15px;height:15px;flex:0 0 auto}.topbar-contact{list-style:none;margin:0;padding:0;display:flex;gap:18px;flex-wrap:wrap}.tb-label{color:#bbb;font-weight:600}.social{list-style:none;margin:0;padding:0;display:flex;gap:8px}.social a{display:inline-grid;place-items:center;width:30px;height:30px;border-radius:50%;color:#fff;background:#ffffff1f}.social a:hover{background:var(--pink);color:#fff}.social svg{width:16px;height:16px}.social-top a{width:26px;height:26px}.social-top svg{width:14px;height:14px}.social-footer{margin-top:12px}.social-light a{background:var(--pink-tint);color:var(--pink-dark)}.social-light a:hover{background:var(--pink-dark);color:#fff}.footer-contact a{word-break:break-all}.footer-bottom span{max-width:100%}.hero-tabs{display:flex;gap:6px;flex-wrap:wrap;margin-top:22px}.hero-tabs a{display:inline-flex;align-items:center;gap:8px;background:#ffffffe6;color:var(--ink);text-decoration:none;font-weight:700;padding:9px 16px;border-radius:999px;font-size:.92rem}.hero-tabs a[aria-current]{background:var(--pink-dark);color:#fff}.hero-tabs a:hover{background:#fff;color:var(--pink-dark)}.hero-tabs svg{width:18px;height:18px}.hero .search-card{margin-top:12px}.svc-count{display:inline-block;margin-top:10px;font-size:.82rem;font-weight:700;color:var(--green-dark);background:var(--green-tint);padding:3px 10px;border-radius:999px}.book-box.static{position:static}.footnote{margin-top:14px}.section-tight{padding-top:10px}.filters .field-q{flex:2;min-width:220px}.filters .field-sm{flex:.7;min-width:120px}.filter-actions{display:flex;gap:8px;align-items:center}.js .filter-actions .btn-primary{display:none}.results-bar{display:flex;justify-content:space-between;align-items:center}.no-results{background:var(--bg);border-radius:var(--radius);padding:30px;text-align:center;font-weight:600}.more-wrap{display:flex;justify-content:center;margin-top:24px}.pager ul{list-style:none;display:flex;flex-wrap:wrap;gap:6px;justify-content:center;padding:0;margin:24px 0 0}.pager a,.pager span{display:inline-block;min-width:40px;text-align:center;padding:8px 12px;border:1px solid var(--line);border-radius:8px;text-decoration:none}.pager span[aria-current]{background:var(--pink-dark);color:#fff;border-color:var(--pink-dark)}.photo-count{position:absolute;right:10px;bottom:10px;background:#000000a6;color:#fff;font-size:.72rem;font-weight:700;padding:3px 8px;border-radius:999px}.d-top{padding-top:18px}.d-title{margin:4px 0 6px;font-size:clamp(1.5rem,3vw,2.2rem)}.d-titleline{display:flex;flex-wrap:wrap;align-items:center;gap:6px;margin:0 0 14px;font-size:.95rem}.d-titleline a{color:var(--ink);font-weight:600}.d-titleline svg{width:16px;height:16px;vertical-align:-3px;margin-right:3px}.d-titleline .dot{color:var(--muted)}.tl-rating{display:inline-flex;align-items:center;gap:4px}.tl-rating svg{color:var(--pink-dark)}.badge-inline{font-size:.75rem;font-weight:800;padding:3px 9px;border-radius:999px}.gallery{position:relative;display:grid;grid-template-columns:2fr 1fr 1fr;grid-template-rows:220px 220px;gap:8px;border-radius:var(--radius);overflow:hidden;margin:0 0 26px}.g-item{display:block;position:relative;background:#e9e9ee;overflow:hidden}.g-item:first-child{grid-row:1/3}.g-item img{width:100%;height:100%;object-fit:cover;transition:filter .2s,transform .3s}.g-item:hover img{filter:brightness(.88)}.g-1{grid-template-columns:1fr;grid-template-rows:440px}.g-1 .g-item:first-child{grid-row:auto}.g-2{grid-template-columns:1fr 1fr;grid-template-rows:440px}.g-2 .g-item:first-child,.g-3 .g-item:first-child{grid-row:auto}.g-3{grid-template-columns:2fr 1fr;grid-template-rows:220px 220px}.g-3 .g-item:first-child{grid-row:1/3}.g-4{grid-template-columns:2fr 1fr 1fr}.g-4 .g-item:nth-child(4){grid-column:2/4}.g-all{position:absolute;right:14px;bottom:14px;background:#fff;color:var(--ink);border:1px solid var(--ink);box-shadow:0 2px 8px #0003}.g-all svg{width:16px;height:16px}.btn-light{background:#fff;color:var(--ink)}.gallery-empty{border-radius:var(--radius);margin:0 0 26px;padding:70px 20px;text-align:center;color:var(--muted);font-weight:600;background:repeating-linear-gradient(45deg,#f4f4f6,#f4f4f6 12px,#ececf0 12px 24px);display:flex;flex-direction:column;align-items:center;gap:10px}.gallery-empty span{width:44px;height:44px;color:var(--pink-dark)}.detail{display:grid;grid-template-columns:minmax(0,1fr) 370px;gap:48px;align-items:start}.d-overview{border-bottom:1px solid var(--line);padding-bottom:18px}.d-sub{font-size:1.3rem;margin-bottom:10px}.keyfacts{list-style:none;display:flex;flex-wrap:wrap;gap:10px 22px;margin:0;padding:0}.keyfacts li{display:flex;align-items:center;gap:8px;font-weight:600}.keyfacts svg{width:22px;height:22px;color:var(--pink-dark);flex:0 0 auto}.d-sec{border-bottom:1px solid var(--line);padding:24px 0}.d-sec h2{font-size:1.3rem}.d-sec h3{font-size:1.02rem;margin-top:1em}.highlights{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:repeat(2,1fr);gap:12px}.highlights li,.ticks li,.amenities li{display:flex;gap:10px;align-items:flex-start}.highlights svg,.ticks svg,.amenities svg{width:20px;height:20px;flex:0 0 auto;color:var(--green-dark);margin-top:2px}.crosses svg{color:#b3261e}.highlights li{font-weight:600}.desc.collapsible{max-height:260px;overflow:hidden;position:relative}.js .desc.collapsible:not(.expanded):after{content:"";position:absolute;left:0;right:0;bottom:0;height:70px;background:linear-gradient(#fff0,#fff)}html:not(.js) .desc.collapsible,.desc.collapsible.expanded{max-height:none}.amenities{list-style:none;padding:0;margin:0 0 16px;display:grid;grid-template-columns:repeat(2,1fr);gap:12px 24px}.js .amenities.collapsible:not(.expanded) .more{display:none}.ticks{list-style:none;padding:0;margin:0;display:grid;gap:10px}.incl{display:grid;grid-template-columns:1fr 1fr;gap:24px}.incl h3{margin-top:0}.rooms{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:12px}.rooms li{border:1px solid var(--line);border-radius:12px;padding:16px;display:flex;flex-direction:column;gap:4px}.rooms svg{width:28px;height:28px;color:var(--pink-dark);margin-bottom:6px}.rooms span{color:var(--muted);font-size:.92rem}.map{border-radius:var(--radius);overflow:hidden;border:1px solid var(--line);aspect-ratio:16/8;background:#e9eef2}.map iframe{width:100%;height:100%;border:0;display:block}.rules-grid{list-style:none;padding:0;margin:0 0 14px;display:grid;grid-template-columns:repeat(2,1fr);gap:14px}.rules-grid li{display:flex;gap:10px;align-items:flex-start}.rules-grid svg{width:22px;height:22px;color:var(--pink-dark);flex:0 0 auto}.rules-grid strong{display:block}.rules-list{padding-left:20px}.rules-list li{margin-bottom:6px}.rev-sum{display:grid;grid-template-columns:180px 1fr;gap:28px;align-items:center;margin-bottom:12px}.rev-score{display:flex;flex-direction:column;align-items:flex-start}.rev-score svg{width:26px;height:26px;color:var(--pink-dark)}.rev-score strong{font-size:2.6rem;line-height:1}.rev-score span{color:var(--muted)}.rev-bars{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:repeat(2,1fr);gap:10px 28px}.rev-bars li{display:grid;grid-template-columns:110px 1fr 32px;gap:10px;align-items:center;font-size:.92rem}.rev-bars .bar{height:5px;background:var(--line);border-radius:3px;overflow:hidden;display:block}.rev-bars .bar span{display:block;height:100%;background:var(--ink)}.book-box{position:sticky;top:96px;border:1px solid var(--line);border-radius:var(--radius);padding:22px;box-shadow:0 6px 18px #0000001f;background:#fff}.book-box .price .amt{font-size:1.6rem}.book-box .btn{margin-top:10px}.bb-rating{display:flex;align-items:center;gap:4px;font-size:.9rem;margin:4px 0 0}.bb-rating svg{width:15px;height:15px;color:var(--pink-dark)}.bb-form{margin-top:14px}.bb-fields{display:grid;grid-template-columns:1fr 1fr;border:1px solid #b9b9c0;border-radius:12px;overflow:hidden}.bb-fields .field{border:0;border-radius:0;border-bottom:1px solid #b9b9c0}.bb-fields.bb-2 .field:first-child{border-right:1px solid #b9b9c0}.bb-fields .bb-guests,.bb-fields.bb-1 .field{grid-column:1/-1}.bb-fields .field:last-child{border-bottom:0}.bb-contact{list-style:none;padding:12px 0 0;margin:14px 0 0;display:flex;gap:14px;flex-wrap:wrap;border-top:1px solid var(--line)}.bb-contact a{display:inline-flex;align-items:center;gap:6px;font-weight:600;text-decoration:none}.bb-contact svg{width:18px;height:18px}.mobile-book{display:none}.proto-note{margin-top:24px}.lightbox{border:0;padding:0;margin:0;width:100vw;height:100vh;max-width:100vw;max-height:100vh;background:#0d0d0d;color:#fff}.lightbox::backdrop{background:#000000e6}.lightbox[open]{display:grid;grid-template-rows:auto 1fr auto}.lb-top{display:flex;justify-content:space-between;align-items:center;padding:12px 18px}.lb-count{font-weight:700}.lb-close{background:none;border:1px solid #555;color:#fff;border-radius:50%;width:42px;height:42px;display:grid;place-items:center;cursor:pointer}.lb-close svg{width:22px;height:22px}.lb-stage{display:grid;grid-template-columns:64px 1fr 64px;align-items:center;min-height:0}.lb-stage figure{margin:0;display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:0;height:100%}.lb-stage img{max-width:100%;max-height:calc(100vh - 190px);width:auto;height:auto;object-fit:contain}.lb-stage figcaption{margin-top:8px;color:#ccc;font-size:.9rem}.lb-nav{background:#ffffff1a;border:1px solid #555;color:#fff;font-size:2rem;line-height:1;width:48px;height:48px;border-radius:50%;cursor:pointer;justify-self:center}.lb-nav[hidden]{display:none}.lb-nav:hover,.lb-close:hover{background:var(--pink-dark);border-color:var(--pink-dark)}.lb-thumbs{display:flex;gap:6px;overflow-x:auto;padding:10px 18px 16px;justify-content:safe center}.lb-thumbs button{flex:0 0 auto;border:2px solid transparent;padding:0;border-radius:6px;overflow:hidden;cursor:pointer;opacity:.6;background:#222}.lb-thumbs button.active{border-color:#fff;opacity:1}.lb-thumbs img{width:96px;height:64px;object-fit:cover}body.lb-open{overflow:hidden}.contact-list{list-style:none;padding:0;margin:0 0 16px;display:grid;gap:14px}.contact-list li{display:flex;gap:12px;align-items:flex-start}.contact-list svg{width:22px;height:22px;color:var(--pink-dark);flex:0 0 auto;margin-top:2px}.contact-list strong{display:block;font-size:.85rem;color:var(--muted)}.contact-list a{font-weight:700;word-break:break-word}.form-actions{display:flex;gap:10px;flex-wrap:wrap}.form-actions svg,.btn-green svg{width:18px;height:18px}.identity-note{display:flex;gap:12px;align-items:flex-start;background:var(--green-tint);border:1px solid #b9dc99;border-radius:12px;padding:12px 14px;margin:0 0 18px}.identity-note svg{width:24px;height:24px;color:var(--green-dark);flex:0 0 auto}.identity-note p{margin:0}@media(max-width:980px){.detail{grid-template-columns:1fr;gap:0}.book-box{position:static;margin:26px 0}.detail-page .site-footer{padding-bottom:70px}.mobile-book{display:flex;position:fixed;left:0;right:0;bottom:0;z-index:60;background:#fff;border-top:1px solid var(--line);padding:10px 16px;justify-content:space-between;align-items:center;box-shadow:0 -4px 14px #00000014}.mobile-book .amt{font-size:1.15rem}.topbar-contact .tb-email{display:none}}@media(max-width:760px){.gallery,.g-3,.g-4{grid-template-columns:1fr 1fr;grid-template-rows:240px 110px}.g-item:first-child,.g-3 .g-item:first-child{grid-column:1/-1;grid-row:auto}.g-item:nth-child(n+4){display:none}.g-4 .g-item:nth-child(4){grid-column:auto}.g-1,.g-2{grid-template-columns:1fr;grid-template-rows:260px}.g-2 .g-item:nth-child(2){display:none}.highlights,.amenities,.rules-grid,.rev-bars,.incl{grid-template-columns:1fr}.rev-sum{grid-template-columns:1fr;gap:14px}.lb-stage{grid-template-columns:1fr}.lb-nav{position:absolute;top:50%;transform:translateY(-50%)}.lb-prev{left:8px}.lb-next{right:8px}.lb-stage img{max-height:calc(100vh - 170px)}.topbar-contact .tb-label{display:none}}@media(max-width:520px){.topbar-inner{justify-content:center;flex-wrap:wrap;padding-top:4px;padding-bottom:4px}.topbar-contact{gap:12px;justify-content:center}.social-top{display:none}.hero-tabs a{padding:7px 11px;font-size:.84rem}.hero-tabs svg{display:none}.filters .field,.filters .field-q,.filters .field-sm{min-width:calc(50% - 5px);flex:1 1 calc(50% - 5px)}.filters .field-q{flex-basis:100%}.d-sec{padding:20px 0}}.flag-preview{background:#e8f0fe;color:#1a3d7c;border-color:#7a9be0}.status-preview{border-left-color:#1a3d7c}.notice-banner{display:inline-flex;align-items:center;gap:8px;margin:4px 0 10px;padding:6px 12px;border-radius:999px;background:var(--green-tint);color:var(--green-dark);font-size:.95rem}.notice-banner svg{width:18px;height:18px}.bb-notice{margin:0 0 12px;padding:8px 12px;border-radius:var(--radius-sm);background:var(--green-tint);color:var(--green-dark);font-weight:700;text-align:center}.card-notice{margin:2px 0 4px;font-size:.82rem;font-weight:700;color:var(--green-dark)}.mb-notice{font-weight:700;color:var(--green-dark);font-size:.92rem}.book-box .jhrw{margin:0 -4px}.has-widget .book-box{max-height:calc(100vh - 112px);overflow-y:auto;overscroll-behavior:contain}.bb-platform{margin-top:10px}@media(max-width:980px){.has-widget .book-box{max-height:none;overflow:visible}}@media(max-width:980px){body.detail-page .jhrc-launch{bottom:78px}body.detail-page .jhrc-box{bottom:136px;max-height:calc(100vh - 160px)}}.detail>*{min-width:0}.proto-note,.d-main p,.d-main li{overflow-wrap:anywhere}.hero{overflow:hidden}.hero-img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.hero:before{z-index:1}.hero-inner,.hero-credit{z-index:2}.hero-tabs ul{display:flex;gap:6px;flex-wrap:wrap;list-style:none;margin:0;padding:0}.hero-tabs a.is-active{background:var(--pink-dark);color:#fff}.search-card{grid-template-columns:2fr 1.1fr 1.1fr 1fr auto}.how{list-style:none;padding:0;margin:18px 0;display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:16px}.how li{display:flex;gap:12px;align-items:flex-start;background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:16px}.how-n{flex:none;width:34px;height:34px;border-radius:50%;background:var(--pink-dark);color:#fff;font-weight:800;display:grid;place-items:center}.how h3,.how h4{margin:0 0 4px;font-size:1rem}.how p{margin:0;font-size:.93rem}.faq details{border:1px solid var(--line);border-radius:var(--radius);padding:12px 16px;margin:0 0 10px;background:#fff}.faq summary{cursor:pointer;font-weight:700}.faq details[open] summary{margin-bottom:8px}.prose h2{margin-top:1.6em}.prose ul{padding-left:1.2em}.prose li{margin:.35em 0}.status-note{background:#fff3cd;border:1px solid #f0d27a;color:#5c4400;border-radius:var(--radius);padding:10px 14px}.empty-state{text-align:center;max-width:640px;margin:20px auto;padding:36px 22px;border:2px dashed var(--line);border-radius:var(--radius);background:#fff}.empty-state h2{margin-top:0}.popular{border:0;padding:0;margin:12px 0 0;display:flex;flex-wrap:wrap;gap:8px;align-items:center;grid-column:1/-1}.popular legend{font-weight:700;font-size:.9rem;margin-bottom:6px;padding:0}.chip{display:inline-flex;align-items:center;gap:6px;border:1px solid var(--line);border-radius:999px;padding:6px 12px;background:#fff;cursor:pointer;font-size:.9rem}.chip:has(input:checked){border-color:var(--pink-dark);background:var(--pink-tint)}.chip input{accent-color:var(--pink-dark);margin:0}.chip small{color:var(--muted,#5f6368)}.results-bar{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap}.results-map{margin:12px 0 18px}.results-map-canvas{height:420px;border-radius:var(--radius);border:1px solid var(--line);margin-bottom:6px}.map-lazy{min-height:180px;display:grid;place-items:center;background:var(--green-tint,#e8f5ee);border-radius:var(--radius)}.map-lazy.map-loaded{display:block;background:none}.map-lazy iframe{width:100%;height:320px;border:0;border-radius:var(--radius)}.form-msg.ok{color:#0b6b3a;font-weight:700}.form-msg.err{color:#a3001f;font-weight:700}.hp{position:absolute!important;left:-9999px!important;width:1px;height:1px;overflow:hidden}.form-grid .check{display:flex;gap:10px;align-items:flex-start}.form-grid .check input{margin-top:4px;width:auto}@media(max-width:760px){.results-map-canvas{height:320px}.popular{gap:6px}}.book-direct{margin-top:14px;padding:12px 14px;border:1px solid #cfe8bd;background:#f4fbef;border-radius:10px}.book-direct h3{font-size:1rem;margin:0 0 6px}.book-direct ul{margin:0;padding-left:18px;font-size:.92rem}.book-direct li{margin:3px 0}.sub-form{display:flex;flex-direction:column;gap:6px}.sub-form input[type=email]{padding:9px 10px;border-radius:8px;border:1px solid #ccc;font:inherit}.sub-form label{font-size:.88rem}.sub-consent{display:flex;gap:6px;align-items:flex-start;font-size:.82rem}.sub-consent a{color:inherit}.sub-msg{min-height:1em;margin:0}.hp-field{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}.area-links{margin-top:10px;font-weight:600}.area-links a{white-space:nowrap}.area-guide-link{display:flex;gap:8px;align-items:center;font-weight:600}.area-guide-link svg{width:18px;height:18px;color:var(--pink-dark)}.area-glance{margin-top:8px}.area-guide p{max-width:70ch}.area-links-list{list-style:none;padding:0;display:flex;flex-wrap:wrap;gap:8px 20px}.results-bar h2.results-count{font-size:1rem;margin:0}.form-grid fieldset.addons{border:1px solid var(--line);border-radius:var(--radius);padding:10px 14px;margin:0;display:grid;grid-template-columns:repeat(2,1fr);gap:8px 16px}.form-grid fieldset.addons legend{font-weight:700;padding:0 4px}.form-grid fieldset.addons .check input{margin-top:4px;width:auto}@media(max-width:600px){.form-grid fieldset.addons{grid-template-columns:1fr}}
