@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-border-style:solid;--tw-ease:initial}}}@layer theme{:root,:host{--font-sans:ui-sans-serif,system-ui,sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji";--font-mono:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace;--ease-in-out:cubic-bezier(.4,0,.2,1);--default-transition-duration:.15s;--default-transition-timing-function:cubic-bezier(.4,0,.2,1);--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono)}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,ui-sans-serif,system-ui,sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab, red, red)){::placeholder{color:color-mix(in oklab,currentcolor 50%,transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.visible{visibility:visible}.absolute{position:absolute}.fixed{position:fixed}.relative{position:relative}.sticky{position:sticky}.block{display:block}.flex{display:flex}.grid{display:grid}.hidden{display:none}.inline-flex{display:inline-flex}.transform{transform:var(--tw-rotate-x,)var(--tw-rotate-y,)var(--tw-rotate-z,)var(--tw-skew-x,)var(--tw-skew-y,)}.resize{resize:both}.border{border-style:var(--tw-border-style);border-width:1px}.uppercase{text-transform:uppercase}.underline{text-decoration-line:underline}.transition{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to,opacity,box-shadow,transform,translate,scale,rotate,filter,-webkit-backdrop-filter,backdrop-filter,display,content-visibility,overlay,pointer-events;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.ease-in-out{--tw-ease:var(--ease-in-out);transition-timing-function:var(--ease-in-out)}}:root{--background:#0a0a0f;--foreground:#f5f5f7;--accent:#5cb85c;--accent-secondary:#6ec6e6;--surface:#16161d;--surface-light:#1e1e28;--border:#2a2a35;--muted:#8b8b9a}*{box-sizing:border-box}body{background:var(--background);color:var(--foreground);margin:0;font-family:Georgia,Times New Roman,Times,serif;font-weight:400;line-height:1.7}h1,h2,h3,h4,h5,h6{letter-spacing:.02em;margin:0 0 1rem;font-family:Georgia,Times New Roman,Times,serif;font-weight:600;line-height:1.2}.hero-title,.hero-section h1{font-family:Fontdiner Swanky,cursive!important;font-weight:400!important}h1{background:linear-gradient(135deg,var(--foreground)0%,var(--muted)100%);-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text;font-size:clamp(2.5rem,5vw,4rem)}h2{font-size:clamp(1.75rem,3vw,2.5rem)}h3{font-size:clamp(1.25rem,2vw,1.5rem)}p{color:var(--muted);margin:0 0 1.5rem;font-size:1.125rem}a{color:var(--foreground);text-decoration:none;transition:color .2s}a:hover{color:var(--accent)}.hero-section{flex-direction:column;justify-content:center;min-height:auto;padding:2rem 0;display:flex;position:relative}.hero-section:before{content:"";pointer-events:none;z-index:0;background:radial-gradient(#e5091426 0%,#0000 70%);width:100%;max-width:800px;height:400px;position:absolute;top:0;left:50%;transform:translate(-50%)}.hero-section>*{z-index:1;position:relative}.accent-bar{background:linear-gradient(90deg,var(--accent)0%,var(--accent-secondary)100%);border-radius:2px;width:60px;height:4px;margin-bottom:1.5rem}.content-wrapper{background:#1a1a1f;border-top:16px solid #111;border-bottom:16px solid #111;border-radius:4px;margin-top:1rem;padding:1.5rem 2rem;position:relative}.content-wrapper:before,.content-wrapper:after{content:"";background-image:repeating-linear-gradient(90deg,#0000 0 4px,#0a0a0f 4px 16px,#0000 16px 24px);height:16px;position:absolute;left:12px;right:12px}.content-wrapper:before{top:-16px}.content-wrapper:after{bottom:-16px}.content-wrapper p{font-size:1.125rem;line-height:1.8}.cta-button{background:linear-gradient(135deg,var(--accent)0%,var(--accent-secondary)100%);color:#fff;border-radius:8px;align-items:center;gap:.5rem;margin-top:1.5rem;padding:1rem 2rem;font-size:1rem;font-weight:600;transition:transform .2s,box-shadow .2s;display:inline-flex}.cta-button:hover{color:#fff;transform:translateY(-2px);box-shadow:0 10px 30px #e509144d}.page-content{padding:1rem 0}.page-content h1{margin-bottom:1rem}.rich-text{max-width:none}.rich-text p{margin-bottom:1.5rem}.rich-text ul,.rich-text ol{color:var(--muted);margin-bottom:1.5rem;padding-left:1.5rem}.rich-text li{margin-bottom:.5rem}.rich-text blockquote{border-left:3px solid var(--accent);color:var(--foreground);margin:2rem 0;padding-left:1.5rem;font-style:italic}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideInLeft{0%{opacity:0;transform:translate(-40px)}to{opacity:1;transform:translate(0)}}@keyframes slideInRight{0%{opacity:0;transform:translate(40px)}to{opacity:1;transform:translate(0)}}.fade-in{animation:.4s ease-out forwards fadeIn}.slide-in-left{animation:.4s ease-out forwards slideInLeft}.slide-in-right{animation:.4s ease-out forwards slideInRight}.hero-section,.page-content{animation:.4s ease-out forwards fadeIn}.projects-grid{grid-template-columns:repeat(2,1fr);gap:3rem;display:grid}@media (max-width:768px){.projects-grid{grid-template-columns:1fr}}.contact-layout{grid-template-columns:1fr 1fr!important;display:grid!important}@media (max-width:768px){.contact-layout{grid-template-columns:1fr!important}}@media (max-width:1024px){h1{font-size:2.5rem!important}h2{font-size:1.75rem!important}.hero-section{padding:1.5rem 0!important}}@media (max-width:768px){body{font-size:15px;line-height:1.6}h1{font-size:1.75rem!important;line-height:1.3!important}h2{font-size:1.4rem!important}h3{font-size:1.15rem!important}.hero-section{padding:1rem 0!important}.hero-section h1{font-size:1.75rem!important}.accent-bar{width:40px;height:3px;margin-bottom:1rem}.page-content{padding:1rem!important}.rich-text{font-size:.95rem}.rich-text p{margin-bottom:1rem}.cta-button{padding:.875rem 1.5rem!important;font-size:.9rem!important}.service-card{padding:1.25rem!important}.service-card h3{font-size:1.1rem!important}.mobile-nav-toggle{display:block!important}.desktop-nav{display:none!important}.footer-content{text-align:center;flex-direction:column!important;gap:1.5rem!important}.footer-nav{flex-wrap:wrap;justify-content:center;gap:.75rem!important}.footer-nav a{font-size:.8rem!important}.filmstrip-frame{padding:10px 8px!important}.sprocket-hole{width:8px!important;height:6px!important}.projects-layout{grid-template-columns:1fr!important;gap:2rem!important}.snapshots-section{order:2}.projects-list-section{order:1}.lightbox-nav-btn{padding:.5rem!important;font-size:1.5rem!important}.lightbox-close{font-size:1.5rem!important;top:.5rem!important;right:.5rem!important}}@media (max-width:480px){h1{font-size:1.5rem!important}h2{font-size:1.25rem!important}.hero-section h1{font-size:1.5rem!important}.page-content{padding:.75rem!important}.cta-button{justify-content:center;width:100%;padding:.75rem 1.25rem!important;font-size:.85rem!important}.service-card{padding:1rem!important}.contact-form input,.contact-form textarea{font-size:16px!important}.language-switcher{padding:.2rem!important}.language-switcher a{padding:.25rem .5rem!important;font-size:.7rem!important}}@media (hover:none) and (pointer:coarse){.cta-button,.nav-link,.service-card,.footer-nav a{align-items:center;min-height:44px;display:flex}a,button{-webkit-tap-highlight-color:#5cb85c33}}@media (max-width:768px){header>div{padding:.75rem 1rem!important}header img{height:40px!important}.footer-tagline{display:none}}@media (max-width:640px){section[style*=grid-template-columns]{grid-template-columns:1fr!important;gap:1rem!important}}@media (max-width:768px){.lightbox-thumbnails{gap:1rem!important}.lightbox-thumbnails>div{transform:rotate(0)!important}.lightbox-thumbnails img{width:140px!important;height:95px!important}}.mobile-nav-toggle{display:none}@media (max-width:768px){.mobile-nav-toggle{display:block!important}.desktop-nav{display:none!important}.mobile-header-title{display:block!important}header>div,.services-grid{padding-left:1rem!important;padding-right:1rem!important}.page-content{max-width:100%!important;padding:1rem!important}.content-wrapper{margin:0!important;padding:20px 1rem!important}footer{padding-left:1rem!important;padding-right:1rem!important}.footer-content{padding:0!important}section[style*=borderTop],.filmstrip-page,.filmstrip-page>div[style*=padding]{padding-left:1rem!important;padding-right:1rem!important}.content-wrapper .rich-text{padding:.5rem 0!important}.horizontal-layout{flex-direction:column!important;gap:1.5rem!important}.horizontal-layout>div{flex:none!important;width:100%!important}.content-wrapper>div[style*="position: absolute"]{left:12px!important;right:12px!important}.content-wrapper>div[style*="position: absolute"]>div{width:8px!important;height:6px!important}.rich-text{font-size:1rem!important;line-height:1.7!important}.rich-text h2{font-size:1.3rem!important}.rich-text h3{font-size:1.15rem!important}.cover-photo-wrapper{margin-bottom:1.5rem!important}div[style*="padding: 0 2rem"]{padding:0 1rem!important}footer{padding:1rem!important}footer>div{padding:0!important}}@keyframes fadeInUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}@keyframes scaleIn{0%{opacity:0;transform:scale(.9)}to{opacity:1;transform:scale(1)}}@keyframes pulse{0%,to{transform:scale(1)}50%{transform:scale(1.05)}}.animate-fade-in-up{animation:.8s ease-out forwards fadeInUp}.animate-fade-in{animation:.8s ease-out forwards fadeIn}.animate-slide-left{animation:.8s ease-out forwards slideInLeft}.animate-slide-right{animation:.8s ease-out forwards slideInRight}.animate-scale-in{animation:.6s ease-out forwards scaleIn}.animate-delay-1{opacity:0;animation-delay:.1s}.animate-delay-2{opacity:0;animation-delay:.2s}.animate-delay-3{opacity:0;animation-delay:.3s}.animate-delay-4{opacity:0;animation-delay:.4s}.animate-delay-5{opacity:0;animation-delay:.5s}.cta-button{transition:transform .3s,box-shadow .3s}.cta-button:hover{transform:translateY(-2px);box-shadow:0 8px 25px #5cb85c66}.service-card{transition:transform .3s,box-shadow .3s}.service-card:hover{transform:translateY(-5px);box-shadow:0 12px 30px #0000004d}@keyframes textReveal{0%{opacity:0;filter:blur(10px);transform:translateY(20px)}to{opacity:1;filter:blur();transform:translateY(0)}}@keyframes shimmer{0%{background-position:-200%}to{background-position:200%}}@keyframes glow{0%,to{text-shadow:0 0 10px #5cb85c4d,0 0 20px #5cb85c33}50%{text-shadow:0 0 20px #5cb85c80,0 0 40px #5cb85c4d}}@keyframes barExpand{0%{width:0}to{width:60px}}.animate-text-reveal{animation:1s ease-out forwards textReveal}.animate-shimmer{background:linear-gradient(90deg,var(--foreground)0%,var(--accent)25%,var(--foreground)50%,var(--accent)75%,var(--foreground)100%);-webkit-text-fill-color:transparent;background-size:200%;-webkit-background-clip:text;background-clip:text;animation:4s linear infinite shimmer}.animate-glow{animation:3s ease-in-out infinite glow}.animate-bar-expand{animation:.8s ease-out forwards barExpand}.hero-section h1{animation:1s ease-out forwards textReveal}.hero-section h2{opacity:0;animation:.8s ease-out .15s forwards textReveal}.hero-section .subtitle{opacity:0;animation:1s ease-out .2s forwards textReveal}.hero-section .rich-text p{animation:.8s ease-out forwards fadeInUp}.hero-section .rich-text p:first-child{opacity:0;animation-delay:.2s}.hero-section .rich-text p:nth-child(2){opacity:0;animation-delay:.35s}.hero-section .rich-text p:nth-child(3){opacity:0;animation:.8s ease-out .5s forwards fadeInUp,3s ease-in-out 1.3s infinite glow}.accent-bar{animation:.8s ease-out forwards barExpand,.5s ease-out forwards fadeIn}.hero-section .rich-text h1,.hero-section .rich-text h2{animation:1s ease-out forwards textReveal}@keyframes floatUp{0%,to{transform:translateY(0)}50%{transform:translateY(-5px)}}.service-card .icon-float{animation:3s ease-in-out infinite floatUp}@property --tw-rotate-x{syntax:"*";inherits:false}@property --tw-rotate-y{syntax:"*";inherits:false}@property --tw-rotate-z{syntax:"*";inherits:false}@property --tw-skew-x{syntax:"*";inherits:false}@property --tw-skew-y{syntax:"*";inherits:false}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-ease{syntax:"*";inherits:false}
