@font-face{font-family:Roboto;src:url('assets/fonts/roboto-300.woff2') format('woff2');font-weight:300;font-display:swap}@font-face{font-family:Roboto;src:url('assets/fonts/roboto-400.woff2') format('woff2');font-weight:400;font-display:swap}@font-face{font-family:Roboto;src:url('assets/fonts/roboto-700.woff2') format('woff2');font-weight:700;font-display:swap}
:root{--blue:#155F8C;--ink:#2d2e2e;--grey:#606060}*{box-sizing:border-box}body{margin:0;color:var(--grey);font:300 16px/1.6 Roboto,Arial,sans-serif;background:#fff}a{color:var(--blue);text-decoration:none}a:hover{text-decoration:underline}button{font:inherit;cursor:pointer}a,button{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible{outline:3px solid var(--blue);outline-offset:5px}img{max-width:100%;height:auto;display:block}.container{width:calc(100% - 40px);max-width:1170px;margin:0 auto}h1,h2,h3{color:var(--ink);font-weight:700;line-height:1.25;margin:0 0 27px}h1,h2{font-size:32px}h3{font-size:20px;margin-bottom:17px}p{margin:0 0 14px}strong{font-weight:700}.topline{background:var(--blue);color:white;min-height:30px}.top-inner{display:flex;gap:15px;align-items:center;font-size:12px;line-height:1.4;padding:5px 0}.topline a{color:white}.language{margin-left:auto;display:flex;align-items:center;gap:5px;white-space:nowrap;padding:2px 0}.top-inner>span:first-child{white-space:nowrap}header{position:static;background:white}nav{display:flex;justify-content:flex-end;gap:40px;min-height:54px;align-items:stretch}nav>a{font-size:14px;color:var(--ink);padding:12px 0 4px;border-bottom:6px solid transparent;align-content:center}nav>a:hover,nav>a[aria-current]{border-bottom-color:var(--blue);color:var(--blue);text-decoration:none}.hero{position:relative;margin-bottom:20px;isolation:isolate}.header-image{width:100%;height:auto;aspect-ratio:1170/350;object-fit:cover}.logo-panel{position:absolute;left:90px;top:0;bottom:0;width:204px;padding:19px 15px 20px;background:url('assets/logo-background.png') repeat}.logo-panel img{width:174px;height:auto}.intro{padding:20px 0 32px;font-size:18px;line-height:28px}.intro h1{margin-bottom:25px}.gallery{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));width:100%;margin:0 auto;max-width:2000px;gap:0}.photo{position:relative;display:block;overflow:hidden;border:1px solid #ececec;aspect-ratio:1500/1540;background:#fff}.photo>img{width:100%;height:100%;object-fit:contain}.overlay{position:absolute;bottom:0;left:0;width:100%;min-height:20%;display:flex;align-items:center;justify-content:center;text-align:center;padding:12px 18px;color:#fff;font-size:20px;font-weight:700;line-height:24px;background:rgba(65,65,65,.68);transition:opacity .3s,transform .3s;text-shadow:0 1px 2px #444}.photo:hover .overlay,.photo:focus-visible .overlay{opacity:0;transform:translateY(25%)}.photo:focus-visible{outline-offset:-5px;z-index:1}.gallery-actions{text-align:center;padding:32px 0 0}.button{display:inline-block;border:1px solid var(--blue);background:var(--blue);color:#fff;padding:11px 22px;font-weight:400;font-size:16px}.button:hover{background:#114d72;text-decoration:none}.editorial{padding:52px 0}.service-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:38px}.service-grid h3 a{color:var(--ink)}.about-strip{display:grid;grid-template-columns:230px 1fr;gap:40px;align-items:center;padding:22px 0 45px;border-top:1px solid #e5e5e5}.about-strip img{width:230px;height:255px;object-fit:cover;object-position:center 32%}.about-strip h2{margin-bottom:15px}.rental{display:flex;gap:24px;align-items:center;padding:24px 0 38px;border-top:1px solid #e5e5e5}.rental img{width:180px;height:110px;object-fit:cover}.rental h3{font-size:18px;margin-bottom:8px}.rental p{font-size:15px;margin:0}.about-page{display:grid;grid-template-columns:1.25fr .75fr;gap:65px;align-items:start}.about-page>img{width:100%;max-height:640px;object-fit:cover;object-position:center 25%}.lead{font-size:21px}.contact-grid{display:grid;grid-template-columns:1.3fr 1fr;gap:85px;margin-top:38px}.contact-grid h2{font-size:22px}.contact-link{font-size:23px;font-weight:400;margin:27px 0}.narrow{max-width:900px}.narrow h2{font-size:24px;margin:30px 0 16px}.narrow p{font-size:18px;line-height:1.65;margin-bottom:22px}footer{background:#f6f7f9;padding:42px 0 0;margin-top:25px;border-top:1px solid #ececec}.footer-grid{display:grid;grid-template-columns:1fr .8fr 1.2fr;gap:50px}.footer-grid h2{font-size:20px;margin-bottom:20px}.footer-grid p{font-size:16px}.footer-bottom{display:flex;flex-wrap:wrap;gap:24px;border-top:1px solid #ddd;margin-top:28px;padding:20px 0;font-size:14px}.footer-bottom span{margin-right:auto}.skip{position:absolute;top:-100px;left:10px;background:#fff;padding:10px;z-index:1000}.skip:focus{top:5px}.lightbox{padding:0;width:100vw;max-width:none;height:100dvh;max-height:none;border:0;background:rgba(20,20,20,.97);color:#fff;overflow:hidden}.lightbox::backdrop{background:rgba(0,0,0,.95)}.lightbox[open]{display:grid;grid-template-columns:70px minmax(0,1fr) 70px;align-items:center}.lightbox figure{margin:30px 0 45px;display:flex;flex-direction:column;align-items:center;min-width:0}.large-image{width:auto;height:auto;max-width:100%;max-height:calc(100dvh - 135px);object-fit:contain}.lightbox figcaption{font-size:16px;padding:12px;text-align:center;min-height:48px}.lightbox button{border:0;background:transparent;color:white;font-size:48px;width:56px;height:56px;justify-self:center;line-height:1}.lightbox button:focus-visible{outline-color:#fff}.lightbox .close{position:absolute;right:16px;top:8px;font-size:38px;z-index:2}.lightbox button:hover{background:#444}.lightbox button:disabled{opacity:.25;cursor:default}.lightbox-hint{position:absolute;bottom:10px;text-align:center;left:0;right:0;font-size:13px;color:#ccc;pointer-events:none}.lightbox-loading .large-image{opacity:.3}.gallery-empty{padding:30px}.no-scroll{overflow:hidden}
@media(min-width:1700px){.gallery{grid-template-columns:repeat(4,minmax(0,1fr))}}@media(max-width:1100px){.studio-label{display:none}.logo-panel{left:7.7%;width:18%;padding:15px 12px}.logo-panel img{width:100%}.service-grid{gap:25px}.top-inner{font-size:12px}}@media(max-width:800px){.gallery{grid-template-columns:repeat(2,minmax(0,1fr))}.service-grid{grid-template-columns:1fr;gap:25px}.about-page{gap:28px;grid-template-columns:1fr 1fr}.contact-grid{gap:35px}.footer-grid{grid-template-columns:1fr 1fr}.footer-grid>div:last-child{grid-column:1/-1}.intro{font-size:17px;line-height:27px}.top-inner{gap:12px}.top-email{display:none}h1,h2{font-size:28px}.logo-panel{width:20%;left:5%;padding:10px}.rental a{overflow-wrap:anywhere}}
@media(max-width:520px){.container{width:calc(100% - 32px)}.top-inner{flex-wrap:wrap;gap:4px 12px;font-size:12px;padding:6px 0}.top-inner>span:first-child{width:100%;font-size:12px}.language{position:absolute;top:9px;right:16px}.top-email{display:none}nav{justify-content:space-between;gap:20px;min-height:52px}nav a{font-size:15px;padding-top:8px}.hero{margin-left:-16px;margin-right:-16px;margin-bottom:12px}.header-image{min-height:180px;object-fit:cover;object-position:58% center}.logo-panel{left:16px;width:112px;padding:12px 10px}.intro{padding:20px 0 25px}.intro h1{margin-bottom:19px}h1,h2{font-size:26px;line-height:1.25}.overlay{font-size:16px;line-height:20px;padding:10px 8px;min-height:25%}.editorial{padding:35px 0}.about-strip{grid-template-columns:120px 1fr;gap:20px;padding:24px 0}.about-strip img{width:120px;height:170px}.about-strip h2{font-size:23px}.about-page,.contact-grid{grid-template-columns:1fr;gap:28px}.about-page>img{max-height:500px}.contact-link{font-size:21px;overflow-wrap:anywhere}.rental{gap:16px;padding:24px 0}.rental img{width:95px;height:100px}.rental h3{font-size:17px}.rental p{font-size:14px}.footer-grid{grid-template-columns:1fr;gap:20px}.footer-grid>div:last-child{grid-column:auto}.footer-bottom{gap:16px}.footer-bottom span{width:100%}.lightbox[open]{grid-template-columns:42px minmax(0,1fr) 42px}.lightbox button{width:40px;height:48px;font-size:38px}.lightbox figcaption{font-size:14px;padding:10px 0}.lightbox-hint{font-size:12px}.narrow p{font-size:17px}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{transition:none!important;scroll-behavior:auto!important}}
/* V8: four languages, descriptive captions, original WhatsApp graphic. */
.language-picker{margin-left:auto;position:relative;z-index:200}.language-picker summary{display:flex;align-items:center;gap:5px;cursor:pointer;list-style:none;min-height:26px;padding:2px 4px}.language-picker summary::-webkit-details-marker{display:none}.language-picker summary:focus-visible{outline:2px solid white;outline-offset:3px}.language-menu{position:absolute;right:0;top:100%;min-width:165px;background:white;box-shadow:0 5px 20px #0003;border:1px solid #ddd;padding:7px 0}.topline .language-menu a{display:block;padding:9px 16px;color:#2d2e2e;font-size:15px}.topline .language-menu a:hover,.topline .language-menu a[aria-current]{background:#f1f4f6;color:var(--blue);text-decoration:none}.overlay{flex-direction:column;gap:7px;min-height:28%;padding:14px 17px}.overlay>strong{font-size:19px;line-height:1.2}.photo-description{font-size:14px;font-weight:400;line-height:1.4}.lightbox figcaption{display:flex;flex-direction:column;gap:7px;max-width:850px;line-height:1.4}.lightbox figcaption span{font-weight:300}.lightbox figcaption small{color:#ccc;font-size:12px}.large-image{max-height:calc(100dvh - 190px)}.reviews{display:grid;grid-template-columns:1fr 180px;gap:50px;align-items:center;border-top:1px solid #ddd;padding:36px 0}.reviews h2{font-size:27px;margin-bottom:17px}.review-links{display:flex;flex-wrap:wrap;gap:10px 28px;margin-top:18px}.review-qr{display:flex;flex-direction:column;align-items:center;font-size:13px;text-align:center;line-height:1.4}.review-qr img{width:150px;height:150px;background:white}.review-qr span{margin-top:8px}.small-note{font-size:13px;margin:18px 0 0}.b2b-note{font-size:14px;margin-top:18px}.whatsapp-float{position:fixed;right:22px;bottom:24px;z-index:60;display:block;width:110px;line-height:0}.whatsapp-float img{width:100%;height:auto}.whatsapp-float:hover{transform:translateY(-1px)}body:has(.lightbox[open]) .whatsapp-float{visibility:hidden}footer{padding-bottom:95px}.contact-actions{display:flex;gap:12px;flex-wrap:wrap}.button.secondary{background:white;color:var(--blue)}.button.secondary:hover{background:#eaf1f6}
@media(max-width:800px){.overlay{min-height:30%;padding:12px}.reviews{gap:24px}.top-inner{flex-wrap:wrap}.studio-label{display:none}}
@media(max-width:520px){.language-picker{position:absolute;right:16px;top:7px}.language-menu{top:30px}.overlay{min-height:39%;gap:4px;padding:10px 8px}.overlay>strong{font-size:15px}.photo-description{font-size:12px;line-height:1.3}.reviews{grid-template-columns:1fr;gap:20px}.reviews h2{font-size:25px}.review-qr{justify-self:start;max-width:200px}.review-qr img{width:150px;height:150px}.whatsapp-float{width:75px;right:12px;bottom:14px}.lightbox figcaption{font-size:13px;max-height:135px;overflow:auto}.large-image{max-height:calc(100dvh - 205px)}footer{padding-bottom:90px}}

.additional-services{display:grid;grid-template-columns:1fr 1fr;gap:45px;border-top:1px solid #ddd;padding:35px 0}.additional-services h2{font-size:25px}.ai-note{font-size:13px;color:#666;padding-top:10px}@media(max-width:700px){.additional-services{grid-template-columns:1fr;gap:25px}}

.archive-benefits{padding:30px 0 38px;border-top:1px solid #ddd}.archive-benefits h2{font-size:27px}.archive-benefits p{max-width:950px}

/* Rental studio invitation */
.rental{padding:26px;margin-top:24px;margin-bottom:32px;background:#f3f6f8;border-top:0;border-left:3px solid #155F8C;box-sizing:border-box}.rental h3{color:#155F8C}.rental .rental-cta{display:inline-block;margin-top:14px;padding:9px 16px;background:#155F8C;color:#fff;text-decoration:none;font-size:15px}.rental .rental-cta:hover{background:#104a6d}.rental .rental-cta:focus-visible{outline:2px solid #155F8C;outline-offset:3px}@media(max-width:600px){.rental{padding:20px;flex-direction:column;align-items:flex-start}.rental img{width:180px;height:110px}}
/* V9: clip only the preview's lower credit strip; source images stay intact. */
.photo{aspect-ratio:1/1}
.photo>img{width:100%;height:auto;max-width:none;object-fit:initial}
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}
.project-float{position:fixed;right:22px;bottom:118px;z-index:60;display:flex;align-items:center;justify-content:space-between;gap:16px;min-height:48px;width:220px;padding:12px 18px;background:var(--blue);color:white;font-weight:700;box-shadow:0 3px 14px #0002;border-radius:3px;line-height:1.3}
.project-float:hover{background:#104a6d;text-decoration:none}
body:has(.lightbox[open]) .project-float{visibility:hidden}
.project-form{max-width:750px;padding:32px 0;scroll-margin-top:24px}
.project-form h2{font-size:26px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}
.project-form label{display:flex;flex-direction:column;font-weight:400;gap:6px;margin-bottom:18px}
.project-form input,.project-form textarea{font:400 16px/1.5 Roboto,Arial,sans-serif;width:100%;border:1px solid #aaa;border-radius:2px;padding:10px;background:white;color:var(--ink)}
.project-form input:focus,.project-form textarea:focus{outline:2px solid var(--blue);outline-offset:2px}
.project-form textarea{min-height:160px;resize:vertical}.project-form .small-note{font-size:14px;margin:8px 0 18px}.project-form .form-status{margin-top:16px;font-weight:400}
.related-services{padding-top:10px;padding-bottom:24px}footer{padding-bottom:180px}
@media(max-width:520px){.project-float{width:150px;right:12px;bottom:82px;font-size:14px;padding:11px;gap:6px}.form-grid{grid-template-columns:1fr;gap:0}.photo-description{font-size:14px}.overlay{max-height:100%;overflow:auto}.overlay>strong{font-size:15px}.project-form{padding-top:24px}footer{padding-bottom:155px}}
@media(hover:none){.photo:hover .overlay{opacity:1;transform:none}}
/* V9.1: consistent title bars; descriptions belong to the large view. */
.photo .photo-description{display:none}
.photo .overlay{height:48px;min-height:48px;max-height:48px;padding:0 16px;overflow:hidden;gap:0;flex-direction:row}
.photo .overlay>strong{display:block;width:100%;font-size:17px;line-height:48px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.lightbox .image-window{width:min(100%,calc(100dvh - 230px));aspect-ratio:1;overflow:hidden;flex:none;background:#fff}
.lightbox .image-window .large-image{width:100%;height:auto;max-width:none;max-height:none;object-fit:initial}
.project-float{width:auto;min-width:190px;min-height:50px;padding:12px 15px 12px 21px;gap:18px;border:1px solid #ffffff80;border-radius:999px;background:linear-gradient(135deg,#1b709f,#104a70);box-shadow:0 5px 18px #103d6533;color:#fff;letter-spacing:.01em;font-size:15px;transition:background .2s,box-shadow .2s,transform .2s}
.project-float span{display:grid;place-items:center;width:27px;height:27px;border-radius:50%;background:#ffffff22;font-size:18px;line-height:1}
.project-float:hover{background:linear-gradient(135deg,#155f8c,#0d3e60);box-shadow:0 7px 22px #103d6544;transform:translateY(-2px)}
@media(max-width:520px){.photo .overlay{height:40px;min-height:40px;max-height:40px;padding:0 9px}.photo .overlay>strong{font-size:14px;line-height:40px}.project-float{min-width:0;min-height:46px;padding:9px 11px 9px 16px;gap:10px;font-size:14px}.project-float span{width:25px;height:25px}.lightbox .image-window{width:min(100%,calc(100dvh - 225px))}}
