:root{--hot:#ff4f40;--hot-hover:#e63e30;--hot-light:#fff0ee;--hot-mid:#ffcfc9;--hot-glow:#ff4f401f;--ink:#1a1a1a;--ink-2:#4a4a4a;--ink-3:#767676;--ink-4:#ababab;--white:#fff;--bg:#fafafa;--bg-warm:#fef7f5;--surface-2:#f2f2f2;--surface-3:#e8e8e8;--border:#0000000f;--border-strong:#0000001f;--green:#0a8047;--green-bg:#e6f7ee;--amber:#a36200;--amber-bg:#fff4de;--navy:#14213d;--font:"Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", system-ui, sans-serif;--sp-1:4px;--sp-2:8px;--sp-3:12px;--sp-4:16px;--sp-5:20px;--sp-6:24px;--sp-8:32px;--sp-10:40px;--sp-12:48px;--sp-16:64px;--sp-20:80px;--sp-24:96px;--sp-32:128px;--r-sm:8px;--r-md:12px;--r-lg:16px;--r-xl:20px;--r-2xl:28px;--r-full:100px;--sh-xs:0 1px 2px #0000000a;--sh-sm:0 1px 3px #0000000f, 0 1px 2px #0000000a;--sh-md:0 4px 16px #00000014;--sh-lg:0 12px 40px #0000001a;--sh-xl:0 20px 60px #0000001f;--sh-hot:0 4px 14px #ff4f404d;--sh-hot-lg:0 8px 30px #ff4f4040;--sh-card:0 0 0 1px var(--border), var(--sh-xs);--sh-card-up:0 0 0 1px var(--border-strong), var(--sh-md);--sh-focus:0 0 0 2px var(--white), 0 0 0 4px var(--hot);--nav-h:56px;--max-w:1120px;--ease:cubic-bezier(.25, .1, .25, 1);--ease-out:cubic-bezier(0, 0, .25, 1);--ease-spring:cubic-bezier(.34, 1.56, .64, 1);--dur:.15s;--dur-md:.25s;--dur-slow:.4s}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-size:16px}body{font-family:var(--font);background:var(--bg);color:var(--ink);font-feature-settings:"cv02","cv03","cv04","cv11";min-height:100vh;line-height:1.6}a{color:var(--hot);transition:color var(--dur) var(--ease);text-decoration:none}a:hover{color:var(--hot-hover)}::selection{background:var(--hot);color:#fff}img{max-width:100%;display:block}button,input,select,textarea{font-family:var(--font)}:focus-visible{box-shadow:var(--sh-focus);border-radius:var(--r-sm);outline:none}.skip-link{left:-9999px;top:var(--sp-2);background:var(--ink);color:#fff;padding:var(--sp-2) var(--sp-4);border-radius:var(--r-full);z-index:9999;font-size:.8125rem;font-weight:600;position:absolute}.skip-link:focus{left:var(--sp-4);box-shadow:none}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.nav-wrapper{z-index:100;padding:var(--sp-3) var(--sp-4);pointer-events:none;position:sticky;top:0}.nav{max-width:var(--max-w);background:var(--white);height:var(--nav-h);padding:0 var(--sp-5);border-radius:var(--r-full);pointer-events:auto;justify-content:space-between;align-items:center;margin:0 auto;display:flex;box-shadow:0 2px 20px #00000014,0 0 0 1px #0000000a}.nav-brand a{color:var(--ink);letter-spacing:-.04em;font-size:1.125rem;font-weight:800;text-decoration:none}.nav-brand a span{color:var(--hot)}.nav-links-desktop{gap:var(--sp-1);align-items:center;list-style:none;display:flex}.nav-links-desktop a,.nav-links-desktop button,.nav-link{color:var(--ink-2);border-radius:var(--r-full);transition:all var(--dur) var(--ease);cursor:pointer;background:0 0;border:none;align-items:center;gap:6px;padding:6px 12px;font-size:.875rem;font-weight:600;text-decoration:none;display:inline-flex}.nav-links-desktop a:hover,.nav-links-desktop button:hover{color:var(--ink);background:var(--surface-2)}.nav-link--active{color:var(--hot)!important;background:var(--hot-light)!important}.nav-cta{background:var(--hot)!important;color:#fff!important;border-radius:var(--r-full)!important;padding:6px 16px!important}.nav-cta:hover{background:var(--hot-hover)!important}.nav-hamburger{cursor:pointer;color:var(--ink);border-radius:var(--r-full);transition:background var(--dur) var(--ease);background:0 0;border:none;padding:6px;display:none}.nav-hamburger:hover{background:var(--surface-2)}@media (max-width:767px){.nav-links-desktop{display:none}.nav-hamburger{justify-content:center;align-items:center;display:flex}}.drawer-overlay{z-index:200;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#00000080;animation:.2s fadeIn;position:fixed;inset:0}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.drawer{top:var(--sp-3);right:var(--sp-3);bottom:var(--sp-3);width:320px;max-width:calc(85vw - var(--sp-6));background:var(--white);z-index:201;transform:translateX(calc(100% + var(--sp-3)));border-radius:var(--r-2xl);flex-direction:column;transition:transform .3s cubic-bezier(.32,.72,0,1);display:flex;position:fixed;overflow:hidden;box-shadow:0 2px 30px #00000026}.drawer--open{transform:translate(0)}.drawer-header{padding:var(--sp-4) var(--sp-5);border-bottom:1px solid var(--border);min-height:var(--nav-h);justify-content:space-between;align-items:center;display:flex}.drawer-close{cursor:pointer;color:var(--ink-3);border-radius:var(--r-full);transition:all var(--dur) var(--ease);background:0 0;border:none;padding:6px}.drawer-close:hover{color:var(--ink);background:var(--surface-2)}.drawer-links{padding:var(--sp-4) var(--sp-3);flex-direction:column;flex:1;gap:2px;display:flex}.drawer-link{align-items:center;gap:var(--sp-4);padding:var(--sp-4) var(--sp-5);border-radius:var(--r-lg);color:var(--ink-2);transition:all var(--dur) var(--ease);cursor:pointer;text-align:left;background:0 0;border:none;width:100%;font-size:1.0625rem;font-weight:600;text-decoration:none;display:flex}.drawer-link:hover{background:var(--surface-2);color:var(--ink)}.drawer-link--active{background:var(--hot-light);color:var(--hot)}.drawer-footer{padding:var(--sp-5);border-top:1px solid var(--border)}.drawer-footer p{color:var(--ink-4);font-size:.8125rem;font-weight:500}.btn{border-radius:var(--r-full);cursor:pointer;height:40px;transition:all var(--dur) var(--ease);white-space:nowrap;border:none;justify-content:center;align-items:center;gap:6px;padding:0 20px;font-size:.875rem;font-weight:700;line-height:1;text-decoration:none;display:inline-flex}.btn:hover{text-decoration:none}.btn:active{transition-duration:60ms;transform:scale(.96)}.btn-hot{background:var(--hot);color:#fff;box-shadow:var(--sh-hot)}.btn-hot:hover{background:var(--hot-hover);color:#fff;transform:translateY(-1px);box-shadow:0 6px 20px #ff4f4059}.btn-primary{background:var(--hot);color:#fff;box-shadow:var(--sh-hot)}.btn-primary:hover{background:var(--hot-hover);color:#fff;transform:translateY(-1px);box-shadow:0 6px 20px #ff4f4059}.btn-accent{background:var(--hot);color:#fff;box-shadow:var(--sh-hot)}.btn-accent:hover{background:var(--hot-hover);color:#fff;transform:translateY(-1px);box-shadow:0 6px 20px #ff4f4059}.btn-dark{background:var(--ink);color:#fff}.btn-dark:hover{color:#fff;background:#333}.btn-outline{background:var(--white);color:var(--ink);box-shadow:inset 0 0 0 2px var(--surface-3)}.btn-outline:hover{box-shadow:inset 0 0 0 2px var(--ink)}.btn-ghost{color:var(--ink-2);background:0 0;height:auto;padding:4px 8px}.btn-ghost:hover{background:var(--surface-2);color:var(--ink)}.btn-save{background:var(--white);color:var(--ink-2);box-shadow:var(--sh-card);border-radius:var(--r-full)}.btn-save:hover{box-shadow:var(--sh-card-up);color:var(--ink)}.btn-save[aria-pressed=true]{background:var(--hot-light);color:var(--hot);box-shadow:inset 0 0 0 1.5px var(--hot-mid)}.btn-save[aria-pressed=true]:hover{background:var(--hot-mid)}.btn-save-icon{width:16px;height:16px;display:inline-flex}.btn-full{width:100%}.btn-lg{height:48px;padding:0 28px;font-size:.9375rem}.btn-xl{letter-spacing:-.01em;height:56px;padding:0 36px;font-size:1rem}.tab-count{background:var(--surface-3);border-radius:var(--r-full);min-width:20px;height:20px;color:var(--ink-2);justify-content:center;align-items:center;margin-left:4px;padding:0 6px;font-size:.6875rem;font-weight:700;display:inline-flex}.tab-btn--active .tab-count{color:#fff;background:#fff3}.badge{border-radius:var(--r-full);white-space:nowrap;align-items:center;gap:5px;padding:4px 12px;font-size:.75rem;font-weight:700;display:inline-flex}.badge-green{background:var(--green-bg);color:var(--green)}.badge-amber{background:var(--amber-bg);color:var(--amber)}.badge-hot{background:var(--hot-light);color:var(--hot)}.badge-neutral{background:var(--surface-2);color:var(--ink-3)}.card{background:var(--white);border-radius:var(--r-xl);padding:var(--sp-6);box-shadow:var(--sh-card)}.form-stack{gap:var(--sp-5);flex-direction:column;display:flex}.form-group{flex-direction:column;gap:6px;display:flex}.form-row{gap:var(--sp-4);grid-template-columns:1fr 1fr;display:grid}.form-label{color:var(--ink);font-size:.875rem;font-weight:600}.form-input,.form-select{border:2px solid var(--surface-3);border-radius:var(--r-md);height:44px;color:var(--ink);background:var(--white);width:100%;transition:border-color var(--dur) var(--ease),box-shadow var(--dur) var(--ease);outline:none;padding:0 14px;font-size:.9375rem}.form-input::placeholder{color:var(--ink-4)}.form-input:focus,.form-select:focus{border-color:var(--hot);box-shadow:0 0 0 3px #ff4f401f}.toast{bottom:var(--sp-6);background:var(--ink);color:#fff;padding:var(--sp-3) var(--sp-6);border-radius:var(--r-full);box-shadow:var(--sh-lg);z-index:1000;opacity:0;transition:all var(--dur-slow) var(--ease-spring);pointer-events:none;font-size:.875rem;font-weight:600;position:fixed;left:50%;transform:translate(-50%)translateY(80px)}.toast.show{opacity:1;transform:translate(-50%)translateY(0)}.footer{background:var(--ink);color:#fff;padding:var(--sp-16) var(--sp-6) var(--sp-8);border-radius:var(--r-2xl) var(--r-2xl) 0 0;margin-top:var(--sp-16)}.footer-inner{max-width:var(--max-w);margin:0 auto}.footer-top{justify-content:space-between;gap:var(--sp-8);margin-bottom:var(--sp-10);flex-wrap:wrap;display:flex}.footer-brand{letter-spacing:-.03em;font-size:1.25rem;font-weight:800}.footer-brand span{color:var(--hot)}.footer-tagline{color:#ffffff80;max-width:280px;margin-top:4px;font-size:.875rem;line-height:1.6}.footer-links{gap:var(--sp-8);list-style:none;display:flex}.footer-links a{color:#fff9;font-size:.875rem;font-weight:500}.footer-links a:hover{color:#fff}.footer-copy{color:#ffffff4d;padding-top:var(--sp-6);border-top:1px solid #ffffff14;font-size:.75rem}.main-content{min-height:calc(100vh - var(--nav-h))}.cookie-banner{z-index:200;background:var(--ink);color:#fff;padding:var(--sp-4) var(--sp-6);position:fixed;bottom:0;left:0;right:0;box-shadow:0 -4px 20px #00000026}.cookie-banner-inner{max-width:var(--max-w);align-items:center;gap:var(--sp-4);flex-wrap:wrap;margin:0 auto;display:flex}.cookie-banner-inner p{flex:1;min-width:200px;font-size:.875rem;line-height:1.5}.cookie-banner-inner a{color:var(--hot-mid);font-weight:600}.cookie-banner-actions{gap:var(--sp-2);flex-shrink:0;display:flex}.cookie-banner-actions .btn{height:36px;font-size:.8125rem}.cookie-banner-actions .btn-outline{background:0 0;box-shadow:inset 0 0 0 2px #ffffff80;color:#fff!important}.cookie-banner-actions .btn-outline:hover{background:#ffffff1a;box-shadow:inset 0 0 0 2px #fff}.hero{padding:calc(var(--sp-32) + var(--sp-12) + var(--nav-h) + var(--sp-3)*2) var(--sp-6) var(--sp-24);text-align:center;margin-top:calc(-1*(var(--nav-h) + var(--sp-3)*2));position:relative;overflow:hidden}.map-background{z-index:0;pointer-events:none;background-color:#e9ebed;position:absolute;inset:0}.hero-content{z-index:1;max-width:720px;margin:0 auto;position:relative}.hero-badge{color:var(--hot);background:var(--hot-light);border-radius:var(--r-full);margin-bottom:var(--sp-8);letter-spacing:.01em;align-items:center;gap:8px;padding:8px 20px;font-size:.8125rem;font-weight:700;display:inline-flex}.hero-badge:before{content:"";background:var(--hot);border-radius:50%;flex-shrink:0;width:8px;height:8px;animation:2s infinite pulse}@keyframes pulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.4;transform:scale(.7)}}.hero-title{letter-spacing:-.05em;color:var(--ink);margin-bottom:var(--sp-6);font-size:clamp(2.5rem,6vw,4.5rem);font-weight:800;line-height:1}.hero-title em{color:var(--hot);font-style:normal;display:inline-block;position:relative}.hero-title em:after{content:"";background:var(--hot-mid);z-index:-1;border-radius:4px;height:8px;position:absolute;bottom:4px;left:-2px;right:-2px}.hero-subtitle{color:var(--ink-2);margin-bottom:var(--sp-10);max-width:480px;margin-left:auto;margin-right:auto;font-size:1.1875rem;font-weight:450;line-height:1.7}.search-bar{background:var(--white);border-radius:var(--r-2xl);box-shadow:var(--sh-xl);transition:border-color var(--dur-md) var(--ease),box-shadow var(--dur-md) var(--ease);border:2px solid #0000;flex-direction:column;gap:8px;padding:10px;display:flex}.search-bar:focus-within{border-color:var(--hot-mid);box-shadow:var(--sh-xl),0 0 0 4px var(--hot-glow)}.search-bar-fields{flex-direction:column;gap:8px;display:flex}.search-field{flex:1;position:relative}.search-field-icon{color:var(--ink-4);pointer-events:none;position:absolute;top:50%;left:16px;transform:translateY(-50%)}.search-field .search-input,.search-field .search-postcode{padding-left:44px}.search-field--postcode .search-postcode{padding-right:44px}.locate-btn{cursor:pointer;width:36px;height:36px;color:var(--ink-4);transition:all .2s var(--ease);background:0 0;border:none;border-radius:50%;justify-content:center;align-items:center;display:flex;position:absolute;top:50%;right:8px;transform:translateY(-50%)}.locate-btn:hover{color:var(--hot);background:var(--hot-light)}.locate-btn:active{transform:translateY(-50%)scale(.9)}@keyframes spin{to{transform:rotate(360deg)}}.locate-spin{animation:.8s linear infinite spin}.search-input,.search-postcode{border:2px solid var(--surface-3);border-radius:var(--r-lg);width:100%;height:52px;color:var(--ink);background:var(--bg);transition:all var(--dur) var(--ease);outline:none;padding:0 18px;font-size:1rem;font-weight:500}.search-input::placeholder,.search-postcode::placeholder{color:var(--ink-4)}.search-input:focus,.search-postcode:focus{border-color:var(--hot);background:var(--white);box-shadow:0 0 0 3px var(--hot-glow)}.search-bar .btn{border-radius:var(--r-lg);height:52px;font-size:1rem;font-weight:700}.stats-strip{justify-content:center;gap:var(--sp-16);margin-top:var(--sp-16);display:flex}.stat{text-align:center}.stat-number{color:var(--ink);letter-spacing:-.04em;font-size:2.25rem;font-weight:800;line-height:1}.stat-label{color:var(--ink-4);text-transform:uppercase;letter-spacing:.06em;margin-top:6px;font-size:.75rem;font-weight:700}.employers{padding:var(--sp-12) var(--sp-6);text-align:center;background:var(--white);border-top:1px solid var(--border);border-bottom:1px solid var(--border)}.employers-title{text-transform:uppercase;letter-spacing:.1em;color:var(--ink-4);margin-bottom:var(--sp-6);font-size:.6875rem;font-weight:700}.employers-grid{justify-content:center;gap:var(--sp-4) var(--sp-10);flex-wrap:wrap;max-width:750px;margin:0 auto;display:flex}.employer-name{color:var(--ink-3);letter-spacing:-.01em;transition:color var(--dur) var(--ease);font-size:1.0625rem;font-weight:800}.employer-name:hover{color:var(--ink)}.features{padding:var(--sp-24) var(--sp-6);max-width:var(--max-w);margin:0 auto}.features-header{text-align:center;margin-bottom:var(--sp-16)}.features-title{color:var(--ink);letter-spacing:-.04em;margin-bottom:var(--sp-3);font-size:clamp(1.75rem,3.5vw,2.5rem);font-weight:800;line-height:1.1}.features-subtitle{color:var(--ink-3);max-width:420px;margin:0 auto;font-size:1.0625rem;line-height:1.6}.features-grid{gap:var(--sp-5);grid-template-columns:1fr;display:grid}.feature-card{background:var(--white);border-radius:var(--r-2xl);padding:var(--sp-10);box-shadow:var(--sh-card);transition:all var(--dur-slow) var(--ease-out);border:2px solid #0000}.feature-card:hover{box-shadow:var(--sh-card-up);border-color:var(--hot-mid);transform:translateY(-6px)}.feature-icon{border-radius:var(--r-2xl);width:80px;height:80px;margin-bottom:var(--sp-6);justify-content:center;align-items:center;display:flex}.feature-icon svg{width:40px;height:40px}.feature-icon--map{background:var(--hot-light);color:var(--hot)}.feature-icon--pin{background:var(--green-bg);color:var(--green)}.feature-icon--briefcase{background:var(--amber-bg);color:var(--amber)}.feature-card h3{color:var(--ink);letter-spacing:-.02em;margin-bottom:8px;font-size:1.25rem;font-weight:800}.feature-card p{color:var(--ink-2);font-size:1rem;line-height:1.7}.how-section{padding:var(--sp-24) var(--sp-6);background:var(--ink);color:#fff}.how-inner{max-width:620px;margin:0 auto}.how-title{text-align:center;margin-bottom:var(--sp-16);letter-spacing:-.04em;font-size:clamp(1.75rem,3.5vw,2.5rem);font-weight:800;line-height:1.1}.steps{gap:var(--sp-12);flex-direction:column;list-style:none;display:flex}.step{gap:var(--sp-6);align-items:flex-start;display:flex}.step-num{background:var(--hot);color:#fff;width:48px;height:48px;box-shadow:var(--sh-hot-lg);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-size:1.125rem;font-weight:800;display:flex}.step h3{letter-spacing:-.01em;margin-bottom:6px;font-size:1.1875rem;font-weight:800}.step p{color:#ffffffa6;font-size:1rem;line-height:1.7}.cta-section{padding:var(--sp-24) var(--sp-6);text-align:center;background:var(--bg-warm)}.cta-inner{max-width:500px;margin:0 auto}.cta-title{color:var(--ink);margin-bottom:var(--sp-3);letter-spacing:-.04em;font-size:clamp(1.75rem,3.5vw,2.5rem);font-weight:800;line-height:1.1}.cta-text{color:var(--ink-2);margin-bottom:var(--sp-8);font-size:1.0625rem;line-height:1.7}.search-page-map-layout{position:fixed;inset:0;overflow:hidden}.search-map-bg{z-index:1;position:absolute;inset:0}.search-map{width:100%;height:100%}.search-float-bar{top:calc(var(--nav-h) + var(--sp-8));z-index:25;transition:all .4s cubic-bezier(.34,1.4,.64,1);position:absolute;left:50%;transform:translate(-50%)}.search-float-bar--closed{width:auto;max-width:280px}.search-float-bar--closed .search-pill{display:flex}.search-float-bar--closed .search-expand{opacity:0;pointer-events:none;max-height:0;overflow:hidden}.search-float-bar--open{width:calc(100% - var(--sp-8));max-width:600px;top:calc(var(--nav-h) + var(--sp-8))}.search-backdrop{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:24;background:#00000026;animation:.2s fadeIn;position:fixed;inset:0}.search-float-bar--open .search-pill{opacity:0;pointer-events:none;max-height:0;margin:0;padding:0;overflow:hidden}.search-float-bar--open .search-expand{opacity:1;max-height:200px}.search-pill{background:var(--white);border-radius:var(--r-full);width:100%;box-shadow:var(--sh-lg);cursor:pointer;font-family:var(--font);color:var(--ink);border:none;align-items:center;gap:8px;max-height:48px;padding:12px 20px;font-size:.9375rem;font-weight:600;transition:all .3s cubic-bezier(.34,1.4,.64,1);display:flex;overflow:hidden}.search-pill:hover{box-shadow:var(--sh-xl);transform:scale(1.03)}.search-pill-text{text-overflow:ellipsis;white-space:nowrap;max-width:280px;overflow:hidden}.search-expand{opacity:1;max-height:200px;transition:all .4s cubic-bezier(.34,1.4,.64,1);position:relative}.search-collapse-btn{z-index:11;background:var(--ink);color:#fff;border:2px solid var(--white);cursor:pointer;width:28px;height:28px;box-shadow:var(--sh-md);transition:all .2s var(--ease);border-radius:50%;justify-content:center;align-items:center;display:flex;position:absolute;top:-10px;right:-10px}.search-collapse-btn:hover{background:var(--hot);transform:scale(1.15)}.bottom-sheet-header{padding:var(--sp-2) var(--sp-4) var(--sp-3);border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;gap:var(--sp-3);flex-shrink:0;display:flex}.sheet-header{cursor:pointer;justify-content:space-between;align-items:center;gap:var(--sp-3);flex-wrap:wrap;flex:1;display:flex}.sheet-header-actions{flex-shrink:0;gap:4px;display:flex}.sheet-action-btn{background:var(--surface-2);width:32px;height:32px;color:var(--ink-3);cursor:pointer;transition:all var(--dur) var(--ease);border:none;border-radius:50%;justify-content:center;align-items:center;display:flex}.sheet-action-btn:hover{background:var(--surface-3);color:var(--ink)}.search-empty-overlay{z-index:2;justify-content:center;align-items:center;display:flex;position:absolute;inset:0}.search-empty-card{background:var(--white);border-radius:var(--r-2xl);padding:var(--sp-10);box-shadow:var(--sh-xl);text-align:center;max-width:400px;margin:0 var(--sp-4);margin-top:calc(var(--nav-h) + 100px)}.search-empty-card h1{color:var(--ink);letter-spacing:-.03em;margin-bottom:8px;font-size:1.5rem;font-weight:800}.search-empty-card p{color:var(--ink-3);font-size:1rem;line-height:1.7}.bottom-sheet{z-index:10;background:var(--white);border-radius:var(--r-2xl) var(--r-2xl) 0 0;max-height:calc(100vh - var(--nav-h) - var(--sp-8) - 110px);flex-direction:column;transition:height .45s cubic-bezier(.34,1.3,.64,1);display:flex;position:absolute;bottom:0;left:0;right:0;overflow:hidden;box-shadow:0 -4px 30px #0000001f}.bottom-sheet--collapsed{pointer-events:none;opacity:0}.bottom-sheet--auto{max-height:60vh}.bottom-sheet--auto .bottom-sheet-content{overflow-y:visible}.bottom-sheet--peek .bottom-sheet-content{display:none}.bottom-sheet--peek{padding-bottom:var(--sp-4)}.bottom-sheet-handle{cursor:grab;touch-action:none;flex-shrink:0;justify-content:center;padding:12px 0 8px;display:flex}.bottom-sheet-pill{background:var(--surface-3);border-radius:var(--r-full);width:36px;height:4px}.sheet-header-count{color:var(--ink);letter-spacing:-.01em;font-size:.9375rem;font-weight:800}.sheet-header-controls{align-items:center;gap:8px;display:flex}.mode-toggle{background:var(--surface-2);width:32px;height:32px;color:var(--ink-2);cursor:pointer;transition:all var(--dur) var(--ease);border:none;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;display:flex}.mode-toggle:hover{background:var(--hot-light);color:var(--hot)}.bottom-sheet-content{padding:var(--sp-3) var(--sp-4) var(--sp-6);-webkit-overflow-scrolling:touch;flex:1;overflow-y:auto}@media (min-width:768px){.bottom-sheet{top:calc(var(--nav-h) + var(--sp-4));bottom:var(--sp-4);left:var(--sp-4);border-radius:var(--r-2xl);width:380px;max-height:none;right:auto;height:auto!important}.bottom-sheet-handle{display:none}.bottom-sheet--peek .bottom-sheet-content{display:block}.bottom-sheet--collapsed{opacity:1;pointer-events:auto;height:auto!important}.search-map-bg .leaflet-bottom.leaflet-right{bottom:10px!important}.map-reset-btn{bottom:var(--sp-4);right:var(--sp-4)}}.job-list-compact{flex-direction:column;gap:6px;display:flex}.mini-job-card{background:var(--bg);border-radius:var(--r-lg);width:100%;padding:var(--sp-3) var(--sp-4);text-align:left;cursor:pointer;transition:all var(--dur) var(--ease);font-family:var(--font);border:2px solid #0000;display:block}.mini-job-card:hover{border-color:var(--hot-mid);background:var(--white);box-shadow:var(--sh-sm)}.mini-job-top{justify-content:space-between;align-items:flex-start;gap:var(--sp-3);margin-bottom:4px;display:flex}.mini-job-title{color:var(--ink);font-size:.9375rem;font-weight:700;line-height:1.3}.mini-job-meta{gap:var(--sp-4);color:var(--ink-3);font-size:.8125rem;font-weight:500;display:flex}.job-preview{padding:var(--sp-2) 0}.job-preview-header{justify-content:space-between;align-items:flex-start;gap:var(--sp-3);margin-bottom:var(--sp-4);display:flex}.job-preview-employer{color:var(--hot);align-items:center;gap:5px;margin-bottom:4px;font-size:.875rem;font-weight:700;display:flex}.job-preview-title{color:var(--ink);letter-spacing:-.02em;font-size:1.25rem;font-weight:800;line-height:1.2}.job-preview-details{gap:var(--sp-4);color:var(--ink-3);margin-bottom:var(--sp-3);flex-wrap:wrap;font-size:.875rem;display:flex}.job-preview-details span{align-items:center;gap:4px;display:inline-flex}.job-preview-salary{color:var(--ink);letter-spacing:-.02em;margin-bottom:var(--sp-2);font-size:1.125rem;font-weight:800}.bottom-sheet-preview{padding-bottom:var(--sp-4)}.map-reset-btn{left:var(--sp-4);z-index:10;background:var(--white);border-radius:var(--r-lg);width:44px;height:44px;box-shadow:var(--sh-lg);cursor:pointer;color:var(--ink-2);transition:color var(--dur) var(--ease),box-shadow var(--dur) var(--ease),transform var(--dur) var(--ease);border:none;justify-content:center;align-items:center;display:flex;position:absolute}.map-reset-btn:hover{color:var(--hot);box-shadow:var(--sh-xl);transform:scale(1.05)}@media (min-width:768px){.map-reset-btn{bottom:var(--sp-4);left:auto;right:var(--sp-4)}}.search-map-bg .leaflet-control-zoom{display:none!important}.map-zoom-controls{right:var(--sp-4);z-index:15;border-radius:var(--r-full);box-shadow:var(--sh-lg);flex-direction:column;display:flex;position:absolute;overflow:hidden}.map-zoom-btn{background:var(--white);cursor:pointer;width:44px;height:44px;color:var(--ink-2);transition:all var(--dur) var(--ease);border:none;justify-content:center;align-items:center;font-size:1.25rem;font-weight:700;display:flex}.map-zoom-btn:first-child{border-bottom:1px solid var(--surface-2)}.map-zoom-btn:hover{background:var(--surface-2);color:var(--ink)}.map-zoom-btn:active{background:var(--surface-3)}@media (min-width:768px){.map-zoom-controls{bottom:var(--sp-4)}}.leaflet-popup-content-wrapper{border-radius:var(--r-lg)!important;box-shadow:var(--sh-lg)!important}.leaflet-popup-tip{box-shadow:none!important}.job-list{gap:var(--sp-3);flex-direction:column;display:flex}.job-card{background:var(--white);border-radius:var(--r-xl);padding:var(--sp-5) var(--sp-6);transition:all var(--dur-md) var(--ease-out);border:2px solid var(--surface-2);grid-template-rows:auto auto auto;gap:10px;display:grid;position:relative}.job-card:hover{border-color:var(--hot-mid);box-shadow:var(--sh-md);transform:translateY(-2px)}.job-card-top{justify-content:space-between;align-items:flex-start;gap:var(--sp-4);display:flex}.job-title{font-size:1.0625rem;font-weight:700;line-height:1.35}.job-title a{color:var(--ink);transition:color var(--dur) var(--ease);text-decoration:none}.job-title a:hover{color:var(--hot)}.commute-badge{background:var(--green-bg);color:var(--green);border-radius:var(--r-full);flex-shrink:0;align-items:center;gap:5px;padding:5px 14px;font-size:.75rem;font-weight:800;display:inline-flex}.job-meta{gap:var(--sp-4);flex-wrap:wrap;font-size:.875rem;display:flex}.job-company{color:var(--ink-2);align-items:center;gap:5px;font-weight:700;display:inline-flex}.job-location{color:var(--ink-3);flex-wrap:wrap;align-items:center;gap:5px;display:inline-flex}.location-approx{text-transform:uppercase;letter-spacing:.05em;color:var(--ink-4,#999);background:var(--surface-2,#f0f0f0);cursor:help;border-radius:3px;margin-left:4px;padding:1px 4px;font-size:.625rem;font-weight:600}.location-disclaimer{color:var(--ink-4,#999);margin:var(--sp-1) 0 0;font-size:.75rem;font-style:italic}.job-bottom{justify-content:space-between;align-items:center;gap:var(--sp-4);padding-top:var(--sp-3);border-top:1px solid var(--surface-2);display:flex}.job-salary{color:var(--ink);letter-spacing:-.02em;font-size:1rem;font-weight:800}.job-type{color:var(--ink-3);background:var(--surface-2);border-radius:var(--r-full);padding:4px 12px;font-size:.75rem;font-weight:700}.job-detail{padding:var(--sp-8) var(--sp-6);max-width:760px;margin:0 auto}.job-detail-back{color:var(--ink-3);margin-bottom:var(--sp-8);transition:color var(--dur) var(--ease);align-items:center;gap:6px;font-size:.875rem;font-weight:600;text-decoration:none;display:inline-flex}.job-detail-back:hover{color:var(--ink)}.job-detail-header{background:var(--white);border-radius:var(--r-2xl);padding:var(--sp-10);margin-bottom:var(--sp-6);box-shadow:var(--sh-card);border:2px solid var(--surface-2)}.job-detail-employer{color:var(--hot);margin-bottom:8px;font-size:.9375rem;font-weight:800}.job-detail-title{color:var(--ink);margin-bottom:var(--sp-5);letter-spacing:-.04em;font-size:clamp(1.75rem,4vw,2.5rem);font-weight:800;line-height:1.1}.job-detail-meta{gap:var(--sp-5);color:var(--ink-2);margin-bottom:var(--sp-5);flex-wrap:wrap;font-size:.9375rem;font-weight:500;display:flex}.job-detail-meta .job-location{align-items:center;gap:5px;display:inline-flex}.job-detail-meta .job-salary{color:var(--ink);font-weight:800}.job-detail-badges{flex-wrap:wrap;gap:8px;display:flex}.job-detail-body{background:var(--white);border-radius:var(--r-2xl);padding:var(--sp-10);box-shadow:var(--sh-card);border:2px solid var(--surface-2);color:var(--ink-2);font-size:1rem;line-height:1.8}.job-detail-body h2{text-transform:uppercase;letter-spacing:.06em;color:var(--hot);margin:var(--sp-8) 0 var(--sp-3);font-size:.875rem;font-weight:800}.job-detail-body h2:first-child{margin-top:0}.job-detail-body p{margin-bottom:var(--sp-4)}.job-detail-body ul{margin-bottom:var(--sp-4);padding-left:1.25rem}.job-detail-body li{margin-bottom:6px;padding-left:4px}.job-detail-body li::marker{color:var(--hot-mid)}.job-detail-body strong{color:var(--ink);font-weight:700}.job-detail-actions{gap:var(--sp-3);margin-top:var(--sp-8);display:flex}.empty-state-title{color:var(--ink);letter-spacing:-.02em;margin-bottom:8px;font-size:1.25rem;font-weight:800}.empty-state-subtitle{color:var(--ink-3);max-width:400px;margin:0 auto;font-size:1rem;line-height:1.7}.loading-skeleton{gap:var(--sp-3);flex-direction:column;display:flex}.skeleton-card{border-radius:var(--r-xl);background:linear-gradient(90deg, var(--surface-2) 25%, var(--surface-3) 50%, var(--surface-2) 75%);background-size:200% 100%;height:120px;animation:1.5s infinite shimmer}@keyframes shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.search-list-view{-webkit-overflow-scrolling:touch;padding:calc(var(--nav-h) + 100px) var(--sp-5) var(--sp-8);background:var(--bg);z-index:20;position:absolute;inset:0;overflow:hidden auto}.search-list-view>*{max-width:var(--max-w);margin-left:auto;margin-right:auto}.search-list-header{margin-bottom:var(--sp-5);justify-content:space-between;align-items:center;display:flex}.view-toggle{height:36px!important;padding:0 14px!important;font-size:.8125rem!important}.sheet-toolbar{margin-bottom:var(--sp-3);justify-content:flex-end;display:flex}.btn-sm{height:32px;padding:0 12px;font-size:.75rem}.radius-slider-control{color:var(--ink-4);align-items:center;gap:8px;min-width:120px;display:flex}.radius-slider-control--active{color:var(--hot)}.radius-slider{appearance:none;background:var(--surface-3);cursor:pointer;width:80px;height:4px;transition:background var(--dur) var(--ease);border-radius:2px;outline:none}.radius-slider::-webkit-slider-thumb{appearance:none;background:var(--hot);border:2px solid var(--white);width:16px;height:16px;box-shadow:var(--sh-sm);cursor:grab;transition:transform .15s var(--ease);border-radius:50%}.radius-slider::-webkit-slider-thumb:active{cursor:grabbing;transform:scale(1.2)}.radius-slider::-moz-range-thumb{background:var(--hot);border:2px solid var(--white);width:16px;height:16px;box-shadow:var(--sh-sm);cursor:grab;border-radius:50%}.radius-slider-value{color:var(--ink-2);white-space:nowrap;text-align:right;font-variant-numeric:tabular-nums;border:none;border-bottom:1.5px dashed var(--ink-4);cursor:pointer;min-width:36px;transition:all var(--dur) var(--ease);font-size:.75rem;font-weight:800;font-family:var(--font);background:0 0;border-radius:0;padding:2px 4px 1px}.radius-slider-value:hover{border-bottom-color:var(--hot);color:var(--ink)}.radius-edit-input{width:56px;height:30px;font-size:16px;font-weight:800;font-family:var(--font);color:var(--ink);text-align:center;border:1.5px solid var(--hot);border-radius:var(--r-md);background:var(--white);font-variant-numeric:tabular-nums;-moz-appearance:textfield;transform-origin:100%;outline:none;padding:0 2px;transform:scale(.75)}.radius-edit-input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.radius-edit-input::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.loading-text{color:var(--ink-3);text-align:center;padding:var(--sp-16) 0;font-size:1rem}.filter-toggle{margin-bottom:var(--sp-3)}.pagination{padding:var(--sp-6) 0 var(--sp-2);justify-content:center;align-items:center;gap:8px;display:flex}.pagination-btn{border:2px solid var(--surface-3);border-radius:var(--r-full);background:var(--white);height:36px;color:var(--ink-2);transition:all var(--dur) var(--ease);cursor:pointer;align-items:center;gap:6px;padding:0 14px;font-size:.8125rem;font-weight:700;text-decoration:none;display:inline-flex}.pagination-btn:hover{border-color:var(--hot);color:var(--hot);text-decoration:none}.pagination-info{color:var(--ink-3);padding:0 8px;font-size:.8125rem;font-weight:700}.job-card-title-row{align-items:center;gap:8px;min-width:0;display:flex}.job-card-logo{object-fit:contain;border-radius:4px;flex-shrink:0;width:24px;height:24px}.job-category-badge{border-radius:var(--r-full);background:var(--surface-2);color:var(--ink-3);text-transform:capitalize;vertical-align:middle;margin-left:6px;padding:1px 8px;font-size:.6875rem;font-weight:600;display:inline-block}.category-filter{-webkit-overflow-scrolling:touch;scrollbar-width:none;background:var(--white);border-bottom:1px solid var(--surface-2);z-index:5;gap:6px;padding:8px 16px;display:flex;position:relative;overflow-x:auto}.category-filter::-webkit-scrollbar{display:none}.category-pill{border-radius:var(--r-full);border:1.5px solid var(--surface-3);background:var(--white);height:32px;color:var(--ink-2);white-space:nowrap;transition:all var(--dur) var(--ease);cursor:pointer;flex-shrink:0;align-items:center;padding:0 14px;font-size:.8125rem;font-weight:600;text-decoration:none;display:inline-flex}.category-pill:hover{border-color:var(--hot);color:var(--hot)}.category-pill.active{background:var(--hot);border-color:var(--hot);color:#fff}.auth-page{min-height:calc(100vh - var(--nav-h));padding:var(--sp-6);background:var(--white);justify-content:center;align-items:center;display:flex}.auth-card{background:var(--white);border-radius:var(--r-2xl);width:100%;max-width:400px;padding:var(--sp-10);box-shadow:var(--sh-lg);border:2px solid var(--border)}.auth-title{color:var(--ink);letter-spacing:-.03em;margin-bottom:4px;font-size:1.75rem;font-weight:800}.auth-subtitle{color:var(--ink-3);margin-bottom:var(--sp-8);font-size:.9375rem}.auth-form{gap:var(--sp-5);flex-direction:column;display:flex}.auth-error{color:#b91c1c;padding:var(--sp-3) var(--sp-4);border-radius:var(--r-md);margin-bottom:var(--sp-4);background:#fef2f2;border:1px solid #fecaca;font-size:.875rem;font-weight:500}.auth-success{background:var(--green-bg);color:var(--green);padding:var(--sp-4);border-radius:var(--r-md);text-align:center;border:1px solid #bbf7d0;font-size:.9375rem;font-weight:500}.auth-success p{margin-bottom:var(--sp-4)}.auth-divider{align-items:center;gap:var(--sp-4);margin:var(--sp-6) 0;color:var(--ink-4);font-size:.8125rem;font-weight:600;display:flex}.auth-divider:before,.auth-divider:after{content:"";background:var(--surface-3);flex:1;height:1px}.btn-google{gap:8px;font-weight:600}.auth-footer{margin-top:var(--sp-6);text-align:center;color:var(--ink-3);font-size:.875rem;font-weight:500}.profile-page{padding:var(--sp-8) var(--sp-6)}.profile-container{max-width:640px;margin:0 auto}.page-header{margin-bottom:var(--sp-8)}.page-title{color:var(--ink);letter-spacing:-.03em;font-size:1.75rem;font-weight:800}.page-subtitle{color:var(--ink-3);margin-top:4px;font-size:.9375rem}.profile-section{background:var(--white);border:2px solid var(--border);border-radius:var(--r-xl);padding:var(--sp-8);margin-bottom:var(--sp-4);box-shadow:var(--sh-sm)}.section-title{text-transform:uppercase;letter-spacing:.06em;color:var(--hot);margin-bottom:var(--sp-5);font-size:.875rem;font-weight:800}.saved-page{padding:var(--sp-8) var(--sp-6)}.saved-container{max-width:760px;margin:0 auto}.tab-bar{gap:var(--sp-2);margin-bottom:var(--sp-8);-webkit-overflow-scrolling:touch;scrollbar-width:none;padding-bottom:var(--sp-2);display:flex;overflow-x:auto}.tab-bar::-webkit-scrollbar{display:none}.tab-btn{background:var(--surface-2);border-radius:var(--r-full);color:var(--ink-3);cursor:pointer;transition:all var(--dur) var(--ease);white-space:nowrap;border:none;padding:8px 18px;font-size:.875rem;font-weight:600}.tab-btn:hover{background:var(--surface-3);color:var(--ink)}.tab-btn--active{background:var(--ink);color:#fff}.tab-content{min-height:240px}.empty-state{text-align:center;padding:var(--sp-16) var(--sp-6)}.empty-icon{width:72px;height:72px;margin:0 auto var(--sp-5);background:var(--hot-light);border-radius:50%;justify-content:center;align-items:center;display:flex}.empty-icon svg{width:28px;height:28px;color:var(--hot)}.empty-title{color:var(--ink);margin-bottom:6px;font-size:1.125rem;font-weight:800}.empty-message{color:var(--ink-3);margin-bottom:var(--sp-6);max-width:300px;margin-left:auto;margin-right:auto;font-size:.9375rem;line-height:1.6}.not-found{min-height:calc(100vh - var(--nav-h));padding:var(--sp-6);text-align:center;flex-direction:column;justify-content:center;align-items:center;display:flex}.not-found h1{color:var(--hot-mid);letter-spacing:-.05em;font-size:6rem;font-weight:800;line-height:1}.not-found p{color:var(--ink-3);margin-top:8px;font-size:1rem;font-weight:500}.modal-overlay{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:300;background:#0006;animation:.2s fadeIn;position:fixed;inset:0}.modal{z-index:301;background:var(--white);border-radius:var(--r-2xl);padding:var(--sp-10);box-shadow:var(--sh-xl);width:calc(100% - var(--sp-8));text-align:center;max-width:380px;animation:.3s cubic-bezier(.34,1.4,.64,1) modalIn;position:fixed;top:50%;left:50%;transform:translate(-50%,-50%)}@keyframes modalIn{0%{opacity:0;transform:translate(-50%,-48%)scale(.95)}to{opacity:1;transform:translate(-50%,-50%)scale(1)}}.modal-close{top:var(--sp-3);right:var(--sp-3);color:var(--ink-4);cursor:pointer;transition:all var(--dur) var(--ease);background:0 0;border:none;border-radius:50%;padding:4px;position:absolute}.modal-close:hover{color:var(--ink);background:var(--surface-2)}.modal-icon{width:64px;height:64px;margin:0 auto var(--sp-5);background:var(--hot-light);color:var(--hot);border-radius:50%;justify-content:center;align-items:center;display:flex}.modal-title{color:var(--ink);letter-spacing:-.02em;margin-bottom:6px;font-size:1.25rem;font-weight:800}.modal-text{color:var(--ink-3);margin-bottom:var(--sp-6);font-size:.9375rem;line-height:1.6}.modal-actions{gap:var(--sp-2);flex-direction:column;display:flex}.legal-page{padding:var(--sp-8) var(--sp-6)}.legal-container{max-width:680px;margin:0 auto}.legal-container h1{color:var(--ink);letter-spacing:-.03em;margin-bottom:var(--sp-2);font-size:2rem;font-weight:800}.legal-updated{color:var(--ink-3);margin-bottom:var(--sp-8);font-size:.875rem}.legal-container h2{color:var(--ink);margin:var(--sp-8) 0 var(--sp-3);font-size:1.125rem;font-weight:700}.legal-container h3{color:var(--ink-2);margin:var(--sp-4) 0 var(--sp-2);font-size:.9375rem;font-weight:600}.legal-container p{color:var(--ink-2);margin-bottom:var(--sp-4);font-size:.9375rem;line-height:1.7}.legal-container ul{margin-bottom:var(--sp-4);padding-left:1.25rem}.legal-container li{color:var(--ink-2);margin-bottom:4px;font-size:.9375rem;line-height:1.7}.legal-container a{color:var(--hot);font-weight:600}@keyframes fadeUp{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}@keyframes scaleIn{0%{opacity:0;transform:scale(.92)}to{opacity:1;transform:scale(1)}}@keyframes bounceIn{0%{opacity:0;transform:scale(.8)}60%{transform:scale(1.05)}to{opacity:1;transform:scale(1)}}.hero-badge{animation:bounceIn .5s var(--ease-spring) both;animation-delay:.1s}.hero-title{animation:fadeUp .6s var(--ease-out) both;animation-delay:.2s}.hero-subtitle{animation:fadeUp .6s var(--ease-out) both;animation-delay:.35s}.hero .search-bar{animation:fadeUp .6s var(--ease-out) both;animation-delay:.5s}.stats-strip{animation:fadeIn .8s var(--ease) both;animation-delay:.7s}.feature-card:first-child{animation:fadeUp .5s var(--ease-out) both;animation-delay:.1s}.feature-card:nth-child(2){animation:fadeUp .5s var(--ease-out) both;animation-delay:.22s}.feature-card:nth-child(3){animation:fadeUp .5s var(--ease-out) both;animation-delay:.34s}.step:first-child{animation:fadeUp .5s var(--ease-out) both;animation-delay:.1s}.step:nth-child(2){animation:fadeUp .5s var(--ease-out) both;animation-delay:.25s}.step:nth-child(3){animation:fadeUp .5s var(--ease-out) both;animation-delay:.4s}.employer-name{animation:fadeIn .4s var(--ease) both}.employer-name:first-child{animation-delay:50ms}.employer-name:nth-child(2){animation-delay:.1s}.employer-name:nth-child(3){animation-delay:.15s}.employer-name:nth-child(4){animation-delay:.2s}.employer-name:nth-child(5){animation-delay:.25s}.employer-name:nth-child(6){animation-delay:.3s}.employer-name:nth-child(7){animation-delay:.35s}.employer-name:nth-child(8){animation-delay:.4s}.employer-name:nth-child(9){animation-delay:.45s}.employer-name:nth-child(10){animation-delay:.5s}.auth-card{animation:scaleIn .4s var(--ease-out) both}.job-detail{animation:fadeUp .4s var(--ease-out) both}.search-results{animation:fadeIn .3s var(--ease) both}.job-card:first-child{animation:fadeUp .35s var(--ease-out) both;animation-delay:50ms}.job-card:nth-child(2){animation:fadeUp .35s var(--ease-out) both;animation-delay:.1s}.job-card:nth-child(3){animation:fadeUp .35s var(--ease-out) both;animation-delay:.15s}.job-card:nth-child(4){animation:fadeUp .35s var(--ease-out) both;animation-delay:.2s}.job-card:nth-child(5){animation:fadeUp .35s var(--ease-out) both;animation-delay:.25s}.job-card:nth-child(6){animation:fadeUp .35s var(--ease-out) both;animation-delay:.3s}.job-card:nth-child(7){animation:fadeUp .35s var(--ease-out) both;animation-delay:.35s}.job-card:nth-child(8){animation:fadeUp .35s var(--ease-out) both;animation-delay:.4s}.job-card:nth-child(9){animation:fadeUp .35s var(--ease-out) both;animation-delay:.45s}.job-card:nth-child(10){animation:fadeUp .35s var(--ease-out) both;animation-delay:.5s}.btn-save{transition:all var(--dur) var(--ease),transform .1s var(--ease)}.btn-save:active{transform:scale(.88)}.btn-save[aria-pressed=true]{animation:bounceIn .3s var(--ease-spring)}.btn-save-icon svg{transition:transform .2s var(--ease-spring)}.btn-save:hover .btn-save-icon svg{transform:scale(1.15)}.btn-hot:hover,.btn-dark:hover{transform:translateY(-1px)}.btn-hot:active,.btn-dark:active{transform:translateY(0)scale(.97)}.feature-card{transition:all var(--dur-slow) var(--ease-out)}.job-card{transition:all var(--dur-md) var(--ease-out)}.form-input,.form-select,.search-input,.search-postcode,.range-input,.filter-select{transition:border-color var(--dur) var(--ease),box-shadow var(--dur) var(--ease),background var(--dur) var(--ease)}.job-card:hover .commute-badge{background:#c9edda}.tab-btn{transition:all var(--dur) var(--ease)}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}.hero-badge:before{animation:none}}@media (min-width:600px){.search-bar{flex-direction:row;align-items:stretch}.search-bar-fields{flex-direction:row;flex:1}.search-postcode{flex-shrink:0;width:160px}.features-grid{grid-template-columns:repeat(3,1fr)}}@media (max-width:599px){.nav{padding:0 var(--sp-4)}.hero{padding:var(--sp-16) var(--sp-4) var(--sp-12)}.stats-strip{gap:var(--sp-8)}.stat-number{font-size:1.75rem}.features{padding:var(--sp-16) var(--sp-4)}.search-page{padding:var(--sp-4)}.job-card{padding:var(--sp-4) var(--sp-5)}.profile-page,.saved-page{padding:var(--sp-6) var(--sp-4)}.form-row{grid-template-columns:1fr}.job-detail-actions{flex-direction:column}.job-detail-header,.job-detail-body{padding:var(--sp-6)}.auth-card{padding:var(--sp-8)}.profile-section{padding:var(--sp-6)}.footer{border-radius:var(--r-xl) var(--r-xl) 0 0;padding:var(--sp-10) var(--sp-4) var(--sp-6)}.footer-top{gap:var(--sp-6);flex-direction:column}.footer-links{gap:var(--sp-4);flex-wrap:wrap}.how-section,.cta-section{padding:var(--sp-16) var(--sp-4)}}.static-page{color:#1a1a1a;max-width:720px;margin:32px auto;padding:0 16px;line-height:1.6}.static-page h1{margin:0 0 16px;font-size:32px}.static-page h2{margin:32px 0 12px;font-size:22px}.static-page .lede{color:#444;margin:0 0 24px;font-size:17px}.static-page ul{margin:12px 0;padding-left:22px}.static-page ul li{margin:4px 0}.static-page p{margin:12px 0}.static-page a{color:#1a3e7a}.static-page code{background:#f3f3f5;border-radius:3px;padding:1px 4px;font-size:.9em}.contact-list{gap:12px;margin:16px 0;padding:0;list-style:none;display:grid}.contact-row{background:#fff;border:1px solid #e5e5e8;border-radius:8px;padding:16px}.contact-row .contact-label{text-transform:uppercase;letter-spacing:.06em;color:#666;margin:0;font-size:12px}.contact-row p{margin:4px 0}.contact-row .contact-description{color:#555;font-size:14px}.faq-list{margin:16px 0}.faq-list .faq-item{border-bottom:1px solid #eee;padding:16px 0}.faq-list dt{margin-bottom:6px;font-weight:600}.faq-list dd{color:#444;margin:0}.cookie-table{border-collapse:collapse;width:100%;margin:12px 0 24px;font-size:14px}.cookie-table th,.cookie-table td{text-align:left;vertical-align:top;border-bottom:1px solid #eee;padding:8px 12px}.cookie-table th{color:#555;background:#fafafa;font-weight:600}.admin-shell{grid-template-columns:220px 1fr;gap:24px;max-width:1280px;margin:24px auto;padding:0 16px;display:grid}.admin-nav{background:#f7f7f8;border:1px solid #e5e5e8;border-radius:8px;height:fit-content;padding:16px;position:sticky;top:16px}.admin-nav .admin-nav-title{text-transform:uppercase;letter-spacing:.06em;color:#555;margin:0 0 12px;font-size:14px}.admin-nav ul{flex-direction:column;gap:4px;margin:0;padding:0;list-style:none;display:flex}.admin-nav a{color:#1a1a1a;border-radius:6px;padding:8px 10px;text-decoration:none;display:block}.admin-nav a:hover{background:#ececef}.admin-content{min-width:0}.admin-content .page-title{margin-top:0}.admin-stat-grid{grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:12px;margin-bottom:24px;display:grid}.admin-stat-card{background:#fff;border:1px solid #e5e5e8;border-radius:8px;padding:16px}.admin-stat-card .admin-stat-label{color:#666;margin:0;font-size:13px}.admin-stat-card .admin-stat-value{margin:4px 0 0;font-size:24px;font-weight:700}.admin-stat-card .admin-stat-sub{color:#888;margin:4px 0 0;font-size:12px}.admin-table{border-collapse:collapse;width:100%;font-size:14px}.admin-table th,.admin-table td{text-align:left;vertical-align:top;border-bottom:1px solid #eee;padding:8px 12px}.admin-table th{color:#555;background:#fafafa;font-weight:600}.admin-table tbody tr:hover{background:#fafafa}.admin-table code{background:#f3f3f5;border-radius:3px;padding:1px 4px;font-size:12px}.admin-pagination{align-items:center;gap:12px;margin-top:16px;display:flex}.admin-toolbar{flex-wrap:wrap;align-items:center;gap:12px;margin-bottom:16px;display:flex}.admin-toolbar .form-input{min-width:280px}.admin-modal-backdrop{z-index:100;background:#0006;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.admin-modal{background:#fff;border-radius:8px;min-width:400px;max-width:90vw;padding:24px}.admin-loading{text-align:center;color:#666;padding:48px}.announcement-banner{text-align:center;padding:8px 16px;font-size:14px}.announcement-banner.severity-info{color:#1a3e7a;background:#e8f0fe}.announcement-banner.severity-warning{color:#6b4c00;background:#fff5d9}.announcement-banner.severity-critical{color:#7a1f1c;background:#fde2e1}.announcement-banner strong{margin-right:8px}.seo-landing{max-width:960px;margin:24px auto;padding:0 16px}.seo-landing h1{margin:0 0 12px;font-size:32px}.seo-landing .seo-breadcrumb{color:#666;margin-bottom:8px;font-size:14px}.seo-landing .seo-breadcrumb a{color:#1a1a1a;text-decoration:none}.seo-landing .seo-breadcrumb a:hover{text-decoration:underline}.seo-landing-header{border-bottom:1px solid #eee;margin-bottom:32px;padding-bottom:24px}.seo-job-list{grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:12px;margin:0;padding:0;list-style:none;display:grid}.seo-job-card{background:#fff;border:1px solid #e5e5e8;border-radius:8px}.seo-job-card:hover{border-color:#c8c8cc;box-shadow:0 2px 6px #0000000a}.seo-job-card-link{color:inherit;padding:16px;text-decoration:none;display:block}.seo-job-employer{color:#666;text-transform:uppercase;letter-spacing:.04em;margin:0;font-size:12px}.seo-job-title{margin:4px 0 8px;font-size:16px}.seo-job-meta{color:#555;margin:0;font-size:13px}.seo-job-salary{color:#1a3e7a;margin:4px 0 0;font-size:13px;font-weight:500}.seo-link-grid{grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:8px;margin:0;padding:0;list-style:none;display:grid}.seo-link-grid a{color:#1a1a1a;background:#f7f7f8;border-radius:6px;padding:8px 12px;text-decoration:none;display:block}.seo-link-grid a:hover{background:#ececef}.email-verification-banner{color:#6b4c00;background:#fff5d9;border-radius:8px;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;margin-bottom:16px;padding:12px 16px;font-size:14px;display:flex}.email-verification-banner strong{margin-right:4px}.email-verification-banner .form-row{align-items:center;gap:8px;display:flex}.saved-search-list{flex-direction:column;gap:8px;margin:0 0 16px;padding:0;list-style:none;display:flex}.saved-search-row{background:#fff;border:1px solid #e5e5e8;border-radius:8px;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;padding:12px;display:flex}.saved-search-row strong{font-size:15px}.saved-search-criteria{color:#555;margin:4px 0 0;font-size:13px}.subscription-banner{border-radius:8px;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;margin:12px 16px 0;padding:12px 16px;font-size:14px;display:flex}.subscription-banner.severity-info{color:#1a3e7a;background:#e8f0fe}.subscription-banner.severity-warning{color:#6b4c00;background:#fff5d9}.subscription-banner.severity-critical{color:#7a1f1c;background:#fde2e1}.subscription-banner strong{margin-right:6px}.subscription-banner .form-row{align-items:center;gap:8px;display:flex}.upgrade-page{justify-content:center;padding:48px 16px;display:flex}.upgrade-card{background:#fff;border:1px solid #e5e5e8;border-radius:12px;width:100%;max-width:520px;padding:32px;box-shadow:0 4px 12px #0000000a}.upgrade-card h1{margin:0 0 8px;font-size:28px}.upgrade-card .upgrade-features{margin:24px 0;padding:0;list-style:none}.upgrade-card .upgrade-features li{border-bottom:1px solid #f3f3f5;padding:10px 0;font-size:15px}.upgrade-card .upgrade-features li:before{content:"✓";color:#16a34a;margin-right:10px;font-weight:700}.upgrade-card .btn-lg{width:100%}.upgrade-card .upgrade-footer{text-align:center;color:#555;margin-top:24px;font-size:14px}
