/* Site font: Space Grotesk, SIL Open Font License (see fonts/space-grotesk-OFL.txt).
   Proxima Nova files remain temporarily for rollback; live site text uses Space Grotesk. */
@font-face{
 font-family:"Space Grotesk";
 src:url("fonts/space-grotesk-variable.woff2") format("woff2");
 font-style:normal;
 font-weight:300 700;
 font-display:block;
}
/* Shared header: edit this file to update every page. */
@media(max-width:932px){
 .other-projects .project-covers{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}
 .other-projects .project-cover{width:100%!important;margin:0!important;float:none!important;clear:none!important;min-width:0}
 .other-projects .project-cover:nth-child(-n+3){display:block!important}
 .other-projects .project-cover:nth-child(n+4){display:none!important}
}
.site-header .logo-container,.site-header .logo-wrap,.site-header .logo {width:auto!important;max-width:none!important;}
.site-header .logo a {white-space:nowrap!important;}
@media (min-width:933px) {
 .site-header {display:flex!important;align-items:flex-start!important;gap:24px;}
 .site-header .logo-container {flex:0 0 auto!important;float:none!important;}
 .site-header .nav-container {flex:1 1 auto!important;width:auto!important;min-width:0;max-width:none!important;float:none!important;}
 .site-header nav {display:flex!important;flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:12px 24px;width:100%!important;}
 .site-header nav > div {float:none!important;width:auto!important;margin:0!important;padding:0!important;flex:0 0 auto;}
 .site-header nav a {white-space:nowrap!important;}
}

/* Supplementary page headings remain available to assistive technology. */
.seo-page-heading{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;clip-path:inset(50%)!important;white-space:nowrap!important;border:0!important}

/* Compact navigation remains visible while the page scrolls. */
.site-header.is-pinned {
 position:fixed!important;top:0!important;left:0!important;right:0!important;
 width:100%!important;max-width:none!important;margin:0!important;
 box-sizing:border-box;z-index:1000;
 background:rgba(255,255,255,.72)!important;
 -webkit-backdrop-filter:blur(16px) saturate(140%);
 backdrop-filter:blur(16px) saturate(140%);
 border-bottom:1px solid rgba(255,255,255,.5);
 box-shadow:0 3px 12px rgba(0,0,0,.08);
}
.site-header.is-pinned a {font-size:var(--compact-font-size)!important;}
@media(min-width:933px){
 .site-header.is-pinned {align-items:center!important;min-height:64px;padding:12px!important;}
 .site-header.is-pinned .logo-container,.site-header.is-pinned .logo-wrap,
 .site-header.is-pinned .logo,.site-header.is-pinned .nav-container,
 .site-header.is-pinned nav {margin-top:0!important;margin-bottom:0!important;padding-top:0!important;padding-bottom:0!important;}
}

