:root{--primary-color: #2563eb;--primary-hover: #1d4ed8;--secondary-color: #4b5563;--secondary-hover: #374151;--success-color: #16a34a;--danger-color: #dc2626;--light-gray: #f3f4f6;--medium-gray: #d1d5db;--dark-gray: #374151;--text-primary: #1f2937;--text-secondary: #4b5563;--text-light: #f9fafb;--font-sans: "Roboto", -apple-system, BlinkMacSystemFont, "Segoe UI", "Oxygen", "Ubuntu", "Cantarell", "Fira Sans", "Droid Sans", "Helvetica Neue", sans-serif}body{margin:0;font-family:var(--font-sans);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background-color:#f9fafb;color:var(--text-primary)}*{box-sizing:border-box}.container{width:100%;max-width:1280px;margin-left:auto;margin-right:auto;padding-left:1rem;padding-right:1rem}@media (min-width: 768px){.container{padding-left:1.5rem;padding-right:1.5rem}}.btn{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;padding:.6rem 1.2rem;border-radius:.5rem;font-weight:600;cursor:pointer;border:1px solid transparent;transition:all .2s;text-decoration:none;white-space:nowrap}.btn-primary{background-color:var(--primary-color);color:#fff}.btn-primary:hover{background-color:var(--primary-hover)}.btn-primary:disabled{background-color:#9ca3af;cursor:not-allowed}.btn-secondary{background-color:var(--secondary-color);color:#fff}.btn-secondary:hover{background-color:var(--secondary-hover)}.btn-success{background-color:var(--success-color);color:#fff}.btn-success:hover{background-color:#15803d}.btn-light{background-color:#f3f4f6;color:var(--dark-gray);border:1px solid var(--medium-gray)}.btn-light:hover{background-color:#e5e7eb}.app-header{background-color:#fff;box-shadow:0 4px 6px -1px #00000012;position:sticky;top:0;z-index:50;border-bottom:1px solid var(--light-gray)}.app-header .container{display:flex;justify-content:space-between;align-items:center;padding-top:1rem;padding-bottom:1rem}.app-header h1{font-size:1.5rem;font-weight:700;color:#1e3a8a;cursor:pointer}.app-header nav{display:none}@media (min-width: 1024px){.app-header nav{display:flex;align-items:center;gap:.5rem}}.nav-link{display:flex;align-items:center;gap:.5rem;padding:.5rem 1rem;border-radius:.5rem;color:var(--text-secondary);font-weight:500;transition:all .2s ease-in-out;background-color:transparent;border:none;cursor:pointer;font-size:1rem;text-decoration:none}.nav-link:hover{background-color:var(--light-gray);color:var(--primary-color)}.nav-link.active{background-color:#dbeafe;color:var(--primary-color);font-weight:700}.header-actions{display:flex;align-items:center;gap:.5rem}.contact-button{display:none}@media (min-width: 640px){.contact-button{display:inline-flex;align-items:center;gap:.5rem;font-size:1rem;font-weight:600;color:var(--success-color);border:2px solid #22c55e;border-radius:9999px;padding:.5rem 1rem;text-decoration:none;transition:all .2s}.contact-button:hover{background-color:var(--success-color);color:#fff}}.cart-button{position:relative;background:none;border:none;cursor:pointer;color:#4b5563;padding:.5rem}.cart-button:hover{color:#2563eb}.cart-badge{position:absolute;top:-.25rem;right:-.5rem;background-color:var(--danger-color);color:#fff;font-size:.75rem;border-radius:9999px;height:1.25rem;width:1.25rem;display:flex;align-items:center;justify-content:center;font-weight:500}.side-panel-overlay{position:fixed;inset:0;background-color:#00000080;z-index:100;transition:opacity .3s ease}.side-panel{position:fixed;top:0;right:0;height:100%;width:100%;max-width:450px;background-color:#fff;box-shadow:-10px 0 25px #0000001a;display:flex;flex-direction:column;transform:translate(100%);transition:transform .3s ease}.side-panel.open{transform:translate(0)}.side-panel-header{display:flex;justify-content:space-between;align-items:center;padding:1rem 1.5rem;border-bottom:1px solid var(--light-gray)}.side-panel-header h2{font-size:1.25rem;font-weight:700;margin:0}.side-panel-close-button{background:none;border:none;cursor:pointer;color:var(--text-secondary);padding:.5rem}.side-panel-body{flex-grow:1;overflow-y:auto;padding:1.5rem}.side-panel-footer{padding:1.5rem;border-top:1px solid var(--light-gray);background-color:#f9fafb}.cart-item{display:flex;gap:1rem;align-items:center}.cart-item-image{width:64px;height:64px;object-fit:cover;border-radius:.375rem}.cart-item-info{flex-grow:1}.cart-item-info p{margin:0}.cart-item-info .font-semibold{font-weight:600}.cart-item-info .text-sm{font-size:.875rem;color:var(--text-secondary)}.quantity-selector{display:flex;align-items:center;border:1px solid var(--medium-gray);border-radius:.375rem}.quantity-selector button{background:none;border:none;padding:.5rem;cursor:pointer}.quantity-selector button:hover{background-color:var(--light-gray)}.quantity-selector span{padding:0 .75rem;font-weight:500}.auth-modal{padding:2rem}.auth-title{font-size:1.5rem;font-weight:700;text-align:center;margin-bottom:1.5rem}.auth-tabs{display:flex;border-bottom:1px solid var(--medium-gray);margin-bottom:1.5rem}.auth-tab{flex-grow:1;padding:.75rem;text-align:center;background:none;border:none;cursor:pointer;font-weight:600;color:var(--text-secondary);border-bottom:2px solid transparent}.auth-tab.active{color:var(--primary-color);border-bottom-color:var(--primary-color)}.error-message{color:var(--danger-color);font-size:.875rem;margin-top:.5rem}.separator{display:flex;align-items:center;text-align:center;margin:1.5rem 0;color:var(--text-secondary)}.separator-line{flex-grow:1;border-bottom:1px solid var(--medium-gray)}.separator-text{padding:0 1rem}.google-btn{width:100%;display:flex;align-items:center;justify-content:center}.contact-page .page-title{text-align:center}.contact-grid{display:grid;grid-template-columns:1fr;gap:3rem}@media (min-width: 768px){.contact-grid{grid-template-columns:1fr 1fr}}.contact-info-item{display:flex;align-items:center;gap:1rem;margin-bottom:1rem;color:var(--text-secondary)}.contact-info-item .icon{color:var(--primary-color)}.contact-form-wrapper{background-color:#fff;padding:2rem;border-radius:.5rem;box-shadow:0 4px 6px -1px #0000001a,0 2px 4px -2px #0000001a}.contact-form-wrapper h3{font-size:1.25rem;font-weight:700;margin-bottom:1rem}.prose{line-height:1.6}.prose strong{font-weight:700}.prose ul{list-style-type:disc;padding-left:1.5rem}.prose li{margin-bottom:.5rem}
