:root{font-family:Inter,system-ui,Arial,Roboto,sans-serif,serif;line-height:1.5;font-weight:400;color-scheme:light dark;color:#000;background-color:#fff;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;--color-black: black;--color-white: white;--color-accent: black;--color-tan: #ffead3;--color-grey-1: rgb(107 114 128);--border-radius: 4px}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}*:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}@media (prefers-reduced-motion: reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}@media (prefers-contrast: high){:root{--color-accent: #000000;--color-grey-1: #000000}}body{margin:0;display:flex;place-items:center;min-width:320px;min-height:100vh}h1{font-size:3.2em;line-height:1.1}.section-title{font-size:1.875rem;line-height:2.25rem;font-weight:700;margin-bottom:1rem;color:var(--color-black)}.section-sub-title{font-size:1.2rem;line-height:2rem;font-weight:600;margin-top:1rem;margin-bottom:.25rem;color:var(--color-black)}.section-description{font-size:1rem;margin-top:0;color:var(--color-black)}@media (max-width: 768px){.section-title{font-size:1.5rem;line-height:2rem}.section-sub-title{font-size:1rem;line-height:1.75rem}}*{box-sizing:border-box}#root{display:flex;flex-direction:column;align-items:center;justify-content:flex-start;min-height:100vh;width:100vw;max-width:100%;overflow-x:hidden}.app-container{width:100%;max-width:987px;margin:0 auto;padding:0 2rem}.welcome-title{font-size:2.25rem;line-height:2.5rem;font-weight:700;text-align:center;margin:2rem 0;color:var(--color-black)}@media (max-width: 768px){.app-container{padding:0 1rem}.welcome-title{font-size:1.875rem;line-height:2.25rem;margin:1.5rem 0}}@media (max-width: 480px){.welcome-title{font-size:1.5rem;line-height:2rem}}footer{display:flex;flex-direction:column;place-items:center;width:100vw;padding:1rem;border-top:2px solid var(--color-black)}.footer-text{margin:0;margin:.5rem;font-size:.75rem}@media (max-width: 768px){.footer-text{font-size:.75rem}}header{display:flex;place-content:center;width:100vw;padding:1rem;background-color:var(--color-tan);border-bottom:2px solid var(--color-black)}img{width:200px;filter:drop-shadow(0 2px 4px rgba(0,0,0,.1))}@media (max-width: 768px){img{width:150px}}@media (max-width: 480px){img{width:130px}}.required{color:red}.contact-form-container{margin-bottom:2rem}.form-group-container{display:grid;gap:1rem;margin-top:2rem}.form-group{display:flex;flex-direction:column;margin-bottom:1rem}.form-label{margin-bottom:.5rem;font-weight:500}.form-input,.form-textarea{padding:.5rem;border:1px solid #e5e7eb;display:flex;width:100%;border-radius:.375rem;font-size:.875rem;line-height:1.25rem;background-color:var(--color-white);color:var(--color-black);font-family:inherit;font-weight:inherit;transition:border-color .15s ease-in-out,box-shadow .15s ease-in-out}.form-input::placeholder,.form-textarea::placeholder{color:var(--color-grey-1)}.form-input:focus,.form-textarea:focus{outline:none;border-color:var(--color-accent);box-shadow:0 0 0 2px #0000001a}.form-input:focus-visible,.form-textarea:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}.form-input-error,.form-textarea-error{border-color:#ef4444;background-color:#fef2f2}.form-input-error:focus,.form-textarea-error:focus{border-color:#ef4444;box-shadow:0 0 0 2px #ef44441a}.error-text{color:#ef4444;font-size:.75rem;margin-top:.25rem;font-weight:500}.form-textarea{resize:vertical;min-height:120px;overflow-y:auto}.form-submit{width:100%;margin-top:1.2rem;background-color:#3124ca;padding:13px 5px;border-radius:.375rem;color:var(--color-white);border:none;font-size:.875rem;font-weight:600;cursor:pointer;transition:background-color .15s ease-in-out}.form-submit:hover:not(:disabled){background-color:#2819a8}.form-submit:disabled{background-color:#6b7280;cursor:not-allowed}.submit-button{width:100%;margin-top:1.2rem;background-color:#3124ca;padding:13px 5px;border-radius:.375rem;color:var(--color-white);border:none;font-size:.875rem;font-weight:600;cursor:pointer;transition:background-color .15s ease-in-out}.submit-button:hover:not(:disabled){background-color:#2819a8}.submit-button:focus{outline:2px solid var(--color-black);outline-offset:2px}.submit-button:disabled{background-color:#6b7280;cursor:not-allowed}.success-message{margin-top:1rem;padding:.75rem;background-color:#d1fae5;border:1px solid #a7f3d0;border-radius:.375rem;color:#065f46;font-size:.875rem;font-weight:500}.error-message{margin-top:1rem;padding:.75rem;background-color:#fee2e2;border:1px solid #fecaca;border-radius:.375rem;color:#991b1b;font-size:.875rem;font-weight:500}.success-message:focus,.error-message:focus{outline:2px solid var(--color-accent);outline-offset:2px}.form-input-error:focus-visible,.form-textarea-error:focus-visible{outline:2px solid #ef4444;outline-offset:2px}.error-text{display:block;margin-top:.25rem}.price-table-container{--border-color: #e5e7eb;--even-row-background: #f9fafb;--hover-row-background: #f3f4f6;--header-border-overlay: rgba(255, 255, 255, .2);margin-top:2rem}.table-wrapper{display:flex;flex-direction:column;gap:2rem}.price-table{width:100%;border-collapse:collapse;background-color:var(--color-white);border-radius:.375rem;border:1px solid var(--border-color);overflow:hidden}.table-header-row{background-color:var(--color-accent)}.table-header{padding:.75rem;text-align:left;color:var(--color-white);font-weight:700;font-size:1.125rem;line-height:1.5rem;border-bottom:1px solid var(--border-color);border-right:1px solid var(--header-border-overlay)}.table-header:last-child{border-right:none}.table-row:nth-child(2n){background-color:var(--even-row-background)}.table-row:hover{background-color:var(--hover-row-background)}.table-cell{padding:.75rem;text-align:left;border-bottom:1px solid var(--border-color);border-right:1px solid var(--border-color);color:var(--color-black);font-size:.875rem;line-height:1.25rem}.table-cell:last-child{border-right:none}.table-price{font-weight:600;color:var(--color-accent)}.table-row:last-child .table-cell{border-bottom:none}.price-table:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}@media (max-width: 768px){.table-wrapper{gap:1.5rem}.price-table{line-height:1rem}.table-header,.table-cell{padding:.5rem}.table-header{font-size:1rem;line-height:1.25rem}}.about-section{margin:2rem 0}@media (max-width: 768px){.about-section{margin:1.5rem 0}}
