/* ============================================================
   ShubhhRishtey — Premium Gold Indian Wedding Theme
   register.css
   ============================================================ */

   @import url('https://fonts.googleapis.com/css2?family=Cormorant+Garamond:wght@400;500;600;700&family=Cinzel:wght@400;600&family=Poppins:wght@300;400;500;600&display=swap');

   /* ===== Reset ===== */
   *, *::before, *::after {
       box-sizing: border-box;
       margin: 0;
       padding: 0;
   }
   
   /* ===== Body ===== */
   body {
       font-family: 'Poppins', sans-serif;
       min-height: 100vh;
       position: relative;
       overflow-x: hidden;
   }
   
   /* ===== Background ===== */
   .bg-scene {
       position: fixed;
       inset: 0;
       z-index: 0;
       overflow: hidden;
   }
   
   .bg-img {
       position: absolute;
       inset: -20px;
       /* Indian wedding mandap / venue photo from Unsplash */
       background: url('https://images.unsplash.com/photo-1604604994333-f1b0e9471186?w=1600&q=85&fit=crop') center / cover no-repeat;
       filter: blur(12px) brightness(0.45) saturate(1.3);
       transform: scale(1.05);
   }
   
   .bg-overlay {
       position: absolute;
       inset: 0;
       background: linear-gradient(
           160deg,
           rgba(10, 5, 0, 0.72) 0%,
           rgba(40, 20, 0, 0.65) 40%,
           rgba(10, 5, 0, 0.75) 100%
       );
   }
   
   .gold-particles {
       position: absolute;
       inset: 0;
       background-image: radial-gradient(circle, rgba(255, 215, 80, 0.18) 1px, transparent 1px);
       background-size: 38px 38px;
   }
   
   /* ===== Page Section ===== */
   .register-section {
       position: relative;
       z-index: 1;
       padding: 50px 16px 70px;
       min-height: 100vh;
   }
   
   /* ===== Card ===== */
   .card {
       max-width: 860px;
       margin: 0 auto;
       position: relative;
       border-radius: 28px;
       overflow: hidden;
       border: 1.5px solid rgba(212, 175, 55, 0.45);
       box-shadow:
           0 0 0 1px rgba(212, 175, 55, 0.12),
           0 30px 80px rgba(0, 0, 0, 0.7),
           0 0 60px rgba(212, 175, 55, 0.08) inset;
       background: rgba(12, 8, 2, 0.82);
       backdrop-filter: blur(22px);
       -webkit-backdrop-filter: blur(22px);
   }
   
   /* ===== Gold Bars ===== */
   .gold-bar {
       height: 4px;
       background: linear-gradient(
           90deg,
           transparent 0%,
           #8B6914 5%,
           #D4AF37 20%,
           #F5E17A 50%,
           #D4AF37 80%,
           #8B6914 95%,
           transparent 100%
       );
   }
   
   /* ===== Corner Ornaments ===== */
   .corner {
       position: absolute;
       width: 56px;
       height: 56px;
       z-index: 2;
       pointer-events: none;
   }
   
   .corner svg { width: 100%; height: 100%; }
   
   .c-tl { top: 4px; left: 4px; }
   .c-tr { top: 4px; right: 4px; transform: scaleX(-1); }
   .c-bl { bottom: 4px; left: 4px; transform: scaleY(-1); }
   .c-br { bottom: 4px; right: 4px; transform: scale(-1, -1); }
   
   /* ===== Header ===== */
   .register-header {
       text-align: center;
       padding: 46px 40px 28px;
       position: relative;
       border-bottom: 1px solid rgba(212, 175, 55, 0.18);
   }
   
   .register-header::after {
       content: '';
       position: absolute;
       bottom: -1px;
       left: 10%;
       right: 10%;
       height: 1px;
       background: linear-gradient(90deg, transparent, #D4AF37, transparent);
   }
   
   .crown-row {
       font-size: 24px;
       letter-spacing: 14px;
       color: #D4AF37;
       margin-bottom: 10px;
   }
   
   .site-name {
       font-family: 'Cinzel', serif;
       font-size: 12px;
       letter-spacing: 5px;
       color: #D4AF37;
       text-transform: uppercase;
       margin-bottom: 12px;
   }
   
   .register-header h1 {
       font-family: 'Cormorant Garamond', serif;
       font-size: 40px;
       font-weight: 600;
       color: #F5E17A;
       margin-bottom: 8px;
       letter-spacing: 1px;
       line-height: 1.15;
   }
   
   .register-header p {
       color: rgba(212, 175, 55, 0.65);
       font-size: 13px;
       letter-spacing: 0.3px;
   }
   
   /* ===== Form Body ===== */
   .register-form {
       padding: 30px 44px 44px;
   }
   
   /* ===== Section Headers ===== */
   .sec-head {
       display: flex;
       align-items: center;
       gap: 12px;
       margin: 34px 0 8px;
   }
   
   .sec-line {
       flex: 1;
       height: 1px;
       background: linear-gradient(90deg, rgba(212, 175, 55, 0.5), transparent);
   }
   
   .sec-line.r {
       background: linear-gradient(90deg, transparent, rgba(212, 175, 55, 0.5));
   }
   
   .sec-label {
       font-family: 'Cinzel', serif;
       font-size: 10.5px;
       letter-spacing: 3px;
       color: #D4AF37;
       text-transform: uppercase;
       white-space: nowrap;
   }
   
   .sec-icon {
       font-size: 15px;
   }
   
   /* ===== Divider Ornament ===== */
   .divider-ornament {
       text-align: center;
       color: rgba(212, 175, 55, 0.32);
       font-size: 13px;
       letter-spacing: 6px;
       margin: 4px 0 18px;
   }
   
   /* ===== Form Grid ===== */
   .form-grid {
       display: grid;
       grid-template-columns: repeat(2, 1fr);
       gap: 16px;
       margin-bottom: 4px;
   }
   
   .form-group {
       display: flex;
       flex-direction: column;
   }
   
   .full-width {
       grid-column: 1 / -1;
   }
   
   /* ===== Labels ===== */
   .form-group label {
       font-size: 10px;
       font-weight: 600;
       letter-spacing: 1.3px;
       text-transform: uppercase;
       color: rgba(212, 175, 55, 0.75);
       margin-bottom: 7px;
   }
   
   /* ===== Inputs / Select / Textarea ===== */
   .form-group input,
   .form-group select,
   .form-group textarea {
       width: 100%;
       background: rgba(255, 255, 255, 0.04);
       border: 1px solid rgba(212, 175, 55, 0.28);
       border-radius: 10px;
       color: #F5E8C0;
       font-family: 'Poppins', sans-serif;
       font-size: 13.5px;
       padding: 12px 16px;
       outline: none;
       transition: border-color 0.2s, background 0.2s, box-shadow 0.2s;
       appearance: auto;
       -webkit-appearance: auto;
   }
   
   .form-group input::placeholder,
   .form-group textarea::placeholder {
       color: rgba(212, 175, 55, 0.28);
       font-size: 12.5px;
   }
   
   .form-group input:focus,
   .form-group select:focus,
   .form-group textarea:focus {
       border-color: #D4AF37;
       background: rgba(212, 175, 55, 0.07);
       box-shadow:
           0 0 0 3px rgba(212, 175, 55, 0.12),
           0 0 20px rgba(212, 175, 55, 0.05) inset;
   }
   
   .form-group select option {
       background: #1a1200;
       color: #F5E8C0;
   }
   
   .form-group textarea {
       resize: vertical;
       min-height: 100px;
   }
   
   .form-group input[type="file"] {
       padding: 10px 14px;
       cursor: pointer;
       color: rgba(212, 175, 55, 0.55);
       font-size: 12px;
   }
   
   /* ===== Submit Button ===== */
   .register-btn {
       width: 100%;
       margin-top: 36px;
       padding: 17px 20px;
       border: none;
       border-radius: 50px;
       background: linear-gradient(
           135deg,
           #8B6914 0%,
           #D4AF37 30%,
           #F5E17A 55%,
           #D4AF37 75%,
           #8B6914 100%
       );
       color: #1a0f00;
       font-family: 'Cinzel', serif;
       font-size: 14px;
       font-weight: 600;
       letter-spacing: 3px;
       text-transform: uppercase;
       cursor: pointer;
       box-shadow: 0 4px 30px rgba(212, 175, 55, 0.3);
       transition: transform 0.2s, box-shadow 0.2s;
       display: block;
   }
   
   .register-btn:hover {
       transform: translateY(-2px);
       box-shadow: 0 8px 40px rgba(212, 175, 55, 0.45);
   }
   
   .register-btn:active {
       transform: translateY(0);
       box-shadow: 0 3px 16px rgba(212, 175, 55, 0.25);
   }
   
   /* ===== Footer Motif ===== */
   .footer-motif {
       text-align: center;
       padding: 16px 16px 20px;
       font-size: 15px;
       letter-spacing: 10px;
       color: rgba(212, 175, 55, 0.28);
       font-family: serif;
   }
   
   /* ===== Responsive — Tablet ===== */
   @media (max-width: 768px) {
       .register-section { padding: 30px 12px 50px; }
       .register-header { padding: 30px 22px 20px; }
       .register-header h1 { font-size: 30px; }
       .register-form { padding: 22px 22px 34px; }
       .sec-label { font-size: 9.5px; letter-spacing: 2px; }
   }
   
   /* ===== Responsive — Mobile ===== */
   @media (max-width: 540px) {
       .form-grid { grid-template-columns: 1fr; }
       .full-width { grid-column: 1; }
       .register-header h1 { font-size: 26px; }
       .crown-row { font-size: 18px; letter-spacing: 10px; }
       .register-form { padding: 18px 16px 28px; }
       .corner { width: 42px; height: 42px; }
   }
   .form-group input,
.form-group select,
.form-group textarea {
    color: #1c244b; /* Dark Blue Text */
    font-weight: 500;
}

.form-group input::placeholder,
.form-group textarea::placeholder {
    color: #888;
    opacity: 1;
}