*{box-sizing:border-box;margin:0;padding:0}
body{font-family:Arial,sans-serif;min-height:100vh;color:#fff;background:#180404 url("images/ganesh-bg.jpg") center/cover fixed no-repeat;padding:24px 14px}
.overlay{position:fixed;inset:0;background:rgba(25,0,0,.78);z-index:-1}
.hero{text-align:center;max-width:1000px;margin:auto;position:relative;padding:10px 90px 15px}
.logo{position:absolute;left:0;top:0;width:105px;height:105px;border-radius:50%;object-fit:cover;border:4px solid #e9bd45;box-shadow:0 0 20px #000}
h1{font-family:Georgia,serif;font-size:48px;color:#ffd85b;text-shadow:0 3px 8px #000;margin:8px 0 18px}
.ribbon{display:inline-block;background:linear-gradient(#ffd85b,#d7970d);color:#260c00;font-weight:900;font-size:22px;padding:12px 55px;clip-path:polygon(4% 0,96% 0,100% 50%,96% 100%,4% 100%,0 50%)}
.card{max-width:900px;margin:12px auto 20px;padding:28px 35px;border:1px solid #d6a323;border-radius:18px;background:rgba(18,2,2,.78);box-shadow:0 10px 35px rgba(0,0,0,.55)}
.member-box{width:max-content;max-width:100%;margin:0 auto 25px;padding:10px 25px;border:2px solid #e7b83f;border-radius:30px;color:#ffe47a;font-size:20px}
.member-box strong{color:#fff;font-size:21px}
.grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}
.field label{display:block;color:#ffd75b;font-weight:bold;margin-bottom:8px}
.field label i{margin-right:7px}
input[type=text],input[type=number],input[type=tel],input[type=file],textarea{width:100%;padding:12px;border:1px solid #a87822;border-radius:7px;background:rgba(15,0,0,.7);color:#fff;font-size:15px}
input::placeholder,textarea::placeholder{color:#aaa}
textarea{resize:vertical}
.gender{display:flex;gap:18px;flex-wrap:wrap;padding:11px 0}
.gender label{color:#fff;font-weight:normal}
input[type=radio]{accent-color:#ffc928}
.photo-row{display:flex;align-items:center;gap:25px;margin-top:20px}
.photo-field{flex:1}
small{display:block;color:#aaa;margin-top:6px}
#preview{display:none;width:115px;height:115px;object-fit:cover;border:2px solid #e7b83f;border-radius:10px}
button{display:block;width:min(390px,100%);margin:25px auto 0;padding:15px;border:0;border-radius:10px;background:linear-gradient(#ffd85b,#e2a50f);color:#250d00;font-size:19px;font-weight:900;cursor:pointer}
button:hover{filter:brightness(1.06)}
footer{text-align:center;color:#f3c54b;padding:10px;font-size:16px}
@media(max-width:700px){body{padding:14px 9px}.hero{padding:5px 0 15px}.logo{position:relative;display:block;margin:0 auto 8px;width:88px;height:88px}h1{font-size:30px}.ribbon{font-size:17px;padding:10px 35px}.card{padding:20px 15px}.grid{grid-template-columns:1fr}.photo-row{flex-direction:column;align-items:stretch}.member-box{font-size:16px}.member-box strong{font-size:17px}#preview{margin:auto}}
