/* Shared header for every page, project, and language. */
.bsr-site .bsp-header,.bsr-site > header.header{display:none!important}
.bsr-header{position:sticky;top:0;z-index:100;background:#151d20;color:#fff;box-shadow:0 4px 18px #0002;font-family:Manrope,Arial,sans-serif}
.admin-bar .bsr-header{top:32px}
.bsr-header-inner{max-width:1180px;min-height:82px;margin:auto;padding:12px 20px;display:grid;grid-template-columns:auto minmax(0,1fr) 155px;align-items:center;gap:24px;direction:ltr;box-sizing:border-box}
.bsr-brand{display:block;width:150px;max-width:100%;overflow:hidden;direction:ltr!important;line-height:0;text-decoration:none;grid-column:3;grid-row:1;justify-self:end}
.bsr-brand img{display:block;width:220px!important;max-width:none!important;height:auto!important;direction:ltr}
.bsr-menu-toggle{display:none}
.bsr-languages{position:relative;grid-column:1;grid-row:1}
.bsr-language-toggle{display:flex;align-items:center;gap:7px;min-height:44px;padding:9px 12px;border:1px solid #eec12e;border-radius:8px;background:transparent;color:#f0c433;font:700 14px/1.1 Manrope,Arial,sans-serif;cursor:pointer}
.bsr-language-toggle svg{width:18px;height:18px}
#bsr-language-options{position:absolute;left:0;top:calc(100% + 8px);z-index:110;background:#151d20;border:1px solid #596365;border-radius:9px;padding:6px;min-width:140px;box-shadow:0 12px 25px #0004}
#bsr-language-options[hidden]{display:none}
#bsr-language-options a{display:block;color:#fff;padding:12px;border-radius:5px;text-decoration:none;font-size:14px}
#bsr-language-options a:hover,#bsr-language-options a[aria-current]{background:#f0c433;color:#151d20}
#bsr-navigation{display:flex;gap:18px;align-items:center;justify-content:center;grid-column:2;grid-row:1}
#bsr-navigation a{color:#e7eaeb;text-decoration:none;white-space:nowrap;font-size:14px;font-weight:700;line-height:1.3;padding-block:10px}
html[dir=rtl] #bsr-navigation{direction:rtl}
#bsr-navigation .bsr-nav-wa{background:#f0c433;color:#151d20;border-radius:6px;padding:11px 13px}
#bsr-navigation a:hover{color:#f0c433}#bsr-navigation .bsr-nav-wa:hover{background:#ffe079;color:#151d20}
.bsr-header :focus-visible,.bsr-photo-filters :focus-visible,.bsr-privacy :focus-visible{outline:3px solid #e9b825;outline-offset:4px}
@media(max-width:1000px){
 .bsr-header-inner{grid-template-columns:46px auto minmax(0,1fr);gap:9px;min-height:82px;padding:12px 16px}
 .bsr-brand{width:110px;grid-column:3}.bsr-brand img{width:160px!important}
 .bsr-menu-toggle{display:grid;place-items:center;grid-column:1;grid-row:1;width:46px;height:46px;padding:10px;border:1px solid #536063;border-radius:8px;background:transparent;color:#fff;cursor:pointer}
 .bsr-menu-toggle svg{width:24px;height:24px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round}
 .bsr-languages{grid-column:2}.bsr-language-toggle{padding:10px 8px;min-height:46px;gap:5px}
 #bsr-navigation{display:none;grid-column:1/-1;grid-row:2;padding-top:12px;border-top:1px solid #39434a;gap:8px;grid-template-columns:repeat(2,minmax(0,1fr))}
 .bsr-header.is-open #bsr-navigation{display:grid}
 #bsr-navigation a{display:flex;align-items:center;justify-content:center;text-align:center;white-space:normal;overflow-wrap:anywhere;min-height:44px;padding:8px;font-size:15px;box-sizing:border-box}
}
@media(max-width:782px){.admin-bar .bsr-header{top:46px}}
@media(max-width:600px){.admin-bar .bsr-header{top:0}}
@media(max-width:340px){.bsr-brand{width:93px}.bsr-brand img{width:136px!important}.bsr-header-inner{padding-inline:12px;gap:7px}}
/* A compact notice with clear hierarchy and an independent close corner. */
.bsr-site .cookie-note.bsr-privacy{position:fixed;z-index:120;box-sizing:border-box;width:410px;max-width:calc(100vw - 28px);max-height:calc(100dvh - 110px);overflow:auto;inset:auto 14px 82px auto;margin:0;padding:22px 24px 20px;border:1px solid #dfe3df;border-top:4px solid #efc12f;border-radius:15px;background:#fff;color:#152024;text-align:center;box-shadow:0 18px 60px #0003;display:none;font-family:Manrope,Arial,sans-serif}
.bsr-site .bsr-privacy.is-visible{display:block}
.bsr-privacy .bsr-privacy-icon{display:inline-flex;align-items:center;justify-content:center;width:42px;height:42px;color:#9b7410;background:#fff6d7;border-radius:50%;margin-bottom:8px}
.bsr-privacy-icon svg{width:25px;height:25px}
.bsr-site .bsr-privacy h2{margin:0 15px 10px;font-size:21px;font-weight:800;line-height:1.25;color:#152024;overflow-wrap:normal}
.bsr-site .bsr-privacy p{margin:0;font-size:14px;line-height:1.65;color:#536166;text-wrap:pretty}
.bsr-privacy a{color:#354b50;font-weight:700;text-decoration:underline;text-underline-offset:3px}
.bsr-site .bsr-privacy .cookie-x{position:absolute;top:7px;inset-inline-end:7px;inset-inline-start:auto;width:38px;height:38px;display:grid;place-items:center;padding:0;margin:0;background:transparent;border:0;border-radius:50%;color:#59676c;font-size:29px;line-height:1;cursor:pointer}
.bsr-privacy-actions{display:flex;justify-content:center;margin-top:16px}
.bsr-site .bsr-privacy .cookie-close{min-height:44px;padding:11px 24px;border:0;border-radius:7px;background:#152024;color:white;font-size:14px;font-weight:700;cursor:pointer}
@media(max-width:540px){.bsr-site .cookie-note.bsr-privacy{padding:20px 18px 18px;right:14px;bottom:76px}.bsr-site .bsr-privacy h2{font-size:19px}.bsr-site .bsr-privacy p{font-size:13px;line-height:1.55}}
/* All four tools remain visible behind the portrait. */
.bsp-tools .bsp-tool.t3{display:grid!important}
@media(max-width:767px){.bsp-tools .bsp-tool.t3{left:0!important;bottom:13%!important}.bsp-tools .bsp-tool.t4{right:0!important;bottom:12%!important}}
/* Three concise trust points, with animated line icons. */
.bsr-site .elementor .bs-el-trust > .e-con-inner{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:18px!important;align-items:stretch!important;padding:22px 0!important;max-width:1180px}
.bsr-site .elementor .bs-el-trust .elementor-widget-heading{width:auto!important;min-width:0;max-width:100%;margin:0!important}
.bsr-site .elementor .bs-el-trust h3{display:flex;flex-direction:column;align-items:center;justify-content:flex-start;gap:10px;text-align:center;font-size:20px!important;line-height:1.4!important;margin:0!important;font-weight:800}
.bsr-feature-icon{display:grid;place-items:center;width:48px;height:48px;border:1px solid #151d2033;border-radius:14px;color:#152024;background:#ffffff28;flex:none}
.bsr-feature-icon svg{width:30px;height:30px}
.bsr-site .elementor .bsp-advantage-card .bsr-benefit-icon{display:grid;place-items:center;width:58px;height:58px;padding:12px;margin:0 0 18px;background:#fff4cb;border-radius:16px;color:#a57b0a;box-sizing:border-box}
.bsr-benefit-icon svg{width:34px;height:34px}
.bsr-feature-icon svg,.bsr-benefit-icon svg{animation:bsrIconFloat 4.5s ease-in-out infinite}
.bsp-advantage-card:nth-child(2n) .bsr-benefit-icon svg{animation-delay:-1.5s}
@keyframes bsrIconFloat{0%,100%{transform:translateY(1px) rotate(-2deg)}50%{transform:translateY(-3px) rotate(2deg)}}
.bsr-reveal{opacity:0;transform:translateY(18px);transition:opacity .65s ease var(--bsr-delay,0ms),transform .65s ease var(--bsr-delay,0ms)}
.bsr-reveal.bsr-visible{opacity:1;transform:none}
.bsr-site .project-card .project-photo img{transition:transform .5s ease}.bsr-site .project-card:hover .project-photo img{transform:scale(1.035)}
@media(max-width:540px){.bsr-site .elementor .bs-el-trust > .e-con-inner{gap:8px!important;padding:20px 0!important}.bsr-site .elementor .bs-el-trust h3{font-size:13px!important;line-height:1.35!important;gap:8px}.bsr-feature-icon{width:40px;height:40px;border-radius:11px}.bsr-feature-icon svg{width:25px;height:25px}.bsr-site .elementor .bsp-advantage-card .bsr-benefit-icon{width:50px;height:50px;padding:10px}}
@media(prefers-reduced-motion:reduce){.bsr-feature-icon svg,.bsr-benefit-icon svg{animation:none!important}.bsr-reveal{opacity:1!important;transform:none!important;transition:none!important}.bsr-site .project-card img{transition:none!important}}
/* One filtered photo viewer. No duplicate full gallery below it. */
.bsr-page-main{max-width:1180px;padding:42px 24px 70px;margin:0 auto;box-sizing:border-box;min-height:50vh}
.bsr-project-heading{margin:24px 0}.bsr-project-heading h1{font-size:clamp(29px,4vw,48px);line-height:1.15;margin:8px 0;overflow-wrap:anywhere}.bsr-project-heading p{color:#8a6b18;font-weight:700}
.bsr-project-back{display:inline-block;color:#526366;font-weight:700}.bsr-project-description{font-size:18px;line-height:1.8;margin:24px 0}
.bsr-photo-filters{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;padding:14px 18px;background:#fff;direction:inherit}
.bsr-photo-filters button{display:flex;align-items:center;justify-content:center;border:1px solid #d8ddda;border-radius:8px;background:#f4f6f3;color:#263438;min-height:44px;padding:10px 8px;font-family:inherit;font-size:14px;line-height:1.3;font-weight:700;cursor:pointer;white-space:normal}
.bsr-photo-filters button[aria-pressed=true]{background:#f0c433;border-color:#c79c1b;color:#151d20}.bsr-photo-filters button:disabled{opacity:.45;cursor:default}
.bsp-gallery-dialog .bsp-gallery-top{position:relative;padding:18px 64px 18px 24px;min-height:64px;box-sizing:border-box}
html[dir=rtl] .bsp-gallery-dialog .bsp-gallery-top{padding:18px 24px 18px 64px}
.bsp-gallery-dialog .bsp-gallery-top h2{font-size:19px;line-height:1.35;margin:0;width:100%;text-align:start}
.bsp-gallery-dialog .bsp-gallery-close{position:absolute;top:10px;inset-inline-end:12px;inset-inline-start:auto;width:44px;height:44px;display:grid;place-items:center;padding:0;border:0;border-radius:50%;font-size:28px;line-height:1;cursor:pointer}
.bsp-gallery-dialog .bsp-gallery-body{max-height:calc(92dvh - 152px);grid-template-columns:minmax(0,1fr) minmax(255px,300px)}
.bsp-gallery-dialog .bsp-gallery-stage{height:100%;min-height:280px;max-height:calc(92dvh - 152px)}
.bsp-gallery-sidebar .bsp-gallery-count{margin:14px 0 0;font-size:14px;font-weight:700}
.bsp-gallery-thumbnails button{min-width:0}.bsp-gallery-thumb[aria-pressed=true]{border-color:#d5a51d;box-shadow:0 0 0 1px #d5a51d}
.bsp-gallery-control{z-index:3;min-width:44px;min-height:44px;cursor:pointer}.bsp-gallery-control svg{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:2}
.bsp-gallery-stage{touch-action:pan-y}.bsp-gallery-stage [hidden]{display:none!important}
.bsp-gallery-project-videos button{min-height:44px;border:1px solid #d8ddda;border-radius:7px;padding:10px;background:#fff5d3;color:#152024;font-weight:700;cursor:pointer}
.bsr-project-viewer{border:1px solid #dfe3df;border-radius:16px;background:white;overflow:hidden}
.bsr-project-viewer .bsp-gallery-shell{display:block;max-height:none;width:100%}
.bsr-project-viewer .bsp-gallery-top{padding:16px 22px 0}.bsr-project-viewer .bsp-gallery-top h2{font-size:20px;margin:0}
.bsr-project-viewer .bsp-gallery-body{display:block;max-height:none}
.bsr-project-viewer .bsp-gallery-stage{position:relative;height:min(66vh,660px);min-height:280px;background:#192326;display:grid;place-items:center;overflow:hidden}
.bsr-project-viewer .bsp-gallery-image{width:100%;height:100%;max-height:100%;object-fit:contain}
.bsr-project-viewer .bsp-gallery-sidebar{max-height:none;overflow:visible;padding:18px}
.bsr-project-viewer .bsp-gallery-thumbnails{grid-template-columns:repeat(6,minmax(0,1fr));gap:10px}
.bsr-project-viewer .bsp-gallery-thumb img{width:100%;height:110px;object-fit:cover}
.bsr-footer{background:#0c1418;color:#d2d9da;padding:50px 24px 28px}.bsr-footer-inner{max-width:1180px;margin:auto}.bsr-footer .bsr-brand{width:180px}.bsr-footer .bsr-brand img{width:260px!important}.bsr-footer p{font-size:15px;line-height:1.7}.bsr-footer nav{display:flex;flex-wrap:wrap;gap:12px 24px;margin:22px 0}.bsr-footer a{color:inherit}.bsr-footer a:hover{color:#f0c433}
@media(max-width:760px){.bsp-gallery-dialog .bsp-gallery-body{display:block;overflow:auto;max-height:calc(92dvh - 160px)}.bsp-gallery-dialog .bsp-gallery-stage{height:40dvh;min-height:210px;max-height:420px}.bsp-gallery-dialog .bsp-gallery-sidebar{max-height:none;overflow:visible}.bsr-project-viewer .bsp-gallery-thumbnails{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:540px){.bsr-page-main{padding:25px 16px 45px}.bsr-photo-filters{gap:5px;padding:10px}.bsr-photo-filters button{padding:8px 3px;font-size:12px;min-height:46px}.bsp-gallery-dialog .bsp-gallery-top h2{font-size:16px}.bsp-gallery-dialog .bsp-gallery-top{padding-top:14px;padding-bottom:14px}.bsr-project-viewer .bsp-gallery-thumbnails{grid-template-columns:repeat(2,minmax(0,1fr))}.bsr-project-viewer .bsp-gallery-thumb img{height:125px}.bsr-project-viewer .bsp-gallery-stage{height:50vh;min-height:240px}.bsr-project-viewer .bsp-gallery-sidebar{padding:12px}.bsr-project-description{font-size:16px}.bsp-gallery-dialog .bsp-gallery-thumbnails{grid-template-columns:repeat(4,minmax(0,1fr))}}

.bsr-project-viewer .bsp-gallery-stage > img.bsp-gallery-image{position:absolute;inset:0;width:100%!important;height:100%!important;min-height:0!important;max-height:100%!important;max-width:100%!important;object-fit:contain!important;object-position:center}

/* Keep title, close control and filters fixed while the filmstrip scrolls. */
.bsp-gallery-dialog{height:min(860px,92dvh);max-height:92dvh;overflow:hidden}
.bsp-gallery-dialog .bsp-gallery-shell{display:grid;grid-template-rows:auto auto minmax(0,1fr);height:100%;max-height:100%;overflow:hidden}
.bsp-gallery-dialog .bsp-gallery-top h2{white-space:normal;overflow:visible;text-overflow:clip}
.bsp-gallery-dialog .bsp-gallery-body{height:100%;min-height:0;max-height:none;overflow:hidden}
.bsp-gallery-dialog .bsp-gallery-stage{height:100%;min-height:0;max-height:100%}
.bsp-gallery-dialog .bsp-gallery-sidebar{height:100%;min-height:0;max-height:100%;overflow:auto}
@media(max-width:760px){
 .bsp-gallery-dialog .bsp-gallery-body{display:block;overflow:auto}
 .bsp-gallery-dialog .bsp-gallery-stage{height:min(42dvh,340px);min-height:190px;max-height:none}
 .bsp-gallery-dialog .bsp-gallery-sidebar{height:auto;max-height:none;overflow:visible}
}
