/* 1.1: Scoped presentation refinements. Existing page-builder content is retained. */
.nsbp-site .button{border-radius:7px}
.nsbp-site .header-inner{min-height:88px}
.nsbp-site .site-navigation a{font-size:14px}
.nsbp-site .hero{border-bottom:1px solid #ffffff12}
.hero-visit{position:absolute;right:0;bottom:96px;display:flex;align-items:center;gap:16px;max-width:340px;padding:20px 22px;background:#0c1218e8;border:1px solid #ffffff28;border-left:3px solid var(--yellow);border-radius:9px;box-shadow:0 14px 45px #0003}
.hero-visit>.icon{color:var(--yellow);width:22px;height:22px}
.hero-visit small{display:block;color:var(--muted);font-size:9px;letter-spacing:.16em;margin-bottom:5px}
.hero-visit strong{display:block;color:var(--text);font-size:13px;font-weight:500;line-height:1.6}
.hero-visit:hover{border-color:var(--yellow)}
.nsbp-site .service-grid{gap:24px}
.nsbp-site .service-card{border-radius:14px;padding:32px;background:linear-gradient(145deg,#25333f,var(--surface) 60%);box-shadow:0 12px 32px #00000012}
.nsbp-site .service-card-top{margin-bottom:32px}
.nsbp-site .service-card-top>.icon{width:52px;height:52px;padding:10px;border:1px solid #ffd40045;border-radius:12px;background:#ffd40008}
.nsbp-site .service-card>p{font-size:15px;line-height:1.75}
.nsbp-site .service-card ul{font-size:13px;line-height:1.75}
.nsbp-site .service-card>.text-link{padding-top:20px;font-size:14px}
.nsbp-site .trust-grid{gap:20px}
.nsbp-site .trust-card{border:1px solid #2d3a45;border-radius:12px;overflow:visible;background:#111a23}
.nsbp-site .trust-card-link{border-radius:12px;padding:26px}
.nsbp-site .trust-card:hover,.nsbp-site .trust-card:focus-within{border-color:#ffd40088}
.nsbp-site .trust-grid p{font-size:14px}
.nsbp-site .gallery-grid{grid-template-columns:1.25fr 1fr;gap:24px}
.nsbp-site .gallery-grid figure{min-height:410px;border-radius:13px;border:1px solid var(--line)}
.nsbp-gallery-link{display:block;position:absolute;inset:0}
.nsbp-gallery-link:focus-visible{outline-offset:-5px;z-index:2}
.gallery-grid figcaption{pointer-events:none}
.nsbp-site .gallery-grid figcaption{padding:64px 26px 24px}
.gallery-grid figcaption>span:last-child{color:var(--yellow);font-size:11px;white-space:nowrap}
.gallery-zoom{position:absolute;right:20px;top:20px;display:grid;place-items:center;width:44px;height:44px;color:var(--text);background:#111820c9;border:1px solid #ffffff55;border-radius:50%;transition:background .2s}
.nsbp-gallery-link:hover .gallery-zoom{color:var(--bg);background:var(--yellow);border-color:var(--yellow)}
.nsbp-faq{background:var(--deep);border-block:1px solid #ffffff0b}
.nsbp-faq-layout{display:grid;grid-template-columns:.9fr 1.15fr;gap:90px;align-items:start}
.nsbp-faq-intro h2{max-width:430px}.nsbp-faq-intro p:not(.eyebrow){font-size:15px;max-width:400px}
.nsbp-faq-list details{border-top:1px solid var(--line)}.nsbp-faq-list details:last-child{border-bottom:1px solid var(--line)}
.nsbp-faq-list summary{display:flex;align-items:center;justify-content:space-between;gap:24px;list-style:none;cursor:pointer;padding:25px 0;color:var(--text);font-size:16px;font-weight:700;line-height:1.5}
.nsbp-faq-list summary::-webkit-details-marker{display:none}.nsbp-faq-list summary::marker{content:''}
.nsbp-faq-list summary:hover{color:var(--yellow)}
.nsbp-faq-list summary:focus-visible{outline:3px solid var(--yellow);outline-offset:4px}
.nsbp-faq-plus{position:relative;display:block;flex-shrink:0;width:24px;height:24px;border:1px solid #627280;border-radius:50%}
.nsbp-faq-plus:before,.nsbp-faq-plus:after{content:'';position:absolute;background:var(--yellow);left:6px;top:10px;width:10px;height:1px}
.nsbp-faq-plus:after{transform:rotate(90deg)}.nsbp-faq-list details[open] .nsbp-faq-plus:after{display:none}
.nsbp-faq-list details[open] summary{color:var(--yellow)}
.nsbp-faq-answer{padding:0 36px 22px 0;font-size:14px;line-height:1.85}
.nsbp-faq-answer p{margin:0}.nsbp-faq-answer .text-link{margin-top:12px}
.nsbp-visit-panel{display:grid;grid-template-columns:.95fr 1.15fr;min-height:510px;background:var(--surface);border:1px solid #374755;border-radius:16px;overflow:hidden}
.nsbp-visit-photo{position:relative;min-height:350px}
.nsbp-visit-photo>img{width:100%;height:100%;position:absolute;inset:0;object-fit:cover;object-position:58% center;filter:saturate(.7)}
.nsbp-visit-photo:after{content:'';position:absolute;inset:50% 0 0;background:linear-gradient(transparent,#111820ae);pointer-events:none}
.nsbp-location-tag{position:absolute;z-index:1;bottom:24px;left:24px;display:flex;align-items:center;gap:10px;border:1px solid #ffffff55;background:#111820bd;padding:12px 16px;border-radius:5px;color:white;font-size:10px;letter-spacing:.15em}
.nsbp-location-tag .icon{color:var(--yellow);width:17px;height:17px}
.nsbp-visit-content{padding:44px}.nsbp-visit-content h2{font-size:clamp(30px,3vw,42px)}.nsbp-visit-content>p:not(.eyebrow){font-size:15px}
.nsbp-visit-details{display:grid;grid-template-columns:1fr 1fr;gap:24px;margin:28px 0;padding-block:24px;border-block:1px solid #40505f}
.nsbp-detail-label{display:block;font-size:9px;letter-spacing:.13em;color:#bac7d1;margin-bottom:10px;font-weight:700}
.nsbp-visit-details address{font-style:normal;font-size:14px;line-height:1.8;color:var(--text)}
.nsbp-visit-details p{font-size:13px;line-height:1.9;margin:0;color:var(--text)}
.nsbp-copy-address{display:block;border:0;background:none;padding:10px 0;min-height:44px;text-decoration:underline;text-underline-offset:4px;font-size:12px;color:var(--yellow)}
.nsbp-copy-status{display:block;font-size:12px;line-height:1.7;color:var(--text)}
.nsbp-visit-actions{display:flex;flex-wrap:wrap;align-items:center;gap:12px 24px}.nsbp-visit-actions .button{gap:16px;font-size:13px}.nsbp-visit-actions .text-link{gap:10px;font-size:13px}
.nsbp-lightbox-open{overflow:hidden}
.nsbp-lightbox{padding:20px;border:1px solid #465361;border-radius:12px;background:#111820;color:var(--text);width:min(1100px,calc(100vw - 36px));max-width:1100px;max-height:calc(100dvh - 36px);overflow:auto;box-shadow:0 30px 120px #0008}
.nsbp-lightbox::backdrop{background:#05090deb;backdrop-filter:blur(6px)}
.nsbp-lightbox-toolbar,.nsbp-lightbox-controls{display:flex;align-items:center;justify-content:space-between;gap:20px}
.nsbp-lightbox button{background:transparent;color:var(--text);border:1px solid #596975;padding:10px 16px;border-radius:5px;min-height:44px;font-size:13px}
.nsbp-lightbox button:hover{border-color:var(--yellow);color:var(--yellow)}.nsbp-lightbox-count{color:var(--yellow);font-size:13px}
.nsbp-lightbox figure{margin:20px 0 16px}.nsbp-lightbox img{width:100%;max-height:65dvh;object-fit:contain}.nsbp-lightbox figcaption{padding-top:16px;color:var(--muted);font-size:13px}
@media(max-width:1200px){.hero-visit{max-width:290px;padding:16px;bottom:88px}.hero-visit strong{font-size:12px}.nsbp-site .service-card{padding:25px}.nsbp-faq-layout{gap:45px}.nsbp-visit-content{padding:32px}.nsbp-visit-details{grid-template-columns:1fr;gap:18px}}
@media(max-width:959px){.hero-visit{display:none}.nsbp-site .header-inner{min-height:80px}.nsbp-site .service-card{padding:22px 18px}.nsbp-site .service-card>p{font-size:14px}.nsbp-site .service-card ul{font-size:12px}.nsbp-site .gallery-grid figure{min-height:340px}.nsbp-faq-layout{grid-template-columns:1fr;gap:28px}.nsbp-faq-intro h2,.nsbp-faq-intro p:not(.eyebrow){max-width:620px}.nsbp-visit-panel{grid-template-columns:.8fr 1fr}.nsbp-visit-content{padding:26px}.nsbp-visit-content .eyebrow{font-size:9px}.nsbp-site .trust-card-link{padding:24px}}
@media(max-width:767px){.nsbp-site .header-inner{min-height:76px}.nsbp-site .service-grid{gap:18px}.nsbp-site .service-card{padding:26px}.nsbp-site .service-card ul{font-size:13px}.nsbp-site .trust-grid{gap:14px}.nsbp-site .trust-card-link{padding:20px 16px}.nsbp-site .trust-grid p{font-size:12px}.nsbp-site .trust-grid h3{font-size:16px}.nsbp-site .trust-action{font-size:11px;gap:7px}.nsbp-site .gallery-grid{grid-template-columns:1fr;gap:18px}.nsbp-site .gallery-grid figure{min-height:300px}.nsbp-site .gallery-grid .gallery-secondary{min-height:250px}.nsbp-site .gallery-grid figcaption{padding:55px 20px 20px}.nsbp-faq-list summary{font-size:15px;padding-block:22px}.nsbp-faq-answer{padding-right:12px}.nsbp-visit-panel{grid-template-columns:1fr}.nsbp-visit-photo{min-height:240px}.nsbp-visit-photo>img{object-position:center}.nsbp-visit-content{padding:27px 24px}.nsbp-visit-content h2{font-size:33px}.nsbp-visit-details{grid-template-columns:1fr;gap:20px;margin-block:24px}.nsbp-visit-actions{display:block}.nsbp-visit-actions>.button{width:100%;justify-content:space-between;font-size:12px;padding-inline:16px}.nsbp-visit-actions>.text-link{margin-top:14px}.nsbp-lightbox{padding:14px;width:calc(100vw - 24px);max-height:calc(100dvh - 24px)}.nsbp-lightbox img{max-height:58dvh}}
@media(prefers-reduced-motion:reduce){.gallery-zoom{transition:none}}
@media print{.nsbp-lightbox,.nsbp-copy-address,.hero-visit{display:none!important}.nsbp-visit-panel{background:white;color:black;border:1px solid #ccc}.nsbp-faq{background:white}.nsbp-visit-details p,.nsbp-visit-details address{color:black}}
