@import "https://fonts.googleapis.com/css2?family=Outfit:wght@300;400;500;600;700;800&display=swap";
:root{--bg-primary:#fff;--bg-secondary:#f8f9fb;--bg-card:#fff;--bg-card-hover:#f1f3f5;--border:#0000001a;--border-focus:#6c63ff66;--accent-purple:#6c63ff;--accent-gold:#b8860b;--accent-crimson:#c0392b;--accent-blue:#002060;--text-primary:#1a1d23;--text-secondary:#4a4d55;--text-muted:#71747c;--input-bg:#fff;--input-border:#00000026;--success:#27ae60;--error:#e74c3c}*{box-sizing:border-box;margin:0;padding:0}html,body{background-color:var(--bg-primary);min-height:100%;color:var(--text-primary);font-family:Outfit,sans-serif;overflow-x:hidden}.page-bg{background-color:var(--bg-primary);background-image:radial-gradient(at 0 0,#6c63ff08 0,#0000 50%),radial-gradient(at 100% 0,#c0392b08 0,#0000 50%);min-height:100vh;position:relative;overflow:hidden}@keyframes blob1{0%{transform:translate(0)scale(1)}to{transform:translate(5%,8%)scale(1.1)}}@keyframes blob2{0%{transform:translate(0)scale(1)}to{transform:translate(-6%,-5%)scale(1.08)}}::-webkit-scrollbar{width:6px}::-webkit-scrollbar-track{background:var(--bg-secondary)}::-webkit-scrollbar-thumb{background:#dcdde1;border-radius:3px}::-webkit-scrollbar-thumb:hover{background:#ced6e0}.container{width:100%;max-width:100%;margin:0;padding:0 15px 20px}.header{text-align:center;z-index:10;background:#fff;padding:24px 16px 4px;position:relative}.header-divider{background:linear-gradient(90deg, var(--accent-blue), var(--accent-crimson));border-radius:2px;width:30px;height:2px;margin:6px auto}.header-top-grid{grid-template-columns:1fr 1fr;align-items:start;gap:150px;width:auto;max-width:1200px;margin:0 auto 5px;display:grid}.header-column{text-align:center;flex-direction:column;align-items:center;display:flex}.header-logo-container{justify-content:center;align-items:center;height:50px;margin-bottom:0;display:flex}.header-logo{object-fit:contain;border-radius:50%;max-width:60px;max-height:100%}.header-masonic-title{letter-spacing:.8px;text-transform:uppercase;font-family:Times New Roman,serif;font-size:clamp(14px,1.6vw,17px);font-weight:700;line-height:1.3}.header-masonic-title.blue{color:#002060}.header-masonic-title.red{color:#e74c3c}.header-masonic-title .year{margin-top:5px;font-size:1.1em;display:block}@media (max-width:768px){.header{padding:20px 16px 15px}.header-top-grid{grid-template-columns:1fr;gap:15px;margin-bottom:5px}.header-logo-container{height:60px;margin-bottom:5px}.header-logo{max-width:60px}.header-masonic-title{letter-spacing:.5px;font-size:13px;line-height:1.15}.header-masonic-title br{content:"";display:block}.header-masonic-title .year{margin-top:2px;display:block}}.nav-desktop{align-items:center;gap:32px;display:flex!important}.nav-mobile-toggle{display:none!important}@media (max-width:900px){.nav-desktop{display:none!important}.nav-mobile-toggle{margin-left:auto;display:flex!important}}.nav-mobile-menu{-webkit-backdrop-filter:blur(30px);backdrop-filter:blur(30px);border-bottom:2px solid var(--accent-purple);z-index:999;background:#ffffffe6;flex-direction:column;gap:20px;padding:24px;animation:.3s forwards slideDown;display:flex;position:fixed;top:70px;left:0;right:0;box-shadow:0 10px 40px #000c}@keyframes slideDown{0%{opacity:0;transform:translateY(-100%)}to{opacity:1;transform:translateY(0)}}.nav-mobile-link{color:var(--text-secondary);cursor:pointer;text-align:left;background:0 0;border:none;border-radius:10px;padding:12px 14px;font-size:18px;font-weight:600;transition:all .2s}.nav-mobile-link.active{color:var(--accent-purple);border-left:4px solid var(--accent-purple);background:#6c63ff1a}.header-badge.red-theme{color:#c0392b;background:#f5d7d7;border-color:#c0392b66}.card{background:var(--bg-card);border:1px solid var(--border);z-index:5;border-radius:8px;width:100%;padding:10px 16px;transition:all .3s;position:relative;box-shadow:0 1px 4px #0000000a}@media (max-width:600px){.card{padding:16px 12px}}.section-title{align-items:center;gap:6px;margin-bottom:20px;display:flex}.section-title-bar{background:linear-gradient(180deg, var(--accent-blue), var(--accent-crimson));border-radius:2px;width:3px;height:14px}.section-title h2{letter-spacing:1.2px;text-transform:uppercase;color:var(--text-primary);font-size:15.5px;font-weight:700}.form-grid{gap:8px;display:grid}.form-grid-2{grid-template-columns:1fr 1fr}.form-grid-3{grid-template-columns:1fr 1fr 1fr}.form-grid-4{grid-template-columns:repeat(4,1fr)}.form-grid-5{grid-template-columns:repeat(5,1fr)}.form-grid-6{grid-template-columns:repeat(6,1fr)}@media (max-width:1100px){.form-grid-4,.form-grid-5,.form-grid-6{grid-template-columns:1fr 1fr}}@media (max-width:768px){.form-grid-2,.form-grid-3,.form-grid-4,.form-grid-5,.form-grid-6{grid-template-columns:1fr!important}.hide-mobile{display:none!important}}.form-row{align-items:start;gap:12px;margin-bottom:12px;display:grid}.form-row-5{grid-template-columns:1fr 1.2fr 1fr 1fr 1.4fr}.form-row-4{grid-template-columns:repeat(4,1fr)}.form-row-2{grid-template-columns:1.4fr 1fr}@media (max-width:1024px){.form-row-5,.form-row-4{grid-template-columns:1fr 1fr}.form-row-2{grid-template-columns:1fr}}@media (max-width:600px){.form-row-5,.form-row-4,.form-row-2{grid-template-columns:1fr;gap:15px}}.address-row{flex-direction:row;align-items:center;gap:8px;display:flex}.address-row label{min-width:fit-content;margin-bottom:0!important}@media (max-width:700px){.address-row{flex-direction:column;align-items:flex-start;gap:3px}.address-row label{margin-bottom:2px!important}}.residence-grid{gap:200px!important}@media (max-width:700px){.residence-grid{gap:20px!important}}.span-full{grid-column:1/-1}.field{flex-direction:column;gap:2px;display:flex}.field label{letter-spacing:.1px;color:var(--text-secondary);margin-bottom:3px;font-size:14px;font-weight:700;line-height:1}.field label span.required{color:var(--accent-crimson);margin-left:2px}.field input,.field select{background:var(--input-bg);border:1px solid var(--input-border);color:var(--text-primary);border-radius:6px;outline:none;width:100%;height:32px;padding:0 10px;font-family:Outfit,sans-serif;font-size:14.5px;transition:border-color .25s,background .25s,box-shadow .25s}.field textarea{background:var(--input-bg);border:1px solid var(--input-border);color:var(--text-primary);border-radius:6px;outline:none;width:100%;padding:6px 10px;font-family:Outfit,sans-serif;font-size:14.5px;transition:border-color .25s,background .25s,box-shadow .25s}.field input::placeholder,.field textarea::placeholder{color:var(--text-muted);font-size:13px}.field select option{color:var(--text-primary);background:#fff}.field input:focus,.field select:focus,.field textarea:focus{border-color:var(--border-focus);background:#6c63ff0f;box-shadow:0 0 0 3px #6c63ff1f}.field textarea{resize:vertical;height:36px;min-height:36px}.toggle-row{align-items:center;gap:14px;padding:6px 0;display:flex}.toggle-label{color:var(--text-secondary);font-size:13px;font-weight:600}.toggle{flex-shrink:0;width:46px;height:26px;position:relative}.toggle input{display:none}.toggle-slider{cursor:pointer;background:#00000014;border-radius:100px;transition:background .3s;position:absolute;inset:0}.toggle-slider:after{content:"";background:#fff;border-radius:50%;width:20px;height:20px;transition:transform .3s;position:absolute;top:3px;left:3px}.toggle input:checked+.toggle-slider{background:linear-gradient(135deg, var(--accent-purple), var(--accent-crimson))}.toggle input:checked+.toggle-slider:after{transform:translate(20px)}.custom-checkbox{appearance:none;border:1.5px solid var(--border);cursor:pointer;background-color:#fff;border-radius:8px;width:28px;height:28px;transition:all .2s ease-in-out;position:relative}.custom-checkbox:checked{border-color:var(--accent-purple);background:#fff}.custom-checkbox:after{content:"";opacity:0;border:2.5px solid #000;border-width:0 2.5px 2.5px 0;width:6px;height:12px;transition:opacity .2s;position:absolute;top:45%;left:50%;transform:translate(-50%,-50%)rotate(45deg)}.custom-checkbox:checked:after{opacity:1}.section-divider{border:none;border-top:1px solid var(--border);margin:24px 0}.spouse-section{transition:max-height .5s,opacity .4s;overflow:hidden}.spouse-section.hidden{opacity:0;max-height:0}.spouse-section.visible{opacity:1;max-height:600px}.btn-row{flex-wrap:wrap;justify-content:flex-end;gap:14px;margin-top:20px;display:flex}.btn{cursor:pointer;letter-spacing:.5px;border:none;border-radius:10px;align-items:center;gap:8px;padding:13px 32px;font-family:Outfit,sans-serif;font-size:14px;font-weight:700;transition:all .25s;display:inline-flex}.btn-clear{color:#57606f;background:#f1f2f6;border:1px solid #dfe4ea}.btn-clear:hover{color:var(--text-primary);background:#ffffff1a}.btn-submit{color:#fff;background:linear-gradient(135deg,#132649 0%,#2a69b7 100%);box-shadow:0 4px 20px #13264959}.btn-submit:hover{transform:translateY(-2px);box-shadow:0 8px 28px #6c63ff80}.btn-submit:active{transform:translateY(0)}.btn:disabled{opacity:.5;pointer-events:none}.toast-wrapper{z-index:9999;flex-direction:column;gap:10px;display:flex;position:fixed;bottom:30px;right:30px}.toast{-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border:1px solid;border-radius:12px;max-width:340px;padding:14px 22px;font-size:14px;font-weight:600;animation:.35s forwards slideUp}.toast.success{color:#2ecc71;background:#27ae6026;border-color:#27ae6059}.toast.error{color:#e74c3c;background:#e74c3c26;border-color:#e74c3c59}@keyframes slideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.field .error-msg{color:var(--error);margin-top:0;font-size:11px}.field input.invalid,.field select.invalid{border-color:var(--error)}.modal-overlay{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);z-index:1000;background:#000000b3;justify-content:center;align-items:center;padding:20px;animation:.3s fadeIn;display:flex;position:fixed;inset:0}.modal-content{background:var(--bg-secondary);border:1px solid var(--border);border-radius:24px;width:100%;max-width:800px;max-height:90vh;padding:40px;animation:.3s scaleUp;position:relative;overflow-y:auto;box-shadow:0 20px 50px #0009}.modal-header{text-align:center;margin-bottom:30px}.modal-header h3{color:var(--accent-gold);margin-bottom:8px;font-size:24px;font-weight:700}.modal-header p{color:var(--text-secondary);font-size:14px}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes scaleUp{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}.success-modal{text-align:center;max-width:450px!important;padding:50px 40px!important}.success-icon{border:2px solid var(--success);width:80px;height:80px;color:var(--success);background:#27ae601a;border-radius:50%;justify-content:center;align-items:center;margin:0 auto 24px;font-size:40px;animation:.5s cubic-bezier(.175,.885,.32,1.275) forwards scaleInCheck;display:flex}.success-modal h3{color:var(--text-primary);margin-top:0;margin-bottom:12px;font-size:24px}.success-modal p{color:var(--text-secondary);font-size:15px;line-height:1.6}@keyframes scaleInCheck{0%{opacity:0;transform:scale(0)}to{opacity:1;transform:scale(1)}}.payment-card{border:1px dashed var(--border);background:#ffffff08;border-radius:12px;padding:24px}.payment-row{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;margin-bottom:24px;padding-bottom:20px;display:flex}.payment-row span:first-child{color:var(--text-primary);font-size:14px;font-weight:600}.payment-row .price{color:var(--accent-gold);font-size:18px;font-weight:800}.bank-details h4{text-transform:uppercase;color:var(--accent-purple);letter-spacing:1px;margin-bottom:16px;font-size:13px}.bank-grid{gap:12px;margin-bottom:24px;display:grid}.bank-item{grid-template-columns:100px 1fr;font-size:13px;line-height:1.4;display:grid}.bank-item strong{color:var(--text-secondary);font-weight:600}.bank-item span{color:var(--text-primary);letter-spacing:.5px;word-break:break-all;font-family:monospace}@media (max-width:480px){.bank-item{grid-template-columns:1fr;gap:2px}}.payment-note{border-top:1px solid var(--border);color:var(--text-secondary);padding-top:20px;font-size:13px;line-height:1.6}.payment-note p{margin-bottom:12px}.email-instruction{border-left:3px solid var(--accent-purple);background:#6c63ff14;border-radius:8px;padding:12px 16px;color:var(--text-primary)!important}.email-instruction strong{color:var(--accent-gold)}.reveal-animation{transform-origin:top;animation:.4s cubic-bezier(.4,0,.2,1) forwards revealDown}@keyframes revealDown{0%{opacity:0;transform:translateY(-10px)scaleY(.95)}to{opacity:1;transform:translateY(0)scale(1)}}.login-wrapper{width:100%;min-height:100vh;display:flex}.login-banner{background-color:#2a5a9e;flex:3;justify-content:center;align-items:center;display:flex;position:relative;overflow:hidden}.login-banner:before{content:"";z-index:1;background:url(/login-banner.jpg) 50%/contain no-repeat;width:110%;height:90%;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.login-banner:after{content:"";z-index:2;background:radial-gradient(circle,#ffffff1a 0%,#0000 80%);position:absolute;inset:0}.login-content{background:#fff;flex:1;justify-content:center;align-items:center;padding:0;display:flex;position:relative}@keyframes liquidBlob{0%{border-radius:40% 60% 70% 30%/40% 50% 60%;transform:rotate(0)scale(1)}33%{border-radius:60% 40% 50% 50%/50% 60% 40%;transform:rotate(120deg)scale(1.1)}66%{border-radius:45% 55% 35% 65%/45% 45% 55% 55%;transform:rotate(240deg)scale(.9)}to{border-radius:40% 60% 70% 30%/40% 50% 60%;transform:rotate(360deg)scale(1)}}.login-card{z-index:10;background:#fff;width:100%;max-width:440px;padding:20px 40px;animation:.6s cubic-bezier(.4,0,.2,1) forwards slideInRight}.login-logo-container{justify-content:center;margin-bottom:40px;display:flex}.login-logo{object-fit:contain;background:#fff;border:1px solid #0000000d;border-radius:50%;width:140px;height:140px;padding:5px;box-shadow:0 10px 30px #00000026}.login-title{text-align:center;letter-spacing:1px;-webkit-text-fill-color:transparent;filter:drop-shadow(0 2px 10px #a445f34d);background:linear-gradient(135deg,#a445f3 0%,#d4a847 100%);-webkit-background-clip:text;background-clip:text;margin-bottom:32px;font-size:38px;font-weight:800}.login-form{flex-direction:column;gap:20px;display:flex}.login-field{flex-direction:column;gap:10px;display:flex}.login-field label{color:var(--text-secondary);letter-spacing:.5px;font-size:13px;font-weight:600}.login-input{color:var(--text-primary);background:#f8f9fa;border:1px solid #0000001a;border-radius:12px;outline:none;padding:14px 18px;font-size:15px;transition:all .25s}.login-input:focus{border-color:var(--accent-blue);background:#ffffff17;box-shadow:0 0 0 3px #2980b926}.login-btn{color:#fff;cursor:pointer;background:#2a5a9e;border:none;border-radius:12px;margin-top:10px;padding:16px;font-size:16px;font-weight:700;transition:all .3s cubic-bezier(.4,0,.2,1);box-shadow:0 4px 15px #00000026}.login-btn:hover{background:linear-gradient(135deg,#1a3a6b 0%,#347acc 100%);transform:translateY(-2px);box-shadow:0 15px 35px #13264973}.login-divider{color:var(--text-muted);text-transform:uppercase;letter-spacing:1px;align-items:center;gap:15px;margin:25px 0;font-size:12px;display:flex}.login-divider:before,.login-divider:after{content:"";background:#00000014;flex:1;height:1px}.google-btn{color:#000;cursor:pointer;background:#4fc3f7;border:none;border-radius:12px;justify-content:center;align-items:center;gap:12px;width:100%;padding:16px;font-size:15px;font-weight:700;transition:all .25s;display:flex;box-shadow:0 4px 15px #0000001a}.google-btn:hover{background:#29b6f6;transform:translateY(-2px);box-shadow:0 6px 20px #00000026}@keyframes slideInRight{0%{opacity:0;transform:translate(30px)}to{opacity:1;transform:translate(0)}}@media (max-width:968px){.login-wrapper{flex-direction:column}.login-banner{flex:none;width:100%;height:350px;display:flex}.login-content{flex:1;padding:30px 20px}.login-card{box-shadow:none;border-radius:24px;max-width:100%;padding:20px}.login-logo{width:80px;height:80px}.login-logo-container{margin-bottom:20px}.login-btn,.google-btn{padding:14px;font-size:14px}}
