*{box-sizing:border-box}
:root{--pink:#ff2e7a;--white:#fff;--black:#080808;--dark:#111;--muted:#a7a7a7}
html{scroll-behavior:smooth}
body{margin:0;min-height:100vh;background:
radial-gradient(circle at 75% 10%,rgba(255,46,122,.16),transparent 28%),
radial-gradient(circle at 15% 80%,rgba(255,46,122,.08),transparent 30%),
linear-gradient(145deg,#171717 0%,#090909 48%,#020202 100%);
color:var(--white);font-family:"Exo 2",system-ui,sans-serif;overflow-x:hidden}
body:before{content:"";position:fixed;inset:0;pointer-events:none;opacity:.12;background-image:linear-gradient(115deg,transparent 0 48%,rgba(255,255,255,.08) 49%,transparent 50%),linear-gradient(65deg,transparent 0 70%,rgba(255,46,122,.08) 71%,transparent 72%);background-size:340px 340px;mix-blend-mode:screen}
.noise{position:fixed;inset:0;pointer-events:none;opacity:.035;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.8' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.7'/%3E%3C/svg%3E")}
.site-header{max-width:1080px;margin:auto;padding:28px 24px 10px;display:flex;align-items:center;gap:16px}
.brand{display:block;width:84px;height:84px;filter:drop-shadow(0 0 18px rgba(255,46,122,.2))}
.brand img{width:100%;height:100%;object-fit:contain}
.brand-copy{display:flex;flex-direction:column;line-height:1}
.brand-copy strong{font-size:24px;letter-spacing:1px}
.brand-copy span{margin-top:7px;color:var(--pink);font-size:12px;font-weight:700;letter-spacing:2.5px}
.page{max-width:850px;margin:0 auto;padding:28px 20px 60px}
.hero{position:relative;text-align:center;padding:24px 0 34px}
.eyebrow{font-size:11px;font-weight:700;letter-spacing:2.5px;color:#cfcfcf}
.hero h1{margin:10px 0 3px;font-size:clamp(48px,10vw,92px);font-weight:800;line-height:.9;letter-spacing:-2px;text-shadow:4px 4px 0 #000}
.hero p{margin:20px auto 0;max-width:560px;color:#bcbcbc;font-size:17px}
.brush{height:8px;width:170px;margin:22px auto 0;background:var(--pink);transform:skewX(-22deg);box-shadow:0 0 20px rgba(255,46,122,.3)}
.card{position:relative;padding:34px;background:rgba(12,12,12,.86);border:1px solid rgba(255,255,255,.1);box-shadow:0 24px 80px rgba(0,0,0,.55);backdrop-filter:blur(12px)}
.card:before{content:"";position:absolute;left:-1px;top:-1px;width:130px;height:4px;background:var(--pink)}
.section-title{display:flex;align-items:center;gap:16px;margin-bottom:24px}
.section-title.second{margin-top:38px}
.section-title>span{font-size:13px;font-weight:800;color:var(--pink);border:1px solid var(--pink);padding:7px 9px;line-height:1}
.section-title h2{font-size:23px;margin:0;letter-spacing:1px}
.section-title p{margin:4px 0 0;color:#888;font-size:13px}
.grid{display:grid;gap:18px}
.grid.two{grid-template-columns:1fr 1fr}
label{display:block}
label>span{display:block;font-size:12px;font-weight:700;letter-spacing:1px;color:#cfcfcf;margin:0 0 8px}
label b{color:var(--pink)}
input[type=text],input[type=email],input[type=tel]{width:100%;height:54px;padding:0 16px;border:1px solid #303030;background:#050505;color:#fff;outline:none;font:600 15px "Exo 2",sans-serif;transition:.2s}
input:focus{border-color:var(--pink);box-shadow:0 0 0 3px rgba(255,46,122,.1)}
input::placeholder{color:#555}
.upload{margin-top:8px;display:block;border:1px dashed #4a4a4a;background:#080808;cursor:pointer;transition:.2s}
.upload:hover{border-color:var(--pink);background:#0d0d0d}
.upload input{position:absolute;opacity:0;pointer-events:none}
.upload-inner{padding:30px 20px;text-align:center}
.upload-symbol{width:46px;height:46px;display:grid;place-items:center;margin:0 auto 12px;border:1px solid var(--pink);color:var(--pink);font-size:27px}
.upload strong{display:block;font-size:15px;letter-spacing:1.5px}
.upload span{display:block;color:#777;margin-top:6px;font-size:12px}
.privacy{font-size:11px;line-height:1.6;color:#777;margin:22px 0}
.submit{width:100%;height:62px;border:0;background:var(--pink);color:#fff;font:800 15px "Exo 2",sans-serif;letter-spacing:1.5px;cursor:pointer;display:flex;align-items:center;justify-content:center;gap:18px;box-shadow:0 12px 30px rgba(255,46,122,.18);transition:.2s}
.submit:hover{transform:translateY(-2px);box-shadow:0 16px 38px rgba(255,46,122,.3)}
.submit b{font-size:25px;font-weight:400}
.message{max-width:850px;margin:0 auto 20px;padding:18px 20px;display:flex;gap:14px;align-items:flex-start;border:1px solid}
.message .icon{width:30px;height:30px;display:grid;place-items:center;border-radius:50%;font-weight:800;flex:0 0 auto}
.message strong,.message span{display:block}.message span{margin-top:4px;color:#bbb;font-size:13px}
.success{border-color:rgba(87,220,130,.4);background:rgba(35,90,50,.15)}.success .icon{background:#57dc82;color:#06150a}
.error{border-color:rgba(255,46,122,.5);background:rgba(120,20,55,.12)}.error .icon{background:var(--pink);color:#fff}
.honeypot{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}
footer{max-width:850px;margin:0 auto;padding:0 20px 35px;color:#666;font-size:11px;letter-spacing:1px;text-align:center}
footer strong{color:#aaa}footer span{display:block;margin-top:7px;color:var(--pink)}
@media(max-width:650px){.site-header{padding-top:18px}.brand{width:68px;height:68px}.brand-copy strong{font-size:19px}.page{padding-top:10px}.hero h1{font-size:54px}.hero p{font-size:15px}.card{padding:24px 18px}.grid.two{grid-template-columns:1fr}.section-title.second{margin-top:30px}}

.photo-preview{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-top:14px}
.photo-thumb{position:relative;overflow:hidden;border:1px solid #303030;background:#050505;min-height:150px}
.photo-thumb img{display:block;width:100%;height:150px;object-fit:cover}
.photo-thumb img.file-placeholder{object-fit:cover}
.photo-meta{position:absolute;left:0;right:0;bottom:0;padding:8px 9px;background:linear-gradient(transparent,rgba(0,0,0,.95));color:#fff;font-size:10px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;padding-top:25px}
@media(max-width:650px){.photo-preview{grid-template-columns:repeat(2,1fr)}.photo-thumb img{height:125px}}
