:root{--p:#c9a05c;--dark:#1a1410;--light:#f5efe8;--a:#ffffff;--ink:#151515;--muted:#67707b;--line:rgba(15,20,30,.12);--radius:28px}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--light);color:var(--ink);font-family:'DM Sans',sans-serif;overflow-x:hidden}h1,h2,h3,p{margin-top:0}h1,h2{font-family:'Space Grotesk',sans-serif;letter-spacing:-.055em}h1{font-size:clamp(3.4rem,8vw,8rem);line-height:.88}h2{font-size:clamp(2.5rem,5vw,5rem);line-height:.95}p{line-height:1.75}.site-header{position:absolute;z-index:20;top:0;left:0;right:0;display:flex;align-items:center;justify-content:space-between;padding:24px clamp(20px,5vw,72px);color:#fff}.nav-floating{position:fixed;top:18px;left:3%;right:3%;border-radius:18px;background:rgba(17,20,26,.78);backdrop-filter:blur(18px)}.nav-solid{position:relative;background:var(--dark)}.brand{display:flex;align-items:center;gap:11px;font-weight:800;color:inherit;text-decoration:none}.brand i{display:grid;place-items:center;width:42px;height:42px;border-radius:13px;background:var(--p);font-style:normal}.site-header nav{display:flex;gap:28px}.site-header nav a{color:inherit;text-decoration:none;font-weight:600}.nav-cta,.btn{display:inline-flex;align-items:center;justify-content:center;border-radius:999px;padding:14px 22px;text-decoration:none;font-weight:800;border:1px solid transparent}.nav-cta{background:#fff;color:var(--dark)}.menu-toggle{display:none}.hero{min-height:92vh}.hero-fullscreen{position:relative;display:flex;align-items:flex-end;padding:160px clamp(20px,7vw,110px) 90px;color:#fff;background:var(--dark) var(--hero) center/cover no-repeat}.hero-overlay{position:absolute;inset:0;background:linear-gradient(90deg,rgba(8,10,14,.88),rgba(8,10,14,.14)),linear-gradient(0deg,rgba(8,10,14,.55),transparent)}.hero-copy{position:relative;z-index:2;max-width:880px}.hero-copy>p{font-size:clamp(1rem,1.8vw,1.3rem);max-width:680px}.hero-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:30px}.btn.primary{background:var(--p);color:#fff}.btn.ghost{border-color:rgba(255,255,255,.5);color:inherit}.scroll-cue{position:absolute;right:5vw;bottom:50px;z-index:2}.hero-split{display:grid;grid-template-columns:1.05fr .95fr;background:var(--dark);color:#fff}.hero-split .hero-copy{padding:170px clamp(25px,6vw,100px) 90px}.hero-media{position:relative;min-height:760px}.hero-media img{width:100%;height:100%;object-fit:cover}.hero-media aside{position:absolute;left:30px;bottom:30px;padding:20px 24px;border-radius:20px;background:rgba(255,255,255,.92);color:var(--ink);display:flex;flex-direction:column}.hero-media aside b{font-size:30px}.hero-collage{display:grid;grid-template-columns:1fr 1fr;gap:5vw;padding:160px 6vw 80px;background:var(--dark);color:#fff}.collage{position:relative;min-height:650px}.collage img{position:absolute;object-fit:cover;border-radius:26px;box-shadow:0 30px 70px rgba(0,0,0,.35)}.collage .c1{width:70%;height:70%;right:0}.collage .c2{width:48%;height:45%;left:0;bottom:0}.collage .c3{width:38%;height:35%;right:4%;bottom:0}.hero-minimal{display:grid;grid-template-columns:1.2fr .8fr;align-items:end;gap:7vw;padding:180px 6vw 90px;background:var(--light)}.hero-minimal .btn.ghost{color:var(--ink);border-color:var(--line)}.eyebrow{text-transform:uppercase;letter-spacing:.2em;font-size:12px;font-weight:800;color:var(--p)}.trust-row{display:flex;gap:18px;flex-wrap:wrap;margin-top:35px;font-size:13px}.section{padding:110px clamp(20px,7vw,110px)}.section-head{display:flex;justify-content:space-between;gap:40px;align-items:end;margin-bottom:55px}.section-head>p{max-width:430px}.about{display:grid;grid-template-columns:80px 1fr .8fr;gap:5vw;align-items:center}.section-number{font-size:14px;color:var(--muted)}.about-copy>p{font-size:18px;max-width:760px}.about figure{margin:0}.about figure img{width:100%;aspect-ratio:4/5;object-fit:cover;border-radius:var(--radius)}.about figcaption{margin-top:10px;color:var(--muted)}.chips{display:flex;gap:8px;flex-wrap:wrap;margin-top:28px}.chips span{padding:9px 14px;border:1px solid var(--line);border-radius:999px;font-size:13px}.service-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}.service-card{padding:30px;border-radius:22px;background:#fff;border:1px solid var(--line);transition:.3s}.service-card:hover{transform:translateY(-8px);box-shadow:0 25px 60px rgba(20,25,35,.1)}.service-card>span{color:var(--p);font-weight:800}.service-card a{color:var(--p);font-weight:800;text-decoration:none}.variant-editorial .service-card:nth-child(1){grid-column:span 2}.variant-industrial .service-card{border-radius:3px}.gallery{background:#fff}.gallery>p{max-width:640px}.gallery-masonry{columns:3;column-gap:14px}.gallery-masonry .gallery-item{break-inside:avoid;margin-bottom:14px}.gallery-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.gallery-filmstrip{display:grid;grid-auto-flow:column;grid-auto-columns:38%;gap:14px;overflow:auto;padding-bottom:12px}.gallery-item{position:relative;border:0;padding:0;background:none;overflow:hidden;border-radius:20px;cursor:pointer;width:100%}.gallery-item img{display:block;width:100%;height:360px;object-fit:cover;transition:.5s}.gallery-masonry .gallery-item:nth-child(3n+1) img{height:520px}.gallery-item:hover img{transform:scale(1.04)}.gallery-item>.gallery-view-label{position:absolute;left:18px;bottom:18px;padding:10px 14px;border-radius:999px;background:rgba(10,12,16,.72);color:#fff;opacity:0;transition:.3s}.gallery-item:hover>.gallery-view-label{opacity:1}.image-carousel{display:grid;grid-auto-flow:column;grid-auto-columns:68%;gap:18px;overflow:auto;scroll-snap-type:x mandatory}.image-carousel .gallery-item{scroll-snap-align:center}.image-carousel img{height:560px}.carousel-controls button{width:48px;height:48px;border-radius:50%;border:1px solid var(--line);background:#fff}.stats-band{display:grid;grid-template-columns:repeat(3,1fr);background:var(--dark);color:#fff;padding:60px 7vw}.stats-band div{display:flex;flex-direction:column;border-right:1px solid rgba(255,255,255,.15);padding:0 30px}.stats-band strong{font-size:clamp(2.2rem,5vw,5rem);font-family:'Space Grotesk'}.stats-band span{color:rgba(255,255,255,.65)}.testimonials{display:grid;grid-template-columns:.75fr 1.25fr;gap:7vw;background:var(--a)}.quote-stack{display:grid;gap:14px}.quote-stack blockquote{margin:0;padding:30px;border-radius:22px;background:rgba(255,255,255,.78)}.quote-stack blockquote>span{font-size:50px;color:var(--p)}.map-section{display:grid;grid-template-columns:.75fr 1.25fr;min-height:600px}.map-card{padding:90px 7vw;background:var(--dark);color:#fff}.map-section iframe{width:100%;height:100%;border:0;filter:saturate(.8) contrast(1.05)}.hours{font-size:13px;color:rgba(255,255,255,.7)}.faq{display:grid;grid-template-columns:.7fr 1.3fr;gap:7vw}.accordion details{border-top:1px solid var(--line);padding:22px 0}.accordion summary{display:flex;justify-content:space-between;cursor:pointer;font-size:19px;font-weight:800;list-style:none}.cta{display:flex;justify-content:space-between;align-items:end;gap:40px;padding:90px 7vw;background:var(--p);color:#fff}.cta h2{max-width:800px}.btn.light{background:#fff;color:var(--dark)}.btn.outline{border-color:rgba(255,255,255,.5);color:#fff}.site-footer{display:grid;grid-template-columns:1fr 1fr 1fr;gap:30px;padding:50px 6vw;background:#0b0e14;color:rgba(255,255,255,.65)}.lightbox{position:fixed;z-index:100;inset:0;display:none;place-items:center;background:rgba(0,0,0,.9);padding:4vw}.lightbox.open{display:grid}.lightbox img{max-width:92vw;max-height:86vh}.lightbox button{position:absolute;right:25px;top:20px;background:none;border:0;color:#fff;font-size:42px}.social-links{display:flex;flex-wrap:wrap;gap:10px;margin:22px 0}.social-link{display:inline-flex;align-items:center;gap:9px;padding:10px 14px;border:1px solid currentColor;border-radius:999px;color:inherit;text-decoration:none;font-size:13px}.social-link span{display:grid;place-items:center;min-width:20px;font-weight:900}.social-links.compact .social-link{width:38px;height:38px;padding:0;justify-content:center;border-color:rgba(255,255,255,.22)}.social-links.compact{margin:18px 0 0}.sticky-call{position:fixed;z-index:40;right:20px;bottom:20px;padding:14px 20px;border-radius:999px;background:var(--p);color:#fff;text-decoration:none;font-weight:800;box-shadow:0 15px 40px rgba(0,0,0,.25)}.reveal{opacity:0;transform:translateY(22px);transition:.7s}.reveal.visible{opacity:1;transform:none}.page-hero{min-height:70vh;padding:180px 7vw 80px;background:var(--dark);color:#fff}.gallery-placeholder{display:grid;place-items:center;min-height:300px;border:1px dashed var(--line);border-radius:24px}.site-header.nav-centered{justify-content:center;flex-wrap:wrap}.site-header.nav-centered .brand{width:100%;justify-content:center}.site-header.nav-split nav{order:-1}.site-header.nav-minimal{background:rgba(255,255,255,.94);color:var(--ink);padding-top:14px;padding-bottom:14px}.site-header.nav-utility{border-top:5px solid var(--p)}.site-header.nav-overlay{mix-blend-mode:difference}.site-header.nav-boxed{left:4vw;right:4vw;top:18px;border-radius:20px}.site-header.nav-rail{left:24px;right:auto;top:24px;bottom:24px;width:92px;flex-direction:column;border-radius:24px}.site-header.nav-rail nav{flex-direction:column}.site-header.nav-statement .brand span{font-family:'Playfair Display';font-size:1.35rem}.site-header.nav-commerce{background:#fff;color:var(--ink);box-shadow:0 12px 40px rgba(0,0,0,.08)}
.hero-spotlight{display:grid;place-items:center;text-align:center;padding:170px 7vw 90px;background:radial-gradient(circle at 50% 35%,var(--a),var(--light) 55%)}.hero-diagonal{display:grid;grid-template-columns:1fr 1fr;clip-path:polygon(0 0,100% 0,100% 90%,0 100%);background:var(--dark);color:#fff}.hero-magazine{display:grid;grid-template-columns:.7fr 1.3fr;padding:150px 6vw 70px;gap:4vw;background:var(--light)}.hero-floating{padding:150px 6vw 70px;background:var(--a)}.hero-floating .hero-copy{padding:55px;background:#fff;border-radius:30px;box-shadow:0 30px 80px rgba(0,0,0,.12)}.hero-panorama{min-height:100vh;display:flex;align-items:center;padding:150px 7vw;background:var(--dark);color:#fff}.hero-product{display:grid;grid-template-columns:1fr 1fr;align-items:center;padding:150px 7vw 80px;background:#fff}.hero-mosaic,.hero-architectural{display:grid;grid-template-columns:1fr 1fr;gap:2vw;padding:150px 5vw 70px;background:var(--light)}
.services-list{grid-template-columns:1fr}.services-list .service-card{display:grid;grid-template-columns:80px 1fr auto;align-items:center}.services-bento .service-card:nth-child(1),.services-bento .service-card:nth-child(4){grid-column:span 2}.services-rail{display:grid;grid-auto-flow:column;grid-auto-columns:minmax(290px,34%);overflow:auto}.services-matrix .service-card{text-align:center}.services-process .service-card{border-top:5px solid var(--p)}.services-spotlight .service-card:first-child{grid-column:span 3;background:var(--dark);color:#fff}.gallery-spotlight,.gallery-duo,.gallery-triptych{display:grid;gap:14px}.gallery-spotlight{grid-template-columns:minmax(0,1fr)}.gallery-spotlight .gallery-item img{height:clamp(360px,62vw,760px)}.gallery-duo{grid-template-columns:repeat(2,minmax(0,1fr))}.gallery-duo .gallery-item img{height:clamp(320px,45vw,620px)}.gallery-triptych{grid-template-columns:repeat(3,minmax(0,1fr))}.gallery-triptych .gallery-item:first-child{grid-column:span 2}.gallery-triptych .gallery-item:first-child img{height:520px}.gallery-triptych .gallery-item:not(:first-child) img{height:253px}.gallery-bento{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}.gallery-bento .gallery-item:first-child{grid-column:span 2;grid-row:span 2}.gallery-fullbleed{display:grid;grid-template-columns:repeat(2,1fr);gap:0}.gallery-fullbleed .gallery-item{border-radius:0}.gallery-polaroid{display:flex;flex-wrap:wrap;justify-content:center;gap:24px}.gallery-polaroid .gallery-item{width:min(310px,90%);padding:12px 12px 45px;background:#fff;box-shadow:0 18px 45px rgba(0,0,0,.14);transform:rotate(-2deg)}.gallery-polaroid .gallery-item:nth-child(even){transform:rotate(2deg)}.gallery-story{display:grid;gap:40px}.gallery-story .gallery-item:nth-child(even){margin-left:18%}.gallery-story .gallery-item{width:72%}
/* BlitzBoom Image-rich Multi-page Home Preview Engine v5.54 */
.home-image-showcase{padding:clamp(18px,3vw,42px) clamp(18px,4vw,64px);overflow:hidden}.home-image-showcase-grid{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));grid-auto-rows:clamp(150px,19vw,300px);gap:clamp(10px,1.5vw,18px)}.home-image-tile{position:relative;grid-column:span 4;margin:0;overflow:hidden;border-radius:clamp(16px,2vw,26px);background:#eef1f4;box-shadow:var(--shadow-sm)}.home-image-tile:first-child,.home-image-tile:nth-child(5){grid-column:span 8}.home-image-tile img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;display:block;transition:transform .6s ease}.home-image-tile:hover img{transform:scale(1.035)}
@media(max-width:900px){.home-image-tile,.home-image-tile:first-child,.home-image-tile:nth-child(5){grid-column:span 6}}@media(max-width:600px){.home-image-showcase-grid{grid-template-columns:1fr;grid-auto-rows:auto}.home-image-tile,.home-image-tile:first-child,.home-image-tile:nth-child(5){grid-column:auto;aspect-ratio:4/3}}
@media(max-width:600px){.home-service-grid{grid-template-columns:1fr}.home-gallery-grid{grid-template-columns:1fr;grid-auto-rows:auto}.home-gallery-item,.home-gallery-item:first-child,.home-gallery-item:nth-child(5){grid-column:auto;aspect-ratio:4/3}.home-preview-media{min-height:340px}}
.type-serif h1,.type-serif h2,.type-serif h3{font-family:'Playfair Display',serif}.type-geometric{font-family:'Space Grotesk',sans-serif}.type-contrast h1,.type-contrast h2{font-family:'Playfair Display',serif}.type-mono .eyebrow,.type-mono .service-card>span{font-family:monospace}.motion-reduced .reveal{opacity:1;transform:none;transition:none}.motion-cinematic .reveal{transition-duration:1.2s}.motion-playful .service-card:hover{transform:translateY(-10px) rotate(-1deg)}.motion-impact .reveal{transform:translateY(45px) scale(.96)}
/* BlitzBoom layout safety system: keeps every generated shell proportionate */
img,svg,video,canvas{max-width:100%}a,p,h1,h2,h3,span{overflow-wrap:anywhere}.site-header{min-height:72px;max-width:100%;gap:24px;isolation:isolate}.site-header>*{min-width:0}.site-header .brand{flex:0 1 auto;max-width:min(42vw,420px)}.site-header .brand span{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.site-header nav{min-width:0;align-items:center;justify-content:center;flex-wrap:wrap;row-gap:8px}.site-header nav a{white-space:nowrap}.nav-cta{flex:0 0 auto;white-space:nowrap}.nav-floating,.site-header.nav-boxed{width:auto;max-width:calc(100% - 32px)}.site-header.nav-rail{position:fixed;top:20px;bottom:auto;max-height:calc(100vh - 40px);overflow-y:auto}.site-header.nav-centered{padding-top:16px;padding-bottom:16px;row-gap:12px}.site-header.nav-centered .brand{width:auto;max-width:min(70vw,520px)}main{width:100%;min-width:0;overflow:hidden}.hero{width:100%;min-width:0;max-width:100%;overflow:hidden}.hero>*{min-width:0}.hero-copy{width:100%;max-width:760px}.hero h1,.page-hero h1{max-width:100%;font-size:clamp(2.65rem,7vw,6.7rem);line-height:.94}.hero-copy>p{max-width:62ch}.hero-media,.collage{overflow:hidden}.section,.stats-band,.cta,.map-section,.page-hero{width:100%;max-width:100%}.section>*{min-width:0}.site-footer{width:100%;max-width:100%;min-height:220px;align-items:start;overflow:hidden;padding:48px clamp(20px,6vw,88px);grid-template-columns:minmax(0,1.5fr) minmax(150px,.65fr) minmax(0,1fr);gap:clamp(24px,4vw,64px)}.site-footer>*{min-width:0;max-width:100%}.site-footer .footer-brand{max-width:560px}.site-footer .footer-brand .brand{max-width:100%}.site-footer .footer-brand .brand span{font-size:clamp(1.05rem,2.3vw,1.8rem);line-height:1.15}.site-footer .footer-brand p,.site-footer>.footer-contact p{margin-bottom:8px}.site-footer>.footer-contact{display:block;grid-template-columns:none}.site-footer .footer-links{min-width:130px}.site-footer .footer-legal{width:100%;margin:10px 0 0}.footer-statement,.footer-mega{padding-top:64px;padding-bottom:48px}.footer-statement .footer-brand .brand span{font-size:clamp(1.5rem,4vw,3.6rem)}.footer-compact{display:grid;grid-template-columns:minmax(0,1.4fr) auto minmax(0,1fr);align-items:center}.footer-compact .footer-legal{grid-column:1/-1}.footer-social .footer-brand{grid-column:auto}.footer-signature{display:grid;place-items:center;min-height:220px}.footer-signature>*{text-align:center}.footer-contact.site-footer{grid-template-columns:minmax(0,1fr) minmax(140px,.55fr) minmax(0,1.1fr)}
.footer-links{display:flex;flex-direction:column;gap:10px}.footer-links a{color:inherit;text-decoration:none}.footer-legal{grid-column:1/-1;border-top:1px solid rgba(255,255,255,.14);padding-top:20px}.footer-statement{grid-template-columns:2fr 1fr 1fr;padding-top:100px;padding-bottom:70px}.footer-statement .footer-brand .brand span{font-size:clamp(2rem,5vw,5rem)}.footer-compact{display:flex;align-items:center;justify-content:space-between}.footer-social .footer-brand{grid-column:span 2}.footer-contact{grid-template-columns:1fr 2fr 1fr}.footer-newsletter .footer-brand{max-width:650px}.footer-map{border-top:8px solid var(--p)}.footer-manifesto{background:var(--p);color:#fff}.footer-mega{grid-template-columns:2fr repeat(2,1fr);padding:90px 6vw}.footer-signature{text-align:center;grid-template-columns:1fr}.footer-signature .footer-links{flex-direction:row;justify-content:center;flex-wrap:wrap}
@media(max-width:1100px){.site-header{padding-left:24px;padding-right:24px}.site-header nav{gap:16px}.site-header .brand{max-width:36vw}.site-footer,.footer-contact.site-footer,.footer-compact{grid-template-columns:minmax(0,1.3fr) minmax(130px,.7fr) minmax(0,1fr)}}
@media(max-width:950px){.gallery-duo,.gallery-triptych{grid-template-columns:1fr}.gallery-triptych .gallery-item:first-child{grid-column:auto}.gallery-triptych .gallery-item img,.gallery-triptych .gallery-item:first-child img{height:420px}.site-header nav{display:none}.site-header nav.open{display:flex;position:absolute;top:80px;left:20px;right:20px;flex-direction:column;padding:20px;background:var(--dark);border-radius:18px}.menu-toggle{display:block}.nav-cta{display:none}.hero-split,.hero-collage,.hero-minimal,.hero-diagonal,.hero-magazine,.hero-product,.hero-mosaic,.hero-architectural,.about,.testimonials,.faq,.map-section{grid-template-columns:1fr}.hero-media{min-height:520px}.collage{min-height:480px}.service-grid{grid-template-columns:repeat(2,1fr)}.section-head,.cta{align-items:flex-start;flex-direction:column}.gallery-masonry{columns:2}.site-header{min-height:68px}.site-header .brand{max-width:70vw}.site-header.nav-rail{left:16px;right:16px;width:auto;bottom:auto;flex-direction:row}.site-header.nav-rail nav{flex-direction:column}.site-footer,.footer-contact.site-footer,.footer-compact{display:grid;grid-template-columns:1fr;min-height:0}.site-footer .footer-brand,.site-footer>.footer-contact{max-width:680px}.site-footer{grid-template-columns:1fr}}@media(max-width:600px){h1{font-size:3.4rem}.hero-split .hero-copy,.hero-collage,.hero-minimal{padding:130px 20px 65px}.section{padding:80px 20px}.service-grid{grid-template-columns:1fr}.gallery-grid{grid-template-columns:1fr}.gallery-masonry{columns:1}.gallery-filmstrip,.image-carousel{grid-auto-columns:88%}.stats-band{grid-template-columns:1fr;gap:30px}.stats-band div{border-right:0;border-bottom:1px solid rgba(255,255,255,.15);padding:0 0 25px}.site-header{left:0;right:0;top:0;padding:14px 16px}.nav-floating,.site-header.nav-boxed{left:10px;right:10px;top:10px;max-width:calc(100% - 20px)}.site-header .brand{max-width:65vw}.brand i{width:38px;height:38px;flex:0 0 38px}.site-header nav.open{top:68px;left:10px;right:10px;max-height:calc(100vh - 88px);overflow:auto}.hero h1,.page-hero h1,h1{font-size:clamp(2.45rem,13vw,4rem)}.hero-fullscreen{padding:130px 20px 64px;min-height:760px}.hero-media{min-height:420px}.collage{min-height:400px}.cta{padding:64px 20px}.site-footer{padding:42px 20px;gap:24px}.footer-statement,.footer-mega{padding-top:48px;padding-bottom:38px}.footer-signature{min-height:180px}.sticky-call{left:14px;right:14px;text-align:center}}/* BlitzBoom Professional Layout System v2 */
:root{--container:min(1180px,calc(100vw - 48px));--section-space:clamp(76px,9vw,132px);--shadow-sm:0 12px 34px rgba(15,20,30,.08);--shadow-lg:0 34px 90px rgba(15,20,30,.14)}
body{font-size:16px;line-height:1.6;background:color-mix(in srgb,var(--light) 94%,white);text-rendering:optimizeLegibility}
main>section:not(.hero):not(.stats-band):not(.cta):not(.map-section){padding-inline:max(24px,calc((100vw - 1180px)/2));padding-block:var(--section-space)}
.section{padding:var(--section-space) max(24px,calc((100vw - 1180px)/2))}
.section-head{max-width:1180px;margin-inline:auto;margin-bottom:clamp(36px,5vw,68px)}
.section-head h2,.about h2,.faq h2,.testimonials h2,.gallery h2{max-width:15ch}
.section-head>p,.gallery>p{font-size:clamp(1rem,1.5vw,1.15rem);color:var(--muted)}
.site-header{padding:18px max(24px,calc((100vw - 1240px)/2));min-height:82px}
.nav-floating{left:50%;right:auto;width:min(1180px,calc(100vw - 32px));transform:translateX(-50%);padding-inline:24px;border:1px solid rgba(255,255,255,.14);box-shadow:0 16px 50px rgba(0,0,0,.16)}
.site-header nav{gap:clamp(14px,2vw,30px)}.site-header nav a{font-size:.94rem;letter-spacing:.01em}
.hero{min-height:min(900px,94vh)}.hero-copy{max-width:760px}.hero-copy h1{max-width:11ch}.hero-copy>p{font-size:clamp(1.05rem,1.55vw,1.28rem);line-height:1.65}
.hero-fullscreen{padding-inline:max(24px,calc((100vw - 1180px)/2));padding-bottom:clamp(72px,9vw,120px)}
.hero-split{grid-template-columns:minmax(0,1fr) minmax(420px,.92fr)}.hero-split .hero-copy{padding-left:max(24px,calc((100vw - 1180px)/2));padding-right:clamp(44px,6vw,92px)}
.hero-media{min-height:720px}.hero-media img{display:block}
.hero-minimal,.hero-collage{padding-inline:max(24px,calc((100vw - 1180px)/2))}
.about{max-width:1180px;margin-inline:auto;grid-template-columns:64px minmax(0,1.1fr) minmax(320px,.7fr);gap:clamp(36px,6vw,86px)}
.about-copy>p{font-size:clamp(1.05rem,1.5vw,1.2rem);color:#3c4652}.about figure img{box-shadow:var(--shadow-lg)}
.service-grid{max-width:1180px;margin-inline:auto;grid-template-columns:repeat(12,minmax(0,1fr));gap:20px}.service-card{grid-column:span 3;padding:clamp(26px,3vw,38px);min-height:280px;display:flex;flex-direction:column;align-items:flex-start;border-radius:24px;box-shadow:0 1px 0 rgba(15,20,30,.04)}.service-card h3{font-size:clamp(1.25rem,2vw,1.65rem);margin-top:24px}.service-card p{color:var(--muted)}.service-card a{margin-top:auto;padding-top:18px}
.services-list .service-card{grid-column:1/-1;min-height:0}.services-bento .service-card:nth-child(1),.services-bento .service-card:nth-child(4){grid-column:span 6}.services-spotlight .service-card:first-child{grid-column:span 6}.variant-editorial .service-card:nth-child(1){grid-column:span 6}
.gallery{background:#fff}.gallery>p,.gallery>.eyebrow,.gallery>h2{max-width:1180px;margin-left:auto;margin-right:auto}.gallery>p{margin-bottom:42px}
.gallery-grid,.gallery-masonry,.gallery-filmstrip,.gallery-bento,.gallery-fullbleed,.gallery-polaroid,.gallery-story,.gallery-spotlight,.gallery-duo,.gallery-triptych,.image-carousel{max-width:1180px;margin-inline:auto}
.gallery-grid{grid-template-columns:repeat(12,minmax(0,1fr));gap:18px}.gallery-grid .gallery-item{grid-column:span 4}.gallery-item{border-radius:22px;background:#eef1f4;box-shadow:var(--shadow-sm)}.gallery-item img{height:clamp(280px,32vw,440px)}
.gallery-masonry{column-gap:18px}.gallery-masonry .gallery-item{margin-bottom:18px}.gallery-placeholder{max-width:1180px;margin-inline:auto;min-height:420px;background:linear-gradient(135deg,color-mix(in srgb,var(--a) 45%,white),white);border:0;box-shadow:inset 0 0 0 1px var(--line)}.gallery-more{display:flex;justify-content:center;margin:34px auto 0;max-width:1180px}
.testimonials,.faq{padding-inline:max(24px,calc((100vw - 1180px)/2));gap:clamp(50px,8vw,110px)}.quote-stack blockquote{padding:clamp(28px,4vw,44px);box-shadow:var(--shadow-sm)}
.map-section{grid-template-columns:minmax(360px,.8fr) minmax(0,1.2fr);min-height:640px}.map-card{padding:clamp(64px,8vw,110px) max(24px,calc((100vw - 1180px)/2))}.contact-placeholder{display:grid;place-items:center;padding:48px;background:linear-gradient(135deg,var(--a),#fff);min-height:640px}.contact-placeholder>div{max-width:520px;padding:48px;border-radius:28px;background:rgba(255,255,255,.86);box-shadow:var(--shadow-lg)}
.page-hero{min-height:520px;padding:190px max(24px,calc((100vw - 1180px)/2)) 86px;display:flex;flex-direction:column;justify-content:flex-end}.page-hero h1{max-width:12ch}.page-hero>p:last-child{max-width:720px;font-size:clamp(1.05rem,1.5vw,1.25rem);color:rgba(255,255,255,.72)}
.cta{padding:clamp(72px,8vw,110px) max(24px,calc((100vw - 1180px)/2));align-items:center}.cta>div:first-child{max-width:780px}.cta>div:last-child{display:flex;gap:12px;flex-wrap:wrap}
.site-footer{padding:68px max(24px,calc((100vw - 1180px)/2)) 36px;grid-template-columns:minmax(0,1.4fr) minmax(160px,.5fr) minmax(220px,.8fr);gap:clamp(34px,6vw,80px)}
@media(max-width:1050px){.service-card{grid-column:span 6}.services-bento .service-card:nth-child(1),.services-bento .service-card:nth-child(4),.services-spotlight .service-card:first-child,.variant-editorial .service-card:nth-child(1){grid-column:span 6}.hero-split{grid-template-columns:1fr}.hero-split .hero-copy{padding-right:max(24px,calc((100vw - 1180px)/2))}.hero-media{min-height:520px}.about{grid-template-columns:1fr 1fr}.about .section-number{display:none}}
@media(max-width:760px){:root{--container:calc(100vw - 32px);--section-space:72px}.site-header{min-height:68px}.hero{min-height:auto}.hero-fullscreen{min-height:760px}.hero-copy h1{max-width:12ch}.about{grid-template-columns:1fr}.about figure{max-width:520px}.service-grid{grid-template-columns:1fr}.service-card,.services-bento .service-card:nth-child(1),.services-bento .service-card:nth-child(4),.services-spotlight .service-card:first-child,.variant-editorial .service-card:nth-child(1){grid-column:1;min-height:0}.gallery-grid{grid-template-columns:1fr}.gallery-grid .gallery-item{grid-column:1}.gallery-item img{height:360px}.map-section{grid-template-columns:1fr;min-height:0}.map-section iframe,.contact-placeholder{min-height:420px}.page-hero{min-height:440px;padding-top:150px}.site-footer{grid-template-columns:1fr}}
/* BlitzBoom Proportion & Card System v3 */
:root{--panel-radius:clamp(20px,2vw,28px);--panel-pad:clamp(24px,3vw,38px);--content-max:1180px}
.section-head,.about,.service-grid,.gallery-grid,.gallery-masonry,.gallery-filmstrip,.gallery-bento,.gallery-fullbleed,.gallery-polaroid,.gallery-story,.gallery-spotlight,.gallery-duo,.gallery-triptych,.image-carousel,.faq,.testimonials{width:min(var(--content-max),100%)}
.section-head{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(280px,.65fr);align-items:end}
.service-grid{grid-template-columns:repeat(12,minmax(0,1fr));gap:clamp(16px,2vw,24px)}
.service-card{grid-column:span 4;min-height:250px;max-width:100%;padding:var(--panel-pad);border-radius:var(--panel-radius);overflow:hidden}
.service-card>span{font-size:.78rem;letter-spacing:.16em}.service-card h3{max-width:18ch;line-height:1.15}.service-card p{max-width:48ch}
.services-bento .service-card:nth-child(1),.services-bento .service-card:nth-child(4),.services-spotlight .service-card:first-child,.variant-editorial .service-card:nth-child(1){grid-column:span 8}
.services-list{gap:16px}.services-list .service-card{display:grid;grid-template-columns:72px minmax(180px,.45fr) minmax(0,1fr) auto;align-items:center;column-gap:28px;padding:26px 30px}.services-list .service-card h3,.services-list .service-card p,.services-list .service-card a{margin:0;padding:0}
.gallery-item,.quote-stack blockquote,.contact-placeholder>div,.map-card,.faq details{border-radius:var(--panel-radius)}
.gallery-grid .gallery-item{grid-column:span 4;aspect-ratio:4/3}.gallery-grid .gallery-item img{height:100%}.gallery-duo .gallery-item,.gallery-triptych .gallery-item{min-height:0}
.quote-stack blockquote{min-height:180px}.faq details{padding:22px 24px;background:#fff;border:1px solid var(--line)}
.map-card{min-width:0}.contact-placeholder>div{width:min(520px,100%)}
.hero-media aside{max-width:calc(100% - 48px)}
.btn,.nav-cta,.contact-actions a{min-height:48px;max-width:100%;text-align:center}
@media(max-width:1050px){.service-card{grid-column:span 6}.services-bento .service-card:nth-child(1),.services-bento .service-card:nth-child(4),.services-spotlight .service-card:first-child,.variant-editorial .service-card:nth-child(1){grid-column:span 6}.section-head{grid-template-columns:1fr}.services-list .service-card{grid-template-columns:56px minmax(0,1fr);row-gap:10px}.services-list .service-card p,.services-list .service-card a{grid-column:2}}
@media(max-width:680px){.service-card,.services-bento .service-card:nth-child(1),.services-bento .service-card:nth-child(4),.services-spotlight .service-card:first-child,.variant-editorial .service-card:nth-child(1){grid-column:1/-1}.service-card{min-height:0}.services-list .service-card{display:flex;flex-direction:column;align-items:flex-start}.gallery-grid .gallery-item{grid-column:1/-1;aspect-ratio:4/3}.gallery-item img{height:100%}.hero-actions,.contact-actions,.cta>div:last-child{width:100%}.hero-actions .btn,.contact-actions a,.cta .btn{flex:1 1 220px}.contact-placeholder{padding:20px}.contact-placeholder>div{padding:30px 24px}}
.contact-actions{display:flex;gap:12px;flex-wrap:wrap;align-items:center}.hero-actions>.contact-actions{display:contents}
.whatsapp-btn,.nav-whatsapp,.footer-whatsapp,.floating-whatsapp{gap:10px}.whatsapp-icon{width:1.25em;height:1.25em;flex:0 0 auto;display:block}.whatsapp-btn{background:#25d366!important;color:#071b0e!important;border-color:#25d366!important;box-shadow:0 12px 28px rgba(37,211,102,.24)}.whatsapp-btn:hover{background:#1fbd5b!important;transform:translateY(-2px)}.nav-whatsapp{background:#25d366!important;color:#071b0e!important}.footer-whatsapp{display:inline-flex;align-items:center;gap:9px;margin-top:12px;padding:11px 15px;border-radius:999px;background:#25d366;color:#071b0e;text-decoration:none;font-weight:800}.floating-whatsapp{position:fixed;z-index:60;right:max(18px,env(safe-area-inset-right));bottom:max(18px,env(safe-area-inset-bottom));display:inline-flex;align-items:center;gap:10px;min-height:58px;padding:15px 20px;border-radius:999px;background:#25d366;color:#071b0e;text-decoration:none;font-weight:900;box-shadow:0 18px 45px rgba(0,0,0,.28);transition:transform .2s ease,box-shadow .2s ease}.floating-whatsapp:hover{transform:translateY(-3px);box-shadow:0 22px 55px rgba(0,0,0,.34)}.floating-whatsapp .whatsapp-icon{width:28px;height:28px}@media(max-width:600px){.floating-whatsapp{right:14px;bottom:max(14px,env(safe-area-inset-bottom));width:58px;height:58px;min-height:58px;padding:14px;justify-content:center}.floating-whatsapp span{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}.floating-whatsapp .whatsapp-icon{width:30px;height:30px}}@media print{.floating-whatsapp{display:none!important}}.map-card .contact-actions{margin:24px 0}.image-load-error{opacity:.2;background:linear-gradient(135deg,#e8edf2,#f8fafc)}
/* BlitzBoom Gallery Media Layer v1 */
.gallery-media-frame{position:relative;isolation:isolate;overflow:hidden;background:transparent!important;color:inherit}
.gallery-media-frame .gallery-media-fallback{position:absolute;inset:0;z-index:1;display:none!important;place-content:center;gap:.35rem;text-align:center;background:linear-gradient(135deg,#eef2f5,#f8fafc);color:var(--dark);pointer-events:none}
.gallery-media-frame .gallery-media-fallback b{font-family:'Space Grotesk',sans-serif;font-size:clamp(2rem,6vw,4.5rem);letter-spacing:-.06em}
.gallery-media-frame .gallery-media-fallback small{font-weight:700;letter-spacing:.08em;text-transform:uppercase}
.gallery-media-frame>img{position:absolute!important;inset:0!important;z-index:2!important;inline-size:100%!important;block-size:100%!important;max-inline-size:none!important;display:block!important;object-fit:cover!important;object-position:center!important;opacity:1!important;visibility:visible!important;background:transparent!important;transition:transform .45s ease}
.gallery-media-frame .gallery-view-label{position:absolute;z-index:3;left:18px;bottom:18px;padding:.68rem .9rem;border-radius:999px;background:rgba(10,14,20,.74);color:#fff;backdrop-filter:blur(10px);opacity:0;transform:translateY(6px);transition:opacity .2s ease,transform .2s ease;pointer-events:none}
.gallery-media-frame[data-media-state="loading"] .gallery-media-fallback,.gallery-media-frame[data-media-state="loaded"] .gallery-media-fallback{display:none!important}
.gallery-media-frame[data-media-state="loading"]>img,.gallery-media-frame[data-media-state="loaded"]>img{display:block!important;opacity:1!important;visibility:visible!important}
.gallery-media-frame[data-media-state="error"] .gallery-media-fallback{display:grid!important}
.gallery-media-frame[data-media-state="error"]>img{display:none!important;opacity:0!important;visibility:hidden!important}
.gallery-media-frame[data-media-state="error"] .gallery-view-label{display:none}
.gallery-media-frame[data-media-state="error"]{cursor:default}
.gallery-media-frame[data-media-state="loaded"]:hover>img{transform:scale(1.035)}
.gallery-media-frame[data-media-state="loaded"]:hover .gallery-view-label,.gallery-media-frame[data-media-state="loaded"]:focus-visible .gallery-view-label{opacity:1;transform:none}
.image-load-error{opacity:0!important;visibility:hidden!important}
@media(max-width:680px){.gallery-media-frame .gallery-view-label{opacity:1;transform:none;font-size:.82rem;left:12px;bottom:12px}}

/* BlitzBoom Section Intelligence Engine */
:where(.si-about,.si-services,.si-gallery,.si-testimonials,.si-faq){position:relative;isolation:isolate}
.si-tone-paper{background:color-mix(in srgb,var(--light) 88%,white)}.si-tone-accent{background:color-mix(in srgb,var(--a) 62%,white)}.si-tone-dark{background:var(--dark);color:#fff}.si-tone-dark .eyebrow{color:var(--a)}
.si-density-airy{padding-block:clamp(6rem,10vw,10rem)}.si-density-balanced{padding-block:clamp(4.5rem,8vw,7.5rem)}.si-density-compact{padding-block:clamp(3.5rem,6vw,5.5rem)}
.si-about-image-led{grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);grid-template-areas:'media copy';}.si-about-image-led .section-number{display:none}.si-about-image-led .about-copy{grid-area:copy}.si-about-image-led figure{grid-area:media}.si-about-image-led figure img{aspect-ratio:4/5}
.si-about-manifesto{grid-template-columns:minmax(0,1fr);max-width:1100px}.si-about-manifesto .section-number{font-size:clamp(3rem,8vw,8rem);opacity:.12}.si-about-manifesto .about-copy h2{font-size:clamp(2.8rem,6vw,6rem)}.si-about-manifesto figure{display:none}
.si-about-offset-story{grid-template-columns:minmax(0,1.05fr) minmax(260px,.65fr);padding-left:max(var(--bb-gutter,5vw),10vw)}.si-about-offset-story .section-number{position:absolute;right:6vw;top:2rem;font-size:5rem;opacity:.08}
.si-about-compact-intro{grid-template-columns:70px minmax(0,1fr);max-width:1050px}.si-about-compact-intro figure{display:none}
.si-about-layered figure{transform:translateY(clamp(-2rem,-4vw,-5rem));box-shadow:0 30px 80px rgba(0,0,0,.14)}
.si-services-numbered-list .service-grid{grid-template-columns:1fr}.si-services-numbered-list .service-card{display:grid;grid-template-columns:70px minmax(0,1fr) auto;align-items:center;border-radius:0;border-width:1px 0 0;background:transparent}
.si-services-precision-grid .service-card{border-radius:8px;box-shadow:none}.si-services-horizontal-rail .service-grid{display:grid;grid-auto-flow:column;grid-auto-columns:minmax(280px,34%);overflow:auto;scroll-snap-type:x mandatory}.si-services-horizontal-rail .service-card{scroll-snap-align:start}
.si-services-spotlight .service-card:first-child{grid-column:span 2;background:var(--dark);color:#fff;padding:clamp(2rem,5vw,5rem)}
.si-services-process .service-card{counter-increment:step;border-top:4px solid var(--p)}
.si-gallery-cinematic-grid [class^='gallery-']{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:14px}.si-gallery-cinematic-grid .gallery-item{grid-column:span 4}.si-gallery-cinematic-grid .gallery-item:first-child{grid-column:span 8;grid-row:span 2}.si-gallery-cinematic-grid .gallery-item:nth-child(2){grid-column:span 4}
.si-gallery-story .gallery-item:nth-child(even){margin-left:auto}.si-gallery-story .gallery-item{max-width:880px}
.si-stats-floating-cards{background:transparent;color:var(--ink);gap:1rem}.si-stats-floating-cards div{border:1px solid var(--line);border-radius:20px;padding:2rem;background:#fff;box-shadow:0 20px 50px rgba(0,0,0,.08)}
.si-stats-minimal-row{background:transparent;color:var(--ink);border-block:1px solid var(--line)}.si-stats-minimal-row div{border-color:var(--line)}
.si-testimonials-featured-quote{grid-template-columns:minmax(0,.65fr) minmax(0,1.35fr)}.si-testimonials-featured-quote blockquote:first-child{padding:clamp(2rem,5vw,5rem);background:var(--dark);color:#fff}.si-testimonials-cards .quote-stack{grid-template-columns:repeat(auto-fit,minmax(240px,1fr))}
.si-map-floating-card{position:relative;display:block;padding:clamp(2rem,6vw,6rem)}.si-map-floating-card iframe{min-height:620px;border-radius:28px}.si-map-floating-card .map-card{position:absolute;z-index:2;left:clamp(3rem,8vw,9rem);top:50%;transform:translateY(-50%);max-width:430px;border-radius:24px;box-shadow:0 30px 80px rgba(0,0,0,.28)}
.si-map-contained{margin:clamp(2rem,6vw,6rem);border-radius:28px;overflow:hidden}.si-map-dark-panel iframe{filter:grayscale(.3) contrast(1.1)}
.si-faq-contained{max-width:1180px;margin-inline:auto}.si-faq-minimal{grid-template-columns:1fr}.si-faq-minimal>div:first-child{text-align:center}.si-faq-cards .accordion{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}.si-faq-cards details{padding:1.5rem;border:1px solid var(--line);border-radius:18px;background:#fff}
.si-cta-contained{margin:clamp(1rem,4vw,4rem);border-radius:28px}.si-cta-statement{min-height:460px;align-items:center}.si-cta-statement h2{font-size:clamp(3rem,7vw,7rem);line-height:.92}.si-cta-image-band{background:linear-gradient(110deg,var(--dark),color-mix(in srgb,var(--p) 72%,black));min-height:380px;align-items:center}
@media(max-width:950px){.si-about-image-led,.si-about-offset-story,.si-about-compact-intro{grid-template-columns:1fr;grid-template-areas:none}.si-about-image-led .about-copy,.si-about-image-led figure{grid-area:auto}.si-services-numbered-list .service-card{grid-template-columns:55px minmax(0,1fr)}.si-services-numbered-list .service-card a{grid-column:2}.si-gallery-cinematic-grid .gallery-item,.si-gallery-cinematic-grid .gallery-item:first-child,.si-gallery-cinematic-grid .gallery-item:nth-child(2){grid-column:span 6}.si-map-floating-card{display:grid}.si-map-floating-card .map-card{position:relative;left:auto;top:auto;transform:none;max-width:none}.si-faq-cards .accordion{grid-template-columns:1fr}}
@media(max-width:600px){.si-services-horizontal-rail .service-grid{grid-auto-columns:88%}.si-gallery-cinematic-grid [class^='gallery-']{grid-template-columns:1fr}.si-gallery-cinematic-grid .gallery-item,.si-gallery-cinematic-grid .gallery-item:first-child,.si-gallery-cinematic-grid .gallery-item:nth-child(2){grid-column:auto}.si-map-contained{margin:1rem}.si-cta-contained{margin:1rem}.si-stats-floating-cards{padding-inline:1rem}}

/* BlitzBoom Professional Design Safety Engine v6 */
:root{
  --bb-container:1240px;--bb-wide:1480px;--bb-gutter:clamp(1rem,3vw,2.75rem);
  --bb-section:clamp(4.5rem,8vw,8.5rem);--bb-gap:clamp(1rem,2.2vw,2rem);
  --bb-logo-header:139px;--bb-logo-mobile:107px;
  --bb-shadow-soft:0 18px 55px rgba(10,15,25,.10);--bb-shadow-lift:0 28px 75px rgba(10,15,25,.16);
}
*,*::before,*::after{box-sizing:border-box;min-width:0}
html{width:100%;max-width:100%;scroll-padding-top:110px}
body{width:100%;min-height:100vh;max-width:100%;overflow-x:clip;text-rendering:optimizeLegibility}
img,svg,video,canvas,iframe{display:block;max-width:100%}
img{height:auto}
button,input,textarea,select{font:inherit}
main,section,header,footer{max-width:100%}
p{max-width:68ch}
h1,h2,h3,h4,p,a,span{overflow-wrap:break-word}
.site-header{min-height:72px;max-height:120px;gap:clamp(.75rem,2vw,1.75rem)}
.site-header>*{min-width:0}
.brand{min-width:0;max-width:min(42vw,430px);flex:0 1 auto}
.brand span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.brand-logo{display:block;width:auto;height:auto;max-width:min(var(--bb-logo-header),250px)!important;max-height:min(84px,250px)!important;object-fit:contain;flex:0 0 auto}
.logo-frame{display:inline-grid;place-items:center;flex:0 0 auto;max-width:250px;max-height:250px;padding:clamp(.28rem,.7vw,.55rem);line-height:0;background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.18)}
.logo-minimal{padding:0;background:transparent;border:0}.logo-rounded{border-radius:18px}.logo-circle{border-radius:50%;aspect-ratio:1}.logo-circle .brand-logo{max-height:72px!important}.logo-arch{border-radius:999px 999px 18px 18px}.logo-hexagon{clip-path:polygon(25% 5%,75% 5%,100% 50%,75% 95%,25% 95%,0 50%)}.logo-diamond{transform:rotate(45deg);margin:.45rem}.logo-diamond .brand-logo{transform:rotate(-45deg);max-width:calc(var(--bb-logo-header)*.72)!important}.logo-pill{border-radius:999px;padding-inline:.8rem}.logo-double{border:3px double currentColor;border-radius:14px}.logo-glass{border-radius:16px;background:rgba(255,255,255,.12);backdrop-filter:blur(16px);box-shadow:inset 0 1px rgba(255,255,255,.25)}.logo-metal{border-radius:14px;border-color:color-mix(in srgb,var(--p) 65%,white);box-shadow:inset 0 0 0 2px rgba(255,255,255,.12),0 8px 24px rgba(0,0,0,.15)}
.site-header nav{min-width:0;display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:clamp(.75rem,2vw,1.75rem)}
.site-header nav a,.nav-cta{white-space:nowrap}
.hero,.section,.stats-band,.cta,.map-section,.page-hero,.site-footer{width:100%;max-width:100%}
.hero>*{min-width:0}.hero-copy{width:100%;max-width:780px}.hero h1,.page-hero h1{font-size:clamp(2.55rem,6.8vw,6.6rem);line-height:.94;max-width:100%}.hero-copy>p{font-size:clamp(1rem,1.4vw,1.25rem)}
.section{padding-block:var(--bb-section);padding-inline:var(--bb-gutter)}
.service-grid,.gallery-grid,.gallery-bento,.stats-band{grid-template-columns:repeat(auto-fit,minmax(min(100%,17rem),1fr))}
.service-card,.quote-stack blockquote,.map-card,.hero-copy{max-width:100%;overflow:hidden}
.gallery-item,.media-frame{max-width:100%;overflow:hidden}.gallery-item img{width:100%;object-fit:cover}
.hero-actions,.button-group,.cta>div:last-child{display:flex;flex-wrap:wrap;gap:.75rem}
.btn,.nav-cta,.menu-toggle{min-height:44px;max-width:100%}
.site-footer{min-height:0!important;grid-template-columns:minmax(0,1.5fr) minmax(130px,.65fr) minmax(0,1fr);gap:clamp(1.5rem,4vw,4rem);padding:clamp(2.75rem,6vw,5rem) var(--bb-gutter)!important;align-items:start;overflow:hidden}
.site-footer>*{min-width:0;max-width:100%}.site-footer .brand-logo{max-width:min(150px,250px)!important;max-height:72px!important}.footer-legal{width:100%}
.bb-layout-warning{outline:3px solid #ff3158!important;outline-offset:2px}
@media(max-width:1050px){.site-header nav{gap:1rem}.brand{max-width:34vw}.site-footer{grid-template-columns:repeat(2,minmax(0,1fr))}.footer-legal{grid-column:1/-1}}
@media(max-width:950px){.site-header{max-height:none}.site-header nav:not(.open){display:none}.brand{max-width:72vw}.site-footer{grid-template-columns:1fr}.site-footer .footer-brand{max-width:680px}.hero-split,.hero-collage,.hero-minimal,.hero-diagonal,.hero-magazine,.hero-product,.hero-mosaic,.hero-architectural,.about,.testimonials,.faq,.map-section{grid-template-columns:1fr!important}.services-bento .service-card,.services-spotlight .service-card:first-child{grid-column:auto!important}}
@media(max-width:600px){:root{--bb-gutter:1.25rem}.brand-logo{max-width:min(var(--bb-logo-mobile),250px)!important;max-height:62px!important}.logo-frame{padding:.28rem}.brand{max-width:68vw}.brand span{font-size:.95rem}.hero-actions .btn,.cta>div:last-child .btn{width:100%}.site-footer{padding:2.6rem 1.25rem!important}.gallery-story .gallery-item{width:100%!important;margin-left:0!important}.services-list .service-card{grid-template-columns:1fr!important}.gallery-bento{grid-template-columns:1fr!important}.gallery-bento .gallery-item{grid-column:auto!important;grid-row:auto!important}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}

/* BlitzBoom Mobile-First Responsive Engine v1.1 — professional dropdown navigation */
:root{
  --bb-safe-top:env(safe-area-inset-top,0px);--bb-safe-right:env(safe-area-inset-right,0px);
  --bb-safe-bottom:env(safe-area-inset-bottom,0px);--bb-safe-left:env(safe-area-inset-left,0px);
  --bb-mobile-gutter:clamp(1rem,4.5vw,1.4rem);--bb-touch:48px;
}
html{-webkit-text-size-adjust:100%;text-size-adjust:100%;scroll-padding-top:calc(76px + var(--bb-safe-top))}
body{min-width:0;overscroll-behavior-x:none}
:where(a,button,input,select,textarea,summary){touch-action:manipulation}
:where(button,.btn,.nav-cta,.menu-toggle,input,select,textarea){min-height:var(--bb-touch)}
:where(input,select,textarea){width:100%;max-width:100%;font-size:16px}
:where(textarea){min-height:8rem;resize:vertical}
:where(table){width:100%;border-collapse:collapse}
:where(pre,code){max-width:100%;overflow:auto;white-space:pre-wrap}
:where(.section,.page-hero,.cta,.stats-band,.map-card){padding-left:max(var(--bb-mobile-gutter),var(--bb-safe-left));padding-right:max(var(--bb-mobile-gutter),var(--bb-safe-right))}
.site-header{padding-top:calc(14px + var(--bb-safe-top));padding-left:max(16px,var(--bb-safe-left));padding-right:max(16px,var(--bb-safe-right))}
.menu-toggle{width:48px;height:48px;padding:0;align-items:center;justify-content:center;border:1px solid currentColor;border-radius:14px;flex:0 0 48px;position:relative;z-index:1002;background:transparent;color:inherit;cursor:pointer}
.menu-toggle-lines{display:grid;gap:5px;width:22px}.menu-toggle-lines i{display:block;width:22px;height:2px;border-radius:999px;background:currentColor;transition:transform .22s ease,opacity .18s ease}.menu-toggle[aria-expanded="true"] .menu-toggle-lines i:nth-child(1){transform:translateY(7px) rotate(45deg)}.menu-toggle[aria-expanded="true"] .menu-toggle-lines i:nth-child(2){opacity:0}.menu-toggle[aria-expanded="true"] .menu-toggle-lines i:nth-child(3){transform:translateY(-7px) rotate(-45deg)}
.site-nav{min-width:0}.site-nav a{white-space:nowrap}.site-header.bb-nav-collapsed .menu-toggle{display:inline-flex!important}.site-header.bb-nav-collapsed .site-nav:not(.open){display:none!important}.site-header.bb-nav-collapsed .nav-cta{display:none!important}
.site-header{overflow:visible!important}.site-header nav.open{z-index:1001;overscroll-behavior:auto;-webkit-overflow-scrolling:auto}
.hero-actions .btn,.button-group .btn{min-width:min(100%,10rem)}
.gallery-filmstrip,.image-carousel,.services-rail{scrollbar-width:none;-webkit-overflow-scrolling:touch;scroll-snap-type:x mandatory;overscroll-behavior-inline:contain}
.gallery-filmstrip::-webkit-scrollbar,.image-carousel::-webkit-scrollbar,.services-rail::-webkit-scrollbar{display:none}
.gallery-filmstrip>*,.image-carousel>*,.services-rail>*{scroll-snap-align:start}
.lightbox{padding:max(1rem,var(--bb-safe-top)) max(1rem,var(--bb-safe-right)) max(1rem,var(--bb-safe-bottom)) max(1rem,var(--bb-safe-left))}
.lightbox button{min-width:48px;min-height:48px;right:max(10px,var(--bb-safe-right));top:max(10px,var(--bb-safe-top))}
.sticky-call{bottom:max(14px,calc(var(--bb-safe-bottom) + 10px));max-width:calc(100vw - 28px)}

/* BlitzBoom Desktop Navigation & Media Sizing Guard v2 */
@media(min-width:901px){
  .site-header{flex-wrap:nowrap!important;overflow:visible!important}
  .site-header .brand{flex:0 1 auto!important;min-width:0!important}
  .site-header .site-nav{display:flex!important;flex:1 1 auto!important;min-width:0!important;max-width:none!important;align-items:center!important;justify-content:center!important;flex-wrap:nowrap!important;overflow:visible!important;overflow-x:visible!important;overflow-y:visible!important;scrollbar-width:none!important;-ms-overflow-style:none!important;white-space:nowrap!important}
  .site-header .site-nav::-webkit-scrollbar{display:none!important;width:0!important;height:0!important}
  .site-header .site-nav a{flex:0 0 auto!important;white-space:nowrap!important}
  .site-header:not(.bb-nav-collapsed) .menu-toggle{display:none!important}
  .site-header.bb-nav-collapsed .site-nav:not(.open){display:none!important}
  .site-header.bb-nav-collapsed .menu-toggle{display:inline-flex!important}
  .site-header.bb-nav-collapsed .nav-cta{display:none!important}
  .site-header.bb-nav-collapsed .site-nav.open{display:flex!important;position:absolute!important;inset:calc(100% + 10px) 0 auto 0!important;width:100%!important;max-height:var(--bb-nav-height,900px)!important;overflow:hidden!important;flex-direction:column!important;align-items:stretch!important;justify-content:flex-start!important;padding:1rem!important;background:color-mix(in srgb,var(--dark,#111) 96%,transparent)!important;backdrop-filter:blur(22px)!important;border:1px solid rgba(255,255,255,.12)!important;border-radius:20px!important;box-shadow:0 24px 70px rgba(0,0,0,.32)!important}
  .site-header.bb-nav-collapsed .site-nav.open a{display:flex!important;align-items:center!important;min-height:50px!important;width:100%!important;padding:.75rem 1rem!important;border-radius:12px!important;white-space:normal!important}
}
/* Predictable media proportions across generated pages */
:where(.hero-media,.about figure,.gallery-item,.gallery-media-frame,.image-carousel .gallery-item){min-width:0;overflow:hidden}
.hero-media img,.about figure img,.collage img,.gallery-item img,.gallery-media-frame>img,.image-carousel img{display:block;width:100%;max-width:100%;object-fit:cover;object-position:center}
.about figure{aspect-ratio:4/5;max-height:720px}.about figure img{height:100%!important}
.gallery-grid .gallery-item,.gallery-duo .gallery-item,.gallery-triptych .gallery-item,.gallery-bento .gallery-item,.gallery-fullbleed .gallery-item,.gallery-spotlight .gallery-item{aspect-ratio:4/3;min-height:0!important}
.gallery-grid .gallery-item img,.gallery-duo .gallery-item img,.gallery-triptych .gallery-item img,.gallery-bento .gallery-item img,.gallery-fullbleed .gallery-item img,.gallery-spotlight .gallery-item img{height:100%!important}
.gallery-filmstrip .gallery-item,.image-carousel .gallery-item{aspect-ratio:16/10;min-height:280px;max-height:620px}
.gallery-filmstrip .gallery-item img,.image-carousel .gallery-item img{height:100%!important}
.gallery-polaroid .gallery-item{aspect-ratio:4/5}.gallery-polaroid .gallery-item img{height:100%!important}
.gallery-story .gallery-item{aspect-ratio:16/10}.gallery-story .gallery-item img{height:100%!important}
.gallery-masonry .gallery-item{aspect-ratio:auto}.gallery-masonry .gallery-item img{position:relative!important;height:auto!important;aspect-ratio:4/3}
.page-hero,.hero,.section{overflow-x:clip}

@media(max-width:1024px){
  .section{padding-block:clamp(4.25rem,8vw,6.5rem)}
  .service-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .gallery-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .gallery-filmstrip{grid-auto-columns:minmax(280px,58vw)}
  .image-carousel{grid-auto-columns:minmax(300px,76vw)}
  .hero-media{min-height:clamp(28rem,62vw,38rem)}
}
@media(max-width:900px){
  .site-header{min-height:72px;max-height:none}
  .site-header nav:not(.open){display:flex!important;position:absolute!important;top:calc(100% + 8px)!important;left:max(10px,var(--bb-safe-left))!important;right:max(10px,var(--bb-safe-right))!important;width:auto!important;max-height:0!important;overflow:hidden!important;padding:0 1rem!important;opacity:0!important;visibility:hidden!important;pointer-events:none!important;transform:translateY(-10px)!important;flex-direction:column!important;align-items:stretch!important;justify-content:flex-start!important;background:color-mix(in srgb,var(--dark,#111) 96%,transparent)!important;backdrop-filter:blur(22px)!important;border:1px solid transparent!important;border-radius:18px!important;box-shadow:none!important;transition:max-height .34s cubic-bezier(.22,1,.36,1),opacity .2s ease,transform .28s ease,visibility 0s linear .34s,padding .28s ease!important}
  .site-header nav.open{display:flex!important;position:absolute!important;top:calc(100% + 8px)!important;left:max(10px,var(--bb-safe-left))!important;right:max(10px,var(--bb-safe-right))!important;bottom:auto!important;width:auto!important;max-height:var(--bb-nav-height,900px)!important;overflow:hidden!important;padding:1rem!important;opacity:1!important;visibility:visible!important;pointer-events:auto!important;transform:translateY(0)!important;flex-direction:column!important;align-items:stretch!important;justify-content:flex-start!important;background:color-mix(in srgb,var(--dark,#111) 96%,transparent)!important;backdrop-filter:blur(22px)!important;border:1px solid rgba(255,255,255,.12)!important;border-radius:18px!important;box-shadow:0 24px 70px rgba(0,0,0,.32)!important;transition:max-height .38s cubic-bezier(.22,1,.36,1),opacity .22s ease,transform .3s ease,padding .3s ease!important}
  .site-header nav.open a{display:flex;align-items:center;min-height:52px;width:100%;padding:.8rem 1rem;border-radius:12px;white-space:normal}
  .site-header nav.open a:hover,.site-header nav.open a:focus-visible{background:rgba(255,255,255,.08)}
  .menu-toggle{display:inline-flex!important}
  .nav-cta{display:none!important}
  body.bb-nav-open{overflow-x:hidden}
  .hero-split,.hero-collage,.hero-minimal,.hero-diagonal,.hero-magazine,.hero-product,.hero-mosaic,.hero-architectural,.about,.testimonials,.faq,.map-section{grid-template-columns:minmax(0,1fr)!important}
  .hero-media{order:-1;min-height:clamp(22rem,70vw,34rem)}
  .collage{min-height:clamp(24rem,80vw,34rem)}
  .about{gap:2rem}.about .section-number{display:none}
  .map-section iframe{min-height:420px}
  .site-footer,.footer-contact.site-footer,.footer-compact{grid-template-columns:minmax(0,1fr)!important}
}
@media(max-width:600px){
  :root{--bb-touch:50px}
  html{scroll-padding-top:calc(70px + var(--bb-safe-top))}
  .site-header{padding-bottom:10px;gap:.65rem}
  .brand{max-width:calc(100vw - 92px)!important;gap:.55rem}
  .brand span{font-size:clamp(.88rem,4vw,1.05rem)!important;white-space:normal!important;display:-webkit-box!important;-webkit-line-clamp:2;-webkit-box-orient:vertical}
  .logo-frame{max-width:132px!important;max-height:72px!important}
  .brand-logo{max-width:min(var(--bb-logo-mobile,112px),132px)!important;max-height:58px!important}
  .logo-diamond{margin:.15rem}.logo-diamond .brand-logo{max-width:78px!important}
  .hero{min-height:auto!important}
  .hero-fullscreen,.hero-split .hero-copy,.hero-collage,.hero-minimal,.hero-floating,.hero-panorama,.hero-product,.hero-mosaic,.hero-architectural{padding-top:calc(7.2rem + var(--bb-safe-top))!important;padding-bottom:clamp(3.5rem,12vw,5rem)!important;padding-left:var(--bb-mobile-gutter)!important;padding-right:var(--bb-mobile-gutter)!important}
  .hero-fullscreen{min-height:max(34rem,82svh)!important;align-items:flex-end}
  .hero-copy{max-width:100%!important}
  .hero h1,.page-hero h1,h1{font-size:clamp(2.35rem,12.5vw,3.8rem)!important;line-height:.98!important;letter-spacing:-.045em!important}
  h2{font-size:clamp(2rem,9.5vw,3rem)!important;line-height:1.02!important}
  h3{font-size:clamp(1.2rem,5.7vw,1.6rem)}
  p{font-size:clamp(.98rem,4.1vw,1.08rem);line-height:1.68}
  .hero-copy>p{font-size:clamp(1rem,4.3vw,1.14rem)!important}
  .hero-actions,.button-group,.cta>div:last-child{display:grid!important;grid-template-columns:1fr!important;width:100%;gap:.75rem}
  .hero-actions .btn,.button-group .btn,.cta>div:last-child .btn{width:100%!important;min-width:0;white-space:normal;text-align:center;padding:.9rem 1rem}
  .scroll-cue{display:none}
  .section{padding-block:clamp(3.75rem,16vw,5.25rem)!important;padding-left:var(--bb-mobile-gutter)!important;padding-right:var(--bb-mobile-gutter)!important}
  .section-head{display:grid!important;grid-template-columns:1fr!important;gap:1rem!important;margin-bottom:2rem!important}
  .section-head>p{max-width:100%}
  .service-grid,.gallery-grid,.gallery-bento,.stats-band,.form-grid{grid-template-columns:minmax(0,1fr)!important}
  .service-card{padding:clamp(1.25rem,6vw,1.65rem)!important;border-radius:18px}
  .services-bento .service-card,.services-spotlight .service-card:first-child,.variant-editorial .service-card:nth-child(1){grid-column:auto!important;grid-row:auto!important}
  .services-list .service-card{display:grid!important;grid-template-columns:1fr!important;gap:.65rem}
  .services-rail{grid-auto-columns:minmax(84vw,1fr)!important}
  .gallery-masonry{columns:1!important}
  .gallery-filmstrip,.image-carousel{grid-auto-columns:88vw!important;gap:.75rem}
  .gallery-item img,.image-carousel img{height:clamp(18rem,76vw,27rem)!important}
  .gallery-masonry .gallery-item:nth-child(3n+1) img{height:clamp(20rem,88vw,30rem)!important}
  .gallery-story .gallery-item{width:100%!important;margin-left:0!important}
  .gallery-polaroid .gallery-item{width:100%!important;transform:none!important}
  .stats-band{padding-block:3rem!important;gap:0!important}
  .stats-band div{padding:1.25rem 0!important;border-right:0!important;border-bottom:1px solid rgba(255,255,255,.15)}
  .stats-band div:last-child{border-bottom:0}
  .quote-stack blockquote{padding:1.25rem!important}
  .map-card{padding-block:3.5rem!important}
  .map-section iframe{min-height:340px}
  .accordion summary{font-size:1.05rem;gap:1rem}
  .cta{display:grid!important;grid-template-columns:1fr!important;align-items:start!important;padding-block:3.75rem!important;gap:1.5rem!important}
  .site-footer{padding-top:3rem!important;padding-bottom:calc(3rem + var(--bb-safe-bottom))!important;padding-left:var(--bb-mobile-gutter)!important;padding-right:var(--bb-mobile-gutter)!important;gap:1.75rem!important}
  .footer-links{gap:.25rem}.footer-links a{display:flex;align-items:center;min-height:44px}
  .footer-legal{font-size:.88rem}
  .sticky-call{left:14px!important;right:14px!important;width:auto!important;text-align:center;padding:.9rem 1rem}
  .page-hero{min-height:52svh!important;padding-top:calc(7.5rem + var(--bb-safe-top))!important;padding-bottom:3.5rem!important}
  .lightbox img{max-width:100%;max-height:78svh}
}
@media(max-width:390px){
  :root{--bb-mobile-gutter:1rem}
  .brand span{font-size:.9rem!important}
  .hero h1,.page-hero h1,h1{font-size:clamp(2.15rem,12vw,3.15rem)!important}
  h2{font-size:clamp(1.85rem,9vw,2.55rem)!important}
  .gallery-filmstrip,.image-carousel,.services-rail{grid-auto-columns:90vw!important}
}
@media(max-width:350px){
  .brand span{display:none!important}
  .brand{max-width:145px!important}
  .site-header{padding-left:10px;padding-right:10px}
  .menu-toggle{width:46px;height:46px;flex-basis:46px}
}
@media(max-width:900px) and (orientation:landscape){
  .hero-fullscreen{min-height:max(30rem,100svh)!important;padding-top:calc(6.2rem + var(--bb-safe-top))!important}
  .site-header nav.open{top:calc(100% + 8px)!important;left:max(10px,var(--bb-safe-left))!important;right:max(10px,var(--bb-safe-right))!important;bottom:auto!important;display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr));align-content:start;overflow:hidden!important}
  .site-header nav.open a{min-height:46px}
}
@media(hover:none) and (pointer:coarse){
  .service-card:hover,.gallery-item:hover img{transform:none!important}
  .gallery-item span{opacity:1;background:linear-gradient(transparent,rgba(0,0,0,.7));left:0;right:0;bottom:0;border-radius:0;padding:2.5rem 1rem 1rem}
}

/* BlitzBoom intelligent internal-linking layer */
.breadcrumbs{width:min(calc(100% - 40px),1240px);margin:0 auto;padding-top:clamp(100px,12vw,150px);position:relative;z-index:3}.breadcrumbs ol{display:flex;align-items:center;flex-wrap:wrap;gap:8px;margin:0;padding:0;list-style:none;font-size:.88rem}.breadcrumbs li+li::before{content:"/";margin-right:8px;opacity:.55}.breadcrumbs a{color:inherit;text-decoration-thickness:1px;text-underline-offset:4px}.breadcrumbs [aria-current="page"]{opacity:.72}.breadcrumbs+.page-hero{min-height:58vh;padding-top:clamp(48px,6vw,80px)}
.related-links{display:grid;grid-template-columns:minmax(0,.72fr) minmax(0,1.28fr);gap:clamp(28px,6vw,80px);align-items:start;background:color-mix(in srgb,var(--light) 88%,var(--a))}.related-links h2{font-size:clamp(2rem,4vw,4rem)}.related-links-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.related-link{min-height:88px;padding:20px 22px;display:flex;align-items:center;justify-content:space-between;gap:18px;border:1px solid var(--line);border-radius:18px;background:#fff;color:var(--ink);text-decoration:none;font-weight:800;transition:transform .25s,box-shadow .25s,border-color .25s}.related-link:hover,.related-link:focus-visible{transform:translateY(-3px);border-color:var(--p);box-shadow:0 18px 44px rgba(20,25,35,.09)}.related-link b{color:var(--p);font-size:1.25rem}.footer-sitemap{display:flex;flex-direction:column;gap:9px;min-width:130px}.footer-sitemap strong{color:#fff;margin-bottom:4px}.footer-sitemap a{color:inherit;text-decoration:none}.footer-sitemap a:hover,.footer-sitemap a:focus-visible{color:#fff;text-decoration:underline;text-underline-offset:4px}
@media(max-width:950px){.related-links{grid-template-columns:1fr}.related-links-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.breadcrumbs{padding-top:110px}.site-footer .footer-sitemap{max-width:680px}}
@media(max-width:600px){.breadcrumbs{width:calc(100% - 40px);padding-top:94px}.related-links-grid{grid-template-columns:1fr}.related-link{min-height:72px}.footer-sitemap{width:100%}}
/* BlitzBoom Professional Feature System v1 */
.pro-feature{position:relative;isolation:isolate}.music-experience{background:linear-gradient(145deg,var(--dark),#191f2a);color:#fff}.music-experience .section-head>p{color:rgba(255,255,255,.68)}
.music-player-grid{width:min(var(--content-max,1180px),100%);display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.track-card{display:grid;grid-template-columns:150px minmax(0,1fr);gap:24px;align-items:center;padding:22px;border:1px solid rgba(255,255,255,.12);border-radius:var(--panel-radius,24px);background:rgba(255,255,255,.065);backdrop-filter:blur(16px)}.track-art{aspect-ratio:1;display:grid;place-items:center;border-radius:18px;overflow:hidden;background:linear-gradient(135deg,var(--p),var(--a));font-family:'Space Grotesk',sans-serif;font-size:2rem;font-weight:800}.track-art img{width:100%;height:100%;object-fit:cover}.track-kicker{margin:0 0 5px;text-transform:uppercase;letter-spacing:.14em;font-size:.72rem;color:rgba(255,255,255,.58)}.track-copy h3{margin:0}.track-copy>p:not(.track-kicker){margin:4px 0 14px;color:rgba(255,255,255,.72)}.track-card audio{width:100%;height:42px}.audio-placeholder{padding:12px 14px;border:1px dashed rgba(255,255,255,.28);border-radius:12px;color:rgba(255,255,255,.7);font-size:.88rem}
.video-panel-grid{width:min(var(--content-max,1180px),100%);display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}.video-panel{margin:0}.video-frame,.video-placeholder-panel{position:relative;aspect-ratio:16/9;overflow:hidden;border-radius:var(--panel-radius,24px);background:#080b11;box-shadow:0 28px 70px rgba(0,0,0,.18)}.video-frame iframe,.video-frame video{position:absolute;inset:0;width:100%;height:100%;border:0;object-fit:cover}.video-panel h3{margin:14px 4px 0}.video-placeholder-panel{width:min(var(--content-max,1180px),100%);display:grid;place-items:center;align-content:center;color:#fff}.video-placeholder-panel span{font-size:3rem}.video-placeholder-panel p{color:rgba(255,255,255,.7)}
.event-list{width:min(var(--content-max,1180px),100%);display:grid}.event-row{display:grid;grid-template-columns:minmax(130px,.3fr) minmax(0,1fr) auto;gap:24px;align-items:center;padding:24px 0;border-top:1px solid var(--line)}.event-row time{font-weight:800;color:var(--p)}.event-row h3,.event-row p{margin:0}.newsletter-experience{display:grid;grid-template-columns:minmax(0,1fr) minmax(300px,.8fr);gap:clamp(32px,7vw,100px);align-items:center;background:var(--a)}.newsletter-form{display:flex;align-items:end;gap:12px}.newsletter-form label{flex:1}.newsletter-form label span{display:block;margin-bottom:8px;font-size:.8rem;font-weight:800}.newsletter-form input{width:100%;min-height:52px;padding:0 16px;border:1px solid var(--line);border-radius:12px;background:#fff}.form-status{grid-column:1/-1;margin:0;font-size:.85rem}
[data-motion-enhanced] .reveal{transition-duration:.85s;transition-timing-function:cubic-bezier(.2,.8,.2,1)}[data-motion-enhanced] .track-card:nth-child(even),[data-motion-enhanced] .video-panel:nth-child(even){transition-delay:.08s}.motion-float{animation:blitzFloat 7s ease-in-out infinite}@keyframes blitzFloat{50%{transform:translateY(-10px)}}
@media(max-width:850px){.music-player-grid,.video-panel-grid,.newsletter-experience{grid-template-columns:1fr}.newsletter-form{max-width:680px}}@media(max-width:560px){.track-card{grid-template-columns:82px minmax(0,1fr);gap:15px;padding:15px}.track-art{border-radius:14px}.event-row{grid-template-columns:1fr;gap:8px}.newsletter-form{display:grid;align-items:stretch}.newsletter-form .btn{width:100%}}@media(prefers-reduced-motion:reduce){.motion-float{animation:none!important}[data-motion-enhanced] .reveal{transition:none!important}}

/* Visual QA auto-repair layer */
:where(a,button,input,select,textarea):focus-visible{outline:3px solid color-mix(in srgb,var(--p,#2f6fed) 72%,white);outline-offset:3px}
:where(h1,h2,h3,h4,p,a,span,button,label){overflow-wrap:anywhere}
:where(img,svg,video,canvas,iframe){max-width:100%;height:auto}
:where(.brand-logo,.site-logo img,.logo-frame img){width:auto!important;height:auto!important;max-width:250px!important;max-height:250px!important;object-fit:contain!important}
:where(.hero-actions,.button-group,.site-header nav){flex-wrap:wrap}
@media(max-width:760px){:where(.service-grid,.gallery-grid,.gallery-bento,.form-grid){grid-template-columns:1fr!important}:where(.hero-actions,.button-group)>.btn{max-width:100%}}

/* BlitzBoom Core Web Vitals safeguards */
:root{font-synthesis:none;text-rendering:optimizeLegibility}
html{scroll-behavior:smooth}body{min-height:100%;text-size-adjust:100%;-webkit-text-size-adjust:100%}
img{height:auto}img[width][height]{aspect-ratio:attr(width) / attr(height)}
.section,.stats-band,.map-section,.site-footer{content-visibility:auto;contain-intrinsic-size:1px 720px}
.hero,.page-hero,.site-header{content-visibility:visible}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto!important}*,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}


/* BlitzBoom Professional Export Layout Engine v5 */
:root{
  --bb-container:1180px;
  --bb-gutter:clamp(18px,4vw,48px);
  --bb-section:clamp(76px,9vw,124px);
  --bb-card-radius:clamp(20px,2vw,28px);
  --bb-card-pad:clamp(24px,3vw,38px);
}
body{min-height:100vh;background:var(--light);}
main{display:block;width:100%;}
.section,.page-hero,.cta{padding-left:max(var(--bb-gutter),calc((100vw - var(--bb-container))/2));padding-right:max(var(--bb-gutter),calc((100vw - var(--bb-container))/2));}
.section{padding-top:var(--bb-section);padding-bottom:var(--bb-section);}
.section-head{width:100%;max-width:var(--bb-container);margin:0 auto clamp(38px,5vw,62px);}

/* Header geometry: brand | navigation | action. Never reverse the generated order. */
.site-header,.site-header.nav-split,.site-header.nav-centered,.site-header.nav-boxed{
  display:grid;
  grid-template-columns:minmax(180px,1fr) auto minmax(140px,1fr);
  align-items:center;
  column-gap:clamp(18px,3vw,42px);
  width:100%;
}
.site-header>.brand{grid-column:1;justify-self:start;order:0;}
.site-header>.menu-toggle{grid-column:2;order:0;}
.site-header>nav{grid-column:2;justify-self:center;order:0;}
.site-header>.nav-cta{grid-column:3;justify-self:end;order:0;}
.site-header.nav-floating,.site-header.nav-boxed{width:min(calc(100% - 32px),var(--bb-container));left:50%;right:auto;transform:translateX(-50%);}
.site-header nav{max-width:100%;}

/* Convert accidental preset split heroes into a coherent cinematic hero. */
.hero-split{
  position:relative;
  display:flex;
  align-items:flex-end;
  min-height:clamp(700px,88vh,940px);
  color:#fff;
  background:var(--dark);
  overflow:hidden;
}
.hero-split::after{
  content:"";
  position:absolute;
  inset:0;
  z-index:1;
  background:linear-gradient(90deg,rgba(8,10,14,.9) 0%,rgba(8,10,14,.62) 45%,rgba(8,10,14,.12) 78%),linear-gradient(0deg,rgba(8,10,14,.55),transparent 55%);
  pointer-events:none;
}
.hero-split .hero-media{position:absolute;inset:0;min-height:0;width:100%;height:100%;}
.hero-split .hero-media img{width:100%;height:100%;object-fit:cover;}
.hero-split .hero-copy{
  position:relative;
  z-index:2;
  width:min(780px,100%);
  max-width:none;
  padding:clamp(150px,18vh,220px) max(var(--bb-gutter),calc((100vw - var(--bb-container))/2)) clamp(72px,10vw,116px);
}
.hero-split .hero-media aside{z-index:3;right:max(var(--bb-gutter),calc((100vw - var(--bb-container))/2));left:auto;bottom:clamp(28px,5vw,54px);}
.hero-split .hero-copy h1,.hero-fullscreen .hero-copy h1{max-width:11ch;text-wrap:balance;}
.hero-split .hero-copy>p,.hero-fullscreen .hero-copy>p{max-width:62ch;}

/* Stable, deliberate card proportions. */
.service-grid{width:min(100%,var(--bb-container));margin-inline:auto;display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:clamp(18px,2vw,26px);}
.service-card{grid-column:span 4;min-width:0;min-height:270px;padding:var(--bb-card-pad);border-radius:var(--bb-card-radius);display:flex;flex-direction:column;overflow:hidden;}
.service-card h3{max-width:20ch;line-height:1.16;}
.service-card p{max-width:52ch;}
.service-card a{margin-top:auto;}
.services-bento .service-card:nth-child(1),.services-bento .service-card:nth-child(4),.services-spotlight .service-card:first-child{grid-column:span 8;}
.gallery-grid,.gallery-bento,.gallery-story,.image-carousel{width:min(100%,var(--bb-container));margin-inline:auto;}
.gallery-grid{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:clamp(16px,2vw,24px);}
.gallery-grid .gallery-item{grid-column:span 4;aspect-ratio:4/3;min-height:0;}
.gallery-item img{width:100%;height:100%;object-fit:cover;}
.faq,.testimonials,.about{width:min(100%,var(--bb-container));margin-inline:auto;}

/* Footer uses named areas so every variant can safely render four children. */
.site-footer,.site-footer.footer-compact,.site-footer.footer-contact,.site-footer.footer-mega,.site-footer.footer-statement,.site-footer.footer-social{
  display:grid;
  grid-template-columns:minmax(0,1.35fr) minmax(150px,.55fr) minmax(220px,.8fr);
  grid-template-areas:"brand links contact" "legal legal legal";
  align-items:start;
  width:100%;
  gap:clamp(32px,5vw,72px);
  padding:clamp(58px,7vw,86px) max(var(--bb-gutter),calc((100vw - var(--bb-container))/2)) 34px;
}
.site-footer>.footer-brand{grid-area:brand;max-width:560px;}
.site-footer>.footer-links{grid-area:links;}
.site-footer>.footer-contact{grid-area:contact;display:block;}
.site-footer>.footer-legal{grid-area:legal;width:100%;margin:8px 0 0;}
.site-footer.footer-signature{display:grid;grid-template-columns:1fr;grid-template-areas:"brand" "links" "contact" "legal";justify-items:center;text-align:center;}
.site-footer.footer-signature>.footer-brand,.site-footer.footer-signature>.footer-contact{max-width:680px;}

@media(max-width:1000px){
  .site-header,.site-header.nav-split,.site-header.nav-centered,.site-header.nav-boxed{grid-template-columns:minmax(0,1fr) auto;}
  .site-header>.brand{grid-column:1;}.site-header>.menu-toggle{grid-column:2;justify-self:end;}.site-header>nav{grid-column:1/-1;}.site-header>.nav-cta{display:none;}
  .service-card,.services-bento .service-card:nth-child(1),.services-bento .service-card:nth-child(4),.services-spotlight .service-card:first-child{grid-column:span 6;}
  .site-footer,.site-footer.footer-compact,.site-footer.footer-contact,.site-footer.footer-mega,.site-footer.footer-statement,.site-footer.footer-social{grid-template-columns:1fr 1fr;grid-template-areas:"brand brand" "links contact" "legal legal";}
}
@media(max-width:680px){
  .hero-split{min-height:720px;}
  .hero-split .hero-copy{padding:130px 20px 68px;}
  .hero-split .hero-media aside{display:none;}
  .service-grid,.gallery-grid{grid-template-columns:1fr;}
  .service-card,.services-bento .service-card:nth-child(1),.services-bento .service-card:nth-child(4),.services-spotlight .service-card:first-child,.gallery-grid .gallery-item{grid-column:1;min-height:0;}
  .site-footer,.site-footer.footer-compact,.site-footer.footer-contact,.site-footer.footer-mega,.site-footer.footer-statement,.site-footer.footer-social{grid-template-columns:1fr;grid-template-areas:"brand" "links" "contact" "legal";}
}

/* Refined composition and CTA hierarchy */
body{font-size:clamp(15.5px,.2vw + 15px,17px);line-height:1.7;}
.hero-copy{display:flex;flex-direction:column;align-items:flex-start;gap:0;}
.hero-actions,.contact-actions,.cta>div:last-child{display:flex;align-items:center;flex-wrap:wrap;gap:12px;}
.hero-actions{margin-top:clamp(26px,3vw,38px);}
.hero-actions .btn,.cta .btn,.contact-actions .btn{min-width:0;padding-inline:clamp(20px,2.5vw,30px);}
.contact-actions-full{margin-top:26px;}
.contact-actions-full .btn{flex:0 1 auto;}
.nav-cta{padding:12px 20px;border-radius:999px;}
.sticky-call{display:none;}
.section-head{grid-template-columns:minmax(0,1.05fr) minmax(280px,.7fr);gap:clamp(28px,5vw,72px);}
.section-head h2{margin-bottom:0;}
.about{gap:clamp(40px,7vw,96px);align-items:center;}
.about-copy{max-width:650px;}
.about figure{border-radius:var(--bb-card-radius);overflow:hidden;box-shadow:0 28px 80px rgba(15,20,30,.12);}
.service-card{background:color-mix(in srgb,var(--light) 94%,var(--primary) 6%);border:1px solid color-mix(in srgb,var(--dark) 10%,transparent);box-shadow:0 16px 44px rgba(15,20,30,.07);transition:transform .25s ease,box-shadow .25s ease,border-color .25s ease;}
.service-card:hover{transform:translateY(-5px);box-shadow:0 24px 58px rgba(15,20,30,.11);border-color:color-mix(in srgb,var(--primary) 32%,transparent);}
.service-card a{font-weight:700;text-decoration:none;}
.gallery-item{border-radius:var(--bb-card-radius);overflow:hidden;box-shadow:0 16px 44px rgba(15,20,30,.09);}
.faq details,.quote-stack blockquote,.map-card,.contact-placeholder>div{border-radius:var(--bb-card-radius);}
.cta{min-height:420px;display:grid;grid-template-columns:minmax(0,1.1fr) auto;align-items:center;gap:clamp(32px,6vw,90px);}
.cta>div:first-child{max-width:720px;}
.cta>div:last-child{justify-content:flex-end;}
.page-hero{min-height:clamp(430px,58vh,620px);display:flex;flex-direction:column;justify-content:flex-end;}
.page-hero>p:last-child{max-width:720px;}
@media(max-width:1000px){
  .cta{grid-template-columns:1fr;min-height:0;}
  .cta>div:last-child{justify-content:flex-start;}
}
@media(max-width:680px){
  .hero-actions,.contact-actions,.cta>div:last-child{width:100%;}
  .hero-actions .btn,.contact-actions .btn,.cta .btn{width:100%;flex:1 1 100%;}
  .sticky-call{display:block;position:fixed;right:16px;bottom:16px;z-index:80;padding:13px 19px;border-radius:999px;box-shadow:0 16px 40px rgba(0,0,0,.22);}
  .section-head{gap:18px;}
  .service-card:hover{transform:none;}
}



/* BlitzBoom Adaptive Layout & CSS Engine v5.29 */
:root{
  --bb-shell:min(100% - 2 * clamp(18px,4vw,52px),1200px);
  --bb-readable:64ch;
  --bb-space-1:clamp(.5rem,.35rem + .4vw,.8rem);
  --bb-space-2:clamp(.85rem,.65rem + .65vw,1.3rem);
  --bb-space-3:clamp(1.25rem,.9rem + 1.1vw,2rem);
  --bb-space-4:clamp(2rem,1.35rem + 2vw,3.6rem);
  --bb-space-5:clamp(3.8rem,2.4rem + 4vw,7.5rem);
  --bb-shadow-sm:0 10px 30px rgba(11,17,28,.06);
  --bb-shadow-md:0 22px 60px rgba(11,17,28,.10);
  --bb-border:rgba(20,28,42,.11);
}
.bb-adaptive-layout{font-optical-sizing:auto;text-rendering:optimizeLegibility;}
.bb-adaptive-layout :where(.section>*,.page-hero>*,.cta>*){min-width:0;}
.bb-adaptive-layout :where(p,li){text-wrap:pretty;}
.bb-adaptive-layout :where(h1,h2,h3){text-wrap:balance;overflow-wrap:anywhere;}
.bb-adaptive-layout .section-head,
.bb-adaptive-layout .about,
.bb-adaptive-layout .service-grid,
.bb-adaptive-layout .faq,
.bb-adaptive-layout .testimonials,
.bb-adaptive-layout .gallery-grid,
.bb-adaptive-layout .gallery-bento,
.bb-adaptive-layout .gallery-story,
.bb-adaptive-layout .gallery-masonry,
.bb-adaptive-layout .image-carousel{width:var(--bb-shell);max-width:none;margin-inline:auto;}
.bb-adaptive-layout .section-head{display:grid;grid-template-columns:minmax(0,1fr) minmax(18rem,.52fr);align-items:end;gap:var(--bb-space-4);}
.bb-adaptive-layout .section-head>p{max-width:var(--bb-readable);margin-bottom:.2rem;color:var(--muted);}
.bb-adaptive-layout .section-head h2{font-size:clamp(2.35rem,4.7vw,5.2rem);max-width:15ch;}
.bb-adaptive-layout .page-hero h1{font-size:clamp(3rem,6.4vw,6.8rem);max-width:13ch;}
.bb-adaptive-layout .hero-copy h1{font-size:clamp(3.25rem,7.2vw,7.4rem);}
.bb-adaptive-layout .hero-copy>p{font-size:clamp(1rem,.82rem + .55vw,1.3rem);line-height:1.65;}

/* Content rhythm: prevent giant empty panels and cramped stacks. */
.bb-adaptive-layout .section{padding-block:var(--bb-space-5);}
.bb-adaptive-layout .section+.section{border-top:1px solid color-mix(in srgb,var(--dark) 7%,transparent);}
.bb-adaptive-layout .about{grid-template-columns:minmax(0,1fr) minmax(320px,.78fr);gap:clamp(2.5rem,7vw,6.8rem);}
.bb-adaptive-layout .about>.section-number{position:absolute;inline-size:1px;block-size:1px;overflow:hidden;clip:rect(0 0 0 0);}
.bb-adaptive-layout .about-copy p{max-width:var(--bb-readable);}
.bb-adaptive-layout .about figure{margin:0;min-height:0;}
.bb-adaptive-layout .about figure img{display:block;aspect-ratio:4/3;max-height:620px;}

/* Count-aware service composition. */
.bb-adaptive-layout .service-grid{grid-template-columns:repeat(12,minmax(0,1fr));gap:clamp(1rem,2vw,1.65rem);align-items:stretch;}
.bb-adaptive-layout .service-grid[data-card-count="1"] .service-card{grid-column:3/span 8;}
.bb-adaptive-layout .service-grid[data-card-count="2"] .service-card{grid-column:span 6;}
.bb-adaptive-layout .service-grid[data-card-count="3"] .service-card{grid-column:span 4;}
.bb-adaptive-layout .service-grid[data-card-count="4"] .service-card{grid-column:span 6;}
.bb-adaptive-layout .service-grid[data-card-count="5"] .service-card,
.bb-adaptive-layout .service-grid[data-card-count="6"] .service-card{grid-column:span 4;}
.bb-adaptive-layout .service-grid[data-card-count="7"] .service-card,
.bb-adaptive-layout .service-grid[data-card-count="8"] .service-card,
.bb-adaptive-layout .service-grid[data-card-count="9"] .service-card,
.bb-adaptive-layout .service-grid[data-card-count="10"] .service-card,
.bb-adaptive-layout .service-grid[data-card-count="11"] .service-card,
.bb-adaptive-layout .service-grid[data-card-count="12"] .service-card{grid-column:span 4;}
.bb-adaptive-layout .service-card{height:100%;min-height:250px;padding:clamp(1.4rem,2.5vw,2.15rem);border:1px solid var(--bb-border);box-shadow:var(--bb-shadow-sm);}
.bb-adaptive-layout .service-card h3{font-size:clamp(1.25rem,1.05rem + .5vw,1.65rem);margin-bottom:.8rem;}
.bb-adaptive-layout .service-card p{font-size:.98em;line-height:1.7;}

/* Count-aware gallery: avoid huge stretched images when only a few exist. */
.bb-adaptive-layout .gallery-grid{grid-template-columns:repeat(12,minmax(0,1fr));gap:clamp(.9rem,1.8vw,1.5rem);}
.bb-adaptive-layout .gallery-grid .gallery-item{grid-column:span 4;aspect-ratio:4/3;}
.bb-adaptive-layout .gallery-grid[data-image-count="1"] .gallery-item{grid-column:2/span 10;aspect-ratio:16/9;}
.bb-adaptive-layout .gallery-grid[data-image-count="2"] .gallery-item{grid-column:span 6;aspect-ratio:4/3;}
.bb-adaptive-layout .gallery-grid[data-image-count="3"] .gallery-item{grid-column:span 4;}
.bb-adaptive-layout .gallery-grid[data-image-count="4"] .gallery-item{grid-column:span 6;}
.bb-adaptive-layout .gallery-item{background:#e9edf2;border:1px solid var(--bb-border);box-shadow:var(--bb-shadow-sm);}
.bb-adaptive-layout .gallery-item img{display:block;inline-size:100%;block-size:100%;object-fit:cover;}

/* Forms, contact panels and CTAs share one predictable proportion system. */
.bb-adaptive-layout :where(.map-card,.contact-placeholder>div,.quote-stack blockquote,.faq details){padding:clamp(1.25rem,2.4vw,2rem);border:1px solid var(--bb-border);box-shadow:var(--bb-shadow-sm);}
.bb-adaptive-layout .map-section{grid-template-columns:minmax(320px,.72fr) minmax(0,1.28fr);min-height:clamp(520px,64vh,720px);}
.bb-adaptive-layout .cta{padding-block:clamp(4rem,7vw,7rem);min-height:0;}
.bb-adaptive-layout .cta h2{font-size:clamp(2.4rem,4.8vw,5.1rem);max-width:14ch;}
.bb-adaptive-layout :where(.btn,.nav-cta,.social-link){max-width:100%;white-space:normal;text-align:center;line-height:1.2;}

/* Header remains one coherent bar on every wide viewport. */
.bb-adaptive-layout .site-header{min-height:76px;padding-block:clamp(.85rem,1.4vw,1.35rem);}
.bb-adaptive-layout .site-header nav{align-items:center;justify-content:center;flex-wrap:wrap;row-gap:.55rem;}
.bb-adaptive-layout .site-header nav a{padding:.45rem .15rem;}
.bb-adaptive-layout .brand span{max-width:24ch;line-height:1.15;}

/* Footer content stays aligned and never becomes five random columns. */
.bb-adaptive-layout .site-footer{align-content:start;}
.bb-adaptive-layout .footer-brand p{max-width:52ch;}
.bb-adaptive-layout .footer-links{display:grid;align-content:start;gap:.7rem;}
.bb-adaptive-layout .footer-contact{overflow-wrap:anywhere;}

@media (min-width:1500px){
  :root{--bb-shell:min(100% - 7vw,1280px);}
  .bb-adaptive-layout .hero-copy h1{font-size:clamp(4.5rem,6.3vw,8rem);}
}
@media (max-width:1000px){
  .bb-adaptive-layout .section-head{grid-template-columns:1fr;align-items:start;gap:1.25rem;}
  .bb-adaptive-layout .section-head h2{max-width:18ch;}
  .bb-adaptive-layout .about{grid-template-columns:1fr;}
  .bb-adaptive-layout .about figure{max-width:760px;}
  .bb-adaptive-layout .service-grid .service-card,
  .bb-adaptive-layout .service-grid[data-card-count] .service-card{grid-column:span 6;}
  .bb-adaptive-layout .map-section{grid-template-columns:1fr;min-height:0;}
  .bb-adaptive-layout .map-section iframe{min-height:420px;}
}
@media (max-width:680px){
  :root{--bb-shell:calc(100% - 36px);}
  .bb-adaptive-layout .section{padding-block:clamp(3.75rem,14vw,5.5rem);}
  .bb-adaptive-layout .hero-copy h1{font-size:clamp(2.75rem,13vw,4.8rem);line-height:.96;}
  .bb-adaptive-layout .page-hero h1{font-size:clamp(2.65rem,12vw,4.5rem);}
  .bb-adaptive-layout .service-grid .service-card,
  .bb-adaptive-layout .service-grid[data-card-count] .service-card,
  .bb-adaptive-layout .gallery-grid .gallery-item,
  .bb-adaptive-layout .gallery-grid[data-image-count] .gallery-item{grid-column:1/-1;}
  .bb-adaptive-layout .service-card{min-height:0;}
  .bb-adaptive-layout .gallery-grid .gallery-item{aspect-ratio:4/3;}
  .bb-adaptive-layout .map-section iframe{min-height:340px;}
  .bb-adaptive-layout .site-header{min-height:68px;}
}


/* BlitzBoom Export Design System v1 */
:root{--bb-container:min(1180px,calc(100vw - 40px));--bb-section:clamp(76px,8vw,128px);--bb-gap:clamp(18px,2vw,30px);--bb-card-radius:clamp(18px,1.8vw,28px);--bb-shadow:0 18px 55px rgba(15,23,42,.09);--bb-shadow-hover:0 28px 80px rgba(15,23,42,.14)}
body{font-size:clamp(15px,.2vw + 14px,18px);text-rendering:optimizeLegibility}
main>section:not(.hero):not(.stats-band):not(.cta):not(.map-section),.page-hero>*{margin-inline:auto}
.section{padding-block:var(--bb-section)}
.section-head,.about,.service-grid,.gallery-grid,.gallery-masonry,.gallery-filmstrip,.gallery-bento,.gallery-fullbleed,.gallery-polaroid,.gallery-story,.gallery-spotlight,.gallery-duo,.gallery-triptych,.image-carousel,.faq,.testimonials{margin-inline:auto}
.section-head{gap:clamp(24px,5vw,72px);margin-bottom:clamp(36px,5vw,68px)}
.section-head h2{max-width:15ch;text-wrap:balance}.section-head>p{max-width:58ch;color:var(--muted)}
.service-grid{gap:var(--bb-gap)}.service-card{position:relative;background:color-mix(in srgb,#fff 94%,var(--a));border:1px solid color-mix(in srgb,var(--line) 78%,transparent);box-shadow:0 1px 0 rgba(255,255,255,.8) inset;transition:transform .25s ease,box-shadow .25s ease,border-color .25s ease}.service-card:hover{transform:translateY(-5px);box-shadow:var(--bb-shadow-hover);border-color:color-mix(in srgb,var(--p) 35%,var(--line))}.service-card h3{font-size:clamp(1.3rem,1.7vw,1.8rem);text-wrap:balance}.service-card p{color:var(--muted)}
.about{gap:clamp(28px,5vw,80px)}.about-copy{max-width:720px}.about figure{box-shadow:var(--bb-shadow);border-radius:var(--bb-card-radius);overflow:hidden}.about figure img{border-radius:0}
.gallery-item{border-radius:var(--bb-card-radius);box-shadow:0 12px 36px rgba(15,23,42,.08);background:#eef2f6}.gallery-grid,.gallery-duo,.gallery-triptych,.gallery-bento{gap:var(--bb-gap)}
.faq details,.quote-stack blockquote,.contact-placeholder>div,.map-card{box-shadow:0 12px 40px rgba(15,23,42,.07);border:1px solid color-mix(in srgb,var(--line) 80%,transparent)}
.hero-actions,.contact-actions,.cta>div:last-child{display:flex;gap:12px;flex-wrap:wrap}.btn,.nav-cta,.contact-actions a{font-size:.95rem;letter-spacing:-.01em;box-shadow:0 8px 24px rgba(15,23,42,.08);transition:transform .2s ease,box-shadow .2s ease,filter .2s ease}.btn:hover,.nav-cta:hover,.contact-actions a:hover{transform:translateY(-2px);box-shadow:0 14px 34px rgba(15,23,42,.14);filter:saturate(1.05)}
.whatsapp-btn{background:#25D366!important;color:#071d10!important;border-color:#25D366!important}.whatsapp-btn span{font-size:1.05em}.whatsapp-btn:hover{background:#20bd5b!important}
.site-footer{padding-top:clamp(56px,7vw,92px);padding-bottom:clamp(36px,5vw,64px)}
@media(min-width:1440px){.hero-copy{max-width:820px}.hero h1{font-size:clamp(4.5rem,6.4vw,7.4rem)}.section{padding-inline:max(24px,calc((100vw - 1320px)/2))}}
@media(max-width:900px){:root{--bb-container:min(100% - 32px,760px)}.section-head{grid-template-columns:1fr}.section-head h2{max-width:18ch}.hero-actions .btn,.contact-actions a{flex:0 1 auto}}
@media(max-width:620px){:root{--bb-section:68px;--bb-gap:16px}.section{padding-inline:16px}.service-card{padding:24px}.hero-actions,.contact-actions,.cta>div:last-child{width:100%}.hero-actions .btn,.contact-actions a,.cta .btn{width:100%;flex:1 1 100%}.site-header .brand span{max-width:58vw}}
@media(prefers-reduced-motion:reduce){.service-card,.btn,.nav-cta,.contact-actions a{transition:none!important}.service-card:hover,.btn:hover,.nav-cta:hover,.contact-actions a:hover{transform:none!important}}


/* BlitzBoom Structural Variation Engine bb-arch-bdzrz2 */
:root{
  --bb-architecture:"bb-arch-bdzrz2";
  --bb-content:1120px;
  --bb-section:104px;
  --bb-card-radius:8px;
  --bb-button-radius:8px;
  --bb-density:comfortable;
}
body[class*="architecture-"]{--content-max:var(--bb-content);--container:min(var(--bb-content),calc(100vw - 48px));--section-space:clamp(calc(var(--bb-section)*.68),8vw,var(--bb-section))}
body[class*="architecture-"] main>section:not(.hero):not(.stats-band):not(.cta):not(.map-section){padding-inline:max(24px,calc((100vw - var(--bb-content))/2))}
body[class*="architecture-"] .section{padding-inline:max(24px,calc((100vw - var(--bb-content))/2))}
.header-shell{width:min(var(--bb-content),100%);margin:auto;display:flex;align-items:center;gap:clamp(18px,2.6vw,38px);min-width:0}
.header-family-center-stack .header-shell{flex-direction:column;justify-content:center;padding-block:14px}.header-family-center-stack .header-brand-row{display:flex;align-items:center;justify-content:center;width:100%}.header-family-center-stack nav{order:2}.header-family-center-stack .nav-cta{position:absolute;right:max(20px,calc((100vw - var(--bb-content))/2))}
.header-family-floating-pill{background:transparent!important;box-shadow:none!important}.header-family-floating-pill .header-shell{background:var(--dark);color:#fff;border-radius:999px;padding:12px 16px 12px 22px;box-shadow:0 20px 60px rgba(0,0,0,.2)}
.header-family-editorial .header-shell{align-items:flex-end;border-bottom:1px solid currentColor;padding-bottom:16px}.header-family-editorial .brand span{font-family:'Playfair Display',serif;font-size:clamp(1.25rem,2vw,2rem)}.header-family-editorial .header-nav-cluster{margin-left:auto;display:flex;align-items:center;gap:28px}
.header-family-utility-bar{display:block;padding-top:0}.header-family-utility-bar .header-utility{display:flex;justify-content:space-between;padding:8px max(20px,calc((100vw - var(--bb-content))/2));font-size:.74rem;text-transform:uppercase;letter-spacing:.14em;background:var(--p);color:#fff}.header-family-utility-bar .header-shell{min-height:76px}
.header-family-asymmetric .header-shell{display:grid;grid-template-columns:minmax(180px,.7fr) minmax(0,1.5fr) auto}.header-family-asymmetric nav{justify-self:center}.header-family-asymmetric .header-action-cluster{display:flex;align-items:center;gap:12px}
.header-family-brand-stage .header-shell{justify-content:center}.header-family-brand-stage .brand{margin-right:auto}.header-family-brand-stage nav{position:absolute;left:50%;transform:translateX(-50%)}
.header-family-minimal-line{background:transparent!important;box-shadow:none!important;border-bottom:1px solid color-mix(in srgb,currentColor 18%,transparent)}
.header-family-boxed .header-shell{border:1px solid color-mix(in srgb,currentColor 16%,transparent);padding:12px 18px;border-radius:calc(var(--bb-card-radius) + 4px);background:color-mix(in srgb,var(--light) 92%,transparent);backdrop-filter:blur(18px)}
.header-family-hospitality .header-shell{display:grid;grid-template-columns:1fr auto 1fr}.header-family-hospitality .brand{grid-column:2}.header-family-hospitality nav{grid-column:1;grid-row:1;justify-self:start}.header-family-hospitality .nav-cta{grid-column:3;grid-row:1;justify-self:end}
.hero-family-cinematic,.hero-family-immersive{min-height:min(960px,100svh)}.hero-family-cinematic .hero-copy,.hero-family-immersive .hero-copy{max-width:820px}
.hero-family-editorial{min-height:auto!important;padding-top:clamp(160px,18vw,260px)!important;padding-bottom:clamp(90px,12vw,180px)!important}.hero-family-editorial h1{font-size:clamp(4rem,10vw,9rem)!important;max-width:12ch!important;line-height:.84!important}.hero-family-editorial .hero-copy>p{margin-left:auto;max-width:48ch}
.hero-family-offset-media .hero-media{transform:translateY(6%);border-radius:var(--bb-card-radius) 0 0 var(--bb-card-radius)}
.hero-family-poster .hero-copy{padding:clamp(28px,5vw,68px);background:color-mix(in srgb,var(--light) 88%,transparent);backdrop-filter:blur(20px);border-radius:var(--bb-card-radius);box-shadow:0 30px 90px rgba(0,0,0,.15)}
.hero-family-panorama .hero-media,.hero-family-panorama .collage{aspect-ratio:21/9;min-height:0}
.hero-family-bento{gap:18px}.hero-family-bento .hero-media,.hero-family-bento .collage{border-radius:var(--bb-card-radius);box-shadow:0 24px 80px rgba(0,0,0,.14)}
.rhythm-compact{--section-space:clamp(58px,7vw,92px)}.rhythm-airy{--section-space:clamp(92px,11vw,156px)}.rhythm-dynamic main>section:nth-of-type(even){background:color-mix(in srgb,var(--light) 86%,var(--s))}.rhythm-editorial .section-head{grid-template-columns:minmax(0,1.45fr) minmax(260px,.55fr)}
.cards-flat .service-card,.cards-flat .faq details,.cards-flat .quote-stack blockquote{box-shadow:none;border-color:transparent}.cards-outlined .service-card,.cards-outlined .faq details,.cards-outlined .quote-stack blockquote{box-shadow:none;border:1px solid color-mix(in srgb,var(--dark) 18%,transparent)}.cards-glass .service-card,.cards-glass .faq details,.cards-glass .quote-stack blockquote{background:color-mix(in srgb,#fff 72%,transparent);backdrop-filter:blur(18px)}.cards-editorial .service-card{border-radius:0;border-width:0 0 1px;box-shadow:none;padding-inline:0}.cards-elevated .service-card{box-shadow:0 30px 75px rgba(15,20,30,.14)}
.service-card,.faq details,.quote-stack blockquote,.contact-placeholder>div,.map-card,.gallery-item{border-radius:var(--bb-card-radius)!important}.btn,.nav-cta,.contact-actions a{border-radius:var(--bb-button-radius)!important}
.images-square .gallery-item,.images-square .about figure{border-radius:0!important}.images-arch .gallery-item,.images-arch .about figure{border-radius:999px 999px var(--bb-card-radius) var(--bb-card-radius)!important}.images-cut-corner .gallery-item,.images-cut-corner .about figure{clip-path:polygon(0 0,calc(100% - 38px) 0,100% 38px,100% 100%,0 100%)}.images-frame .gallery-item,.images-frame .about figure{padding:10px;background:#fff;box-shadow:0 24px 70px rgba(0,0,0,.12)}.images-edge-to-edge .gallery-grid,.images-edge-to-edge .gallery-masonry{width:100%;max-width:none}
.footer-main{width:min(var(--bb-content),100%);margin:auto}.footer-main-grid{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(150px,.55fr) minmax(220px,.75fr);gap:clamp(28px,5vw,78px)}.footer-main-centered{text-align:center;display:grid;justify-items:center;gap:28px}.footer-main-centered .footer-links{flex-direction:row;flex-wrap:wrap;justify-content:center}.footer-main-contact{display:grid;grid-template-columns:minmax(220px,.9fr) minmax(0,1.3fr) minmax(140px,.5fr);gap:clamp(28px,5vw,76px)}.footer-main-editorial{display:grid;grid-template-columns:minmax(0,1.65fr) minmax(280px,.65fr);gap:clamp(40px,8vw,120px)}.footer-main-editorial .footer-brand .brand span{font-size:clamp(2.4rem,6vw,6.6rem);line-height:.88}.footer-side{display:grid;gap:32px}.footer-main-minimal{display:flex;align-items:center;justify-content:space-between;gap:30px}.footer-main-minimal .footer-links{flex-direction:row;flex-wrap:wrap}.site-footer .footer-legal{width:min(var(--bb-content),100%);margin-inline:auto;margin-top:36px}
.footer-family-brand-wall .footer-main-editorial{grid-template-columns:1fr}.footer-family-brand-wall .footer-side{grid-template-columns:1fr 1fr}.footer-family-signature,.footer-family-centered{text-align:center}.footer-family-location{border-top:10px solid var(--p)}
@media(max-width:950px){.header-shell,.header-family-asymmetric .header-shell,.header-family-hospitality .header-shell{display:flex}.header-family-center-stack .nav-cta{position:static}.header-family-brand-stage nav{position:static;transform:none}.header-family-hospitality .brand{order:0}.header-family-hospitality nav{order:2}.footer-main-grid,.footer-main-contact,.footer-main-editorial{grid-template-columns:1fr}.footer-main-minimal{display:grid}.footer-family-brand-wall .footer-side{grid-template-columns:1fr}}
@media(max-width:600px){body[class*="architecture-"]{--container:calc(100vw - 32px)}.header-family-floating-pill .header-shell{border-radius:22px}.header-family-center-stack .header-shell{align-items:flex-start}.hero-family-editorial h1{font-size:clamp(3rem,15vw,5.3rem)!important}.footer-main-grid,.footer-main-contact,.footer-main-editorial,.footer-main-minimal{gap:24px}.footer-main-centered .footer-links,.footer-main-minimal .footer-links{flex-direction:column}}

/* BlitzBoom Section Choreography Engine bb-choreo-1d86lax */
main>section{position:relative}.alternation-soft main>section:nth-of-type(even){background:color-mix(in srgb,var(--light) 82%,white)}.alternation-strong main>section:nth-of-type(even){background:color-mix(in srgb,var(--p) 7%,var(--light))}
.transition-rule main>section+section:before{content:"";position:absolute;top:0;left:50%;width:min(1180px,84vw);height:1px;transform:translateX(-50%);background:color-mix(in srgb,var(--dark) 14%,transparent)}
.transition-numbered main>section[data-section-index]:before{content:attr(data-section-index);position:absolute;top:24px;left:max(22px,calc((100vw - var(--bb-container,1180px))/2));font:700 .72rem/1 monospace;letter-spacing:.16em;opacity:.38}
.transition-overlap main>section+section{margin-top:-28px;border-radius:28px 28px 0 0}.transition-tint main>section:nth-of-type(3n){background:color-mix(in srgb,var(--a) 16%,white)}
.choreo-about-statement.about{display:block;max-width:980px;margin-inline:auto;text-align:center}.choreo-about-statement .about-media{margin-top:48px}.choreo-about-image-led.about{grid-template-columns:minmax(0,1.35fr) minmax(300px,.65fr)}.choreo-about-editorial.about{grid-template-columns:.75fr 1.25fr}.choreo-about-timeline .about-copy{border-left:3px solid var(--p);padding-left:clamp(24px,4vw,54px)}
.choreo-services-numbered .service-card{counter-increment:svc}.choreo-services-numbered{counter-reset:svc}.choreo-services-numbered .service-card:before{content:counter(svc,decimal-leading-zero);display:block;font:700 .75rem/1 monospace;letter-spacing:.12em;opacity:.48;margin-bottom:28px}.choreo-services-editorial-list{grid-template-columns:1fr}.choreo-services-editorial-list .service-card{display:grid;grid-template-columns:minmax(140px,.45fr) 1.55fr;gap:36px;border-radius:0;border-width:0 0 1px;padding-inline:0}.choreo-services-bento .service-card:nth-child(3n+1){grid-column:span 2}.choreo-services-spotlight .service-card:first-child{grid-column:1/-1;min-height:300px;display:flex;flex-direction:column;justify-content:flex-end}
.choreo-gallery-story .gallery-item:nth-child(even){margin-left:auto}.choreo-gallery-story .gallery-item{width:min(82%,760px)}.choreo-gallery-filmstrip{display:grid;grid-auto-flow:column;grid-auto-columns:minmax(280px,42vw);overflow-x:auto;scroll-snap-type:x mandatory;padding-bottom:20px}.choreo-gallery-filmstrip>*{scroll-snap-align:start}.choreo-gallery-spotlight .gallery-item:first-child{grid-column:1/-1}.choreo-gallery-spotlight .gallery-item:first-child img{height:clamp(440px,62vw,760px)}
.choreo-testimonials-quote-stage{max-width:920px;margin-inline:auto;text-align:center}.choreo-testimonials-quote-stage blockquote,.choreo-testimonials-single-feature blockquote{font-size:clamp(1.45rem,3vw,2.8rem);line-height:1.24}.choreo-testimonials-stack>*+*{margin-top:18px}.choreo-testimonials-editorial{border-left:8px solid var(--p);padding-left:clamp(28px,5vw,72px)}
.choreo-faq-split{display:grid;grid-template-columns:.65fr 1.35fr;gap:clamp(36px,7vw,100px)}.choreo-faq-cards details{border:1px solid color-mix(in srgb,var(--dark) 12%,transparent);border-radius:18px;padding:20px}.choreo-faq-index details{counter-increment:faq}.choreo-faq-index{counter-reset:faq}.choreo-faq-index summary:before{content:counter(faq,decimal-leading-zero);font-family:monospace;margin-right:18px;opacity:.5}
.choreo-contact-location-led{grid-template-columns:1.4fr .6fr}.choreo-contact-contact-card{background:var(--dark);color:#fff;border-radius:var(--bb-card-radius,24px);padding:clamp(28px,5vw,70px)}.choreo-contact-minimal{display:block;max-width:900px;margin-inline:auto}.choreo-contact-booking{border:1px solid color-mix(in srgb,var(--p) 28%,transparent);box-shadow:0 28px 80px rgba(0,0,0,.08)}
.choreo-cta-statement{text-align:center;display:block}.choreo-cta-statement h2{font-size:clamp(2.4rem,7vw,6.5rem);max-width:11ch;margin-inline:auto}.choreo-cta-floating-card{width:min(1100px,calc(100% - 40px));margin-inline:auto;border-radius:28px;transform:translateY(28px);z-index:2}.choreo-cta-split{display:grid;grid-template-columns:1.2fr auto;align-items:center}.choreo-cta-minimal{background:transparent!important;color:var(--dark)!important;border-block:1px solid color-mix(in srgb,var(--dark) 15%,transparent)}
@media(max-width:800px){.choreo-about-image-led.about,.choreo-about-editorial.about,.choreo-faq-split,.choreo-contact-location-led,.choreo-cta-split{grid-template-columns:1fr}.choreo-services-editorial-list .service-card{grid-template-columns:1fr;gap:12px}.choreo-services-bento .service-card:nth-child(3n+1){grid-column:auto}.transition-overlap main>section+section{margin-top:0;border-radius:0}.choreo-gallery-filmstrip{grid-auto-columns:86vw}}

/* BlitzBoom POPIA & Consent Engine */
.legal-links{grid-column:1/-1;display:flex;flex-wrap:wrap;gap:.65rem 1.1rem;align-items:center;margin-top:1rem}.legal-links a,.privacy-settings-link{color:inherit;font:inherit;font-size:.88rem;text-decoration:underline;text-underline-offset:.22em;background:none;border:0;padding:0;cursor:pointer}.legal-shell{width:min(920px,calc(100% - 32px));margin:auto;padding:clamp(90px,10vw,150px) 0}.legal-back{display:inline-block;margin-bottom:2rem}.legal-document{background:#fff;border:1px solid var(--line);border-radius:var(--panel-radius,24px);padding:clamp(28px,5vw,64px);box-shadow:var(--shadow-sm,0 15px 50px rgba(0,0,0,.08))}.legal-document h1{font-size:clamp(2.5rem,7vw,5rem)}.legal-document h2{font-size:clamp(1.5rem,3vw,2.3rem);margin-top:2.4rem}.legal-document h3{margin-top:1.6rem}.legal-document li{margin:.5rem 0}.legal-updated{color:var(--muted)}.legal-contact{margin-top:3rem;padding-top:1.5rem;border-top:1px solid var(--line)}
.popia-consent{margin:1.25rem 0;padding:1rem 1.1rem;border:1px solid var(--line);border-radius:14px;background:rgba(255,255,255,.72)}.popia-consent label{display:flex;align-items:flex-start;gap:.75rem}.popia-consent input{width:1.2rem;height:1.2rem;margin-top:.2rem;flex:0 0 auto}.form-consent-error{color:#a41414;font-weight:700;margin:.65rem 0 0}
.consent-embed{position:relative;min-height:420px;background:#eef1f4}.consent-embed iframe{display:none;width:100%;height:100%;min-height:420px;border:0}.consent-embed.is-consented iframe{display:block}.consent-embed.is-consented .consent-embed-placeholder{display:none}.consent-embed-placeholder{position:absolute;inset:0;display:grid;place-content:center;text-align:center;padding:2rem}.consent-embed-placeholder p{max-width:46ch;margin:.3rem auto}
.consent-banner,.consent-modal{position:fixed;z-index:9999}.consent-banner{left:18px;right:18px;bottom:18px;margin:auto;width:min(1040px,calc(100% - 36px));padding:clamp(22px,3vw,34px);background:var(--dark,#111);color:#fff;border:1px solid rgba(255,255,255,.16);border-radius:22px;box-shadow:0 24px 90px rgba(0,0,0,.38)}.consent-banner[hidden],.consent-modal[hidden]{display:none!important}.consent-banner h2{font-size:clamp(1.35rem,3vw,2.1rem);letter-spacing:-.03em;margin-bottom:.55rem}.consent-actions{display:flex;flex-wrap:wrap;gap:.65rem;margin-top:1.2rem}.consent-reject,.consent-manage{border-color:rgba(255,255,255,.35);background:transparent;color:inherit}.consent-modal{inset:0;display:grid;place-items:center;padding:18px;background:rgba(5,8,12,.68);backdrop-filter:blur(8px)}.consent-panel{position:relative;width:min(620px,100%);max-height:90vh;overflow:auto;background:var(--light,#fff);color:var(--ink,#111);border-radius:24px;padding:clamp(24px,5vw,46px);box-shadow:0 30px 100px rgba(0,0,0,.35)}.consent-close{position:absolute;right:16px;top:12px;border:0;background:none;font-size:2rem;cursor:pointer}.consent-option{display:flex;justify-content:space-between;gap:1rem;align-items:center;padding:1rem 0;border-bottom:1px solid var(--line)}.consent-option span{display:grid}.consent-option small{color:var(--muted);margin-top:.3rem}.consent-option input{width:1.35rem;height:1.35rem}.consent-panel .consent-reject{color:var(--ink);border-color:var(--line)}
@media(max-width:620px){.consent-banner{left:10px;right:10px;bottom:10px;width:calc(100% - 20px)}.consent-actions .btn{width:100%}.legal-links{flex-direction:column;align-items:flex-start}}


/* BlitzBoom Proportional Services & Media Engine v5.37 */
.bb-proportional-media img{display:block;max-inline-size:100%;height:auto}
.bb-proportional-media :where(.hero-media,.collage,.about figure,.gallery-item,.gallery-media-frame,.image-carousel>*){overflow:hidden}
.bb-proportional-media .hero-media img{inline-size:100%;block-size:100%;min-height:0;max-height:min(72vh,720px);aspect-ratio:6/5;object-fit:cover;object-position:center}
.bb-proportional-media .collage img{inline-size:100%;block-size:100%;max-height:620px;object-fit:cover;object-position:center}
.bb-proportional-media .about figure img{inline-size:100%;block-size:auto;max-height:560px;aspect-ratio:4/3;object-fit:cover;object-position:center}
.bb-proportional-media .gallery-item,.bb-proportional-media .gallery-media-frame{min-height:0;max-height:620px}
.bb-proportional-media .gallery-item img,.bb-proportional-media .gallery-media-frame img{inline-size:100%!important;block-size:100%!important;min-height:0;max-height:620px;aspect-ratio:4/3;object-fit:cover!important;object-position:center!important}
.bb-proportional-media .gallery-filmstrip .gallery-item,.bb-proportional-media .image-carousel .gallery-item{height:clamp(260px,34vw,440px)}
.bb-proportional-media .gallery-filmstrip img,.bb-proportional-media .image-carousel img{aspect-ratio:auto}
.bb-proportional-media .brand-logo{inline-size:auto!important;block-size:auto!important;max-inline-size:min(var(--bb-logo-max,250px),100%)!important;max-block-size:72px!important;object-fit:contain!important}

/* Dedicated Services pages must feel useful, not oversized. */
.bb-services-page .page-hero{min-height:clamp(300px,42vh,500px)}
.bb-services-page #services.section{padding-block:clamp(56px,7vw,96px)}
.bb-services-page #services .section-head{margin-bottom:clamp(24px,4vw,48px)}
.bb-services-page #services .section-head h2{font-size:clamp(2.1rem,4.2vw,4.4rem);max-width:16ch}
.bb-services-page #services .service-grid{width:min(1120px,calc(100% - 36px));grid-template-columns:repeat(12,minmax(0,1fr));gap:clamp(14px,1.8vw,24px);align-items:start}
.bb-services-page #services .service-card,
.bb-services-page #services .service-grid[data-card-count] .service-card{grid-column:span 4;min-height:0!important;height:auto!important;max-width:100%;padding:clamp(20px,2.2vw,30px)!important;display:flex;flex-direction:column;justify-content:flex-start;gap:0}
.bb-services-page #services .service-card>span{margin-bottom:clamp(16px,2vw,24px)}
.bb-services-page #services .service-card h3{font-size:clamp(1.12rem,1.1rem + .35vw,1.48rem)!important;line-height:1.2;margin:0 0 .65rem;max-width:22ch}
.bb-services-page #services .service-card p{font-size:clamp(.92rem,.89rem + .15vw,1rem)!important;line-height:1.58;margin:0 0 1.15rem;max-width:52ch}
.bb-services-page #services .service-card a{margin-top:auto;font-size:.92rem}
.bb-services-page #services .service-grid[data-card-count="1"] .service-card{grid-column:4/span 6}
.bb-services-page #services .service-grid[data-card-count="2"] .service-card{grid-column:span 6}
.bb-services-page #services .service-grid[data-card-count="4"] .service-card{grid-column:span 6}
.bb-services-page #services .choreo-services-spotlight .service-card:first-child,
.bb-services-page #services .si-services-spotlight .service-card:first-child{min-height:0!important;padding:clamp(24px,3vw,38px)!important}
.bb-services-page #services .choreo-services-bento .service-card:nth-child(3n+1){grid-column:span 4}
@media(max-width:980px){
 .bb-services-page #services .service-card,.bb-services-page #services .service-grid[data-card-count] .service-card{grid-column:span 6}
 .bb-proportional-media .hero-media img{max-height:580px;aspect-ratio:4/3}
}
@media(max-width:680px){
 .bb-services-page #services .service-grid{width:calc(100% - 32px);gap:14px}
 .bb-services-page #services .service-card,.bb-services-page #services .service-grid[data-card-count] .service-card{grid-column:1/-1;padding:20px!important}
 .bb-services-page #services .service-card h3{font-size:1.22rem!important}
 .bb-proportional-media .hero-media img,.bb-proportional-media .about figure img{max-height:420px;aspect-ratio:4/3}
 .bb-proportional-media .gallery-item,.bb-proportional-media .gallery-media-frame{max-height:460px}
 .bb-proportional-media .gallery-item img,.bb-proportional-media .gallery-media-frame img{max-height:460px}
 .bb-proportional-media .brand-logo{max-block-size:58px!important}
}

/* BlitzBoom Accessibility, Interaction & Conversion Intelligence v1 */
.skip-link{position:fixed;left:16px;top:12px;z-index:10050;padding:.8rem 1rem;border-radius:10px;background:#fff;color:#111;font-weight:800;box-shadow:0 10px 34px rgba(0,0,0,.24);transform:translateY(-180%);transition:transform .18s ease}.skip-link:focus{transform:none}
:where(a,button,input,textarea,select,summary,[tabindex]):focus-visible{outline:3px solid currentColor;outline-offset:4px}
:where(.btn,.nav-cta,.menu-toggle,.contact-actions a,.privacy-settings-link,[data-slide]){min-width:44px;min-height:44px}
button,[role="button"],summary{touch-action:manipulation}.menu-toggle{display:inline-grid;place-items:center}
form :where(input,textarea,select){font:inherit;max-width:100%}form input:not([type="checkbox"]):not([type="radio"]),form textarea,form select{min-height:48px}form textarea{min-height:132px;resize:vertical}
.image-carousel:focus-visible{outline:3px solid currentColor;outline-offset:6px}.carousel-controls{display:flex;gap:.65rem}.carousel-controls button{display:grid;place-items:center}
.hero-actions,.contact-actions,.cta-actions{align-items:center}.hero-actions .btn:first-child,.cta-actions .btn:first-child{font-weight:800}
@media(max-width:680px){:where(.btn,.nav-cta,.contact-actions a,.consent-actions button){min-height:48px}.hero-actions,.contact-actions,.cta-actions{gap:10px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto!important}*,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}.reveal{opacity:1!important;transform:none!important}}
@media(prefers-contrast:more){:where(.btn,.service-card,.faq details,.legal-document){border-width:2px}:where(a,button):focus-visible{outline-width:4px}}

/* BlitzBoom Text Contrast Visibility Engine v1.0 */
:root{--bb-text-on-light:#111827;--bb-text-muted-on-light:#4b5563;--bb-text-on-dark:#fff;--bb-text-muted-on-dark:rgba(255,255,255,.82)}
:where(body,.section,.service-card,.quote-stack blockquote,.gallery-polaroid .gallery-item,.contact-card,.legal-card,.faq details){color:var(--bb-text-on-light)}
:where(.section-head>p,.service-card p,.about-copy>p,.about figcaption,.section-number,.gallery>p){color:var(--bb-text-muted-on-light)}
:where(.hero-fullscreen,.hero-split,.hero-collage,.page-hero,.stats-band,.map-card,.site-footer,.cta,.footer-manifesto,.services-spotlight .service-card:first-child){color:var(--bb-text-on-dark)}
:where(.hero-fullscreen,.hero-split,.hero-collage,.page-hero,.stats-band,.map-card,.site-footer,.cta,.footer-manifesto,.services-spotlight .service-card:first-child) :where(h1,h2,h3,h4,h5,h6,p,a,span,li,strong,b,small,address,figcaption){color:inherit}
:where(.site-footer,.map-card,.stats-band,.page-hero) :where(p,small,address,figcaption,.hours){color:var(--bb-text-muted-on-dark)}
:where(.btn,.nav-cta,.whatsapp-btn,.sticky-call){text-shadow:none}
:where(.hero-fullscreen,.hero-collage,.page-hero)[style*="background-image"] :where(h1,h2,h3,p,.eyebrow){text-shadow:0 2px 18px rgba(0,0,0,.58)}
:where(input,textarea,select){color:#111827;background:#fff}
:where(input,textarea)::placeholder{color:#6b7280;opacity:1}
:where(a,button,[role="button"]):focus-visible{outline-color:currentColor}

/* Reliable homepage hero background layer */
.hero-fullscreen{
  background-color:var(--dark);
  background-image:var(--hero);
  background-position:center 32%;
  background-size:cover;
  background-repeat:no-repeat;
}
.hero-fullscreen>.hero-background-image{
  position:absolute;
  inset:0;
  z-index:0;
  width:100%;
  height:100%;
  max-width:none;
  object-fit:cover;
  object-position:center 32%;
  display:block;
  opacity:1;
  visibility:visible;
  pointer-events:none;
  user-select:none;
}
.hero-fullscreen>.hero-overlay{z-index:1;pointer-events:none}
.hero-fullscreen>.hero-copy,.hero-fullscreen>.scroll-cue{z-index:2}
@media(max-width:760px){
  .hero-fullscreen>.hero-background-image{object-position:center center}
}
@media(prefers-reduced-motion:reduce){
  .hero-fullscreen,.hero-fullscreen>.hero-background-image{animation:none!important;transform:none!important}
}

/* Voerkraal image logo — header and footer */
.brand.brand-image{display:inline-flex;align-items:center;justify-content:flex-start;line-height:0;overflow:visible}
.brand.brand-image .brand-logo{display:block;width:auto!important;object-fit:contain!important;border-radius:12px;background:#1a1410;box-shadow:0 8px 24px rgba(0,0,0,.18)}
.site-header .header-brand-logo{height:68px!important;max-height:68px!important;max-width:150px!important}
.site-footer .footer-brand-logo-link{max-width:220px!important}
.site-footer .footer-brand-logo{height:auto!important;width:190px!important;max-width:190px!important;max-height:133px!important}
@media(max-width:600px){.site-header .header-brand-logo{height:54px!important;max-height:54px!important;max-width:118px!important}.site-footer .footer-brand-logo{width:160px!important;max-width:160px!important}}
