@import"https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Fraunces:wght@600;700&display=swap";.header{background:#fff;border-bottom:1px solid #e5e7e0;position:sticky;top:0;z-index:50;box-shadow:0 1px 4px #0000000f}.header-inner{max-width:1200px;margin:0 auto;padding:0 1rem;height:56px;display:flex;align-items:center}.nav{display:flex;align-items:center;justify-content:space-between;width:100%}.logo{text-decoration:none;line-height:1;flex-shrink:0;cursor:default;display:flex;align-items:center}a.logo{cursor:pointer}.logo-img{height:36px;width:auto;display:block}.nav-toggle{display:flex;flex-direction:column;justify-content:center;gap:5px;background:transparent;border:none;padding:.5rem;min-height:auto;min-width:auto;cursor:pointer;z-index:60}.nav-toggle-bar{display:block;width:22px;height:2px;background:#1a1a1a;border-radius:2px;transition:all .2s}.nav-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#0006;z-index:40;animation:navFadeIn .2s ease}@keyframes navFadeIn{0%{opacity:0}to{opacity:1}}.nav-menu{position:fixed;top:0;right:-100%;width:260px;max-width:85%;height:100vh;background:#1c2b1c;list-style:none;padding:4rem 1.5rem 2rem;margin:0;display:flex;flex-direction:column;gap:0;z-index:50;transition:right .28s ease;overflow-y:auto;box-shadow:-2px 0 16px #0003}.nav-menu-open{right:0}.nav-menu li{list-style:none;border-bottom:1px solid rgba(255,255,255,.08)}.nav-menu li:last-child{border-bottom:none}.nav-menu a{display:flex;align-items:center;color:#ffffffe0;font-weight:500;font-size:1rem;padding:.875rem 0;text-decoration:none;transition:color .15s;min-height:48px}.nav-menu a:hover{color:#fff;text-decoration:none}.btn-nav-logout{background:none;color:#ffffffb3;border:none;border-radius:0;padding:.875rem 0;font-weight:500;font-size:1rem;min-height:48px;text-align:left;width:100%;cursor:pointer;transition:color .15s}.btn-nav-logout:hover{color:#fff}.nav-menu .btn-nav-signup{display:flex;align-items:center;justify-content:center;margin-top:1rem;background:#3a9e3a;color:#fff;border-radius:8px;font-weight:600;font-size:.9375rem;padding:0 1.25rem;min-height:48px;text-align:center;width:100%;box-shadow:0 2px 8px #3a9e3a4d}.nav-menu .btn-nav-signup:hover{background:#2e8a2e;color:#fff}@media (min-width: 768px){.header-inner{height:62px;padding:0 2rem}.logo-img{height:40px}.nav-toggle,.nav-overlay{display:none}.nav-menu{position:static;width:auto;max-width:none;height:auto;flex-direction:row;padding:0;background:transparent;box-shadow:none;overflow:visible;gap:.25rem;align-items:center;transition:none}.nav-menu li{border-bottom:none}.nav-menu a{color:#555;font-size:.9375rem;font-weight:500;padding:.375rem .75rem;min-height:auto;border-radius:6px;transition:color .15s,background .15s}.nav-menu a:hover{color:#1a1a1a;background:#f0f2ed;text-decoration:none}.btn-nav-logout{color:#555;font-size:.9375rem;font-weight:500;padding:.375rem .75rem;min-height:auto;width:auto;border-radius:6px;background:none}.btn-nav-logout:hover{color:#1a1a1a;background:#f0f2ed}.nav-menu .btn-nav-signup{display:inline-flex;margin-top:0;width:auto;padding:0 1.25rem;min-height:38px;font-size:.9rem;border-radius:7px}}.footer{background:#fff;border-top:1px solid #e5e7e0;padding:2rem 0;text-align:center}.footer-logo{height:auto;max-height:40px;max-width:160px;width:auto;margin-bottom:1rem;display:block;margin-left:auto;margin-right:auto}.footer-legal{display:flex;justify-content:center;gap:1.5rem;margin-bottom:1rem}.footer-legal a{font-size:.875rem;color:#888;transition:color .2s}.footer-legal a:hover{color:#555}.footer-copy{color:#888;margin-bottom:.5rem}.footer-credit{font-size:.875rem;color:#aaa}.footer-credit:hover{color:#555}.footer-nav{display:flex;flex-wrap:wrap;justify-content:center;gap:1.5rem;margin-bottom:1.5rem}.footer-nav a{color:#555;font-size:.95rem;font-weight:500;transition:color .2s}.footer-nav a:hover{color:#1a1a1a}@media (min-width: 768px){.footer-logo{max-height:80px;max-width:320px}}.register-page .auth-card{max-width:520px}.auth-links{margin-top:1.25rem;display:flex;flex-direction:column;gap:.5rem;text-align:center}.auth-links p{font-size:.9375rem;color:var(--color-text-light)}.auth-links a{font-weight:500}.auth-redirect-note{text-align:center;color:var(--color-text-light);font-size:.9375rem;margin-top:.75rem}.label-optional{font-weight:400;color:var(--color-text-muted);text-transform:none;letter-spacing:0;font-size:.7rem;margin-left:.25rem}.dashboard{padding:2rem 0 5rem;max-width:800px;margin:0 auto}.dashboard-loading{display:flex;justify-content:center;align-items:center;min-height:60vh}.dashboard-header{margin-bottom:2rem}.dashboard-header h1{margin-bottom:.25rem}.dashboard-subtitle{color:var(--color-text-light);font-size:.9375rem}.profile-banner--pending{background-color:#fefce8;border:1px solid #fde047;color:#854d0e}.profile-banner--owner{background-color:var(--color-primary-tint);border:1px solid var(--color-primary-border);display:flex;align-items:center;justify-content:space-between;gap:var(--spacing-md);flex-wrap:wrap}.profile-banner-text{color:var(--color-text)}.profile-banner-cta{font-size:.875rem;font-weight:600;color:var(--color-primary);text-decoration:none;white-space:nowrap}.profile-banner-cta:hover{text-decoration:underline}.profile-banner-dismiss{background:none;border:none;color:var(--color-text-light);font-size:1rem;cursor:pointer;padding:2px 6px;line-height:1;min-height:auto;min-width:auto}.profile-banner-dismiss:hover{color:var(--color-text)}.dashboard-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:.75rem;margin-bottom:2rem}.stat-card{text-align:center;padding:1.25rem 1rem}.stat-value{display:block;font-size:2rem;font-weight:700;color:var(--color-primary);font-family:var(--font-display);letter-spacing:-.03em;margin-bottom:.25rem;line-height:1}.stat-label{display:block;font-size:.8125rem;color:var(--color-text-light);font-weight:500}.dashboard-quick-links h2,.dashboard-section h2{display:flex;align-items:center;gap:.45rem;font-size:.875rem;margin-bottom:.875rem}.dashboard-quick-links h2:before,.dashboard-section-header h2:before{content:"";display:inline-block;width:3px;height:14px;background:var(--color-primary);border-radius:2px;flex-shrink:0}.dashboard-quick-links{margin-bottom:2rem}.quick-links-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:.75rem}.quick-link{display:block;text-decoration:none;color:inherit;padding:1.125rem;transition:box-shadow .15s,border-color .15s}.quick-link:hover{border-color:var(--color-primary-border);box-shadow:var(--shadow-md);color:inherit}.quick-link-title{display:block;font-weight:600;font-size:.9375rem;margin-bottom:.25rem;color:var(--color-primary)}.quick-link-desc{display:block;font-size:.8125rem;color:var(--color-text-light);line-height:1.4}.dashboard-section{margin-bottom:2rem}.dashboard-section-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:.875rem}.dashboard-section-header h2{display:flex;align-items:center;gap:.45rem;font-size:.875rem;margin-bottom:0}.dashboard-see-all{font-size:.875rem;font-weight:500;color:var(--color-primary)}.dashboard-see-all:hover{text-decoration:underline}.dashboard-list{display:flex;flex-direction:column;gap:.5rem}.dashboard-item{display:flex;justify-content:space-between;align-items:center;text-decoration:none;color:inherit;padding:.875rem 1rem;transition:border-color .15s,box-shadow .15s}.dashboard-item:hover{border-color:var(--color-primary-border);box-shadow:var(--shadow-md);color:inherit}.dashboard-item-main{display:flex;flex-direction:column;gap:2px;min-width:0}.dashboard-item-title{font-weight:600;font-size:.9375rem;color:var(--color-text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.dashboard-item-meta{font-size:.8125rem;color:var(--color-text-light)}.dashboard-item-amount{font-weight:700;font-size:.9375rem;color:var(--color-primary);font-family:var(--font-display);flex-shrink:0;margin-left:var(--spacing-md)}.dashboard-item-badge{font-size:.8125rem;font-weight:600;color:var(--color-primary);background:var(--color-primary-tint);border:1px solid var(--color-primary-border);padding:2px 10px;border-radius:10px;flex-shrink:0;margin-left:var(--spacing-md)}@media (max-width: 539px){.dashboard{padding:1.5rem 0 3rem}.dashboard-stats{grid-template-columns:1fr;gap:.5rem}.stat-card{display:flex;align-items:center;justify-content:space-between;padding:1rem 1.25rem;text-align:left}.stat-value{font-size:1.625rem;margin-bottom:0}.quick-links-grid{grid-template-columns:1fr}.dashboard-item{flex-direction:column;align-items:flex-start;gap:.5rem}.dashboard-item-amount,.dashboard-item-badge{margin-left:0}.profile-banner--owner{flex-direction:column;align-items:flex-start}}@media (min-width: 540px) and (max-width: 767px){.quick-links-grid{grid-template-columns:repeat(3,1fr)}}.profile-banner{border-radius:10px;padding:var(--spacing-md) var(--spacing-lg);margin-bottom:1.5rem;font-size:.9375rem;line-height:1.5}.profile-banner--stripe{background-color:#fff7ed;border:1px solid #fdba74;color:#9a3412;display:flex;align-items:center;justify-content:space-between;gap:var(--spacing-md);flex-wrap:wrap}.profile-banner-text{color:inherit}.profile-banner-actions{display:flex;align-items:center;gap:var(--spacing-sm);flex-shrink:0}.profile-banner-cta{font-size:.875rem;font-weight:600;color:#9a3412;background:none;border:none;cursor:pointer;text-decoration:underline;padding:0;white-space:nowrap}.profile-banner-cta:hover{opacity:.8}.job-board{padding:2rem 0 5rem;max-width:800px;margin:0 auto}.job-board-loading{display:flex;justify-content:center;align-items:center;min-height:60vh}.job-board-header{margin-bottom:1.5rem}.job-board-header h1{margin-bottom:.25rem}.job-board-subtitle{color:var(--color-text-light);font-size:.9375rem}.job-board-filters{margin-bottom:1.25rem;padding:1rem}.job-board-filters-row{display:grid;grid-template-columns:1fr 1fr;gap:.75rem}.filter-group label{font-size:.725rem;font-weight:600;color:var(--color-text-light);text-transform:uppercase;letter-spacing:.04em;margin-bottom:.35rem}.filter-group select,.filter-group input{font-size:.9375rem;min-height:44px;padding:.625rem .875rem}.filter-group select{padding-right:2.25rem}.job-board-filters-actions{display:flex;justify-content:space-between;align-items:center;margin-top:.875rem;padding-top:.875rem;border-top:1px solid var(--color-border)}.btn-clear-filters{background:none;color:var(--color-primary);border:none;padding:.25rem .5rem;font-size:.875rem;font-weight:500;min-height:auto;min-width:auto;cursor:pointer}.btn-clear-filters:hover{text-decoration:underline;color:var(--color-primary-dark)}.job-board-result-count{font-size:.875rem;color:var(--color-text-light)}.job-board-empty{text-align:center;padding:3rem 1.5rem}.job-board-empty h2{margin-bottom:.75rem;font-size:1.25rem}.job-board-empty p{color:var(--color-text-light);max-width:420px;margin:0 auto 1.5rem;line-height:1.6;font-size:.9375rem}.job-board-list{display:flex;flex-direction:column;gap:.75rem}.job-card-start-date{font-size:.8125rem;color:var(--color-text-light)}@media (min-width: 540px){.job-board-filters-row{grid-template-columns:repeat(3,1fr)}}@media (min-width: 768px){.job-board{padding:2.5rem 0 6rem}.job-board-filters-row{grid-template-columns:repeat(5,1fr)}}@media (max-width: 539px){.job-board{padding:1.5rem 0 3rem}.job-board-filters-actions{flex-direction:column;gap:.5rem;align-items:flex-start}}.rating-modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000080;display:flex;align-items:flex-end;justify-content:center;z-index:200;padding:0}.rating-modal{background:#fff;border-radius:20px 20px 0 0;padding:2rem 1.5rem 2.5rem;width:100%;max-width:480px;text-align:center;animation:rating-slide-up .22s ease-out}@keyframes rating-slide-up{0%{transform:translateY(100%);opacity:0}to{transform:translateY(0);opacity:1}}.rating-modal-title{font-size:1.25rem;font-weight:700;margin-bottom:.5rem}.rating-modal-subtitle{font-size:.9375rem;color:var(--color-text-light);line-height:1.5;margin-bottom:1.75rem}.rating-stars{display:flex;justify-content:center;gap:.25rem;margin-bottom:.75rem}.rating-star{background:none;border:none;font-size:2.75rem;line-height:1;color:#d1d5db;cursor:pointer;padding:.25rem;min-height:unset;min-width:unset;transition:color .1s,transform .1s}.rating-star--filled{color:#f59e0b}.rating-star:hover,.rating-star:focus-visible{transform:scale(1.15);outline:none}.rating-label{font-size:.875rem;font-weight:600;color:var(--color-primary);margin-bottom:1.25rem;min-height:1.25rem}.rating-submit-btn{width:100%;margin-bottom:1rem}.rating-dismiss{background:none;border:none;color:var(--color-text-light);font-size:.875rem;cursor:pointer;padding:.25rem;min-height:unset;min-width:unset;text-decoration:underline;font-weight:400}.rating-dismiss:hover{color:var(--color-text)}@media (min-width: 600px){.rating-modal-overlay{align-items:center;padding:1rem}.rating-modal{border-radius:16px;animation:rating-fade-in .18s ease-out}@keyframes rating-fade-in{0%{opacity:0;transform:scale(.97)}to{opacity:1;transform:scale(1)}}}.job-detail{padding:2rem 0 5rem;max-width:900px;margin:0 auto}.job-detail-loading{display:flex;justify-content:center;align-items:center;min-height:60vh}.job-detail-back{display:inline-flex;align-items:center;margin-bottom:1.25rem;font-size:.875rem;font-weight:500;color:var(--color-text-light);text-decoration:none;transition:color .15s}.job-detail-back:hover{color:var(--color-primary)}.job-detail-header{margin-bottom:1.5rem}.job-detail-badges{display:flex;gap:.5rem;margin-bottom:.75rem;flex-wrap:wrap}.job-detail-header h1{margin-bottom:.375rem;font-size:clamp(1.375rem,1.25rem + .625vw,1.75rem)}.job-detail-posted{color:var(--color-text-light);font-size:.875rem}.job-detail-title-row{display:flex;justify-content:space-between;align-items:flex-start;gap:1rem}.job-detail-owner-actions{display:flex;gap:.5rem;flex-shrink:0;align-items:center;padding-top:.25rem}.job-detail-action-btn{min-height:36px;padding:0 .875rem;font-size:.875rem}.job-detail-cancel-btn{background-color:#fee2e2;border:1.5px solid #fca5a5;color:#991b1b;font-weight:500;border-radius:8px;cursor:pointer;transition:background-color .15s,border-color .15s}.job-detail-cancel-btn:hover:not(:disabled){background-color:#fecaca;border-color:#f87171}.job-detail-cancel-btn:disabled{opacity:.6;cursor:not-allowed}.cancel-modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000073;display:flex;align-items:center;justify-content:center;z-index:1000;padding:1rem}.cancel-modal{max-width:460px;width:100%;padding:1.75rem}.cancel-modal h2{font-size:1.125rem;margin-bottom:.875rem}.cancel-modal-body{font-size:.9375rem;color:var(--color-text);line-height:1.6;margin-bottom:.75rem}.cancel-modal-quote-warning{font-size:.9375rem;color:#92400e;background:#fef3c7;border:1px solid #fde68a;border-radius:6px;padding:.625rem .875rem;margin-bottom:.875rem;line-height:1.5}.cancel-modal-actions{display:flex;gap:.75rem;margin-top:1.25rem;flex-wrap:wrap}.cancel-modal-confirm-btn{min-height:40px;padding:0 1.25rem;font-size:.9375rem}.job-detail-gallery{margin-bottom:1.5rem}.gallery-main{border-radius:10px;overflow:hidden;margin-bottom:.5rem;background:var(--color-background-alt)}.gallery-main img{width:100%;max-height:380px;object-fit:cover;display:block}.gallery-thumbnails{display:flex;gap:.5rem;overflow-x:auto;-webkit-overflow-scrolling:touch}.gallery-thumb{flex-shrink:0;width:72px;height:72px;padding:0;border:1.5px solid var(--color-border);border-radius:8px;overflow:hidden;cursor:pointer;background:var(--color-background-alt);min-height:auto;min-width:auto;transition:border-color .15s}.gallery-thumb img{width:100%;height:100%;object-fit:cover;display:block}.gallery-thumb--active{border-color:var(--color-primary)}.job-detail-content{display:grid;grid-template-columns:1fr 320px;gap:1.5rem;align-items:start}.job-detail-section{margin-bottom:1.25rem}.job-detail-section h2{font-family:var(--font-body);font-size:.8375rem;font-weight:600;color:var(--color-text);display:flex;align-items:center;gap:.45rem;margin-bottom:.875rem;padding-bottom:.625rem;border-bottom:1px solid var(--color-border)}.job-detail-section h2:before{content:"";display:inline-block;width:3px;height:13px;background:var(--color-primary);border-radius:2px;flex-shrink:0}.job-detail-description{line-height:1.7;color:var(--color-text);white-space:pre-wrap;font-size:.9375rem}.job-detail-grid{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.detail-item{display:flex;flex-direction:column;gap:.25rem}.detail-label{font-size:.725rem;font-weight:600;color:var(--color-text-light);text-transform:uppercase;letter-spacing:.04em}.detail-value{font-size:.9375rem;color:var(--color-text);font-weight:500}.maps-link{display:inline-flex;align-items:center;color:var(--color-primary);font-weight:500;font-size:.9375rem;text-decoration:none;border-bottom:1px solid var(--color-primary-border);padding-bottom:1px;transition:color .15s}.maps-link:hover{color:var(--color-primary-dark);border-bottom-color:var(--color-primary-dark)}.quote-form-card,.quote-existing-card,.quote-closed-card,.owner-assigned-card{position:sticky;top:calc(62px + 1rem)}.quote-submit-btn{width:100%}.quote-existing-details{padding:1rem}.quote-existing-amount{font-size:1.375rem;font-weight:700;color:var(--color-text);margin:.5rem 0;font-family:var(--font-display);letter-spacing:-.02em}.quote-existing-message{font-size:.9375rem;color:var(--color-text-light);line-height:1.5;margin-top:.5rem}.quote-existing-duration{font-size:.875rem;color:var(--color-text-light);margin-top:.25rem}.quote-manage-link{display:block;text-align:center;padding:.625rem 1rem;font-size:.9375rem;margin:0 1rem 1rem}.quote-status-badge{display:inline-block;padding:2px 10px;border-radius:100px;font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.04em}.quote-status-accepted{background:var(--color-primary-tint);color:#1a5c1a}.quote-closed-card>p{padding:1rem;color:var(--color-text-light);font-size:.9375rem}.assigned-contractor-info{padding:1rem}.contractor-name{font-weight:600;font-size:.9375rem}.contractor-company{font-size:.8125rem;color:var(--color-text-light);margin-top:.2rem}.assigned-amount{font-weight:600;color:var(--color-primary);margin-top:.5rem;font-size:.9375rem}.job-detail-quotes-section{margin-top:1.5rem}.quotes-list{display:flex;flex-direction:column;gap:.75rem}.quote-card{padding:0}.quote-card-header{display:flex;justify-content:space-between;align-items:center;padding:.875rem 1rem;border-bottom:1px solid #f0f0f0;gap:.75rem}.quote-card-contractor{display:flex;flex-direction:column;gap:2px}.quote-card-name{font-weight:600;font-size:.9375rem}.quote-card-company{font-size:.8125rem;color:var(--color-text-light)}.quote-card-body{padding:.875rem 1rem;border-bottom:1px solid #f0f0f0}.quote-card-amount{font-size:1.375rem;font-weight:700;color:var(--color-text);font-family:var(--font-display);letter-spacing:-.02em;margin-bottom:.25rem}.quote-card-duration{font-size:.875rem;color:var(--color-text-light);display:block;margin-bottom:.5rem}.quote-card-message{font-size:.9375rem;color:var(--color-text-light);line-height:1.5}.quote-card-meta{padding:.75rem 1rem;border-bottom:1px solid #f0f0f0}.quote-card-stats{display:flex;gap:1rem;font-size:.8125rem;color:var(--color-text-light);flex-wrap:wrap}.quote-card-verified{color:var(--color-success);font-weight:600}.quote-card-rating{color:#f59e0b;font-weight:600}.quote-card-rating-count{color:var(--color-text-light);font-weight:400}.quote-card-actions{padding:.875rem 1rem}.bid-accept-btn{min-height:44px}.no-quotes-card{text-align:center;padding:2rem}.no-quotes-card h3{font-size:1rem;margin-bottom:.5rem;font-family:var(--font-body);font-weight:600}.no-quotes-card p{color:var(--color-text-light);line-height:1.6;font-size:.9375rem}@media (max-width: 767px){.job-detail{padding:1.5rem 0 3rem}.job-detail-content{grid-template-columns:1fr}.quote-form-card,.quote-existing-card,.quote-closed-card,.owner-assigned-card{position:static}.job-detail-grid{grid-template-columns:1fr}.job-detail-title-row{flex-direction:column;align-items:flex-start}.job-detail-owner-actions{padding-top:0}.quote-card-header{flex-direction:column;align-items:flex-start;gap:.5rem}}.profile-intercept{max-width:480px;margin:4rem auto}.profile-intercept-subtitle{color:var(--color-text-light);font-size:.9375rem;line-height:1.5;margin-bottom:1.5rem}.profile-intercept-actions{display:flex;flex-direction:column;gap:.5rem;margin-top:1.5rem;align-items:flex-start}.create-job-container{max-width:680px;margin:0 auto;padding:0 0 5rem}.create-job-progress{background:#fff;border-bottom:1px solid var(--color-border);overflow-x:auto;-webkit-overflow-scrolling:touch;margin:0 calc(-1 * var(--spacing-md));margin-bottom:2rem}.create-job-progress-inner{display:flex;min-width:max-content;padding:0 var(--spacing-md)}.cj-prog-step{display:flex;align-items:center;gap:.375rem;padding:.75rem;font-size:.75rem;font-weight:500;color:var(--color-text-muted);border-bottom:2px solid transparent;white-space:nowrap;transition:color .15s,border-color .15s}.cj-prog-step.active{color:var(--color-primary);border-bottom-color:var(--color-primary)}.cj-prog-step.done{color:var(--color-primary);border-bottom-color:var(--color-primary-border)}.cj-prog-num{display:inline-flex;align-items:center;justify-content:center;width:19px;height:19px;border-radius:50%;background:var(--color-background-alt);font-size:.65rem;font-weight:700;flex-shrink:0;transition:background .15s,color .15s}.cj-prog-step.active .cj-prog-num,.cj-prog-step.done .cj-prog-num{background:var(--color-primary);color:#fff}.create-job-step{padding-bottom:.5rem}.create-job-step-eyebrow{font-size:.68rem;font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:var(--color-primary);margin-bottom:.3rem}.create-job-step-heading{font-family:var(--font-display);font-size:clamp(1.5rem,1.375rem + .625vw,1.875rem);font-weight:700;letter-spacing:-.02em;color:var(--color-text);margin-bottom:.375rem}.create-job-step-sub{font-size:.9375rem;color:var(--color-text-light);margin-bottom:1.5rem;line-height:1.5}.job-toggle-list{display:flex;flex-direction:column}.job-toggle-item{display:flex;align-items:center;justify-content:space-between;width:100%;padding:.875rem 1rem;background:#fff;cursor:pointer;-webkit-user-select:none;user-select:none;-webkit-tap-highlight-color:transparent;transition:background .15s}.job-toggle-item--bordered{border-bottom:1px solid #f2f2f2}.job-toggle-item:hover,.job-toggle-item--selected{background:var(--color-primary-tint)}.job-toggle-content{display:flex;flex-direction:column;gap:2px;padding-right:1rem}.job-toggle-label{font-size:.9375rem;font-weight:600;color:var(--color-text);line-height:1.3}.job-toggle-item--selected .job-toggle-label{color:var(--color-primary)}.job-toggle-desc{font-size:.775rem;color:var(--color-text-light);line-height:1.4}.job-toggle-switch{width:50px;height:28px;border-radius:100px;background:#ddd;position:relative;flex-shrink:0;pointer-events:none;transition:background .2s}.job-toggle-item--selected .job-toggle-switch{background:var(--color-primary)}.job-toggle-thumb{position:absolute;top:3px;left:3px;width:22px;height:22px;border-radius:50%;background:#fff;box-shadow:0 1px 4px #00000040;transition:left .2s}.job-toggle-item--selected .job-toggle-thumb{left:25px}.freq-pills{display:flex;gap:.5rem;flex-wrap:wrap}.freq-pill{padding:.5rem 1.125rem;border:1.5px solid var(--color-border);border-radius:100px;font-size:.9375rem;font-weight:500;cursor:pointer;background:#fff;color:var(--color-text);transition:border-color .15s,background .15s,color .15s;min-height:44px;min-width:auto;display:inline-flex;align-items:center}.freq-pill:hover{border-color:var(--color-primary);color:var(--color-primary)}.freq-pill--selected{background:var(--color-primary);border-color:var(--color-primary);color:#fff}.create-job-summary{margin-bottom:1.25rem}.summary-rows{display:flex;flex-direction:column}.summary-row{display:flex;justify-content:space-between;align-items:flex-start;padding:.75rem 1rem;border-bottom:1px solid #f5f5f5;gap:1rem;font-size:.875rem}.summary-row:last-child{border-bottom:none}.summary-key{color:var(--color-text-light);font-weight:500;flex-shrink:0}.summary-val{color:var(--color-text);font-weight:600;text-align:right}.create-job-nav{display:flex;align-items:center;justify-content:space-between;padding-top:1.25rem;border-top:1px solid var(--color-border);gap:.75rem;margin-top:.5rem}.image-upload-area{display:grid;grid-template-columns:repeat(auto-fill,minmax(110px,1fr));gap:.5rem}.image-upload-trigger{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:110px;border:2px dashed var(--color-border);border-radius:8px;cursor:pointer;background:var(--color-background-alt);transition:border-color .15s,background .15s;padding:1rem;min-width:auto}.image-upload-trigger:hover{border-color:var(--color-primary-border);background:#fff}.image-upload-icon{font-size:1.5rem;color:var(--color-primary);font-weight:300;line-height:1;margin-bottom:.25rem}.image-upload-text{font-size:.875rem;font-weight:500;color:var(--color-text);text-align:center}.image-upload-hint{font-size:.75rem;color:var(--color-text-light);margin-top:2px;text-align:center}.image-preview{position:relative;border-radius:8px;overflow:hidden;aspect-ratio:1}.image-preview img{width:100%;height:100%;object-fit:cover;display:block}.image-remove{position:absolute;top:4px;right:4px;width:26px;height:26px;min-height:26px;min-width:26px;background:#0009;color:#fff;border:none;border-radius:50%;font-size:1rem;line-height:1;display:flex;align-items:center;justify-content:center;cursor:pointer;padding:0;transition:background .15s}.image-remove:hover{background:#000000d1}@media (min-width: 540px){.create-job-progress{margin-left:calc(-1 * var(--spacing-lg));margin-right:calc(-1 * var(--spacing-lg))}.create-job-progress-inner{padding:0 var(--spacing-lg)}.cj-prog-step{padding:.75rem 1rem;font-size:.8rem}.profile-intercept{margin:5rem auto}}@media (min-width: 768px){.create-job-container{padding:2rem 0 6rem}.create-job-progress{margin-left:calc(-1 * var(--spacing-xl));margin-right:calc(-1 * var(--spacing-xl))}.create-job-progress-inner{padding:0 var(--spacing-xl);max-width:680px;margin:0 auto}}.edit-job-loading{display:flex;justify-content:center;align-items:center;min-height:60vh}.edit-job-container{max-width:680px;margin:0 auto;padding:0 0 5rem}.edit-job-back{display:inline-flex;align-items:center;margin-bottom:1.5rem;margin-top:1.5rem;font-size:.875rem;font-weight:500;color:var(--color-text-light);text-decoration:none;transition:color .15s}.edit-job-back:hover{color:var(--color-primary)}.edit-job-header{margin-bottom:1.75rem}.edit-job-header h1{margin-bottom:.25rem}.edit-job-subtitle{color:var(--color-text-light);font-size:.9375rem}.edit-job-locked-note{font-size:.8125rem;color:var(--color-text-light);margin-top:.375rem;font-style:italic}.edit-job-optional{font-weight:400;color:var(--color-text-muted);font-size:.75rem;margin-left:.25rem}.edit-job-actions{display:flex;gap:.75rem;align-items:center;margin-top:.5rem}@media (max-width: 480px){.edit-job-actions{flex-direction:column}.edit-job-actions .btn-primary,.edit-job-actions .btn-outline{width:100%;text-align:center}}.my-jobs{padding:1.5rem 0 4rem;max-width:800px;margin:0 auto}.my-jobs-loading{display:flex;justify-content:center;align-items:center;min-height:60vh}.my-jobs-header{display:flex;flex-direction:column;gap:1rem;margin-bottom:1.5rem}.my-jobs-header h1{margin-bottom:.25rem}.my-jobs-subtitle{color:var(--color-text-light);font-size:.9375rem}.my-jobs-header .btn-primary{width:100%;text-align:center;white-space:nowrap}.my-jobs-empty{text-align:center;padding:3rem 1.5rem}.my-jobs-empty h2{margin-bottom:.75rem}.my-jobs-empty p{color:var(--color-text-light);max-width:480px;margin:0 auto 1.5rem;line-height:1.6;font-size:.9375rem}.my-jobs-tabs{display:flex;gap:0;border-bottom:2px solid var(--color-border);margin-bottom:1.25rem;overflow-x:auto;-webkit-overflow-scrolling:touch}.my-jobs-tab{display:flex;align-items:center;gap:.5rem;padding:.625rem 1rem;background:none;border:none;border-bottom:2px solid transparent;margin-bottom:-2px;color:var(--color-text-light);font-weight:500;font-size:.9375rem;cursor:pointer;transition:color .15s,border-color .15s;border-radius:0;min-height:auto;white-space:nowrap}.my-jobs-tab:hover{color:var(--color-text)}.my-jobs-tab--active{color:var(--color-primary);border-bottom-color:var(--color-primary)}.my-jobs-tab-count{background:var(--color-background-alt);color:var(--color-text-light);font-size:.75rem;font-weight:600;padding:1px 7px;border-radius:100px;min-width:22px;text-align:center}.my-jobs-tab--active .my-jobs-tab-count{background:var(--color-primary);color:#fff}.my-jobs-tab-empty{text-align:center;padding:2.5rem;color:var(--color-text-light);font-size:.9375rem}.my-jobs-list{display:flex;flex-direction:column;gap:.75rem}.job-card{padding:1rem 1.25rem;transition:box-shadow .15s,border-color .15s}.job-card:hover{border-color:var(--color-primary-border);box-shadow:var(--shadow-md)}.job-card-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:.5rem;gap:.75rem}.job-card-badges{display:flex;gap:.375rem;flex-wrap:wrap}.job-status-badge{display:inline-block;padding:2px 10px;border-radius:100px;font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.04em}.status-open{background:var(--color-primary-tint);color:#1a5c1a;border:1px solid var(--color-primary-border)}.status-in-progress{background:#dbeafe;color:#1e40af}.status-completed{background:var(--color-background-alt);color:var(--color-text-light)}.status-cancelled{background:#fee2e2;color:#991b1b}.job-type-badge{display:inline-block;padding:2px 10px;border-radius:100px;font-size:.75rem;font-weight:500;background:var(--color-background-alt);color:var(--color-text-light)}.job-card-date{font-size:.8125rem;color:var(--color-text-light);white-space:nowrap;flex-shrink:0}.job-card-title{font-size:1rem;font-family:var(--font-body);font-weight:600;margin-bottom:.375rem;color:var(--color-text)}.job-card-description{font-size:.9375rem;color:var(--color-text-light);line-height:1.5;margin-bottom:.875rem}.job-card-footer{display:flex;justify-content:space-between;align-items:center;padding-top:.75rem;border-top:1px solid var(--color-border);gap:.75rem}.job-card-meta{display:flex;gap:1rem;font-size:.875rem;color:var(--color-text-light);flex-wrap:wrap}.job-card-location:before{content:"";display:inline-block;width:5px;height:5px;background:var(--color-primary);border-radius:50%;margin-right:5px;vertical-align:middle;opacity:.7}.job-card-budget{font-weight:500;color:var(--color-text)}.job-card-quotes{display:flex;align-items:center;gap:.5rem;flex-shrink:0}.job-card-quote-count{font-size:.875rem;font-weight:600;color:var(--color-primary)}.job-card-view-btn{background:none;border:1.5px solid var(--color-primary-border);color:var(--color-primary);font-size:.8125rem;font-weight:600;padding:.3rem .75rem;border-radius:6px;cursor:pointer;min-height:auto;min-width:auto;transition:background-color .15s,border-color .15s;white-space:nowrap}.job-card-view-btn:hover{background-color:var(--color-primary-tint);border-color:var(--color-primary)}@media (min-width: 540px){.my-jobs-header{flex-direction:row;align-items:flex-start;justify-content:space-between}.my-jobs-header .btn-primary{width:auto}}@media (min-width: 768px){.my-jobs{padding:2rem 0 5rem}}.my-quotes{padding:var(--spacing-2xl) 0 var(--spacing-4xl);max-width:800px;margin:0 auto}.my-quotes-loading{display:flex;justify-content:center;align-items:center;min-height:60vh}.my-quotes-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:var(--spacing-xl);gap:var(--spacing-md)}.my-quotes-header h1{margin-bottom:var(--spacing-xs)}.my-quotes-subtitle{color:var(--color-text-light);font-size:.9375rem}.my-quotes-header .btn-primary{white-space:nowrap;flex-shrink:0}.my-quotes-empty{text-align:center;padding:var(--spacing-3xl) var(--spacing-xl)}.my-quotes-empty h2{margin-bottom:var(--spacing-md);font-size:1.5rem}.my-quotes-empty p{color:var(--color-text-light);max-width:480px;margin:0 auto var(--spacing-xl);line-height:1.6}.my-quotes-tabs{display:flex;gap:var(--spacing-xs);border-bottom:2px solid var(--color-border);margin-bottom:var(--spacing-xl)}.my-quotes-tab{display:flex;align-items:center;gap:var(--spacing-sm);padding:var(--spacing-sm) var(--spacing-lg);background:none;border:none;border-bottom:2px solid transparent;margin-bottom:-2px;color:var(--color-text-light);font-weight:500;font-size:.9375rem;cursor:pointer;transition:color .2s,border-color .2s;border-radius:0;min-height:auto}.my-quotes-tab:hover{color:var(--color-text)}.my-quotes-tab--active{color:var(--color-primary);border-bottom-color:var(--color-primary)}.my-quotes-tab-count{background:var(--color-background-alt);color:var(--color-text-light);font-size:.8125rem;font-weight:600;padding:2px 8px;border-radius:10px;min-width:24px;text-align:center}.my-quotes-tab--active .my-quotes-tab-count{background:var(--color-primary);color:#fff}.my-quotes-tab-empty{text-align:center;padding:var(--spacing-2xl);color:var(--color-text-light)}.my-quotes-list{display:flex;flex-direction:column;gap:var(--spacing-md)}.my-quote-card{padding:var(--spacing-lg)}.my-quote-card-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:var(--spacing-md);gap:var(--spacing-sm)}.my-quote-job-title{font-size:1.125rem;font-weight:600;color:var(--color-text);text-decoration:none;display:block;margin-bottom:var(--spacing-xs)}.my-quote-job-title:hover{color:var(--color-primary)}.my-quote-job-meta{display:flex;gap:var(--spacing-sm);align-items:center}.my-quote-job-city{font-size:.875rem;color:var(--color-text-light)}.my-quote-job-city:before{content:"";display:inline-block;width:6px;height:6px;background:var(--color-primary-light);border-radius:50%;margin-right:6px;vertical-align:middle}.my-quote-card-body{margin-bottom:var(--spacing-md)}.my-quote-amount{font-size:1.375rem;font-weight:700;color:var(--color-text);font-family:var(--font-display);margin-bottom:var(--spacing-xs)}.my-quote-duration{font-size:.875rem;color:var(--color-text-light);display:block;margin-bottom:var(--spacing-sm)}.my-quote-message{font-size:.9375rem;color:var(--color-text-light);line-height:1.5}.my-quote-card-footer{display:flex;justify-content:space-between;align-items:center;padding-top:var(--spacing-sm);border-top:1px solid var(--color-border)}.my-quote-date{font-size:.8125rem;color:var(--color-text-light)}.my-quote-actions{display:flex;gap:var(--spacing-sm)}.my-quote-edit-btn{padding:var(--spacing-xs) var(--spacing-md);font-size:.875rem;min-height:auto}.btn-withdraw{background:none;color:var(--color-error);padding:var(--spacing-xs) var(--spacing-md);font-size:.875rem;font-weight:500;min-height:auto;border:1px solid var(--color-error);border-radius:var(--radius-md)}.btn-withdraw:hover:not(:disabled){background:#fee2e2}.my-quote-edit h3{font-size:1.125rem;margin-bottom:var(--spacing-xs)}.my-quote-edit-job{color:var(--color-text-light);font-size:.9375rem;margin-bottom:var(--spacing-md)}.my-quote-edit-actions{display:flex;gap:var(--spacing-sm);margin-top:var(--spacing-md)}.my-quote-edit-actions .btn-primary,.my-quote-edit-actions .btn-outline{padding:var(--spacing-sm) var(--spacing-lg)}.my-quote-contact-card{margin-top:var(--spacing-md);padding:var(--spacing-md) var(--spacing-lg);background:#f0f4e8;border-left:4px solid var(--color-primary);border-radius:var(--radius-md)}.my-quote-contact-title{font-size:.875rem;font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:var(--color-primary);margin:0 0 var(--spacing-sm)}.my-quote-contact-list{margin:0}.my-quote-contact-row{display:grid;grid-template-columns:72px 1fr;gap:var(--spacing-sm);padding:4px 0}.my-quote-contact-row dt{font-size:.875rem;font-weight:600;color:var(--color-text-light)}.my-quote-contact-row dd{font-size:.875rem;color:var(--color-text);margin:0;word-break:break-all}.my-quote-contact-row dd a{color:var(--color-primary);text-decoration:none}.my-quote-contact-row dd a:hover{text-decoration:underline}.my-quote-maps-link{display:inline-block;margin-top:var(--spacing-xs);background-color:var(--color-primary);color:#fff;font-weight:600;padding:.875rem 2rem;font-size:1.0625rem;border-radius:var(--radius-md);text-decoration:none;transition:all .2s}.my-quote-maps-link:hover{background-color:var(--color-primary-dark);color:#fff;transform:translateY(-1px);box-shadow:var(--shadow-md);text-decoration:none}.quote-status-badge{display:inline-block;padding:2px 10px;border-radius:10px;font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.03em}.quote-status-pending{background:#fef3c7;color:#92400e}.quote-status-accepted{background:#d1fae5;color:#065f46}.quote-status-rejected{background:#fee2e2;color:#991b1b}.quote-status-withdrawn{background:var(--color-background-alt);color:var(--color-text-light)}@media (max-width: 639px){.my-quotes{padding:var(--spacing-lg) 0 var(--spacing-2xl)}.my-quotes-header{flex-direction:column}.my-quotes-header .btn-primary{width:100%;text-align:center}.my-quotes-tabs{overflow-x:auto;-webkit-overflow-scrolling:touch}.my-quotes-tab{padding:var(--spacing-sm) var(--spacing-md);font-size:.875rem}.my-quote-card-header{flex-direction:column}.my-quote-card-footer{flex-direction:column;align-items:flex-start;gap:var(--spacing-sm)}.my-quote-edit-actions{flex-direction:column}.my-quote-edit-actions .btn-primary,.my-quote-edit-actions .btn-outline{width:100%;text-align:center}}.profile-container{max-width:720px;margin:0 auto;padding:1.5rem 0 4rem}.profile-header{margin-bottom:1.5rem}.profile-header h1{margin-bottom:.375rem}.profile-subtitle{color:var(--color-text-light);font-size:.9375rem;line-height:1.5}.services-grid{display:flex;flex-wrap:wrap;gap:.5rem}.service-chip{padding:.5rem 1rem;background:var(--color-background-alt);border:1.5px solid var(--color-border);border-radius:100px;cursor:pointer;font-size:.9375rem;font-weight:500;color:var(--color-text);transition:border-color .15s,background-color .15s;min-height:auto;min-width:auto}.service-chip:hover{border-color:var(--color-primary-border);background:#fff}.service-chip--selected{border-color:var(--color-primary);background:var(--color-primary-tint);color:var(--color-primary);box-shadow:0 0 0 1px var(--color-primary)}@media (min-width: 768px){.profile-container{padding:2rem 0 5rem}}.stripe-status{display:flex;align-items:center;gap:.625rem;flex-wrap:wrap;padding:.75rem 1rem;border-radius:8px;font-size:.9375rem}.stripe-status--connected{background:#f0fdf4;color:#15803d}.stripe-status--pending{background:#fefce8;color:#92400e}.stripe-status__dot{width:10px;height:10px;border-radius:50%;flex-shrink:0}.stripe-status--connected .stripe-status__dot{background:#22c55e}.stripe-status--pending .stripe-status__dot{background:#f59e0b}.stripe-status span:not(.stripe-status__dot){flex:1}.btn-small{padding:.375rem .875rem;font-size:.8125rem}.profile-ratings-empty{color:var(--color-text-light);font-size:.9375rem;line-height:1.5}.profile-ratings-summary{display:flex;align-items:baseline;gap:.625rem;margin-bottom:1.25rem}.profile-ratings-avg{font-size:1.5rem;font-weight:700;color:#f59e0b}.profile-ratings-count{font-size:.9375rem;color:var(--color-text-light)}.profile-reviews-list{display:flex;flex-direction:column;gap:1rem}.profile-review-item{border:1px solid var(--color-border);border-radius:10px;padding:.875rem 1rem}.profile-review-header{display:flex;flex-wrap:wrap;align-items:center;gap:.5rem;margin-bottom:.375rem}.profile-review-job{font-size:.875rem;color:var(--color-text);font-weight:500;flex:1;min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.profile-review-date{font-size:.8125rem;color:var(--color-text-light);white-space:nowrap}.profile-review-author{font-size:.8125rem;color:var(--color-text-light);margin:0}.profile-star-display{display:inline-flex;gap:.1rem;line-height:1}.profile-star--filled{color:#f59e0b;font-size:1rem}.profile-star--empty{color:#d1d5db;font-size:1rem}.verify-email-intro{color:var(--color-text-light);font-size:.9375rem;line-height:1.6;margin-bottom:1.5rem}.verify-email-error-link{display:block;text-align:center;margin-top:1rem;font-size:.9375rem;font-weight:500}.coming-soon-page{min-height:100vh;display:flex;flex-direction:column}.coming-soon-header{background-color:var(--color-primary);color:#fff;padding:var(--spacing-md) 0;box-shadow:var(--shadow-md)}.coming-soon-header .header-content{display:flex;justify-content:space-between;align-items:center}.coming-soon-header .logo{font-family:var(--font-display);font-size:1.5rem;color:#fff;margin:0}.coming-soon-header .header-tagline{color:#ffffffe6;font-weight:500;margin:0}@media (max-width: 767px){.coming-soon-header .header-content{flex-direction:column;gap:var(--spacing-xs);text-align:center}}.coming-soon-hero{position:relative;min-height:calc(100vh - 100px);display:flex;align-items:center;color:#fff;padding:var(--spacing-3xl) 0;overflow:hidden;flex:1}.coming-soon-hero .hero-background{position:absolute;top:0;left:0;right:0;bottom:0;z-index:0}.coming-soon-hero .hero-background img{width:100%;height:100%;object-fit:cover;object-position:30% center}.coming-soon-hero .hero-background:after{content:"";position:absolute;top:0;left:0;right:0;bottom:0;background:linear-gradient(to bottom,#00000080,#0006,#0009)}@media (min-width: 768px){.coming-soon-hero .hero-background img{object-position:center}}.coming-soon-hero .hero-content{position:relative;z-index:1;display:flex;align-items:center;min-height:600px}.coming-soon-hero .hero-text{width:100%;max-width:600px;margin:0 auto}.hero-title{font-family:var(--font-display);font-size:clamp(2rem,5vw,3rem);color:#fff;margin-bottom:var(--spacing-md);text-shadow:0 2px 8px rgba(0,0,0,.4);line-height:1.2}.hero-subtitle{font-size:clamp(1rem,2.5vw,1.25rem);line-height:1.6;color:#fffffff2;margin-bottom:var(--spacing-2xl);text-shadow:0 1px 4px rgba(0,0,0,.4)}.early-access-card{background:#fff;color:var(--color-text);padding:var(--spacing-2xl);border-radius:var(--radius-lg);box-shadow:var(--shadow-xl)}.early-access-card h3{color:var(--color-primary);margin-bottom:var(--spacing-sm);font-size:1.75rem}.benefit-text{color:var(--color-text-light);margin-bottom:var(--spacing-xl);line-height:1.6}.btn-full-width{width:100%}.faq-section{padding:var(--spacing-4xl) 0 var(--spacing-2xl);background:#fff}.faq-group{max-width:800px;margin:0 auto var(--spacing-3xl)}.faq-group:last-child{margin-bottom:0}.faq-main-title{text-align:center;margin-bottom:var(--spacing-xl)}.faq-group-label{font-family:var(--font-display);font-size:1.5rem;font-weight:600;color:var(--color-primary);margin-bottom:var(--spacing-xl);padding-bottom:var(--spacing-sm);border-bottom:2px solid var(--color-primary)}.faq-list{background:var(--color-background-alt);border-radius:var(--radius-lg);overflow:hidden;box-shadow:var(--shadow-sm)}.faq-item{border-bottom:1px solid rgba(107,124,58,.12)}.faq-item:last-child{border-bottom:none}.faq-question{display:flex;justify-content:space-between;align-items:center;gap:var(--spacing-md);width:100%;padding:var(--spacing-lg) var(--spacing-xl);background:none;border:none;cursor:pointer;text-align:left;font-family:var(--font-body);font-size:1rem;font-weight:600;color:var(--color-text);transition:background-color .15s ease}.faq-question:hover{background-color:#6b7c3a0f}.faq-item--open .faq-question{color:var(--color-primary)}.faq-chevron{font-size:1.25rem;font-weight:400;color:var(--color-primary);flex-shrink:0;line-height:1}.faq-answer{padding:0 var(--spacing-xl) var(--spacing-lg)}.faq-answer p{color:var(--color-text-light);line-height:1.7;margin:0}.what-to-expect{padding:var(--spacing-4xl) 0;background:#fff}.what-to-expect h2{text-align:center;margin-bottom:var(--spacing-md)}.section-subtitle{text-align:center;color:var(--color-text-light);font-size:1.125rem;margin-bottom:var(--spacing-3xl);max-width:600px;margin-left:auto;margin-right:auto}.features-grid{display:grid;grid-template-columns:1fr;gap:var(--spacing-xl);max-width:1000px;margin:0 auto}@media (min-width: 768px){.features-grid{grid-template-columns:repeat(2,1fr)}}.feature-card{background:var(--color-background-alt);padding:var(--spacing-xl);border-radius:var(--radius-lg);text-align:center}.feature-icon{font-size:3rem;margin-bottom:var(--spacing-md)}.feature-card h3{color:var(--color-primary);margin-bottom:var(--spacing-sm);font-size:1.25rem}.feature-card p{color:var(--color-text-light);line-height:1.6}.coming-soon-footer{background:var(--color-primary);color:#fff;padding:var(--spacing-xl) 0;text-align:center;margin-top:auto}.coming-soon-footer p{margin:var(--spacing-xs) 0;opacity:.9}.coming-soon-footer-legal a{color:#ffffffbf;font-size:.875rem;text-decoration:underline;transition:color .2s}.coming-soon-footer-legal a:hover{color:#fff}.footer-note{font-size:.875rem;opacity:.7}@keyframes cs-spin{to{transform:rotate(360deg)}}.cs-spinner{display:inline-block;width:1rem;height:1rem;border:2px solid rgba(255,255,255,.4);border-top-color:#fff;border-radius:50%;animation:cs-spin .7s linear infinite;vertical-align:middle;margin-right:.5rem}@media (max-width: 767px){.early-access-card{padding:var(--spacing-xl)}.coming-soon-hero{min-height:auto;padding:var(--spacing-2xl) 0}}.thanks-page{min-height:100vh;display:flex;flex-direction:column;background:var(--color-background-alt)}.thanks-content{flex:1;display:flex;align-items:center;padding:var(--spacing-3xl) 0}.thanks-card{max-width:800px;margin:0 auto;padding:var(--spacing-3xl);text-align:center}.success-icon{width:80px;height:80px;background:var(--color-success);color:#fff;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:3rem;margin:0 auto var(--spacing-lg);font-weight:700}.thanks-card h1{color:var(--color-primary);margin-bottom:var(--spacing-md)}.lead-text{font-size:1.125rem;color:var(--color-text-light);line-height:1.6;margin-bottom:var(--spacing-3xl)}.what-happens-next{text-align:left;margin:var(--spacing-3xl) 0;padding:var(--spacing-xl);background:var(--color-background-alt);border-radius:var(--radius-lg)}.what-happens-next h2{text-align:center;margin-bottom:var(--spacing-2xl);color:var(--color-primary)}.timeline{display:flex;flex-direction:column;gap:var(--spacing-xl)}.timeline-item{display:grid;grid-template-columns:60px 1fr;gap:var(--spacing-lg);align-items:start}.timeline-number{width:60px;height:60px;background:var(--color-primary);color:#fff;border-radius:50%;display:flex;align-items:center;justify-content:center;font-family:var(--font-display);font-size:1.5rem;font-weight:700;flex-shrink:0}.timeline-content h3{margin-bottom:var(--spacing-sm);color:var(--color-text)}.timeline-content p{color:var(--color-text-light);line-height:1.6}.share-section{margin:var(--spacing-3xl) 0;padding:var(--spacing-xl);background:var(--color-background-alt);border-radius:var(--radius-lg)}.share-section h3{margin-bottom:var(--spacing-sm);color:var(--color-primary)}.share-section p{color:var(--color-text-light);margin-bottom:var(--spacing-lg)}.share-buttons{display:flex;gap:var(--spacing-md);justify-content:center;flex-wrap:wrap}.footer-action{margin-top:var(--spacing-2xl)}@media (max-width: 767px){.thanks-card{padding:var(--spacing-xl)}.timeline-item{grid-template-columns:50px 1fr;gap:var(--spacing-md)}.timeline-number{width:50px;height:50px;font-size:1.25rem}.success-icon{width:60px;height:60px;font-size:2rem}}.onboarding-page{min-height:100vh;background-color:var(--color-background-alt);display:flex;align-items:flex-start;justify-content:center;padding:var(--spacing-xl) var(--spacing-md) var(--spacing-4xl)}.onboarding-container{width:100%;max-width:480px}.onboarding-progress{display:flex;align-items:center;margin-bottom:var(--spacing-xl)}.onboarding-progress-step{display:flex;align-items:center;gap:var(--spacing-xs);opacity:.4;transition:opacity .2s}.onboarding-progress-step.active{opacity:1}.onboarding-progress-dot{width:28px;height:28px;border-radius:50%;background-color:var(--color-border);color:var(--color-text-light);display:flex;align-items:center;justify-content:center;font-size:.8125rem;font-weight:700;flex-shrink:0;transition:background-color .2s,color .2s}.onboarding-progress-step.active .onboarding-progress-dot{background-color:var(--color-primary);color:#fff}.onboarding-progress-label{font-size:.875rem;font-weight:500;color:var(--color-text-light);white-space:nowrap}.onboarding-progress-step.active .onboarding-progress-label{color:var(--color-text)}.onboarding-progress-line{flex:1;height:2px;background-color:var(--color-border);margin:0 var(--spacing-sm)}.onboarding-header{margin-bottom:var(--spacing-xl)}.onboarding-header h1{font-size:clamp(1.5rem,1.25rem + 1.25vw,2rem);margin-bottom:var(--spacing-xs)}.onboarding-subtitle{color:var(--color-text-light);font-size:1rem;line-height:1.5}.onboarding-container .form-group{margin-bottom:var(--spacing-lg)}.form-label-optional{font-size:.75rem;font-weight:400;color:var(--color-text-light);margin-left:var(--spacing-xs);background:var(--color-background-alt);border:1px solid var(--color-border);border-radius:var(--radius-sm);padding:1px 6px;vertical-align:middle}.services-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:var(--spacing-sm);margin-top:var(--spacing-sm)}.service-chip{padding:var(--spacing-md) var(--spacing-sm);border:2px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-background);color:var(--color-text);font-size:.9375rem;font-weight:500;cursor:pointer;text-align:center;transition:border-color .15s,background-color .15s,color .15s;min-height:52px;display:flex;align-items:center;justify-content:center}.service-chip:hover{border-color:var(--color-primary-light)}.service-chip--selected{border-color:var(--color-primary);background-color:var(--color-primary);color:#fff}.onboarding-actions{display:flex;flex-direction:column;gap:var(--spacing-sm);margin-top:var(--spacing-xl)}.btn-full{width:100%}.btn-ghost{background:transparent;border:2px solid var(--color-border);color:var(--color-text-light);padding:.75rem 1.5rem;border-radius:var(--radius-md);font-size:1rem;font-weight:500;cursor:pointer;transition:border-color .15s,color .15s}.btn-ghost:hover{border-color:var(--color-primary-light);color:var(--color-text)}@media (min-width: 520px){.onboarding-page{padding-top:var(--spacing-3xl)}.onboarding-container{background:var(--color-background);border:1px solid var(--color-border);border-radius:var(--radius-xl);padding:var(--spacing-2xl);box-shadow:var(--shadow-md)}}.pending-page{min-height:70vh;display:flex;align-items:center;justify-content:center;padding:var(--spacing-2xl) var(--spacing-md)}.pending-container{width:100%;max-width:480px;text-align:center}.pending-icon{width:64px;height:64px;border-radius:50%;background-color:var(--color-success);color:#fff;font-size:1.75rem;display:flex;align-items:center;justify-content:center;margin:0 auto var(--spacing-lg)}.pending-container h1{font-size:clamp(1.5rem,1.25rem + 1.25vw,2rem);margin-bottom:var(--spacing-md)}.pending-message{color:var(--color-text);font-size:1rem;line-height:1.6;margin-bottom:var(--spacing-md)}.pending-note{color:var(--color-text-light);font-size:.9375rem;line-height:1.6;margin-bottom:var(--spacing-xl)}.pending-actions{display:flex;flex-direction:column;gap:var(--spacing-sm)}@media (min-width: 400px){.pending-actions{flex-direction:row;justify-content:center}}.pending-stripe-section{margin-top:var(--spacing-2xl);padding-top:var(--spacing-xl);border-top:1px solid var(--color-border);text-align:center}.pending-stripe-section h2{font-size:1.125rem;margin-bottom:var(--spacing-sm)}.pending-stripe-section p{color:var(--color-text-light);font-size:.9375rem;line-height:1.6;margin-bottom:var(--spacing-lg)}.pending-stripe-error{color:var(--color-error);font-size:.875rem;margin-bottom:var(--spacing-md)}.admin-shell{display:flex;min-height:100vh;background:#f5f6f3}.admin-sidebar{width:220px;flex-shrink:0;background:#1a2212;color:#fff;display:flex;flex-direction:column;position:sticky;top:0;height:100vh;overflow-y:auto}.admin-sidebar-header{display:flex;align-items:center;gap:var(--spacing-sm);padding:var(--spacing-lg) var(--spacing-lg);border-bottom:1px solid rgba(255,255,255,.08)}.admin-sidebar-brand{font-family:var(--font-display);font-size:1.0625rem;font-weight:700;color:#fff;letter-spacing:-.01em}.admin-sidebar-tag{font-size:.625rem;font-weight:700;text-transform:uppercase;letter-spacing:.06em;background:#3a9e3a59;color:#8ed98e;padding:2px 7px;border-radius:3px}.admin-nav{flex:1;padding:var(--spacing-md) 0;display:flex;flex-direction:column;gap:2px}.admin-nav-link{display:block;padding:.625rem var(--spacing-lg);font-size:.9375rem;font-weight:500;color:#fff9;text-decoration:none;border-left:3px solid transparent;transition:color .15s,background .15s,border-color .15s}.admin-nav-link:hover{color:#ffffffe6;background:#ffffff0f}.admin-nav-link.active{color:#fff;background:#ffffff1a;border-left-color:var(--color-primary)}.admin-sidebar-footer{padding:var(--spacing-md) var(--spacing-lg);border-top:1px solid rgba(255,255,255,.08);display:flex;flex-direction:column;gap:var(--spacing-xs)}.admin-sidebar-user{font-size:.8125rem;color:#fff6;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.admin-logout-btn{background:none;border:1px solid rgba(255,255,255,.18);color:#ffffff8c;font-size:.8125rem;font-weight:500;padding:.3125rem .75rem;min-height:unset;min-width:unset;cursor:pointer;border-radius:var(--radius-sm);transition:color .15s,border-color .15s;text-align:left;width:100%}.admin-logout-btn:hover{color:#ffffffd9;border-color:#ffffff59}.admin-main{flex:1;min-width:0;overflow-x:hidden}.admin-section{padding:var(--spacing-2xl) var(--spacing-2xl) var(--spacing-4xl);max-width:1100px}.admin-section-header{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--spacing-md);margin-bottom:var(--spacing-xl)}.admin-section-header h1{margin-bottom:var(--spacing-xs)}.admin-loading{display:flex;justify-content:center;padding:var(--spacing-3xl) 0}.admin-empty{text-align:center;padding:var(--spacing-3xl) 0;color:var(--color-text-light)}.admin-stat-group{margin-bottom:var(--spacing-2xl)}.admin-stat-group-title{font-size:.8125rem;font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:var(--color-text-light);margin-bottom:var(--spacing-md)}.admin-stat-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:var(--spacing-md)}.admin-stat-card{background:#fff;border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:var(--spacing-lg);display:flex;flex-direction:column;gap:var(--spacing-xs)}.admin-stat-card--highlight{border-color:var(--color-primary-border);background:var(--color-primary-tint)}.admin-stat-value{font-size:2rem;font-weight:700;font-family:var(--font-display);color:var(--color-text);line-height:1}.admin-stat-label{font-size:.8125rem;color:var(--color-text-light)}.admin-filters-bar{display:flex;flex-wrap:wrap;gap:var(--spacing-sm);margin-bottom:var(--spacing-lg)}.admin-filter-select,.admin-filter-input{font-family:var(--font-body);font-size:.875rem;padding:.4375rem .75rem;border:1.5px solid var(--color-border);border-radius:var(--radius-md);background:#fff;color:var(--color-text);height:38px;transition:border-color .15s;min-width:0}.admin-filter-select{cursor:pointer}.admin-filter-input{width:200px}.admin-filter-select:focus,.admin-filter-input:focus{outline:none;border-color:var(--color-primary)}.admin-table-wrap{overflow-x:auto;border:1px solid var(--color-border);border-radius:var(--radius-lg);background:#fff;margin-bottom:var(--spacing-md)}.admin-table{width:100%;border-collapse:collapse;font-size:.875rem}.admin-table th{text-align:left;padding:.625rem var(--spacing-md);font-size:.75rem;font-weight:700;text-transform:uppercase;letter-spacing:.04em;color:var(--color-text-light);border-bottom:1px solid var(--color-border);white-space:nowrap;background:#fafafa}.admin-table th:first-child{border-radius:var(--radius-lg) 0 0 0}.admin-table th:last-child{border-radius:0 var(--radius-lg) 0 0}.admin-table td{padding:.625rem var(--spacing-md);border-bottom:1px solid var(--color-border);vertical-align:middle;color:var(--color-text)}.admin-table tbody tr:last-child td{border-bottom:none}.admin-table tbody tr:hover td{background:#fafaf8}.admin-table tbody tr.admin-row--expanded td{background:#f7f9f7}.admin-table tbody tr.admin-row--detail td{background:#f7f9f7;padding-top:0}.admin-expand-cell{text-align:right;color:var(--color-text-muted);font-size:.6875rem;white-space:nowrap;padding-right:var(--spacing-md)!important}.admin-cell-date{white-space:nowrap;color:var(--color-text-light)}.admin-cell-capitalize{text-transform:capitalize}.admin-row-detail{display:flex;flex-wrap:wrap;gap:var(--spacing-md) var(--spacing-2xl);padding:var(--spacing-sm) 0 var(--spacing-md)}.admin-role-badge{display:inline-block;font-size:.6875rem;font-weight:700;padding:2px 8px;border-radius:10px;white-space:nowrap;text-transform:uppercase;letter-spacing:.03em}.admin-role-badge--owner{background:#dbeafe;color:#1e40af}.admin-role-badge--contractor{background:#fef3c7;color:#92400e}.admin-confirmed-badge{display:inline-block;font-size:.6875rem;font-weight:700;padding:2px 8px;border-radius:10px}.admin-confirmed-badge--yes{background:#d1fae5;color:#065f46}.admin-confirmed-badge--no{background:#f3f4f6;color:#6b7280}.admin-pagination{display:flex;align-items:center;gap:var(--spacing-md);padding-top:var(--spacing-md)}.admin-pagination .btn-secondary{font-size:.875rem;min-height:36px;padding:0 var(--spacing-md)}.admin-pagination-info{font-size:.875rem;color:var(--color-text-light)}.admin-export-btn{font-size:.875rem;min-height:38px;padding:0 var(--spacing-md);flex-shrink:0}@media (max-width: 860px){.admin-shell{flex-direction:column}.admin-sidebar{width:100%;height:auto;position:static;flex-direction:row;align-items:center;flex-wrap:nowrap;overflow-x:auto}.admin-sidebar-header{border-bottom:none;border-right:1px solid rgba(255,255,255,.08);flex-shrink:0}.admin-nav{flex-direction:row;flex:1;padding:0;gap:0}.admin-nav-link{padding:var(--spacing-md) var(--spacing-md);border-left:none;border-bottom:3px solid transparent;white-space:nowrap;font-size:.875rem}.admin-nav-link.active{border-left-color:transparent;border-bottom-color:var(--color-primary)}.admin-sidebar-footer{display:none}.admin-section{padding:var(--spacing-lg) var(--spacing-lg) var(--spacing-2xl)}}.admin-cell-mono{font-variant-numeric:tabular-nums;font-size:.875rem;color:var(--color-text-light)}.admin-subtitle{color:var(--color-text-light);font-size:.9375rem;margin-top:2px}.admin-filters{display:flex;gap:var(--spacing-xs);margin-bottom:var(--spacing-xl);border-bottom:2px solid var(--color-border)}.admin-filter-tab{background:none;border:none;padding:var(--spacing-sm) var(--spacing-md);font-size:.9375rem;font-weight:500;color:var(--color-text-light);cursor:pointer;border-bottom:2px solid transparent;margin-bottom:-2px;min-height:unset;min-width:unset;transition:color .15s,border-color .15s}.admin-filter-tab:hover{color:var(--color-text)}.admin-filter-tab.active{color:var(--color-primary);border-bottom-color:var(--color-primary)}.admin-badge{background-color:var(--color-warning);color:#fff;font-size:.8125rem;font-weight:700;padding:4px 10px;border-radius:10px;white-space:nowrap;flex-shrink:0}.admin-list{display:flex;flex-direction:column;gap:var(--spacing-md);max-width:760px}.admin-card{padding:var(--spacing-lg)}.admin-card--inactive{opacity:.72}.admin-card-header{display:flex;justify-content:space-between;align-items:flex-start;gap:var(--spacing-md);margin-bottom:var(--spacing-md)}.admin-card-company{font-size:1.0625rem;font-family:var(--font-display);font-weight:700;margin-bottom:2px}.admin-card-name{font-size:.875rem;color:var(--color-text-light)}.admin-status-badge{font-size:.75rem;font-weight:700;padding:3px 10px;border-radius:10px;white-space:nowrap;flex-shrink:0}.admin-status-badge--pending{background-color:#fef3c7;color:#92400e}.admin-status-badge--approved{background-color:#d1fae5;color:#065f46}.admin-status-badge--rejected{background-color:#fee2e2;color:#991b1b}.admin-card-details{display:flex;flex-direction:column;gap:var(--spacing-xs);margin-bottom:var(--spacing-md)}.admin-detail-row{display:flex;gap:var(--spacing-md);font-size:.9375rem}.admin-detail-label{color:var(--color-text-light);font-weight:500;min-width:90px;flex-shrink:0}.admin-detail-value{color:var(--color-text);word-break:break-word}.admin-detail-link{color:var(--color-primary);text-decoration:none}.admin-detail-link:hover{text-decoration:underline}.admin-card-description{font-size:.9375rem;color:var(--color-text-light);line-height:1.5;border-top:1px solid var(--color-border);padding-top:var(--spacing-md);margin-bottom:var(--spacing-md)}.admin-rejection-reason{border-top:1px solid var(--color-border);padding-top:var(--spacing-md);margin-bottom:var(--spacing-sm)}.admin-rejection-reason-label{display:block;font-size:.75rem;font-weight:700;text-transform:uppercase;letter-spacing:.04em;color:#991b1b;margin-bottom:var(--spacing-xs)}.admin-rejection-reason-text{font-size:.9375rem;color:var(--color-text);line-height:1.5}.admin-card-actions{padding-top:var(--spacing-md);border-top:1px solid var(--color-border);display:flex;gap:var(--spacing-sm);align-items:center}.admin-reject-btn{font-size:.9375rem;min-height:40px;padding:0 var(--spacing-md);color:#991b1b;border-color:#fca5a5}.admin-reject-btn:hover:not(:disabled){color:#7f1d1d;border-color:#f87171;background:#fef2f2}.admin-modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000073;display:flex;align-items:center;justify-content:center;padding:var(--spacing-lg);z-index:1000}.admin-modal{background:#fff;border-radius:var(--radius-xl);padding:var(--spacing-2xl);width:100%;max-width:480px;box-shadow:var(--shadow-lg)}.admin-modal-title{font-size:1.125rem;margin-bottom:var(--spacing-xs)}.admin-modal-subtitle{font-size:.9375rem;color:var(--color-text-light);margin-bottom:var(--spacing-xl)}.admin-modal-field{margin-bottom:var(--spacing-md)}.admin-modal-label{display:block;font-size:.875rem;font-weight:600;margin-bottom:var(--spacing-xs);color:var(--color-text)}.admin-modal-textarea{width:100%;font-family:var(--font-body);font-size:.9375rem;padding:var(--spacing-md);border:1.5px solid var(--color-border);border-radius:var(--radius-md);resize:vertical;line-height:1.5;color:var(--color-text);transition:border-color .15s}.admin-modal-textarea:focus{outline:none;border-color:var(--color-primary)}.admin-modal-textarea:disabled{opacity:.7;cursor:not-allowed}.admin-modal-char-count{font-size:.8125rem;color:var(--color-text-muted);text-align:right;margin-top:4px}.admin-modal-error{margin-bottom:var(--spacing-md)}.admin-modal-actions{display:flex;gap:var(--spacing-sm);align-items:center}.admin-modal-confirm-btn{background-color:var(--color-error);box-shadow:none}.admin-modal-confirm-btn:hover:not(:disabled){background-color:#c0271d;box-shadow:none}@media (max-width: 639px){.admin-card-header{flex-direction:column}.admin-detail-label{min-width:80px}.admin-modal{padding:var(--spacing-xl)}.admin-modal-actions{flex-direction:column;align-items:stretch}}.connect-return{display:flex;justify-content:center;align-items:flex-start;padding:4rem 1rem;min-height:60vh}.connect-return__card{background:var(--white);border-radius:12px;padding:2.5rem 2rem;max-width:480px;width:100%;text-align:center;box-shadow:0 2px 12px #00000014;border-top:4px solid transparent}.connect-return__card--success{border-top-color:var(--success, #22c55e)}.connect-return__card--warning{border-top-color:var(--warning, #f59e0b)}.connect-return__card--error{border-top-color:var(--error, #ef4444)}.connect-return__icon{width:56px;height:56px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:1.5rem;font-weight:700;margin:0 auto 1.25rem;background:var(--surface, #f3f4f6)}.connect-return__card--success .connect-return__icon{background:#dcfce7;color:#16a34a}.connect-return__card--warning .connect-return__icon{background:#fef3c7;color:#d97706}.connect-return__card--error .connect-return__icon{background:#fee2e2;color:#dc2626}.connect-return__card h1{font-size:1.375rem;margin-bottom:.75rem}.connect-return__card p{color:var(--text-muted, #6b7280);margin-bottom:1.75rem;line-height:1.6}.connect-return__card--progress{border-top-color:var(--primary, #3b82f6)}.connect-return__card--review{border-top-color:var(--success, #22c55e)}.connect-return__card--progress .connect-return__icon{background:#dbeafe;color:#1d4ed8}.connect-return__card--review .connect-return__icon{background:#dcfce7;color:#16a34a}.connect-return__step-badge{display:inline-block;background:#dbeafe;color:#1d4ed8;font-size:.75rem;font-weight:600;letter-spacing:.03em;text-transform:uppercase;padding:.25rem .75rem;border-radius:9999px;margin-bottom:1rem}.connect-return__note{font-size:.875rem;color:var(--text-muted, #6b7280);margin-top:-.5rem;margin-bottom:1.75rem;line-height:1.5}.connect-return__inline-error{color:var(--error, #ef4444);font-size:.875rem;margin-bottom:1rem}.connect-return__defer-note{margin-top:1rem;margin-bottom:0;font-size:.8125rem;color:var(--text-muted, #6b7280);line-height:1.5}.connect-return__defer-link{background:none;border:none;padding:0;font-size:inherit;color:var(--text-muted, #6b7280);text-decoration:underline;cursor:pointer}.connect-return__defer-link:disabled{opacity:.5;cursor:default}.connect-return__actions{display:flex;flex-direction:column;gap:.75rem}.job-payment{max-width:520px;margin:0 auto;padding:2rem 1rem 4rem}.job-payment__header{margin-bottom:2rem}.job-payment__header h1{font-size:1.5rem;margin-bottom:.375rem}.job-payment__title{font-size:1.0625rem;font-weight:600;color:var(--primary, #2d6a2d);margin-bottom:.5rem}.job-payment__subtitle{color:var(--text-muted, #6b7280);font-size:.9375rem;line-height:1.6}.checkout-summary{background:var(--surface, #f9fafb);border-radius:10px;padding:1.25rem 1.25rem .75rem;margin-bottom:1.75rem}.checkout-summary__row{display:flex;justify-content:space-between;align-items:center;padding:.375rem 0;font-size:.9375rem}.checkout-summary__row--muted{color:var(--text-muted, #6b7280);font-size:.875rem}.checkout-summary__row--total{font-weight:700;font-size:1rem;border-top:1px solid var(--border, #e5e7eb);margin-top:.375rem;padding-top:.75rem}.checkout-summary__note{font-size:.8125rem;color:var(--text-muted, #6b7280);margin-top:.75rem;padding-top:.75rem;border-top:1px solid var(--border, #e5e7eb);line-height:1.5}.checkout-error{color:var(--error, #dc2626);font-size:.9rem;margin-top:.75rem;margin-bottom:0}.checkout-submit{width:100%;margin-top:1.5rem}.checkout-cancel{width:100%;margin-top:.75rem;text-align:center;background:none;border:none;color:var(--text-muted, #6b7280);font-size:.9rem;cursor:pointer;padding:.5rem;text-decoration:underline}.checkout-cancel:hover{color:var(--text, #111827)}@media (min-width: 640px){.job-payment{padding:3rem 0 5rem}}.privacy-page{padding:var(--spacing-2xl) 0;min-height:60vh}.privacy-content{max-width:760px;margin:0 auto}.privacy-content h1{font-family:var(--font-display);font-size:clamp(1.75rem,4vw,2.5rem);margin-bottom:var(--spacing-md)}.privacy-meta{font-size:.9rem;color:#666;background:#f7f8f5;border-left:4px solid var(--color-primary);padding:var(--spacing-md) var(--spacing-lg);margin-bottom:var(--spacing-2xl);line-height:1.8}.privacy-content section{margin-bottom:var(--spacing-2xl)}.privacy-content h2{font-size:1.25rem;font-weight:700;margin-bottom:var(--spacing-md);padding-bottom:var(--spacing-xs);border-bottom:1px solid #e5e7e0}.privacy-content h3{font-size:1rem;font-weight:600;margin-top:var(--spacing-lg);margin-bottom:var(--spacing-sm);color:#333}.privacy-content p{line-height:1.75;color:#444;margin-bottom:var(--spacing-md)}.privacy-content ul{padding-left:1.5rem;margin-bottom:var(--spacing-md)}.privacy-content ul li{line-height:1.75;color:#444;margin-bottom:var(--spacing-xs)}.privacy-content a{color:var(--color-primary);text-decoration:underline}.privacy-content a:hover{color:var(--color-primary-dark, #2d6a1f)}.privacy-content address{font-style:normal;line-height:1.9;color:#444}.terms-page{padding:var(--spacing-2xl) 0;min-height:60vh}.terms-content{max-width:760px;margin:0 auto}.terms-content h1{font-family:var(--font-display);font-size:clamp(1.75rem,4vw,2.5rem);margin-bottom:var(--spacing-md)}.terms-meta{font-size:.9rem;color:#666;background:#f7f8f5;border-left:4px solid var(--color-primary);padding:var(--spacing-md) var(--spacing-lg);margin-bottom:var(--spacing-2xl);line-height:1.8}.terms-content section{margin-bottom:var(--spacing-2xl)}.terms-content h2{font-size:1.25rem;font-weight:700;margin-bottom:var(--spacing-md);padding-bottom:var(--spacing-xs);border-bottom:1px solid #e5e7e0}.terms-content h3{font-size:1rem;font-weight:600;margin-top:var(--spacing-lg);margin-bottom:var(--spacing-sm);color:#333}.terms-content p{line-height:1.75;color:#444;margin-bottom:var(--spacing-md)}.terms-notice{font-size:.875rem;background:#f7f8f5;border-left:3px solid #ccc;padding:var(--spacing-sm) var(--spacing-md);color:#555!important;line-height:1.65!important}.terms-content ul{padding-left:1.5rem;margin-bottom:var(--spacing-md)}.terms-content ul li{line-height:1.75;color:#444;margin-bottom:var(--spacing-xs)}.terms-content a{color:var(--color-primary);text-decoration:underline}.terms-content a:hover{color:var(--color-primary-dark, #2d6a1f)}.terms-content address{font-style:normal;line-height:1.9;color:#444}.mockup-index{min-height:100vh;padding:var(--spacing-3xl) 0;background:var(--color-background-alt)}.index-header{text-align:center;margin-bottom:var(--spacing-3xl)}.index-header h1{color:var(--color-primary);margin-bottom:var(--spacing-md)}.index-header p{color:var(--color-text-light);font-size:1.125rem}.mockup-cards{display:grid;grid-template-columns:1fr;gap:var(--spacing-xl);margin-bottom:var(--spacing-3xl)}@media (min-width: 768px){.mockup-cards{grid-template-columns:repeat(2,1fr)}}@media (min-width: 1024px){.mockup-cards{grid-template-columns:repeat(3,1fr)}}.mockup-card{background:#fff;border:2px solid var(--color-border);border-radius:var(--radius-lg);padding:var(--spacing-xl);text-decoration:none;transition:all .2s ease;display:flex;flex-direction:column}.mockup-card:hover{transform:translateY(-4px);box-shadow:var(--shadow-lg);border-color:var(--color-primary)}.mockup-number{display:inline-block;background:var(--color-primary);color:#fff;padding:var(--spacing-xs) var(--spacing-md);border-radius:var(--radius-sm);font-size:.875rem;font-weight:600;margin-bottom:var(--spacing-md);align-self:flex-start}.mockup-card h2{font-size:1.5rem;color:var(--color-text);margin-bottom:var(--spacing-sm)}.mockup-card p{color:var(--color-text-light);line-height:1.6;flex:1;margin-bottom:var(--spacing-md)}.view-link{color:var(--color-primary);font-weight:600;align-self:flex-start}.mockup-card:hover .view-link{text-decoration:underline}.design-notes{max-width:800px;margin:0 auto;background:#fff;border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:var(--spacing-2xl)}.design-notes h3{color:var(--color-primary);margin-bottom:var(--spacing-lg)}.design-notes ul{list-style-position:inside;color:var(--color-text-light);line-height:1.8}.design-notes li{margin-bottom:var(--spacing-sm)}.mockup1{min-height:calc(100vh - 80px);padding:var(--spacing-3xl) 0;background:#fafbf8}.welcome-section{text-align:center;margin-bottom:var(--spacing-3xl);padding-bottom:var(--spacing-lg)}.welcome-section h1{color:var(--color-primary);margin-bottom:var(--spacing-sm);font-weight:700}.welcome-section .subtitle{color:var(--color-text-light);font-size:1.125rem;font-weight:400}.services-grid{display:grid;grid-template-columns:1fr;gap:var(--spacing-xl);max-width:1200px;margin:0 auto}@media (min-width: 540px){.services-grid{grid-template-columns:repeat(2,1fr)}}@media (min-width: 900px){.services-grid{grid-template-columns:repeat(3,1fr)}}.service-card{background:#fff;border:1px solid #e8e9e6;border-radius:12px;padding:0;display:flex;flex-direction:column;cursor:pointer;transition:all .25s cubic-bezier(.4,0,.2,1);overflow:hidden;box-shadow:0 1px 3px #0000000f}.service-card:hover{transform:translateY(-6px);box-shadow:0 12px 24px #6b7c3a26;border-color:var(--color-primary)}.service-card:active{transform:translateY(-3px)}.service-image-wrapper{width:100%;aspect-ratio:1 / 1;overflow:hidden;background:#f5f6f3;position:relative}.service-image{width:100%;height:100%;object-fit:cover;transition:transform .3s ease}.service-card:hover .service-image{transform:scale(1.05)}.service-name{font-size:1.125rem;color:var(--color-text);text-align:center;font-family:var(--font-display);font-weight:600;padding:var(--spacing-lg);margin:0}@media (max-width: 539px){.services-grid{gap:var(--spacing-lg)}.service-name{font-size:1rem;padding:var(--spacing-md)}}.mockup2{min-height:calc(100vh - 80px);padding:var(--spacing-3xl) 0;background:#fff}.mockup2 .welcome-section{text-align:center;margin-bottom:var(--spacing-3xl);padding-bottom:var(--spacing-lg)}.mockup2 .welcome-section h1{color:var(--color-primary);margin-bottom:var(--spacing-sm);font-weight:700}.mockup2 .welcome-section .subtitle{color:var(--color-text-light);font-size:1.125rem;font-weight:400}.services-list{max-width:800px;margin:0 auto;display:flex;flex-direction:column;gap:var(--spacing-md)}.service-row{background:#fff;border:1px solid #e8e9e6;border-radius:12px;padding:var(--spacing-lg);display:grid;grid-template-columns:80px 1fr auto;gap:var(--spacing-lg);align-items:center;cursor:pointer;transition:all .25s cubic-bezier(.4,0,.2,1);text-align:left;box-shadow:0 1px 3px #0000000f}.service-row:hover{transform:translate(8px);box-shadow:0 8px 16px #6b7c3a1f;border-color:var(--color-primary)}.service-row:active{transform:translate(4px)}.service-image-container{width:80px;height:80px;border-radius:8px;overflow:hidden;flex-shrink:0;background:#f5f6f3}.service-thumbnail{width:100%;height:100%;object-fit:cover;transition:transform .3s ease}.service-row:hover .service-thumbnail{transform:scale(1.08)}.service-content{min-width:0}.service-row .service-name{font-size:1.125rem;color:var(--color-text);margin:0 0 var(--spacing-xs) 0;font-family:var(--font-display);font-weight:600;line-height:1.3}.service-description{color:var(--color-text-light);font-size:.9375rem;margin:0;line-height:1.5}.service-arrow{color:var(--color-text-light);flex-shrink:0;transition:all .2s ease}.service-row:hover .service-arrow{color:var(--color-primary);transform:translate(4px)}@media (max-width: 640px){.service-row{grid-template-columns:64px 1fr auto;padding:var(--spacing-md);gap:var(--spacing-md)}.service-image-container{width:64px;height:64px}.service-row .service-name{font-size:1rem}.service-description{font-size:.875rem}.service-arrow{width:20px;height:20px}}.mockup3{min-height:calc(100vh - 80px);background:linear-gradient(to bottom,#fafbf8,#f5f6f3)}.mockup3-inner{min-height:calc(100vh - 80px);display:flex;align-items:center;padding:var(--spacing-3xl) 0}.mockup3 .container{width:100%}.hero-section{text-align:center;margin-bottom:var(--spacing-3xl)}.hero-section h1{color:var(--color-primary);font-size:clamp(1.75rem,4vw,2.25rem);margin-bottom:var(--spacing-sm);font-weight:700}.hero-subtitle{color:var(--color-text-light);font-size:1.125rem;font-weight:400}.compact-grid{display:grid;grid-template-columns:1fr;gap:var(--spacing-lg);max-width:900px;margin:0 auto}@media (min-width: 540px){.compact-grid{grid-template-columns:repeat(2,1fr)}}@media (min-width: 900px){.compact-grid{grid-template-columns:repeat(3,1fr)}}.compact-service-card{background:#fff;border:1px solid #e8e9e6;border-radius:12px;padding:0;cursor:pointer;transition:all .25s cubic-bezier(.4,0,.2,1);overflow:hidden;display:flex;flex-direction:column;box-shadow:0 1px 3px #0000000f}.compact-service-card:hover{transform:translateY(-4px);box-shadow:0 12px 24px #6b7c3a26;border-color:var(--color-primary)}.compact-service-card:active{transform:translateY(-2px)}.compact-image-wrapper{width:100%;aspect-ratio:1 / 1;overflow:hidden;background:#f5f6f3}.compact-image{width:100%;height:100%;object-fit:cover;transition:transform .3s ease}.compact-service-card:hover .compact-image{transform:scale(1.05)}.compact-label{font-size:1.0625rem;font-weight:600;color:var(--color-text);font-family:var(--font-display);padding:var(--spacing-lg);text-align:center;display:block}@media (max-width: 539px){.compact-label{font-size:1rem;padding:var(--spacing-md)}}.mockup4{min-height:calc(100vh - 80px);padding:var(--spacing-3xl) 0;background:#fff}.welcome-header{margin-bottom:var(--spacing-3xl);text-align:center}.welcome-header h1{color:var(--color-primary);font-size:clamp(1.75rem,4vw,2.25rem);margin-bottom:var(--spacing-sm);font-weight:700}.welcome-header p{color:var(--color-text-light);font-size:1.125rem;font-weight:400}.image-grid{display:grid;grid-template-columns:1fr;gap:var(--spacing-xl);max-width:1200px;margin:0 auto}@media (min-width: 540px){.image-grid{grid-template-columns:repeat(2,1fr)}}@media (min-width: 900px){.image-grid{grid-template-columns:repeat(3,1fr)}}.image-card{position:relative;border:none;border-radius:12px;padding:0;cursor:pointer;overflow:hidden;transition:all .3s cubic-bezier(.4,0,.2,1);display:flex;flex-direction:column;background:#fff;box-shadow:0 2px 8px #00000014}.image-card:hover{transform:translateY(-8px);box-shadow:0 16px 32px #6b7c3a2e}.image-card:active{transform:translateY(-4px)}.card-image-wrapper{position:relative;width:100%;aspect-ratio:1 / 1;overflow:hidden}.card-image{width:100%;height:100%;object-fit:cover;transition:transform .4s ease}.image-card:hover .card-image{transform:scale(1.08)}.image-overlay{position:absolute;top:0;left:0;right:0;bottom:0;background:linear-gradient(to bottom,#0000,#0000000d 40%,#0000004d);transition:background .3s ease;pointer-events:none}.image-card:hover .image-overlay{background:linear-gradient(to bottom,#0000,#0000001a 40%,#0006)}.image-card-title{position:absolute;bottom:0;left:0;right:0;z-index:1;color:#fff;font-size:1.25rem;font-family:var(--font-display);font-weight:700;text-align:center;padding:var(--spacing-xl);margin:0;text-shadow:0 2px 8px rgba(0,0,0,.4);background:linear-gradient(to top,rgba(0,0,0,.4) 0%,transparent 100%)}@media (max-width: 539px){.image-card-title{font-size:1.125rem;padding:var(--spacing-lg)}}.mockup5{min-height:calc(100vh - 80px);padding:var(--spacing-3xl) 0;background:#fff}.page-header{margin-bottom:var(--spacing-3xl);padding-bottom:var(--spacing-xl);border-bottom:1px solid #e8e9e6}.page-header h1{color:var(--color-primary);font-size:clamp(1.75rem,4vw,2.25rem);margin-bottom:var(--spacing-xs);font-weight:700}.header-subtitle{color:var(--color-text-light);font-size:1.0625rem;margin:0;font-weight:400}.stacked-services{max-width:700px;margin:0 auto;display:flex;flex-direction:column;gap:var(--spacing-md)}.stacked-btn{background:#fff;border:1px solid #e8e9e6;border-radius:12px;padding:var(--spacing-lg);display:grid;grid-template-columns:72px 1fr auto;align-items:center;gap:var(--spacing-lg);cursor:pointer;transition:all .25s cubic-bezier(.4,0,.2,1);text-align:left;box-shadow:0 1px 3px #0000000f}.stacked-btn:hover{background:#fafbf8;border-color:var(--color-primary);box-shadow:0 6px 12px #6b7c3a1f;transform:translate(6px)}.stacked-btn:active{transform:translate(3px)}.btn-image-wrapper{width:72px;height:72px;border-radius:8px;overflow:hidden;flex-shrink:0;background:#f5f6f3}.btn-image{width:100%;height:100%;object-fit:cover;transition:transform .3s ease}.stacked-btn:hover .btn-image{transform:scale(1.1)}.btn-label{font-size:1.125rem;font-weight:600;color:var(--color-text);font-family:var(--font-display)}.btn-chevron{color:var(--color-text-light);flex-shrink:0;transition:all .2s ease}.stacked-btn:hover .btn-chevron{color:var(--color-primary);transform:translate(4px)}.bottom-reassurance{text-align:center;margin-top:var(--spacing-3xl);padding-top:var(--spacing-xl);border-top:1px solid #e8e9e6}.bottom-reassurance p{color:var(--color-text-light);font-size:.9375rem;margin:0}@media (max-width: 640px){.stacked-btn{grid-template-columns:60px 1fr auto;padding:var(--spacing-md);gap:var(--spacing-md)}.btn-image-wrapper{width:60px;height:60px}.btn-label{font-size:1rem}.btn-chevron{width:20px;height:20px}}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}:root{--color-primary: #3a9e3a;--color-primary-dark: #2e8a2e;--color-primary-light: #5ab85a;--color-primary-tint: #f3faf3;--color-primary-border: #b8ddb8;--color-text: #1a1a1a;--color-text-light: #888;--color-text-muted: #bbb;--color-background: #ffffff;--color-background-alt: #f0f1ec;--color-border: #e5e7e0;--color-success: #3a9e3a;--color-error: #d93025;--color-warning: #f59e0b;--color-info: #3b82f6;--font-display: "Fraunces", serif;--font-body: "DM Sans", -apple-system, BlinkMacSystemFont, sans-serif;--spacing-xs: .25rem;--spacing-sm: .5rem;--spacing-md: 1rem;--spacing-lg: 1.5rem;--spacing-xl: 2rem;--spacing-2xl: 3rem;--spacing-3xl: 4rem;--spacing-4xl: 6rem;--radius-sm: .25rem;--radius-md: .5rem;--radius-lg: .75rem;--radius-xl: 1rem;--shadow-sm: 0 1px 3px rgba(0,0,0,.05);--shadow-md: 0 4px 12px rgba(0,0,0,.08);--shadow-lg: 0 10px 24px rgba(0,0,0,.1)}body{font-family:var(--font-body);font-size:1rem;line-height:1.6;color:var(--color-text);background-color:#f5f6f3;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}h1,h2,h3,h4,h5,h6{font-family:var(--font-display);font-weight:700;line-height:1.2;color:var(--color-text);letter-spacing:-.02em}h1{font-size:clamp(1.625rem,1.5rem + .625vw,2rem)}h2{font-size:clamp(1.125rem,1rem + .5vw,1.375rem)}h3{font-size:1.0625rem}header,nav,main,footer,section,article,aside{display:block}*:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px}a{color:var(--color-primary);text-decoration:none;transition:color .15s}a:hover{color:var(--color-primary-dark)}button{font-family:var(--font-body);font-size:1rem;min-height:48px;min-width:48px;cursor:pointer;border:none;border-radius:8px;padding:0 var(--spacing-lg);font-weight:500;transition:all .15s}button:disabled{opacity:.6;cursor:not-allowed}.btn-primary{display:inline-flex;align-items:center;justify-content:center;background-color:var(--color-primary);color:#fff;font-weight:600;min-height:48px;padding:0 1.75rem;font-size:1rem;border:none;box-shadow:0 2px 8px #3a9e3a47}.btn-primary:hover:not(:disabled){background-color:var(--color-primary-dark);box-shadow:0 4px 14px #3a9e3a61}.btn-secondary{display:inline-flex;align-items:center;justify-content:center;background-color:transparent;color:var(--color-text-light);border:1.5px solid var(--color-border);font-weight:500;min-height:48px;padding:0 1.75rem}.btn-secondary:hover:not(:disabled){border-color:var(--color-primary);color:var(--color-primary)}.btn-outline{background-color:transparent;border:1.5px solid var(--color-primary);color:var(--color-primary);font-weight:500;min-height:48px;padding:0 1.75rem}.btn-outline:hover:not(:disabled){background-color:var(--color-primary-tint)}.btn-large{width:100%;min-height:52px;font-size:1.0625rem;padding:0 2rem}.btn-text{background:none;border:none;color:var(--color-primary);font-weight:500;font-size:.9375rem;padding:.25rem .5rem;cursor:pointer;min-height:auto;min-width:auto}.btn-text:hover{color:var(--color-primary-dark);text-decoration:underline}input,select,textarea{font-family:var(--font-body);font-size:1rem;min-height:48px;padding:.75rem .875rem;border:1.5px solid var(--color-border);border-radius:8px;width:100%;color:var(--color-text);background:#fff;outline:none;transition:border-color .15s,box-shadow .15s;-moz-appearance:none;appearance:none;-webkit-appearance:none}input:focus,select:focus,textarea:focus{border-color:var(--color-primary);box-shadow:0 0 0 3px #3a9e3a17}select{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='6' viewBox='0 0 10 6'%3E%3Cpath d='M1 1l4 4 4-4' stroke='%23999' stroke-width='1.5' fill='none' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right .875rem center;padding-right:2.25rem;cursor:pointer}textarea{resize:vertical;min-height:100px;line-height:1.6}input::placeholder,textarea::placeholder{color:var(--color-text-muted);font-size:.9375rem}label{display:block;margin-bottom:.35rem;font-size:.725rem;font-weight:600;color:var(--color-text-light);letter-spacing:.04em;text-transform:uppercase}.form-group{margin-bottom:var(--spacing-md)}.form-group:last-child{margin-bottom:0}.form-error{color:var(--color-error);font-size:.8125rem;margin-top:.3rem}.form-hint{display:block;margin-top:.3rem;font-size:.8125rem;color:var(--color-text-light)}.form-row{display:grid;grid-template-columns:1fr;gap:var(--spacing-md)}@media (min-width: 540px){.form-row{grid-template-columns:1fr 1fr}}.form-actions{text-align:center;padding-top:var(--spacing-md)}.form-actions-hint{margin-top:var(--spacing-md);color:var(--color-text-light);font-size:.875rem}.input-readonly{background-color:var(--color-background-alt);color:var(--color-text-light);cursor:default}.card{background:#fff;border:1px solid var(--color-border);border-radius:10px;overflow:hidden;box-shadow:var(--shadow-sm)}.form-section{background:#fff;border:1px solid var(--color-border);border-radius:10px;overflow:hidden;box-shadow:var(--shadow-sm);padding:0 1.25rem 1.25rem;margin-bottom:.875rem}.form-section>h2{font-family:var(--font-body);font-size:.8375rem;font-weight:600;letter-spacing:0;color:var(--color-text);display:flex;align-items:center;gap:.45rem;margin:0 -1.25rem 1.25rem;padding:.75rem 1.25rem;border-bottom:1px solid #f0f0f0}.form-section>h2:before{content:"";display:inline-block;width:3px;height:13px;background:var(--color-primary);border-radius:2px;flex-shrink:0}.form-section-head{display:flex;align-items:center;gap:.45rem;padding:.75rem 1.25rem;margin:0 -1.25rem 1.25rem;font-family:var(--font-body);font-size:.8375rem;font-weight:600;color:var(--color-text);border-bottom:1px solid #f0f0f0;letter-spacing:0}.card-head{display:flex;align-items:center;gap:.45rem;padding:.75rem 1rem;font-family:var(--font-body);font-size:.8375rem;font-weight:600;color:var(--color-text);border-bottom:1px solid #f0f0f0;letter-spacing:0}.form-section-bar,.card-bar{width:3px;height:13px;background:var(--color-primary);border-radius:2px;flex-shrink:0}.card-body{padding:1rem}.form-section-header{display:flex;justify-content:space-between;align-items:center;gap:var(--spacing-md);margin:0 -1.25rem 1.25rem;padding:.75rem 1.25rem;border-bottom:1px solid #f0f0f0}.form-section-header-title{font-family:var(--font-body);font-size:.8375rem;font-weight:600;letter-spacing:0;color:var(--color-text);display:flex;align-items:center;gap:.45rem;margin:0}.form-section-description{color:var(--color-text-light);font-size:.875rem;margin-bottom:var(--spacing-md);line-height:1.5}.form-section-notice{font-size:.875rem;color:var(--color-text-light);background:var(--color-primary-tint);border-left:3px solid var(--color-primary);padding:var(--spacing-sm) var(--spacing-md);border-radius:0 6px 6px 0;margin-bottom:var(--spacing-lg);line-height:1.5}.auth-page{min-height:calc(100vh - 62px);display:flex;align-items:center;justify-content:center;padding:var(--spacing-xl) var(--spacing-md)}.auth-card{width:100%;max-width:480px}.auth-card-head{padding:1rem 1.25rem;font-family:var(--font-display);font-size:1.375rem;font-weight:700;color:var(--color-text);letter-spacing:-.02em;display:flex;align-items:center;gap:.5rem;border-bottom:1px solid var(--color-border)}.auth-card-bar{width:3px;height:18px;background:var(--color-primary);border-radius:2px;flex-shrink:0}.auth-card-body{padding:1.5rem 1.25rem}.auth-footer{text-align:center;margin-top:var(--spacing-lg);color:var(--color-text-light);font-size:.9375rem}.container{width:100%;margin:0 auto;padding:0 var(--spacing-md)}@media (min-width: 768px){.container{max-width:720px;padding:0 var(--spacing-lg)}}@media (min-width: 1024px){.container{max-width:960px;padding:0 var(--spacing-xl)}}@media (min-width: 1280px){.container{max-width:1200px}}.spinner{border:3px solid var(--color-border);border-top:3px solid var(--color-primary);border-radius:50%;width:40px;height:40px;animation:spin 1s linear infinite;margin:var(--spacing-xl) auto}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.error-message{background-color:#fef2f2;border:1px solid #fca5a5;color:#991b1b;padding:var(--spacing-md);border-radius:8px;margin-bottom:var(--spacing-lg);font-size:.9375rem;line-height:1.5}.success-message{background-color:var(--color-primary-tint);border:1px solid var(--color-primary-border);color:#1a5c1a;padding:var(--spacing-md);border-radius:8px;margin-bottom:var(--spacing-lg);font-size:.9375rem;line-height:1.5}.grid{display:grid;gap:var(--spacing-lg);grid-template-columns:1fr}@media (min-width: 768px){.grid-2{grid-template-columns:repeat(2,1fr)}}@media (min-width: 1024px){.grid-3{grid-template-columns:repeat(3,1fr)}}.text-center{text-align:center}.text-right{text-align:right}.mt-sm{margin-top:var(--spacing-sm)}.mt-md{margin-top:var(--spacing-md)}.mt-lg{margin-top:var(--spacing-lg)}.mb-sm{margin-bottom:var(--spacing-sm)}.mb-md{margin-bottom:var(--spacing-md)}.mb-lg{margin-bottom:var(--spacing-lg)}.hidden{display:none}.empty-state{text-align:center;padding:var(--spacing-2xl);color:var(--color-text-light)}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border-width:0}
