.header-shell{position:sticky;top:0;z-index:50;background:var(--studio-cream);border-bottom:1px solid var(--studio-line);box-shadow:0 2px 16px #24484908}.header{min-height:90px}.language-picker{position:relative;margin-left:0;font-size:12px}.language-picker summary{list-style:none;cursor:pointer;white-space:nowrap;padding:11px 13px;border:1px solid var(--studio-line);border-radius:5px}.language-picker summary::-webkit-details-marker{display:none}.language-options{position:absolute;right:0;top:calc(100% + 7px);min-width:95px;display:grid;background:#fffaf0;border:1px solid var(--studio-line);box-shadow:0 8px 30px #24484914;border-radius:5px;overflow:hidden}.language-options a{padding:10px 15px}.language-options a:hover,.language-options [aria-current]{background:#dde8da}.breadcrumbs{padding-top:22px;margin-bottom:0;font-size:12px}.breadcrumbs ol{display:flex;flex-wrap:wrap;gap:7px 10px;list-style:none;padding:0;margin:0}.breadcrumbs li+li:before{content:'/';margin-right:10px;opacity:.5}.breadcrumbs a:hover{color:var(--studio-coral)}.breadcrumbs [aria-current]{color:#617168}.project-summary{padding-top:25px}.project-meta{display:flex;align-items:center;justify-content:space-between;gap:25px;flex-wrap:wrap;border-bottom:1px solid var(--studio-line);padding-bottom:20px}.project-meta>span{font-size:13px}.project-meta strong{display:block;font:600 28px Rubik;margin-top:5px}.site-offline{padding:10px 15px;background:#e4d7c5;border-radius:5px}.gallery-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.gallery-photo{display:block;position:relative;background:#e0e5d5;aspect-ratio:4/3;overflow:hidden;border-radius:6px}.gallery-photo img{width:100%;height:100%;object-fit:cover;transition:transform .25s}.gallery-photo:hover img{transform:scale(1.025)}.gallery-photo>span{position:absolute;bottom:14px;right:14px;background:var(--studio-cream);color:var(--studio-ink);padding:7px 12px;border-radius:4px;font-size:12px}.gallery-cover{grid-column:span 2;grid-row:span 2;aspect-ratio:auto;min-height:300px}.project-lightbox{border:0;border-radius:9px;padding:18px;background:#fffcf4;color:var(--studio-ink);width:min(1100px,calc(100% - 30px));max-height:calc(100dvh - 40px)}.project-lightbox::backdrop{background:#142e32d9}.project-lightbox figure{margin:30px 0 0;text-align:center}.project-lightbox figure img{width:auto;max-width:100%;height:auto;max-height:calc(100dvh - 200px);object-fit:contain}.project-lightbox figcaption{font-size:13px;margin:12px 0;overflow-wrap:anywhere}.lightbox-close{position:absolute;top:8px;right:12px;border:0;background:none;font-size:28px;color:inherit;cursor:pointer;padding:3px 10px}.lightbox-controls{display:flex;align-items:center;justify-content:center;gap:25px}.lightbox-controls button{border:1px solid var(--studio-line);background:var(--studio-cream);color:inherit;border-radius:5px;min-width:44px;min-height:40px;cursor:pointer}.gallery-empty{color:#65776c;font-size:13px;padding-top:20px}.reviews-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:28px}.review{padding:30px;background:#fffaf0;border-radius:7px;position:relative;border-bottom:3px solid var(--studio-turquoise)}.review-quote{font:70px/1 Rubik;color:var(--studio-coral)}.review .prose{width:100%;padding-top:0;max-width:none}.review footer{display:grid;gap:5px;font-size:13px;margin-top:25px}.review footer span{color:#627568}.captcha-field{display:grid;grid-template-columns:1fr 1fr;gap:20px;align-items:end}.captcha-image{display:flex;align-items:center;gap:8px}.captcha-image img{max-width:100%;width:200px;height:auto}.captcha-image button{font-size:24px;border:1px solid var(--studio-line);background:var(--studio-cream);color:var(--studio-ink);border-radius:5px;cursor:pointer;padding:5px 10px}.captcha-field input{text-transform:uppercase;letter-spacing:4px}
@media(max-width:1000px){.header{flex-wrap:wrap;gap:16px;min-height:78px;padding:15px 0}.menu-toggle{display:block;margin-left:auto;border:0;background:none;color:var(--studio-ink);font-size:24px;padding:5px}.header nav{display:none;order:4;width:100%;margin:0;flex-direction:column;align-items:stretch;gap:6px;max-height:calc(100dvh - 110px);overflow-y:auto}.header nav.open{display:flex}.header nav a{display:block;padding:8px}.dropdown-items{position:static;box-shadow:none;display:grid;min-width:0;padding:0 0 0 18px;font-size:13px}}
@media(max-width:760px){.gallery-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.gallery-cover{grid-column:span 2;grid-row:auto;aspect-ratio:4/3;min-height:0}.reviews-list{grid-template-columns:1fr}.captcha-field{grid-template-columns:1fr}.breadcrumbs{margin-bottom:0}.project-meta{align-items:flex-start}.header{min-height:78px}.language-picker summary{padding:9px 11px}}
.project-card-cover{padding:0;aspect-ratio:16/10;min-height:0}.project-card-cover img{width:100%;height:100%;object-fit:cover}.project-placeholder{background:linear-gradient(120deg,#dce7d4,#e8d7ba);overflow-wrap:anywhere}.project-placeholder strong{font-size:26px}.project-card-year{display:inline-block;margin-top:10px;font-size:12px;color:#627568}.gallery-grid:has(>a:only-child){grid-template-columns:1fr}.gallery-grid:has(>a:only-child) .gallery-cover{grid-column:auto;grid-row:auto;aspect-ratio:16/10}.gallery-grid:has(>a:first-child:nth-last-child(2)){grid-template-columns:repeat(2,minmax(0,1fr))}.gallery-grid:has(>a:first-child:nth-last-child(2)) .gallery-cover{grid-column:auto;grid-row:auto;aspect-ratio:4/3;min-height:0}
@media(prefers-reduced-motion:reduce){.gallery-photo img{transition:none}}
.brand{display:inline-flex;align-items:center;flex-shrink:0}.brand .brand-logo{display:block;width:200px;height:auto}.footer .brand-logo{width:220px}.nav-chevron{display:inline-block;flex:none;vertical-align:middle;width:14px;height:14px;transition:transform .2s}.header .dropdown>a{display:inline-flex;align-items:center;gap:6px}.language-picker summary{display:flex;align-items:center;gap:8px}.language-picker[open] .nav-chevron{transform:rotate(180deg)}
@media(max-width:600px){.header .brand-logo{width:170px}.header{gap:10px}}
@media(max-width:360px){.header .brand-logo{width:150px}}
@media(prefers-reduced-motion:reduce){.nav-chevron{transition:none}}
.project-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}.project{display:flex;flex-direction:column;min-width:0;background:#fffbf2;border:1px solid var(--studio-line);border-radius:12px;overflow:hidden;box-shadow:0 5px 18px #24484906;transition:transform .2s,box-shadow .2s,border-color .2s}.project:hover{transform:translateY(-4px);border-color:var(--studio-turquoise);box-shadow:0 12px 28px #24484912}.project .project-card-cover{display:block;position:relative;aspect-ratio:auto;padding:26px 12px 12px;background:#e8ebdf;border-bottom:1px solid var(--studio-line)}.project-card-cover:before{content:'● ● ●';position:absolute;top:4px;left:12px;font-size:8px;letter-spacing:2px;color:#8da095}.project .project-card-cover img{display:block;aspect-ratio:16/10;width:100%;height:auto;object-fit:contain;object-position:center;background:#f6efdf;border-radius:3px}.project h3{margin:20px 20px 9px;font-size:22px}.project p{margin:0 20px 20px;font-size:13px}.project .project-card-year{margin:auto 20px 20px;padding-top:12px;border-top:1px solid var(--studio-line);font-size:12px}.project-gallery .gallery-photo{aspect-ratio:16/10;min-height:0;background:#e8ebdf}.project-gallery .gallery-photo img{object-fit:contain;object-position:center}
@media(max-width:1000px){.project-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:600px){.project-grid{grid-template-columns:1fr;gap:20px}}
@media(prefers-reduced-motion:reduce){.project{transition:none}.project:hover{transform:none}}
.portfolio-selection-note{margin:-12px 0 28px;color:#627568;font-size:14px}.project-gallery .gallery-photo img{object-position:top}
.service-grid{position:relative;z-index:3}.service{transition:box-shadow .22s ease;isolation:isolate}.service:hover,.service:focus-visible{transform:none;box-shadow:inset 0 0 0 2px #24484935,inset 0 0 70px #fffaf025}.service .service-arrow{transition:transform .22s ease}.service:hover .service-arrow,.service:focus-visible .service-arrow{transform:translate(3px,-3px)}@media(prefers-reduced-motion:reduce){.service,.service .service-arrow{transition:none}.service:hover .service-arrow,.service:focus-visible .service-arrow{transform:none}}
.service-icon .fa-solid{font-size:26px}.button .fa-solid,.text-link .fa-solid{font-size:.85em}.nav-chevron{font-size:11px;text-align:center;vertical-align:middle}.language-picker summary .nav-chevron{display:inline-grid;place-items:center}.slider-buttons .fa-solid{font-size:16px}.service-arrow .fa-solid{font-size:14px}
.menu-backdrop{display:none}@media(max-width:1000px){.header nav.open{position:fixed;top:var(--header-height,78px);right:0;bottom:0;width:min(380px,100%);margin:0;padding:22px 25px 35px;background:var(--studio-cream);max-height:none;overflow-y:auto;box-shadow:-12px 0 35px #24484915;z-index:55;display:flex}.menu-is-open{overflow:hidden}.menu-is-open .menu-backdrop{display:block;position:fixed;inset:var(--header-height,78px) 0 0;border:0;border-radius:0;background:#193e3e66;width:100%;padding:0;z-index:49}.menu-is-open .header-shell{z-index:60}.header nav.open>a,.header nav.open>.dropdown>a{padding:10px 0;font-size:16px}.header nav.open .dropdown-items{padding-left:16px;font-size:14px}.header nav.open .dropdown-items a{padding:8px 0}}
@media(max-width:1000px){.header nav .dropdown-items,.header nav .dropdown:hover .dropdown-items,.header nav .dropdown:focus-within .dropdown-items{display:grid;gap:0}.header nav.open a,.header nav.open a:hover,.header nav.open a:focus{line-height:1.65}}

.service-grid{grid-template-columns:repeat(12,minmax(0,1fr))}.service-grid>.service{grid-column:span 3}.service-grid>.service:nth-child(n+5){grid-column:span 4}@media(max-width:1000px){.service-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.service-grid>.service,.service-grid>.service:nth-child(n+5){grid-column:auto}.service-grid>.service:last-child{grid-column:1/-1}}@media(max-width:560px){.service-grid{grid-template-columns:1fr}.service-grid>.service:last-child{grid-column:auto}}
