 .bb-hero { max-width: 940px; margin:0 auto; padding: 64px 24px 32px; }
 .bb-hero h1 { font-family: Fraunces,serif; font-size:clamp(2.4rem,6vw,4.8rem);line-height:1.1; }
 .bb-hero p,.bb-section p { line-height:1.8; }
 .bb-jump { display:flex;gap:10px;flex-wrap:wrap;margin:16px 0 40px; }
 .bb-jump a,.bb-links a { border:1px solid #76624a;border-radius:14px;padding:10px 14px;display:inline-block; }
 .bb-section { max-width:940px; margin:0 auto 36px;padding:28px;border:1px solid #665443;border-radius:22px;background:rgba(255,255,255,.035);scroll-margin-top:110px; }
 .bb-section h2 { font-family:Fraunces,serif;font-size:clamp(1.6rem,3vw,2.2rem); }
 .bb-section p { margin:16px 0; }
 .bb-links { display:flex;gap:10px;flex-wrap:wrap; }
 .bb-fit {display:grid;grid-template-columns:1fr 1fr;gap:20px;margin:24px 0;padding-bottom:12px;border-bottom:1px solid #665443;}
 .bb-fit h3,.bb-tip h3 {font-size:1rem;color:#efbd7a;margin:0;}
 .bb-fit p {margin:8px 0;font-size:.95rem;}
 .bb-tip {padding:18px 22px;border-left:3px solid #dbab68;background:rgba(218,155,78,.08);border-radius:0 12px 12px 0;margin:24px 0;}
 .bb-tip p {margin:8px 0 0;}
 .bb-times {width:100%;border-collapse:collapse;margin:24px 0;text-align:left;}
 .bb-times caption {text-align:left;font-weight:700;padding-bottom:12px;}
 .bb-times th,.bb-times td {padding:14px;border-bottom:1px solid #665443;line-height:1.5;}
 .bb-times thead {color:#efbd7a;background:rgba(218,155,78,.08);}
 .bb-times tbody th {font-weight:500;}
 .bb-times td {min-width:120px;font-weight:700;}
 .bb-meta {font-size:.8rem;opacity:.75;}
 .bb-actions {display:flex;align-items:center;gap:18px;flex-wrap:wrap;margin-top:20px;}
 .bb-inset {margin-top:24px;border-top:1px solid #665443;padding-top:18px;scroll-margin-top:120px;}
 .bb-inset h4 {font-size:1.1rem;margin-bottom:0;}
 #bb-guide details {border-bottom:1px solid #665443;padding:18px 0;}
 #bb-guide summary {cursor:pointer;font-weight:700;line-height:1.5;}
 #bb-guide [hidden] {display:none!important;}
 #bb-guide .bb-jump {max-width:940px;margin:0 auto 36px;padding:0 24px;}
 #bb-guide h3 {margin-top:24px;}
 #bb-guide a {overflow-wrap:anywhere;}
 .bb-event figure img {max-width:100%;max-height:300px;object-fit:contain;}
 .bb-gallery,.bb-weather-grid { display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:20px; }
 .bb-gallery figure { margin:0; }
 .bb-gallery button { width:100%;padding:0;border:0;background:transparent;cursor:zoom-in; }
 .bb-gallery img { width:100%;height:230px;object-fit:cover;border-radius:14px; }
 .bb-gallery figcaption { padding:12px 0;line-height:1.6; }
 .bb-weather-day,.bb-event { padding:16px;border:1px solid #665443;border-radius:14px;margin:12px 0; }
 .bb-weather-day p { font-size:.9rem; }
 .bb-booking { background:rgba(218,155,78,.1); }
 #bb-lightbox { max-width:95vw;max-height:95vh;background:#17120d;color:#fff;border:1px solid #b99a70;border-radius:16px; }
 #bb-lightbox::backdrop { background:rgba(0,0,0,.85); }
 #bb-full-photo { display:block;max-width:88vw;max-height:78vh;object-fit:contain;margin-top:12px; }
 #bb-close { padding:12px 20px;cursor:pointer; }
 @media(max-width:600px){.bb-section{padding:24px 18px}.bb-hero{padding:32px 12px}.bb-jump a{font-size:.85rem}.bb-gallery{grid-template-columns:1fr}.bb-fit{grid-template-columns:1fr;gap:10px}.bb-times th,.bb-times td{padding:12px 6px;font-size:.9rem}.bb-times td{min-width:95px}}

 /* Hero only. Replace the local placeholder URL with assets/bukit-bintang-hero.jpg
    when a suitable destination photograph is supplied. No external hotlink. */
 .bb-destination-hero {
   --bb-hero-image: url("assets/bukit-bintang-hero-placeholder.svg");
   position:relative;
   display:flex;
   align-items:flex-end;
   box-sizing:border-box;
   width:calc(100% + 32px);
   max-width:none;
   min-height:clamp(520px,70svh,780px);
   margin:22px -16px 40px;
   padding:clamp(36px,6vw,80px);
   overflow:hidden;
   isolation:isolate;
   background:#292b29;
   background-image:var(--bb-hero-image);
   background-size:cover;
   background-position:60% 45%;
 }
 .bb-destination-hero::before {
   content:"";position:absolute;inset:0;z-index:-1;
   background:linear-gradient(90deg,rgba(0,0,0,.48),rgba(0,0,0,.08) 75%),linear-gradient(0deg,rgba(0,0,0,.55),transparent 75%);
 }
 .bb-destination-hero .bb-hero-copy {max-width:760px;}
 .bb-destination-hero .eyebrow {font-size:.72rem;letter-spacing:.2em;line-height:1.5;color:#f2dfc6;margin:0 0 22px;}
 .bb-destination-hero h1 {font-family:Fraunces,serif;font-size:clamp(3.2rem,6.5vw,6.2rem);font-weight:600;line-height:1.04;letter-spacing:-.025em;color:#fff9f0;margin:0 0 24px;text-wrap:balance;}
 .bb-destination-hero #bb-intro {max-width:610px;font-size:clamp(1.05rem,1.5vw,1.25rem);line-height:1.65;color:#fff9f0;margin:0;text-wrap:pretty;}
 @media(max-width:600px){
   .bb-destination-hero {min-height:clamp(470px,70svh,660px);padding:36px 28px;margin-top:18px;background-position:64% 50%;}
   .bb-destination-hero .eyebrow {font-size:.65rem;letter-spacing:.16em;margin-bottom:18px;}
   .bb-destination-hero h1 {font-size:clamp(3rem,12vw,4rem);margin-bottom:20px;}
   .bb-destination-hero #bb-intro {font-size:1.05rem;line-height:1.65;max-width:32ch;}
 }
 @media(max-width:560px){
   .bb-destination-hero {width:calc(100% + 16px);margin-left:-8px;margin-right:-8px;}
 }
