:root{--color-coral: #ee9488;--color-coral-light: #f9d4cf;--color-mint: #88c9b8;--color-mint-light: #c8eae3;--color-blue: #8cc6d8;--color-blue-light: #c8e5ee;--color-yellow: #ecd688;--color-yellow-light: #f8efc8;--color-lavender: #c0b0d8;--color-lavender-light: #e4dcf2;--color-peach: #f0ac82;--color-peach-light: #fad8c0;--color-mauve: #c4a8ce;--color-mauve-light: #e8dced;--color-primary: #88c9b8;--color-primary-dark: #5aa898;--color-primary-light: #c8eae3;--color-secondary: #ee9488;--color-secondary-dark: #c46a5e;--color-accent: #c0b0d8;--color-accent-light: #e4dcf2;--color-bg: #fdfcff;--color-bg-alt: #f5f0fa;--color-bg-dark: #5a2848;--color-text: #3d1830;--color-text-light: #7a4a65;--color-text-muted: #b898aa;--color-white: #ffffff;--font-heading: "Nunito", sans-serif;--font-body: "Nunito Sans", sans-serif;--section-padding: 5rem 1.5rem;--max-width: 1200px;--border-radius: 1rem;--border-radius-sm: .6rem;--border-radius-pill: 50rem;--border-radius-block: .8rem;--shadow-sm: 0 2px 8px rgba(90, 40, 72, .08);--shadow-md: 0 4px 20px rgba(90, 40, 72, .13);--shadow-lg: 0 8px 40px rgba(90, 40, 72, .18);--transition: .25s ease}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth;font-size:16px;scroll-padding-top:72px}body{font-family:var(--font-body);background-color:var(--color-bg);color:var(--color-text);line-height:1.65;-webkit-font-smoothing:antialiased;overflow-x:hidden}h1,h2,h3,h4,h5,h6{font-family:var(--font-heading);font-weight:800;line-height:1.2;color:var(--color-text)}h1{font-size:clamp(2.2rem,5vw,3.5rem)}h2{font-size:clamp(1.8rem,4vw,2.8rem)}h3{font-size:clamp(1.3rem,3vw,1.7rem)}h4{font-size:1.2rem}p{margin-bottom:1rem}a{color:var(--color-primary);text-decoration:none;transition:color var(--transition)}a:hover{color:var(--color-primary-dark)}img{max-width:100%;display:block}.container{width:100%;max-width:var(--max-width);margin:0 auto;padding:0 1.5rem}.section-header{text-align:center;margin-bottom:3rem;display:flex;flex-direction:column;align-items:center}.section-header .section-tag{display:inline-block;background:var(--color-lavender-light);color:var(--color-bg-dark);font-family:var(--font-heading);font-size:.85rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;padding:.3rem 1rem;border-radius:var(--border-radius-pill);margin-bottom:.75rem}.section-header h2{margin-bottom:1rem}.section-header p{font-size:1.1rem;color:var(--color-text-light);max-width:600px;margin:0 auto;text-align:center}.btn{display:inline-flex;align-items:center;gap:.5rem;padding:.75rem 1.75rem;border-radius:var(--border-radius-pill);font-family:var(--font-heading);font-weight:700;font-size:1rem;border:2px solid transparent;cursor:pointer;transition:all var(--transition);text-decoration:none;line-height:1}.btn--primary{background:var(--color-primary);color:var(--color-white)}.btn--primary:hover{background:var(--color-primary-dark);transform:translateY(-2px);box-shadow:var(--shadow-md)}.btn--secondary{background:var(--color-secondary);color:var(--color-white)}.btn--secondary:hover{filter:brightness(.92);transform:translateY(-2px);box-shadow:var(--shadow-md)}.btn--outline{background:transparent;border-color:var(--color-primary);color:var(--color-primary)}.btn--outline:hover{background:var(--color-primary);color:var(--color-white)}.btn--outline-white{background:transparent;border-color:var(--color-white);color:var(--color-white)}.btn--outline-white:hover{background:var(--color-white);color:var(--color-primary-dark)}.btn--lg{padding:1rem 2.25rem;font-size:1.1rem}.btn:disabled{opacity:.6;cursor:not-allowed;pointer-events:none}.card{background:var(--color-white);border-radius:var(--border-radius);box-shadow:var(--shadow-sm);overflow:hidden;transition:transform var(--transition),box-shadow var(--transition)}.card:hover{transform:translateY(-4px);box-shadow:var(--shadow-md)}.form-group{margin-bottom:1.25rem}.form-group label{display:block;font-family:var(--font-heading);font-weight:700;font-size:.9rem;color:var(--color-text);margin-bottom:.4rem}.form-group input,.form-group textarea,.form-group select{width:100%;padding:.7rem 1rem;border:2px solid #e0e8e0;border-radius:var(--border-radius-sm);font-family:var(--font-body);font-size:1rem;color:var(--color-text);background:var(--color-white);transition:border-color var(--transition);outline:none}.form-group input:focus,.form-group textarea:focus,.form-group select:focus{border-color:var(--color-primary)}.form-group input::placeholder,.form-group textarea::placeholder,.form-group select::placeholder{color:var(--color-text-muted)}.form-group textarea{resize:vertical;min-height:120px}.form-group .form-error{font-size:.85rem;color:#c0392b;margin-top:.3rem}.alert{padding:1rem 1.25rem;border-radius:var(--border-radius-sm);font-family:var(--font-heading);font-weight:600;font-size:.95rem;margin-bottom:1rem}.alert--success{background:#d4edda;color:#155724;border:1px solid #c3e6cb}.alert--error{background:#f8d7da;color:#721c24;border:1px solid #f5c6cb}.spinner{width:1.25rem;height:1.25rem;border:2px solid rgba(255,255,255,.3);border-top-color:#fff;border-radius:50%;animation:spin .6s linear infinite;display:inline-block}@keyframes spin{to{transform:rotate(360deg)}}@media(max-width:768px){:root{--section-padding: 3rem 1.25rem;--border-radius: .85rem}.btn--lg{padding:.85rem 1.75rem;font-size:1rem}}@media(max-width:480px){:root{--section-padding: 2.5rem 1rem}}@media(max-width:600px){.modal-overlay{padding:0;align-items:flex-end}.modal{border-radius:var(--border-radius) var(--border-radius) 0 0!important;max-height:95vh!important;padding:1.5rem 1.25rem!important}}@media(max-width:500px){.form-row{grid-template-columns:1fr!important}}.form-group--checkbox label{display:flex;flex-direction:row;align-items:center;gap:.6rem;font-weight:400;cursor:pointer;font-size:.9rem;color:var(--color-text-light);line-height:1.4}.form-group--checkbox label input[type=checkbox]{width:auto;flex-shrink:0;accent-color:var(--color-primary);cursor:pointer}.form-group--checkbox label a{color:var(--color-primary-dark);font-weight:700;text-decoration:underline}
