:root{--rcl-primary: #165c5d;--rcl-primary-light: #1e7a7b;--rcl-primary-dark: #0f4243;--rcl-primary-darker: #092e2f;--rcl-accent: #f59e0b;--rcl-accent-light: #fbbf24;--rcl-accent-dark: #d97706;--rcl-teal-light: #e0f0f0;--rcl-teal-muted: #b2d8d8;--rcl-success: #16a34a;--rcl-warning: #eab308;--rcl-danger: #dc2626;--rcl-text: #1e293b;--rcl-text-secondary: #64748b;--rcl-text-light: #94a3b8;--rcl-text-inverse: #ffffff;--rcl-bg: #ffffff;--rcl-bg-alt: #f8fafa;--rcl-bg-muted: #f1f5f5;--rcl-border: #e2e8f0;--rcl-footer-bg: #0f4243;--rcl-footer-dark: #092e2f;--rcl-shadow-sm: 0 1px 2px rgba(0, 0, 0, .05);--rcl-shadow-md: 0 4px 6px -1px rgba(0, 0, 0, .1), 0 2px 4px -2px rgba(0, 0, 0, .1);--rcl-shadow-lg: 0 10px 15px -3px rgba(0, 0, 0, .1), 0 4px 6px -4px rgba(0, 0, 0, .1);--rcl-radius-sm: 6px;--rcl-radius-md: 10px;--rcl-radius-lg: 16px;--rcl-radius-full: 9999px;--rcl-font-body: "Inter", ui-sans-serif, system-ui, -apple-system, sans-serif;--rcl-font-heading: "Plus Jakarta Sans", "Inter", sans-serif;--rcl-container: 1200px;--rcl-header-height: 72px;--rcl-transition: .2s ease-in-out}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{font-size:16px;scroll-behavior:smooth;-webkit-text-size-adjust:100%}body{font-family:var(--rcl-font-body);color:var(--rcl-text);background-color:var(--rcl-bg);line-height:1.6;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}img{max-width:100%;height:auto;display:block}a{color:var(--rcl-primary);text-decoration:none;transition:color var(--rcl-transition)}a:hover{color:var(--rcl-primary-light)}button{cursor:pointer;font-family:inherit;border:none;background:none}ul,ol{list-style:none}h1,h2,h3,h4,h5,h6{font-family:var(--rcl-font-heading);font-weight:700;line-height:1.25;color:var(--rcl-primary-dark)}h1{font-size:2.5rem}h2{font-size:2rem}h3{font-size:1.5rem}h4{font-size:1.25rem}.container{width:100%;max-width:var(--rcl-container);margin-inline:auto;padding-inline:1.5rem}.section{padding-block:5rem}.section--alt{background-color:var(--rcl-bg-alt)}.section--teal{background-color:var(--rcl-teal-light)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;padding:.75rem 1.75rem;font-size:.9375rem;font-weight:600;border-radius:var(--rcl-radius-full);transition:all var(--rcl-transition);white-space:nowrap}.btn--primary{background-color:var(--rcl-primary);color:var(--rcl-text-inverse)}.btn--primary:hover{background-color:var(--rcl-primary-light);color:var(--rcl-text-inverse);transform:translateY(-1px);box-shadow:var(--rcl-shadow-md)}.btn--accent{background-color:var(--rcl-accent);color:var(--rcl-text-inverse)}.btn--accent:hover{background-color:var(--rcl-accent-light);color:var(--rcl-text-inverse);transform:translateY(-1px);box-shadow:var(--rcl-shadow-md)}.btn--outline{border:2px solid var(--rcl-primary);color:var(--rcl-primary)}.btn--outline:hover{background-color:var(--rcl-primary);color:var(--rcl-text-inverse)}.btn--secondary{background-color:var(--rcl-primary-light);color:var(--rcl-text-inverse)}.btn--secondary:hover{background-color:var(--rcl-primary);color:var(--rcl-text-inverse);transform:translateY(-1px)}.btn:disabled{opacity:.5;cursor:not-allowed;transform:none}.card{background:var(--rcl-bg);border-radius:var(--rcl-radius-lg);box-shadow:var(--rcl-shadow-sm);overflow:hidden;transition:all var(--rcl-transition)}.card:hover{box-shadow:var(--rcl-shadow-lg);transform:translateY(-4px)}.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.form-group{display:flex;flex-direction:column;gap:.375rem;margin-bottom:1.25rem}.form-label{font-size:.875rem;font-weight:500;color:var(--rcl-text)}.form-input{width:100%;padding:.75rem 1rem;font-size:.9375rem;font-family:var(--rcl-font-body);border:1.5px solid var(--rcl-border);border-radius:var(--rcl-radius-md);background:var(--rcl-bg);color:var(--rcl-text);transition:border-color var(--rcl-transition),box-shadow var(--rcl-transition)}.form-input:focus{outline:none;border-color:var(--rcl-primary);box-shadow:0 0 0 3px #165c5d26}.form-input.ng-invalid.ng-touched{border-color:var(--rcl-danger)}.form-error{font-size:.8125rem;color:var(--rcl-danger)}@media (max-width: 768px){h1{font-size:1.875rem}h2{font-size:1.5rem}h3{font-size:1.25rem}.section{padding-block:3rem}}