/* Small linked category pills below each project description. */
.page-header .project-categories {
 display:flex;flex-wrap:wrap;justify-content:center;gap:8px;
 margin-top:24px!important;padding-top:0!important;white-space:normal;
}
.page-header .project-categories .project-category {
 display:inline-flex;align-items:center;justify-content:center;
 margin:0;padding:6px 13px;min-height:0;border:0;border-radius:999px;
 background:rgba(0,0,0,.06);color:var(--category-text,#111)!important;text-decoration:none;transition:background-color .18s ease;
 font:inherit;font-weight:400!important;line-height:1.3;white-space:nowrap;box-sizing:border-box;
}
.page-header .project-category::before,.page-header .project-category::after{content:none;}
.page-header .project-categories .project-category:is(:hover,:focus-visible){background:#000;color:#fff!important;box-shadow:0 3px 8px rgba(0,0,0,.18);}
.page-header .project-category:focus-visible{outline:2px solid var(--category-text,#111);outline-offset:3px;}

/* Light navigation and related-project heading on dark project backgrounds. */
html[data-dark-project] .site-header:not(.is-pinned) a,
html[data-dark-project] .other-projects-title {color:#f5f5f5!important;}
html[data-dark-project] .site-header:not(.is-pinned) .hamburger i {background-color:#f5f5f5!important;}
html[data-dark-project] .site-header.is-pinned a {color:#171717!important;}

/* Keep footer copy readable against dark project backgrounds. */
html[data-dark-project] .site-footer,
html[data-dark-project] .site-footer .footer-text,
html[data-dark-project] .site-footer .footer-text * {color:#e6e6e6!important;}
html[data-dark-project] .site-footer .footer-text a:hover,
html[data-dark-project] .site-footer .footer-text a:focus-visible {color:#fff!important;text-decoration:none!important;}

/* Quiet, persistent gallery controls with matching circular backgrounds. */
#project-modules .project-module-image .js-lightbox,
#project-modules .project-module-image .lightbox-link {cursor:default!important;}
#lightbox-wrap .control {
 opacity:1!important;visibility:visible!important;display:block!important;
 width:48px!important;height:48px!important;position:fixed!important;
 z-index:100!important;cursor:pointer;transition:none!important;
 border:0!important;background:none!important;padding:0!important;
}
#lightbox-wrap .control svg {display:block;width:48px!important;height:48px!important;}
#lightbox-wrap .control.prev {left:24px!important;top:50%!important;right:auto!important;transform:translateY(-50%);margin:0!important;}
#lightbox-wrap .control.next {right:24px!important;top:50%!important;left:auto!important;transform:translateY(-50%);margin:0!important;}
#lightbox-wrap .control.close {right:24px!important;top:24px!important;left:auto!important;margin:0!important;}
#lightbox-wrap .control:focus-visible {outline:2px solid #dedede;outline-offset:4px;border-radius:50%;}
@media(max-width:600px){
 #lightbox-wrap .control.prev{left:12px!important;}
 #lightbox-wrap .control.next,#lightbox-wrap .control.close{right:12px!important;}
}

/* Shorter pinned bar on phones and compact screens. */
@media(min-width:933px) and (max-width:1024px){
 .site-header.is-pinned{min-height:32px!important;padding:3px 12px!important;gap:16px;}
 .site-header.is-pinned nav{gap:4px 12px;}
}
@media(max-width:932px){
 .site-header.is-pinned{height:40px!important;min-height:40px!important;padding:0 5%!important;display:flex!important;align-items:center!important;}
 .site-header.is-pinned .logo-container,.site-header.is-pinned .logo-wrap,.site-header.is-pinned .logo{margin-top:0!important;margin-bottom:0!important;padding-top:0!important;padding-bottom:0!important;}
 .site-header.is-pinned .hamburger-click-area{padding-top:10px;padding-bottom:10px;}
}

/* Project cards show their title without a year, including on hover. */
.project-cover .date {display:none!important;}

/* Compact contact pills replace the footer contact icons. */
.site-footer .footer-contact-actions{display:flex;justify-content:center;align-items:center;flex-wrap:wrap;align-content:center;min-height:44px;gap:15px;margin:0 auto 30px;}
.site-footer .footer-contact-button{display:inline-flex;align-items:center;justify-content:center;background:#222;color:#fff!important;border:0;border-radius:999px;box-sizing:border-box;min-height:44px;padding:11px 22px;font:600 16px/1.3 vcsm,sans-serif;text-decoration:none;white-space:nowrap;}
.site-footer .footer-contact-button:hover{background:#444;}
.site-footer .footer-contact-button:focus-visible{outline:2px solid #888;outline-offset:3px;}
.contact-portrait-link{cursor:pointer;}
.site-footer .footer-contact-label{display:inline-flex;align-items:center;justify-content:center;min-height:44px;margin:0;padding:0;font:600 18px/1.3 vcsm,sans-serif;color:inherit;}

/* Related headings align with the left edge of the thumbnail row. */
.other-projects .title-wrapper,.other-projects .title-container{width:100%!important;max-width:none!important;margin-left:0!important;margin-right:0!important;padding-left:0!important;padding-right:0!important;box-sizing:border-box;}
.other-projects .other-projects-title{display:block!important;width:100%!important;box-sizing:border-box;text-align:left!important;margin-left:0!important;margin-right:0!important;padding-left:0!important;padding-right:0!important;}

/* Client gallery titles share the project H1 typography. */
.masthead h1.client-gallery-title{font-family:vcsm!important;font-size:60px!important;font-weight:700!important;font-style:normal!important;line-height:70px!important;color:#111!important;letter-spacing:normal!important;text-align:center!important;text-transform:none!important;margin:0!important;padding:0 0 20px!important;}
@media(max-width:932px){.masthead h1.client-gallery-title{font-size:36px!important;line-height:42px!important;padding-bottom:14px!important;}}
@media(max-width:540px){.masthead h1.client-gallery-title{font-size:29px!important;line-height:34px!important;padding-bottom:13px!important;}}

/* Client descriptions match project sizing with the existing dark gray. */
.masthead p.client-gallery-description{font-family:vcsm!important;font-size:20px!important;line-height:28px!important;font-weight:400!important;color:#3a3a3a!important;}
@media(max-width:932px){.masthead p.client-gallery-description{font-size:17px!important;line-height:24px!important;}}
@media(max-width:540px){.masthead p.client-gallery-description{font-size:14px!important;line-height:20px!important;}}

/* Align the client heading with the centered image in the 23% client column. */
.featured-clients-heading{padding-left:0!important;padding-right:0!important;margin-left:calc(2.3% - .184px)!important;margin-right:0!important;width:calc(97.7% + .184px)!important;max-width:none!important;}
.featured-clients-heading .sub-title{padding-left:0!important;padding-right:0!important;margin-left:0!important;margin-right:0!important;}
.featured-client-more{font-family:vcsm,sans-serif!important;font-size:inherit!important;font-weight:600!important;}
@media(max-width:540px){.featured-clients-heading{margin-left:10%!important;margin-right:10%!important;width:80%!important;}}

/* Frosted backdrop affects the page behind the gallery, never its image. */
#lightbox-wrap{background-color:rgba(24,24,24,.65)!important;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);}

.other-projects .other-projects-title{padding-left:20px!important;}
.site-footer .footer-contact-label{font-weight:700!important;color:#000!important;}
html[data-dark-project] .site-footer .footer-contact-label{color:#f5f5f5!important;}

/* Large project images share the 1440px source limit; smaller images keep their sizing. */
.standard-modules .project-module-image{max-width:1440px!important;}

/* Category-aware project navigation, shown while the pointer moves. */
.project-step-nav .project-step{position:fixed;top:50%;transform:translateY(-50%);z-index:20;width:60px;height:60px;border-radius:50%;background:rgba(0,0,0,.05);color:#999;display:flex;align-items:center;justify-content:center;opacity:0;visibility:hidden;pointer-events:none;transition:opacity .2s;}
.project-step-prev{left:20px;}.project-step-next{right:20px;}
.project-step svg{width:32px;height:32px;}
.project-step-nav.is-visible .project-step,.project-step-nav:focus-within .project-step{opacity:1;visibility:visible;pointer-events:auto;}
.project-step-nav .project-step:hover{background:rgba(0,0,0,.12);color:#666;}
.project-step-nav .project-step:focus-visible{outline:2px solid currentColor;outline-offset:3px;}
body:has(.js-lightbox-wrap:not(.offscreen)) .project-step-nav{display:none;}
html[data-dark-project] .project-step-nav .project-step{background:rgba(255,255,255,.1);color:#ccc;}
@media(hover:none){.project-step-nav .project-step{opacity:1;visibility:visible;pointer-events:auto;width:44px;height:44px;}.project-step-prev{left:8px;}.project-step-next{right:8px;}}
@media(prefers-reduced-motion:reduce){.project-step-nav .project-step{transition:none;}}

/* Center each icon independently of its hover caption. */
.project-step-nav .project-step svg{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);display:block;margin:0;padding:0;}
.project-step-nav .project-step:hover{background:rgba(0,0,0,.08);}
.project-step-caption{position:absolute;top:50%;transform:translateY(-50%);background:rgba(255,255,255,.94);color:#333;padding:8px 12px;border-radius:8px;font:400 14px/1.4 vcsm,sans-serif;max-width:min(280px,calc(100vw - 160px));width:max-content;white-space:normal;opacity:0;visibility:hidden;pointer-events:none;}
.project-step-prev .project-step-caption{left:calc(100% + 10px);}
.project-step-next .project-step-caption{right:calc(100% + 10px);}
.project-step:hover .project-step-caption,.project-step:focus-visible .project-step-caption{opacity:1;visibility:visible;}
html[data-dark-project] .project-step-nav .project-step:hover{background:rgba(255,255,255,.14);}

.project-step-caption{text-align:left;box-shadow:0 3px 12px rgba(0,0,0,.1);padding:20px;background:rgba(255,255,255,.75);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);box-sizing:border-box;}

.video-poster{position:absolute;inset:0;width:100%;height:100%;display:block;margin:0;padding:0;border:0;background:#fff;cursor:pointer;overflow:hidden;}
.video-poster>img{display:block;width:100%;height:100%;object-fit:contain;}
.video-poster-play{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:68px;height:48px;}
.video-poster:focus-visible{outline:3px solid #555;outline-offset:-3px;}
.video-poster>img[src*="i.ytimg.com"]{object-fit:cover;}

/* Cap project players at 1440px while respecting smaller embedded sizes. */
#project-modules .embed-dimensions:has(.video-poster),
#project-modules .embed-dimensions:has(iframe[src*="youtube"]),
#project-modules .embed-dimensions:has(iframe[src*="vimeo"]),
#project-modules .embed-dimensions:has(video){width:min(100%,1440px)!important;margin-left:auto!important;margin-right:auto!important;}
#project-modules video{max-width:min(100%,1440px)!important;display:block;margin-left:auto;margin-right:auto;}

/* Consistent player widths and caption spacing in the holiday collection. */
.holiday-video-item{width:100%;margin:0 auto 32px;}
.holiday-video-item>.project-module{width:100%!important;max-width:none!important;margin:0!important;padding:0!important;}
.holiday-video-item .embed-dimensions{max-width:1440px!important;max-height:none!important;}
.holiday-video-caption{box-sizing:border-box;height:64px;padding:16px 20px 0;max-width:1440px;margin:auto;}
.holiday-video-caption .project-module-text{padding:0!important;margin:0!important;width:100%!important;}
.holiday-video-caption .rich-text,.holiday-video-caption .rich-text div{margin:0!important;padding:0!important;}

/* Judesio magija: compact brand-book images on a light gray canvas. */
html[data-project-layout="judesio-magija"],
html[data-project-layout="judesio-magija"] body{background-color:#eee!important;}
html[data-project-layout="judesio-magija"] #project-modules>.project-module-image{max-width:1000px!important;width:100%!important;margin-left:auto!important;margin-right:auto!important;float:none!important;}

/* Equal media widths and spacing for the Judesio magija project. */
html[data-project-layout="judesio-magija"] #project-modules{display:flex;flex-direction:column;gap:32px;}
html[data-project-layout="judesio-magija"] #project-modules>.project-module{padding-top:0!important;padding-bottom:0!important;margin-top:0!important;margin-bottom:0!important;}
html[data-project-layout="judesio-magija"] #project-modules .embed-dimensions{width:100%!important;max-width:1000px!important;max-height:none!important;}

html[data-project-background="holiday-greetings"],
html[data-project-background="holiday-greetings"] body{background-color:#f5f5f5!important;}

/* Three package views form one compact gallery row. */
.tatu-three-gallery{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;padding:20px;box-sizing:border-box;}
.tatu-three-gallery .grid__item-container{width:100%!important;min-width:0;flex:none!important;margin:0!important;position:relative!important;cursor:pointer;}
.tatu-three-gallery .grid__item-image{display:block!important;position:static!important;width:100%!important;height:auto!important;opacity:1!important;}

html[data-project-layout="autasa"] #project-modules>.project-module-image{width:100%!important;max-width:1000px!important;margin-left:auto!important;margin-right:auto!important;float:none!important;}

html[data-project-background="soft-gray"],
html[data-project-background="soft-gray"] body{background-color:#f5f5f5!important;}

.project-screen-gallery{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;padding:24px;box-sizing:border-box;}
.project-screen-gallery .grid__item-container{width:100%!important;min-width:0;flex:none!important;margin:0!important;position:relative!important;cursor:pointer;}
.project-screen-gallery .grid__item-image{display:block!important;position:static!important;width:100%!important;height:auto!important;opacity:1!important;}
@media(max-width:540px){.project-screen-gallery{grid-template-columns:1fr;padding:16px;gap:16px;}}

/* Stronger contrast for project summary copy. */
.page-header .description{color:#4d4d4d!important;}
html[data-dark-project] .page-header .description{color:#ccc!important;}

html[data-project-layout="autasa-web"] #project-modules>.project-module-image{max-width:1440px!important;margin-left:auto!important;margin-right:auto!important;float:none!important;}


/* Icon-only header search and keyboard-accessible project search dialog. */
.site-header .site-search-trigger{display:inline-flex;align-items:center;justify-content:center;flex:0 0 auto;width:44px;height:44px;box-sizing:border-box;border:0;padding:10px;margin:-10px 0;background:transparent;color:#171717;cursor:pointer;border-radius:50%;}
.site-search-trigger svg,.site-search-close svg{display:block;width:24px;height:24px;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round;}
.site-header .site-search-trigger:hover{background:rgba(0,0,0,.06);}
.site-search-trigger:focus-visible,.site-search-close:focus-visible,.site-search-results a:focus-visible,.site-search-retry:focus-visible{outline:2px solid #5c4a3e;outline-offset:3px;}
html[data-dark-project] .site-header:not(.is-pinned) .site-search-trigger{color:#f5f5f5;}
html[data-dark-project] .site-header:not(.is-pinned) .site-search-trigger:hover{background:rgba(255,255,255,.1);}
html.site-search-open{overflow:hidden;}
dialog.site-search{box-sizing:border-box;width:min(720px,calc(100% - 32px));max-width:none;max-height:calc(100dvh - 48px);margin:auto;padding:28px;border:0;border-radius:16px;background:#f5f5f5;color:#171717;box-shadow:0 16px 80px rgba(0,0,0,.22);font:400 16px/1.5 vcsm,sans-serif;overscroll-behavior:contain;}
.site-search::backdrop{background:rgba(24,24,24,.5);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);}
.site-search-top{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:20px;}
.site-search h2{font:700 28px/1.2 vcsm,sans-serif;margin:0;color:#171717;}
.site-search-close{display:inline-flex;align-items:center;justify-content:center;width:44px;height:44px;padding:10px;border:0;border-radius:50%;background:transparent;color:#171717;cursor:pointer;}
.site-search-close:hover{background:#e5e5e5;}
.site-search-label{display:block;margin-bottom:8px;font-size:14px;color:#4d4d4d;}
.site-search input{display:block;box-sizing:border-box;width:100%;max-width:none;margin:0;padding:14px 16px;background:#fff;color:#171717;border:1px solid #999;border-radius:8px;font:400 18px/1.4 vcsm,sans-serif;}
.site-search input:focus{outline:2px solid #5c4a3e;outline-offset:2px;}
.site-search-status{margin:16px 0!important;color:#4d4d4d;font-size:14px;}
.site-search-retry{background:none;border:0;padding:0;color:#5c4a3e;text-decoration:none;font:inherit;cursor:pointer;}
.site-search-results{list-style:none;margin:0;padding:0;}
.site-search-results li{margin:0;padding:0;border-top:1px solid #ddd;}
.site-search-results a{display:flex;align-items:center;gap:16px;min-height:60px;padding:12px 4px;color:#171717!important;text-decoration:none!important;font:500 16px/1.4 vcsm,sans-serif;overflow-wrap:anywhere;}
.site-search-results a:hover{background:#e9e9e9;}
.site-search-results img{display:block;flex:0 0 80px;width:80px;height:60px;object-fit:cover;border-radius:4px;}
@media(max-width:932px){
 .site-header .logo-container{position:relative;}
 .site-header .site-search-trigger{position:absolute;right:46px;top:50%;transform:translateY(-50%);margin:0;}
 .site-header .logo-wrap{max-width:calc(100% - 96px)!important;}
 .site-header .logo a{white-space:normal!important;}
 dialog.site-search{padding:20px;max-height:calc(100dvh - 32px);}
 .site-search h2{font-size:24px;}
}

/* Keep mobile header controls at the right edge of the full header row. */
@media(max-width:932px){
 .site-header .logo-container{display:flex!important;align-items:center;gap:8px;float:none!important;width:100%!important;position:static;}
 .site-header .logo-wrap{flex:1 1 auto;min-width:0;max-width:none!important;}
 .site-header .site-search-trigger{position:static;transform:none;order:1;margin:0;flex:0 0 44px;}
 .site-header .hamburger-click-area{position:static;transform:none;order:2;display:flex;align-items:center;justify-content:center;flex:0 0 44px;width:44px;height:44px;padding:0!important;}
}
/* Keep the input fixed above an independently scrolling results list.
   VisualViewport dimensions exclude the on-screen keyboard in iOS Safari. */
dialog.site-search{
 position:fixed;inset:auto 0 auto;top:var(--search-top,12px);
 margin:0 auto;max-height:var(--search-height,calc(100dvh - 24px));
 overflow:hidden;
}
dialog.site-search[open]{display:flex;flex-direction:column;}
.site-search-top,.site-search-label,.site-search input,.site-search-status{flex:0 0 auto;}
.site-search-results{min-height:0;overflow-y:clip;overscroll-behavior:auto;touch-action:pan-y;-webkit-overflow-scrolling:touch;}
@media(max-width:768px){
 dialog.site-search{max-height:var(--search-height,calc(100dvh - 24px));padding:16px;}
 .site-search-top{margin-bottom:12px;}
 .site-search input{font-size:18px;}
}

/* Hidden desktop navigation must not reserve space in the pinned mobile flex row. */
@media(max-width:932px){
 .site-header>.nav-container{display:none!important;}
 .site-header .logo-container{flex:1 1 100%!important;min-width:0;}
 .site-header.is-pinned .logo-container{width:100%!important;}
 html[data-gallery="personal"] .project-cover .title{font-size:26px!important;line-height:1.25!important;}
}

/* Center the hero chevron itself, overriding the legacy rotated-arrow offset. */
.masthead .home-intro-scroll .masthead-arrow{
 left:50%!important;margin-left:0!important;margin-right:0!important;
 transform:translateX(-50%) rotate(45deg)!important;
 transform-origin:center;
}

/* Frosted search input matches the site's translucent surfaces. */
.site-search input{
 background:rgba(255,255,255,.45);
 -webkit-backdrop-filter:blur(16px) saturate(140%);
 backdrop-filter:blur(16px) saturate(140%);
 border-color:rgba(110,110,110,.45);
}

/* All hero chevrons share the same centered geometry, including animation pages. */
.masthead .masthead-arrow{
 left:50%!important;margin-left:0!important;margin-right:0!important;
 transform:translateX(-50%) rotate(45deg)!important;
 transform-origin:center;
}

/* Match desktop rollover visuals for the centred card on touch screens. */
@media(max-width:932px) and (hover:none){
 section.project-covers .project-cover.is-center-rollover .cover-normal.has-rollover{opacity:0;visibility:hidden;}
 section.project-covers .project-cover.is-center-rollover .cover-rollover{opacity:1;visibility:visible;}
 section.project-covers .project-cover.is-center-rollover .details-wrap{opacity:1;}
 section.project-covers .project-cover.is-center-rollover .cover-image:after{background-color:#000;opacity:.35;}
}

/* Project enquiry sits after the project content, before the related gallery. */
.project-contact-cta{box-sizing:border-box;max-width:1440px;margin:0 auto;padding:56px 20px;text-align:center;clear:both;}
.project-contact-cta h2{margin:0 0 24px;padding:0;color:#171717;font:700 clamp(24px,3vw,32px)/1.3 vcsm,sans-serif;text-transform:none;letter-spacing:normal;}
.project-contact-cta .footer-contact-actions{display:flex;justify-content:center;align-items:center;flex-wrap:wrap;gap:15px;margin:0;}
.project-contact-cta .footer-contact-button{display:inline-flex;align-items:center;justify-content:center;box-sizing:border-box;min-height:44px;background:#222;color:#fff!important;border:0;border-radius:999px;padding:11px 22px;font:600 16px/1.3 vcsm,sans-serif;text-decoration:none;white-space:nowrap;}
.project-contact-cta .footer-contact-button:hover{background:#444;}
.project-contact-cta .footer-contact-button:focus-visible{outline:2px solid #888;outline-offset:3px;}
html[data-dark-project] .project-contact-cta h2{color:#f5f5f5;}
html[data-dark-project] .project-contact-cta .footer-contact-button{background:#eee;color:#171717!important;}
html[data-dark-project] .project-contact-cta .footer-contact-button:hover{background:#fff;}
@media(max-width:768px){.project-contact-cta{padding:40px 20px;}.project-contact-cta h2{font-size:24px;}.project-contact-cta .footer-contact-actions{gap:12px;}}

/* Frosted glass search panel; keep text and controls fully opaque. */
dialog.site-search{background:rgba(255,255,255,.75);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);}
.site-search::backdrop{background:rgba(24,24,24,.25);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);}
.site-search input{background:rgba(255,255,255,.65);}
.site-search-results a:hover{background:rgba(255,255,255,.45);}
.site-search-close:hover{background:rgba(0,0,0,.06);}


/* Empty search opens centrally; typing moves it to the visible viewport's top. */
.site-search-status:empty{display:none;margin:0!important;}
.site-search-results a:focus-visible{
 background:rgba(255,255,255,.7);
 outline:2px solid #5c4a3e;outline-offset:-2px;border-radius:6px;
}

/* Shared satin-white keyboard keys for search and project navigation. */
.keyboard-key{display:inline-flex;align-items:center;justify-content:center;box-sizing:border-box;width:58px;height:58px;flex:none;margin:0;border:1px solid rgba(210,210,210,.95);border-radius:12px;background:linear-gradient(145deg,#fff,#ededed);color:#171717;font:400 29px/1 -apple-system,BlinkMacSystemFont,"Helvetica Neue",sans-serif;box-shadow:0 4px 0 #d0d0d0,0 9px 16px rgba(0,0,0,.16),inset 0 1px 1px #fff;user-select:none;}
.keyboard-key-return{width:94px;justify-content:space-between;padding:0 12px;gap:10px;}
.keyboard-key-return small{font-size:12px;align-self:flex-end;margin-bottom:12px;}
dialog.site-search{overflow:visible;}
.site-search-keys{display:none;position:absolute;left:calc(100% + 24px);top:132px;flex-direction:column;align-items:flex-start;gap:24px;pointer-events:none;}
.site-search-results a.is-selected{background:rgba(232,218,201,.5);outline:1px solid #a68a6c;outline-offset:-1px;border-radius:8px;}
.site-search-results a.is-selected:hover{background:rgba(232,218,201,.65);}
@media(min-width:1100px) and (hover:hover) and (pointer:fine){
 .site-search.has-query[open] .site-search-keys{display:flex;}
 .site-search.has-query .keyboard-key{animation:key-intro 1s ease-out 1;}
 .site-search.has-query .keyboard-key:nth-child(2){animation-delay:.14s;}
 .site-search.has-query .keyboard-key:nth-child(3){animation-delay:.28s;}
 .site-search.has-query .keyboard-key.is-pressed{animation:key-press .18s ease-out;}
 .project-step-nav .project-step{background:transparent!important;border-radius:12px;}
 .project-step-nav .project-step:hover{background:transparent!important;}
 .project-step-nav .project-step:hover .keyboard-key{background:linear-gradient(145deg,#fff,#e5e5e5);}
}
.project-step-nav .project-key{width:44px;height:44px;font-size:26px;border-radius:9px;}
@media(min-width:933px) and (hover:hover) and (pointer:fine){.project-step-nav .project-key{width:58px;height:58px;font-size:29px;border-radius:12px;}}
@media(hover:none),(pointer:coarse),(max-width:932px){
 .site-search-keys{display:none!important;}
 /* Touch screens retain simple arrow controls without physical-key styling. */
 .project-step-nav .project-key{background:none;border:0;box-shadow:none;border-radius:0;color:inherit;font-size:28px;}
}
@keyframes key-intro{0%,100%{transform:translateY(0);}40%{transform:translateY(3px);box-shadow:0 1px 0 #d0d0d0,0 3px 7px rgba(0,0,0,.12);}}
@keyframes key-press{0%,100%{transform:translateY(0);}45%{transform:translateY(3px);box-shadow:0 1px 0 #d0d0d0,0 3px 7px rgba(0,0,0,.12);}}
@media(prefers-reduced-motion:reduce){.keyboard-key{animation:none!important;transition:none!important;}}

/* Content links follow their page/surface background, including nested text spans. */
:root,[data-link-surface="light"]{--content-link:#5c4a3e;--content-link-hover:#2c211a;}
html[data-dark-project],[data-link-surface="dark"]{--content-link:#e8ccb3;--content-link-hover:#fff;}
html[data-dark-project] [data-link-surface="light"]{--content-link:#5c4a3e;--content-link-hover:#2c211a;}
:is(.standard-modules,.splash-modules) .rich-text a:not(.button-module),
.page-header .description a:not(.project-category){
 color:var(--content-link)!important;text-decoration:none!important;
}
:is(.standard-modules,.splash-modules) .rich-text a:not(.button-module) *,
.page-header .description a:not(.project-category) *{color:inherit!important;}
:is(.standard-modules,.splash-modules) .rich-text a:not(.button-module):hover,
.page-header .description a:not(.project-category):hover{color:var(--content-link-hover)!important;}
:is(.standard-modules,.splash-modules) .rich-text a:not(.button-module):focus-visible,
.page-header .description a:not(.project-category):focus-visible{outline:2px solid var(--content-link);outline-offset:4px;border-radius:2px;}

/* Desktop and compact navigation must never appear together at tablet widths. */
@media(min-width:933px){.site-header .hamburger-click-area{display:none!important;}}

/* Shared typography. Keep the separate font comparison pages intact. */
html:root:not(:has(style[id$="-preview"])) body,
html:root:not(:has(style[id$="-preview"])) body *{
 font-family:"Space Grotesk",sans-serif!important;
}
@supports not selector(:has(*)){
 html body,html body *{font-family:"Space Grotesk",sans-serif!important;}
}

@media(min-width:541px){.project-screen-gallery-three{grid-template-columns:repeat(3,minmax(0,1fr))!important;}}

/* Site-wide preference: links remain un-underlined in every interaction state. */
html:root body a[href]:any-link,
html:root body a[href]:any-link *,
html body .analytics-settings,
html body .site-search-retry{text-decoration:none!important;}
/* Footer text links retain an explicit keyboard cue without an underline. */
.site-footer .footer-text a:focus-visible{outline:2px solid currentColor;outline-offset:3px;}

/* Compact menu: smaller service labels and tighter spacing keep all items reachable. */
@media(max-width:932px){
 .responsive-nav nav a:is([href="isskirtiniai.html"],[href="kontaktai.html"]){font-size:24px!important;line-height:34px!important;}
 .responsive-nav nav a:not([href="isskirtiniai.html"]):not([href="kontaktai.html"]){font-size:18px!important;line-height:28px!important;}
 .responsive-nav nav>.gallery-title,.responsive-nav nav>.page-title{padding-bottom:16px!important;}
}
.faq-item[id]{scroll-margin-top:90px;}

/* Subordinate mobile categories are slightly lighter than the primary links. */
@media(max-width:932px){
 .responsive-nav nav a:not([href="isskirtiniai.html"]):not([href="kontaktai.html"]){color:#666!important;}
 .responsive-nav nav a:not([href="isskirtiniai.html"]):not([href="kontaktai.html"]):hover,
 .responsive-nav nav a:not([href="isskirtiniai.html"]):not([href="kontaktai.html"]):focus-visible{color:#333!important;}
 html[data-dark-project] .responsive-nav nav a:not([href="isskirtiniai.html"]):not([href="kontaktai.html"]){color:#ccc!important;}
 html[data-dark-project] .responsive-nav nav a:not([href="isskirtiniai.html"]):not([href="kontaktai.html"]):hover,
 html[data-dark-project] .responsive-nav nav a:not([href="isskirtiniai.html"]):not([href="kontaktai.html"]):focus-visible{color:#eee!important;}
}
@media(max-width:932px){
 html[data-dark-project] .responsive-nav nav a[href="isskirtiniai.html"],
 html[data-dark-project] .responsive-nav nav a[href="kontaktai.html"]{color:#f5f5f5!important;}
}

/* Warm beige marker for text links, without changing text flow. */
:is(.standard-modules,.splash-modules) .rich-text a:not(.button-module),
.page-header .description a:not(.project-category),
.faq-answer a,.footer-text a,.footer-text .analytics-settings{
 -webkit-box-decoration-break:clone;box-decoration-break:clone;border-radius:3px;
}
:is(.standard-modules,.splash-modules) .rich-text a:not(.button-module):is(:hover,:focus-visible),
.page-header .description a:not(.project-category):is(:hover,:focus-visible),
.faq-answer a:is(:hover,:focus-visible),
.site-footer .footer-text a:is(:hover,:focus-visible),
.site-footer .footer-text .analytics-settings:is(:hover,:focus-visible){
 background-color:#e4ddd2!important;color:#2c211a!important;
 box-shadow:4px 0 0 #e4ddd2,-4px 0 0 #e4ddd2;text-decoration:none!important;
}
:is(.standard-modules,.splash-modules) .rich-text a:not(.button-module):is(:hover,:focus-visible) *,
.page-header .description a:not(.project-category):is(:hover,:focus-visible) *{color:inherit!important;}
html[data-dark-project] .site-footer .footer-text a:is(:hover,:focus-visible),
html[data-dark-project] .site-footer .footer-text .analytics-settings:is(:hover,:focus-visible){background-color:#e4ddd2!important;color:#2c211a!important;box-shadow:4px 0 0 #e4ddd2,-4px 0 0 #e4ddd2;}

/* Use the same light marker for inline and footer text links. */
html:root body :is(.rich-text a:not(.button-module),.page-header .description a:not(.project-category),.faq-answer a,.footer-text a,.footer-text .analytics-settings):is(:hover,:focus-visible){
 background:#e4ddd2!important;color:#2c211a!important;
 box-shadow:4px 0 0 #e4ddd2,-4px 0 0 #e4ddd2!important;
 border-radius:3px;-webkit-box-decoration-break:clone;box-decoration-break:clone;
 opacity:1!important;filter:none!important;transition:none!important;
}
html:root body :is(.rich-text a:not(.button-module),.page-header .description a:not(.project-category),.faq-answer a,.footer-text a):is(:hover,:focus-visible) *{color:inherit!important;background:transparent!important;}

/* Homepage featured clients fade in once as they enter the viewport. */
@media(prefers-reduced-motion:no-preference){
 .featured-clients-heading.client-fade-pending,.preview-client-row.client-fade-pending{opacity:0;}
 .featured-clients-heading.client-fade-pending.is-revealed,.preview-client-row.client-fade-pending.is-revealed{opacity:1;transition:opacity .9s ease;}
}

/* Slightly slower thumbnail hover fades, including rollover images and captions. */
@media(prefers-reduced-motion:no-preference){
 .project-cover .cover-normal,.project-cover .cover-rollover,.project-cover .details-wrap,.project-cover .cover-image:after{transition-duration:.35s!important;}
}

/* Gentle crossfade for project thumbnails and their dark overlay. */
.project-cover .cover.cover-normal.has-rollover,
.project-cover .cover.cover-rollover{visibility:visible!important;transition:opacity .35s ease!important;}
.project-cover .cover.cover-normal.has-rollover{opacity:1;}
.project-cover .cover.cover-rollover{opacity:0;}
.project-cover:is(:hover,:focus-within,.touch-hover,.is-center-rollover) .cover.cover-normal.has-rollover{opacity:0;}
.project-cover:is(:hover,:focus-within,.touch-hover,.is-center-rollover) .cover.cover-rollover{opacity:1;}
.project-cover .cover-image:after{transition:opacity .35s ease,background-color .35s ease!important;}
.project-cover .details-wrap{transition:opacity .35s ease!important;}
@media(prefers-reduced-motion:reduce){
 .project-cover .cover.cover-normal.has-rollover,.project-cover .cover.cover-rollover,
 .project-cover .cover-image:after,.project-cover .details-wrap{transition:none!important;}
}

/* Share the homepage's 1200px desktop content width. */
@media(min-width:933px){
 html:is([data-page-layout="home"],[data-page-layout="contacts"]) body .site-header:not(.is-pinned){box-sizing:border-box;width:calc(100% - 48px)!important;max-width:1200px!important;margin-inline:auto!important;padding-left:0!important;padding-right:0!important;}
 html:is([data-page-layout="home"],[data-page-layout="contacts"]) body .site-header .logo-wrap,html:is([data-page-layout="home"],[data-page-layout="contacts"]) body .site-header .logo{padding-left:0!important;padding-right:0!important;margin-left:0!important;margin-right:0!important;}
 html:is([data-page-layout="home"],[data-page-layout="contacts"]) body .site-header.is-pinned{padding-left:max(24px,calc((100vw - 1200px)/2))!important;padding-right:max(24px,calc((100vw - 1200px)/2))!important;}
 html[data-page-layout="contacts"] main{box-sizing:border-box;width:calc(100% - 48px);max-width:1200px;margin-inline:auto;}
}

/* Gallery navigation follows the same outer edges as its thumbnail grid. */
@media(min-width:933px){
 html:has(main>section.project-covers) .site-header .logo-wrap,
 html:has(main>section.project-covers) .site-header .logo{padding-left:0!important;padding-right:0!important;margin-left:0!important;margin-right:0!important;}
 html:has(main>section.project-covers) .site-header .nav-container,
 html:has(main>section.project-covers) .site-header nav{padding-left:0!important;padding-right:0!important;}
 html:has(main>section.project-covers) .site-header .site-search-trigger{margin-right:0;padding-left:20px;padding-right:0;}
 html:has(main>section.project-covers) .site-header.is-pinned{padding-left:max(0px,calc((100vw - 1600px)/2))!important;padding-right:max(0px,calc((100vw - 1600px)/2))!important;}
}
@media(min-width:933px){html:has(main>section.project-covers) .site-header::after{display:none!important;}}

/* Center the gallery contact row between the last thumbnails and footer links. */
main>section.project-covers{padding-bottom:0!important;}
main:has(>section.project-covers)>.site-footer{padding-top:95px!important;}
main:has(>section.project-covers)>.site-footer>.footer-contact-actions{margin-bottom:95px;}

/* Inline FAQ search stays with the questions beneath the page introduction. */
.faq-search{margin:0 0 40px;text-align:left;}
.faq-search[hidden],.faq-group[hidden],.faq-item[hidden]{display:none!important;}
.faq-search label{display:block;margin-bottom:12px;font-size:16px;font-weight:600;color:#222;}
.faq-search input{display:block;box-sizing:border-box;width:100%;min-height:48px;border:1px solid #aaa;border-radius:10px;background:rgba(255,255,255,.65);padding:12px 16px;font:400 16px/1.4 "Space Grotesk",sans-serif;color:#171717;}
.faq-search input:focus-visible{outline:2px solid #5c4a3e;outline-offset:3px;}
.faq-search input::placeholder{color:#666;opacity:1;}
#faq-search-status{margin:12px 0 0;font-size:14px;line-height:1.5;color:#444;}
#faq-search-status:empty{display:none;}

/* Keep the normal cover visible while its on-demand rollover is downloading. */
main img[decoding="async"]{height:auto;}
main .video-poster>img[decoding="async"]{height:100%;}
/* Both search slots exist in HTML, so script startup cannot shift navigation. */
@media(min-width:933px){.site-header .site-search-trigger-mobile{display:none!important;}}
@media(max-width:932px){.site-header .site-search-trigger-desktop{display:none!important;}}
.project-cover:has(.cover-rollover img[data-rollover-src]) .cover-normal.has-rollover{opacity:1!important;visibility:visible!important;}
.project-cover:has(.cover-rollover img[data-rollover-src]) .cover-rollover{opacity:0!important;visibility:hidden!important;}

/* Keep the photography footer link readable on light and warm page backgrounds. */
.site-footer .footer-text a[href="fotografija.html"]{color:#555;}
html[data-dark-project] .site-footer .footer-text a[href="fotografija.html"]:not(:hover):not(:focus-visible){color:#fff!important;}


/* A translucent footer shade preserves each page's own background colour. */
.site-footer{--footer-bottom-space:60px;padding-top:60px;}
.site-footer .footer-text{position:relative;isolation:isolate;}
.site-footer .footer-text::before{
 content:"";position:absolute;z-index:-1;pointer-events:none;
 inset:-30px 0 calc(-1 * var(--footer-bottom-space));
 background:rgba(0,0,0,.04);box-shadow:0 0 0 100vmax rgba(0,0,0,.04);
 clip-path:inset(0 -100vmax);
}
.site-footer .footer-text :is(a,.analytics-settings):not(:hover):not(:focus-visible){color:#505050!important;}
html[data-dark-project] .site-footer .footer-text :is(a,.analytics-settings):not(:hover):not(:focus-visible){color:#fff!important;}
@media(max-width:932px){.site-footer{--footer-bottom-space:28px;}}
@media(max-width:540px){.site-footer{--footer-bottom-space:25px;}}

/* Fixed project arrows must not add an empty navigation row below the footer. */
.project-step-nav{position:fixed;inset:0;z-index:20;pointer-events:none;padding:0!important;margin:0!important;}

/* Project enquiry reuses the offer button's envelope motion with a solid black fill. */
.project-contact-cta .project-offer-button{position:relative;display:inline-flex;box-sizing:border-box;align-items:center;justify-content:center;min-width:244px;max-width:100%;height:60px;padding:0 42px;border:3px solid #000;border-radius:999px;background:#000;color:#fff!important;font:700 16px/1.2 "Space Grotesk",sans-serif;white-space:nowrap;text-decoration:none!important;}
.project-contact-cta .project-offer-button .offer-label{display:block;color:inherit;transition:transform .18s ease;}
.project-contact-cta .project-offer-button .offer-envelope{position:absolute;right:14px;top:50%;transform:translate(6px,-50%);fill:none;stroke:currentColor;stroke-width:3;stroke-linecap:round;stroke-linejoin:round;opacity:0;transition:opacity .18s ease,transform .18s ease;}
.project-contact-cta .project-offer-button .offer-envelope :is(rect,path){vector-effect:non-scaling-stroke;}
.project-contact-cta .project-offer-button:is(:hover,:focus-visible) .offer-label{transform:translateX(-17px);}
.project-contact-cta .project-offer-button:is(:hover,:focus-visible) .offer-envelope{opacity:1;transform:translate(0,-50%);}
.project-contact-cta .project-offer-button:focus-visible{outline:2px solid #777;outline-offset:4px;}
@media(max-width:540px){.project-contact-cta .project-offer-button{min-width:220px;height:53px;}}
@media(prefers-reduced-motion:reduce){.project-contact-cta .project-offer-button :is(.offer-label,.offer-envelope){transition:none!important;}}

/* Keep category enquiries centred in the gap before the shaded footer links. */
main>:is(.gallery-contact-cta,.page-contact-cta){padding:64px 20px;}
main:has(>:is(.gallery-contact-cta,.page-contact-cta))>.site-footer{padding-top:30px!important;}
@media(max-width:540px){main>:is(.gallery-contact-cta,.page-contact-cta){padding-top:48px;padding-bottom:48px;}}

/* Avoid stacking legacy bottom padding above the FAQ and service-page enquiry. */
main[data-page-enquiry]>.page-container{padding-bottom:0!important;}
main[data-page-enquiry] .faq-accordion{padding-bottom:0!important;}

/* Category backgrounds subtly shade the underlying page colour, like the footer. */
:root,[data-link-surface="light"]{--category-text:#111;}
html[data-dark-project],[data-link-surface="dark"]{--category-text:#f5f5f5;}
html[data-dark-project] [data-link-surface="light"]{--category-text:#111;}
html:root body #project-modules .home-intro-tags a,
html:root body #project-modules .home-intro-tags a:is(:hover,:focus-visible){
 background:rgba(0,0,0,.06)!important;color:var(--category-text,#111)!important;font-weight:400!important;
 border-radius:999px;
}
html:root body #project-modules .home-intro-tags a:is(:hover,:focus-visible){background:#000!important;color:#fff!important;box-shadow:0 3px 8px rgba(0,0,0,.18)!important;}
html:root body :is(.home-intro-tags a,.page-header .project-category) *{color:inherit!important;font-weight:inherit!important;}
html:root body .home-intro-tags a:focus-visible{outline:2px solid var(--category-text,#111);outline-offset:3px;}
/* A small shared hover shadow for buttons, including enquiry and category pills. */
:is(button,.button-module,.footer-contact-button,.project-offer-button,.project-category,.masthead-button,.home-intro-tags a):is(:hover,:focus-visible){
 box-shadow:0 3px 8px rgba(0,0,0,.18);
}

/* Informational pages share a clear heading hierarchy. */
main[data-page-enquiry] .page-header h1.title{font-size:36px!important;line-height:1.2!important;font-weight:700!important;}
.services-page .page-header .description{text-align:justify;text-align-last:left;hyphens:auto;}
.services-page #project-modules{box-sizing:border-box;padding:20px;}
.services-group+ .services-group{margin-top:56px;}
.services-page .services-group h2{margin:0 0 32px;padding:0;text-align:left;font-size:28px;line-height:1.25;font-weight:700;}
.services-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:32px 48px;align-items:start;}
.services-column{display:flex;flex-direction:column;gap:32px;min-width:0;}
.services-page .service-item{min-width:0;text-align:left;}
.services-page .service-item h3{margin:0 0 10px;font-size:20px;line-height:1.35;font-weight:700;}
.services-page .service-item p{margin:0;font-size:18px;line-height:1.5;}
.services-page .service-item a{color:var(--content-link)!important;text-decoration:none!important;}
.services-page .service-item a:is(:hover,:focus-visible){color:var(--content-link-hover)!important;}
.services-page .service-item a:focus-visible{outline:2px solid var(--content-link);outline-offset:4px;}

/* Inline grey marker: neighbouring separators keep their original glyph positions. */
html:root:not([data-page-layout="home"]) body main a.content-highlight[href],
.content-highlight-neighbor{background:rgba(185,185,185,.16)!important;box-shadow:none!important;border-radius:4px;box-decoration-break:clone;-webkit-box-decoration-break:clone;}
html:root:not([data-page-layout="home"]) body main a.content-highlight[href]{color:var(--content-link)!important;}
html:root:not([data-page-layout="home"]) body main a.content-highlight[href]:is(:hover,:focus-visible){background:rgba(185,185,185,.28)!important;box-shadow:none!important;color:var(--content-link-hover)!important;}
html:root:not([data-page-layout="home"]) body main a.content-highlight[href] *{color:inherit!important;background:transparent!important;}
.content-highlight-neighbor.before{border-radius:4px 0 0 4px;}
.content-highlight-neighbor.after{border-radius:0 4px 4px 0;}
.content-highlight-neighbor.is-link-active{background:rgba(185,185,185,.28)!important;}
html:root:not([data-page-layout="home"]) body main a.content-highlight[href].highlight-has-before{border-top-left-radius:0;border-bottom-left-radius:0;}
html:root:not([data-page-layout="home"]) body main a.content-highlight[href].highlight-has-after{border-top-right-radius:0;border-bottom-right-radius:0;}
@media(max-width:540px){
 main[data-page-enquiry] .page-header h1.title{font-size:28px!important;}
 .services-page .services-group h2{font-size:24px;margin-bottom:24px;}
 .services-grid{grid-template-columns:1fr;gap:28px;}
 .services-column{gap:28px;}
 .services-group+ .services-group{margin-top:40px;}
}

/* FAQ and services introductions use the same type scale and paragraph alignment. */
main[data-page-enquiry] .page-header p.description{
 font-size:20px!important;line-height:28px!important;font-weight:400!important;
 text-align:justify!important;text-align-last:left;hyphens:auto;
}
@media(max-width:932px){main[data-page-enquiry] .page-header p.description{font-size:17px!important;line-height:24px!important;}}
@media(max-width:540px){main[data-page-enquiry] .page-header p.description{font-size:14px!important;line-height:20px!important;}}

/* Company credit follows the footer navigation as a centred third row. */
.site-footer .footer-text .footer-company{margin-top:20px;text-align:center;font:inherit;}

/* Enlarge only the pinned header by 20%, keeping the regular header unchanged. */
.site-header.is-pinned .site-search-trigger svg,
.site-header.is-pinned .hamburger{transform:scale(1.2);transform-origin:center;}
@media(min-width:1025px){.site-header.is-pinned{min-height:76.8px;padding-top:14.4px!important;padding-bottom:14.4px!important;}}
@media(min-width:933px) and (max-width:1024px){.site-header.is-pinned{min-height:42px!important;padding-top:3.6px!important;padding-bottom:3.6px!important;}}
@media(max-width:932px){.site-header.is-pinned{height:52px!important;min-height:52px!important;}}
/* Reclaim legacy logo/navigation padding so enlarged controls still fit narrow widths. */
@media(max-width:932px){.site-header.is-pinned .logo{padding-left:0!important;padding-right:0!important;}}
@media(min-width:933px) and (max-width:1024px){
 .site-header.is-pinned nav{column-gap:8px;padding-right:0!important;}
}

/* Match the FAQ's 900px reading column, including its 20px inner gutters. */
.services-page .page-header,
.services-page #project-modules{box-sizing:border-box;width:100%!important;max-width:900px!important;margin-left:auto!important;margin-right:auto!important;padding-left:20px!important;padding-right:20px!important;}

/* Header text links and search share full-height rectangular hit areas. */
html:root body .site-header :is(nav a,.logo a,.site-search-trigger){position:relative!important;isolation:isolate;transition:none!important;}
html:root body .site-header .site-search-trigger{inset:auto!important;transform:none!important;background:transparent!important;border-radius:0;box-shadow:none!important;}
.site-header :is(nav a,.logo a,.site-search-trigger)::before{
 content:"";position:absolute;z-index:-1;pointer-events:auto;cursor:pointer;
 top:calc(-1 * var(--menu-link-top,0px));left:calc(-1 * var(--menu-hit-left,12px));right:calc(-1 * var(--menu-hit-right,12px));
 height:var(--menu-bar-height,100%);background:transparent;border-radius:0;
}
html:root body .site-header :is(nav a,.logo a,.site-search-trigger):is(:hover,:focus-visible,[aria-current]),
html:root body .site-header :is(nav a,.logo a,.site-search-trigger):is(:hover,:focus-visible,[aria-current]) *{color:#fff!important;}
.site-header nav a[aria-current]::before{background:#3a3a3a;}
.site-header :is(nav a,.logo a,.site-search-trigger):is(:hover,:focus-visible)::before{background:#000;}
.site-header :is(nav a,.logo a,.site-search-trigger):focus-visible{outline:2px solid #fff;outline-offset:4px;}
@media(min-width:933px) and (max-width:1024px){
 .site-header:not(.is-pinned){gap:8px;}
 .site-header:not(.is-pinned) nav{column-gap:4px;padding-left:0!important;padding-right:0!important;}
}
/* Keep header controls away from the viewport edges when the content fills it. */
@media(min-width:933px){
 html:has(main>section.project-covers) .site-header:not(.is-pinned){box-sizing:border-box;padding-left:20px!important;padding-right:20px!important;}
 html:has(main>section.project-covers) .site-header.is-pinned{padding-left:max(20px,calc((100vw - 1600px)/2))!important;padding-right:max(20px,calc((100vw - 1600px)/2))!important;}
}
@media(max-width:932px){.site-header.is-pinned{padding-left:max(20px,5%)!important;padding-right:max(20px,5%)!important;}}
@media(max-width:932px){
 .site-header:not(.is-pinned){box-sizing:border-box;padding-left:max(20px,5%)!important;padding-right:max(20px,5%)!important;}
 .site-header .logo{padding-left:0!important;padding-right:0!important;}
}
@media(min-width:933px){
 .site-header:not(.is-pinned){box-sizing:border-box;padding-left:20px!important;padding-right:20px!important;}
 .site-header.is-pinned{padding-left:20px!important;padding-right:20px!important;}
}

/* Keep the search icon fixed at the horizontal centre of its full-height box. */
html:root body .site-header .site-search-trigger{padding:10px!important;}
html:root body .site-header .site-search-trigger::before{
 left:calc(-1 * min(var(--menu-hit-left,0px),var(--menu-hit-right,0px)));
 right:calc(-1 * min(var(--menu-hit-left,0px),var(--menu-hit-right,0px)));
}

/* Balance the mobile wordmark highlight without moving its text. */
@media(max-width:932px){
 .site-header .logo a::before{left:calc(-1 * var(--menu-hit-right,12px));}
}

/* Readable footer navigation type on compact screens. */
@media(max-width:932px){
 .site-footer .footer-text{font-size:20px;line-height:30px;overflow-wrap:anywhere;}
 .site-footer .footer-text :is(a,.analytics-settings){font-size:inherit;line-height:inherit;}
}

/* Match the search panel glass while keeping the page visible behind the menu. */
@media(max-width:932px){
 .responsive-nav{background:rgba(255,255,255,.75);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);}
 .show-responsive-nav .site-container,.show-responsive-nav .site-header{display:block;}
 html:root body .responsive-nav nav a{color:#171717!important;}
 html:root body .responsive-nav nav a:not([href="isskirtiniai.html"]):not([href="kontaktai.html"]){color:#4d4d4d!important;}
 html:root body .responsive-nav nav a:is(:hover,:focus-visible){color:#111!important;}
 .responsive-nav .close-responsive-button::before,.responsive-nav .close-responsive-button::after{background-color:#171717;}
}

/* Center footer links in a single column on compact screens. */
@media(max-width:932px){
 .site-footer .footer-text .footer-link-separator,.site-footer .footer-text br{display:none;}
 .site-footer .footer-text :is(a,.analytics-settings){display:table;width:fit-content;max-width:100%;margin:0 auto 12px;text-align:center;}
}

/* Stronger progress shade for the ACME collaboration badge. */
#project-modules .client-tenure-acme .client-tenure-progress{background:rgba(0,0,0,.5);}

/* Equal breathing room before the shaded footer and above its first link. */
html:root body .site-footer{padding-top:128px!important;}
.site-footer .footer-text::before{top:-64px;}
.site-footer .footer-link-group{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:8px;}
.site-footer .footer-section-divider{display:none;box-sizing:border-box;width:min(480px,80%);height:0;margin:28px auto;border:0;border-top:1px solid rgba(0,0,0,.2);}
html[data-dark-project] .site-footer .footer-section-divider{border-top-color:rgba(255,255,255,.3);}
.site-footer .footer-text .footer-company{margin-top:0;}
.site-footer .footer-text .footer-company a{margin-bottom:0;}
@media(max-width:932px){
 .site-footer .footer-link-group{flex-direction:column;gap:12px;}
 .site-footer .footer-link-group :is(a,.analytics-settings){margin:0 auto;}
}

/* Section rules and their spacing are exclusive to the mobile footer. */
@media(max-width:932px){.site-footer .footer-section-divider{display:block;}}

/* One hamburger control morphs into the close icon without changing position. */
@media(max-width:932px){
 .responsive-nav .close-responsive-click-area{display:none!important;}
 .hamburger{height:14px;}
 .hamburger i{position:absolute;left:0;top:0;width:100%;margin:0;transform-origin:center;transition:transform .24s ease,opacity .18s ease;}
 .hamburger i:nth-child(2){top:6px;}
 .hamburger i:nth-child(3){top:12px;}
 .show-responsive-nav .hamburger i:first-child{transform:translateY(6px) rotate(45deg);}
 .show-responsive-nav .hamburger i:nth-child(2){opacity:0;transform:scaleX(0);}
 .show-responsive-nav .hamburger i:nth-child(3){transform:translateY(-6px) rotate(-45deg);}
 .mobile-menu-toggle-floating{position:fixed!important;top:var(--toggle-top)!important;left:var(--toggle-left)!important;right:auto!important;width:var(--toggle-width)!important;height:var(--toggle-height)!important;box-sizing:border-box;padding:0!important;margin:0!important;transform:none!important;display:flex!important;align-items:center;justify-content:center;z-index:100001;cursor:pointer;-webkit-tap-highlight-color:transparent;}
 .mobile-menu-toggle-floating .hamburger{transform:var(--toggle-icon-transform);transform-origin:center;}
 .mobile-menu-toggle-floating .hamburger i{background:#171717!important;}
 .hamburger-click-area:focus-visible{outline:2px solid currentColor;outline-offset:2px;}
}
@media(prefers-reduced-motion:reduce){.hamburger i{transition:none!important;}}

/* A stationary footer is exposed by the scrolling content edge. */
.footer-reveal-slot{position:relative;z-index:901;pointer-events:none;width:100%;background:transparent;}
html:root body .site-footer.is-reveal-fixed{position:fixed;z-index:900;left:0;bottom:0;box-sizing:border-box;display:flow-root;max-height:calc(100dvh - 64px);margin:0!important;overflow:clip;overscroll-behavior:auto;touch-action:pan-y;background:var(--footer-reveal-surface,#ededed);transform:none!important;clip-path:inset(var(--footer-reveal-cover,100%) 0 0);}
.footer-reveal-slot::after{content:"";position:absolute;left:calc((100% - var(--footer-shadow-width,100%)) / 2);right:auto;width:var(--footer-shadow-width,100%);top:0;height:32px;pointer-events:none;background:linear-gradient(to bottom,rgba(0,0,0,.08),rgba(0,0,0,.03) 40%,transparent);}
.hero-reveal-shadow{position:absolute;z-index:2;left:0;right:0;top:-32px;height:32px;pointer-events:none;background:linear-gradient(to bottom,transparent,rgba(0,0,0,.03) 60%,rgba(0,0,0,.08));}

/* Keep mobile footer links in one viewport and let gestures scroll the page. */
@media(max-width:932px){
 html:root body .site-footer.is-reveal-fixed{--footer-fit:1;max-height:var(--footer-max-height,calc(100svh - 64px));padding-top:calc(64px * var(--footer-fit))!important;padding-bottom:calc(25px * var(--footer-fit))!important;}
 .site-footer.is-reveal-fixed .footer-text{font-size:calc(20px * var(--footer-fit));line-height:calc(30px * var(--footer-fit));}
 .site-footer.is-reveal-fixed .footer-link-group{gap:calc(12px * var(--footer-fit));}
 .site-footer.is-reveal-fixed .footer-section-divider{margin-top:calc(28px * var(--footer-fit));margin-bottom:calc(28px * var(--footer-fit));}
 .site-footer.is-reveal-fixed .footer-text::before{top:calc(-64px * var(--footer-fit));}
}
html[data-page-layout="home"] .page-container,
html[data-page-layout="home"] .page-content,
html[data-page-layout="home"] .standard-modules,
html[data-page-layout="home"] #project-canvas,
html[data-page-layout="home"] #project-modules{padding-bottom:0!important;margin-bottom:0!important;}
html[data-page-layout="home"] .preview-clients-list{margin-bottom:120px!important;}

/* Freeze the mobile footer anchor while Safari expands or collapses its toolbar. */
.footer-reveal-slot,.site-footer.is-reveal-fixed{overflow-anchor:none;}
@media(max-width:932px){
 html:root body .site-footer.is-reveal-fixed{top:64px;bottom:auto;height:var(--footer-max-height,calc(100svh - 64px));}
}

/* Desktop-only footer rhythm and one continuous background from edge to edge. */
@media(min-width:933px){
 html:root body .site-footer.is-reveal-fixed{padding-top:32px!important;padding-bottom:32px!important;background:linear-gradient(rgba(0,0,0,.04),rgba(0,0,0,.04)),var(--footer-reveal-surface,#ededed)!important;}
 .site-footer .footer-text{display:grid;gap:0;line-height:40px;}
 .site-footer .footer-text::before{display:none;}
 .site-footer .footer-link-separator{display:none;}
 .site-footer .footer-link-group{column-gap:24px;row-gap:24px;line-height:40px;}
 .site-footer .footer-text .footer-company{line-height:40px;}
}

/* The revealed area has one opaque surface, including space below the links. */
.footer-reveal-backdrop{position:fixed;inset:0;z-index:899;pointer-events:none;background:color-mix(in srgb,var(--footer-reveal-surface,#ededed) 96%,#000);clip-path:inset(var(--footer-backdrop-cover,100%) 0 0);}
html:root body .site-footer.is-reveal-fixed{background:color-mix(in srgb,var(--footer-reveal-surface,#ededed) 96%,#000)!important;}
.site-footer.is-reveal-fixed .footer-text::before{display:none;}

/* Keep the mobile client/content edge quiet while the footer is being exposed. */
@media(max-width:932px){
 #project-modules .preview-clients-list.is-footer-revealing .preview-client-row::before{background:transparent!important;box-shadow:none!important;transition:none!important;}
}
