/* Shared extras for the generated pages. Page layout lives inline in each page. */
*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}
body{margin:0}
img,video{max-width:100%}
.hero-slide{max-width:none!important}
a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible{outline:2px solid #C8381B;outline-offset:3px}
input,textarea{box-sizing:border-box;width:100%}
@media (prefers-reduced-motion: reduce){html{scroll-behavior:auto}.hero-slide{transition:none!important}}

/* Hero: smaller screens */
@media (max-width: 760px){
  #freelance{border-left:0!important;padding-left:0!important;border-top:1px solid #3A3631;padding-top:48px!important}
  section[style*="padding: 96px 40px"], div[style*="padding: 96px 40px"]{padding-left:24px!important;padding-right:24px!important}
  [style*="36px 52px"]{padding:0 24px 32px!important}
  [style*="max-width: 1360px"]{padding-left:24px!important;padding-right:24px!important}
}

/* Lightbox (private pages) */
.priv main img, .priv img.zoomable{cursor:zoom-in}
.lb{position:fixed;inset:0;z-index:1000;background:rgba(12,11,10,.94);display:flex;align-items:center;justify-content:center;padding:4vh 4vw;opacity:0;transition:opacity .2s ease}
.lb.on{opacity:1}
.lb img{max-width:100%;max-height:100%;width:auto;height:auto;object-fit:contain;border-radius:3px;box-shadow:0 10px 60px rgba(0,0,0,.5);cursor:zoom-out}
.lb.tall{align-items:flex-start;overflow:auto}
.lb.tall img{max-height:none;max-width:min(100%,1100px)}
.lb button{position:fixed;top:16px;width:44px;height:44px;border-radius:999px;border:1.5px solid #F3F0EA;background:rgba(0,0,0,.4);color:#F3F0EA;font:22px/1 system-ui;cursor:pointer;display:flex;align-items:center;justify-content:center}
.lb .x{right:16px}.lb .p{left:16px;top:50%}.lb .n{right:16px;top:50%}
.lb .cap{position:fixed;bottom:14px;left:0;right:0;text-align:center;font:13px 'JetBrains Mono',monospace;color:#B5AEA2;padding:0 70px}
