/* Bishop's Palace: selectable HTML copy, real photographs, and the Moody Gardens type scale. */
body.attractions-page .atx #bishops-palace.br-reference{--br-rail:170px;position:relative;padding:calc(75 * var(--u)) var(--br-rail);background:var(--paper);color:var(--navy);isolation:isolate}
.br-reference .br__live{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.3fr);grid-template-rows:1fr auto;column-gap:calc(74 * var(--u));row-gap:calc(40 * var(--u));align-items:center}
.br-reference .br__copy{position:relative;z-index:2;min-width:0;container-type:inline-size;user-select:text}
.br-reference .br__kicker{display:flex;align-items:center;gap:calc(20 * var(--u));font:400 max(11px,calc(14.26 * var(--u)))/1.4 var(--hp-label);letter-spacing:.39em;text-transform:uppercase;color:var(--sand);white-space:nowrap}
.br-reference .br__kicker::before,.br-reference .br__kicker::after{content:"";display:block;flex:1;min-width:24px;max-width:calc(75 * var(--u));height:1px;background:#b0977f}
/* Same heading face, relative size, leading, tracking, and script treatment as Moody Gardens. */
.br-reference .br__title{margin-top:calc(24 * var(--u));font:400 calc(156 * var(--u))/.94 var(--hp-display);font-size:24cqw;letter-spacing:-.01em;color:var(--navy)}
.br-reference .br__title-main{display:block;white-space:nowrap}
.br-reference .br__title em{display:block;margin:calc(5 * var(--u)) 0 0 10%;font:400 1.08em/.76 var(--hp-accent);font-style:normal;letter-spacing:0;color:var(--sand);white-space:nowrap}
.br-reference .br__travel{display:flex;align-items:center;gap:calc(24 * var(--u));margin-top:calc(44 * var(--u));font:500 max(14px,calc(21 * var(--u)))/1.3 var(--hp-text);color:var(--meta)}
.br-reference .br__travel svg{width:max(24px,calc(36 * var(--u)));height:auto;flex:none;color:var(--sand)}
.br-reference .br__lead{margin-top:calc(24 * var(--u));font:500 max(15.5px,calc(23 * var(--u)))/1.42 var(--hp-text);letter-spacing:-.012em;color:#5f6b78;max-width:43ch}
.br-reference .br__art{position:relative;grid-column:2;grid-row:1 / span 2;min-width:0;height:calc(900 * var(--u));isolation:isolate}
.br-reference .br__art>img{position:absolute;left:0;bottom:0;display:block;width:100%;height:auto;max-width:100%;max-height:100%;object-fit:contain;object-position:center bottom;mask-image:linear-gradient(to bottom,#000 94%,transparent);-webkit-mask-image:linear-gradient(to bottom,#000 94%,transparent)}
.br-reference .br__sky{position:absolute;z-index:-1;inset:4% 9% 5% 31%;background:linear-gradient(145deg,#92bfdd,#e4eee9);border-radius:999px 999px 12px 12px;outline:1px solid #b89568;outline-offset:4px}
.br-reference .br__seal{position:absolute;z-index:2;right:0;top:15%;width:clamp(100px,calc(160 * var(--u)),190px);aspect-ratio:1;display:flex;flex-direction:column;align-items:center;justify-content:center;border:1px solid #b89568;outline:1px solid #b89568;outline-offset:5px;border-radius:50%;background:var(--paper);color:var(--sand);font:400 max(8px,calc(11 * var(--u)))/1.7 var(--hp-label);text-transform:uppercase;letter-spacing:.17em;text-align:center;user-select:text}
.br-reference .br__seal span{margin-top:5px;font-size:1.1em}
.br-reference .br__seal i{font-size:22px;line-height:1.2;font-style:normal}
.br-reference .br__photos{grid-column:1;grid-row:2;display:grid;grid-template-columns:32px minmax(0,1fr) 32px;align-items:center;gap:10px;min-width:0}
.br-reference .br__photo-window{min-width:0;overflow:hidden;touch-action:pan-y}
.br-reference .br__photo-row{--br-photo-gap:12px;display:flex;gap:var(--br-photo-gap);min-width:0}
.br-reference .br__photo-row.is-sliding{transition:transform .28s ease}
.br-reference .br__photo-row>.br__photo{flex:0 0 calc((100% - 2 * var(--br-photo-gap)) / 3)}
.br-reference .br__photo-window .br__photo:focus-visible{outline:3px solid #b89a6a;outline-offset:-6px}
.br-reference .br__slider-status{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
.br-reference .br__photo{min-width:0;display:block;aspect-ratio:1.4;border:4px solid #fff;border-radius:10px;overflow:hidden;padding:0;background:var(--paper);cursor:pointer;box-shadow:0 10px 22px #4a362411}
.br-reference .br__photo img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .3s}
.br-reference .br__photo:hover img{transform:scale(1.06)}
.br-reference .br__arrow{width:32px;height:32px;padding:0;border:1px solid #c9b897;border-radius:50%;background:var(--paper);color:var(--sand);font:400 24px/1 var(--hp-text);cursor:pointer}
.br-reference :focus-visible{outline:3px solid #7c5936;outline-offset:4px}
.br-reference .br__play{position:absolute;z-index:3;bottom:8%;left:50%;transform:translateX(-50%);display:flex;align-items:center;gap:16px;width:max-content;max-width:calc(100% - 32px);padding:12px 24px 12px 12px;border:1px solid #c7ad83;border-radius:999px;background:#073b57;color:#faf7ef;text-align:left;box-shadow:0 12px 32px #062c3b33;cursor:pointer;transition:background .25s,box-shadow .25s}
.br-reference .br__play:hover{background:#0e4b65;box-shadow:0 16px 36px #062c3b44}
.br-reference .br__play-icon{display:grid;place-items:center;width:52px;height:52px;flex:none;border:1px solid #c7ad83;border-radius:50%;color:#e4c9a2}
.br-reference .br__play-icon svg{width:22px;height:22px;fill:currentColor}
.br-reference .br__play-copy>span{display:block;font:400 26px/1.15 var(--hp-display);letter-spacing:-.01em;white-space:nowrap}
.br-reference .br__play-copy small{display:block;margin-top:6px;font:400 12px/1.4 var(--hp-text);color:#e0d4c1;white-space:nowrap}
.br__video-dialog{width:min(1080px,calc(100vw - 48px));max-height:calc(100dvh - 48px);padding:0;border:1px solid #b89a6a;background:#faf7ef;color:#073b57;box-shadow:0 24px 100px #0005;overflow:auto;overscroll-behavior:contain}
.br__video-dialog::backdrop{background:#062b3de8;backdrop-filter:blur(7px)}
.br__video-header{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:24px 28px}
.br__video-header p{font:400 10px/1.4 var(--hp-label);letter-spacing:.2em;text-transform:uppercase;color:#917658}
.br__video-header h3{margin-top:8px;font:400 34px/1.15 var(--hp-display);color:#073b57}
.br__video-close{display:flex;align-items:center;gap:10px;flex:none;padding:10px 0 10px 10px;border:0;background:transparent;color:#073b57;font:500 13px/1 var(--hp-text);cursor:pointer}
.br__video-close svg{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1.5}
.br__video{display:block;width:100%;aspect-ratio:16 / 9;max-height:calc(100dvh - 205px);background:#061c26;object-fit:contain}
.br__video-footer{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:18px 28px;font:400 13px/1.4 var(--hp-text);color:#5f6b78}
.br__video-footer a{flex:none;color:#073b57;text-decoration:underline;text-underline-offset:4px}
.br__lightbox{width:min(1080px,95vw);max-height:94vh;box-sizing:border-box;border:0;padding:48px 24px 20px;background:#faf7ef;color:#073b57;box-shadow:0 24px 90px #0006}
.br__lightbox::backdrop{background:#062b3de0;backdrop-filter:blur(5px)}
.br__lightbox>img{display:block;width:100%;height:auto;max-height:75vh;object-fit:contain;max-width:100%}
.br__lightbox .br__close{position:absolute;right:20px;top:12px;border:0;background:transparent;color:#073b57;font:500 15px/1.4 var(--hp-text);padding:4px;cursor:pointer}
.br__lightbox .br__lightbox-foot{display:flex;align-items:center;gap:16px;justify-content:space-between;margin-top:14px}
.br__lightbox .br__lightbox-foot p{margin:0;font:500 20px/1.2 var(--hp-text);text-align:center}
.br__lightbox .br__lightbox-foot button{flex:none;width:40px;height:40px;border:1px solid #c9b897;border-radius:50%;background:transparent;color:#073b57;font:400 22px/1 var(--hp-text);cursor:pointer}
@media(min-width:901px) and (max-width:1100px){body.attractions-page .atx #bishops-palace.br-reference{--br-rail:clamp(80px,8.947vw,170px)}}
@media(max-width:900px){body.attractions-page .atx #bishops-palace.br-reference{--br-rail:24px}}
@media(max-width:999px){
 body.attractions-page .atx #bishops-palace.br-reference{padding:40px var(--br-rail)}
 .br-reference .br__live{display:flex;flex-direction:column;align-items:stretch;gap:0}
 .br-reference .br__art{height:min(108vw,700px);max-width:660px;width:100%;margin:0 auto 40px;order:0}
 .br-reference .br__copy{order:1}
 .br-reference .br__kicker{gap:14px;font-size:12px;letter-spacing:.3em}
 .br-reference .br__kicker::before,.br-reference .br__kicker::after{max-width:60px}
 .br-reference .br__title{margin-top:24px;font-size:clamp(58px,24cqw,96px)}
 .br-reference .br__title em{margin-top:4px}
 .br-reference .br__travel{margin-top:32px;gap:16px;font-size:16px}
 .br-reference .br__lead{margin-top:20px;font-size:17px;max-width:none}
 .br-reference .br__photos{order:2;margin-top:28px}
 .br-reference .br__seal{top:10%;width:110px}
 .br__lightbox{padding:42px 15px 16px}
 .br__lightbox .br__lightbox-foot p{font-size:16px}
}
@media(max-width:600px){
 .br-reference .br__kicker{font-size:11px;letter-spacing:.28em;gap:10px}
 .br-reference .br__kicker::before,.br-reference .br__kicker::after{min-width:20px;max-width:40px}
 .br-reference .br__photos{grid-template-columns:28px minmax(0,1fr) 28px;gap:6px}
 .br-reference .br__photo-row{--br-photo-gap:7px}
 .br-reference .br__photo{aspect-ratio:.9;border-width:3px}
 .br-reference .br__arrow{width:28px;height:28px}
 .br-reference .br__seal{width:90px;font-size:7px}
 .br-reference .br__play{gap:12px;padding:10px 18px 10px 10px;bottom:8%}
 .br-reference .br__play-icon{width:42px;height:42px}
 .br-reference .br__play-copy>span{font-size:22px}
 .br-reference .br__play-copy small{font-size:10px;margin-top:4px}
 .br__video-dialog{width:calc(100vw - 24px);max-height:calc(100dvh - 24px)}
 .br__video-header{padding:20px 16px;gap:14px}
 .br__video-header p{font-size:8px;letter-spacing:.16em}
 .br__video-header h3{font-size:25px}
 .br__video-close{padding:10px 0 10px 6px}
 .br__video-close span{display:none}
 .br__video-footer{padding:16px;font-size:11px;gap:14px}
}
@media(prefers-reduced-motion:reduce){.br-reference .br__photo img,.br-reference .br__play,.br-reference .br__photo-row.is-sliding{transition:none}}

/* Repair the palm's cutout transparency with untouched pixels from its original photograph.
   The cutout corresponds to x=1, y=39 in the original 2000 × 1750 image. */
#bishops-palace.br-reference .br__tree-restore{position:absolute;left:0;bottom:0;width:100%;aspect-ratio:1999/1711;max-height:100%;pointer-events:none;mask-image:url('../img/bishops-reference/tree-restore-mask.svg');-webkit-mask-image:url('../img/bishops-reference/tree-restore-mask.svg');mask-size:100% 100%;-webkit-mask-size:100% 100%;mask-repeat:no-repeat;-webkit-mask-repeat:no-repeat}
#bishops-palace.br-reference .br__tree-restore img{position:absolute;left:-.050025%;top:-2.279369%;display:block;width:100.050025%;height:auto;max-width:none;max-height:none}

/* Keep Bishop's Palace together as one heading. */
body.attractions-page .atx #bishops-palace .br__title{display:flex;align-items:baseline;gap:.18em;white-space:nowrap}
body.attractions-page .atx #bishops-palace .br__title-main,
body.attractions-page .atx #bishops-palace .br__title em{display:inline;flex:none;white-space:nowrap}
body.attractions-page .atx #bishops-palace .br__title em{margin:0}

/* Match Moody Gardens' responsive heading size while keeping Bishop's Palace inline. */
body.attractions-page .atx #bishops-palace .br__title{font-size:calc((100vw - 2 * var(--br-rail)) * .07702888);letter-spacing:-.025em;gap:.20em}
/* Use Moody Gardens' display face so the equal CSS size also has equal visible height. */
body.attractions-page .atx #bishops-palace .br__title em{font:700 1em/.95 var(--hp-display);font-style:normal;letter-spacing:-.025em}
@media(max-width:1250px){
 body.attractions-page .atx #bishops-palace .br__title{font-size:clamp(62px,13.5cqw,104px)}
}
/* Give the larger title the full text rail at the same tablet breakpoint. */
@media(min-width:1000px) and (max-width:1250px){
 body.attractions-page .atx #bishops-palace .br__live{display:flex;flex-direction:column;align-items:stretch;gap:0}
 body.attractions-page .atx #bishops-palace .br__art{height:min(108vw,700px);max-width:660px;width:100%;margin:0 auto 40px;order:0}
 body.attractions-page .atx #bishops-palace .br__copy{order:1}
 body.attractions-page .atx #bishops-palace .br__photos{order:2;margin-top:28px}
}
@media(max-width:360px){body.attractions-page .atx #bishops-palace .br__title{font-size:57px}}
/* Use a little of the outer rail on narrow phones so the title stays on one line. */
@media(max-width:352px){body.attractions-page .atx #bishops-palace .br__title{margin-left:-18px;margin-right:-18px;width:calc(100% + 36px)}}

/* Requested Bishop’s Palace description color and size. */
body.attractions-page .atx #bishops-palace.br-reference .br__lead{color:#073b57;font-size:27.2105px;line-height:1.26;letter-spacing:0;word-spacing:normal;margin-top:24px}
/* Match ELISSA’s description spacing at its tablet and phone breakpoints. */
@media(max-width:1250px){body.attractions-page .atx #bishops-palace.br-reference .br__lead{line-height:1.3}}
@media(max-width:540px){body.attractions-page .atx #bishops-palace.br-reference .br__lead{line-height:1.35}}
