@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Oswald:wght@500;600;700&display=swap');
:root{--bg:#100e1a;--panel:#171324;--pink:#ff39bc;--cyan:#33dceb;--violet:#9560dd;--white:#f5f0f8;--muted:#c7c1d3}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--bg);color:var(--white);font:16px/1.55 'DM Sans',Arial,sans-serif}a{color:inherit}button,input,select,textarea{font:inherit}button{cursor:pointer}.site-header{position:sticky;top:0;z-index:20;display:flex;align-items:center;justify-content:space-between;gap:2rem;padding:1rem clamp(1rem,4vw,4rem);background:#0b0915f2;border-bottom:1px solid #332040}.logo{text-decoration:none;display:inline-flex;flex-direction:column;line-height:1}.logo span{font-size:clamp(1.5rem,2.6vw,2.3rem);font-style:italic;font-weight:700;color:#ff7cdd;text-shadow:0 0 15px #ff39bc99}.logo small{letter-spacing:.48em;color:var(--cyan);font-weight:700;text-align:center;margin-top:.25rem}.site-header nav{display:flex;gap:1.7rem;align-items:center}.site-header nav a{text-decoration:none;font-size:.85rem}.site-header nav a:hover,.text-link{color:var(--cyan)}.menu-toggle{display:none}.hero{min-height:620px;display:grid;grid-template-columns:1fr 43%;background:radial-gradient(circle at 75% 50%,#72145b 0%,#29122e 32%,#100e1a 72%);border-bottom:1px solid #462351}.hero-overlay{padding:clamp(4rem,8vw,8rem) 0 clamp(3rem,7vw,6rem) clamp(1.2rem,5vw,5rem);position:relative;z-index:1}.eyebrow{font-size:.83rem;letter-spacing:.12em;color:var(--pink);font-weight:700}h1,h2,h3{font-family:Oswald,Impact,sans-serif;line-height:1.1}h1{font-size:clamp(3.5rem,6vw,6.7rem);margin:1rem 0}h1 em{font-style:normal;color:var(--cyan);text-shadow:0 0 24px #33dceb66}h2{font-size:clamp(2.3rem,4vw,4rem);margin:.4rem 0 1rem}h2 span{color:var(--cyan)}.intro{font-size:1.13rem;max-width:480px}.actions{display:flex;gap:1rem;flex-wrap:wrap;margin-top:2rem}.btn{display:inline-flex;align-items:center;justify-content:center;padding:.85rem 1.3rem;border-radius:7px;font-weight:700;text-decoration:none;border:2px solid transparent}.primary{background:var(--pink);color:#120a19;box-shadow:0 0 18px #ff39bc55}.secondary{border-color:var(--cyan);color:var(--cyan);background:#07131b80;box-shadow:0 0 15px #33dceb33}.btn:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid var(--cyan);outline-offset:3px}.hero-art{position:relative;overflow:hidden;background:linear-gradient(130deg,#3b102a99,#8c145d33),repeating-linear-gradient(90deg,#251024 0 35px,#34152f 36px 38px);border-left:1px solid #ff39bc44}.hero-art:before{content:"";position:absolute;inset:12% 14%;border:13px solid #592643;box-shadow:0 0 0 3px #a15b84,0 0 70px #ff39bc55;background:radial-gradient(circle at 50% 35%,#ce3484,#42132e 58%,#1c0d20 80%)}.neon-bolt{position:absolute;inset:5% 0 0;text-align:center;font-size:clamp(13rem,26vw,30rem);line-height:1.5;color:#ff7de4;text-shadow:0 0 18px var(--pink),0 0 50px var(--pink)}.hero-caption{position:absolute;bottom:2rem;left:2rem;font-size:.8rem;letter-spacing:.14em;text-transform:uppercase}.feature-strip{display:grid;grid-template-columns:repeat(4,1fr);gap:1rem;padding:1.4rem 3rem;background:#0a0912;border-bottom:1px solid #4b2754}.feature-strip span{text-align:center;color:#f1dcec;font-size:.9rem}.section{padding:clamp(3.5rem,6vw,6rem) clamp(1.2rem,5vw,5rem);max-width:1600px;margin:auto}.studio{display:grid;grid-template-columns:35% 1fr;gap:3rem;align-items:center}.studio p:not(.eyebrow),.booking-copy p,.rules p{color:var(--muted)}.text-link{font-weight:700}.set-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem}.set-card{min-height:290px;display:flex;align-items:end;padding:1rem;border-radius:12px;border:1px solid #81406d;box-shadow:inset 0 -80px 50px #100e1abf}.set-one{background:radial-gradient(circle at 45% 40%,#fb39ba,#4b1b78 55%,#120d22)}.set-two{background:linear-gradient(135deg,#eee,#9d9aaf 55%,#242033)}.set-three{background:radial-gradient(circle at 50% 30%,#efaa53,#8e315f 55%,#221122)}.set-card strong{text-shadow:0 2px 6px #000}.centered{text-align:center}.services{display:grid;grid-template-columns:repeat(3,1fr);gap:1.2rem;margin-top:2rem}.services article{background:var(--panel);border:1px solid #55305d;border-radius:10px;overflow:hidden;padding-bottom:1rem}.service-art{height:190px;display:grid;place-items:center;font-size:5rem;color:#ff9ce2}.art-hire{background:radial-gradient(circle,#82386b,#151025)}.art-shoot{background:radial-gradient(circle,#643eac,#171024)}.art-tuition{background:radial-gradient(circle,#1e7c95,#171024)}.services h3,.services p{margin:.7rem 1.1rem}.services p{color:var(--muted)}.booking-section{display:grid;grid-template-columns:34% 1fr;gap:3rem;background:radial-gradient(circle at 80% 20%,#2e1541,#100e1a 65%);max-width:none}.booking-copy ol{padding-left:1.4rem}.booking-copy li{margin:1.1rem 0}.notice{border-left:3px solid var(--cyan);background:#171b2a;padding:1rem;margin-top:2rem}.notice p{margin:.3rem 0}.booking-form{background:#10101f;border:1px solid #6385dc;border-radius:12px;padding:clamp(1rem,2.5vw,2rem);box-shadow:0 0 40px #12153e88}.booking-form h3{font-size:1.6rem;margin:0 0 1.5rem}.fields{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.booking-form label{display:block;font-size:.87rem;font-weight:600;margin-bottom:1rem}.booking-form label span:not(.check span){color:var(--pink)}input,select,textarea{display:block;width:100%;margin-top:.45rem;background:#211f32;color:var(--white);border:1px solid #5b536f;border-radius:7px;padding:.8rem;min-width:0}textarea{resize:vertical}.check{display:flex!important;align-items:flex-start;gap:.75rem;font-weight:400!important}.check input{width:18px;flex:0 0 18px;margin:.25rem 0}.check a{color:var(--cyan)}.submit{width:100%}.note{font-size:.79rem;color:var(--muted)}.rules{border-top:1px solid #40234c}footer{border-top:1px solid #44264c;display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:2rem 5vw;color:var(--muted)}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}
@media(max-width:900px){.studio,.booking-section{grid-template-columns:1fr}.hero{grid-template-columns:1fr}.hero-art{display:none}.feature-strip{grid-template-columns:repeat(2,1fr)}.set-card{min-height:220px}.site-header nav{gap:.8rem}}@media(max-width:650px){.menu-toggle{display:block;color:var(--white);background:none;border:1px solid #80538d;border-radius:5px;padding:.4rem .7rem}.site-header nav{display:none;position:absolute;top:100%;left:0;right:0;flex-direction:column;align-items:stretch;background:#0b0915;padding:1rem}.site-header nav.open{display:flex}.hero{min-height:470px}.hero-overlay{padding:4rem 1.2rem}.feature-strip{padding:1rem;gap:.6rem}.feature-strip span{font-size:.75rem}.set-grid,.services,.fields{grid-template-columns:1fr}.set-card{min-height:190px}.services article{max-width:none}footer{flex-direction:column;align-items:flex-start}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{animation:none!important;transition:none!important}}

.skip{position:absolute;top:-100px;left:1rem;z-index:100;background:var(--cyan);color:var(--bg);padding:1rem}.skip:focus{top:1rem}.trap{display:none}.footer-links{display:flex;flex-wrap:wrap;gap:1rem}.page-hero{min-height:65vh}.page-hero h1{max-width:1000px}.page-hero .intro{max-width:760px}.gallery-toolbar{display:flex;gap:.7rem;flex-wrap:wrap;margin:2rem 0}.gallery-toolbar [aria-pressed=true]{background:var(--cyan);color:var(--bg)}details{border-bottom:1px solid #5b536f;padding:1.3rem 0}summary{cursor:pointer;font-weight:700}details p{max-width:750px;color:var(--muted)}button:disabled{opacity:.65;cursor:not-allowed}[hidden]{display:none!important}.set-card a{font-weight:700}.set-card p{font-size:.8rem}.notice p{white-space:pre-wrap}.booking-form [aria-invalid=true]{border-color:#ff90a0}section[id]{scroll-margin-top:110px}@media(max-width:400px){h1{font-size:2.7rem}.btn{width:100%}.site-header{gap:.5rem}.logo span{font-size:1.5rem}}

/* Neon sign branding: intrinsic dimensions reserve space while SVG loads. */
.logo img{display:block;width:clamp(180px,22vw,260px);height:auto;max-width:100%}.site-header .logo{flex-shrink:0}footer .logo img{width:220px}@media(max-width:650px){.logo img{width:190px}}
