body{background-color:#0d0b09;margin:0;padding:0}:root{--bg:#060a10;--surface:#0c1520;--fg:#ddefff;--muted:#ddefff80;--dim:#ddefff14;--amber:#00d8ff;--orange:#f80;--border:#00d8ff1a;--font-display:"Orbitron", "Courier New", monospace;--font-body:"Space Grotesk", system-ui, sans-serif;--gutter:clamp(1.25rem, 5vw, 6rem);--text-xs:clamp(.65rem, .63rem + .1vw, .72rem);--text-sm:clamp(.78rem, .75rem + .15vw, .875rem);--text-base:clamp(.9rem, .88rem + .1vw, 1rem);--text-md:clamp(1.05rem, .95rem + .5vw, 1.25rem);--text-lg:clamp(1.25rem, 1.05rem + 1vw, 1.6rem);--text-xl:clamp(1.6rem, 1.3rem + 1.5vw, 2.2rem);--text-2xl:clamp(2.1rem, 1.6rem + 2.5vw, 3.4rem);--text-3xl:clamp(2.8rem, 2rem + 4vw, 5rem);--text-hero:clamp(4rem, 3rem + 5.5vw, 8rem)}html{-webkit-text-size-adjust:100%;-moz-text-size-adjust:100%;text-size-adjust:100%}*{box-sizing:border-box;-webkit-tap-highlight-color:transparent;margin:0;padding:0}::-webkit-scrollbar{width:6px}::-webkit-scrollbar-track{background:var(--bg)}::-webkit-scrollbar-thumb{background:#00d8ff59;border-radius:3px}::-webkit-scrollbar-thumb:hover{background:var(--amber)}@media (hover:hover) and (pointer:fine){*{cursor:none!important}}body{background:var(--bg);color:var(--fg);font-family:var(--font-body);font-size:var(--text-base);-webkit-font-smoothing:antialiased;line-height:1.6;overflow-x:hidden}h1,h2,h3,h4{font-family:var(--font-display);font-style:normal;line-height:1.05}.cursor-dot{background:var(--amber);pointer-events:none;z-index:10000;border-radius:50%;width:5px;height:5px;position:fixed;top:0;left:0}.cursor-outline{pointer-events:none;z-index:9999;width:36px;height:36px;font-family:var(--font-body);letter-spacing:1px;color:#0000;border:1px solid #00d8ff73;border-radius:50%;justify-content:center;align-items:center;font-size:9px;font-weight:600;transition:width .3s,height .3s,background .3s,border-color .3s;display:flex;position:fixed;top:0;left:0;transform:translate(-50%,-50%)}.cursor-outline.hovering{border-color:var(--amber);width:80px;height:80px;color:var(--amber);background:#00d8ff14}header{z-index:1000;width:100%;padding:clamp(10px, 1.2vw, 16px) var(--gutter);border-bottom:1px solid var(--border);-webkit-backdrop-filter:blur(14px);background:#060a10d1;justify-content:space-between;align-items:center;display:flex;position:fixed;top:0;left:0}.logo-text{align-items:center;text-decoration:none;display:flex}.logo-text img{mix-blend-mode:screen;width:auto;height:clamp(52px,7vw,90px);animation:6s ease-in-out infinite logo-float}@keyframes logo-float{0%,to{transform:translateY(0)}50%{transform:translateY(-5px)}}.nav-bar{align-items:center;gap:clamp(1.25rem,3vw,2.5rem);display:flex}.nav-link{font-family:var(--font-body);font-size:var(--text-xs);letter-spacing:.09em;text-transform:uppercase;color:var(--muted);font-weight:500;text-decoration:none;transition:color .25s}.nav-link:hover{color:var(--fg)}.nav-link.cta{background:var(--amber);opacity:1;border-radius:2px;padding:8px 18px;color:#060a10!important}.nav-link.cta:hover{opacity:.85}.main-content{min-height:100dvh;padding-top:clamp(80px,10vh,130px)}.hero-section{padding:clamp(32px, 5vh, 80px) var(--gutter) clamp(40px, 7vh, 90px);border-bottom:1px solid var(--border)}.hero-label{font-family:var(--font-body);font-size:var(--text-xs);letter-spacing:.18em;text-transform:uppercase;color:var(--amber);margin-bottom:1.5rem;font-weight:500;display:block}.hero-title{font-family:var(--font-display);font-style:normal;font-weight:700;font-size:var(--text-hero);letter-spacing:-.02em;margin-bottom:clamp(1.25rem,3.5vh,2.25rem);line-height:1}.hero-sub{font-size:var(--text-md);color:var(--muted);max-width:50ch;font-weight:300;line-height:1.55}.project-list{flex-direction:column;display:flex}.project-item{border-top:1px solid var(--border);padding:clamp(40px, 7vh, 90px) var(--gutter);color:var(--fg);grid-template-columns:1fr 1fr;align-items:center;gap:clamp(2rem,6vw,5rem);text-decoration:none;transition:background .5s;display:grid}.project-item:hover{background:var(--surface)}.project-info{flex-direction:column;gap:10px;display:flex}.project-info h2{font-family:var(--font-display);font-style:normal;font-weight:600;font-size:var(--text-3xl);letter-spacing:-.01em;color:var(--fg);line-height:1.05}.project-category{font-family:var(--font-body);font-size:var(--text-xs);letter-spacing:.15em;text-transform:uppercase;color:var(--amber);margin-bottom:2px;font-weight:500}.project-image-preview{aspect-ratio:16/10;background:var(--surface);width:100%;overflow:hidden}.project-image-preview img{object-fit:cover;filter:saturate(.7)brightness(.9);width:100%;height:100%;transition:transform 1.2s cubic-bezier(.16,1,.3,1),filter .6s;display:block}.project-item:hover .project-image-preview img{filter:saturate()brightness();transform:scale(1.04)}.project-media-wrapper{aspect-ratio:16/10;background:var(--surface);width:100%;overflow:hidden}.project-media-asset{object-fit:cover;filter:saturate(.7)brightness(.9);width:100%;height:100%;transition:transform 1.2s cubic-bezier(.16,1,.3,1),filter .6s;display:block}.project-item:hover .project-media-asset{filter:saturate()brightness();transform:scale(1.04)}.masonry-grid{padding:clamp(2rem, 5vw, 4rem) var(--gutter) clamp(80px, 12vh, 160px);grid-template-columns:repeat(2,1fr);gap:clamp(.5rem,1.2vw,1rem);display:grid}.masonry-item{background:var(--surface);width:100%;position:relative;overflow:hidden}.masonry-item img{object-fit:cover;filter:saturate(.7)brightness(.9);width:100%;height:100%;transition:transform .8s cubic-bezier(.16,1,.3,1),filter .5s;display:block}.masonry-item:hover img{filter:saturate()brightness();transform:scale(1.03)}.masonry-item-label{padding:1rem 0 .25rem}.masonry-item-label .project-category{margin-bottom:4px}.masonry-item-label h3{font-family:var(--font-display);font-style:normal;font-weight:600;font-size:var(--text-xl);color:var(--fg)}.news-grid{padding:0 var(--gutter) clamp(80px, 12vh, 160px);grid-template-columns:1.3fr 1fr;gap:clamp(2rem,5vw,4rem);display:grid}.article-main{flex-direction:column;gap:1.5rem;display:flex}.article-sidebar{flex-direction:column;display:flex}.service-block{border-top:1px solid var(--border);padding:2rem 0}.service-block:last-child{border-bottom:1px solid var(--border)}.service-block h4{font-family:var(--font-body);font-size:var(--text-xs);letter-spacing:.15em;text-transform:uppercase;color:var(--amber);margin-bottom:8px;font-style:normal;font-weight:500}.service-block h3{font-family:var(--font-display);font-style:normal;font-weight:600;font-size:var(--text-xl);color:var(--fg);margin-bottom:10px}.service-block p{color:var(--muted);font-size:var(--text-sm);line-height:1.65;font-family:var(--font-body);margin-bottom:1.5rem}.service-cta{font-family:var(--font-body);font-size:var(--text-xs);letter-spacing:.12em;text-transform:uppercase;color:var(--fg);border-bottom:1px solid var(--border);padding-bottom:3px;font-weight:600;text-decoration:none;transition:color .25s,border-color .25s;display:inline-block}.service-cta:hover{color:var(--amber);border-color:var(--amber)}.booking-form{flex-direction:column;gap:1.25rem;display:flex}.booking-form-row{grid-template-columns:1fr 1fr;gap:1.25rem;display:grid}.booking-field{flex-direction:column;gap:.5rem;display:flex}.booking-field label{font-family:var(--font-body);font-size:var(--text-xs);letter-spacing:.12em;text-transform:uppercase;color:var(--muted);font-weight:500}.booking-field input,.booking-field select,.booking-field textarea{background:var(--surface);border:1px solid var(--border);color:var(--fg);font-family:var(--font-body);font-size:var(--text-sm);appearance:none;border-radius:2px;outline:none;width:100%;padding:.85rem 1rem;transition:border-color .25s}.booking-field input::placeholder,.booking-field textarea::placeholder{color:#ddefff33}.booking-field input:focus,.booking-field select:focus,.booking-field textarea:focus{border-color:var(--amber)}.booking-field textarea{resize:vertical;min-height:140px;line-height:1.6}.booking-field select option{background:var(--surface);color:var(--fg)}.booking-submit{background:var(--amber);color:#060a10;font-family:var(--font-body);font-size:var(--text-xs);letter-spacing:.14em;text-transform:uppercase;cursor:pointer;border:none;border-radius:2px;align-self:flex-start;padding:1rem 2rem;font-weight:700;transition:opacity .25s}.booking-submit:hover{opacity:.85}.booking-submit:disabled{opacity:.5;cursor:not-allowed}.booking-form-success{background:var(--surface);border:1px solid var(--border);flex-direction:column;align-items:flex-start;gap:1rem;padding:clamp(2rem,5vw,3.5rem);display:flex}.booking-form-success p{color:var(--muted);font-size:var(--text-base)}.booking-reset-btn{font-family:var(--font-body);font-size:var(--text-xs);letter-spacing:.18em;text-transform:uppercase;color:var(--amber);cursor:pointer;background:0 0;border:none;border-bottom:1px solid #00d8ff66;padding:0 0 4px;font-weight:600;transition:opacity .3s}.booking-reset-btn:hover{opacity:.7}.booking-error{font-size:var(--text-sm);color:#e05a5a;font-style:normal}.booking-stripe-btn{background:var(--amber);color:#060a10;font-family:var(--font-body);font-size:var(--text-xs);letter-spacing:.12em;text-transform:uppercase;text-align:center;border-radius:2px;padding:.85rem 1.5rem;font-weight:700;text-decoration:none;transition:opacity .25s;display:inline-block}.booking-stripe-btn:hover{opacity:.85}@media (width<=640px){.booking-form-row{grid-template-columns:1fr}}footer{padding:clamp(80px, 12vh, 150px) var(--gutter) clamp(40px, 6vh, 70px);text-align:center;border-top:1px solid var(--border)}.footer-title{font-family:var(--font-display);font-style:normal;font-weight:700;font-size:var(--text-3xl);letter-spacing:-.01em;margin-bottom:clamp(2.5rem,5vh,4rem);line-height:1.1}.footer-social{justify-content:center;gap:2.5rem;margin-bottom:clamp(2rem,4vh,3.5rem);display:flex}.footer-social-link{font-family:var(--font-body);font-size:var(--text-xs);letter-spacing:.12em;text-transform:uppercase;color:var(--muted);font-weight:500;text-decoration:none;transition:color .25s}.footer-social-link:hover{color:var(--fg)}.footer-link-big{font-family:var(--font-body);font-size:var(--text-xs);letter-spacing:.18em;text-transform:uppercase;color:var(--amber);border-bottom:1px solid #00d8ff66;padding-bottom:4px;font-weight:600;text-decoration:none;transition:opacity .3s}.footer-link-big:hover{opacity:.7}.caption{font-size:var(--text-xs);color:var(--muted);letter-spacing:.06em;font-style:normal}@media (width<=900px){.project-item{grid-template-columns:1fr;gap:2rem}.news-grid{grid-template-columns:1fr}}@media (width<=640px){.masonry-grid{grid-template-columns:1fr}.nav-bar{gap:1rem}}.hamburger{cursor:pointer;z-index:1001;background:0 0;border:none;flex-direction:column;flex-shrink:0;gap:5px;padding:8px;display:none}.hamburger span{background:var(--fg);transform-origin:50%;border-radius:1px;width:22px;height:2px;transition:transform .25s,opacity .25s;display:block}.hamburger.open span:first-child{transform:translateY(7px)rotate(45deg)}.hamburger.open span:nth-child(2){opacity:0;transform:scaleX(0)}.hamburger.open span:nth-child(3){transform:translateY(-7px)rotate(-45deg)}.mobile-nav{-webkit-backdrop-filter:blur(24px);backdrop-filter:blur(24px);z-index:999;background:#060a10f7;flex-direction:column;justify-content:center;align-items:center;gap:2rem;padding:6rem 2rem 3rem;display:flex;position:fixed;inset:0}.mobile-nav-link{font-family:var(--font-display);font-size:var(--text-2xl);color:var(--fg);letter-spacing:-.01em;text-align:center;font-weight:600;text-decoration:none;transition:color .2s}.mobile-nav-link:active{color:var(--amber)}.mobile-nav-link.cta{background:var(--amber);color:#060a10;font-family:var(--font-body);font-size:var(--text-base);letter-spacing:.1em;text-transform:uppercase;border-radius:2px;margin-top:.5rem;padding:.85rem 2.5rem;font-weight:700}.photo-cta-btn{background:var(--amber);color:#060a10;font-family:var(--font-body);font-size:var(--text-sm);letter-spacing:.12em;text-transform:uppercase;border-radius:2px;margin-top:clamp(1.5rem,3vh,2.5rem);padding:.9rem 2rem;font-weight:700;text-decoration:none;transition:opacity .25s;display:inline-block}.photo-cta-btn:hover{opacity:.85}.shoot-types-section{padding:clamp(3rem, 6vh, 5rem) var(--gutter);border-bottom:1px solid var(--border)}.shoot-types-grid{grid-template-columns:repeat(3,1fr);gap:clamp(1rem,2vw,2rem);display:grid}.shoot-type-card{border:1px solid var(--border);background:var(--surface);flex-direction:column;gap:.75rem;padding:clamp(1.5rem,2.5vw,2.5rem);display:flex}.shoot-type-icon{font-size:2rem;line-height:1}.shoot-type-card h3{font-family:var(--font-display);font-style:normal;font-weight:600;font-size:var(--text-lg);color:var(--fg)}.shoot-type-card p{color:var(--muted);font-size:var(--text-sm);line-height:1.6}.portfolio-section{border-top:1px solid var(--border)}.portfolio-header{padding:clamp(2rem, 5vh, 4rem) var(--gutter) 0}.portfolio-title{font-family:var(--font-display);font-style:normal;font-weight:700;font-size:var(--text-2xl);color:var(--fg);margin-top:.5rem}.portfolio-grid{padding:clamp(1.5rem, 3vw, 2.5rem) var(--gutter) clamp(2rem, 4vh, 3rem);grid-template-columns:repeat(3,1fr);gap:clamp(.4rem,.8vw,.75rem);display:grid}.portfolio-item{background:var(--surface);display:block;overflow:hidden}.portfolio-thumb{aspect-ratio:16/9;background:var(--surface);width:100%;overflow:hidden}.portfolio-thumb img{object-fit:cover;filter:saturate(.7)brightness(.9);width:100%;height:100%;transition:transform .8s cubic-bezier(.16,1,.3,1),filter .5s;display:block}.portfolio-item:hover .portfolio-thumb img{filter:saturate()brightness();transform:scale(1.04)}@media (width<=640px){.portfolio-grid{grid-template-columns:repeat(2,1fr)}}.pricing-section{padding:clamp(3rem, 6vh, 5rem) var(--gutter);border-top:1px solid var(--border)}.pricing-header h2{font-family:var(--font-display);font-style:normal;font-weight:700;font-size:var(--text-2xl);color:var(--fg);margin-top:.5rem}.pricing-groups{flex-direction:column;gap:clamp(2.5rem,5vh,4rem);margin-top:clamp(2rem,4vh,3.5rem);display:flex}.pricing-group-title{font-family:var(--font-body);font-size:var(--text-xs);letter-spacing:.15em;text-transform:uppercase;color:var(--amber);margin-bottom:1rem;font-weight:600}.pricing-table{border-collapse:collapse;width:100%;font-family:var(--font-body);font-size:var(--text-sm)}.pricing-table th{text-align:left;font-size:var(--text-xs);letter-spacing:.1em;text-transform:uppercase;color:var(--muted);border-bottom:1px solid var(--border);padding:.65rem 1.25rem .65rem 0;font-weight:600}.pricing-table td{border-bottom:1px solid var(--dim);color:var(--fg);vertical-align:top;padding:1rem 1.25rem 1rem 0;line-height:1.5}.pricing-table tbody tr:last-child td{border-bottom:none}.price-cell{font-family:var(--font-display);font-size:var(--text-md);color:var(--amber);white-space:nowrap;font-weight:700}.price-cell span{font-family:var(--font-body);font-size:var(--text-xs);color:var(--muted);font-weight:400}.testimonials-section{padding:clamp(3rem, 6vh, 5rem) var(--gutter);border-top:1px solid var(--border)}.testimonials-section h2{font-family:var(--font-display);font-style:normal;font-weight:700;font-size:var(--text-2xl);color:var(--fg);margin:.5rem 0 clamp(2rem,4vh,3rem)}.testimonials-grid{grid-template-columns:repeat(3,1fr);gap:clamp(1rem,2vw,2rem);display:grid}.testimonial-card{background:var(--surface);border:1px solid var(--border);flex-direction:column;gap:1.25rem;padding:clamp(1.5rem,2.5vw,2.5rem);display:flex}.testimonial-quote{color:var(--fg);font-size:var(--text-sm);opacity:.5;font-style:italic;line-height:1.7}.testimonial-author{font-size:var(--text-xs);color:var(--amber);letter-spacing:.08em;font-weight:600}.photo-footer-strip{text-align:center;padding:clamp(4rem, 8vh, 7rem) var(--gutter);border-top:1px solid var(--border);flex-direction:column;align-items:center;display:flex}.photo-footer-strip h2{font-family:var(--font-display);font-style:normal;font-weight:700;font-size:var(--text-3xl);color:var(--fg)}@media (width<=900px){.shoot-types-grid,.testimonials-grid{grid-template-columns:1fr}}@media (width<=640px){.pricing-details-col{display:none}}:focus-visible{outline:2px solid var(--amber);outline-offset:3px;border-radius:2px}:focus:not(:focus-visible){outline:none}@media (width<=768px){.hamburger{display:flex}.nav-bar{display:none}.booking-field input,.booking-field select,.booking-field textarea{font-size:16px}.logo-text img{height:44px}}@media (width<=480px){.hero-title{letter-spacing:-.01em;font-size:clamp(1.8rem,9vw,2.8rem)}.footer-social{gap:1.5rem}.booking-form-row{grid-template-columns:1fr}}
