/* Finishing layer: preserves the approved four-card grid and art direction. */
.demo-disclosure{display:block;font:700 10px/1.4 Arial;color:#F5F3ED;margin-top:7px}.work .gallery-mark{display:none}.project-dialog{padding:18px;background:#111;color:#F5F3ED;border:3px solid #D5FF00;width:min(960px,94vw);max-height:94svh;overflow:auto}.project-dialog::backdrop{background:#000d}.project-dialog .dialog-head{display:flex;gap:20px;align-items:center;justify-content:space-between;margin-bottom:15px}.project-dialog h2{font:900 24px 'Roboto Condensed',Arial;margin:0}.project-dialog video{display:block;width:auto;max-width:100%;height:auto;max-height:75svh;aspect-ratio:9/16;margin:auto;background:#111}.project-dialog img{display:block;width:100%;height:auto}.project-dialog .btn{box-shadow:none;padding:12px;color:#111;min-width:44px;min-height:44px}.honeypot{position:absolute;left:-10000px;width:1px;height:1px}.policy-check{display:flex!important;align-items:flex-start;gap:10px!important;font-weight:400!important}.policy-check input{width:22px!important;height:22px;flex-shrink:0}.consent-panel{position:fixed;z-index:100;left:18px;right:18px;bottom:18px;max-width:1000px;margin:auto;background:#111;color:#F5F3ED;border:2px solid #D5FF00;padding:16px 20px;box-shadow:5px 5px 0 #FF5722;font-size:13px;line-height:1.5}.consent-panel p{margin:0 0 12px}.consent-actions{display:flex;gap:10px;flex-wrap:wrap}.consent-actions button,.cookie-reopen{cursor:pointer;border:1px solid #F5F3ED;padding:11px 13px;background:#111;color:#F5F3ED;font:700 12px Arial;min-height:44px}.consent-actions button:hover{background:#D5FF00;color:#111}.cookie-reopen{padding:0 8px;font-size:12px}.consent-panel input{accent-color:#D5FF00}body.modal-open{overflow:hidden}#form-status{grid-column:1/-1;line-height:1.5}.request button:disabled{opacity:.6;cursor:wait}@media(max-width:500px){.consent-panel{left:10px;right:10px;bottom:10px;padding:14px}.consent-actions{gap:7px}.consent-actions button{flex:1}.project-dialog{padding:12px}.work .work-label{font-size:18px;padding:8px}.work .work-label small{font-size:8px}}

/* Portfolio correction: each supplied artwork keeps its native aspect ratio.
   Grid columns, item order, column spans and row spans remain unchanged. */
.work-grid{align-items:start}
.work{min-height:0!important;align-self:start;overflow:hidden}
.work img{position:relative!important;inset:auto!important;width:100%!important;height:auto!important;display:block;object-fit:initial!important;object-position:initial!important;filter:none!important;transform:none!important;background:none!important}
.work:after{display:none}
.work .work-label{position:absolute;inset:0!important;min-height:0!important;margin:0;padding:12px!important;display:flex;align-items:center;justify-content:center;background:transparent!important;opacity:0;transition:opacity .15s;pointer-events:none;text-shadow:none}
.work .project-action{font:900 15px/1.2 'Roboto Condensed',Arial;color:#111;background:#D5FF00;border:2px solid #111;padding:13px 18px;box-shadow:4px 4px 0 #FF5722;transform:rotate(-2deg)}
.work:hover .work-label,.work:focus-visible .work-label{opacity:1}
.work:focus-visible{outline:4px solid #D5FF00;outline-offset:5px}
.portfolio-demo-badge{position:absolute;right:6px;bottom:6px;padding:5px 7px;color:#D5FF00;background:#111e;font:900 9px/1 Arial;letter-spacing:.06em;pointer-events:none}
@media(hover:none){.work .work-label{opacity:1;align-items:flex-end;justify-content:flex-end;padding:8px!important}.work .project-action{font-size:10px;padding:7px 9px;box-shadow:2px 2px 0 #FF5722}.work[data-project="4"] .work-label{align-items:flex-start}}
@media(prefers-reduced-motion:reduce){.work .work-label{transition:none}}

/* Targeted mobile hero / footer refinement. Desktop hero is untouched. */
footer{padding:44px 0 28px}
.foot{display:grid;grid-template-columns:220px minmax(0,1fr) 216px;gap:28px 36px;align-items:center}
.foot>div{min-width:0}
.footer-contact{display:flex;flex-direction:column;gap:10px;min-width:0}
.footer-contact-label{font:900 13px/1.3 'Roboto Condensed',Arial;letter-spacing:.06em;color:#F5F3ED}
.footer-email{color:#F5F3ED;text-decoration:none;font:900 clamp(22px,2.1vw,32px)/1.2 'Roboto Condensed',Arial;overflow-wrap:anywhere;align-self:flex-start;border-bottom:2px solid #FF5722;padding-bottom:5px}
.footer-email:hover{color:#D5FF00;border-color:#D5FF00}
.footer-email:focus-visible{outline:3px solid #D5FF00;outline-offset:5px}
.foot>.platforms{justify-self:end;gap:10px;max-width:100%}
.foot-links{grid-column:1/-1;max-width:none;width:100%;display:flex;align-items:center;gap:12px 22px;border-top:1px solid #ffffff38;padding-top:20px;flex-wrap:wrap;font-size:11px;line-height:1.6}
.foot-links>span{min-width:0;max-width:100%;overflow-wrap:anywhere}
.foot-links .cookie-reopen{min-height:44px;border-color:#ffffff66}
@media(min-width:801px) and (max-width:1100px){.foot{grid-template-columns:175px minmax(0,1fr) 198px;gap:24px}.foot .brand{width:175px}.footer-email{font-size:25px}.foot>.platforms{gap:6px}}
@media(max-width:800px){
.hero{padding-top:8px;gap:8px}
.hero-visual{order:0;padding:4px 0 12px;margin:0}
.hero .video-frame{box-sizing:content-box;width:min(92%,calc(clamp(260px,calc(100dvh - 185px),520px) * .5625));height:auto;max-width:none;aspect-ratio:9/16}
.hero .cta-row{order:1;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:5px 0 8px;align-items:stretch;width:100%}
.hero .cta-row .btn{min-width:0;min-height:52px;padding:12px 8px;font-size:13px;line-height:1.2;text-align:center;white-space:normal;gap:5px}
.hero h1{order:2;margin-top:25px}
.hero p{order:3}
.hero-social{order:4;margin-top:12px}
.hero .video-arrow{width:65px;height:65px}
footer{padding:34px 0 25px}
.foot{display:grid;grid-template-columns:minmax(0,1fr);gap:22px;align-items:start}
.foot .brand{width:169px;max-width:100%}
.footer-contact{gap:9px}
.footer-contact-label{font-size:12px;letter-spacing:.035em}
.footer-email{font-size:clamp(22px,6.3vw,29px);line-height:1.25}
.foot>.platforms{justify-self:start;gap:14px;flex-wrap:wrap;padding-bottom:5px}
.foot .platform{width:44px;height:44px;flex-shrink:0}
.foot-links{grid-column:1;gap:8px 18px;padding-top:17px;font-size:11px}
.foot-links>span:first-child{flex-basis:100%}
.foot-links a{display:inline-flex;align-items:center;min-height:44px}
}
@media(max-width:359px){.hero .cta-row .btn{font-size:12px;padding:11px 6px}.foot>.platforms{gap:12px}}

.footer-languages{display:inline-flex;align-items:center;gap:5px;flex-wrap:wrap}.footer-languages button{border:1px solid transparent;background:none;color:#F5F3ED;font:700 11px Arial;padding:10px 9px;min-height:44px;cursor:pointer}.footer-languages button[aria-pressed="true"]{color:#D5FF00;border-bottom-color:#D5FF00}.footer-languages button:hover{border-color:#FF5722}.footer-languages button:focus-visible{outline:2px solid #D5FF00;outline-offset:3px}
