:root{--primary-color:#bf141c;--text-color:#000;--background-color:#fff;--border-color:#ddd;--error-color:#d32f2f;--success-color:#2e7d32;--spacing-unit:1rem}.content-wrapper{max-width:900px;margin:0 auto;padding:2rem}.hero-section{text-align:center;margin-bottom:2rem}.hero-logo{max-width:100%;height:auto;margin:0 auto;display:block}.contact-form-container{max-width:900px;margin:0 auto;padding:1.5rem}.contact-form{background:var(--background-color);border-radius:8px;padding:1.5rem}.form-section{border-bottom:1px solid #e5e5e5;margin-bottom:2rem;padding-bottom:1.5rem}.form-section:last-of-type{border-bottom:none;margin-bottom:1rem}.form-section-title{color:var(--primary-color);border-bottom:2px solid var(--primary-color);margin-bottom:1rem;padding-bottom:.5rem;font-size:1.3rem;font-weight:600}.form-row{grid-template-columns:1fr 1fr;gap:1rem;margin-bottom:1rem;display:grid}.form-row:last-child{margin-bottom:0}.form-group{margin-bottom:1rem}.form-group:last-child{margin-bottom:0}.form-group label{color:var(--text-color);margin-bottom:.5rem;font-size:.95rem;font-weight:500;display:block}.required{color:var(--primary-color);margin-left:2px}.form-group input[type=text],.form-group input[type=email],.form-group input[type=tel],.form-group select,.form-group textarea{border:2px solid var(--border-color);box-sizing:border-box;border-radius:4px;width:100%;padding:.75rem;font-family:inherit;font-size:1rem;transition:border-color .3s}.form-group input[type=text]:focus,.form-group input[type=email]:focus,.form-group input[type=tel]:focus,.form-group select:focus,.form-group textarea:focus{border-color:var(--primary-color);outline:none}.form-group input.error,.form-group select.error,.form-group textarea.error{border-color:var(--error-color)}.form-group textarea{resize:vertical;min-height:80px;line-height:1.5}.form-group textarea[rows="3"]{min-height:70px}.form-group textarea[rows="4"]{min-height:90px}.form-group select{cursor:pointer;background-color:var(--background-color);color:var(--text-color);appearance:auto;-webkit-appearance:menulist;-moz-appearance:menulist;min-height:2.75rem}.form-group select:focus{border-color:var(--primary-color);outline:none;box-shadow:0 0 0 2px #bf141c1a}.form-help{color:#666;margin-top:.25rem;font-size:.85rem;font-style:italic;display:block}.error-message{color:var(--error-color);margin-top:.25rem;font-size:.85rem;display:block}.form-submit-section{border-top:2px solid var(--primary-color);text-align:center;background-color:#fafafa;border-radius:8px;margin-top:2rem;padding:1.5rem}.submit-button{background-color:var(--primary-color);color:#fff;cursor:pointer;border:none;border-radius:4px;margin-bottom:1rem;padding:1rem 3rem;font-size:1.1rem;font-weight:600;transition:background-color .3s,transform .2s}.submit-button:hover:not(:disabled){background-color:#8f0f15;transform:translateY(-2px);box-shadow:0 4px 8px #bf141c4d}.submit-button:disabled{cursor:not-allowed;background-color:#ccc;transform:none}.success-message{border:2px solid var(--success-color);color:var(--success-color);background-color:#e8f5e9;border-radius:4px;margin-bottom:1.5rem;padding:1rem}.success-message p{margin:0;font-weight:500}.error-message-box{border:2px solid var(--error-color);color:var(--error-color);background-color:#ffebee;border-radius:4px;margin-bottom:1.5rem;padding:1rem}.error-message-box p{margin:0}.error-message-box a{color:var(--error-color);font-weight:600;text-decoration:underline}.form-note{color:#666;max-width:700px;margin-top:1rem;margin-left:auto;margin-right:auto;font-size:.9rem;line-height:1.6}.form-intro{text-align:center;border-bottom:2px solid var(--primary-color);margin-bottom:1.5rem;padding-bottom:1rem}.form-intro h2{color:var(--primary-color);margin-bottom:.5rem;font-size:1.75rem}.form-intro p{color:#666;font-size:1rem}.part1-success{text-align:center;background:#f8f9fa;border-radius:8px;margin-bottom:2rem;padding:2rem}.part1-success h2{color:var(--primary-color);margin-bottom:1rem;font-size:2rem}.part1-success>p{color:#333;margin-bottom:2rem;font-size:1.1rem}.part2-invitation{border:2px solid var(--primary-color);background:#fff;border-radius:8px;margin-top:2rem;padding:2rem}.part2-invitation h3{color:var(--primary-color);margin-bottom:1rem;font-size:1.5rem}.part2-invitation p{color:#333;margin-bottom:1.5rem;font-size:1rem;line-height:1.6}.part2-button{background-color:var(--primary-color);color:#fff;cursor:pointer;border:none;border-radius:4px;margin-bottom:1rem;padding:1rem 2.5rem;font-size:1.1rem;font-weight:600;transition:background-color .3s,transform .2s}.part2-button:hover{background-color:#8f0f15;transform:translateY(-2px);box-shadow:0 4px 8px #bf141c4d}.skip-note{color:#666;margin-top:1.5rem;font-size:.9rem}.skip-note a{color:var(--primary-color);text-decoration:underline}.checkbox-group{background-color:#fafafa;border:1px solid #e5e5e5;border-radius:6px;flex-direction:column;gap:.5rem;margin-top:.5rem;padding:.75rem;display:flex}.checkbox-label{cursor:pointer;border-radius:4px;align-items:flex-start;gap:.75rem;padding:.5rem;font-weight:400;line-height:1.5;transition:background-color .2s;display:flex}.checkbox-label:hover{background-color:#f0f0f0}.checkbox-label input[type=checkbox]{cursor:pointer;width:20px;height:20px;accent-color:var(--primary-color);flex-shrink:0}.checkbox-label span{user-select:none;flex:1}@media (width<=768px){.contact-form-container,.contact-form{padding:1rem}.form-row{grid-template-columns:1fr;gap:0}.form-section{margin-bottom:1.5rem;padding-bottom:1rem}.form-section-title{margin-bottom:.75rem;font-size:1.2rem}.form-group{margin-bottom:.875rem}.checkbox-group{gap:.4rem;padding:.5rem}.submit-button{width:100%;padding:1rem}.form-intro h2{font-size:1.5rem}.form-submit-section{margin-top:1.5rem;padding:1rem}}
