@import"https://fonts.googleapis.com/css2?family=Figtree:wght@400;500;600;700&display=swap";@import"https://api.fontshare.com/v2/css?f[]=general-sans@400,500,600,700&f[]=satoshi@400,500,700&display=swap";body{font-family:Figtree,sans-serif;background-color:#f5f5f5;color:#2b303b;margin:0;padding:0}a{color:#478c2d;text-decoration:none;transition:color .2s ease,text-decoration .2s ease}a:hover{color:#3b7923;text-decoration:underline}a:visited{color:#478c2d}a:active{color:#3b7923}button{font-family:Figtree,sans-serif;cursor:pointer}.MuiIconButton-root{background:transparent!important}.MuiIconButton-root.emily-chat-fab{background:#478c2d!important}.MuiIconButton-root.emily-chat-fab:hover{background:#45a049!important;background-color:#45a049!important}.MuiIconButton-root:hover{background:#eaecf0!important;background-color:#eaecf0!important;color:inherit!important}.MuiIconButton-root:hover .MuiSvgIcon-root{color:inherit!important}.card,.panel,.quote-box,.emily-card{background:#fff;border:1px solid #EAECF0;padding:20px;margin-bottom:20px;border-radius:8px;box-shadow:0 1px 3px #0000001a}.tab,.emily-tab{background:transparent;color:#717784;border-bottom:2px solid transparent;padding:12px 18px;font-weight:600;text-transform:uppercase;transition:.3s ease;border-radius:0;box-shadow:none;font-family:Figtree,sans-serif}.tab.active,.emily-tab.active{border-bottom:2px solid #478C2D;color:#2b303b;background:transparent;box-shadow:none}h1,h2,h3{color:#2b303b;text-shadow:none;margin-bottom:10px;font-family:Figtree,sans-serif}.emily-header{background:#fff;color:#2b303b;padding:20px;text-align:center;border-bottom:1px solid #EAECF0;font-family:Figtree,sans-serif}.emily-header h1{font-weight:600;letter-spacing:2px;text-shadow:none}.emily-tab-bar{display:flex;justify-content:center;gap:0;padding:0;background:#fff;border-bottom:1px solid #EAECF0;flex-wrap:wrap}@media (max-width: 768px){.emily-header{padding:15px}.emily-header h1{font-size:1.5rem;margin-bottom:.5rem}.emily-header p{font-size:.9rem}.emily-tab-bar{display:none}}@media (min-width: 769px){.emily-tab-bar{display:flex!important}}@media (min-width: 769px) and (max-width: 1024px){.emily-tab-bar{flex-wrap:wrap;justify-content:center}.emily-tab-bar .emily-tab{flex:0 0 auto;min-width:150px}}.emily-content{padding:20px;min-height:calc(100vh - 200px)}input,textarea,select{background:#fff;border:1px solid #EAECF0;color:#2b303b;padding:10px;font-family:Figtree,sans-serif;width:100%;margin-bottom:10px;min-height:44px;box-sizing:border-box;font-size:14px;border-radius:8px}textarea{min-height:auto}input:focus,textarea:focus,select:focus{outline:none;border-color:#478c2d;box-shadow:none}input::placeholder,textarea::placeholder{color:#717784}input[type=number]::-webkit-outer-spin-button,input[type=number]::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}input[type=number]{-moz-appearance:textfield;-webkit-appearance:textfield;appearance:textfield}.pac-container{background:#fff!important;border:1px solid #EAECF0!important;border-radius:8px!important;box-shadow:0 4px 12px #0000001a!important;font-family:Figtree,sans-serif!important}.pac-item{background:#fff!important;color:#2b303b!important;border:none!important;padding:8px 12px!important;cursor:pointer!important;transition:background-color .2s ease-in-out!important}.pac-item:hover{background:#f5f7fa!important}.pac-item-selected{background:#478c2d!important;color:#fff!important}.pac-item-query{color:#2b303b!important;font-weight:600!important}.pac-matched{color:#478c2d!important;font-weight:600!important}gmpx-place-autocomplete{width:100%!important;font-family:Figtree,sans-serif!important}gmpx-place-autocomplete input{width:100%!important;padding:12px 16px!important;background:#fff!important;border:1px solid #EAECF0!important;border-radius:8px!important;color:#2b303b!important;font-size:14px!important;font-family:Figtree,sans-serif!important;transition:all .2s ease-in-out!important;box-sizing:border-box!important}gmpx-place-autocomplete input:focus{outline:none!important;border-color:#478c2d!important;box-shadow:none!important}gmpx-place-autocomplete input::placeholder{color:#717784!important}gmpx-place-autocomplete .pac-container{background:#fff!important;border:1px solid #EAECF0!important;border-radius:8px!important;box-shadow:0 4px 12px #0000001a!important;font-family:Figtree,sans-serif!important}gmpx-place-autocomplete .pac-item{background:#fff!important;color:#2b303b!important;border:none!important;padding:8px 12px!important;cursor:pointer!important;transition:background-color .2s ease-in-out!important}gmpx-place-autocomplete .pac-item:hover{background:#f5f7fa!important}gmpx-place-autocomplete .pac-item-selected{background:#478c2d!important;color:#fff!important}label{color:#2b303b;font-weight:600;margin-bottom:5px;display:block;font-size:14px}.modal-backdrop{position:fixed;top:0;left:0;right:0;bottom:0;background:#00000080;z-index:1000;display:flex;align-items:center;justify-content:center}.modal-content{background:#fff;border:1px solid #EAECF0;padding:30px;max-width:600px;width:90%;max-height:90vh;overflow-y:auto;box-shadow:0 8px 32px #00000026;border-radius:12px}.job-card{background:#fff;border:1px solid #EAECF0;padding:20px;margin-bottom:15px;cursor:pointer;transition:all .3s ease;border-radius:8px}.job-card:hover{border-color:#478c2d;box-shadow:0 4px 12px #0000001a}.job-card h3{margin:0 0 10px;color:#2b303b}.job-info{display:flex;justify-content:space-between;color:#717784;font-size:14px}.job-card.preview{opacity:.9;border-color:#eaecf0;box-shadow:0 4px 12px #00000014}.job-notes-content a{text-decoration:underline}@keyframes typingDot{0%,80%,to{transform:scale(.8);opacity:.5}40%{transform:scale(1.2);opacity:1}}.invoice-list{display:flex;flex-direction:column;gap:0px;width:100%;border:1px solid #eaecf0;padding:15px 20px;border-radius:4px}.invoice-list-header{margin-bottom:12px;display:flex;align-items:center;justify-content:space-between}.invoice-list-title{color:#2b303b;font-size:18px;font-weight:600}.invoice-container{border:1px solid #e0e0e0;border-radius:4px;margin-bottom:12px;background-color:#fff;overflow:hidden;box-shadow:0 1px 2px #0000000d}.invoice-header-button{width:100%;display:flex;justify-content:space-between;align-items:center;padding:12px 15px;background-color:#f5f5f5;border:none;cursor:pointer;transition:background-color .2s ease;text-align:left;background:#f5f7fa}.invoice-header-button:hover{background:#f5f7fa}.invoice-header-left{display:flex;align-items:center;gap:8px}.invoice-header-right{display:flex;align-items:center;gap:12px}.invoice-label{color:#2b303b;font-size:14px;font-weight:600}.invoice-remove-separator{color:#cacfd8;font-size:14px;font-weight:600}.invoice-caret-icon{color:#2b303b;font-size:20px}.invoice-amount-label{color:#aaa;font-size:14px;margin-right:8px}.invoice-total-display{display:flex;align-items:center;gap:6px}.invoice-total-label{color:#2b303b;font-size:14px;font-weight:500}.invoice-total-value{color:#2b303b;font-size:16px;font-weight:600;min-width:60px}.line-items-section{padding:15px;display:flex;flex-direction:column;background-color:#fff}.line-items-label{color:#2b303b;font-size:14px;margin-bottom:12px;font-weight:600}.line-item-row-wrapper{margin-bottom:12px}.line-item-row{display:flex;gap:10px;align-items:center}.line-item-description-wrapper{flex:1;display:flex;flex-direction:column}.line-item-description{flex:1;padding:8px 12px;background-color:#fff;border:1px solid #e0e0e0;border-radius:4px;color:#2b303b;font-size:14px;margin-bottom:0;transition:all .2s ease-in-out}.line-item-description:focus{outline:none;border-color:#478c2d;box-shadow:0 0 0 2px #478c2d1a}.line-item-description.error{border-color:#f44;border-width:2px}.line-item-description.error:focus{border-color:#f44}.line-item-description::placeholder{color:#717784}.field-error-message{color:#ff6b6b;font-size:12px;margin-top:4px;margin-left:2px}.line-item-amount-wrapper{position:relative;display:flex;align-items:flex-start;width:160px;flex-shrink:0}.line-item-amount-prefix{position:absolute;left:12px;top:50%;transform:translateY(-50%);color:#2b303b;font-weight:500;pointer-events:none;font-size:14px;z-index:1}.line-item-amount{width:100%;padding:8px 12px 8px 28px;background-color:#fff;border:1px solid #e0e0e0;border-radius:4px;color:#2b303b;font-size:14px;text-align:right;margin-bottom:0;transition:all .2s ease-in-out}.line-item-amount:focus{outline:none;border-color:#478c2d;box-shadow:0 0 0 2px #478c2d1a}.line-item-amount::placeholder{color:#717784;text-align:right}.line-item-amount::-webkit-inner-spin-button,.line-item-amount::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.line-item-amount{-moz-appearance:textfield}.line-item-remove-btn{color:#d02533;font-size:18px;font-weight:600;cursor:pointer}.line-item-trash-icon{font-size:18px;color:#f44}.line-item-remove-btn:hover:not(:disabled){background-color:#fff5f5;border-color:#f44}.line-item-remove-btn:hover:not(:disabled) .line-item-trash-icon{color:#f66}.line-item-remove-btn:disabled{opacity:.3;cursor:not-allowed}.line-item-remove-btn:disabled .line-item-trash-icon{color:#ccc}.line-item-add-btn{padding:0;border:none;background-color:transparent;color:#478c2d;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s;margin-top:8px;align-self:flex-end;text-decoration:none;text-decoration:underline}.line-item-add-btn:hover{color:#3b7923;text-decoration:underline}.line-item-add-btn:active{transform:scale(.98)}.invoice-row{display:flex;align-items:center;gap:10px;width:100%;padding-top:10px;padding-bottom:5px}.invoice-reference{flex:2;min-width:200px;height:32px;margin-bottom:0}.invoice-amount-wrapper{flex:1;min-width:120px;position:relative;display:flex;align-items:center;height:32px}.invoice-amount{width:100%;padding-right:30px;height:32px;margin-bottom:0}.invoice-amount-suffix{position:absolute;right:10px;color:#f0f0f0;font-weight:500;pointer-events:none;font-size:14px}.invoice-remove-link{padding:0;border:none;background-color:transparent;color:#d02533;font-size:14px;font-weight:600;cursor:pointer;text-decoration:none;transition:all .2s;flex-shrink:0;text-transform:capitalize}.invoice-remove-link:hover{color:#f66;text-decoration:underline}.invoice-remove-link:active{color:#c00}.add-invoice-row{display:flex;justify-content:flex-end}.invoice-add-btn-full{padding:0;border:none;background-color:transparent;color:#478c2d;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s;display:flex;align-items:center;gap:6px;text-decoration:none}.invoice-add-btn-full:hover{color:#3b7923;text-decoration:underline}.invoice-add-btn-full:active{transform:scale(.98)}.invoice-amount::-webkit-inner-spin-button,.invoice-amount::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.invoice-amount{-moz-appearance:textfield}@media (max-width: 768px){.invoice-container{padding:12px}.invoice-header{flex-direction:column;align-items:flex-start;gap:12px}.invoice-header-right{width:100%;justify-content:space-between}.invoice-amount-wrapper{flex:1}.line-item-row{flex-wrap:wrap;gap:8px}.line-item-description-wrapper{width:100%;min-width:100%}.line-item-description{width:100%}.line-item-amount-wrapper{flex:1;min-width:120px}.line-item-remove-btn{margin-top:0}.invoice-row{flex-wrap:wrap;gap:8px}.invoice-reference{min-width:100%;width:100%;flex:none}.invoice-remove-btn{margin-left:auto}}.contractor-form-buttons{display:flex;gap:10px;margin-top:20px}@media (max-width: 480px){.contractor-form-buttons{flex-direction:column-reverse;gap:12px}.contractor-form-buttons button{width:100%}}.notification-header-responsive{padding:10px 12px!important}.notification-label-responsive{font-size:13px!important}.notification-content-responsive{padding:12px!important}.notification-options-responsive{gap:12px!important}.notification-description-responsive{font-size:11px!important}@media (max-width: 768px){.notification-header-responsive{padding:8px 10px!important}.notification-label-responsive{font-size:12px!important;letter-spacing:.5px!important}.notification-content-responsive{padding:10px!important}.notification-options-responsive{gap:0px!important;flex-direction:column}.notification-description-responsive{font-size:11px!important;margin-top:6px!important}}@media (max-width: 480px){.notification-header-responsive{padding:8px 10px!important}.notification-label-responsive{font-size:11px!important;letter-spacing:.5px!important}.notification-content-responsive{padding:8px!important}.notification-options-responsive{gap:8px!important;flex-direction:column}.notification-description-responsive{font-size:10px!important;margin-top:4px!important}}.job-cards-page,.job-cards-page *{--global-cyan-override: transparent}.job-cards-page button{background:none;border:none;box-shadow:none;text-shadow:none;text-transform:none;letter-spacing:normal;border-radius:0;padding:0}.job-cards-page button:hover{box-shadow:none!important;transform:none}.job-cards-page input:focus,.job-cards-page textarea:focus,.job-cards-page select:focus{outline:none!important}.job-cards-page h1,.job-cards-page h2,.job-cards-page h3{text-shadow:none;text-transform:none}.job-cards-page .MuiOutlinedInput-root.Mui-focused .MuiOutlinedInput-notchedOutline{border-color:var(--tf-green)!important;box-shadow:none!important}.job-cards-page .MuiOutlinedInput-root:hover .MuiOutlinedInput-notchedOutline{border-color:#3d4f5940!important}.job-cards-page{--tf-slate-blue: #3d4f59;--tf-slate-blue-light: #4a5f6b;--tf-slate-blue-dark: #2e3d45;--tf-green: #60bb46;--tf-green-light: #7acc5f;--tf-green-dark: #4ea038;--tf-green-pale: #e8f5e4;--tf-cta: #e86a33;--tf-cta-dark: #d45a25;--tf-charcoal: #1a1f22;--tf-charcoal-light: #252b2f;--tf-slate: #3d4f59;--tf-stone: #5c6970;--tf-mist: #8b9499;--tf-cloud: #c4cbcf;--tf-frost: #e8ebed;--tf-snow: #f5f7f8;--tf-white: #ffffff;--tf-text-primary: #1a1f22;--tf-text-secondary: #3d4f59;--tf-text-muted: #5c6970;--font-display: "General Sans", -apple-system, BlinkMacSystemFont, sans-serif;--font-body: "Satoshi", -apple-system, BlinkMacSystemFont, sans-serif;--radius-sm: 4px;--radius-md: 8px;--radius-lg: 12px;--radius-xl: 16px;--radius-2xl: 24px;--radius-full: 9999px;--shadow-sm: 0 1px 2px rgba(61, 79, 89, .08);--shadow-md: 0 4px 12px rgba(61, 79, 89, .12);--shadow-lg: 0 8px 24px rgba(61, 79, 89, .16);--ease-out: cubic-bezier(.16, 1, .3, 1);--duration-fast: .15s;--duration-normal: .3s}.job-cards-header{padding:32px 32px 24px;background:linear-gradient(180deg,var(--tf-snow) 0%,var(--tf-white) 100%);border-bottom:1px solid rgba(61,79,89,.08);position:relative}.job-cards-header:before{content:"";position:absolute;bottom:0;left:50%;transform:translate(-50%);width:100%;max-width:200px;height:1px;background:linear-gradient(90deg,transparent,var(--tf-green),transparent);opacity:.5}.job-cards-header-title{font-family:var(--font-display);font-size:1.75rem;font-weight:600;color:var(--tf-charcoal);letter-spacing:.01em;margin-bottom:8px}.job-cards-header-subtitle{font-family:var(--font-body);font-size:1rem;color:var(--tf-text-muted);line-height:1.6}.performance-tabs-container{background:#f5f5f5;border:none;padding:0 4px}.emily-tabs-container .emily-tab{font-family:var(--font-body);background:transparent;border:none;padding:12px 16px;color:#666;font-weight:500;font-size:.9375rem;text-transform:none;letter-spacing:.01em;box-shadow:none;display:flex;align-items:center;justify-content:center;gap:8px;cursor:pointer;transition:all var(--duration-normal) var(--ease-out);position:relative;border-radius:6px;border-bottom:2px solid transparent}.emily-tabs-container .emily-tab:hover{color:var(--tf-slate-blue);background:#3d4f590a;box-shadow:none;border-color:transparent}.emily-tabs-container .emily-tab.active:hover{color:var(--tf-green-dark);background:var(--tf-white)}.emily-tabs-container .emily-tab .tab-count{display:inline-flex;align-items:center;justify-content:center;min-width:22px;height:22px;padding:0 6px;font-size:.75rem;font-weight:600;background:#3d4f591a;color:var(--tf-text-muted);border-radius:var(--radius-full);margin-left:4px}.job-cards-table td{font-family:var(--font-body);font-size:.875rem;color:var(--tf-text-secondary);padding:14px 12px;border-bottom:1px solid rgba(61,79,89,.06);vertical-align:middle}.job-cards-table td:first-child{padding-left:20px}.job-cards-table td:last-child{padding-right:20px;text-align:center}.job-cards-table td.location-cell{font-weight:500;color:var(--tf-text-primary)}.job-cards-table td.client-cell{color:var(--tf-text-primary)}.job-status-chip{display:inline-flex;align-items:center;padding:6px 12px;font-family:var(--font-body);font-size:.75rem;font-weight:600;border-radius:var(--radius-full);white-space:nowrap}.job-status-chip.status-progress{background:var(--tf-green-pale);color:var(--tf-green-dark)}.job-status-chip.status-today{background:#fff3e0;color:#e65100}.job-status-chip.status-upcoming{background:#fff8e1;color:#f57c00}.job-status-chip.status-overdue{background:#ffebee;color:#c62828}.job-status-chip.status-neutral{background:var(--tf-frost);color:var(--tf-text-muted)}.invoice-link{font-family:var(--font-body);font-size:.875rem;font-weight:500;color:var(--tf-green);text-decoration:none;transition:color var(--duration-fast);margin-right:8px}.invoice-link:hover{color:var(--tf-green-dark);text-decoration:underline}.job-action-button{display:inline-flex;align-items:center;justify-content:center;width:36px;height:36px;background:transparent;border:none;border-radius:var(--radius-md);color:var(--tf-text-muted);cursor:pointer;transition:all var(--duration-fast)}.job-action-button:hover{background:var(--tf-frost);color:var(--tf-text-secondary)}.job-action-button:active{background:var(--tf-cloud)}.job-expand-button{display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;background:transparent;border:none;border-radius:var(--radius-md);color:var(--tf-text-muted);cursor:pointer;transition:all var(--duration-fast)}.job-expand-button:hover{background:#60bb461a;color:var(--tf-green)}.job-expanded-content{background:linear-gradient(180deg,var(--tf-snow) 0%,var(--tf-frost) 100%);padding:24px 32px;border-bottom:1px solid rgba(61,79,89,.1)}.job-details-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:24px;margin-bottom:24px}.job-detail-section{background:var(--tf-white);padding:20px;border-radius:var(--radius-lg);border:1px solid rgba(61,79,89,.08)}.job-detail-label{font-family:var(--font-body);font-size:.75rem;font-weight:600;color:var(--tf-text-muted);text-transform:uppercase;letter-spacing:.08em;margin-bottom:8px}.job-detail-value{font-family:var(--font-body);font-size:.9375rem;color:var(--tf-text-primary);line-height:1.6}.job-files-grid{display:flex;flex-wrap:wrap;gap:12px}.job-file-card{display:flex;align-items:center;gap:12px;padding:12px 16px;background:var(--tf-white);border:1px solid rgba(61,79,89,.1);border-radius:var(--radius-lg);text-decoration:none;min-width:200px;max-width:280px;transition:all var(--duration-normal) var(--ease-out)}.job-file-card:hover{border-color:var(--tf-green);box-shadow:var(--shadow-md);transform:translateY(-2px)}.job-file-icon{display:flex;align-items:center;justify-content:center;width:40px;height:40px;background:var(--tf-frost);border-radius:var(--radius-md);color:var(--tf-text-muted);flex-shrink:0}.job-file-info{flex:1;min-width:0}.job-file-name{font-family:var(--font-body);font-size:.875rem;font-weight:500;color:var(--tf-text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.job-file-size{font-family:var(--font-body);font-size:.75rem;color:var(--tf-text-muted);margin-top:2px}.job-empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:80px 24px;text-align:center}.job-empty-icon{display:flex;align-items:center;justify-content:center;width:80px;height:80px;background:var(--tf-frost);border-radius:var(--radius-2xl);color:var(--tf-mist);margin-bottom:24px}.job-empty-title{font-family:var(--font-display);font-size:1.25rem;font-weight:600;color:var(--tf-text-secondary);margin-bottom:8px}.job-empty-description{font-family:var(--font-body);font-size:.9375rem;color:var(--tf-text-muted);margin-bottom:24px;max-width:400px}.job-empty-cta{display:inline-flex;align-items:center;gap:8px;padding:14px 28px;font-family:var(--font-body);font-size:.9375rem;font-weight:600;color:var(--tf-white);background:var(--tf-cta);border:none;border-radius:var(--radius-full);cursor:pointer;transition:all var(--duration-normal) var(--ease-out);box-shadow:0 4px 20px #e86a3359}.job-empty-cta:hover{background:var(--tf-cta-dark);transform:translateY(-2px);box-shadow:0 8px 30px #e86a3366}.job-empty-cta svg{transition:transform var(--duration-normal) var(--ease-out)}.job-empty-cta:hover svg{transform:translate(4px)}.job-loading-state{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:80px 24px;text-align:center}.job-loading-spinner{width:48px;height:48px;border:3px solid var(--tf-frost);border-top-color:var(--tf-green);border-radius:50%;animation:spin 1s linear infinite;margin-bottom:16px}.job-loading-text{font-family:var(--font-body);font-size:.9375rem;color:var(--tf-text-muted)}.job-error-state{display:flex;align-items:center;gap:12px;padding:16px 20px;background:#ffebee;border:1px solid #ffcdd2;border-radius:var(--radius-lg);margin-bottom:24px}.job-error-icon{color:#c62828;flex-shrink:0}.job-error-message{font-family:var(--font-body);font-size:.875rem;color:#c62828}.job-action-menu{background:var(--tf-white);border:1px solid rgba(61,79,89,.1);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);min-width:200px;overflow:hidden}.job-action-menu-item{display:flex;align-items:center;gap:12px;padding:12px 16px;font-family:var(--font-body);font-size:.875rem;color:var(--tf-text-primary);background:transparent;border:none;width:100%;text-align:left;cursor:pointer;transition:background-color var(--duration-fast)}.job-action-menu-item:hover{background:var(--tf-frost)}.job-action-menu-item.destructive{color:#c62828;border-top:1px solid rgba(61,79,89,.08);margin-top:8px;padding-top:16px}.job-action-menu-item.destructive:hover{background:#ffebee}.job-action-menu-item svg{width:18px;height:18px;flex-shrink:0}.job-pagination{display:flex;justify-content:center;align-items:center;gap:8px;margin-top:32px;padding:16px 0}.job-pagination-button{display:inline-flex;align-items:center;justify-content:center;min-width:40px;height:40px;padding:0 12px;font-family:var(--font-body);font-size:.875rem;font-weight:500;color:var(--tf-text-secondary);background:var(--tf-white);border:1px solid rgba(61,79,89,.15);border-radius:var(--radius-md);cursor:pointer;transition:all var(--duration-fast)}.job-pagination-button:hover{border-color:var(--tf-green);color:var(--tf-green)}.job-pagination-button.active{background:var(--tf-green);border-color:var(--tf-green);color:var(--tf-white)}.job-pagination-button:disabled{opacity:.5;cursor:not-allowed}.address-dropdown{position:absolute;top:100%;left:0;right:0;background:var(--tf-white);border:1px solid rgba(61,79,89,.15);border-top:none;border-radius:0 0 var(--radius-lg) var(--radius-lg);max-height:300px;overflow-y:auto;z-index:1000;box-shadow:var(--shadow-md)}.address-dropdown-item{padding:12px 16px;font-family:var(--font-body);font-size:.875rem;color:var(--tf-text-primary);cursor:pointer;border-bottom:1px solid rgba(61,79,89,.06);transition:background-color var(--duration-fast)}.address-dropdown-item:last-child{border-bottom:none}.address-dropdown-item:hover{background:var(--tf-frost)}.mobile-tab-dropdown-container{position:relative;margin:0;padding:0;background:var(--tf-white);border-bottom:1px solid rgba(61,79,89,.1)}.mobile-tab-dropdown-trigger{display:flex;align-items:center;gap:12px;width:100%;padding:16px 20px;background:var(--tf-white);border:none;border-radius:0;cursor:pointer;transition:all var(--duration-normal) var(--ease-out);font-family:var(--font-body)}.mobile-tab-dropdown-trigger:hover,.mobile-tab-dropdown-trigger.open{background:var(--tf-snow)}.mobile-tab-dropdown-icon{display:flex;align-items:center;justify-content:center;width:40px;height:40px;background:linear-gradient(135deg,var(--tf-slate-blue) 0%,var(--tf-slate-blue-dark) 100%);border-radius:var(--radius-md);color:var(--tf-white);flex-shrink:0}.mobile-tab-dropdown-icon svg,.mobile-tab-dropdown-icon .MuiSvgIcon-root{font-size:20px!important;color:var(--tf-white)!important}.mobile-tab-dropdown-label{flex:1;text-align:left;font-size:1.0625rem;font-weight:600;color:var(--tf-text-primary);letter-spacing:-.01em}.mobile-tab-dropdown-chevron{color:var(--tf-mist);font-size:24px!important;transition:transform var(--duration-normal) var(--ease-out)}.mobile-tab-dropdown-chevron.rotated{transform:rotate(180deg)}.mobile-tab-dropdown-backdrop{position:fixed;top:0;left:0;right:0;bottom:0;background:#1a1f2280;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);z-index:999;animation:fadeIn .2s var(--ease-out)}.mobile-tab-dropdown-menu{position:absolute;top:100%;left:0;right:0;background:var(--tf-snow);border:none;border-radius:0;box-shadow:0 12px 32px #3d4f5933;z-index:1000;overflow:hidden;animation:dropdownSlide .25s var(--ease-out)}@keyframes dropdownSlide{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}.mobile-tab-dropdown-item{display:flex;align-items:center;gap:14px;width:100%;padding:20px;background:var(--tf-white);border:none;border-bottom:1px solid rgba(61,79,89,.08);cursor:pointer;transition:all var(--duration-fast);font-family:var(--font-body);margin:4px 0}.mobile-tab-dropdown-item:last-child{border-bottom:none;margin-bottom:16px;padding-bottom:22px}.mobile-tab-dropdown-item:hover{background:var(--tf-white)}.mobile-tab-dropdown-item:active{background:var(--tf-frost);transform:scale(.99)}.mobile-tab-dropdown-item.active{background:var(--tf-white);border-left:4px solid var(--tf-green);padding-left:10px;padding-top:10px;padding-bottom:10px}.mobile-tab-dropdown-item.active:hover{background:var(--tf-white)}.mobile-tab-dropdown-item-icon{display:flex;align-items:center;justify-content:center;width:40px;height:40px;background:var(--tf-frost);border-radius:var(--radius-lg);color:var(--tf-text-muted);flex-shrink:0;transition:all var(--duration-fast)}.mobile-tab-dropdown-item-icon svg,.mobile-tab-dropdown-item-icon .MuiSvgIcon-root{font-size:20px!important;color:inherit!important}.mobile-tab-dropdown-item.active .mobile-tab-dropdown-item-icon{background:linear-gradient(135deg,var(--tf-green) 0%,var(--tf-green-dark) 100%);color:var(--tf-white);box-shadow:0 4px 12px #60bb464d}.mobile-tab-dropdown-item-label{flex:1;text-align:left;font-size:1rem;font-weight:500;color:var(--tf-text-secondary);transition:color var(--duration-fast)}.mobile-tab-dropdown-item.active .mobile-tab-dropdown-item-label{font-weight:600;color:var(--tf-text-primary)}.mobile-tab-dropdown-item-check{display:flex;align-items:center;justify-content:center;width:28px;height:28px;background:var(--tf-green-pale);border-radius:var(--radius-full);color:var(--tf-green)}.mobile-tab-dropdown-item-check svg,.mobile-tab-dropdown-item-check .MuiSvgIcon-root{font-size:16px!important}@keyframes cardSlideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes statusPulse{0%,to{opacity:1}50%{opacity:.7}}@keyframes expandContent{0%{opacity:0;max-height:0}to{opacity:1;max-height:1000px}}@media (max-width: 1024px){.job-cards-table th:nth-child(5),.job-cards-table td:nth-child(5),.job-cards-table th:nth-child(6),.job-cards-table td:nth-child(6),.job-cards-table th:nth-child(7),.job-cards-table td:nth-child(7),.job-cards-table th:nth-child(8),.job-cards-table td:nth-child(8){display:none}}@media (max-width: 768px){.job-cards-header{padding:20px 16px 16px;background:linear-gradient(135deg,var(--tf-snow) 0%,var(--tf-white) 100%)}.job-cards-header:before{display:none}.job-cards-header-title{font-size:1.625rem;letter-spacing:-.01em}.job-cards-header-subtitle{font-size:.875rem;opacity:.85}.emily-tabs-container{display:none}.job-cards-content{padding:16px;background:var(--tf-snow);min-height:calc(100vh - 180px)}.job-cards-content>.MuiBox-root:first-child{margin-bottom:16px}.job-cards-page .MuiOutlinedInput-root.Mui-focused .MuiOutlinedInput-notchedOutline{border-color:#3d4f5940!important;box-shadow:none!important}.job-cards-search:focus{border-color:#3d4f5940;box-shadow:none}.mobile-create-job-button{width:100%!important;margin-bottom:16px!important;padding:14px 24px!important;font-family:var(--font-body)!important;font-size:.9375rem!important;font-weight:600!important;color:var(--tf-white)!important;background:#478c2d!important;border:none!important;border-radius:var(--radius-full)!important;box-shadow:0 4px 20px #478c2d59!important;text-transform:none!important;letter-spacing:normal!important}.mobile-create-job-button:hover{background:#3b7923!important;box-shadow:0 6px 24px #478c2d66!important}.mobile-create-job-button:active{transform:scale(.98)}.job-cards-table-container{background:transparent;border:none;box-shadow:none;border-radius:0;overflow:visible}.job-cards-table-container table{display:block}.job-cards-table-container thead{display:none!important}.job-cards-table-container tbody{display:flex;flex-direction:column;gap:12px}.job-cards-table-container tbody>tr{display:block!important;background:var(--tf-white);border-radius:var(--radius-xl);box-shadow:0 2px 8px #3d4f5914,0 1px 2px #3d4f590a;border:1px solid rgba(61,79,89,.06);overflow:hidden;transition:all var(--duration-normal) var(--ease-out);animation:cardSlideUp .4s var(--ease-out) backwards;position:relative}.job-cards-table-container tbody>tr:nth-child(1){animation-delay:.02s}.job-cards-table-container tbody>tr:nth-child(2){animation-delay:.04s}.job-cards-table-container tbody>tr:nth-child(3){animation-delay:.06s}.job-cards-table-container tbody>tr:nth-child(4){animation-delay:.08s}.job-cards-table-container tbody>tr:nth-child(5){animation-delay:.1s}.job-cards-table-container tbody>tr:nth-child(6){animation-delay:.12s}.job-cards-table-container tbody>tr:nth-child(7){animation-delay:.14s}.job-cards-table-container tbody>tr:nth-child(8){animation-delay:.16s}.job-cards-table-container tbody>tr:nth-child(9){animation-delay:.18s}.job-cards-table-container tbody>tr:nth-child(10){animation-delay:.2s}.job-cards-table-container tbody>tr:active{transform:scale(.98)}.job-cards-table-container tbody>tr[style*=E8F5E4]{border-left:4px solid var(--tf-green);box-shadow:0 4px 16px #60bb4633,0 2px 4px #60bb461a}.job-cards-table-container tbody>tr>td{display:block!important;padding:0!important;border:none!important;width:100%!important;text-align:left!important}.job-cards-table-container tbody>tr>td:first-child{display:none!important}.job-cards-table-container tbody>tr>td:last-child{position:absolute;top:14px;right:12px;width:auto!important;z-index:10}.job-cards-table-container tbody>tr>td:nth-child(2){padding:16px 80px 4px 16px!important;font-family:var(--font-display)!important;font-size:1rem!important;font-weight:600!important;color:var(--tf-text-primary)!important;line-height:1.3}.job-cards-table-container tbody>tr>td:nth-child(3){padding:0 16px 12px!important;font-size:.8125rem!important;color:var(--tf-text-muted)!important;font-weight:500!important}.job-cards-table-container tbody>tr>td:nth-child(4){display:flex!important;justify-content:space-between;align-items:center;padding:10px 16px!important;background:var(--tf-snow);border-top:1px solid rgba(61,79,89,.06)!important;font-size:.8125rem!important;color:var(--tf-text-secondary)!important}.job-cards-table-container tbody>tr>td:nth-child(4):before{content:"Dates";font-size:.6875rem;font-weight:600;color:var(--tf-mist);text-transform:uppercase;letter-spacing:.08em}.job-cards-table-container tbody>tr>td:nth-child(5){display:none!important}.job-cards-table-container tbody>tr>td:nth-child(6){display:none!important}.job-cards-table-container tbody>tr>td:nth-child(7){display:none!important}.job-cards-table-container tbody>tr>td:nth-child(8){display:none!important}.job-cards-table-container tbody>tr>td:nth-child(9){display:flex!important;justify-content:space-between;align-items:center;padding:12px 16px!important;background:linear-gradient(135deg,var(--tf-slate-blue) 0%,var(--tf-slate-blue-dark) 100%);border-top:none!important;position:relative}.job-cards-table-container tbody>tr>td:nth-child(9):before{content:"Starting in";font-size:.6875rem;font-weight:600;color:#fff9;text-transform:uppercase;letter-spacing:.08em;white-space:nowrap}.job-cards-table-container tbody>tr>td:first-child .job-expand-button{display:none}.job-cards-table-container tbody>tr>td:nth-child(9) .MuiChip-root,.job-cards-table-container tbody>tr>td:nth-child(9) .job-status-chip{font-size:.75rem!important;height:26px!important;padding:0 10px!important;font-weight:600!important;border-radius:var(--radius-full)!important}.job-cards-table-container tbody>tr>td:nth-child(9) .status-progress{background:#60bb46e6!important;color:var(--tf-white)!important}.job-cards-table-container tbody>tr>td:nth-child(9) .status-today{background:#ff9800e6!important;color:var(--tf-white)!important;animation:statusPulse 2s ease-in-out infinite}.job-cards-table-container tbody>tr>td:nth-child(9) .status-upcoming{background:#ffc107e6!important;color:var(--tf-charcoal)!important}.job-cards-table-container tbody>tr>td:nth-child(9) .status-overdue{background:#f44336e6!important;color:var(--tf-white)!important}.job-cards-table-container tbody>tr>td:nth-child(9) .status-neutral{background:#fff3!important;color:var(--tf-white)!important}.mobile-status-expand-button{min-width:32px!important;min-height:32px!important;padding:6px!important;background:#ffffff26!important;border-radius:8px!important;color:#fff!important;margin-left:12px}.mobile-status-expand-button:hover{background:#ffffff40!important}.mobile-status-expand-button:active{background:#ffffff59!important;transform:scale(.95)}.job-cards-table-container .job-expand-button{display:none!important}.job-cards-table-container .job-action-button{width:28px;height:28px}.job-cards-table-container tbody>tr+tr:has(.MuiCollapse-root){margin-top:-12px;background:transparent!important;border:none!important;box-shadow:none!important;animation:none!important}.job-cards-table-container tbody>tr+tr>td{padding:0!important}.job-expanded-content{margin:0 0 12px;padding:16px;background:var(--tf-white);border-radius:0 0 var(--radius-xl) var(--radius-xl);border:1px solid rgba(61,79,89,.06);border-top:none;box-shadow:0 4px 12px #3d4f5914}.job-details-grid{grid-template-columns:1fr;gap:12px;margin-bottom:16px}.job-detail-section{padding:14px;border-radius:var(--radius-lg);background:var(--tf-snow);border:1px solid rgba(61,79,89,.04)}.job-detail-label{font-size:.6875rem;margin-bottom:6px}.job-detail-value{font-size:.875rem;line-height:1.5}.job-files-grid{flex-direction:column;gap:8px}.job-file-card{max-width:100%;padding:10px 14px;border-radius:var(--radius-lg)}.job-file-icon{width:36px;height:36px;border-radius:var(--radius-md)}.job-file-name{font-size:.8125rem}.job-file-size{font-size:.6875rem}.job-empty-state{padding:48px 20px;background:var(--tf-white);border-radius:var(--radius-xl);box-shadow:0 2px 8px #3d4f5914}.job-empty-icon{width:72px;height:72px;margin-bottom:20px;border-radius:var(--radius-2xl);background:linear-gradient(135deg,var(--tf-frost) 0%,var(--tf-cloud) 100%)}.job-empty-icon svg,.job-empty-icon .MuiSvgIcon-root{font-size:32px!important;color:var(--tf-mist)!important}.job-empty-title{font-size:1.125rem;margin-bottom:6px}.job-empty-description{font-size:.875rem;margin-bottom:20px;max-width:280px}.job-empty-cta{width:100%;max-width:280px;justify-content:center;padding:14px 24px;font-size:.9375rem}.job-loading-state{padding:48px 20px;background:var(--tf-white);border-radius:var(--radius-xl);box-shadow:0 2px 8px #3d4f5914}.job-loading-state .MuiCircularProgress-root{width:40px!important;height:40px!important}.job-loading-text{font-size:.875rem;margin-top:12px}.job-pagination{margin-top:20px;padding:12px 0}.job-pagination .MuiPaginationItem-root{min-width:36px;height:36px;font-size:.8125rem;border-radius:var(--radius-md)}.job-error-state{padding:14px 16px;border-radius:var(--radius-lg);margin-bottom:16px}.job-error-message{font-size:.8125rem}.address-dropdown{max-height:240px;border-radius:0 0 var(--radius-lg) var(--radius-lg)}.address-dropdown-item{padding:14px 16px;font-size:.875rem}}@media (max-width: 480px){.job-cards-header{padding:16px 12px 12px}.job-cards-header-title{font-size:1.375rem}.job-cards-header-subtitle{font-size:.8125rem}.mobile-tab-dropdown-container{padding:10px 12px}.mobile-tab-dropdown-trigger{padding:12px 14px}.mobile-tab-dropdown-icon{width:32px;height:32px}.mobile-tab-dropdown-icon svg,.mobile-tab-dropdown-icon .MuiSvgIcon-root{font-size:16px!important}.mobile-tab-dropdown-label{font-size:.9375rem}.mobile-tab-dropdown-menu{left:12px;right:12px;border-radius:var(--radius-lg)}.mobile-tab-dropdown-item{padding:18px 16px;gap:12px;margin:3px 0}.mobile-tab-dropdown-item:first-child{margin-top:12px}.mobile-tab-dropdown-item:last-child{margin-bottom:12px;padding-bottom:20px}.mobile-tab-dropdown-item-icon{width:36px;height:36px}.mobile-tab-dropdown-item-label{font-size:.875rem}.job-cards-content{padding:12px}.job-cards-table-container tbody>tr{border-radius:var(--radius-lg)}.job-cards-table-container tbody>tr>td:nth-child(2){padding:14px 72px 4px 14px!important;font-size:.9375rem!important}.job-cards-table-container tbody>tr>td:nth-child(3){padding:0 14px 10px!important;font-size:.75rem!important}.job-cards-table-container tbody>tr>td:nth-child(4),.job-cards-table-container tbody>tr>td:nth-child(7),.job-cards-table-container tbody>tr>td:nth-child(8){padding:8px 14px!important;font-size:.75rem!important}.job-cards-table-container tbody>tr>td:nth-child(4):before,.job-cards-table-container tbody>tr>td:nth-child(7):before,.job-cards-table-container tbody>tr>td:nth-child(8):before,.job-cards-table-container tbody>tr>td:nth-child(9):before{font-size:.625rem}.job-cards-table-container tbody>tr>td:nth-child(9){padding:10px 14px!important}.job-cards-table-container tbody>tr>td:first-child{top:14px;right:46px}.job-cards-table-container tbody>tr>td:last-child{top:14px;right:10px}.job-cards-table-container .job-expand-button,.job-cards-table-container .job-action-button{width:26px;height:26px}.job-cards-table-container .job-expand-button svg,.job-cards-table-container .job-action-button svg{font-size:18px}.job-expanded-content{padding:12px;border-radius:0 0 var(--radius-lg) var(--radius-lg)}.job-detail-section{padding:12px}.job-file-card{padding:8px 12px}.job-file-icon{width:32px;height:32px}.job-empty-state{padding:40px 16px;border-radius:var(--radius-lg)}.job-empty-icon{width:64px;height:64px}.job-empty-title{font-size:1rem}.job-empty-description{font-size:.8125rem}.job-empty-cta{padding:12px 20px;font-size:.875rem}.job-pagination .MuiPaginationItem-root{min-width:32px;height:32px;font-size:.75rem}}.address-search-input::placeholder{color:var(--tf-mist);opacity:1}.address-search-input::-webkit-input-placeholder{color:var(--tf-mist)}.address-search-input::-moz-placeholder{color:var(--tf-mist);opacity:1}.address-search-input:-ms-input-placeholder{color:var(--tf-mist)}.job-cards-page.job-cards-mobile .job-cards-table-container{background:transparent;border:none;box-shadow:none}@media (pointer: coarse){.emily-tabs-container .emily-tab{min-height:44px}.job-action-button,.job-expand-button,.job-pagination .MuiPaginationItem-root{min-width:44px;min-height:44px}}@media (max-width: 768px) and (orientation: landscape){.emily-tabs-container{padding:8px 12px}.emily-tabs-container .emily-tab{padding:8px 14px}.job-cards-content{min-height:calc(100vh - 140px)}.job-cards-table-container tbody>tr>td:nth-child(9){padding:10px 14px!important}}@supports (padding: max(0px)){.job-cards-page.job-cards-mobile .job-cards-header,.job-cards-page.job-cards-mobile .emily-tabs-container{padding-left:max(16px,env(safe-area-inset-left));padding-right:max(16px,env(safe-area-inset-right))}.job-cards-page.job-cards-mobile .job-cards-content{padding-left:max(16px,env(safe-area-inset-left));padding-right:max(16px,env(safe-area-inset-right));padding-bottom:max(16px,env(safe-area-inset-bottom))}}@media (max-width: 768px){.MuiTableContainer-root{-webkit-overflow-scrolling:touch}}@media (max-width: 768px){.MuiTable-root{min-width:600px}}.contractors-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px;gap:16px}.contractors-header h1{margin:0;white-space:nowrap}.contractors-header-button{background:linear-gradient(135deg,#00e6e6,#00b3b3);color:#1a1a1a;border:1px solid #00e6e6;padding:12px 24px;font-weight:700;font-size:14px;text-transform:uppercase;letter-spacing:1px;font-family:Rajdhani,sans-serif;cursor:pointer;transition:all .2s ease-in-out;box-shadow:0 4px 12px #00e6e64d;white-space:nowrap;flex-shrink:0}.contractors-header-button:hover{background:linear-gradient(135deg,#0ff,#0cc);box-shadow:0 6px 20px #00e6e666;transform:translateY(-1px)}@media (max-width: 480px){.contractors-header{flex-wrap:wrap}.contractors-header h1{flex:1 1 100%;margin-bottom:12px}.contractors-header-button{width:100%;text-align:center}}.contractors-table{width:100%;border-collapse:collapse;border:1px solid #3a3a3a;table-layout:auto}@media (min-width: 769px){.contractors-table{table-layout:fixed}}.contractors-table th,.contractors-table td{padding:12px 16px;text-align:left;border-bottom:1px solid #3a3a3a;border-right:1px solid #3a3a3a;overflow:hidden;text-overflow:ellipsis}.contractors-table th{font-size:.75rem;font-weight:500;color:#9ca3af;text-transform:uppercase;letter-spacing:.05em}.contractors-table td{color:#d1d5db;white-space:nowrap}@media (min-width: 769px){.contractors-table th:nth-child(1),.contractors-table td:nth-child(1){width:20%}.contractors-table th:nth-child(2),.contractors-table td:nth-child(2){width:12%}.contractors-table th:nth-child(3),.contractors-table td:nth-child(3){width:23%}.contractors-table th:nth-child(4),.contractors-table td:nth-child(4){width:18%}.contractors-table th:nth-child(5),.contractors-table td:nth-child(5){width:12%}.contractors-table th:nth-child(6),.contractors-table td:nth-child(6){width:15%}.contractors-table .actions-cell{text-align:center;padding:8px 16px}}.td-label{display:none}@media (max-width: 768px){.contractors-table{display:block;width:100%;min-width:unset}.contractors-table thead{display:none}.contractors-table tbody{display:block;width:100%}.contractors-table tr{display:block;margin-bottom:1rem;border-bottom:1px solid #3a3a3a;padding:1rem 0}.contractors-table td{display:flex;justify-content:space-between;align-items:center;padding:.5rem 1rem;border-right:none;border-bottom:none;text-align:right;white-space:normal;width:100%!important}.td-label{display:block;font-weight:500;color:#9ca3af;text-transform:uppercase;letter-spacing:.05em;font-size:.75rem}.contractors-table .actions-cell{justify-content:flex-end;padding:.5rem 1rem;width:auto}.empty-message{text-align:center!important;justify-content:center!important}}@media (max-width: 768px){.contractors-mobile-container{display:flex;flex-direction:column;gap:16px;padding:0}.contractor-card{background:#fff;border:1px solid #e0e0e0;border-radius:4px;overflow:hidden;box-shadow:none}.contractor-card-header{display:flex;justify-content:space-between;align-items:center;padding:12px 16px;background:#f5f7fa;border-bottom:1px solid #e0e0e0}.contractor-card-name{font-size:16px;font-weight:700;color:#2b303b;margin:0}.contractor-card-actions{display:flex;align-items:center;gap:4px}.contractor-card-body{padding:16px;background:#fff}.contractor-card-row{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:12px}.contractor-card-row:last-child{margin-bottom:0}.contractor-card-left{flex:1;display:flex;flex-direction:column}.contractor-card-right{flex:1;display:flex;flex-direction:column;align-items:flex-end;text-align:right}.contractor-card-label{font-size:14px;color:#2b303b;margin:0;text-transform:capitalize}.contractor-card-value,.contractor-card-email,.contractor-card-phone{font-size:14px;color:#2b303b;margin:0}.timesheets-mobile-container{display:flex;flex-direction:column;gap:16px;padding:0}.timesheet-card{background:#fff;border:1px solid #e0e0e0;border-radius:4px;overflow:hidden;box-shadow:none}.timesheet-card-header{display:flex;justify-content:space-between;align-items:center;padding:12px 16px;background:#f5f7fa;border-bottom:1px solid #e0e0e0}.timesheet-card-name{font-size:16px;font-weight:700;color:#2b303b;margin:0}.timesheet-card-actions{display:flex;align-items:center;gap:4px}.timesheet-card-body{padding:16px;background:#fff}.timesheet-card-row{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:12px}.timesheet-card-row:last-child{margin-bottom:0}.timesheet-card-left{flex:1;display:flex;flex-direction:column}.timesheet-card-right{flex:1;display:flex;flex-direction:column;align-items:flex-end;text-align:right}.timesheet-card-job,.timesheet-card-date,.timesheet-card-hours{font-size:14px;color:#717784;margin:0}.timesheet-card-notes{font-size:14px;color:#717784;margin:0;word-break:break-word;text-align:right}}.report-card{transition:box-shadow .2s ease}.report-card:hover{box-shadow:0 2px 8px #0000001a}.report-card-header{display:flex;justify-content:space-between;align-items:center;padding:12px 16px;background:#f5f7fa;border-bottom:1px solid #e0e0e0}.report-card-address{font-size:16px;font-weight:700;color:#2b303b;margin:0}.report-card-body{padding:16px;background:#fff}@media (max-width: 1024px){.report-card{margin-bottom:0}}@media (max-width: 768px){.report-card-header,.report-card-body{padding:12px}}@media print{@page{size:landscape;margin:.5in}body{background-color:#fff!important;margin:0!important;padding:0!important}*{box-sizing:border-box!important}.MuiBox-root{max-width:100%!important;overflow:visible!important}.emily-header,.emily-tab-bar,footer{display:none!important}.MuiButton-root{display:none!important}.MuiPaper-root{box-shadow:none!important;border:1px solid #000!important;background-color:#fff!important}.MuiTypography-root{color:#000!important}.MuiTableContainer-root{border:1px solid #000!important;box-shadow:none!important}.MuiTable-root{border-collapse:collapse;width:100%}.MuiTableHead-root{background-color:#f0f0f0!important}.MuiTableCell-head{color:#000!important;background-color:#f0f0f0!important;font-weight:600!important;border:1px solid #000!important;font-size:9pt!important;padding:6px 8px!important}.MuiTableCell-body{color:#000!important;background-color:#fff!important;border:1px solid #ccc!important;font-size:9pt!important;padding:6px 8px!important}.MuiTableRow-root{page-break-inside:avoid}.MuiChip-root{border:1px solid #000!important;background-color:#fff!important;color:#000!important;font-size:8pt!important}.report-card{page-break-inside:avoid;border:1px solid #000!important;background-color:#fff!important;margin-bottom:10px!important}}.job-analytics-card{transition:box-shadow .2s ease}.job-analytics-card:hover{box-shadow:0 2px 8px #0000001a}.job-analytics-card-header{display:flex;justify-content:space-between;align-items:center;padding:12px 16px;background:#f5f7fa;border-bottom:1px solid #e0e0e0}.job-analytics-card-name{font-size:16px;font-weight:700;color:#4caf50;margin:0}.job-analytics-card-body{padding:16px;background:#fff}.client-analytics-card{transition:box-shadow .2s ease}.client-analytics-card:hover{box-shadow:0 2px 8px #0000001a}.client-analytics-card-header{display:flex;justify-content:space-between;align-items:center;padding:12px 16px;background:#f5f7fa;border-bottom:1px solid #e0e0e0}.client-analytics-card-name{font-size:16px;font-weight:700;color:#2b303b;margin:0}.client-analytics-card-body{padding:16px;background:#fff}.contractor-analytics-card{transition:box-shadow .2s ease}.contractor-analytics-card:hover{box-shadow:0 2px 8px #0000001a}.contractor-analytics-card-header{display:flex;justify-content:space-between;align-items:center;padding:12px 16px;background:#f5f7fa;border-bottom:1px solid #e0e0e0}.contractor-analytics-card-name{font-size:16px;font-weight:700;color:#2b303b;margin:0}.contractor-analytics-card-body{padding:16px;background:#fff}@media (max-width: 768px){.job-analytics-card-header,.client-analytics-card-header,.contractor-analytics-card-header,.job-analytics-card-body,.client-analytics-card-body,.contractor-analytics-card-body{padding:12px}}.job-updates-page{--color-navy: #1a2852;--color-green: #478c2d;--color-bg-light: #f5f7fa;--color-border: #eaecf0;--color-text-primary: #2b303b;--color-text-secondary: #717784;--color-white: #ffffff;--font-family: "Figtree", -apple-system, BlinkMacSystemFont, sans-serif}.job-updates-page{min-height:100vh;background:var(--color-white);font-family:var(--font-family)}.job-updates-container{max-width:900px;margin:0 auto;min-height:100vh;display:flex;flex-direction:column;border-left:1px solid var(--color-border);border-right:1px solid var(--color-border)}.job-updates-logo-header{padding:14px;background:var(--color-white);border-bottom:1px solid var(--color-border);display:flex;align-items:center}.job-updates-logo-header img{height:44px;width:auto}.job-updates-address{padding:14px;background:var(--color-white);border-bottom:1px solid var(--color-border);font-size:16px;font-weight:600;color:var(--color-text-primary);line-height:1.2}.job-updates-notes{padding:14px;background:var(--color-bg-light);border-bottom:1px solid var(--color-border);display:flex;flex-direction:column;gap:4px}.job-updates-notes-label{font-size:14px;font-weight:500;color:var(--color-text-secondary);line-height:1.2}.job-updates-notes-content{font-size:14px;font-weight:500;color:var(--color-text-primary);line-height:1.4}.job-updates-error{display:flex;align-items:center;gap:12px;padding:14px;background:#fef2f2;border-bottom:1px solid #fecaca;color:#dc2626;font-size:14px}.job-updates-error svg{flex-shrink:0}.job-updates-messages{flex:1;background:var(--color-white);padding:14px 14px 20px;overflow-y:auto;display:flex;flex-direction:column;gap:20px}.job-updates-messages::-webkit-scrollbar{width:6px}.job-updates-messages::-webkit-scrollbar-track{background:var(--color-bg-light)}.job-updates-messages::-webkit-scrollbar-thumb{background:var(--color-border);border-radius:3px}.job-updates-empty{display:flex;align-items:center;justify-content:center;flex:1;min-height:200px}.job-updates-empty p{font-size:14px;color:var(--color-text-secondary);margin:0}.job-updates-date-divider{display:flex;align-items:center;justify-content:center;gap:12px;margin-bottom:16px}.job-updates-date-line{flex:1;height:1px;background:var(--color-border)}.job-updates-date-label{font-size:14px;font-weight:400;color:var(--color-text-secondary);line-height:1.3;white-space:nowrap}.job-updates-message{margin-bottom:16px}.job-updates-message:last-child{margin-bottom:0}.job-updates-message-row{display:flex;gap:6px;align-items:flex-start}.job-updates-message-row.own{justify-content:flex-end}.job-updates-message-row.other{justify-content:flex-start}.job-updates-avatar{width:34px;height:34px;border-radius:9999px;background:var(--color-navy);color:var(--color-white);display:flex;align-items:center;justify-content:center;font-size:14px;font-weight:600;line-height:1.2;flex-shrink:0}.job-updates-message-content{display:flex;flex-direction:column;gap:4px;max-width:calc(100% - 80px)}.job-updates-message-header{display:flex;align-items:center;gap:6px}.job-updates-message-header.own{justify-content:flex-end}.job-updates-message-header.other{justify-content:flex-start}.job-updates-message-author{font-size:14px;font-weight:600;color:var(--color-text-primary);line-height:1.2}.job-updates-message-time{font-size:12px;font-weight:500;color:var(--color-text-secondary);line-height:1.2}.job-updates-bubble{padding:11px 12px;font-size:14px;font-weight:400;line-height:1.3;word-wrap:break-word}.job-updates-bubble.own{background:var(--color-navy);color:var(--color-white);border-radius:8px 0 8px 8px}.job-updates-bubble.other{background:var(--color-bg-light);color:var(--color-text-secondary);border-radius:0 8px 8px}.job-updates-bubble+.job-updates-bubble{margin-top:4px}.job-updates-images{display:flex;flex-wrap:wrap;gap:8px;margin-top:4px}.job-updates-images.own{justify-content:flex-end}.job-updates-images img{max-width:200px;max-height:150px;object-fit:cover;border-radius:8px;cursor:pointer;transition:opacity .2s}.job-updates-images img:hover{opacity:.9}.job-updates-input-area{display:flex;gap:12px;align-items:center;padding:14px;background:var(--color-white);border-top:1px solid var(--color-border)}.job-updates-input-wrapper{flex:1;display:flex;align-items:center;gap:8px;background:var(--color-white);border:1px solid var(--color-border);border-radius:8px;padding:10px 12px;height:42px;box-sizing:border-box}.job-updates-input{flex:1;border:none;outline:none;font-family:var(--font-family);font-size:14px;font-weight:400;color:var(--color-text-primary);background:transparent;line-height:1;height:20px}.job-updates-input::placeholder{color:var(--color-text-secondary)}.job-updates-input:disabled{opacity:.6}.job-updates-attach-btn{display:flex;align-items:center;justify-content:center;width:18px;height:18px;padding:0;border:none;background:transparent;color:var(--color-text-secondary);cursor:pointer;transition:color .2s;flex-shrink:0}.job-updates-attach-btn:hover:not(:disabled){color:var(--color-text-primary)}.job-updates-attach-btn:disabled{opacity:.5;cursor:not-allowed}.job-updates-send-btn{display:flex;align-items:center;justify-content:center;gap:6px;padding:0 12px;height:42px;background:var(--color-green);color:var(--color-white);border:none;border-radius:8px;font-family:var(--font-family);font-size:14px;font-weight:600;line-height:1.2;cursor:pointer;transition:background-color .2s;white-space:nowrap;flex-shrink:0}.job-updates-send-btn:hover:not(:disabled){background:#3d7a26}.job-updates-send-btn:disabled{opacity:.5;cursor:not-allowed}.job-updates-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:100vh;gap:16px;font-size:14px;color:var(--color-text-secondary)}@media (max-width: 900px){.job-updates-container{border-left:none;border-right:none}}@media (max-width: 600px){.job-updates-logo-header{padding:12px}.job-updates-logo-header img{height:36px}.job-updates-address{font-size:15px;padding:12px}.job-updates-notes{padding:12px}.job-updates-messages{padding:12px 12px 16px;gap:16px}.job-updates-message-content{max-width:calc(100% - 50px)}.job-updates-bubble{padding:10px}.job-updates-input-area{padding:12px;gap:8px}.job-updates-input-wrapper{padding:8px 10px;height:40px}.job-updates-send-btn{height:40px;padding:0 10px}.job-updates-images img{max-width:150px;max-height:120px}}@media (max-width: 400px){.job-updates-avatar{width:30px;height:30px;font-size:12px}.job-updates-message-author{font-size:13px}.job-updates-message-time{font-size:11px}.job-updates-bubble{font-size:13px}}.emily-tabs-container{display:flex;flex-direction:row;flex-wrap:wrap;background:#fff;border-bottom:1px solid #e0e0e0;margin-bottom:0;padding:0;gap:4px;border-radius:0}.emily-tabs-container .emily-tab{background:transparent;border:none;padding:12px 16px;color:#666;font-weight:500;font-size:14px;text-transform:none;letter-spacing:normal;box-shadow:none;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .2s ease;position:relative;border-radius:6px;border-bottom:2px solid transparent}.emily-tabs-container .emily-tab:hover{background:transparent;box-shadow:none;border-color:transparent}.emily-tabs-container .emily-tab.active{color:#478c2d;border-bottom:2px solid #478c2d;border-radius:0}.emily-tabs-container .emily-tab.active:hover{color:#478c2d;background:#fff}.emily-tabs-container .emily-tab span{display:inline-block}.emily-tabs-container .emily-tab .tab-count{margin-left:4px}:root{--auth-slate-blue: #3D4F59;--auth-slate-blue-light: #4A5F6B;--auth-slate-blue-dark: #2E3D45;--auth-green: #60BB46;--auth-green-light: #7ACC5F;--auth-green-dark: #4EA038;--auth-green-pale: #E8F5E4;--auth-cta: #E86A33;--auth-cta-dark: #D45A25;--auth-cta-light: #F07D4A;--auth-charcoal: #1A1F22;--auth-charcoal-light: #252B2F;--auth-stone: #5C6970;--auth-mist: #8B9499;--auth-cloud: #C4CBCF;--auth-frost: #E8EBED;--auth-snow: #F5F7F8;--auth-white: #FFFFFF;--auth-font-display: "General Sans", sans-serif;--auth-font-body: "Satoshi", sans-serif;--auth-space-xs: 4px;--auth-space-sm: 8px;--auth-space-md: 16px;--auth-space-lg: 24px;--auth-space-xl: 32px;--auth-space-2xl: 48px;--auth-space-3xl: 64px;--auth-radius-sm: 4px;--auth-radius-md: 8px;--auth-radius-lg: 12px;--auth-radius-xl: 16px;--auth-radius-2xl: 24px;--auth-radius-full: 9999px;--auth-shadow-sm: 0 1px 2px rgba(61, 79, 89, .08);--auth-shadow-md: 0 4px 12px rgba(61, 79, 89, .12);--auth-shadow-lg: 0 8px 24px rgba(61, 79, 89, .16);--auth-shadow-xl: 0 16px 48px rgba(61, 79, 89, .2);--auth-shadow-glow-green: 0 0 40px rgba(96, 187, 70, .3);--auth-shadow-glow-cta: 0 0 40px rgba(232, 106, 51, .3);--auth-ease-out: cubic-bezier(.16, 1, .3, 1);--auth-ease-in-out: cubic-bezier(.65, 0, .35, 1);--auth-duration-fast: .15s;--auth-duration-normal: .3s;--auth-duration-slow: .5s}.auth-layout{min-height:100vh;display:flex;background:var(--auth-snow);font-family:var(--auth-font-body);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;position:relative;overflow:hidden}.auth-layout:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background-image:radial-gradient(circle at 20% 80%,rgba(61,79,89,.03) 0%,transparent 50%),radial-gradient(circle at 80% 20%,rgba(232,106,51,.03) 0%,transparent 50%);pointer-events:none;z-index:0}.auth-float{position:absolute;border-radius:var(--auth-radius-lg);animation:authFloat 6s ease-in-out infinite;z-index:0}.auth-float-1{top:10%;left:5%;width:100px;height:100px;background:var(--auth-green);opacity:.08;animation-delay:0s}.auth-float-2{bottom:15%;right:8%;width:60px;height:60px;background:var(--auth-cta);opacity:.12;animation-delay:2s}.auth-float-3{top:60%;right:20%;width:80px;height:80px;background:var(--auth-slate-blue);opacity:.06;animation-delay:4s}@keyframes authFloat{0%,to{transform:translateY(0) rotate(0)}50%{transform:translateY(-20px) rotate(5deg)}}.auth-container{display:flex;width:100%;max-width:1400px;margin:0 auto;position:relative;z-index:1}.auth-visual{flex:1;display:flex;flex-direction:column;justify-content:center;align-items:center;padding:var(--auth-space-3xl);background:linear-gradient(135deg,var(--auth-slate-blue) 0%,var(--auth-slate-blue-dark) 100%);position:relative;overflow:hidden}.auth-visual:before{content:"";position:absolute;top:-30%;right:-20%;width:80%;height:100%;background:radial-gradient(circle,rgba(96,187,70,.15) 0%,transparent 60%);pointer-events:none}.auth-visual-content{max-width:500px;text-align:center;position:relative;z-index:2}.auth-logo-wrapper{margin-bottom:var(--auth-space-2xl);animation:fadeInUp .6s var(--auth-ease-out) both}.auth-logo{height:80px;width:auto;filter:brightness(0) invert(1);transition:transform var(--auth-duration-normal) var(--auth-ease-out)}.auth-logo:hover{transform:scale(1.05)}.auth-visual-title{font-family:var(--auth-font-display);font-size:clamp(1.75rem,3vw,2.5rem);font-weight:600;line-height:1.2;letter-spacing:.01em;color:var(--auth-white);margin-bottom:var(--auth-space-lg);animation:fadeInUp .6s var(--auth-ease-out) .1s both}.auth-visual-subtitle{font-size:1.125rem;line-height:1.7;color:#ffffffbf;margin-bottom:var(--auth-space-xl);animation:fadeInUp .6s var(--auth-ease-out) .2s both}.auth-visual-features{list-style:none;padding:0;margin:0;text-align:left;animation:fadeInUp .6s var(--auth-ease-out) .3s both}.auth-visual-feature{display:flex;align-items:center;gap:var(--auth-space-md);padding:var(--auth-space-md) 0;font-size:.9375rem;color:#ffffffd9}.auth-visual-feature-icon{flex-shrink:0;width:24px;height:24px;display:flex;align-items:center;justify-content:center;background:#60bb4633;border-radius:var(--auth-radius-md);color:var(--auth-green)}.auth-form-side{flex:1;display:flex;flex-direction:column;justify-content:center;padding:var(--auth-space-3xl);background:var(--auth-white)}.auth-form-container{max-width:440px;width:100%;margin:0 auto}.auth-form-header{margin-bottom:var(--auth-space-2xl);text-align:center}.auth-badge{display:inline-flex;align-items:center;gap:var(--auth-space-sm);padding:var(--auth-space-sm) var(--auth-space-md);margin-bottom:var(--auth-space-lg);font-size:.8125rem;font-weight:600;color:var(--auth-slate-blue);background:#3d4f5914;border:1px solid rgba(61,79,89,.15);border-radius:var(--auth-radius-full)}.auth-badge-dot{width:6px;height:6px;background:var(--auth-green);border-radius:50%;animation:pulse 2s ease-in-out infinite}.auth-form-title{font-family:var(--auth-font-display);font-size:clamp(1.75rem,4vw,2.25rem);font-weight:600;line-height:1.2;letter-spacing:.01em;color:var(--auth-charcoal);margin-bottom:var(--auth-space-md)}.auth-form-subtitle{font-size:1rem;line-height:1.6;color:var(--auth-stone)}.auth-form,.auth-input-group{margin-bottom:var(--auth-space-lg)}.auth-input-row{display:grid;grid-template-columns:1fr 1fr;gap:var(--auth-space-md)}.auth-input-wrapper{position:relative}.auth-input-label{display:block;font-family:var(--auth-font-body);font-size:.875rem;font-weight:600;color:var(--auth-charcoal);margin-bottom:var(--auth-space-sm)}.auth-input{width:100%;padding:var(--auth-space-md) var(--auth-space-lg);font-family:var(--auth-font-body);font-size:1rem;color:var(--auth-charcoal);background:var(--auth-white);border:2px solid var(--auth-frost);border-radius:var(--auth-radius-lg);transition:all var(--auth-duration-normal) var(--auth-ease-out);outline:none}.auth-input::placeholder{color:var(--auth-mist)}.auth-input:focus{border-color:var(--auth-slate-blue);box-shadow:0 0 0 4px #3d4f5914}.auth-input-error{border-color:#e53935}.auth-input-error:focus{box-shadow:0 0 0 4px #e5393514}.auth-input-password-wrapper{position:relative}.auth-input-password-wrapper .auth-input{padding-right:48px}.auth-password-toggle{position:absolute;right:12px;top:50%;transform:translateY(-50%);background:none;border:none;cursor:pointer;padding:var(--auth-space-xs);display:flex;align-items:center;justify-content:center;color:var(--auth-mist);transition:color var(--auth-duration-fast);border-radius:var(--auth-radius-sm)}.auth-password-toggle:hover{color:var(--auth-slate-blue)}.auth-password-toggle:focus-visible{outline:2px solid var(--auth-slate-blue);outline-offset:2px}.auth-error-message{display:flex;align-items:center;gap:var(--auth-space-xs);margin-top:var(--auth-space-sm);font-size:.8125rem;color:#e53935}.auth-alert{display:flex;align-items:flex-start;gap:var(--auth-space-md);padding:var(--auth-space-md) var(--auth-space-lg);margin-bottom:var(--auth-space-lg);border-radius:var(--auth-radius-lg);font-size:.9375rem;line-height:1.6}.auth-alert-success{background:var(--auth-green-pale);color:var(--auth-green-dark);border:1px solid rgba(96,187,70,.3)}.auth-alert-error{background:#ffebee;color:#c62828;border:1px solid rgba(229,57,53,.3)}.auth-alert-info{background:#e3f2fd;color:#1565c0;border:1px solid rgba(21,101,192,.3)}.auth-alert-icon{flex-shrink:0;margin-top:2px}.auth-button{width:100%;padding:var(--auth-space-md) var(--auth-space-xl);font-family:var(--auth-font-body);font-size:1rem;font-weight:600;color:var(--auth-white);background:var(--auth-cta);border:none;border-radius:var(--auth-radius-full);cursor:pointer;transition:all var(--auth-duration-normal) var(--auth-ease-out);box-shadow:0 4px 20px #e86a3359;display:inline-flex;align-items:center;justify-content:center;gap:var(--auth-space-sm)}.auth-button:hover:not(:disabled){background:var(--auth-cta-dark);transform:translateY(-2px);box-shadow:var(--auth-shadow-glow-cta)}.auth-button:active:not(:disabled){transform:translateY(0)}.auth-button:disabled{opacity:.6;cursor:not-allowed}.auth-button-secondary{background:transparent;color:var(--auth-slate-blue);border:2px solid var(--auth-slate-blue);box-shadow:none}.auth-button-secondary:hover:not(:disabled){background:var(--auth-slate-blue);color:var(--auth-white);box-shadow:var(--auth-shadow-md)}.auth-spinner{width:20px;height:20px;border:2px solid rgba(255,255,255,.3);border-top-color:var(--auth-white);border-radius:50%;animation:spin .6s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.auth-link{color:var(--auth-cta);font-weight:600;text-decoration:none;transition:color var(--auth-duration-fast)}.auth-link:hover{color:var(--auth-cta-dark);text-decoration:underline}.auth-form-footer{text-align:center;margin-top:var(--auth-space-lg)}.auth-form-footer-text{font-size:.9375rem;color:var(--auth-stone);margin-bottom:var(--auth-space-md)}.auth-divider{display:flex;align-items:center;gap:var(--auth-space-md);margin:var(--auth-space-xl) 0;font-size:.875rem;color:var(--auth-mist)}.auth-divider:before,.auth-divider:after{content:"";flex:1;height:1px;background:var(--auth-frost)}@media (max-width: 1024px){.auth-container{flex-direction:column}.auth-visual{min-height:300px;padding:var(--auth-space-2xl)}.auth-visual-features{display:none}.auth-form-side{padding:var(--auth-space-2xl)}}@media (max-width: 640px){.auth-visual{min-height:250px;padding:var(--auth-space-xl)}.auth-form-side{padding:var(--auth-space-xl) var(--auth-space-md)}.auth-input-row{grid-template-columns:1fr}}.auth-layout .MuiPaper-root{box-shadow:none!important;background:transparent!important}.auth-layout .MuiContainer-root{max-width:none!important;padding:0!important}:root{--tf-slate-blue: #3D4F59;--tf-slate-blue-light: #4A5F6B;--tf-slate-blue-dark: #2E3D45;--tf-slate-blue-darker: #1F2A30;--tf-green: #60BB46;--tf-green-light: #7ACC5F;--tf-green-dark: #4EA038;--tf-green-pale: #E8F5E4;--tf-cta: #E86A33;--tf-cta-dark: #D45A25;--tf-cta-light: #F07D4A;--tf-charcoal: #1A1F22;--tf-charcoal-light: #252B2F;--tf-slate: #3D4F59;--tf-stone: #5C6970;--tf-mist: #8B9499;--tf-cloud: #C4CBCF;--tf-frost: #E8EBED;--tf-snow: #F5F7F8;--tf-white: #FFFFFF;--tf-text-primary: #1A1F22;--tf-text-secondary: #3D4F59;--tf-text-muted: #5C6970;--tf-text-inverse: #F5F7F8;--tf-forest: var(--tf-slate-blue);--tf-forest-light: var(--tf-slate-blue-light);--tf-forest-dark: var(--tf-slate-blue-dark);--tf-lime: var(--tf-green);--tf-lime-dim: var(--tf-green-dark);--tf-terracotta: var(--tf-cta);--tf-terracotta-dark: var(--tf-cta-dark);--tf-terracotta-light: var(--tf-cta-light);--tf-cream: var(--tf-snow);--font-display: "General Sans", sans-serif;--font-body: "Satoshi", sans-serif;--space-xs: 4px;--space-sm: 8px;--space-md: 16px;--space-lg: 24px;--space-xl: 32px;--space-2xl: 48px;--space-3xl: 64px;--space-4xl: 96px;--space-5xl: 128px;--radius-sm: 4px;--radius-md: 8px;--radius-lg: 12px;--radius-xl: 16px;--radius-2xl: 24px;--radius-full: 9999px;--shadow-sm: 0 1px 2px rgba(61, 79, 89, .08);--shadow-md: 0 4px 12px rgba(61, 79, 89, .12);--shadow-lg: 0 8px 24px rgba(61, 79, 89, .16);--shadow-xl: 0 16px 48px rgba(61, 79, 89, .2);--shadow-glow-green: 0 0 40px rgba(96, 187, 70, .3);--shadow-glow-cta: 0 0 40px rgba(232, 106, 51, .3);--shadow-glow-lime: var(--shadow-glow-green);--shadow-glow-terracotta: var(--shadow-glow-cta);--ease-out: cubic-bezier(.16, 1, .3, 1);--ease-in-out: cubic-bezier(.65, 0, .35, 1);--duration-fast: .15s;--duration-normal: .3s;--duration-slow: .5s}.landing-page{font-family:var(--font-body);color:var(--tf-text-primary);background-color:var(--tf-cream);line-height:1.6;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;overflow-x:hidden}.landing-page *{box-sizing:border-box;margin:0;padding:0}.landing-page h1,.landing-page h2,.landing-page h3,.landing-page h4,.landing-page h5,.landing-page h6{font-family:var(--font-display);font-weight:500;line-height:1.15;letter-spacing:.01em;word-spacing:.05em}.landing-page p{font-family:var(--font-body)}.landing-page button{font-family:inherit;cursor:pointer;border:none;background:transparent;box-shadow:none;text-transform:none;letter-spacing:normal}.landing-page button:hover{box-shadow:none}.landing-page a{color:inherit;text-decoration:none}.landing-page a:visited{color:inherit}.landing-nav{position:fixed;top:0;left:0;right:0;z-index:1000;background:#faf7f2d9;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border-bottom:1px solid rgba(28,28,28,.08);transition:all var(--duration-normal) var(--ease-out)}.landing-nav.scrolled{background:#faf7f2f2;box-shadow:var(--shadow-md)}.landing-nav-container{max-width:1400px;margin:0 auto;padding:0 var(--space-lg);height:80px;display:flex;align-items:center;justify-content:space-between}.landing-logo{display:flex;align-items:center;margin-left:-8px}.nav-logo-img{height:70px;width:auto;transition:transform var(--duration-normal) var(--ease-out)}.landing-logo:hover .nav-logo-img{transform:scale(1.02)}.landing-nav-links{display:flex;align-items:center;gap:var(--space-xl)}.nav-link{position:relative;font-family:var(--font-body);font-size:.9375rem;font-weight:500;color:var(--tf-text-secondary);padding:var(--space-sm) 0;transition:color var(--duration-fast) var(--ease-out)}.nav-link:after{content:"";position:absolute;bottom:0;left:0;width:0;height:2px;background:var(--tf-lime);transition:width var(--duration-normal) var(--ease-out)}.nav-link:hover{color:var(--tf-forest)}.nav-link:hover:after{width:100%}.landing-page .nav-cta,.landing-page .nav-cta:visited{display:inline-flex;align-items:center;gap:var(--space-sm);padding:var(--space-md) var(--space-lg);font-family:var(--font-body);font-size:.9375rem;font-weight:600;color:var(--tf-white)!important;background:var(--tf-terracotta);border-radius:var(--radius-full);transition:all var(--duration-normal) var(--ease-out);box-shadow:0 4px 20px #d4644a59}.landing-page .nav-cta:hover{background:var(--tf-terracotta-dark);transform:translateY(-2px);box-shadow:var(--shadow-glow-terracotta)}.landing-page .nav-cta svg{transition:transform var(--duration-normal) var(--ease-out)}.landing-page .nav-cta:hover svg{transform:translate(4px)}.mobile-menu-btn{display:none;padding:var(--space-sm);color:var(--tf-forest)}.mobile-nav-menu{display:none;flex-direction:column;padding:var(--space-md) var(--space-lg) var(--space-lg);background:var(--tf-cream);border-top:1px solid rgba(28,28,28,.08);animation:slideDown var(--duration-normal) var(--ease-out)}@keyframes slideDown{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.mobile-nav-link{display:block;padding:var(--space-md) 0;font-size:1rem;font-weight:500;color:var(--tf-text-secondary);border-bottom:1px solid rgba(28,28,28,.06)}.landing-page .mobile-nav-cta,.landing-page .mobile-nav-cta:visited{display:block;margin-top:var(--space-md);padding:var(--space-md) var(--space-lg);font-size:1rem;font-weight:600;color:var(--tf-white)!important;background:var(--tf-terracotta);border-radius:var(--radius-full);text-align:center;box-shadow:0 4px 20px #d4644a59;transition:all var(--duration-normal) var(--ease-out)}.landing-page .mobile-nav-cta:hover{background:var(--tf-terracotta-dark);transform:translateY(-2px);box-shadow:var(--shadow-glow-terracotta)}@media (max-width: 868px){.landing-nav-links{display:none}.mobile-menu-btn,.mobile-nav-menu{display:flex}}.hero-section{position:relative;min-height:100vh;padding:140px var(--space-lg) var(--space-4xl);background:var(--tf-cream);overflow:hidden}.hero-container{position:relative;max-width:1400px;margin:0 auto;display:grid;grid-template-columns:1fr 1fr;gap:var(--space-3xl);align-items:center;z-index:2}.hero-content{max-width:600px}.hero-badge{display:inline-flex;align-items:center;gap:var(--space-sm);padding:var(--space-sm) var(--space-md);margin-bottom:var(--space-lg);font-size:.8125rem;font-weight:600;color:var(--tf-forest);background:#1a3d2e14;border:1px solid rgba(26,61,46,.15);border-radius:var(--radius-full);animation:fadeInUp .6s var(--ease-out) both}.hero-badge-dot{width:6px;height:6px;background:var(--tf-lime);border-radius:50%;animation:pulse 2s ease-in-out infinite}@keyframes pulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.6;transform:scale(1.2)}}.hero-title{font-family:var(--font-display);font-size:clamp(2.5rem,5vw,4rem);font-weight:600;line-height:1.1;letter-spacing:.015em;word-spacing:.08em;color:var(--tf-charcoal);margin-bottom:var(--space-lg);animation:fadeInUp .6s var(--ease-out) .1s both}.hero-title-accent{display:block;position:relative;color:var(--tf-forest)}.hero-title-accent:after{content:"";position:absolute;bottom:4px;left:0;width:100%;height:8px;background:var(--tf-lime);opacity:.6;z-index:-1;transform:skew(-3deg)}.hero-subtitle{font-size:1.25rem;line-height:1.7;color:var(--tf-text-secondary);margin-bottom:var(--space-xl);max-width:500px;animation:fadeInUp .6s var(--ease-out) .2s both}.hero-cta-group{display:flex;gap:var(--space-md);flex-wrap:wrap;margin-bottom:var(--space-lg);animation:fadeInUp .6s var(--ease-out) .3s both}.landing-page .hero-cta-primary,.landing-page .hero-cta-primary:visited{display:inline-flex;align-items:center;gap:var(--space-sm);padding:var(--space-md) var(--space-xl);font-family:var(--font-body);font-size:1rem;font-weight:600;color:var(--tf-white)!important;background:var(--tf-terracotta);border-radius:var(--radius-full);transition:all var(--duration-normal) var(--ease-out);box-shadow:0 4px 20px #d4644a59}.landing-page .hero-cta-primary:hover{background:var(--tf-terracotta-dark);transform:translateY(-3px);box-shadow:var(--shadow-glow-terracotta)}.landing-page .hero-cta-primary svg{transition:transform var(--duration-normal) var(--ease-out)}.landing-page .hero-cta-primary:hover svg{transform:translate(4px)}.hero-cta-secondary{display:inline-flex;align-items:center;gap:var(--space-sm);padding:var(--space-md) var(--space-xl);font-family:var(--font-body);font-size:1rem;font-weight:600;color:var(--tf-forest);background:transparent;border:2px solid var(--tf-forest);border-radius:var(--radius-full);transition:all var(--duration-normal) var(--ease-out)}.hero-cta-secondary:hover{background:var(--tf-forest);color:var(--tf-white)}.hero-note{font-size:.875rem;color:var(--tf-text-muted);animation:fadeInUp .6s var(--ease-out) .4s both}.hero-note strong{color:var(--tf-forest)}.hero-image{position:relative;animation:fadeInUp .8s var(--ease-out) .3s both}.hero-visual{position:relative;width:100%;aspect-ratio:1;max-width:600px;margin:0 auto}.iso-scene{position:relative;width:100%;height:100%;transform:rotateX(60deg) rotate(-45deg);transform-style:preserve-3d}.hero-screenshot-placeholder{position:relative;background:var(--tf-charcoal);border-radius:var(--radius-xl);overflow:hidden;box-shadow:var(--shadow-xl),0 0 0 1px #ffffff1a inset;transform:perspective(1500px) rotateY(-8deg) rotateX(5deg);transition:transform var(--duration-slow) var(--ease-out)}.hero-screenshot-placeholder:hover{transform:perspective(1500px) rotateY(-4deg) rotateX(2deg)}.screenshot-header{display:flex;align-items:center;gap:var(--space-md);padding:var(--space-md) var(--space-lg);background:var(--tf-slate);border-bottom:1px solid rgba(255,255,255,.06)}.screenshot-dots{display:flex;gap:6px}.screenshot-dots span{width:12px;height:12px;border-radius:50%;background:var(--tf-stone)}.screenshot-dots span:first-child{background:#ff5f57}.screenshot-dots span:nth-child(2){background:#ffbd2e}.screenshot-dots span:nth-child(3){background:var(--tf-lime)}.screenshot-title{font-family:var(--font-body);font-size:.8125rem;font-weight:500;color:var(--tf-mist)}.screenshot-body{display:flex;min-height:360px}.screenshot-sidebar{width:64px;padding:var(--space-md);background:var(--tf-charcoal-light);display:flex;flex-direction:column;gap:var(--space-sm);border-right:1px solid rgba(255,255,255,.04)}.screenshot-menu-item{width:40px;height:40px;border-radius:var(--radius-md);background:var(--tf-slate);transition:all var(--duration-fast)}.screenshot-menu-item.active{background:var(--tf-lime)}.screenshot-main{flex:1;padding:var(--space-lg);display:flex;flex-direction:column;gap:var(--space-md)}.screenshot-card{background:var(--tf-charcoal-light);border-radius:var(--radius-md);padding:var(--space-md);border:1px solid rgba(255,255,255,.04)}.screenshot-card-header{height:16px;width:35%;background:linear-gradient(90deg,var(--tf-lime) 0%,var(--tf-lime-dim) 100%);border-radius:var(--radius-sm);margin-bottom:var(--space-md)}.screenshot-card-row{height:10px;background:var(--tf-slate);border-radius:var(--radius-sm);margin-bottom:var(--space-sm)}.screenshot-card-row:last-child{width:65%;margin-bottom:0}.screenshot-stats{display:flex;gap:var(--space-md)}.screenshot-stat-box{flex:1;height:90px;background:var(--tf-charcoal-light);border-radius:var(--radius-md);border:1px solid rgba(255,255,255,.04);position:relative;overflow:hidden}.screenshot-stat-box:before{content:"";position:absolute;bottom:0;left:0;right:0;height:40%;background:linear-gradient(to top,var(--tf-lime) 0%,transparent 100%);opacity:.15}.screenshot-label{display:none}.hero-bg-gradient{position:absolute;top:-30%;right:-20%;width:80%;height:100%;background:radial-gradient(circle,rgba(196,244,42,.12) 0%,transparent 60%);pointer-events:none;z-index:0}.hero-bg-pattern{position:absolute;top:0;right:0;bottom:0;left:0;background-image:radial-gradient(circle at 20% 80%,rgba(26,61,46,.03) 0%,transparent 50%),radial-gradient(circle at 80% 20%,rgba(212,100,74,.03) 0%,transparent 50%);pointer-events:none;z-index:0}.hero-float{position:absolute;border-radius:var(--radius-lg);animation:float 6s ease-in-out infinite}.hero-float-1{top:20%;right:5%;width:80px;height:80px;background:var(--tf-lime);opacity:.15;animation-delay:0s}.hero-float-2{bottom:30%;right:15%;width:40px;height:40px;background:var(--tf-terracotta);opacity:.2;animation-delay:2s}.hero-float-3{top:40%;left:5%;width:60px;height:60px;background:var(--tf-forest);opacity:.1;animation-delay:4s}@keyframes float{0%,to{transform:translateY(0) rotate(0)}50%{transform:translateY(-20px) rotate(5deg)}}@keyframes fadeInUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}@media (max-width: 1024px){.hero-container{grid-template-columns:1fr;text-align:center}.hero-content{max-width:600px;margin:0 auto}.hero-subtitle{margin-left:auto;margin-right:auto}.hero-cta-group{justify-content:center}.hero-image{max-width:500px;margin:0 auto}}@media (max-width: 640px){.hero-section{padding:120px var(--space-md) var(--space-3xl)}.hero-title{font-size:2rem}.hero-subtitle{font-size:1.0625rem}.hero-cta-group{flex-direction:column}.hero-cta-primary,.hero-cta-secondary{width:100%;justify-content:center}}.social-proof-section{padding:var(--space-3xl) var(--space-lg);background:var(--tf-white);border-top:1px solid rgba(28,28,28,.06);border-bottom:1px solid rgba(28,28,28,.06)}.social-proof-container{max-width:1400px;margin:0 auto;text-align:center}.social-proof-label{font-family:var(--font-body);font-size:.8125rem;font-weight:600;color:var(--tf-text-muted);text-transform:uppercase;letter-spacing:.1em;margin-bottom:var(--space-xl)}.social-proof-logos{display:flex;justify-content:center;align-items:center;flex-wrap:wrap;gap:var(--space-xl)}.logo-item{display:flex;align-items:center;justify-content:center;padding:var(--space-md) var(--space-lg);background:var(--tf-cream);border:1px solid rgba(28,28,28,.08);border-radius:var(--radius-lg);transition:all var(--duration-normal) var(--ease-out)}.logo-item:hover{border-color:var(--tf-lime);box-shadow:var(--shadow-md);transform:translateY(-2px)}.partner-logo{height:40px;width:auto;max-width:160px;object-fit:contain}.logo-placeholder{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--space-xs);min-width:140px;height:72px;padding:var(--space-md) var(--space-lg);background:var(--tf-cream);border:2px dashed rgba(26,61,46,.25);border-radius:var(--radius-lg);cursor:pointer;transition:all var(--duration-normal) var(--ease-out)}.logo-placeholder.logo-cta:hover{border-color:var(--tf-forest);border-style:solid;background:#1a3d2e0d;box-shadow:var(--shadow-md);transform:translateY(-2px)}.logo-plus{font-family:var(--font-display);font-size:1.5rem;font-weight:500;color:var(--tf-forest);line-height:1}.logo-cta-text{font-family:var(--font-body);font-size:.75rem;font-weight:600;color:var(--tf-forest);text-transform:uppercase;letter-spacing:.05em}.logo-initials{font-family:var(--font-display);font-size:1.125rem;font-weight:600;color:var(--tf-stone)}.logo-modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#1c1c1c99;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;padding:var(--space-lg);z-index:2000;animation:fadeIn .2s var(--ease-out)}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.logo-modal{position:relative;max-width:420px;width:100%;padding:var(--space-3xl);background:var(--tf-white);border-radius:var(--radius-2xl);box-shadow:var(--shadow-xl);text-align:center;animation:slideUp .3s var(--ease-out)}@keyframes slideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.logo-modal-close{position:absolute;top:var(--space-md);right:var(--space-md);display:flex;align-items:center;justify-content:center;width:36px;height:36px;background:var(--tf-cream);border:none;border-radius:var(--radius-full);color:var(--tf-text-secondary);cursor:pointer;transition:all var(--duration-fast) var(--ease-out)}.logo-modal-close:hover{background:var(--tf-cloud);color:var(--tf-charcoal)}.logo-modal-icon{display:inline-flex;align-items:center;justify-content:center;width:80px;height:80px;background:linear-gradient(135deg,var(--tf-forest) 0%,var(--tf-forest-light) 100%);border-radius:var(--radius-xl);color:var(--tf-lime);margin-bottom:var(--space-xl)}.logo-modal-title{font-family:var(--font-display);font-size:1.5rem;font-weight:600;letter-spacing:.01em;color:var(--tf-charcoal);margin-bottom:var(--space-md)}.logo-modal-description{font-size:1rem;color:var(--tf-text-secondary);line-height:1.7;margin-bottom:var(--space-xl)}.logo-modal-spots{display:inline-flex;align-items:center;gap:var(--space-sm);padding:var(--space-sm) var(--space-lg);background:#c4f42a26;border-radius:var(--radius-full);margin-bottom:var(--space-xl)}.logo-modal-spots-number{font-family:var(--font-display);font-size:1.5rem;font-weight:700;color:var(--tf-forest)}.logo-modal-spots-label{font-size:.875rem;font-weight:500;color:var(--tf-forest)}.landing-page .logo-modal-cta,.landing-page .logo-modal-cta:visited{display:inline-flex;align-items:center;gap:var(--space-sm);padding:var(--space-md) var(--space-xl);font-family:var(--font-body);font-size:1rem;font-weight:600;color:var(--tf-white)!important;background:var(--tf-terracotta);border-radius:var(--radius-full);transition:all var(--duration-normal) var(--ease-out);box-shadow:0 4px 20px #d4644a59}.landing-page .logo-modal-cta:hover{background:var(--tf-terracotta-dark);transform:translateY(-2px);box-shadow:var(--shadow-glow-terracotta)}.landing-page .logo-modal-cta svg{transition:transform var(--duration-normal) var(--ease-out)}.landing-page .logo-modal-cta:hover svg{transform:translate(4px)}@media (max-width: 640px){.social-proof-logos{gap:var(--space-md)}.logo-modal{padding:var(--space-xl)}.logo-modal-icon{width:64px;height:64px}.logo-modal-icon svg{width:36px;height:36px}.logo-modal-title{font-size:1.25rem}}.features-section{padding:var(--space-5xl) var(--space-lg);background:var(--tf-cream);position:relative}.features-section:before{content:"";position:absolute;top:0;left:0;right:0;height:1px;background:linear-gradient(90deg,transparent 0%,rgba(28,28,28,.1) 50%,transparent 100%)}.features-container{max-width:1400px;margin:0 auto}.features-header{text-align:center;margin-bottom:var(--space-4xl)}.section-eyebrow{display:inline-flex;align-items:center;gap:var(--space-sm);font-family:var(--font-body);font-size:.8125rem;font-weight:600;color:var(--tf-terracotta);text-transform:uppercase;letter-spacing:.15em;margin-bottom:var(--space-md)}.section-eyebrow:before,.section-eyebrow:after{content:"";width:24px;height:2px;background:var(--tf-terracotta);opacity:.4}.features-title{font-family:var(--font-display);font-size:clamp(2rem,4vw,3rem);font-weight:600;letter-spacing:.01em;word-spacing:.06em;color:var(--tf-charcoal);margin-bottom:var(--space-md)}.features-subtitle{font-size:1.125rem;color:var(--tf-text-secondary);max-width:600px;margin:0 auto}.features-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--space-lg)}.feature-card{position:relative;padding:var(--space-xl);background:var(--tf-white);border:1px solid rgba(28,28,28,.08);border-radius:var(--radius-xl);transition:all var(--duration-normal) var(--ease-out);overflow:hidden}.feature-card:before{content:"";position:absolute;top:0;left:0;width:100%;height:4px;background:linear-gradient(90deg,var(--tf-forest) 0%,var(--tf-lime) 100%);transform:scaleX(0);transform-origin:left;transition:transform var(--duration-normal) var(--ease-out)}.feature-card:hover{border-color:#1a3d2e33;box-shadow:var(--shadow-lg);transform:translateY(-4px)}.feature-card:hover:before{transform:scaleX(1)}.feature-icon{display:flex;align-items:center;justify-content:center;width:56px;height:56px;background:var(--tf-forest);border-radius:var(--radius-lg);color:var(--tf-lime);margin-bottom:var(--space-lg);transition:all var(--duration-normal) var(--ease-out)}.feature-card:hover .feature-icon{transform:scale(1.1) rotate(-5deg);box-shadow:0 8px 20px #1a3d2e4d}.feature-title{font-family:var(--font-display);font-size:1.25rem;font-weight:500;letter-spacing:.01em;color:var(--tf-charcoal);margin-bottom:var(--space-sm)}.feature-description{font-size:.9375rem;color:var(--tf-text-secondary);line-height:1.7}@media (max-width: 1024px){.features-grid{grid-template-columns:repeat(2,1fr)}}@media (max-width: 640px){.features-section{padding:var(--space-4xl) var(--space-md)}.features-grid{grid-template-columns:1fr}}.benefits-section{padding:var(--space-5xl) var(--space-lg);background:var(--tf-forest);position:relative;overflow:hidden}.benefits-section:before{content:"";position:absolute;top:-50%;right:-20%;width:60%;height:150%;background:radial-gradient(circle,rgba(196,244,42,.08) 0%,transparent 60%);pointer-events:none}.benefits-container{max-width:1000px;margin:0 auto;position:relative;z-index:1}.benefits-header{text-align:center;margin-bottom:var(--space-4xl)}.benefits-title{font-family:var(--font-display);font-size:clamp(2rem,4vw,3rem);font-weight:600;letter-spacing:.01em;word-spacing:.06em;color:var(--tf-cream);margin-bottom:var(--space-md)}.benefits-subtitle{font-size:1.125rem;color:#faf7f2b3;max-width:600px;margin:0 auto}.benefits-grid{display:flex;flex-direction:column;gap:var(--space-md)}.benefit-card{display:flex;align-items:flex-start;gap:var(--space-lg);padding:var(--space-xl);background:#ffffff08;border:1px solid rgba(255,255,255,.06);border-radius:var(--radius-xl);transition:all var(--duration-normal) var(--ease-out)}.benefit-card:hover{background:#ffffff0f;border-color:#c4f42a4d;transform:translate(8px)}.benefit-icon{flex-shrink:0;display:flex;align-items:center;justify-content:center;width:64px;height:64px;background:#c4f42a26;border-radius:var(--radius-lg);color:var(--tf-lime)}.benefit-content{flex:1}.benefit-title{font-family:var(--font-display);font-size:1.25rem;font-weight:500;letter-spacing:.01em;color:var(--tf-cream);margin-bottom:var(--space-xs)}.benefit-description{font-size:.9375rem;color:#faf7f2b3;line-height:1.7}@media (max-width: 640px){.benefits-section{padding:var(--space-4xl) var(--space-md)}.benefit-card{flex-direction:column;gap:var(--space-md)}}.testimonials-section{padding:var(--space-5xl) var(--space-lg);background:var(--tf-cream)}.testimonials-container{max-width:1400px;margin:0 auto}.testimonials-header{text-align:center;margin-bottom:var(--space-4xl)}.testimonials-title{font-family:var(--font-display);font-size:clamp(2rem,4vw,3rem);font-weight:600;letter-spacing:.01em;word-spacing:.06em;color:var(--tf-charcoal);margin-bottom:var(--space-md)}.testimonials-subtitle{font-size:1.125rem;color:var(--tf-text-secondary);max-width:600px;margin:0 auto}.testimonials-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--space-lg)}.testimonial-card{position:relative;padding:var(--space-xl);background:var(--tf-white);border:1px solid rgba(28,28,28,.08);border-radius:var(--radius-xl);display:flex;flex-direction:column;transition:all var(--duration-normal) var(--ease-out)}.testimonial-card:hover{box-shadow:var(--shadow-lg);transform:translateY(-4px)}.testimonial-card:before{content:'"';position:absolute;top:var(--space-md);right:var(--space-lg);font-family:var(--font-display);font-size:6rem;font-weight:700;line-height:1;color:var(--tf-lime);opacity:.2}.testimonial-rating{display:flex;gap:4px;margin-bottom:var(--space-md)}.testimonial-rating svg{filter:drop-shadow(0 1px 2px rgba(0,0,0,.1))}.testimonial-quote{flex:1;font-family:var(--font-body);font-size:1rem;color:var(--tf-text-secondary);line-height:1.8;margin-bottom:var(--space-lg);position:relative;z-index:1}.testimonial-author{display:flex;align-items:center;gap:var(--space-md);padding-top:var(--space-md);border-top:1px solid rgba(28,28,28,.06)}.testimonial-avatar{width:52px;height:52px;border-radius:var(--radius-lg);background:var(--tf-forest);color:var(--tf-lime);display:flex;align-items:center;justify-content:center;font-family:var(--font-display);font-size:.875rem;font-weight:600}.testimonial-info{flex:1}.testimonial-name{font-family:var(--font-display);font-size:1rem;font-weight:600;color:var(--tf-charcoal);margin-bottom:2px}.testimonial-role{font-size:.8125rem;color:var(--tf-text-muted)}@media (max-width: 1024px){.testimonials-grid{grid-template-columns:1fr;max-width:600px;margin:0 auto}}@media (max-width: 640px){.testimonials-section{padding:var(--space-4xl) var(--space-md)}}.testimonials-promo{display:flex;justify-content:center}.promo-card{max-width:480px;width:100%;padding:var(--space-3xl);background:var(--tf-white);border:2px dashed rgba(26,61,46,.2);border-radius:var(--radius-2xl);text-align:center;transition:all var(--duration-normal) var(--ease-out)}.promo-card:hover{border-color:var(--tf-forest);border-style:solid;box-shadow:var(--shadow-lg);transform:translateY(-4px)}.promo-icon{display:inline-flex;align-items:center;justify-content:center;width:80px;height:80px;background:linear-gradient(135deg,var(--tf-forest) 0%,var(--tf-forest-light) 100%);border-radius:var(--radius-xl);color:var(--tf-lime);margin-bottom:var(--space-xl);transition:transform var(--duration-normal) var(--ease-out)}.promo-card:hover .promo-icon{transform:scale(1.1) rotate(-5deg)}.promo-title{font-family:var(--font-display);font-size:1.75rem;font-weight:600;letter-spacing:.01em;color:var(--tf-charcoal);margin-bottom:var(--space-md)}.promo-description{font-size:1.0625rem;color:var(--tf-text-secondary);line-height:1.7;margin-bottom:var(--space-xl)}.promo-spots{display:inline-flex;align-items:center;gap:var(--space-sm);padding:var(--space-sm) var(--space-lg);background:#c4f42a26;border-radius:var(--radius-full);margin-bottom:var(--space-xl)}.promo-spots-number{font-family:var(--font-display);font-size:1.5rem;font-weight:700;color:var(--tf-forest)}.promo-spots-label{font-size:.875rem;font-weight:500;color:var(--tf-forest)}.landing-page .promo-cta,.landing-page .promo-cta:visited{display:inline-flex;align-items:center;gap:var(--space-sm);padding:var(--space-md) var(--space-xl);font-family:var(--font-body);font-size:1rem;font-weight:600;color:var(--tf-white)!important;background:var(--tf-terracotta);border-radius:var(--radius-full);transition:all var(--duration-normal) var(--ease-out);box-shadow:0 4px 20px #d4644a59}.landing-page .promo-cta:hover{background:var(--tf-terracotta-dark);transform:translateY(-2px);box-shadow:var(--shadow-glow-terracotta)}.landing-page .promo-cta svg{transition:transform var(--duration-normal) var(--ease-out)}.landing-page .promo-cta:hover svg{transform:translate(4px)}@media (max-width: 640px){.promo-card{padding:var(--space-xl)}.promo-icon{width:64px;height:64px}.promo-icon svg{width:36px;height:36px}.promo-title{font-size:1.5rem}}.pricing-section{padding:var(--space-5xl) var(--space-lg);background:var(--tf-white);position:relative}.pricing-section:before{content:"";position:absolute;top:0;left:0;right:0;height:1px;background:linear-gradient(90deg,transparent 0%,rgba(28,28,28,.1) 50%,transparent 100%)}.pricing-container{max-width:1200px;margin:0 auto}.pricing-header{text-align:center;margin-bottom:var(--space-4xl)}.pricing-title{font-family:var(--font-display);font-size:clamp(2rem,4vw,3rem);font-weight:600;letter-spacing:.01em;word-spacing:.06em;color:var(--tf-charcoal);margin-bottom:var(--space-md)}.pricing-subtitle{font-size:1.125rem;color:var(--tf-text-secondary);max-width:600px;margin:0 auto}.pricing-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--space-lg);align-items:stretch}.pricing-card{position:relative;padding:var(--space-xl);background:var(--tf-cream);border:2px solid rgba(28,28,28,.08);border-radius:var(--radius-2xl);display:flex;flex-direction:column;transition:all var(--duration-normal) var(--ease-out)}.pricing-card:hover{border-color:#1c1c1c26;box-shadow:var(--shadow-lg)}.pricing-card-highlighted{background:var(--tf-forest);border-color:var(--tf-forest);transform:scale(1.03)}.pricing-card-highlighted:hover{border-color:var(--tf-forest);transform:scale(1.05)}.pricing-badge{position:absolute;top:-14px;left:50%;transform:translate(-50%);padding:var(--space-sm) var(--space-lg);font-family:var(--font-body);font-size:.75rem;font-weight:700;color:var(--tf-charcoal);background:var(--tf-lime);border-radius:var(--radius-full);text-transform:uppercase;letter-spacing:.1em;box-shadow:0 4px 12px #c4f42a66}.pricing-card-header{text-align:center;padding-bottom:var(--space-lg);border-bottom:1px solid rgba(28,28,28,.08);margin-bottom:var(--space-lg)}.pricing-card-highlighted .pricing-card-header{border-bottom-color:#ffffff1a}.pricing-plan-name{font-family:var(--font-display);font-size:1.25rem;font-weight:500;letter-spacing:.02em;color:var(--tf-charcoal);margin-bottom:var(--space-md)}.pricing-card-highlighted .pricing-plan-name{color:var(--tf-cream)}.pricing-price-container{display:flex;align-items:baseline;justify-content:center;gap:4px;margin-bottom:var(--space-sm)}.pricing-price{font-family:var(--font-display);font-size:3rem;font-weight:700;color:var(--tf-charcoal);letter-spacing:-.03em}.pricing-card-highlighted .pricing-price{color:var(--tf-lime)}.pricing-period{font-size:1rem;color:var(--tf-text-muted)}.pricing-card-highlighted .pricing-period{color:#faf7f299}.pricing-description{font-size:.875rem;color:var(--tf-text-secondary)}.pricing-card-highlighted .pricing-description{color:#faf7f2b3}.pricing-features{list-style:none;flex:1;margin-bottom:var(--space-xl)}.pricing-feature{display:flex;align-items:flex-start;gap:var(--space-md);padding:var(--space-sm) 0;font-size:.9375rem;color:var(--tf-text-secondary)}.pricing-card-highlighted .pricing-feature{color:#faf7f2d9}.pricing-feature-icon{flex-shrink:0;color:var(--tf-forest);margin-top:2px}.pricing-card-highlighted .pricing-feature-icon{color:var(--tf-lime)}.pricing-cta{display:block;padding:var(--space-md) var(--space-lg);font-family:var(--font-body);font-size:1rem;font-weight:600;color:var(--tf-forest);background:transparent;border:2px solid var(--tf-forest);border-radius:var(--radius-full);text-align:center;transition:all var(--duration-normal) var(--ease-out)}.pricing-cta:hover{background:var(--tf-forest);color:var(--tf-white)}.landing-page .pricing-cta-highlighted,.landing-page .pricing-cta-highlighted:visited{color:var(--tf-charcoal)!important;background:var(--tf-lime);border-color:var(--tf-lime)}.landing-page .pricing-cta-highlighted:hover{background:var(--tf-lime-dim);border-color:var(--tf-lime-dim);transform:translateY(-2px);box-shadow:var(--shadow-glow-lime)}.pricing-guarantee{text-align:center;margin-top:var(--space-3xl);font-size:.9375rem;color:var(--tf-text-muted)}.pricing-contact{display:flex;justify-content:center;padding:var(--space-xl) 0}.pricing-contact-card{background:linear-gradient(135deg,var(--tf-lime-dim) 0%,var(--tf-lime-subtle) 100%);border:1px solid var(--tf-lime-dim);border-radius:var(--radius-xl);padding:var(--space-3xl) var(--space-4xl);text-align:center;max-width:550px;width:100%}.pricing-contact-icon{display:inline-flex;align-items:center;justify-content:center;width:80px;height:80px;border-radius:50%;background:var(--tf-white);color:var(--tf-lime);margin-bottom:var(--space-xl);box-shadow:var(--shadow-sm)}.pricing-contact-title{font-family:var(--font-display);font-size:1.75rem;font-weight:600;color:var(--tf-charcoal);margin-bottom:var(--space-md)}.pricing-contact-description{font-size:1.0625rem;color:var(--tf-text-secondary);line-height:1.7;margin-bottom:var(--space-xl)}.pricing-contact-card .pricing-cta{display:inline-flex;align-items:center;gap:var(--space-xs)}@media (max-width: 640px){.pricing-contact-card{padding:var(--space-2xl) var(--space-xl)}.pricing-contact-title{font-size:1.5rem}.pricing-contact-icon{width:64px;height:64px}.pricing-contact-icon svg{width:32px;height:32px}}@media (max-width: 1024px){.pricing-grid{grid-template-columns:1fr;max-width:450px;margin:0 auto}.pricing-card-highlighted{transform:none;order:-1}.pricing-card-highlighted:hover{transform:none}}@media (max-width: 640px){.pricing-section{padding:var(--space-4xl) var(--space-md)}}.faq-section{padding:var(--space-5xl) var(--space-lg);background:var(--tf-cream)}.faq-container{max-width:800px;margin:0 auto}.faq-header{text-align:center;margin-bottom:var(--space-4xl)}.faq-title{font-family:var(--font-display);font-size:clamp(2rem,4vw,3rem);font-weight:600;letter-spacing:.01em;word-spacing:.06em;color:var(--tf-charcoal);margin-bottom:var(--space-md)}.faq-subtitle{font-size:1.125rem;color:var(--tf-text-secondary)}.faq-contact-link{color:var(--tf-terracotta);font-weight:500;transition:color var(--duration-fast)}.faq-contact-link:hover{color:var(--tf-terracotta-dark);text-decoration:underline}.faq-list{display:flex;flex-direction:column;gap:var(--space-md)}.faq-item{background:var(--tf-white);border:1px solid rgba(28,28,28,.08);border-radius:var(--radius-xl);overflow:hidden;transition:all var(--duration-normal) var(--ease-out)}.faq-item:hover{border-color:#1c1c1c26}.faq-item-open{border-color:var(--tf-forest);box-shadow:var(--shadow-md)}.faq-item .faq-question:hover{box-shadow:none}.faq-question{display:flex;align-items:center;justify-content:space-between;width:100%;padding:var(--space-lg) var(--space-xl);font-family:var(--font-display);font-size:1rem;font-weight:600;color:var(--tf-charcoal);text-align:left;gap:var(--space-md);transition:color var(--duration-fast)}.faq-question:hover{color:var(--tf-forest)}.faq-icon{flex-shrink:0;color:var(--tf-stone);transition:all var(--duration-normal) var(--ease-out)}.faq-icon-open{transform:rotate(180deg);color:var(--tf-forest)}.faq-answer-wrapper{max-height:0;overflow:hidden;transition:max-height var(--duration-normal) var(--ease-out)}.faq-item-open .faq-answer-wrapper{max-height:500px}.faq-answer{padding:0 var(--space-xl) var(--space-lg);font-size:.9375rem;color:var(--tf-text-secondary);line-height:1.8}@media (max-width: 640px){.faq-section{padding:var(--space-4xl) var(--space-md)}.faq-question{padding:var(--space-md) var(--space-lg)}.faq-answer{padding:0 var(--space-lg) var(--space-md)}}.landing-footer{padding:var(--space-4xl) var(--space-lg) var(--space-xl);background:var(--tf-charcoal);color:var(--tf-mist)}.footer-container{max-width:1400px;margin:0 auto}.footer-grid{display:grid;grid-template-columns:2fr 1fr 1fr 1fr;gap:var(--space-3xl);margin-bottom:var(--space-3xl)}.footer-brand{max-width:320px}.footer-logo{display:flex;align-items:center;margin-bottom:var(--space-md)}.footer-logo-img{height:48px;width:auto;filter:brightness(0) invert(1)}.footer-tagline{font-size:.875rem;line-height:1.7;color:var(--tf-stone)}.footer-links-column{display:flex;flex-direction:column}.footer-column-title{font-family:var(--font-display);font-size:.8125rem;font-weight:600;color:var(--tf-cream);text-transform:uppercase;letter-spacing:.1em;margin-bottom:var(--space-lg)}.footer-links{list-style:none;display:flex;flex-direction:column;gap:var(--space-md)}.footer-link{font-size:.9375rem;color:var(--tf-stone);transition:all var(--duration-fast)}.footer-link:hover{color:var(--tf-lime);transform:translate(4px)}.footer-bottom{padding-top:var(--space-xl);border-top:1px solid rgba(255,255,255,.06);display:flex;justify-content:space-between;align-items:center}.footer-copyright{font-size:.8125rem;color:var(--tf-stone)}.footer-nz-badge{display:inline-flex;align-items:center;gap:var(--space-sm);font-size:.8125rem;color:var(--tf-stone)}@media (max-width: 868px){.footer-grid{grid-template-columns:1fr 1fr;gap:var(--space-xl)}.footer-brand{grid-column:span 2;max-width:100%}}@media (max-width: 480px){.landing-footer{padding:var(--space-3xl) var(--space-md) var(--space-lg)}.footer-grid{grid-template-columns:1fr;gap:var(--space-xl)}.footer-brand{grid-column:span 1}.footer-bottom{flex-direction:column;gap:var(--space-md);text-align:center}}@keyframes shimmer{0%{background-position:-200% 0}to{background-position:200% 0}}.shimmer{background:linear-gradient(90deg,#fff0,#ffffff1a,#fff0);background-size:200% 100%;animation:shimmer 2s infinite}.reveal{opacity:0;transform:translateY(30px);transition:all .8s var(--ease-out)}.reveal.visible{opacity:1;transform:translateY(0)}.stagger-children>*{opacity:0;transform:translateY(20px);transition:all .6s var(--ease-out)}.stagger-children.visible>*:nth-child(1){transition-delay:0s;opacity:1;transform:translateY(0)}.stagger-children.visible>*:nth-child(2){transition-delay:.1s;opacity:1;transform:translateY(0)}.stagger-children.visible>*:nth-child(3){transition-delay:.2s;opacity:1;transform:translateY(0)}.stagger-children.visible>*:nth-child(4){transition-delay:.3s;opacity:1;transform:translateY(0)}.stagger-children.visible>*:nth-child(5){transition-delay:.4s;opacity:1;transform:translateY(0)}.stagger-children.visible>*:nth-child(6){transition-delay:.5s;opacity:1;transform:translateY(0)}
