:root{--green-deep:#123f28;--green:#267a42;--green-soft:#eaf5ed;--orange:#b93c1d;--orange-soft:#fff0e8;--ink:#162019;--muted:#6d796f;--line:#dce7de;--surface:#f6f8f5;--white:#ffffff;--shadow:0 18px 50px rgba(24,55,35,0.08);--radius-lg:26px;--radius-md:16px}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;min-width:320px;background:var(--surface);color:var(--ink);font-family:Manrope,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;-webkit-font-smoothing:antialiased}button,input,select{font:inherit}a,button{-webkit-tap-highlight-color:transparent}a{color:inherit;text-decoration:none}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.eyebrow{margin:0;color:var(--orange);font-size:.68rem;font-weight:800;letter-spacing:.18em;line-height:1.3;text-transform:uppercase}.brand-lockup{display:inline-flex;align-items:center;gap:.75rem}.brand-lockup>span:last-child{display:grid;grid-gap:.18rem;gap:.18rem}.brand-lockup strong{color:inherit;font-family:Georgia,Times New Roman,serif;font-size:1rem;letter-spacing:-.02em}.brand-lockup small{color:currentColor;font-size:.66rem;font-weight:700;letter-spacing:.1em;opacity:.65;text-transform:uppercase}.brand-mark{display:inline-grid;width:2.6rem;height:2.6rem;place-items:center;border:1px solid rgba(255,255,255,.32);border-radius:.8rem;background:var(--orange);color:var(--white);font-size:.75rem;font-weight:900;letter-spacing:.1em}.login-page{min-height:100vh;display:grid;place-items:center;padding:2rem;background:radial-gradient(circle at 15% 10%,rgba(212,78,41,.09),transparent 28rem),var(--surface)}.login-shell{display:grid;width:min(100%,66rem);min-height:40rem;overflow:hidden;border:1px solid var(--line);border-radius:var(--radius-lg);background:var(--white);box-shadow:var(--shadow);grid-template-columns:.95fr 1.05fr}.login-brand-panel{display:flex;flex-direction:column;justify-content:space-between;padding:2.8rem;color:var(--white);background:linear-gradient(145deg,var(--green-deep),#1b5e37 60%,#0d3020);position:relative;isolation:isolate}.login-brand-panel:after{content:"";position:absolute;inset:auto -5rem -8rem auto;z-index:-1;width:20rem;height:20rem;border:1px solid rgba(255,255,255,.13);border-radius:50%;box-shadow:0 0 0 3rem rgba(255,255,255,.03),0 0 0 7rem rgba(255,255,255,.025)}.login-brand-panel .brand-lockup{align-self:flex-start}.login-panel-copy{max-width:25rem}.login-panel-copy h1{margin:1.1rem 0 1rem;max-width:11ch;font-family:Georgia,Times New Roman,serif;font-size:clamp(2.3rem,4vw,4rem);font-weight:500;letter-spacing:-.055em;line-height:.98}.login-panel-copy p:not(.eyebrow){max-width:31rem;color:rgba(255,255,255,.72);font-size:.95rem;line-height:1.7}.login-trust{display:inline-flex;align-items:center;gap:.55rem;color:rgba(255,255,255,.66);font-size:.73rem;line-height:1.5}.login-trust svg{width:1.1rem;height:1.1rem;color:#ff9c74;flex:0 0 auto}.login-form-panel{display:flex;flex-direction:column;justify-content:center;padding:3.8rem}.login-heading{margin-bottom:2rem}.login-icon{display:grid;width:3rem;height:3rem;margin-bottom:1.3rem;place-items:center;border:1px solid rgba(212,78,41,.24);border-radius:1rem;color:var(--orange);background:var(--orange-soft)}.login-icon svg{width:1.35rem;height:1.35rem}.login-heading h2{margin:.45rem 0;font-family:Georgia,Times New Roman,serif;font-size:clamp(2rem,3vw,2.8rem);font-weight:500;letter-spacing:-.05em}.login-heading p:last-child{margin:0;color:var(--muted);font-size:.88rem;line-height:1.6}.auth-form{display:grid;grid-gap:.65rem;gap:.65rem}.auth-form label{margin-top:.45rem;color:var(--ink);font-size:.78rem;font-weight:800}.auth-form input,.filter-field input,.filter-field select,.search-field input{width:100%;min-height:2.9rem;border:1px solid var(--line);border-radius:.85rem;outline:none;background:#fbfcfb;color:var(--ink);font-size:.86rem;transition:border-color .18s ease,box-shadow .18s ease,background .18s ease}.auth-form input{padding:0 .9rem}.auth-form input::placeholder,.search-field input::placeholder{color:#9ba79d}.auth-form input:focus,.filter-field input:focus,.filter-field select:focus,.search-field input:focus{border-color:var(--green);background:var(--white);box-shadow:0 0 0 4px rgba(38,122,66,.12)}.form-error{margin:.5rem 0 0;color:#a53d25;font-size:.78rem;font-weight:700;line-height:1.5}.login-footnote{margin:1.6rem 0 0;color:var(--muted);font-size:.7rem;line-height:1.6}.clear-button,.icon-button,.primary-button,.row-arrow,.secondary-button{border:0;cursor:pointer;transition:transform .18s ease,border-color .18s ease,background .18s ease,box-shadow .18s ease}.primary-button{display:inline-flex;min-height:3.1rem;align-items:center;justify-content:center;gap:.65rem;margin-top:1rem;border-radius:.9rem;padding:.8rem 1.1rem;background:var(--orange);color:var(--white);font-size:.84rem;font-weight:800;box-shadow:0 .75rem 1.5rem rgba(212,78,41,.22)}.primary-button svg{width:1rem;height:1rem}.primary-button:hover:not(:disabled){transform:translateY(-1px);background:#bd3f22;box-shadow:0 1rem 1.8rem rgba(212,78,41,.3)}.clear-button:focus-visible,.icon-button:focus-visible,.lead-mobile-card:focus-visible,.nav-item:focus-visible,.primary-button:focus-visible,.row-arrow:focus-visible,.secondary-button:focus-visible{outline:3px solid rgba(212,78,41,.38);outline-offset:3px}.primary-button:disabled,.secondary-button:disabled{cursor:wait;opacity:.56}.primary-button.compact{min-height:2.7rem;margin:0;padding-inline:.95rem}.secondary-button{display:inline-flex;min-height:2.7rem;align-items:center;gap:.5rem;border:1px solid var(--line);border-radius:.82rem;padding:.65rem .9rem;background:var(--white);color:var(--ink);font-size:.78rem;font-weight:800}.secondary-button:hover:not(:disabled){border-color:var(--green);background:var(--green-soft)}.secondary-button svg{width:1rem;height:1rem;color:var(--green)}.icon-button{display:inline-grid;width:2.7rem;height:2.7rem;place-items:center;border:1px solid var(--line);border-radius:.82rem;background:var(--white);color:var(--ink)}.icon-button:hover{border-color:var(--green);background:var(--green-soft);color:var(--green-deep)}.icon-button svg{width:1rem;height:1rem}.spin{animation:spin .9s linear infinite}@keyframes spin{to{transform:rotate(1turn)}}.admin-app{min-height:100vh;display:grid;grid-template-columns:16rem minmax(0,1fr)}.admin-sidebar{display:flex;flex-direction:column;min-height:100vh;padding:2rem 1.2rem 1.3rem;color:rgba(255,255,255,.76);background:var(--green-deep)}.sidebar-brand{padding:.4rem .65rem 2.8rem}.admin-sidebar .brand-lockup strong{color:var(--white)}.admin-sidebar .brand-lockup small{color:rgba(255,255,255,.62)}.admin-nav{display:grid;grid-gap:.45rem;gap:.45rem}.nav-item{display:flex;min-height:2.85rem;align-items:center;gap:.7rem;border:1px solid transparent;border-radius:.85rem;padding:0 .75rem;color:rgba(255,255,255,.62);font-size:.78rem;font-weight:800}.nav-item svg{width:1rem;height:1rem}.nav-item.is-active,.nav-item:hover{border-color:rgba(255,255,255,.12);background:rgba(255,255,255,.1);color:var(--white)}.nav-item.is-active svg{color:#ff9c74}.sidebar-note{display:flex;align-items:center;gap:.65rem;margin-top:auto;border-top:1px solid rgba(255,255,255,.12);padding:1.1rem .65rem 0;font-size:.68rem}.sidebar-note span:last-child{display:grid;grid-gap:.15rem;gap:.15rem}.sidebar-note strong{color:rgba(255,255,255,.86);font-size:.69rem}.sidebar-note small{color:rgba(255,255,255,.5)}.status-dot{width:.55rem;height:.55rem;border-radius:50%;background:#6bdc8d;box-shadow:0 0 0 5px rgba(107,220,141,.12)}.admin-content{min-width:0}.admin-header{display:flex;min-height:5.7rem;align-items:center;justify-content:space-between;gap:1.2rem;border-bottom:1px solid var(--line);padding:1.1rem clamp(1.25rem,4vw,3.3rem);background:rgba(255,255,255,.82);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);position:-webkit-sticky;position:sticky;top:0;z-index:10}.admin-header h1{margin:.35rem 0 0;font-family:Georgia,Times New Roman,serif;font-size:clamp(1.5rem,2.3vw,2.1rem);font-weight:500;letter-spacing:-.05em}.header-actions{display:flex;align-items:center;gap:.55rem}.mobile-menu-button{display:none}.admin-main{width:min(100%,90rem);margin:0 auto;padding:clamp(1.25rem,4vw,3.3rem)}.welcome-banner{display:flex;min-height:10.5rem;align-items:center;justify-content:space-between;gap:2rem;overflow:hidden;border:1px solid rgba(38,122,66,.18);border-radius:var(--radius-lg);padding:clamp(1.5rem,4vw,2.8rem);color:var(--white);background:linear-gradient(125deg,var(--green-deep),#257644 72%,#3b8957);position:relative;isolation:isolate}.welcome-banner:after{content:"";position:absolute;inset:-10rem -5rem auto auto;z-index:-1;width:26rem;height:26rem;border:1px solid rgba(255,255,255,.12);border-radius:50%;box-shadow:0 0 0 3rem rgba(255,255,255,.035),0 0 0 7rem rgba(255,255,255,.025)}.welcome-banner h2{margin:.6rem 0 .4rem;font-family:Georgia,Times New Roman,serif;font-size:clamp(1.8rem,4vw,3.1rem);font-weight:500;letter-spacing:-.055em;line-height:1}.welcome-banner p:last-child{margin:0;color:rgba(255,255,255,.68);font-size:.83rem;line-height:1.6}.welcome-banner .eyebrow{color:#ffb08f}.welcome-mark{display:grid;width:5.6rem;height:5.6rem;flex:0 0 auto;place-items:center;border:1px solid rgba(255,255,255,.2);border-radius:1.5rem;color:#ffb08f;background:rgba(255,255,255,.08);transform:rotate(8deg)}.welcome-mark svg{width:2rem;height:2rem;transform:rotate(-8deg)}.stats-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-gap:1rem;gap:1rem;margin:1.1rem 0}.stat-card{display:grid;min-height:9.5rem;grid-template-columns:auto 1fr;grid-template-rows:auto auto 1fr;grid-column-gap:.8rem;column-gap:.8rem;border:1px solid var(--line);border-radius:var(--radius-md);padding:1.25rem;background:var(--white);box-shadow:0 8px 24px rgba(24,55,35,.035)}.stat-card-primary{border-color:rgba(38,122,66,.28);background:linear-gradient(145deg,#f4fbf5,var(--white))}.stat-icon{display:grid;width:2.3rem;height:2.3rem;grid-row:span 3;place-items:center;border-radius:.75rem;color:var(--green);background:var(--green-soft)}.stat-icon.orange{color:var(--orange);background:var(--orange-soft)}.stat-icon.green{color:var(--green);background:var(--green-soft)}.stat-icon svg{width:1.05rem;height:1.05rem}.stat-label{align-self:end;color:var(--muted);font-size:.72rem;font-weight:800}.stat-card strong{align-self:center;color:var(--ink);font-family:Georgia,Times New Roman,serif;font-size:2.15rem;font-weight:500;letter-spacing:-.05em;line-height:1}.stat-card small{align-self:end;color:var(--muted);font-size:.67rem}.leads-card{border:1px solid var(--line);border-radius:var(--radius-lg);background:var(--white);box-shadow:var(--shadow)}.card-heading{display:flex;align-items:end;justify-content:space-between;gap:1rem;padding:1.7rem 1.7rem 1.1rem}.card-heading h2{margin:.35rem 0 0;font-family:Georgia,Times New Roman,serif;font-size:1.55rem;font-weight:500;letter-spacing:-.045em}.result-count{border:1px solid var(--line);border-radius:99rem;padding:.36rem .65rem;color:var(--muted);font-size:.68rem;font-weight:800}.filter-bar{display:flex;flex-wrap:wrap;align-items:end;gap:.65rem;border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:1rem 1.7rem;background:#fbfcfb}.search-field{display:flex;min-width:min(100%,18rem);flex:1 1 16rem;align-items:center;gap:.55rem;border:1px solid var(--line);border-radius:.8rem;padding:0 .75rem;background:var(--white)}.search-field svg{width:1rem;height:1rem;flex:0 0 auto;color:var(--muted)}.search-field input{min-height:2.6rem;border:0;padding:0;background:transparent;box-shadow:none}.search-field input:focus{box-shadow:none}.filter-field{display:grid;min-width:7.3rem;grid-gap:.3rem;gap:.3rem;color:var(--muted);font-size:.63rem;font-weight:800}.filter-field input,.filter-field select{min-height:2.6rem;padding:0 .65rem;font-size:.74rem}.date-field{min-width:8.5rem}.clear-button{min-height:2.6rem;padding:0 .6rem;color:var(--orange);background:transparent;font-size:.73rem;font-weight:800}.clear-button:hover{text-decoration:underline}.notice{margin:1rem 1.7rem 0;border-radius:.85rem;padding:.75rem .85rem;font-size:.76rem;font-weight:700}.notice.error{border:1px solid rgba(212,78,41,.2);color:#a53d25;background:var(--orange-soft)}.empty-state{display:grid;min-height:17rem;place-items:center;align-content:center;grid-gap:.55rem;gap:.55rem;padding:2rem;color:var(--muted);text-align:center}.empty-state svg{width:1.5rem;height:1.5rem;color:var(--green)}.empty-state h3,.empty-state p{margin:0}.empty-state h3{color:var(--ink);font-family:Georgia,Times New Roman,serif;font-size:1.2rem;font-weight:500}.empty-state p{font-size:.75rem}.table-wrap{overflow-x:auto}table{width:100%;border-collapse:collapse;text-align:left}th{padding:.95rem 1.7rem;color:var(--muted);font-size:.63rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase;white-space:nowrap}td{border-top:1px solid #edf1ed;padding:1.05rem 1.7rem;vertical-align:middle}tbody tr{cursor:pointer;transition:background .16s ease}tbody tr:focus,tbody tr:hover{outline:none;background:#fbfdfb}.lead-primary,.lead-secondary{display:grid;grid-gap:.28rem;gap:.28rem}.lead-primary strong,.lead-secondary strong{color:var(--ink);font-size:.8rem}.date-value,.lead-primary small,.lead-secondary small{color:var(--muted);font-size:.68rem;line-height:1.45}.lead-type{display:inline-flex;width:-moz-fit-content;width:fit-content;align-items:center;border-radius:99rem;padding:.27rem .5rem;font-size:.59rem;font-weight:900;letter-spacing:.03em}.lead-type.site_visit{color:#a53d25;background:var(--orange-soft)}.lead-type.adaptation{color:var(--green-deep);background:var(--green-soft)}.row-arrow{width:2rem;height:2rem;border:1px solid var(--line);border-radius:.6rem;color:var(--green);background:var(--white);font-size:1.15rem;line-height:1}.row-arrow:hover{border-color:var(--green);background:var(--green-soft)}.lead-mobile-list{display:none}.detail-backdrop{position:fixed;inset:0;z-index:30;display:flex;justify-content:flex-end;background:rgba(13,36,22,.36);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.detail-panel{width:min(100%,32rem);min-height:100%;overflow-y:auto;padding:2rem;background:var(--white);box-shadow:-1.2rem 0 3rem rgba(13,36,22,.18);animation:panel-in .22s ease-out}@keyframes panel-in{0%{opacity:0;transform:translateX(1rem)}to{opacity:1;transform:translateX(0)}}.detail-header{display:flex;align-items:start;justify-content:space-between;gap:1rem}.detail-header h2{margin:.55rem 0 0;max-width:20rem;font-family:Georgia,Times New Roman,serif;font-size:2rem;font-weight:500;letter-spacing:-.05em;line-height:1.05}.detail-date{margin:.7rem 0 1.5rem;color:var(--muted);font-size:.72rem}.detail-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:.7rem;gap:.7rem}.detail-grid>div{display:grid;grid-gap:.35rem;gap:.35rem;border:1px solid var(--line);border-radius:.85rem;padding:.85rem;background:#fbfcfb}.detail-grid>div.detail-wide{grid-column:1/-1}.detail-grid span{color:var(--muted);font-size:.62rem;font-weight:800;text-transform:uppercase;letter-spacing:.05em}.detail-grid strong{overflow-wrap:anywhere;color:var(--ink);font-size:.78rem;line-height:1.5}.detail-grid a{display:inline-flex;align-items:center;gap:.35rem;color:var(--green);font-size:.78rem;font-weight:800}.detail-grid a svg{width:.9rem;height:.9rem}.detail-call-button{display:inline-flex;width:100%;min-height:2.9rem;align-items:center;justify-content:center;gap:.5rem;margin-top:1.3rem;border-radius:.8rem;color:var(--white);background:var(--green);font-size:.78rem;font-weight:800}.detail-call-button:hover{background:var(--green-deep)}.detail-call-button svg{width:1rem;height:1rem}.detail-footnote{display:flex;align-items:start;gap:.5rem;margin:1.2rem 0 0;color:var(--muted);font-size:.72rem;line-height:1.55}.detail-footnote svg{width:1rem;height:1rem;flex:0 0 auto;color:var(--orange)}@media (prefers-reduced-motion:reduce){*,:after,:before{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}@media (max-width:900px){.admin-app{display:block}.admin-sidebar{position:fixed;inset:0 auto 0 0;z-index:20;width:min(17rem,84vw);transform:translateX(-105%);transition:transform .2s ease;box-shadow:1rem 0 2rem rgba(13,36,22,.18)}.admin-sidebar.is-open{transform:translateX(0)}.mobile-menu-button{display:inline-grid}.admin-header{justify-content:flex-start}.admin-header>div:nth-child(2){margin-right:auto}.header-actions{margin-left:auto}.header-actions .primary-button span,.header-actions .secondary-button span{display:none}.header-actions .primary-button.compact,.header-actions .secondary-button{width:2.7rem;padding:0}}@media (max-width:680px){.login-page{padding:0}.login-shell{display:block;min-height:100vh;border:0;border-radius:0}.login-brand-panel{min-height:17rem;padding:1.6rem}.login-panel-copy h1{max-width:13ch;font-size:2.4rem}.login-panel-copy p:not(.eyebrow){max-width:30rem;font-size:.8rem}.login-trust{font-size:.65rem}.login-form-panel{padding:2.1rem 1.6rem 2.4rem}.admin-header{min-height:4.9rem;padding:.9rem 1rem}.admin-header h1{font-size:1.35rem}.admin-header .eyebrow{font-size:.55rem}.admin-main{padding:1rem}.welcome-banner{min-height:11rem;align-items:end;padding:1.35rem}.welcome-mark{position:absolute;top:1.2rem;right:1.2rem;width:3.8rem;height:3.8rem;border-radius:1rem}.welcome-mark svg{width:1.4rem;height:1.4rem}.welcome-banner h2{max-width:12ch;font-size:2rem}.welcome-banner p:last-child{max-width:28rem;font-size:.72rem}.stats-grid{grid-template-columns:1fr;gap:.65rem}.stat-card{min-height:6.2rem;grid-template-rows:auto auto}.stat-card small{grid-column:2}.card-heading{padding:1.3rem 1rem 1rem}.filter-bar{align-items:stretch;padding:.9rem 1rem}.search-field{flex-basis:100%}.filter-field{flex:1 1 8rem}.date-field{min-width:0}.filter-field input,.filter-field select,.search-field input{min-height:2.8rem}.table-wrap{display:none}.lead-mobile-list{display:grid;grid-gap:.6rem;gap:.6rem;padding:.85rem 1rem 1rem}.lead-mobile-card{display:grid;grid-gap:.3rem;gap:.3rem;border:1px solid var(--line);border-radius:.9rem;padding:.9rem;background:var(--white);color:var(--ink);text-align:left}.lead-mobile-card strong{font-size:.85rem}.lead-mobile-card>span:not(.lead-type){color:var(--muted);font-size:.72rem}.lead-mobile-card small{color:var(--muted);font-size:.65rem}.detail-panel{width:100%;padding:1.4rem 1rem}}